123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- <?php
- namespace App\Http\Controllers\Admin;
- use App\Exports\IntegralExport;
- use App\Http\Controllers\Controller;
- use App\Models\DwbsUser;
- use App\Models\DwbsWarea;
- use App\Models\GiftOrders;
- use Illuminate\Http\Request;
- use App\Models\Gift;
- use App\Models\Exchange;
- use App\Handlers\ImageHandler;
- use Illuminate\Support\Facades\Auth;
- use Illuminate\Support\Facades\DB;
- use Illuminate\Support\Facades\Storage;
- use App\Exports\ExchangeExport;
- use Maatwebsite\Excel\Facades\Excel;
- class GiftController extends Controller
- {
- public function show_gift(Request $request)
- {
- $data['gift'] = Gift::orderByDesc('id')->get();
- $data['exchange']=Exchange::where('id',1)->first();
- $count=count($data);
- return $this->success_list($data, 200, $count);
- }
- /*
- * 修改礼品
- */
- public function update_gift(Request $request)//, ImageHandler $imageHandler
- {
- $data = $request->all();
- if ($request->has('img')) {
- $path_url = 'public/gift';
- $result = $request->file('img')->store($path_url);
- if($result) {
- $path= env('APP_URL') . Storage::url($result);
- $data['imgurl'] = $path;
- unset($data['img']);
- }
- // // 保存图片到本地
- // $result = $imageHandler->save($request->img, 'img', $request->id, 1024);
- // // 图片保存成功的话
- // if ($result) {
- // $data['imgurl'] = $result['path'];
- // unset($data['img']);
- // }
- }
- unset($data['created_at']);
- unset($data['updated_at']);
- $re = Gift::where('id', $request->id)->update($data);
- if ($re) {
- return $this->success([]);
- }
- return $this->error(400, [], false);
- }
- /*
- * 增加礼品
- */
- public function add_gift(Request $request)//, ImageHandler $imageHandler
- {
- $id = Auth::user()->id;
- if ($file = $request->img) {
- $path_url = 'public/gift';
- $result = $request->file('img')->store($path_url);
- if($result) {
- $path= env('APP_URL') . Storage::url($result);
- }
- // // 保存图片到本地
- // $result = $imageHandler->save($request->img, 'img', $id, 1024);
- // 图片保存成功的话
- // if ($result) {
- // $path = $result['path'];
- // }
- } else {
- //上传图片失败
- return $this->error(300, [], false);
- }
- $s=Gift::where('name',$request->name)->first();
- if ($s){
- return $this->error(600);
- }
- // $data = $request->all();
- // $data['imgurl'] = $path;
- // unset($data['img']);
- // return $data;
- $re = Gift::create([
- 'name'=>$request->name,
- 'introduction'=>$request->introduction,
- 'integral'=>$request->integral,
- 'imgurl'=>$path,
- 'gift_num'=>$request->gift_num,
- 'exchange_num'=>$request->exchange_num,
- 'status'=>$request->status,
- ]);
- if ($re) {
- return $this->success([]);
- }
- //保存失败
- return $this->error(400, [], false);
- }
- /*
- * 删除礼品
- */
- public function del_gift(Request $request){
- $re=Gift::where('id',$request->id)->delete();
- if ($re){
- return $this->success([]);
- }
- return $this->error(300);
- }
- //导出兑换结果
- public function exportExchangeResult(Request $request){
- $season=$request->input('season')??1;
- $gift_orders=GiftOrders::where('season',$season)->where('type',0)
- ->groupBy('store_id')->select('store_id','uid',DB::raw('sum(ifnull(num*bonus,0)) as integral'))
- ->orderByDesc('integral')->orderBy('store_id')->get();
- foreach($gift_orders as $key=>$val){
- $user=DwbsUser::where('id',$val->uid)->select('nickname','mobile','warea_id','level','headimgurl')->first();
- $gift_orders[$key]->sort=$key+1;
- $gift_orders[$key]->name=$user->nickname;
- if($user->level==1){
- $gift_orders[$key]->level='销售主管';
- }elseif($user->level==2){
- $gift_orders[$key]->level='销售经理';
- }elseif($user->level==3){
- $gift_orders[$key]->level='代理公司';
- }
- $gift_orders[$key]->phone=$user->mobile;
- $gift_orders[$key]->headimgurl=$user->headimgurl;
- $gift_orders[$key]->warea=DwbsWarea::where('id',$user->warea_id)->value('name');
- $gift_orders[$key]->integrals=$val->integral;
- $gifts=GiftOrders::where('season',$season)->where('type',0)->where('store_id',$val->store_id)->select('name','num','bonus')->get();
- $g='';
- foreach($gifts as $k=>$v){
- if(empty($g)){
- $g.=$v->name.'*'.$v->num.'*'.$v->bonus;
- }else{
- $g.=';'.$v->name.'*'.$v->num.'*'.$v->bonus;
- }
- }
- $gift_orders[$key]->gift=$g;
- unset($gift_orders[$key]->integral);
- unset($gift_orders[$key]->store_id);
- unset($gift_orders[$key]->uid);
- }
- return Excel::download(new ExchangeExport($gift_orders), 'exc.xlsx');
- return $this->success($gift_orders);
- }
- }
|