Browse Source

发送失败取消显示BUG

bianjunhui 2 years ago
parent
commit
b1114e37d4
2 changed files with 15 additions and 8 deletions
  1. 8 6
      api/mod/sms.php
  2. 7 2
      application/lib/data/adminAction.php

+ 8 - 6
api/mod/sms.php

@@ -42,15 +42,17 @@ class ONUService{
             $list = $admin->select_smslog_new_query($where);//牛信云发送日志查询
             $uid =$list[0]['uid'];
             $wheres =" where uid='{$uid}'" ;
-            $lists = $admin->select_sms_data_tmp_new($wheres);
-            $fid=$lists[0]['fid'];//获取ly_sms_data_tmp_new fid
-            $count=count($lists);
-            if($fid) {
-               $admin->delete_smslog_dr($uid,$fid,$count);
+            $lists = $admin->select_sms_data_tmp_new($wheres);//获取ly_sms_data_tmp_new fid
+            $admin->delete_smslog_dr($uid);
+            foreach ($lists as $v){
+                $fid=$v['fid'];
+                $count=$v['counts'];
+                if($fid) {
+                    $admin->up_smslog_dr($uid,$fid,$count);
+                }
             }
         }
     }
-
     public  function getCount($key){
         $redis=$this->redis();
         $count = $redis->exists($key) ? $redis->get($key) : 0;

+ 7 - 2
application/lib/data/adminAction.php

@@ -832,15 +832,20 @@ class AdvertAdminAction extends BaseAction{
     }
     //$uid 查询牛信云待发送日志
     public function select_sms_data_tmp_new($where){
-        $sql    = "select * from ly_sms_data_tmp_new $where  ";
+        $sql    = "select fid,count(*) as counts from ly_sms_data_tmp_new $where group by fid ";
         $result = $this->getDbEntity()->query($sql);
         return $result;
     }
 
     //失败过高删除短信发送
-    public function delete_smslog_dr($uid,$fid,$count){
+    public function delete_smslog_dr($uid){
         $sql1    = "DELETE FROM `ly_sms_data_tmp_new` WHERE `uid`='{$uid}'  ";
         $this->getDbEntity()->query($sql1);
+
+        return true;
+    }
+    //修改失败过高删除短信发送状态
+    public function up_smslog_dr($uid,$fid,$count){
         $sql2    = "update ly_send_sms_log_count set status=1,nosend='{$count}' WHERE `log_id`='{$fid}'";
         $this->getDbEntity()->query($sql2);
         return true;