update 市场部长任务判定对接商城api统计接口

This commit is contained in:
chenbo 2023-10-25 10:49:38 +08:00
parent 6af8ff4f71
commit 9f1467ca3a
2 changed files with 53 additions and 34 deletions

View File

@ -78,7 +78,7 @@ class ShopRequestLogic extends BaseLogic
public static function getPurchaseAmount($param) public static function getPurchaseAmount($param)
{ {
try { try {
$requestResponse = HttpClient::create()->request('GET', env('url.shop_prefix'). '/statistics/supply_chain_product_price_count', [ $requestResponse = HttpClient::create()->request('GET', env('url.shop_prefix'). '/api/statistics/supply_chain_product_price_count', [
'query' => $param 'query' => $param
]); ]);
return json_decode($requestResponse->getContent(), true); return json_decode($requestResponse->getContent(), true);
@ -94,7 +94,7 @@ class ShopRequestLogic extends BaseLogic
public static function getTradeAmount($param) public static function getTradeAmount($param)
{ {
try { try {
$requestResponse = HttpClient::create()->request('GET', env('url.shop_prefix'). '/statistics/supply_chain_product_price_count', [ $requestResponse = HttpClient::create()->request('GET', env('url.shop_prefix'). '/api/statistics/supply_chain_product_price_count', [
'query' => $param 'query' => $param
]); ]);
return json_decode($requestResponse->getContent(), true); return json_decode($requestResponse->getContent(), true);
@ -110,7 +110,7 @@ class ShopRequestLogic extends BaseLogic
public static function getGeneralMerchantCount($param) public static function getGeneralMerchantCount($param)
{ {
try { try {
$requestResponse = HttpClient::create()->request('GET', env('url.shop_prefix'). '', [ $requestResponse = HttpClient::create()->request('GET', env('url.shop_prefix'). '/api/statistics/supply_chain_product_count', [
'query' => $param 'query' => $param
]); ]);
return json_decode($requestResponse->getContent(), true); return json_decode($requestResponse->getContent(), true);
@ -126,7 +126,7 @@ class ShopRequestLogic extends BaseLogic
public static function getGeneralMerchantProductListing($param) public static function getGeneralMerchantProductListing($param)
{ {
try { try {
$requestResponse = HttpClient::create()->request('GET', env('url.shop_prefix'). '', [ $requestResponse = HttpClient::create()->request('GET', env('url.shop_prefix'). '/api/statistics/supply_chain_product_count', [
'query' => $param 'query' => $param
]); ]);
return json_decode($requestResponse->getContent(), true); return json_decode($requestResponse->getContent(), true);
@ -142,7 +142,7 @@ class ShopRequestLogic extends BaseLogic
public static function getGeneralMerchantStockUpdate($param) public static function getGeneralMerchantStockUpdate($param)
{ {
try { try {
$requestResponse = HttpClient::create()->request('GET', env('url.shop_prefix'). '', [ $requestResponse = HttpClient::create()->request('GET', env('url.shop_prefix'). '/api/statistics/supply_chain_product_stock_count', [
'query' => $param 'query' => $param
]); ]);
return json_decode($requestResponse->getContent(), true); return json_decode($requestResponse->getContent(), true);
@ -190,7 +190,7 @@ class ShopRequestLogic extends BaseLogic
public static function getPlantingAndBreedingMerchantTradeAmount($param) public static function getPlantingAndBreedingMerchantTradeAmount($param)
{ {
try { try {
$requestResponse = HttpClient::create()->request('GET', env('url.shop_prefix'). '', [ $requestResponse = HttpClient::create()->request('GET', env('url.shop_prefix'). '/api/statistics/supply_chain_village_breeding_price_count', [
'query' => $param 'query' => $param
]); ]);
return json_decode($requestResponse->getContent(), true); return json_decode($requestResponse->getContent(), true);

View File

@ -779,10 +779,12 @@ class TaskLogic extends BaseLogic
// 当前任务进行天数 = 第一阶段天数 判定任务完成情况,结算 // 当前任务进行天数 = 第一阶段天数 判定任务完成情况,结算
if ($dayCount == $templateInfo['stage_day_one']) { if ($dayCount == $templateInfo['stage_day_one']) {
// 请求商城接口,获取完成几家 todo // 请求商城接口,获取完成几家
$param['start_time'] = strtotime(date('Y-m-d', $templateInfo['cretate_time'])) + 86400; $param['start_time'] = strtotime(date('Y-m-d', $templateInfo['cretate_time'])) + 86400;
$param['end_time'] = time(); $param['end_time'] = time();
$param['responsible_area'] = $townCompany['responsible_area']; $param['responsible_area'] = $townCompany['responsible_area'];
$param['type'] = 'street';
$param['type_id'] = 17;
$result = ShopRequestLogic::getSupplyChainMerchantCount($param); $result = ShopRequestLogic::getSupplyChainMerchantCount($param);
if ($result['status'] != 200) { if ($result['status'] != 200) {
Log::error('查询供应链商户统计接口失败'.ShopRequestLogic::getError()); Log::error('查询供应链商户统计接口失败'.ShopRequestLogic::getError());
@ -833,10 +835,11 @@ class TaskLogic extends BaseLogic
'start_time' => $startTime, 'start_time' => $startTime,
'end_time' => $endTime, 'end_time' => $endTime,
'mer_intention_id' => $merIntentionId, 'mer_intention_id' => $merIntentionId,
'type_id' => 17,
]; ];
$result = ShopRequestLogic::getProductListing($param); $result = ShopRequestLogic::getProductListing($param);
if ($result['status'] != 200) { if ($result['status'] != 200) {
Log::info(['4.市场部长-供应链商户完成商品上架和库存更新任务-查询商城接口结果', json_encode($result)]); Log::info(['4.市场部长-供应链商户完成商品上架和库存更新任务-查询商城接口失败', json_encode($result)]);
return false; return false;
} }
$count = $result['data']['count']; $count = $result['data']['count'];
@ -860,13 +863,15 @@ class TaskLogic extends BaseLogic
'start_time' => $startTime, 'start_time' => $startTime,
'end_time' => $endTime, 'end_time' => $endTime,
'mer_intention_id' => $merIntentionId, 'mer_intention_id' => $merIntentionId,
'type_id' => 17
]; ];
$result1 = ShopRequestLogic::getStockUpdate($param); $result1 = ShopRequestLogic::getStockUpdate($param);
if ($result['status'] != 200) { if ($result1['status'] != 200) {
Log::info(['4.市场部长-供应链商户完成库存更新任务-查询商城接口结果', json_encode($result)]); Log::info(['4.市场部长-供应链商户完成库存更新任务-查询商城接口结果', json_encode($result)]);
return false; return false;
} }
if ($result1['is_done'] == 1){ $count = $result1['data']['count'];
if ($count >= 1){
// 结算金额 任务金额/目标数 * 天数 // 结算金额 任务金额/目标数 * 天数
$taskInfo['money'] = bcmul($templateInfo['stage_day_two'], bcdiv($templateInfo['money_two'], $templateInfo['extend']['target'])); $taskInfo['money'] = bcmul($templateInfo['stage_day_two'], bcdiv($templateInfo['money_two'], $templateInfo['extend']['target']));
Log::info(['5.市场部长-供应链商户完成商品上架任务-$taskSchedulePlan', json_encode($taskSchedulePlan)]); Log::info(['5.市场部长-供应链商户完成商品上架任务-$taskSchedulePlan', json_encode($taskSchedulePlan)]);
@ -958,8 +963,11 @@ class TaskLogic extends BaseLogic
'type'=>200 'type'=>200
]; ];
$result1 = ShopRequestLogic::getPurchaseAmount($param); $result1 = ShopRequestLogic::getPurchaseAmount($param);
// todo 返回字段要对接 if ($result1['status'] != 200) {
if ($result1['procure_amount'] > 0) { Log::info(['4.市场部长-协助供应链商户采购任务-查询商城接口失败', json_encode($result1)]);
return false;
}
if ($result1['data']['procure_amount'] > 0) {
$procureAmount = $result1['procure_amount']; $procureAmount = $result1['procure_amount'];
// 采购金额 实际完成率 // 采购金额 实际完成率
$rate = self::countRate($procureAmount, $step); $rate = self::countRate($procureAmount, $step);
@ -1113,7 +1121,11 @@ class TaskLogic extends BaseLogic
'type'=>300 'type'=>300
]; ];
$result1 = ShopRequestLogic::getTradeAmount($param); $result1 = ShopRequestLogic::getTradeAmount($param);
$tradeAmount = $result1['trade_amount']; // todo 返回字段要对接 if ($result1['status'] != 200) {
Log::info(['4.市场部长-协助供应链商户销售任务-查询商城接口失败', json_encode($result1)]);
return false;
}
$tradeAmount = $result1['data']['procure_amount'];
if ($tradeAmount > 0) { if ($tradeAmount > 0) {
// 采购金额 实际完成率 // 采购金额 实际完成率
@ -1203,6 +1215,7 @@ class TaskLogic extends BaseLogic
$target = $templateInfo['extend']['target']; $target = $templateInfo['extend']['target'];
$taskMoney = 0; $taskMoney = 0;
if ($dayCount == $templateInfo['stage_day_one']) { if ($dayCount == $templateInfo['stage_day_one']) {
$taskMoney = -1;
// 15 自任务下发第15天 // 15 自任务下发第15天
$startTime = strtotime($templateInfo['create_time']); $startTime = strtotime($templateInfo['create_time']);
$endTime = strtotime("+15 day", $startTime); $endTime = strtotime("+15 day", $startTime);
@ -1211,13 +1224,17 @@ class TaskLogic extends BaseLogic
'start_time' => $startTime, 'start_time' => $startTime,
'end_time' => $endTime, 'end_time' => $endTime,
'responsible_area' => $responsibleArea, 'responsible_area' => $responsibleArea,
'type' => 'street',
'type_id' => 10
]; ];
$result = ShopRequestLogic::getGeneralMerchantCount($param); // todo 对接接口字段 $result = ShopRequestLogic::getGeneralMerchantCount($param);
$count = $result['count']; Log::error('查询供应链商户统计接口失败'.ShopRequestLogic::getError());
$count = $result['data']['count'];
if ($count >= $target) { if ($count >= $target) {
$taskMoney = $totalMoney; $taskMoney = $totalMoney;
return $taskMoney; return $taskMoney;
} }
// 30 自任务下发第30天 // 30 自任务下发第30天
$startTime = strtotime($templateInfo['create_time']); $startTime = strtotime($templateInfo['create_time']);
$endTime = strtotime("+30 day", $startTime); $endTime = strtotime("+30 day", $startTime);
@ -1226,13 +1243,17 @@ class TaskLogic extends BaseLogic
'start_time' => $startTime, 'start_time' => $startTime,
'end_time' => $endTime, 'end_time' => $endTime,
'responsible_area' => $responsibleArea, 'responsible_area' => $responsibleArea,
'type' => 'street',
'type_id' => 10
]; ];
$result = ShopRequestLogic::getGeneralMerchantCount($param); // todo 对接接口字段 $result = ShopRequestLogic::getGeneralMerchantCount($param);
$count = $result['count']; Log::error('查询供应链商户统计接口失败'.ShopRequestLogic::getError());
$count = $result['data']['count'];
if ($count >= $target) { if ($count >= $target) {
$taskMoney = bcmul($totalMoney, 0.9, 2); $taskMoney = bcmul($totalMoney, 0.9, 2);
return $taskMoney; return $taskMoney;
} }
// 60 自任务下发第60天 // 60 自任务下发第60天
$startTime = strtotime($templateInfo['create_time']); $startTime = strtotime($templateInfo['create_time']);
$endTime = strtotime("+60 day", $startTime); $endTime = strtotime("+60 day", $startTime);
@ -1241,9 +1262,12 @@ class TaskLogic extends BaseLogic
'start_time' => $startTime, 'start_time' => $startTime,
'end_time' => $endTime, 'end_time' => $endTime,
'responsible_area' => $responsibleArea, 'responsible_area' => $responsibleArea,
'type' => 'street',
'type_id' => 10
]; ];
$result = ShopRequestLogic::getGeneralMerchantCount($param); // todo 对接接口字段 $result = ShopRequestLogic::getGeneralMerchantCount($param);
$count = $result['count']; Log::error('查询供应链商户统计接口失败'.ShopRequestLogic::getError());
$count = $result['data']['count'];
if ($count >= $target) { if ($count >= $target) {
$taskMoney = bcmul($totalMoney, 0.8, 2); $taskMoney = bcmul($totalMoney, 0.8, 2);
return $taskMoney; return $taskMoney;
@ -1254,7 +1278,6 @@ class TaskLogic extends BaseLogic
return $taskMoney; return $taskMoney;
} }
} }
$taskMoney = -1;
} }
return $taskMoney; return $taskMoney;
} }
@ -1331,13 +1354,13 @@ class TaskLogic extends BaseLogic
'start_time' => $startTime, 'start_time' => $startTime,
'end_time' => $endTime, 'end_time' => $endTime,
'mer_intention_id' => $merIntentionId, 'mer_intention_id' => $merIntentionId,
'type_id' => 10
]; ];
// todo 返回字段要对接
$result = ShopRequestLogic::getGeneralMerchantStockUpdate($param); $result = ShopRequestLogic::getGeneralMerchantStockUpdate($param);
$isDone = $result['is_done']; $count = $result['data']['count'];
Log::info(['4.市场部长-一般商户完成库存更新任务-查询商城接口结果', json_encode($result)]); Log::info(['4.市场部长-一般商户完成库存更新任务-查询商城接口结果', json_encode($result)]);
// 任一商户未完成,判定为未完成 // 任一商户未完成,判定为未完成
if (!$isDone){ if ($count == 0){
$taskIsDone = false; $taskIsDone = false;
} }
} }
@ -1367,12 +1390,12 @@ class TaskLogic extends BaseLogic
'start_time' => $startTime, 'start_time' => $startTime,
'end_time' => $endTime, 'end_time' => $endTime,
'mer_intention_id' => $merIntentionId, 'mer_intention_id' => $merIntentionId,
'type_id' => 10
]; ];
// todo 返回字段要对接
$result = ShopRequestLogic::getGeneralMerchantProductListing($param); $result = ShopRequestLogic::getGeneralMerchantProductListing($param);
$count = $result['count']; Log::info(['4.市场部长-一般商户完成商品上架任务-查询商城接口结果失败', json_encode($result)]);
Log::info(['4.市场部长-一般商户完成商品上架任务-查询商城接口结果', json_encode($result)]); $count = $result['data']['count'];
// 任一商户未完成,判定为未完成 // 任一商户未完成,判定为未完成
if ($count < 200) { if ($count < 200) {
$taskIsDone = false; $taskIsDone = false;
@ -1441,9 +1464,8 @@ class TaskLogic extends BaseLogic
'goods_id' => $templateInfo['extend']['goods_id'], 'goods_id' => $templateInfo['extend']['goods_id'],
'type'=>200 'type'=>200
]; ];
// todo 对接接口实际返回参数
$result = ShopRequestLogic::getGeneralMerchantPurchaseAmount($param); $result = ShopRequestLogic::getGeneralMerchantPurchaseAmount($param);
$procureAmount = $result['procure_amount']; $procureAmount = $result['data']['procure_amount'];
$step = bcdiv(bcsub($dayCount, $stageDayOne), 30); $step = bcdiv(bcsub($dayCount, $stageDayOne), 30);
$target = $templateInfo['extend']['target']; $target = $templateInfo['extend']['target'];
@ -1475,9 +1497,8 @@ class TaskLogic extends BaseLogic
'goods_id' => $templateInfo['extend']['goods_id'], 'goods_id' => $templateInfo['extend']['goods_id'],
'type'=>200 'type'=>200
]; ];
// todo 对接接口实际返回参数
$result = ShopRequestLogic::getGeneralMerchantPurchaseAmount($param); $result = ShopRequestLogic::getGeneralMerchantPurchaseAmount($param);
$procureAmount = $result['procure_amount']; $procureAmount = $result['data']['procure_amount'];
$rate = bcdiv($procureAmount, $targetProcureAmount, 1); $rate = bcdiv($procureAmount, $targetProcureAmount, 1);
if (bccomp($rate, 0.5, 1) == -1) { if (bccomp($rate, 0.5, 1) == -1) {
return 0; return 0;
@ -1572,9 +1593,8 @@ class TaskLogic extends BaseLogic
'goods_id' => $templateInfo['extend']['goods_id'], 'goods_id' => $templateInfo['extend']['goods_id'],
'type'=>200 'type'=>200
]; ];
// todo 对接接口实际返回参数
$result = ShopRequestLogic::getGeneralMerchantPurchaseAmount($param); $result = ShopRequestLogic::getGeneralMerchantPurchaseAmount($param);
$procureAmount = $result['procure_amount']; $procureAmount = $result['data']['procure_amount'];
$step = bcdiv(bcsub($dayCount, $stageDayOne), 30); $step = bcdiv(bcsub($dayCount, $stageDayOne), 30);
$target = $templateInfo['extend']['target']; $target = $templateInfo['extend']['target'];
@ -1606,9 +1626,8 @@ class TaskLogic extends BaseLogic
'goods_id' => $templateInfo['extend']['goods_id'], 'goods_id' => $templateInfo['extend']['goods_id'],
'type'=>300 'type'=>300
]; ];
// todo 对接接口实际返回参数
$result = ShopRequestLogic::getGeneralMerchantTradeAmount($param); $result = ShopRequestLogic::getGeneralMerchantTradeAmount($param);
$tradeAmount = $result['trade_amount']; $tradeAmount = $result['data']['procure_amount'];
$rate = bcdiv($tradeAmount, $targetProcureAmount, 1); $rate = bcdiv($tradeAmount, $targetProcureAmount, 1);
if (bccomp($rate, 0.5, 1) == -1) { if (bccomp($rate, 0.5, 1) == -1) {
return 0; return 0;