IntegralController.php 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646
  1. <?php
  2. namespace App\Http\Controllers\Admin;
  3. use App\Exports\DownExport;
  4. use Maatwebsite\Excel\Facades\Excel;
  5. use App\Http\Controllers\Controller;
  6. use App\Models\Admin;
  7. use App\Models\DwbsUser;
  8. use App\Models\DwbsWarea;
  9. use App\Models\Order;
  10. use App\Models\OrderRefund;
  11. use App\Models\Store;
  12. use App\Models\Apply;
  13. use App\Models\Integral;
  14. use App\Models\Exchange;
  15. use App\Models\GiftOrders;
  16. use Carbon\Carbon;
  17. use App\Handlers\GetVideoTimeHandler;
  18. use Illuminate\Support\Facades\Auth;
  19. use Illuminate\Support\Facades\Hash;
  20. use Illuminate\Http\Request;
  21. use Illuminate\Support\Facades\DB;
  22. use Illuminate\Support\Facades\Log;
  23. use Illuminate\Support\Facades\Cache;
  24. use Illuminate\Support\Facades\Validator;
  25. class IntegralController extends Controller
  26. {
  27. protected $score;
  28. public function __construct()
  29. {
  30. $this->score=5;
  31. }
  32. //获取订单全部学分
  33. public function getOrderAllIntegral(){
  34. return '获取订单全部学分';
  35. $orders=Order::where('is_pay',1)->get();
  36. DB::transaction(function()use($orders){
  37. foreach($orders as $key=>$val){
  38. $integral=Integral::where('order_no',$val->order_no)->where('type',1)->first();
  39. if(empty($integral)){
  40. $integral=$val->total*$this->score;
  41. Integral::create([
  42. 'store_id'=>$val->store_id,
  43. 'order_no'=>$val->order_no,
  44. 'num'=>$val->total,
  45. 'integral'=>$integral,
  46. 'type'=>1,
  47. 'remark'=>'下单成功',
  48. ]);
  49. $store=Store::where('id',$val->store_id)->lockForUpdate()->first();
  50. $store->integral += $integral;
  51. $store->save();
  52. }
  53. if($val->apply_cancel==2){
  54. $integral=Integral::where('order_no',$val->order_no)->where('type',2)->first();
  55. if(empty($integral)){
  56. $integral=$val->total*$this->score;
  57. Integral::create([
  58. 'store_id'=>$val->store_id,
  59. 'order_no'=>$val->order_no,
  60. 'num'=>$val->total,
  61. 'integral'=>$integral,
  62. 'type'=>2,
  63. 'remark'=>'取消订单',
  64. ]);
  65. $store=Store::where('id',$val->store_id)->lockForUpdate()->first();
  66. $store->integral -= $integral;
  67. $store->save();
  68. }
  69. }
  70. }
  71. },5);
  72. return $this->success([]);
  73. }
  74. //获取积分列表
  75. public function getIntegralList(Request $request){
  76. $page_index=$request->input('page_index');
  77. $page_size=$request->input('page_size');
  78. $search_name=$request->input('search_name');
  79. $type=$request->input('type');
  80. $num=$page_size*($page_index-1);
  81. $admin_id=Auth::user()->id;
  82. $admin=Admin::where('id',$admin_id)->first();
  83. if($admin && in_array($admin->role_id,[22,24])) {//超级管理员
  84. $data=Integral::with('store:id,name,phone');
  85. }else{
  86. $warea_ids=DwbsWarea::where('admin_id',$admin_id)->pluck('id');
  87. $agent_ids=DwbsUser::whereIn('warea_id',$warea_ids)->pluck('id');
  88. $stores=Store::whereIn('user_id',$agent_ids)->pluck('id');
  89. $data=Integral::with('store')->whereIn('store_id',$stores);
  90. }
  91. if($search_name){
  92. $store_ids=Store::where('name','like','%'.$search_name.'%')->orWhere('phone','like','%'.$search_name.'%')->pluck('id');
  93. $data->whereIn('store_id',$store_ids);
  94. }
  95. if($type!='all'){
  96. $data->where('type',$type);
  97. }
  98. $count=$data->count();
  99. $list=$data->orderByDesc('created_at')->skip($num)->take($page_size)->get();
  100. $wareas=DwbsWarea::pluck('name','id');
  101. $user_ids=Store::pluck('user_id');
  102. $store_user_ids=Store::pluck('user_id','id');
  103. $warea_user_ids=DwbsUser::whereIn('id',$user_ids)->pluck('warea_id','id');
  104. foreach($list as $key=>$val){
  105. $user_id=$store_user_ids[$val->store_id];
  106. $warea_id=$warea_user_ids[$user_id];
  107. $list[$key]->warea=$wareas[$warea_id];
  108. }
  109. return $this->success_list($list,'',$count);
  110. }
  111. public function exportYesDoubleInfo(){
  112. $date=date("Y-m-d",strtotime('-1 days'));
  113. $where=function($query)use($date){
  114. $query->where('order.is_pay',1)->whereIn('order.apply_cancel',[0,1,3])->whereDate('order.pay_at',$date);
  115. };
  116. if(empty(Cache::get('cellData'))){
  117. $cellData=Order::where($where)->leftjoin('store','order.store_id','=','store.id')
  118. ->select('store.name','store.phone','store.img','store.user_id','store_id',DB::raw('sum(order.total) as total'),DB::raw('sum(order.account) as account'))
  119. ->groupBy('store_id')->having('total','>=',2)->orderByDesc('total')->orderBy('store_id')->get();//->orderByDesc('account')
  120. $sort=array_flip(array_values(array_unique(array_column($cellData->toArray(),'total'))));
  121. foreach($cellData as $key=>$val){
  122. $user=DwbsUser::where('id',$val->user_id)->select('id','level','nickname','name','remark_name')->first();
  123. $cellData[$key]->level=$user->level;
  124. if(!empty($user->name)){
  125. $cellData[$key]->name=$user->name;
  126. }elseif(!empty($user->nickname)){
  127. $cellData[$key]->name=$user->nickname;
  128. }
  129. $cellData[$key]->sort=$sort[$val->total]+1;
  130. }
  131. $second=30;
  132. Cache::put('cellData', $cellData, $second);
  133. }else{
  134. $cellData=Cache::get('cellData');
  135. }
  136. return $this->success($cellData);
  137. }
  138. public function addExchange(Request $request){
  139. $num=$request->input('num');
  140. $start_time=$request->input('start_time');
  141. $end_time=$request->input('end_time');
  142. $status=$request->input('status');
  143. $res=Exchange::create([
  144. 'season'=>$num,
  145. 'title'=>'第'.$num.'次兑换礼品',
  146. 'start_time'=>$start_time,
  147. 'end_time'=>$end_time,
  148. 'status'=>$status,
  149. ]);
  150. if($res){
  151. return $this->success([]);
  152. }
  153. return $this->error();
  154. }
  155. public function editExchange(Request $request){
  156. $id=$request->input('id');
  157. $num=$request->input('num');
  158. $start_time=$request->input('start_time');
  159. $end_time=$request->input('end_time');
  160. $status=$request->input('status');
  161. $res=Exchange::where('id',$id)->update([
  162. 'season'=>$num,
  163. 'title'=>'第'.$num.'次兑换礼品',
  164. 'start_time'=>$start_time,
  165. 'end_time'=>$end_time,
  166. 'status'=>$status,
  167. ]);
  168. if($res){
  169. return $this->success([]);
  170. }
  171. return $this->error();
  172. }
  173. public function deleteExchange(Request $request){
  174. $id=$request->input('id');
  175. $res=Exchange::where('id',$id)->delete();
  176. if($res){
  177. return $this->success([]);
  178. }
  179. return $this->error();
  180. }
  181. public function getExchangeList(Request $request){
  182. $page_index=$request->input('page_index');
  183. $page_size=$request->input('page_size');
  184. $num=$page_size*($page_index-1);
  185. $search_name=$request->input('search_name');
  186. $admin_id=Auth::user()->id;
  187. $admin=Admin::where('id',$admin_id)->first();
  188. if($admin && in_array($admin->role_id,[22,24])) {//超级管理员
  189. $data=GiftOrders::with('store:id,name,phone,img');
  190. }else{
  191. $warea_ids=DwbsWarea::where('admin_id',$admin_id)->pluck('id');
  192. $agent_ids=DwbsUser::whereIn('warea_id',$warea_ids)->pluck('id');
  193. $stores=Store::whereIn('user_id',$agent_ids)->pluck('id');
  194. $data=GiftOrders::with('store:id,name,phone,img')->whereIn('store_id',$stores);
  195. }
  196. if($search_name){
  197. $store_ids=Store::where('name','like','%'.$search_name.'%')
  198. ->orWhere('phone','like','%'.$search_name.'%')->pluck('id');
  199. $data->whereIn('store_id',$store_ids);
  200. }
  201. $count=$data->count();
  202. $list=$data->skip($num)->take($page_size)->orderByDesc('id')->get();
  203. $wareas=DwbsWarea::pluck('name','id')->toArray();
  204. $user_ids=Store::pluck('user_id')->toArray();
  205. $store_user_ids=Store::pluck('user_id','id')->toArray();
  206. $warea_user_ids=DwbsUser::whereIn('id',$user_ids)->pluck('warea_id','id')->toArray();
  207. foreach($list as $key=>$val){
  208. $user_id=array_key_exists($val->store_id,$store_user_ids)?$store_user_ids[$val->store_id]:null;
  209. $warea_id=array_key_exists($user_id,$warea_user_ids)?$warea_user_ids[$user_id]:null;
  210. $list[$key]->warea=array_key_exists($warea_id,$wareas)?$wareas[$warea_id]:null;
  211. }
  212. return $this->success_list($list,'',$count);
  213. }
  214. public function getExchangeInfo(Request $request){
  215. $page_index=$request->input('page_index');
  216. $page_size=$request->input('page_size');
  217. $num=$page_size*($page_index-1);
  218. $count=Exchange::count();
  219. $list=Exchange::orderByDesc('id')->skip($num)->take($page_size)->get();
  220. foreach($list as $key=>$val){
  221. $date=date("Y-m-d H:i:s");
  222. if($val->start_time<=$date && $date<=$val->end_time){
  223. if($val->status==1){
  224. $list[$key]->type='进行中';
  225. }else{
  226. $list[$key]->type='未启动';
  227. }
  228. }elseif($val->start_time>=$date && $date<=$val->end_time){
  229. $list[$key]->type='未开始';
  230. }elseif($val->start_time<=$date && $date>=$val->end_time){
  231. $list[$key]->type='已结束';
  232. }
  233. }
  234. return $this->success_list($list,'',$count);
  235. }
  236. //修改时间
  237. public function editTime(){
  238. $videoTime=new GetVideoTimeHandler();
  239. return $videoTime->getTime('http://weidian.jiuweiyun.cn/storage/video/0g2pnQcJZWCSxooGXrvnkaqGzdonyzjUQrPeb0hO.mp4');
  240. // $integral=Integral::where('type',2)->get();
  241. // foreach($integral as $key=>$val){
  242. // if($val->integral>0){
  243. // Integral::where('id',$val->id)->update([
  244. // 'integral'=> 0-$val->integral
  245. // ]);
  246. // }
  247. // }
  248. // $integral=Integral::all();
  249. // foreach($integral as $key=>$val){
  250. // $order=Order::where('order_no',$val->order_no)->select('id','order_no','cancel_at','created_at')->first();
  251. // if($val->type==1){
  252. // Integral::where('id',$val->id)->update([
  253. // 'created_at'=>$order->created_at,
  254. // 'updated_at'=>$order->created_at
  255. // ]);
  256. // }else{
  257. // Integral::where('id',$val->id)->update([
  258. // 'created_at'=>$order->cancel_at,
  259. // 'updated_at'=>$order->cancel_at
  260. // ]);
  261. // }
  262. // }
  263. return $this->success([]);
  264. }
  265. //获取奖学金排行榜
  266. public function getIntegralOrderBy(Request $request)
  267. {
  268. $page_index=$request->input('page_index');
  269. $page_size=$request->input('page_size');
  270. $type=$request->input('type');
  271. if($request->input('type')=='num'){
  272. $type='total';
  273. }else{
  274. $type=$request->input('type');
  275. }
  276. $sort=$request->input('sort');
  277. $num=$page_size*($page_index-1);
  278. $search_name=$request->input('search_name');
  279. $where=[];
  280. if($search_name){
  281. $where=function($query)use($search_name){
  282. $query->where('name','like','%'.$search_name.'%')
  283. ->orWhere('phone',$search_name);
  284. };
  285. }
  286. $count=Store::where($where)->where('is_apply',3)->count();
  287. $list=Store::where($where)->where('is_apply',3)->where('store.status',0)
  288. ->select('id','name','phone','img','user_id','total','integral')
  289. ->orderBy($type,$sort)->orderBy('id')
  290. ->skip($num)->take($page_size)
  291. ->get();
  292. // $list=Store::where($where)->leftJoin('integral as inte',function($query)use($where){
  293. // $query->on('store.id','=','inte.store_id'); //->where('inte.is_zbs',0)
  294. // })->where('store.status',0)->where('store.is_apply',3)
  295. // ->groupBy('store.id')
  296. // ->select('store.name','store.phone','store.img','store.user_id',DB::raw('sum(ifnull(inte.num,0)) as total'),DB::raw('sum(ifnull(inte.integral_double,0)) as integral'))
  297. // ->orderBy($type,$sort)->orderBy('store.id')
  298. // ->skip($num)->take($page_size)
  299. // ->get();
  300. foreach($list as $key=>$val){
  301. $warea_id=DwbsUser::where('id',$val->user_id)->value('warea_id');
  302. $warea=DwbsWarea::where('id',$warea_id)->value('name');
  303. $list[$key]->warea=$warea;
  304. }
  305. return $this->success_list($list,'',$count);
  306. }
  307. //导出奖学金排行榜
  308. public function exportIntegralOrderBy(Request $request)
  309. {
  310. $search_name=$request->input('search_name');
  311. $where=[];
  312. if($search_name){
  313. $where=function($query)use($search_name){
  314. $query->where('name','like','%'.$search_name.'%')
  315. ->orWhere('phone',$search_name);
  316. };
  317. }
  318. $list=Store::where($where)->where('is_apply',3)->where('store.status',0)
  319. ->select('id','name','phone','img','user_id','total','integral')
  320. ->orderBy('id')
  321. ->get();
  322. // $store_user_ids = Store::where($where)->where('is_apply',3)->pluck('user_id');
  323. // $wareas=Cache::remember('wareas',Carbon::now()->addHours(2),function (){
  324. // return DwbsWarea::pluck('name','id');
  325. // });
  326. // Log::info('--mendian2.3--'.microtime());
  327. // $warea_user_ids=Cache::remember('warea_user_ids',Carbon::now()->addHours(2),function()use($store_user_ids){
  328. // return DwbsUser::withTrashed()->whereIn('id',$store_user_ids)->pluck('warea_id','id');
  329. // });
  330. // foreach($list as $key=>$val){
  331. // $second=mt_rand(2880,7200);
  332. // if(Cache::has('warea-'.$val->user_id)){
  333. // $list[$key]->warea=Cache::get('warea-'.$val->user_id);
  334. // }else{
  335. // $warea_id=$warea_user_ids[$val->user_id];
  336. // $list[$key]->warea=$wareas[$warea_id];
  337. // Cache::put('warea-'.$val->user->id, $wareas[$warea_id], $second);
  338. // }
  339. // $warea_id=DwbsUser::where('id',$val->user_id)->value('warea_id');
  340. // $warea=DwbsWarea::where('id',$warea_id)->value('name');
  341. // $list[$key]->warea=$warea;
  342. // }
  343. return $this->success($list);
  344. }
  345. //变负值
  346. public function gt(){
  347. }
  348. //导出
  349. public function down(Request $request){
  350. $type='all';
  351. $where=[];
  352. // if($type=='yesterday'){
  353. // $where=function($query){
  354. // $date=date("Y-m-d",strtotime('-1 days'));
  355. // $query->whereDate('inte.created_at',$date);
  356. // };
  357. // }
  358. $count=Store::where('status',0)->count();
  359. // $list=Store::where('status',0)->orderByDesc('integral')
  360. // ->skip($num)->take($page_size)->get();
  361. $list=Store::leftJoin('integral as inte',function($query)use($where){
  362. $query->on('store.id','=','inte.store_id')
  363. ->where($where);
  364. })->where('store.status',0)
  365. ->groupBy('store.id')
  366. ->select('store.name','store.phone','store.img',DB::raw('sum(ifnull(inte.integral_double,0)) as integral'))
  367. ->orderByDesc('integral')->orderBy('store.id')
  368. ->get();
  369. return Excel::download(new DownExport($list), 'exc.xlsx');
  370. return $this->success_list($list,'',$count);
  371. }
  372. //
  373. public function getsss(Request $request)
  374. {
  375. $page_index=$request->input('page_index');
  376. $page_size=$request->input('page_size');
  377. $num=$page_size*($page_index-1);
  378. $store=Store::where('is_apply',3)->select('id','phone','applyment_id','sub_mchid')
  379. ->skip($num)->take($page_size)
  380. ->get();
  381. $list=[];
  382. foreach($store as $key=>$val){
  383. $apply=Apply::where('applyment_id',$val->applyment_id)
  384. ->where('sub_mchid',$val->sub_mchid)
  385. ->where('applyment_state','FINISH')->first();
  386. if(empty($apply)){
  387. $list[]=$val->phone;
  388. }
  389. }
  390. return $this->success($list);
  391. }
  392. //重置积分
  393. public function resetIntegral(Request $request){
  394. $res=Store::whereNull('total')->update([
  395. 'total'=>0
  396. ]);
  397. return $res;
  398. $store_ids=Store::where('is_apply',3)->pluck('id');
  399. $integral=Integral::whereIn('store_id',$store_ids)
  400. ->select('store_id',DB::raw('sum(ifnull(integral_double,0)) as integral'))
  401. ->groupBy('store_id')->Having('integral','>',0)->get();
  402. return count($integral);
  403. // return Integral::where('type',2)->update([
  404. // 'num'=>DB::raw('(0-num)')
  405. // ]);
  406. //return '222';
  407. $page_index=$request->input('page_index');
  408. $page_size=$request->input('page_size');
  409. $num=$page_size*($page_index-1);
  410. $store_ids=Integral::whereIn('type',[1,2])->groupBy('store_id')->orderBy('store_id')->skip($num)->take($page_size)->pluck('store_id');
  411. $n=0;
  412. foreach($store_ids as $key=>$val){
  413. $integral=Integral::where('store_id',$val)->sum('integral_double');
  414. $total=Integral::where('store_id',$val)->whereIn('type',[1,2])->sum('num');
  415. Store::where('id',$val)->update([
  416. 'integral'=>$integral,
  417. 'total'=>$total
  418. ]);
  419. $n++;
  420. }
  421. return '555--'.$n;
  422. $start="2021-08-25 00:00:00";
  423. $end="2021-08-26 10:45:00";
  424. $ends="2021-08-26 12:40:00";
  425. // $store_ids=Integral::whereBetween('created_at',[$start,$end])->where('type',1)->groupBy('store_id')->pluck('store_id');
  426. // foreach($store_ids as $val){
  427. // $total=Integral::whereBetween('created_at',[$start,$end])->where('store_id',$val)->where('type',1)->count('num');
  428. // $integral=$total*(5-2);
  429. // Store::where('id',$val)->increment('integral',$integral);
  430. // }
  431. //
  432. // $store_ids1=Integral::whereBetween('created_at',[$start,$ends])->where('type',2)->groupBy('store_id')->pluck('store_id');
  433. // foreach($store_ids1 as $val){
  434. // $total1=Integral::whereBetween('created_at',[$start,$ends])->where('store_id',$val)->where('type',2)->count('num');
  435. // $integral1=$total1*(2-5);
  436. // Store::where('id',$val)->increment('integral',$integral1);
  437. // }
  438. $store_ids=Integral::whereBetween('created_at',[$start,$end])->where('type',1)->groupBy('store_id')->pluck('store_id');
  439. foreach($store_ids as $val){
  440. $total=Integral::whereBetween('created_at',[$start,$end])->where('store_id',$val)->where('type',1)->sum('num');
  441. $integral=$total*(2-5);
  442. Store::where('id',$val)->increment('integral',$integral);
  443. }
  444. $inte=Integral::whereBetween('created_at',[$start,$ends])->where('type',2)->get();
  445. foreach($inte as $val){
  446. $in=Integral::where('order_no',$val->order_no)->where('type',1)->first();
  447. if($in->created_at >= $start){
  448. $integral1=$val->num*(5-2);
  449. Store::where('id',$val->store_id)->increment('integral',$integral1);
  450. }
  451. }
  452. // $store_ids1=Integral::whereBetween('created_at',[$start,$ends])->where('type',2)->groupBy('store_id')->pluck('store_id');
  453. // foreach($store_ids1 as $val){
  454. //
  455. // $total1=Integral::whereBetween('created_at',[$start,$ends])->where('store_id',$val)->where('type',2)->sum('num');
  456. // $integral1=$total1*(5-2);
  457. // Store::where('id',$val)->increment('integral',$integral1);
  458. // }
  459. return '235 ';
  460. $integrals=Integral::whereBetween('created_at',[$start,$end])->where('type',2)->get();
  461. foreach($integrals as $key=>$val){
  462. $int=Integral::whereBetween('created_at',[$start,$end])->where('type',1)->where('order_no',$val->order_no)->first();
  463. if($int){
  464. Integral::whereBetween('created_at',[$start,$end])->where('type',2)->where('order_no',$val->order_no)->update([
  465. 'integral'=>0-$val->num*2,
  466. 'integral_double'=>0-$val->num*2,
  467. // 'is_zbs'=>0
  468. ]);
  469. }
  470. }
  471. return '123';
  472. $res=Integral::whereBetween('created_at',[$start,$end])->where('type',1)->update([
  473. 'integral'=>DB::raw('num*2'),
  474. 'integral_double'=>DB::raw('num*2'),
  475. 'is_zbs'=>0
  476. ]);
  477. return $this->success($res);
  478. }
  479. public function dsa(){
  480. $arr=['2426_DX21081317214772901775226
  481. ','4117_DX21081317181113238966627
  482. ','5948_DX21081310272588918566500
  483. ','4888_DX21081218233922515581766
  484. ','9172_DX21081218230399160421573
  485. ','2816_DX21081218072428844882041
  486. ','7301_DX21081217044883769260787
  487. ','3394_DX21081217041980036686966
  488. ','1466_DX21081217034966367091964
  489. ','7776_DX21081216290332417131594
  490. ','2562_DX21081216263446925217300
  491. ','4719_DX21081014062464538217431
  492. ','9231_DX21081013595257656187144
  493. ','8733_DX21080409330564331424041
  494. ','8849_DX21080316264873140571251
  495. ','5055_DX21080316205824537346012
  496. ','6416_DX21080315082887070444348
  497. ','8758_DX21073111003642349563584
  498. ','8293_DX21073010253555192134913
  499. ','3386_DX21072610020108613687911
  500. ','8531_DX21072518500269917823394
  501. ','6690_DX21072518173323687111331
  502. ','1912_DX21072510120204646742802
  503. ','5802_DX21072510082958086220156
  504. ','8367_DX21072510062411469237505
  505. ','5826_DX21072418500951215492113
  506. ','2280_DX21072411083283895220447
  507. ','7204_DX21072410120801765349818
  508. ','5962_DX21072409563170128941163
  509. ','3538_DX21072318431155094933233
  510. ','7416_DX21072318283295596751658
  511. ','7785_DX21072318182143819359542
  512. ','7606_DD21072318065327164144416
  513. ','9101_DX21072318045508297535794
  514. ','4518_DX21072318032080626867870
  515. ','7083_DX21072317540959770746242
  516. ','9350_DX21072317522507819295010
  517. ','9098_DX21072317473239074373306
  518. ','5012_DX21072317383986142270163
  519. ','1245_DX21072316325281285544387
  520. ','4591_DX21072316321017061448068
  521. ','1231_DX21072316170246579942877
  522. ','8799_DX21072314464322182286444
  523. ','3795_DX21072314402188908271473
  524. ','4654_DX21071711312905354570098
  525. ','4559_DX21071009363195643247155
  526. ','8230_DX21071009363195643247155
  527. ','5121_DD21070821541929089363149
  528. ','2016_DX21061517060983032832824
  529. ','5281_DX21060814081290595830689
  530. ','2332_DX21060711131480293077197
  531. ','6074_DX21060711123983997293442
  532. ','3660_DX21060417532537670747890
  533. ','7393_DX21060417272233270023754
  534. ','8514_DX21060215424955896339040
  535. ','7326_DX21060214590509424865011
  536. ','8285_DX21060210565772559727797
  537. ','9243_DX21060210124258735564803
  538. ','6008_DX21060210114069046955976
  539. ','3260_DX21060109333328489928437
  540. ','9138_DX21060109304678785446765
  541. ','2351_DX21053118322791510698112
  542. ','2970_DX21053118283219925352999
  543. ','4372_DX21053118154353075977510
  544. ','1573_DX21052918522255468321071
  545. ','8004_DX21052918472229656752394
  546. ','5827_DX21052918254402390555994
  547. ','6531_DX21052917412025835494831
  548. ','6457_DX21052917380121782315650
  549. ','1577_DX21052915062990373381760
  550. ','2390_DX21052909420697674232321
  551. ','1476_DX21052509590967051649554
  552. ','4310_DX21052509573639622717254
  553. ','5718_DX21052118075639471996795
  554. ','6687_DX21052118041972046933374
  555. ','8211_DX21051514194839750144226
  556. ','6712_DX21051511235294694284325
  557. ','8224_DX21051410545301668562881
  558. '
  559. ];
  560. foreach($arr as $key=>$val){
  561. $order_no=substr($val,'5',25);
  562. $list[]=Order::where('order_no',$order_no)->pluck('store_id','user_id');
  563. }
  564. return $this->success_list($list,'',count($list).'---'.count($arr));
  565. }
  566. public function ggg(){
  567. $intes=Integral::where('created_at','>','2021-08-25 00:00:00')->where('type',1)->get();
  568. $n=0;
  569. $arr=[];
  570. foreach ($intes as $key=>$val){
  571. if($val->integral/$val->num ==5 ){
  572. // try{
  573. // DB::transaction(function()use($val){
  574. // Integral::where('id',$val->id)->where('type',1)->update([
  575. // 'integral'=>$val->num*2,
  576. // 'integral_double'=>$val->num*2,
  577. // ]);
  578. // Store::where('id',$val->store_id)->decrement('integral',$val->num*3);
  579. // },5);
  580. array_push($arr,$val->id);
  581. $n++;
  582. // }catch(\Exception $e){
  583. // return $this->error($e->getMessage());
  584. // }
  585. }
  586. }
  587. return [$n,$arr];
  588. }
  589. }