进一步完成

This commit is contained in:
ASUS 2025-10-15 19:49:05 +08:00
parent d715a5fcf0
commit c26095df31
2 changed files with 44 additions and 2 deletions

View File

@ -42,7 +42,7 @@ class QuerySmsStatus extends Command
Log::info('生日有礼短信发送状态查询开始->' . json_encode($bir_list));
foreach ($bir_list as $k => $value) {
$data = [
'TemplateCode' => $value['template_code'],
'PhoneNumber' => $value['phone'],
'BizId' => $value['biz_id'],
'SendDate' => date('Ymd'),
'PageSize' => 1,
@ -80,8 +80,48 @@ class QuerySmsStatus extends Command
}
// 活动开始
// 营销短信
$bir_list = Db::table('sms_push_event_record')->where(['status' => 1])->select()->toArray();
if($bir_list) {
Log::info('营销短信发送状态查询开始->' . json_encode($bir_list));
foreach ($bir_list as $k => $value) {
$data = [
'PhoneNumber' => $value['user_phone'],
'BizId' => $value['biz_id'],
'SendDate' => date('Ymd'),
'PageSize' => 1,
'CurrentPage' => 20,
];
$res = AlibabaSms::QuerySendDetails($data);
try {
Db::startTrans();
if($res['Code'] == 'OK') {
$push_resp = $res['ErrCode'];
if($res['SmsSendDetailDTOs']['SmsSendDetailDTO'][0]['SendStatus'] == 3) {
$push_status = 2;
// 扣掉余额
ShopInfo::moeny(config('cons.sms_price'), $value['main_shop_id'], 2, );
}elseif ($res['SmsSendDetailDTOs']['SmsSendDetailDTO'][0]['SendStatus'] == 2) {
$push_status = -1;
}elseif ($res['SmsSendDetailDTOs']['SmsSendDetailDTO'][0]['SendStatus'] == 1) {
$push_status = 1;
}
$update_data = [
'status' => $push_status,
'error' => $push_resp,
];
$update_status = Db::table('sms_push_event_record')->where(['id' => $value['id']])->update($update_data);
Db::commit();
Log::info('营销短信查询完毕数据库更新结果---》[ID]' . $value['id'] . '更新结果-->' . $update_status . '-->更新数据 . ' . json_encode($update_data));
}
}catch (\Exception $e) {
Db::rollback();
Log::info('短信查询错误---》[ID]' . $e->getMessage());
}
sleep(1);
}
}

View File

@ -43,11 +43,13 @@ class BirthdayGiftSms implements Consumer
Db::table('mk_birthday_gift_record')->where(['id' => $record['id']])->update([
'push_status' => 'await_push',
'biz_id' => $res['BizId'],
'phone' => $user['phone'],
'push_time' => date('Y-m-d H:i:s'),
]);
}else {
Db::table('mk_birthday_gift_record')->where(['id' => $record['id']])->update([
'push_status' => 'failed',
'phone' => $user['phone'],
'push_time' => date('Y-m-d H:i:s'),
]);
}