|
@@ -454,50 +454,38 @@ class UnicomManageControllerView(View):
|
|
@param response: 响应对象
|
|
@param response: 响应对象
|
|
@param return:
|
|
@param return:
|
|
"""
|
|
"""
|
|
- username = request_dict.get('username', None)
|
|
|
|
- uid = request_dict.get('uid', None)
|
|
|
|
|
|
+ userId = request_dict.get('userId', None)
|
|
serialNo = request_dict.get('serialNo', None)
|
|
serialNo = request_dict.get('serialNo', None)
|
|
comboId = request_dict.get('comboId', None)
|
|
comboId = request_dict.get('comboId', None)
|
|
- if not all([username, serialNo or uid, comboId]):
|
|
|
|
|
|
+ if not all([userId, serialNo, comboId]):
|
|
return response.json(444)
|
|
return response.json(444)
|
|
try:
|
|
try:
|
|
while transaction.atomic():
|
|
while transaction.atomic():
|
|
- unicom_combo_qs = UnicomCombo.objects.filter(id=comboId, combo_type=2).values('combo_type')
|
|
|
|
- if not unicom_combo_qs.exists():
|
|
|
|
|
|
+ combo_info_qs = UnicomCombo.objects.filter(id=comboId, combo_type=2, status=0, is_del=False) \
|
|
|
|
+ .values('id', 'combo_name', 'price', 'virtual_price', 'remark', 'combo_type').order_by('sort')
|
|
|
|
+ if not combo_info_qs.exists():
|
|
return response.json(173)
|
|
return response.json(173)
|
|
- device_info_qs = Device_Info.objects.filter(userID__username=username).values('UID', 'serial_number',
|
|
|
|
- 'userID_id')
|
|
|
|
- if uid:
|
|
|
|
- device_info_qs = device_info_qs.filter(UID=uid).values('userID_id')
|
|
|
|
- user_id = device_info_qs[0]['userID_id']
|
|
|
|
- device_info_qs = UnicomDeviceInfo.objects.filter(user_id=user_id).values('iccid', 'user_id',
|
|
|
|
- 'serial_no')
|
|
|
|
- elif serialNo:
|
|
|
|
- device_info_qs = UnicomDeviceInfo.objects.filter(serial_no=serialNo).values('user_id', 'iccid',
|
|
|
|
- 'serial_no')
|
|
|
|
- if not device_info_qs.exists():
|
|
|
|
|
|
+
|
|
|
|
+ unicom_device_info_qs = UnicomDeviceInfo.objects.filter(serial_no=serialNo, user_id=userId).values \
|
|
|
|
+ ('user_id', 'iccid', 'serial_no')
|
|
|
|
+ if not unicom_device_info_qs.exists():
|
|
return response.json(173)
|
|
return response.json(173)
|
|
n_time = int(time.time())
|
|
n_time = int(time.time())
|
|
- icc_id = device_info_qs[0]['iccid']
|
|
|
|
- user_id = device_info_qs[0]['user_id']
|
|
|
|
- serial_no = device_info_qs[0]['serial_no']
|
|
|
|
|
|
+ icc_id = unicom_device_info_qs[0]['iccid']
|
|
|
|
+ serial_no = unicom_device_info_qs[0]['serial_no']
|
|
order_id = CommonService.createOrderID()
|
|
order_id = CommonService.createOrderID()
|
|
unicom_combo = UnicomComboView.create_combo_order_info(order_id=order_id, activate_type=1, iccid=icc_id,
|
|
unicom_combo = UnicomComboView.create_combo_order_info(order_id=order_id, activate_type=1, iccid=icc_id,
|
|
combo_id=comboId)
|
|
combo_id=comboId)
|
|
if unicom_combo is False:
|
|
if unicom_combo is False:
|
|
- return '订单生成失败'
|
|
|
|
- # 获取套餐信息
|
|
|
|
- combo_info_qs = UnicomCombo.objects.filter(combo_type=2, status=0, is_del=False) \
|
|
|
|
- .values('id', 'combo_name', 'price', 'virtual_price', 'remark').order_by('sort')
|
|
|
|
- if not combo_info_qs.exists():
|
|
|
|
return False
|
|
return False
|
|
|
|
+ # 获取套餐信息
|
|
combo_info_vo = combo_info_qs[0]
|
|
combo_info_vo = combo_info_qs[0]
|
|
c_time = n_time
|
|
c_time = n_time
|
|
# 根据序列号获取UID
|
|
# 根据序列号获取UID
|
|
uid = CommonService.query_uid_with_serial(serial_no)
|
|
uid = CommonService.query_uid_with_serial(serial_no)
|
|
rank_id, ai_rank_id = UnicomComboView.get_cloud_or_ai_combo() # 生成订单必须添加该字段
|
|
rank_id, ai_rank_id = UnicomComboView.get_cloud_or_ai_combo() # 生成订单必须添加该字段
|
|
order_dict = {'orderID': order_id, 'UID': uid, 'rank_id': rank_id, 'ai_rank_id': ai_rank_id,
|
|
order_dict = {'orderID': order_id, 'UID': uid, 'rank_id': rank_id, 'ai_rank_id': ai_rank_id,
|
|
- 'userID_id': user_id, 'desc': combo_info_vo['combo_name'], 'payType': 10,
|
|
|
|
|
|
+ 'userID_id': userId, 'desc': combo_info_vo['combo_name'], 'payType': 10,
|
|
'payTime': c_time, 'price': combo_info_vo['price'], 'addTime': c_time,
|
|
'payTime': c_time, 'price': combo_info_vo['price'], 'addTime': c_time,
|
|
'updTime': c_time, 'status': 1,
|
|
'updTime': c_time, 'status': 1,
|
|
'unify_combo_id': str(combo_info_vo['id']), 'order_type': 2,
|
|
'unify_combo_id': str(combo_info_vo['id']), 'order_type': 2,
|