提交 b6cf9cb8 authored 作者: 伍姿英's avatar 伍姿英

Merge branch 'release/3.8.1'

......@@ -28,7 +28,7 @@
<!-- 清理向导生成的临时附件-->
<record id="cron_cleanup_temp_attachments" model="ir.cron">
<field name="name">清理向导临时附件</field>
<field name="model_id" ref="model_batch_get_pod_info_wizard"/>
<field name="model_id" ref="model_common_common"/>
<field name="state">code</field>
<field name="code">model.cron_cleanup_temp_attachments()</field>
<field name='interval_number'>1</field>
......
......@@ -426,9 +426,9 @@
</field>
</record>
<!-- 获取尾程快递POD -->
<record id="bl_get_delivery_pod_info_server_action" model="ir.actions.server">
<field name="name">Batch Get Last Mile POD Info</field>
<!-- 下载货站提货POD-->
<record id="bl_download_pod_server_action" model="ir.actions.server">
<field name="name">Batch Download PickUp POD</field>
<field name="model_id" ref="model_cc_bl"/>
<field name="binding_model_id" ref="model_cc_bl"/>
<field name="state">code</field>
......@@ -436,13 +436,13 @@
<field name="groups_id" eval="[(4, ref('ccs_base.group_clearance_of_customs_user'))]"/>
<field name="code">
if records:
action = records.action_batch_get_last_mile_pod_info()
action = records.action_batch_download_pod('货站提货POD')
</field>
</record>
<!-- 下载货站提货POD-->
<record id="bl_download_pod_server_action" model="ir.actions.server">
<field name="name">Batch Download PickUp POD</field>
<!-- 获取尾程快递POD -->
<record id="bl_get_delivery_pod_info_server_action" model="ir.actions.server">
<field name="name">Batch Get Last Mile POD Info</field>
<field name="model_id" ref="model_cc_bl"/>
<field name="binding_model_id" ref="model_cc_bl"/>
<field name="state">code</field>
......@@ -450,7 +450,7 @@
<field name="groups_id" eval="[(4, ref('ccs_base.group_clearance_of_customs_user'))]"/>
<field name="code">
if records:
action = records.action_batch_download_pod('货站提货POD')
action = records.action_batch_get_last_mile_pod_info()
</field>
</record>
......
......@@ -31,8 +31,11 @@ class Order_dispose(object):
try:
data = json.loads(data)
logging.info('mail_push_data: %s', data)
action_type = data.get('action_type')
if action_type == 'sync_last_mile_pod':
self._sync_last_mile_pod_from_queue(data)
return res_data
ship_packages = eval(data['ship_packages']) if data.get('ship_packages') else [] # 小包
action_type = data.get('action_type') # 类型
utc_time = data.get('utc_time')
bl_obj = self.odoo_db.env['cc.bl']
if action_type and not utc_time:
......@@ -52,6 +55,33 @@ class Order_dispose(object):
logging.error('mail_auto_push error:%s' % str(ex))
return res_data
def _sync_last_mile_pod_from_queue(self, data):
bl_ids = data.get('ids') or []
if not bl_ids:
return
try:
bl_model = self.odoo_db.env['cc.bl']
clearance_model = self.odoo_db.env['cc.clearance.file']
bl_records = bl_model.browse(bl_ids)
non_temu_ids = [bl.id for bl in bl_records if getattr(bl, 'bl_type', False) != 'temu']
if not non_temu_ids:
return
clearance_ids = clearance_model.search([
('bl_id', 'in', non_temu_ids),
('file_name', '=', data.get('file_type')),
])
logging.info("已查询到需要同步的清关文件记录: %s", clearance_ids)
if not clearance_ids:
return
clearance_records = clearance_model.browse(clearance_ids)
for clearance_file in clearance_records:
try:
clearance_file.action_sync()
except Exception as ex:
logging.error('sync_last_mile_pod action_sync error:%s' % str(ex))
except Exception as ex:
logging.error('sync_last_mile_pod_from_queue error:%s' % str(ex))
try:
pool = redis.ConnectionPool(**config.redis_options)
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论