From d77fbaf6facda904625a0729a2be2d7033cac3f3 Mon Sep 17 00:00:00 2001 From: shengchanzhe <179998674@qq.com> Date: Wed, 13 Sep 2023 14:15:19 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=B1=95=E7=A4=BA=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/controller/TaskController.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/api/controller/TaskController.php b/app/api/controller/TaskController.php index d018544b3..6ed508ad7 100644 --- a/app/api/controller/TaskController.php +++ b/app/api/controller/TaskController.php @@ -63,9 +63,9 @@ class TaskController extends BaseApiController if($timevalue('transaction_pool'); if($transaction_pool==0){ - $find['arr']['transaction_pool']=0; + $find['transaction']['arr']['transaction_pool']=$find['transaction']['arr']['total_price']; }else{ - $find['arr']['transaction_pool']=$transaction_pool; + $find['transaction']['arr']['transaction_pool']=bcadd($find['transaction']['arr']['total_price'],$transaction_pool,2); } $res[$k]['extend']['transaction'] = $find; } @@ -97,9 +97,9 @@ class TaskController extends BaseApiController if ($task != false) { $find['list'] = $list; if($transaction_pool==0){ - $task['extend']['transaction']['arr']['transaction_pool']=0; + $task['extend']['transaction']['arr']['transaction_pool']=$task['extend']['transaction']['arr']['total_price']; }else{ - $task['extend']['transaction']['arr']['transaction_pool']=$transaction_pool; + $task['extend']['transaction']['arr']['transaction_pool']=bcadd($task['extend']['transaction']['arr']['total_price'],$transaction_pool,2); } $find['extend']=$task['extend']; return $this->success('ok', $find); From 8d3eb6d83340fe20f9768ce9b5897c280c9954fc Mon Sep 17 00:00:00 2001 From: shengchanzhe <179998674@qq.com> Date: Wed, 13 Sep 2023 14:29:48 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/controller/RemoteController.php | 101 +++++++++++------------- app/api/controller/TaskController.php | 18 +++-- 2 files changed, 58 insertions(+), 61 deletions(-) diff --git a/app/api/controller/RemoteController.php b/app/api/controller/RemoteController.php index cb3e5f9f3..565d09a62 100644 --- a/app/api/controller/RemoteController.php +++ b/app/api/controller/RemoteController.php @@ -12,16 +12,15 @@ class RemoteController extends BaseApiController public array $notNeedLogin = ['index']; - public function shang_date_total_price($company,$arr=[],$template_id=0) + public function shang_date_total_price($company, $arr = [], $template_id = 0) { $start_time = date('Y-m-d'); - $time=strtotime($start_time)+86399; - $end_time=date('Y-m-d H:i:s',$time); + $time = strtotime($start_time) + 86399; + $end_time = date('Y-m-d H:i:s', $time); - if(isset($arr['start_time']) && $arr['end_time']){ + if (isset($arr['start_time']) && $arr['end_time']) { $start_time = $arr['start_time']; $end_time = $arr['end_time']; - } $parmas = [ "start_date" => $start_time, @@ -55,11 +54,11 @@ class RemoteController extends BaseApiController break; default: Log::error('任务结算失败,公司类型错误:' . $company['company_type']); - Log::error('片区交易错误:'.$company); + Log::error('片区交易错误:' . $company); return false; } try { - $res = HttpClient::create()->request('GET', env('url.shop_prefix').'/api/order/statistics', [ + $res = HttpClient::create()->request('GET', env('url.shop_prefix') . '/api/order/statistics', [ 'query' => $parmas, ]); $json = json_decode($res->getContent(), true); @@ -71,11 +70,11 @@ class RemoteController extends BaseApiController $arr['total_price'] = $json['data']['total_price']; //基础金额*(每日基户数*天数)//且户数小于公司总户数 $user_count = UserInformationg::where('company_id', $company['id'])->count(); - $day_count=TaskTemplate::where('id',$template_id)->value('day_count'); + $day_count = TaskTemplate::where('id', $template_id)->value('day_count'); // - if($day_count==0){ + if ($day_count == 0) { $user_count_two = 5 * 1; - }else{ + } else { $user_count_two = 5 * $day_count; } if ($user_count_two > $user_count) { @@ -98,20 +97,15 @@ class RemoteController extends BaseApiController } } - public function shang_date_list($company,$is_day,$querys){ - if($is_day==1){ - $start_time = date('Y-m-d'); - $time=strtotime($start_time)+86399; - $end_time=date('Y-m-d H:i:s',$time); - }else{ - $start_time = date('Y-m-d',strtotime('-1 day', time())); - $time=strtotime($start_time)+86399; - $end_time=date('Y-m-d H:i:s',$time); - } - if(isset($querys['start_time']) && isset($querys['end_time'])){ + public function shang_date_list($company, $querys) + { + $start_time = date('Y-m-d'); + $time = strtotime($start_time) + 86399; + $end_time = date('Y-m-d H:i:s', $time); + + if (isset($querys['start_time']) && isset($querys['end_time'])) { $start_time = $querys['start_time']; $end_time = $querys['end_time']; - } $parmas = [ "start_date" => $start_time, @@ -147,54 +141,54 @@ class RemoteController extends BaseApiController return false; } - if(isset($querys['page'])){ - $parmas['page']=$querys['page']; + if (isset($querys['page'])) { + $parmas['page'] = $querys['page']; } - try{ - $list = HttpClient::create()->request('GET', env('url.shop_prefix').'/api/region/order', [ + try { + $list = HttpClient::create()->request('GET', env('url.shop_prefix') . '/api/region/order', [ 'query' => $parmas, ]); $json_list = json_decode($list->getContent(), true); - $data=[]; - if($json_list['status'] == 200){ - $data=$json_list['data']['list']; + $data = []; + if ($json_list['status'] == 200) { + $data = $json_list['data']['list']; } return $data; - }catch(\Exception $e){ + } catch (\Exception $e) { return false; } - } /** * * 获取坐标的距离 */ - public function coordinate($parmas,$longitude1,$latitude1){ - $res = HttpClient::create()->request('GET', env('project.logistic_domain').'/api/getCarHistory', [ + public function coordinate($parmas, $longitude1, $latitude1) + { + $res = HttpClient::create()->request('GET', env('project.logistic_domain') . '/api/getCarHistory', [ 'query' => $parmas, ]); - $json=json_decode($res->getContent(),true); - $points=$json['data']; - if(empty($points)){ + $json = json_decode($res->getContent(), true); + $points = $json['data']; + if (empty($points)) { return false; } - $target =[ - "lat"=> $latitude1, - "lon"=> $longitude1 + $target = [ + "lat" => $latitude1, + "lon" => $longitude1 ]; $closestPoint = $this->getClosestPoint($points, $target); - return $this->calculateDistance($target['lon'], $target['lat'], $closestPoint[0]['lon'], $closestPoint[0]['lat']); - + return $this->calculateDistance($target['lon'], $target['lat'], $closestPoint[0]['lon'], $closestPoint[0]['lat']); } /** * * 计算两点之间的距离 */ - function getClosestPoint($points, $target) { + function getClosestPoint($points, $target) + { $minDistance = PHP_INT_MAX; $closestPoint = null; foreach ($points as $point) { @@ -203,29 +197,30 @@ class RemoteController extends BaseApiController if ($distance < $minDistance) { $minDistance = $distance; $closestPoint = $point; - }else{ - $distance=0; + } else { + $distance = 0; } } - - return [$closestPoint,$distance]; + + return [$closestPoint, $distance]; } /** * * 计算两点之间的距离 */ - function calculateDistance( $longitude1,$latitude1, $longitude2,$latitude2 ) { + function calculateDistance($longitude1, $latitude1, $longitude2, $latitude2) + { $earthRadius = 6371; // 地球半径,单位为公里 - + $dLat = deg2rad($latitude2 - $latitude1); $dLon = deg2rad($longitude2 - $longitude1); - - $a = sin($dLat/2) * sin($dLat/2) + + + $a = sin($dLat / 2) * sin($dLat / 2) + cos(deg2rad($latitude1)) * cos(deg2rad($latitude2)) * - sin($dLon/2) * sin($dLon/2); + sin($dLon / 2) * sin($dLon / 2); $c = 2 * asin(sqrt($a)); - - return $earthRadius * $c*100; + + return $earthRadius * $c * 100; } } diff --git a/app/api/controller/TaskController.php b/app/api/controller/TaskController.php index 6ed508ad7..cb9b945b3 100644 --- a/app/api/controller/TaskController.php +++ b/app/api/controller/TaskController.php @@ -62,12 +62,12 @@ class TaskController extends BaseApiController if ($find != false) { if($timevalue('transaction_pool'); - if($transaction_pool==0){ - $find['transaction']['arr']['transaction_pool']=$find['transaction']['arr']['total_price']; - }else{ - $find['transaction']['arr']['transaction_pool']=bcadd($find['transaction']['arr']['total_price'],$transaction_pool,2); - } $res[$k]['extend']['transaction'] = $find; + if($transaction_pool==0){ + $res[$k]['extend']['transaction']['arr']['transaction_pool']=$find['arr']['total_price']; + }else{ + $res[$k]['extend']['transaction']['arr']['transaction_pool']=bcadd($res[$k]['extend']['transaction']['arr']['total_price'],$transaction_pool,2); + } } // Task::where('id',$item['id'])->update(['extend'=>json_encode(['transaction'=>$find],true)]); } else { @@ -93,13 +93,15 @@ class TaskController extends BaseApiController // $list = App(RemoteController::class)->shang_date_list($company, 1, $parmas); $parmas['start_time']=date('Y-m-d',$task['start_time']); $parmas['end_time']=$task['end_time'].' 23:59:59'; - $list = App(RemoteController::class)->shang_date_list($company, 1, $parmas); + $list = App(RemoteController::class)->shang_date_list($company, $parmas); + $shang_date_total_price = App(RemoteController::class)->shang_date_total_price($company,$parmas,$task['template_id']); + if ($task != false) { $find['list'] = $list; if($transaction_pool==0){ - $task['extend']['transaction']['arr']['transaction_pool']=$task['extend']['transaction']['arr']['total_price']; + $task['extend']['transaction']['arr']['transaction_pool']=$shang_date_total_price['arr']['total_price']; }else{ - $task['extend']['transaction']['arr']['transaction_pool']=bcadd($task['extend']['transaction']['arr']['total_price'],$transaction_pool,2); + $task['extend']['transaction']['arr']['transaction_pool']=bcadd($shang_date_total_price['arr']['total_price'],$transaction_pool,2); } $find['extend']=$task['extend']; return $this->success('ok', $find); From 7bf2e79ab7f4479949f81573022bf53cf1b290b1 Mon Sep 17 00:00:00 2001 From: shengchanzhe <179998674@qq.com> Date: Wed, 13 Sep 2023 14:56:44 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/job/TaskInformationJob.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/job/TaskInformationJob.php b/app/job/TaskInformationJob.php index 938abbd32..69364bd11 100644 --- a/app/job/TaskInformationJob.php +++ b/app/job/TaskInformationJob.php @@ -44,7 +44,8 @@ class TaskInformationJob } elseif //交易金额 ($data['template_info']['type'] == 33) { - $shang_date_total_price = App(RemoteController::class)->shang_date_total_price($company); + $shang_date_total_price = App(RemoteController::class)->shang_date_total_price($company,[],$data['template_id']); + if ($shang_date_total_price == false) { Log::info('交易金额任务,交易金额未达到要求:' . json_encode($data)); Task::where('id', $data['task_id'])->update(['status' => 5]); @@ -55,8 +56,8 @@ class TaskInformationJob if($count_money>$shang_date_total_price['arr']['day_money']){ $day_money=bcsub($count_money,$shang_date_total_price['arr']['day_money'],2);//当计算剩余池before_transaction_pool $shang_date_total_price['arr']['before_transaction_pool']=$transaction_pool;//变化前 + $shang_date_total_price['arr']['after_count_transaction_pool']=$count_money;//变化后 $shang_date_total_price['arr']['after_transaction_pool']=$day_money;//变化后 - Task::where('id', $data['task_id'])->update(['status' => 3,'extend'=>json_encode(['transaction'=>$shang_date_total_price])]); TaskTemplate::where('id',$data['template_info']['id'])->update(['transaction_pool'=>$day_money]); $shang_date_total_price['arr']['status']=1; From 40d98b8e442ee8c36912d7a12e862c81ba4331e3 Mon Sep 17 00:00:00 2001 From: shengchanzhe <179998674@qq.com> Date: Wed, 13 Sep 2023 15:09:33 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/controller/TaskController.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/api/controller/TaskController.php b/app/api/controller/TaskController.php index cb9b945b3..07a2fc587 100644 --- a/app/api/controller/TaskController.php +++ b/app/api/controller/TaskController.php @@ -95,7 +95,6 @@ class TaskController extends BaseApiController $parmas['end_time']=$task['end_time'].' 23:59:59'; $list = App(RemoteController::class)->shang_date_list($company, $parmas); $shang_date_total_price = App(RemoteController::class)->shang_date_total_price($company,$parmas,$task['template_id']); - if ($task != false) { $find['list'] = $list; if($transaction_pool==0){ @@ -103,6 +102,11 @@ class TaskController extends BaseApiController }else{ $task['extend']['transaction']['arr']['transaction_pool']=bcadd($shang_date_total_price['arr']['total_price'],$transaction_pool,2); } + if($task['start_time']success('ok', $find); }