Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
H
hh_ccs
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
贺阳
hh_ccs
Commits
cde63e51
提交
cde63e51
authored
9月 11, 2025
作者:
贺阳
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
1、按托盘理货和交货的接口
上级
24b04c21
全部展开
显示空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
14 行增加
和
11 行删除
+14
-11
order_controller.py
ccs_connect_tiktok/controllers/order_controller.py
+0
-0
cc_pallet.py
ccs_connect_tiktok/models/cc_pallet.py
+4
-3
cc_pallet.py
ccs_pallet/models/cc_pallet.py
+10
-8
没有找到文件。
ccs_connect_tiktok/controllers/order_controller.py
浏览文件 @
cde63e51
差异被折叠。
点击展开。
ccs_connect_tiktok/models/cc_pallet.py
浏览文件 @
cde63e51
...
@@ -24,10 +24,10 @@ class CcPallet(models.Model):
...
@@ -24,10 +24,10 @@ class CcPallet(models.Model):
'express_company_name'
:
self
.
express_company_id
.
name
,
#快递公司名称
'express_company_name'
:
self
.
express_company_id
.
name
,
#快递公司名称
'usage_state'
:
self
.
usage_state
,
#使用状态 unused未使用 used已使用
'usage_state'
:
self
.
usage_state
,
#使用状态 unused未使用 used已使用
'print_state'
:
self
.
print_state
,
#打印状态 unprinted未打印 printed已打印
'print_state'
:
self
.
print_state
,
#打印状态 unprinted未打印 printed已打印
'sorting_time'
:
s
elf
.
sorting_time
,
#托盘理货时间
'sorting_time'
:
s
tr
(
self
.
sorting_time
)
if
self
.
sorting_time
else
''
,
#托盘理货时间
'delivery_time'
:
s
elf
.
delivery_time
,
#托盘交货时间
'delivery_time'
:
s
tr
(
self
.
delivery_time
)
if
self
.
delivery_time
else
''
,
#托盘交货时间
'package_count'
:
self
.
package_count
,
#大包数量
'package_count'
:
self
.
package_count
,
#大包数量
'partner_id'
:
self
.
partner_id
.
id
,
#使用客户id
'partner_id'
:
self
.
partner_id
.
id
,
#使用客户id
'partner_name'
:
self
.
partner_id
.
name
,
#使用客户名称
'partner_name'
:
self
.
partner_id
.
name
,
#使用客户名称
'delivery_plate_number'
:
self
.
delivery_plate_number
,
#托盘交付车牌号
'delivery_plate_number'
:
self
.
delivery_plate_number
or
''
,
#托盘交付车牌号
}
}
\ No newline at end of file
ccs_pallet/models/cc_pallet.py
浏览文件 @
cde63e51
...
@@ -9,6 +9,7 @@ from odoo import models, fields, api, _
...
@@ -9,6 +9,7 @@ from odoo import models, fields, api, _
_logger
=
logging
.
getLogger
(
__name__
)
_logger
=
logging
.
getLogger
(
__name__
)
from
odoo.exceptions
import
ValidationError
from
odoo.exceptions
import
ValidationError
class
CcPallet
(
models
.
Model
):
class
CcPallet
(
models
.
Model
):
# 模型名称
# 模型名称
_name
=
'cc.pallet'
_name
=
'cc.pallet'
...
@@ -73,7 +74,7 @@ class CcPallet(models.Model):
...
@@ -73,7 +74,7 @@ class CcPallet(models.Model):
pallet
.
delivery_time
=
False
pallet
.
delivery_time
=
False
# 托盘号(年月+4位数,不能重复生成)
# 托盘号(年月+4位数,不能重复生成)
name
=
fields
.
Char
(
string
=
_
(
'Pallet Number'
),
copy
=
False
,
help
=
_
(
'Pallet number format: YYYYMM + 4 digits'
))
name
=
fields
.
Char
(
string
=
_
(
'Pallet Number'
),
copy
=
False
,
help
=
_
(
'Pallet number format: YYYYMM + 4 digits'
))
# 托盘归属快递
# 托盘归属快递
express_company_id
=
fields
.
Many2one
(
'cc.last.mile.provider'
,
string
=
_
(
'Express Company'
),
index
=
True
)
express_company_id
=
fields
.
Many2one
(
'cc.last.mile.provider'
,
string
=
_
(
'Express Company'
),
index
=
True
)
# 使用状态
# 使用状态
...
@@ -103,11 +104,15 @@ class CcPallet(models.Model):
...
@@ -103,11 +104,15 @@ class CcPallet(models.Model):
# 托盘交付车牌号
# 托盘交付车牌号
delivery_plate_number
=
fields
.
Char
(
string
=
_
(
'Delivery Plate Number'
))
delivery_plate_number
=
fields
.
Char
(
string
=
_
(
'Delivery Plate Number'
))
def
update_pallet_info
(
self
,
**
kwargs
):
"""更新托盘信息"""
if
kwargs
.
get
(
'delivery_plate_number'
,
''
):
self
.
delivery_plate_number
=
kwargs
[
'delivery_plate_number'
]
# 当大包关联到托盘时,自动更新使用状态
# 当大包关联到托盘时,自动更新使用状态
def
update_usage_state
(
self
,
success_package
,
usage_date
):
def
update_usage_state
(
self
,
success_package
,
usage_date
):
"""更新托盘使用状态"""
"""更新托盘使用状态"""
for
pallet
in
self
:
for
pallet
in
self
:
if
pallet
.
package_ids
:
pallet
.
usage_state
=
'used'
pallet
.
usage_state
=
'used'
# 关联大包到托盘
# 关联大包到托盘
pallet
.
package_ids
=
[(
4
,
package_id
.
id
,
0
)
for
package_id
in
success_package
]
pallet
.
package_ids
=
[(
4
,
package_id
.
id
,
0
)
for
package_id
in
success_package
]
...
@@ -121,13 +126,13 @@ class CcPallet(models.Model):
...
@@ -121,13 +126,13 @@ class CcPallet(models.Model):
related_packages
=
package
.
bl_id
.
big_package_ids
.
filtered
(
related_packages
=
package
.
bl_id
.
big_package_ids
.
filtered
(
lambda
p
:
p
.
pallet_number
==
new_pallet_number
)
# 查找对应提单下相同托盘号的所有大包
lambda
p
:
p
.
pallet_number
==
new_pallet_number
)
# 查找对应提单下相同托盘号的所有大包
warning_package_arr
=
[
related_package
.
big_package_no
for
related_package
in
related_packages
if
warning_package_arr
=
[
related_package
.
big_package_no
for
related_package
in
related_packages
if
related_package
.
pallet_usage_date
!=
usage_date
]
str
(
related_package
.
pallet_usage_date
)
!=
usage_date
]
if
warning_package_arr
:
if
warning_package_arr
:
raise
ValidationError
(
raise
ValidationError
(
_
(
'Big Package No :
%
s ,The same bill of lading, same pallet number, and usage date must be consistent!'
)
%
(
_
(
'Big Package No :
%
s ,The same bill of lading, same pallet number, and usage date must be consistent!'
)
%
(
'
\n
'
.
join
(
warning_package_arr
)))
# 大包号关联的同一提单,同一托盘号,使用日期必须一致
'
\n
'
.
join
(
warning_package_arr
)))
# 大包号关联的同一提单,同一托盘号,使用日期必须一致
# 更新大包的托盘信息
# 更新大包的托盘信息
package
.
update_pallet_info
(
new_pallet_number
,
usage_date
,
pallet
.
id
)
package
.
update_pallet_info
(
new_pallet_number
,
usage_date
,
pallet
.
id
)
if
old_pallet_number
:
if
old_pallet_number
:
# %s %s更改了托盘号,由%s变更为%s,托盘使用日期%s变更为%s
# %s %s更改了托盘号,由%s变更为%s,托盘使用日期%s变更为%s
...
@@ -145,9 +150,6 @@ class CcPallet(models.Model):
...
@@ -145,9 +150,6 @@ class CcPallet(models.Model):
body
=
_
(
'
%
s at
%
s associated
%
d packages to pallet
%
s'
)
%
(
body
=
_
(
'
%
s at
%
s associated
%
d packages to pallet
%
s'
)
%
(
self
.
env
.
user
.
name
,
fields
.
Datetime
.
now
(),
len
(
success_package
),
pallet
.
name
)
self
.
env
.
user
.
name
,
fields
.
Datetime
.
now
(),
len
(
success_package
),
pallet
.
name
)
pallet
.
message_post
(
body
=
body
)
pallet
.
message_post
(
body
=
body
)
else
:
pallet
.
usage_state
=
'unused'
def
action_print_labels
(
self
):
def
action_print_labels
(
self
):
"""打印标签动作"""
"""打印标签动作"""
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论