123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422 |
- <?php
- namespace app\api\controller;
- use think\Db;
- class General extends Base
- {
- public function initialize()
- {
- parent::initialize();
- parent::check_login();
- }
-
- public function orderShift()
- {
- $order_no = input('post.order_sn');
- if(!$order_no) $this->error('请填写订单号');
- $ck = Db::table('order_shift')->where('order_no',$order_no)->value('id');
- if($ck) $this->error('您已提交过相同的订单ID,请核实后重新提交,有疑问咨询专属客服哦~');
- Db::table('order_shift')->insert(['uid'=>$this->uid,'create_at'=>date('Y-m-d H:i:s'),'order_no'=>$order_no]);
- $this->success('订单提交成功,等待审核!');
- }
-
- public function getOrderShiftList()
- {
- $where['o.uid'] = $this->uid;
- $ck_status = input('ck_status',-1);
- if(in_array($ck_status,[0,1,2]))$where['o.sh_status'] =$ck_status;
- $list = Db::table('order_shift')
- ->field('o.id,o.order_no,o.sh_status,ck_time,integral,growth,d.title as remark')
- ->alias('o')
- ->join('audit_desc d','d.id = o.audit_id',"LEFT")
- ->where($where)
- ->limit($this->off_set,$this->page_num)
- ->order('o.id desc')
- ->select();
- $this->success('ok',$list);
- }
-
- public function getWishCate()
- {
- $list = Db::table('wish_cate')
- ->field('id,title')
- ->where('is_deleted',0)->where('status',1)
- ->order('sort desc,id desc')->select();
- $this->success('提交成功',['list'=>$list]);
- }
-
- public function proWish()
- {
- $phone = input('post.phone');
- $first_classify = input('post.first_classify');
- $detail = input('post.detail');
- if(!$detail ) $this->error('请填写愿望号');
- $ck = Db::table('user_wish')
- ->where(['uid'=>$this->uid,'first_classify'=>$first_classify,'detail'=>$detail])
- ->value('id');
- if($ck) $this->error('愿望不能重复提交');
- Db::table('user_wish')->insert(['uid'=>$this->uid,'phone'=>$phone,'first_classify'=>$first_classify,'detail'=>$detail,'create_at'=>date('Y-m-d H:i:s')]);
- $this->success('提交成功');
- }
-
- public function deliveryDetails(){
- $send_no = input('get.send_no');
- $data = get_delivery($send_no);
- $this->success('ok',$data);
- }
-
- public function checkSign()
- {
- $year = date('Y');
- $month = date('m');
- $day = date('d');
- $ck_sign = Db::table('user_sign')
- ->where(['uid'=>$this->uid,'year'=>$year,'month'=>$month,'day'=>$day,'type'=>1])
- ->count();
- $this->success('ok',['is_sign'=>$ck_sign]);
- }
-
- public function getUserMonthSign()
- {
- $year = date('Y');
- $month = date('m');
- $month_data = get_month_days();
- $today_sign = 0;
- foreach ($month_data as &$v) {
- $is_live = Db::table('store_live')
- ->where('start_at','>= time',$v['date_str'].' 00:00:00')
- ->where('start_at','<= time',$v['date_str'].' 23:59:59')
- ->find();
- $v['live_num'] = !empty($is_live) ? 1:0;
- $v['live_sign'] = !empty($is_live) ? $is_live['title_sign']:'';
- $v['is_sign'] = Db::table('user_sign')
- ->where(['uid'=>$this->uid,'year'=>$year,'month'=>$month,'set_id'=>1,'day'=>$v['prefix_date']])
- ->count();
- if($v['date_str'] == date('Y-m-d') )$today_sign = $v['is_sign'] ;
- }
- $acc = Db::table('user_sign')
- ->where(['uid'=>$this->uid,'year'=>$year,'month'=>$month,'set_id'=>[2,3,4]])
- ->select();
- $acc_data =['seven'=>0,'seventeen'=>0,'twenty_seven'=>0];
- array_map(function ($val)use (&$acc_data){
- switch ($val['set_id']){
- case 2:
- $acc_data['seven']=1;
- break;
- case 3:
- $acc_data['seventeen']=1;
- break;
- case 4:
- $acc_data['twenty_seven']=1;
- break;
- }
- },$acc);
- $sign_set = Db::table('store_sign')->select();
- $this->success('ok',['month_data'=>$month_data,'today_sign'=>$today_sign,'count'=>array_sum(array_column($month_data,'is_sign')),'acc_data'=>$acc_data,'sign_set'=>$sign_set]);
- }
-
- public function userSign()
- {
- $type = input('post.type',1);
- $year = date('Y');
- $month = date('m');
- $day = date('d');
- $send_integral = 0;
- $daily_set = Db::table('store_sign')->where(['type'=>1])->find();
- $cumulant_set = Db::table('store_sign')->where(['type'=>2])->select();
- $ck_sign = Db::table('user_sign')
- ->where(['uid'=>$this->uid,'year'=>$year,'month'=>$month,'day'=>$day,'type'=>$type])
- ->count();
- if($ck_sign) $this->error('已签到');
- $sign_data=[
- 'uid' =>$this->uid,
- 'year' =>$year,
- 'month' =>$month,
- 'day' =>$day,
- 'type' =>$type,
- 'create_at' => date('Y-m-d H:i:s'),
- 'desc' => '每日签到',
- 'integral' => $daily_set['integral'],
- 'set_id' => $daily_set['id'],
- 'growth' => $daily_set['growth'],
- ];
- Db::table('user_sign')->insert($sign_data);
- $int_id = Db::getLastInsID();
- $send_integral = bcadd($send_integral,$daily_set['integral']);
- update_user_integral($this->uid,$daily_set['integral'],3,'恭喜亲通过每日签到获得'.$daily_set['integral'].'积分',$int_id);
- if($daily_set['growth'] > 0) update_user_growth($this->uid,$daily_set['growth'],3,'恭喜亲通过每日签到获得'.$daily_set['growth'].'成长值');
-
-
- $month_sign = Db::table('user_sign')
- ->where(['uid'=>$this->uid,'year'=>$year,'month'=>$month,'type'=>1])
- ->count();
- foreach ($cumulant_set as $val)
- {
- if($val['day'] <= $month_sign){
-
- $ck_sign = Db::table('user_sign')
- ->where(['uid'=>$this->uid,'year'=>$year,'month'=>$month,'set_id'=>$val['id']])
- ->count();
- if($ck_sign) continue;
- $sign_data=[
- 'uid' =>$this->uid,
- 'year' =>$year,
- 'month' =>$month,
- 'day' =>$day,
- 'type' =>$val['id'],
- 'create_at' => date('Y-m-d H:i:s'),
- 'desc' => '恭喜亲通过累积签到'.$val['day'].'天获得'.$val['integral'].'积分',
- 'integral' => $val['integral'],
- 'growth' => $val['growth'],
- 'set_id' => $val['id'],
- ];
- Db::table('user_sign')->insert($sign_data);
- $int_id = Db::getLastInsID();
-
- $send_integral = bcadd($send_integral,$val['integral']);
- update_user_integral($this->uid, $val['integral'],3,$sign_data['desc'],$int_id);
- if($val['growth'] > 0) update_user_growth($this->uid,$val['growth'],3,'恭喜亲通过累积签到'.$val['day'].'天获得'.$val['growth'].'成长值');
- }
- }
- $this->success('签到成功',['send_integral'=>intval($send_integral)]);
- }
-
- public function integralConvert()
- {
- $title = input('post.title');
- $desc = input('post.desc');
- $image = input('post.image');
- $info = [
- 'user_id' => $this->uid,
- 'title' =>$title,
- 'desc' =>$desc,
- 'image' =>$image,
- ];
- Db::name('integral_convert')->insert($info);
- $this->success('ok',['已提交等待审核']);
- }
-
- public function getIntegralConvertDetail()
- {
- $id = input('post.id');
- $detail = Db::name('integral_convert')->where(['user_id'=>$this->uid,'id'=>$id])->find();
- $this->success('ok',['detail'=>$detail]);
- }
-
- public function getIntegralConvertList()
- {
- $list = Db::name('integral_convert')->where(['user_id'=>$this->uid,'is_deleted'=>0])
- ->order('id desc')
- ->limit($this->off_set,$this->page_num)
- ->select();
- $this->success('ok',['list'=>$list]);
- }
-
- public function delIntegralConvert()
- {
- $id = input('post.id');
- Db::name('integral_convert')->where(['user_id'=>$this->uid,'id'=>$id])->update(['is_deleted'=>1]);
- $this->success('删除成功');
- }
- }
|