123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- <?php
- namespace app\api\controller\company;
- use app\common\controller\Apic;
- use think\Db;
- /**
- * 储值卡
- */
- class Recharge extends Apic
- {
- protected $noNeedLogin = [];
- protected $noNeedRight = '*';
- //首页
- public function lists(){
- $status = input('status',1);
- $where = [
- 'company_id' => $this->auth->company_id,
- 'status' => $status,
- ];
- $list = Db::name('recharge_config')->where($where)->order('id desc')->select();
- //追加赠送
- if(!empty($list)){
- $config_ids = array_column($list,'id');
- $gift = Db::name('recharge_gift')->alias('gift')
- ->field('gift.*,coupons.name,coupons.info,coupons.days')
- ->join('coupons','gift.coupon_id = coupons.id','LEFT')
- ->where('gift.config_id','IN',$config_ids)
- ->where('coupons.status',1)
- ->select();
- foreach($list as $key => &$val){
- $val['gift'] = [];
- foreach($gift as $k => $v){
- if($val['id'] == $v['config_id']){
- $val['gift'][] = $v;
- }
- }
- }
- }
- $this->success(1,$list);
- }
- //新增
- public function add(){
- //验证
- if($this->auth->type != 1){
- $this->error('只有门店老板才能设置');
- }
- $field = ['price','giftprice'];
- $data = request_post_hub($field);
- $data['company_id'] = $this->auth->company_id;
- $data['status'] = 1;
- Db::startTrans();
- $config_id = Db::name('recharge_config')->insertGetId($data);
- if(!$config_id){
- Db::rollback();
- $this->error('添加失败');
- }
- //赠送卡券
- $gift_data = input('gift_data','','trim');
- $gift_data = json_decode(htmlspecialchars_decode($gift_data),true);
- if(is_array($gift_data) && !empty($gift_data)){
- $recharge_gift = [];
- foreach($gift_data as $key => $val){
- $recharge_gift[] = [
- 'config_id' => $config_id,
- 'coupon_id' => $val['coupon_id'],
- 'number' => $val['number'],
- ];
- }
- if(!empty($recharge_gift)){
- $rs_gift = Db::name('recharge_gift')->insertAll($recharge_gift);
- if($rs_gift === false){
- Db::rollback();
- $this->error('添加失败');
- }
- }
- }
- Db::commit();
- $this->success('添加成功');
- }
- //上下架
- public function changestatus(){
- //验证
- if($this->auth->type != 1){
- $this->error('只有门店老板才能设置');
- }
- $id = input('id',0);
- $info = Db::name('recharge_config')->where('id',$id)->update(['status'=>0]);
- $this->success();
- }
- //删除
- public function delete(){
- //验证
- if($this->auth->type != 1){
- $this->error('只有门店老板才能设置');
- }
- $id = input('id','');
- $check = Db::name('recharge_config')->where('id',$id)->where('company_id',$this->auth->company_id)->find();
- if(empty($check)){
- $this->error('不存在的储值卡');
- }
- Db::name('recharge_config')->where('id',$id)->delete();
- Db::name('recharge_gift')->where('config_id',$id)->delete();
- $this->success('删除成功');
- }
- }
|