all(); $page_size=$input['page_size']; $page_index=$input['page_index']; $num = ($page_index - 1) * $page_size; $search_name=$input['search_name']; $where=[]; $count=Activity::where('title', 'like', '%' . $search_name . '%') ->where($where) ->count(); if($count==0){ $this->error('400001','没有数据'); } $list=Activity::where('title', 'like', '%' . $search_name . '%') ->with(['gift','activity_limit_honor'=>function($query){ $query->where('type',1); }]) ->where($where) ->orderBy('id','desc') ->skip($num)->take($page_size) ->get(); if(empty($list)){ return $this->error('400002','没有获取到数据'); } return $this->success_list($list,'success',$count); } public function getActHonorInfo() { return $this->success(Activity::$honor); } public function getActLevelsInfo() { return $this->success(Activity::$levels); } //后台添加活动 public function addActivity(Request $request){ $input=$request->all(); $rules=[ 'title'=>'required', 'start_time'=>'required|date', 'end_time'=>'required|date', // 'big_gift'=>'required | numeric', // 'honor_wall'=>'required | numeric', // 'crown_down'=>'required | numeric', // 'top_down'=>'required | numeric', ]; $message=[ 'title.required'=>'活动名称不能为空.', 'start_time.required'=>'开始时间不能为空.', 'end_time.required'=>'结束时间不能为空.', 'start_time.date'=>'开始时间格式有误.', 'end_time.date'=>'结束时间格式有误.', // 'big_gift.required'=>'大礼包限额不能为空.', // 'honor_wall.required'=>'荣誉墙限额不能为空.', // 'big_gift.numeric'=>'大礼包限额格式有误.', // 'honor_wall.numeric'=>'荣誉墙限额格式有误.', // // 'crown_down.required'=>'代理公司降级门槛不能为空.', // 'top_down.required'=>'销售经理降级门槛不能为空.', // 'crown_down.numeric'=>'代理公司降级门槛格式有误.', // 'top_down.numeric'=>'销售经理降级门槛格式有误.', ]; $validator = Validator::make($input,$rules,$message); if($validator->fails()){ return $this->error('400013',$validator->errors()->first()); } $data['title']=$input['title']; //标题 $data['start_time']=$input['start_time']; //开始时间 $data['end_time']=$input['end_time']; //结束时间 // $data['big_gift']=$input['big_gift']; //大礼包 // $data['honor_wall']=$input['honor_wall']; //荣誉墙 $data['crown_down']=$input['crown_down']??0; //皇冠降级门槛 // $data['top_down']=$input['top_down']??0; //顶级降级门槛 $data['contents']=$input['contents']; //设置代理公司购买数量 if($request->has('set_company_buy_num')){ $data['set_company_buy_num']=$input['set_company_buy_num']; } $data['is_ing']=1; $data['disabled']='0'; DB::beginTransaction(); try{ Activity::where('is_ing',1)->update(['is_ing'=>0]); $row=Activity::create($data); if(isset($input['gift']) && !empty($input['gift'])){ foreach($input['gift'] as $key => $val){ Gifts::create([ 'img'=>$val['img'], 'name'=>$val['name'], 'activity_id'=>$row->id, 'num'=>$val['num'], 'limit_num'=>$val['limit_num'], ]); } } if(isset($input['honor']) && !empty($input['honor'])){ foreach($input['honor'] as $key => $val){ ActivityLimit::create([ 'title'=>$val['title'], 'activity_id'=>$row->id, 'account'=>$val['account'], 'type'=>1, ]); } } Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')添加活动成功,id:'.$row->id); DB::commit(); return $this->success([]); }catch(Exception $e){ DB::rollback(); return $this->error(); } } //后台修改活动 public function updateActivity(Request $request){ $input=$request->all(); $rules=[ 'title'=>'required', 'start_time'=>'required', 'end_time'=>'required', // 'big_gift'=>'required | numeric', // 'honor_wall'=>'required | numeric', // 'crown_down'=>'required | numeric', // 'top_down'=>'required | numeric', ]; $message=[ 'title.required'=>'活动名称不能为空.', 'start_time.required'=>'开始时间不能为空.', 'end_time.required'=>'结束时间不能为空.', // 'big_gift.required'=>'大礼包限额不能为空.', // 'honor_wall.required'=>'荣誉墙限额不能为空.', // 'big_gift.numeric'=>'大礼包限额格式有误.', // 'honor_wall.numeric'=>'荣誉墙限额格式有误.', // // 'crown_down.required'=>'代理公司降级门槛不能为空.', // 'top_down.required'=>'销售经理降级门槛不能为空.', // 'crown_down.numeric'=>'代理公司降级门槛格式有误.', // 'top_down.numeric'=>'销售经理降级门槛格式有误.', ]; $validator = Validator::make($input,$rules,$message); if($validator->fails()){ return $this->error('400013',$validator->errors()->first()); } $data['title']=$input['title']; //标题 $data['start_time']=$input['start_time']; //开始时间 $data['end_time']=$input['end_time']; //结束时间 // $data['big_gift']=$input['big_gift']; //大礼包 // $data['honor_wall']=$input['honor_wall']; //荣誉墙 $data['crown_down']=$input['crown_down']??0; //皇冠降级门槛 // $data['top_down']=$input['top_down']??0; //顶级降级门槛 $data['contents']=$input['contents']; //设置代理公司购买数量 if($request->has('set_company_buy_num')){ $data['set_company_buy_num']=$input['set_company_buy_num']; } $data['activity_info']=json_encode( [ ['level'=>2,'name'=>'大礼包A','money'=>'20000.00','remark'=>''], ['level'=>3,'name'=>'大礼包B','money'=>'100000.00','remark'=>''], ['level'=>3,'name'=>'大礼包C','money'=>'300000.00','remark'=>''], ] ); $row=Activity::where('id',$input['id'])->update($data); if($row){ if($input['new_gift']){ foreach($input['new_gift'] as $key => $val){ Gifts::create([ 'img'=>$val['img'], 'name'=>$val['name'], 'activity_id'=>$input['id'], 'num'=>$val['num'], 'limit_num'=>$val['limit_num'], ]); } } if($input['old_gift']){ foreach($input['old_gift'] as $key =>$val){ Gifts::where('id',$val['id'])->update([ 'img'=>$val['img'], 'name'=>$val['name'], 'activity_id'=>$input['id'], 'num'=>$val['num'], 'limit_num'=>$val['limit_num'], ]); } } if($input['del_i']){ Gifts::whereIn('id',$input['del_i'])->delete(); } if($input['new_honor']){ foreach($input['new_honor'] as $key => $val){ ActivityLimit::create([ 'title'=>$val['title'], 'activity_id'=>$input['id'], 'account'=>$val['account'], 'type'=>1, ]); } } if($input['old_honor']){ foreach($input['old_honor'] as $key =>$val){ ActivityLimit::where('id',$val['id'])->update([ 'title'=>$val['title'], 'activity_id'=>$input['id'], 'account'=>$val['account'], ]); } } if($input['del_i_honor']){ ActivityLimit::whereIn('id',$input['del_i_honor'])->delete(); } Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')修改活动成功,id:'.$input['id']); return $this->success([]); } return $this->error(); } //禁用启用 public function disabledActivity(Request $request){ $activity=Activity::find($request->post('id')); $activity->disabled=($activity->disabled==0)?'1':'0'; $status=($activity->disabled==0)?'启用':'禁用'; $row=$activity->save(); if($row){ Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')'.$status.'活动'.$activity->title.'(id='.$activity->id.')成功'); return $this->success([]); } return $this->error(); } //禁用启用 //<<<<<<< HEAD // public function destoryActivity(Request $request){ // $activity=Activity::find($request->post('id')); // $row=$activity->delete(); // if($row){ // Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')删除活动'.$activity->title.'(id='.$activity->id.')成功'); // return $this->success([]); // } // return $this->error(); // } //获取活动列表 public function getActivityInfo() { return []; $list = Activity::where('disabled', 0)->get(); if ($list) { return $this->success($list); } return $this->error(); } //======= public function destoryActivity(Request $request){ $activity=Activity::find($request->post('id')); $row=$activity->delete(); if($row){ Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')删除活动'.$activity->title.'(id='.$activity->id.')成功'); return $this->success([]); } return $this->error(); //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab } //上传图片 public function uploadPictureImage(Request $request){ $input=$request->all(); //轮播图 //授权书 //商品相册 //社区相册 switch ($input['type']){ case 1: // 轮播图 $path_url='activity/banner'; break; case 2: // 授权书 $path_url='activity/shouquanshu'; break; case 3: // 商品相册 $path_url='activity/goods'; break; case 4: // 社区相册 $path_url='activity/article'; break; default: $path_url='activity/default'; } $file= $request->file('file'); $upload= new UploadFilesHandler(); $result= $upload->save($file, $path_url, null, 'image'); if($result){ return $this->success($result['path']); } return $this->error(); // $input=$request->all(); // //轮播图 //授权书 //商品相册 //社区相册 // switch ($input['type']){ // case 1: // 轮播图 // $path_url='public/banner'; // break; // case 2: // 授权书 // $path_url='public/shouquanshu'; // break; // case 3: // 商品相册 // $path_url='public/goods'; // break; // case 4: // 社区相册 // $path_url='public/article'; // break; // } // $path = $request->file('file')->store($path_url); // $url = Storage::url($path); // if($url){ // return $this->success($url); // } // return $this->error(); } //上传图片 public function uploadGiftImage(Request $request){ $file= $request->file('file'); $path_url='activity/gift'; $upload= new UploadFilesHandler(); $result= $upload->save($file, $path_url, null, 'image'); if($result){ return $this->success($result['path']); } return $this->error(); // $input=$request->all(); // $path_url='public/gift'; // $path = $request->file('file')->store($path_url); // $url = Storage::url($path); // if($url){ // return $this->success($url); // } // return $this->error(); } /* * 活动奖品数量 * **/ public function GetActivityGift(Request $request){ $input=$request->all(); $activity_id=$input['activity_id']; $activity=Activity::find($activity_id); $gift_list=Gifts::where('activity_id',$activity_id)->groupBy('name')->orderBy('id')->get(); $order_ids=Ordertest::whereBetween('created_at',[$activity->start_time,$activity->end_time])->where('is_deleted',0)->pluck('id'); $data=[]; foreach ($gift_list as $k=>$v){ $data[$k]['name']=$v->name; $data[$k]['num']=OrderGift::whereIn('order_id',$order_ids)->where('gift_id',$v->id)->sum('num'); } return $this->success($data); } }