zhangdongming 3 rokov pred
rodič
commit
743da1ca59

+ 18 - 41
Controller/UnicomCombo/UnicomComboTaskController.py

@@ -16,7 +16,7 @@ from django.db import transaction
 from django.db.models import Q
 from django.views import View
 
-from Model.models import UnicomComboOrderInfo, UnicomCombo, Order_Model, UnicomDeviceInfo, UnicomFlowPush, SysMsgModel
+from Model.models import UnicomComboOrderInfo, UnicomCombo, Order_Model, UnicomDeviceInfo, UnicomFlowPush
 from Object.ResponseObject import ResponseObject
 from Object.UnicomObject import UnicomObjeect
 
@@ -227,13 +227,9 @@ class UnicomComboTaskView(View):
                 'updated_time': now_time,
             }
             UnicomComboOrderInfo.objects.filter(id=combo_order.id).update(**upd_data)
-            ud_info_qs = UnicomDeviceInfo.objects.filter(iccid=iccid)
-            if ud_info_qs.exists():
-                ud_info = ud_info_qs.first()
-                sys_msg_text = UnicomComboTaskView.get_sys_msg_text(ud_info.serial_no, combo_order.combo.combo_name, 2)
-                asy = threading.Thread(target=UnicomComboTaskView.async_sys_msg_save,
-                                       args=(ud_info.user_id, ud_info.serial_no, sys_msg_text))
-                asy.start()
+            asy = threading.Thread(target=UnicomComboTaskView.async_combo_sys_msg_push,
+                                   args=(iccid, combo_order.id, 3))
+            asy.start()
             return True
         except Exception as e:
             logger.info('出错了~激活套餐,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
@@ -284,46 +280,27 @@ class UnicomComboTaskView(View):
                 unicom_api.change_device_to_disable(item)
                 combo_order_info_qs = UnicomComboOrderInfo.objects.filter(iccid=item, status=2) \
                     .values('combo__combo_name').order_by('-updated_time')
-                ud_info_qs = UnicomDeviceInfo.objects.filter(iccid=item)
                 combo_order = combo_order_info_qs.first()
-                if ud_info_qs.exists():
-                    ud_info = ud_info_qs.first()
-                    sys_msg_text = UnicomComboTaskView.get_sys_msg_text(ud_info.serial_no,
-                                                                        combo_order['combo__combo_name'], 1)
-                    asy = threading.Thread(target=UnicomComboTaskView.async_sys_msg_save,
-                                           args=(ud_info.user_id, ud_info.serial_no, sys_msg_text))
-                    asy.start()
+                asy = threading.Thread(target=UnicomComboTaskView.async_combo_sys_msg_push,
+                                       args=(icc_id, combo_order.id, 4))
+                asy.start()
             else:
                 unicom_api.change_device_to_activate(item)
         return response.json(0)
 
     @staticmethod
-    def get_sys_msg_text(serial_no, combo_name, sys_type):
+    def async_combo_sys_msg_push(iccid, combo_order_id, push_type):
         """
-        获取系统消息文本
+        异步保存消息推送 激活|过期
+        @param iccid:
+        @param combo_order_id:
+        @param push_type:
         @return:
         """
-        if sys_type == 1:
-            sys_msg_text = "温馨提示:尊敬的客户,您" + serial_no + "设备当前4G" + combo_name + "已到期"
-        elif sys_type == 2:
-            sys_msg_text = "温馨提示:尊敬的客户,您" + serial_no + "设备当前4G" + combo_name + "已激活"
-        else:
-            sys_msg_text = "温馨提示:尊敬的客户,您" + serial_no + "设备当前4G" + combo_name + "已用完"
-        return sys_msg_text
-
-    @staticmethod
-    def async_sys_msg_save(user_id, serial_no, sys_msg_text):
-        """
-        异步系统消息保存
-        @param user_id: 用户id
-        @param sys_msg_text: 系统消息文本
-        @param serial_no: 序列号
-        @return: None
-        """
         now_time = int(time.time())
-        try:
-            data = {'addTime': now_time, 'updTime': now_time, 'userID_id': user_id, 'eventType': 0, 'msg': sys_msg_text,
-                    'uid': serial_no}
-            SysMsgModel.objects.create(**data)
-        except Exception as e:
-            print('出错了~异步保存配置信息错误,errLine:{}, errMsg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
+        ud_info_qs = UnicomDeviceInfo.objects.filter(iccid=iccid).values('serial_no')
+        push_data = {'combo_order_id': str(combo_order_id), 'serial_no': ud_info_qs.first()['serial_no'],
+                     'status': 0, 'type': push_type,
+                     'updated_time': now_time,
+                     'created_time': now_time, 'user_id': ud_info_qs.first()['user_id']}
+        UnicomFlowPush.objects.create(push_data)