Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
H
hh_ccs
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
贺阳
hh_ccs
Commits
e7239c09
提交
e7239c09
authored
8月 27, 2025
作者:
贺阳
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
关于预警,不存在提单关务节点轨迹倒挂/轨迹漏推,则不需要显示相关内容,将倒叙修改为倒挂
上级
82dc502b
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
17 行增加
和
17 行删除
+17
-17
bl_patrol.py
ccs_connect_tiktok/models/bl_patrol.py
+16
-16
bl_patrol_views.xml
ccs_connect_tiktok/views/bl_patrol_views.xml
+1
-1
没有找到文件。
ccs_connect_tiktok/models/bl_patrol.py
浏览文件 @
e7239c09
...
...
@@ -73,8 +73,8 @@ class BlPatrol(models.Model):
执行巡查逻辑
定时巡查,每天1次,默认巡查时间为北京时间8点开始;
检查对象:提单日期为近x天(默认5天),清关中和完成的提单。
检查内容:符合要求的提单,提单关务节点同步日志是否出现倒
叙
(根据配置的清关节点排序,若后一个节点的操作时间,小于前序节点时间,则属于倒
叙
),
检查内容:符合要求的提单,提单关务节点同步日志是否出现倒
挂
(根据配置的清关节点排序,若后一个节点的操作时间,小于前序节点时间,则属于倒
挂
),
是否有漏推(若节点已产生同步日期,但前序节点无同步日期,则属于漏推。是当前节点的节点无需纳入判断);
"""
# 获取配置
...
...
@@ -135,7 +135,7 @@ class BlPatrol(models.Model):
"""
issues
=
[]
# 按问题类型分组统计
reverse_issues
=
{}
# 倒
叙
问题
reverse_issues
=
{}
# 倒
挂
问题
missing_issues
=
{}
# 漏推问题
# 获取该提单下所有小包的同步日志
ship_packages
=
bl
.
ship_package_ids
...
...
@@ -174,12 +174,12 @@ class BlPatrol(models.Model):
if
node
:
# 只处理小包节点
progress_name
=
node
.
name
or
"空"
process_code
=
node
.
tk_code
or
"空"
issue_key
=
f
"{progress_name}({process_code})倒
叙
"
issue_key
=
f
"{progress_name}({process_code})倒
挂
"
if
issue_key
not
in
reverse_issues
:
reverse_issues
[
issue_key
]
=
[]
reverse_issues
[
issue_key
]
.
append
(
package
.
logistic_order_no
)
except
Exception
as
e
:
_logger
.
warning
(
f
"构建小包倒
叙
问题描述失败: {str(e)}"
)
_logger
.
warning
(
f
"构建小包倒
挂
问题描述失败: {str(e)}"
)
# 如果无法确定节点类型,跳过
continue
...
...
@@ -207,7 +207,7 @@ class BlPatrol(models.Model):
missing_issues
[
issue_key
]
=
[]
missing_issues
[
issue_key
]
.
append
(
package
.
logistic_order_no
)
# 格式化倒
叙
问题
# 格式化倒
挂
问题
issue_counter
=
1
for
issue_type
,
packages
in
reverse_issues
.
items
():
package_list
=
self
.
_format_package_list
(
packages
)
...
...
@@ -301,7 +301,7 @@ class BlPatrol(models.Model):
for
node
in
bl_nodes
:
if
node
.
tk_code
in
logs_by_bl_process
.
keys
():
sync_logs
.
append
(
logs_by_bl_process
[
node
.
tk_code
])
# 检查倒
叙
问题
# 检查倒
挂
问题
if
len
(
sync_logs
)
>=
2
:
# 获取所有提单节点,按业务顺序排序
bl_nodes
=
self
.
env
[
'cc.node'
]
.
sudo
()
.
search
([(
'node_type'
,
'='
,
'bl'
)],
order
=
'seq'
)
...
...
@@ -328,11 +328,11 @@ class BlPatrol(models.Model):
progress_name
=
current_log
.
progress_name
or
"空"
process_code
=
current_log
.
process_code
or
"空"
issues
.
append
(
f
"{bl.bl_no},出现{progress_name}({process_code})倒
叙
"
f
"{bl.bl_no},出现{progress_name}({process_code})倒
挂
"
)
except
Exception
as
e
:
_logger
.
warning
(
f
"构建倒序问题描述失败: {str(e)}"
)
issues
.
append
(
f
"{bl.bl_no},出现节点倒
叙
"
)
issues
.
append
(
f
"{bl.bl_no},出现节点倒
挂
"
)
# 检查漏推问题
missing_issues
=
self
.
_check_bl_missing_nodes
(
bl
,
sync_logs
)
...
...
@@ -397,18 +397,18 @@ class BlPatrol(models.Model):
subject
=
f
"(重要)推送预警/{fields.Date.today()}系统巡查轨迹"
# 构建邮件内容
package_content
=
result
[
'package_issues'
]
if
result
[
'package_issues'
]
else
"
无
"
bl_content
=
result
[
'bl_issues'
]
if
result
[
'bl_issues'
]
else
"
无
"
package_content
=
result
[
'package_issues'
]
if
result
[
'package_issues'
]
else
""
bl_content
=
result
[
'bl_issues'
]
if
result
[
'bl_issues'
]
else
""
content
=
f
"""您好,经系统巡查。
发现以下提单存在小包轨迹倒叙/轨迹漏推
{package_content}
%
s
%
s
发现以下提单存在提单关务节点轨迹倒叙/轨迹漏推
{bl_content}
%
s
%
s
请立即处理!!!"""
请立即处理!!!"""
%
(
"发现以下提单存在小包轨迹倒挂/轨迹漏推"
if
package_content
else
""
,
package_content
if
package_content
else
""
,
"发现以下提单存在提单关务节点轨迹倒挂/轨迹漏推"
if
bl_content
else
""
,
bl_content
if
bl_content
else
""
)
# 发送邮件
self
.
env
[
'mail.mail'
]
.
sudo
()
.
create
({
...
...
ccs_connect_tiktok/views/bl_patrol_views.xml
浏览文件 @
e7239c09
...
...
@@ -92,7 +92,7 @@
创建第一个巡查记录
</p>
<p>
系统将自动巡查提单的轨迹问题,包括小包轨迹倒
叙和提单关务节点倒叙
。
系统将自动巡查提单的轨迹问题,包括小包轨迹倒
挂和提单关务节点倒挂
。
</p>
</field>
</record>
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论