短信完结
This commit is contained in:
@@ -25,14 +25,6 @@ class MessagePushTask
|
||||
foreach ($res as $rk => &$rv) {
|
||||
if(empty($rv['open_id'])) {
|
||||
unset($res[$rk]);
|
||||
}else {
|
||||
$rv['push_event_id'] = $event['id'];
|
||||
$rv['template_id'] = $event['template_id'];
|
||||
$rv['keyword1'] = $event['keyword1'];
|
||||
$rv['keyword2'] = $event['keyword2'];
|
||||
$rv['keyword3'] = $event['keyword3'];
|
||||
$rv['keyword4'] = $event['keyword4'];
|
||||
$rv['keyword5'] = $event['keyword5'];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -40,12 +32,12 @@ class MessagePushTask
|
||||
// 需要接收推送的用户 准备发送
|
||||
foreach ($user_list as $k => $user) {
|
||||
$data = [
|
||||
'thing2' => $user['keyword1'],
|
||||
'amount3' => $user['keyword2'],
|
||||
'time6' => $user['keyword3'],
|
||||
'thing2' => $event['keyword1'],
|
||||
'amount3' => $event['keyword2'],
|
||||
'time6' => $event['keyword3'],
|
||||
];
|
||||
$user_push_list_res_id = Db::name('tb_user_push_event')->insertGetId([
|
||||
'push_event_id' => $user['push_event_id'],
|
||||
'push_event_id' => $event['id'],
|
||||
'user_id' => $user['user_id'],
|
||||
'create_time' => date("Y-m-d H:i:s"),
|
||||
'content' => json_encode($data),
|
||||
@@ -60,10 +52,10 @@ class MessagePushTask
|
||||
// 正式推送
|
||||
$push = $app->template_message->send([
|
||||
'touser' => $user['open_id'],
|
||||
'template_id' => $user['template_id'],
|
||||
'template_id' => $event['template_id'],
|
||||
'data' => $data
|
||||
]);
|
||||
Log::info('用户-' . $user['user_id'] . ' 推送模版ID:'. $user['template_id'] .' 内容:' . json_encode($data, 256) . ' 推送结果:' . json_encode($push));
|
||||
Log::info('用户-' . $user['user_id'] . ' 推送模版ID:'. $event['template_id'] .' 内容:' . json_encode($data, 256) . ' 推送结果:' . json_encode($push));
|
||||
if($push['errcode'] == 0) {
|
||||
Db::name('tb_user_push_event')->where(['id' => $user_push_list_res_id])->update(['update_time' => date("Y-m-d H:i:s"), 'status' => 1]);
|
||||
// 送券
|
||||
@@ -107,22 +99,16 @@ class MessagePushTask
|
||||
foreach ($res as $rk => &$rv) {
|
||||
if(empty($rv['phone'])) {
|
||||
unset($res[$rk]);
|
||||
}else {
|
||||
$rv['push_event_id'] = $event['id'];
|
||||
$rv['sms_sign'] = $event['sms_sign'];
|
||||
$rv['sms_code'] = $event['sms_code'];
|
||||
$rv['sms_content'] = $event['sms_content'];
|
||||
}
|
||||
}
|
||||
|
||||
$user_list = uniqueMultidimensionalArray($res);
|
||||
// 需要接收推送的用户 准备发送
|
||||
foreach ($user_list as $k => $user) {
|
||||
// 查询商家短信余额
|
||||
$sms_shop = Db::name('tb_shop_sms_money')->where(['shop_id' => $event['shop_id']])->find();
|
||||
if (!$sms_shop) {
|
||||
$sms_shop_res_id = Db::name('tb_shop_sms_money')->insertGetId([
|
||||
'shop_id' => $user['push_event_id'],
|
||||
Db::name('tb_shop_sms_money')->insertGetId([
|
||||
'shop_id' => $event['shop_id'],
|
||||
'create_time' => date("Y-m-d H:i:s"),
|
||||
]);
|
||||
log::info('商户' . $event['shop_id'] . '不存在或余额不足,停止发送');
|
||||
@@ -135,18 +121,21 @@ class MessagePushTask
|
||||
continue 2;
|
||||
}else {
|
||||
$user_push_list_res_id = Db::name('tb_user_push_event')->insertGetId([
|
||||
'push_event_id' => $user['push_event_id'],
|
||||
'push_event_id' => $event['id'],
|
||||
'user_id' => $user['user_id'],
|
||||
'create_time' => date("Y-m-d H:i:s"),
|
||||
'content' => json_encode($user),
|
||||
]);
|
||||
if ($user_push_list_res_id) {
|
||||
|
||||
// 发送短信空位置
|
||||
|
||||
|
||||
// 发送短信
|
||||
$ret = AlibabaSms::main([
|
||||
'templateCode' => $event['sms_code'],
|
||||
'templateParam' => json_encode($event['sms_content']),
|
||||
'phoneNumbers' => $user['phone'],
|
||||
'signName' => $event['sms_sign'],
|
||||
]);
|
||||
Log::info('用户-' . $user['user_id'] . ' 短信发送ID:' . $user['template_id'] . ' 内容:' . json_encode($data, 256) . ' 推送结果:' . json_encode($push));
|
||||
if ($push['errcode'] == 0) {
|
||||
if ($ret) {
|
||||
Db::name('tb_user_push_event')->where(['id' => $user_push_list_res_id])->update(['update_time' => date("Y-m-d H:i:s"), 'status' => 1]);
|
||||
// 加入明细
|
||||
$tb_shop_sms_money = Db::name('tb_shop_sms_money_detail')->insertGetId([
|
||||
|
||||
Reference in New Issue
Block a user