123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264 |
- <?php
- namespace App\Http\Controllers;
- use App\Models\Activity;
- use App\Models\Goods;
- use App\Models\Gifts;
- use App\Models\User;
- use Illuminate\Http\Request;
- use Illuminate\Support\Facades\DB;
- use Illuminate\Support\Facades\Log;
- use Illuminate\Support\Facades\Auth;
- use Illuminate\Support\Facades\Storage;
- use Illuminate\Support\Facades\Validator;
- use \Exception;
- class ActivityController extends Controller
- {
- //获取活动列表
- public function getActivityList(Request $request){
- $input=$request->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')
- ->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 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'];
- $data['is_ing']=1;
- $data['disabled']='0';
- DB::beginTransaction();
- try{
- Activity::where('is_ing',1)->update(['is_ing'=>0]);
- $row=Activity::create($data);
- if($input['gift']){
- foreach($input['gift'] as $key => $val){
- Gifts::create([
- 'img'=>$val['img'],
- 'name'=>$val['name'],
- 'activity_id'=>$row->id,
- 'num'=>$val['num'],
- ]);
- }
- }
- 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'];
- $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'],
- ]);
- }
- }
- 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'],
- ]);
- }
- }
- if($input['del_i']){
- Gifts::whereIn('id',$input['del_i'])->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()
- {
- $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='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){
- $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();
- }
- }
|