| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319 |
- <?php
- /**
- * 大转盘
- */
- namespace app\admin\controller;
- use cmf\controller\AdminBaseController;
- use think\facade\Db;
- class TurntableController extends AdminbaseController {
-
- protected function getTypes($k=''){
- $type=[
- '0'=>'无奖',
- '1'=>'钻石',
- '2'=>'礼物',
- '3'=>'线下奖品',
- ];
-
- if($k===''){
- return $type;
- }
-
- return isset($type[$k])?$type[$k]:'';
- }
-
- function index(){
-
- $lists = Db::name("turntable")
- ->order("id asc")
- ->paginate(20);
-
- $lists->each(function($v,$k){
- $name='无奖品';
- if($v['type']==1){
- $name=$v['type_val'];
- }
-
- if($v['type']==2){
- $name='已删除';
- $giftinfo=Db::name("gift")->field('giftname')->where("id={$v['type_val']}")->find();
- if($giftinfo){
- $name=$giftinfo['giftname'];
- }
- }
-
- if($v['type']==3){
- $name=$v['type_val'];
- }
-
- $v['name']=$name;
-
- $v['thumb']=get_upload_path($v['thumb']);
- return $v;
- });
-
- $page = $lists->render();
- $this->assign('lists', $lists);
- $this->assign("page", $page);
-
- $this->assign('type', $this->getTypes());
-
- return $this->fetch();
- }
-
-
- function edit(){
-
- $id = $this->request->param('id', 0, 'intval');
-
- $data=Db::name('turntable')
- ->where("id={$id}")
- ->find();
- if(!$data){
- $this->error("信息错误");
- }
-
- /* $gift=Db::name('gift')->field('id,giftname')->where([ ['type','<>',3] ])->order('orderno desc')->select(); */
- $gift=Db::name('gift')->field('id,giftname')->where('type not in (3)')->order('orderno desc')->select();
- $data['thumb']=get_upload_path($data['thumb']);
-
- $this->assign('gift', $gift);
-
- $this->assign('data', $data);
-
- $this->assign('type', $this->getTypes());
-
- return $this->fetch();
- }
-
- function editPost(){
- if ($this->request->isPost()) {
-
- $data = $this->request->param();
-
- $type=$data['type'];
- if($type==1){
- $type_val=intval($data['coin']);
- if($type_val<1){
- $this->error('请输入正确的钻石数');
- }
- $data['type_val']=$type_val;
- }
-
- if($type==2){
- $type_val=intval($data['giftid']);
- if($type_val<1){
- $this->error('请输入选择礼物');
- }
- $data['type_val']=$type_val;
- }
-
- if($type==3){
- $type_val=$data['name'];
- if($type_val==''){
- $this->error('请输入奖品名');
- }
- $data['type_val']=$type_val;
-
- $thumb=$data['thumb'];
- if($thumb==''){
- $this->error('请上传奖品图片');
- }
-
- }
-
- if($type==0){
- $data['type_val']=0;
- $data['thumb']='';
- $data['rate']=0;
- }
-
- $data['uptime']=time();
-
- unset($data['coin']);
- unset($data['name']);
- unset($data['giftid']);
-
- $rs = DB::name('turntable')->update($data);
- if($rs===false){
- $this->error("修改失败!");
- }
-
- $this->resetcache();
- $this->success("修改成功!");
- }
- }
-
- function resetcache(){
- $key='turntable';
- $list=Db::name('turntable')
- ->field("id,type,type_val,thumb,rate")
- ->select();
- if($list){
- setcaches($key,$list);
- }else{
- delcache($key);
- }
- return 1;
- }
-
- function index2(){
-
- $data = $this->request->param();
- $map=[];
-
- $start_time=isset($data['start_time']) ? $data['start_time']: '';
- $end_time=isset($data['end_time']) ? $data['end_time']: '';
-
- if($start_time!=""){
- $map[]=['addtime','>=',strtotime($start_time)];
- }
- if($end_time!=""){
- $map[]=['addtime','<=',strtotime($end_time) + 60*60*24];
- }
-
- $uid=isset($data['uid']) ? $data['uid']: '';
- if($uid!=''){
-
- $map[]=['uid','=',$uid];
-
- }
-
- $liveuid=isset($data['liveuid']) ? $data['liveuid']: '';
- if($liveuid!=''){
-
- $map[]=['liveuid','=',$liveuid];
-
- }
-
-
- $showid=isset($data['showid']) ? $data['showid']: '';
- if($showid!=''){
- $map[]=['showid','=',$showid];
- }
-
- $lists = Db::name("turntable_log")
- ->where($map)
- ->order("id DESC")
- ->paginate(20);
-
- $lists->each(function($v,$k){
- $userinfo=getUserInfo($v['uid']);
- $v['userinfo']=$userinfo;
- $liveuidinfo=getUserInfo($v['liveuid']);
- $v['liveuidinfo']=$liveuidinfo;
-
- $winlist=[];
- if($v['iswin']==1){
- $winlist=Db::name("turntable_win")->where("logid={$v['id']}")->select();
-
- foreach($winlist as $k2=>$v2){
-
- if($v2['type']==3){
- $name=$v2['type_val'];
- }
-
- if($v2['type']==2){
- $name='已删除';
- $giftinfo=Db::name("gift")->field('giftname')->where("id={$v2['type_val']}")->find();
- if($giftinfo){
- $name=$giftinfo['giftname'];
- }
- }
-
- if($v2['type']==1){
- $name=$v2['type_val'];
- }
-
- $v2['name']=$name;
- $winlist[$k2]=$v2;
- }
- }
-
- $v['winlist']=$winlist;
-
- return $v;
- });
-
- $lists->appends($data);
- $page = $lists->render();
- $this->assign('lists', $lists);
- $this->assign("page", $page);
-
- $count=Db::name("turntable_log")->where($map)->count();
- $total=Db::name("turntable_log")->where($map)->sum('coin');
- if(!$total){
- $total=0;
- }
-
- $this->assign("count", $count);
- $this->assign("total", $total);
- $this->assign('type', $this->getTypes());
-
- return $this->fetch();
- }
-
- function index3(){
-
- $data = $this->request->param();
- $map=[];
- $map[]=['type','=',3];
-
- $status=isset($data['status']) ? $data['status']: '';
- if($status!=''){
- $map[]=['status','=',$status];
- }
-
- $uid=isset($data['uid']) ? $data['uid']: '';
- if($uid!=''){
- $map[]=['uid','=',$uid];
- }
-
- $lists = Db::name("turntable_win")
- ->where($map)
- ->order("id desc")
- ->paginate(20);
-
- $lists->each(function($v,$k){
- $userinfo=getUserInfo($v['uid']);
-
- $v['userinfo']=$userinfo;
-
- return $v;
- });
-
- $page = $lists->render();
- $this->assign('lists', $lists);
- $this->assign("page", $page);
-
- $this->assign('type', $this->getTypes());
-
- return $this->fetch();
-
- }
-
- function setStatus(){
-
- $id = $this->request->param('id', 0, 'intval');
- $status = $this->request->param('status', 0, 'intval');
-
- $rs = DB::name('turntable_win')->where("id={$id}")->update(['status'=>$status,'uptime'=>time()]);
- if(!$rs){
- $this->error("操作失败!");
- }
-
- $this->success("操作成功!");
- }
-
- }
|