提交 ac040816 authored 作者: 贺阳's avatar 贺阳

增加修改尾程快递的大包理货信息的接口

上级 2ffcf83d
# -*- coding: utf-8 -*-
import asyncio
import json
import logging
import ssl
from datetime import timedelta, datetime
import json
import aiohttp
import certifi
import pytz
......@@ -606,19 +607,22 @@ class CcBl(models.Model):
# package_order = self.env['cc.ship.package'].sudo().browse(package_id)
if response_data['code'] != 0:
# package_order.is_sync = False
update_false_arr.append(package_id) # 更新 is_sync为 False
update_false_arr.append(package_id) # 更新 is_sync为 False
error_msg = response_data['msg']
request_id = response_data['requestID']
create_api_log_value_arr.append((tracking_no, utc_time, '小包状态轨迹回传:' + error_msg, False, data_text, request_id, '推出', utc_time))
create_api_log_value_arr.append((tracking_no, utc_time, '小包状态轨迹回传:' + error_msg, False,
data_text, request_id, '推出', utc_time))
is_ok = False
else:
# 回传成功
update_true_arr.append(package_id) # 更新 is_sync为 True
state_arr = package_node_result_dict.get(state, [])
tk_code = state_arr[1] if state_arr else ''
create_sync_log_value_arr.append((package_id, utc_time, 'Tiktok', tk_code, process_time, state_explain, user_id))
create_sync_log_value_arr.append(
(package_id, utc_time, 'Tiktok', tk_code, process_time, state_explain, user_id))
request_id = response_data['requestID']
create_api_log_value_arr.append((tracking_no, utc_time, '', True, data_text, request_id, '推出', utc_time))
create_api_log_value_arr.append(
(tracking_no, utc_time, '', True, data_text, request_id, '推出', utc_time))
if update_false_arr:
update_false_ids = '(%s)' % str(update_false_arr)[1:-1]
sql = "update cc_ship_package set is_sync=False where id in %s" % update_false_ids
......@@ -831,10 +835,10 @@ class CcBl(models.Model):
item.push_clear_customs_start(before_utc_time)
user_obj = self.env['res.users'].search([('login', '=', mail_db_user)], limit=1)
# 尝试调用 callback_track
if self.try_callback_track(user_obj=user_obj):
if item.try_callback_track(user_obj=user_obj):
item.push_clear_customs_end(utc_time)
# 再次尝试调用 callback_track
if not self.try_callback_track(user_obj=user_obj):
if not item.try_callback_track(user_obj=user_obj):
logging.error(f"Failed to push item after {3} attempts.")
else:
logging.error(f"Failed to start process for item after {3} attempts.")
......@@ -914,7 +918,7 @@ class CcBl(models.Model):
self.env.cr.execute(sql)
self._cr.commit() # 提交事务
self.try_callback_track(max_retries=2, ship_package_ids=ship_package_ids,
item.try_callback_track(max_retries=2, ship_package_ids=ship_package_ids,
user_obj=user_obj)
# 理货或尾程交接的节点
# 预先获取所有状态节点
......@@ -960,7 +964,7 @@ class CcBl(models.Model):
self.env.cr.execute(sql)
self._cr.commit() # 提交事务
self.try_callback_track(max_retries=2, ship_package_ids=ship_package_ids,
item.try_callback_track(max_retries=2, ship_package_ids=ship_package_ids,
user_obj=user_obj)
return True
......
......@@ -37,7 +37,11 @@ class Order_dispose(object):
bl_obj = self.odoo_db.env['cc.bl']
if action_type and not utc_time:
bl_obj = self.pda_odoo_db.env['cc.bl']
bl_record = bl_obj.browse(data['id'])
bl_ids = data.get('ids')
if bl_ids:
bl_record = bl_obj.browse(bl_ids)
else:
bl_record = bl_obj.browse(data['id'])
# utc_time = datetime.strptime(data['utc_time'], "%Y-%m-%d %H:%M:%S")
utc_time = data.get('utc_time')
user_login = data.get('user_login')
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论