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)
{
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
]);
return json_decode($requestResponse->getContent(), true);
@ -94,7 +94,7 @@ class ShopRequestLogic extends BaseLogic
public static function getTradeAmount($param)
{
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
]);
return json_decode($requestResponse->getContent(), true);
@ -110,7 +110,7 @@ class ShopRequestLogic extends BaseLogic
public static function getGeneralMerchantCount($param)
{
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
]);
return json_decode($requestResponse->getContent(), true);
@ -126,7 +126,7 @@ class ShopRequestLogic extends BaseLogic
public static function getGeneralMerchantProductListing($param)
{
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
]);
return json_decode($requestResponse->getContent(), true);
@ -142,7 +142,7 @@ class ShopRequestLogic extends BaseLogic
public static function getGeneralMerchantStockUpdate($param)
{
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
]);
return json_decode($requestResponse->getContent(), true);
@ -190,7 +190,7 @@ class ShopRequestLogic extends BaseLogic
public static function getPlantingAndBreedingMerchantTradeAmount($param)
{
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
]);
return json_decode($requestResponse->getContent(), true);

View File

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