Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
H
hh_ccs
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
贺阳
hh_ccs
Commits
9ba5f382
提交
9ba5f382
authored
9月 11, 2024
作者:
贺阳
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
接口传语言 根据语言返回错误信息
上级
543edc4a
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
79 行增加
和
22 行删除
+79
-22
order_controller.py
ccs_connect_tiktok/controllers/order_controller.py
+58
-12
cc_bill_loading.py
ccs_connect_tiktok/models/cc_bill_loading.py
+21
-10
没有找到文件。
ccs_connect_tiktok/controllers/order_controller.py
浏览文件 @
9ba5f382
...
...
@@ -2,7 +2,7 @@
import
math
import
re
from
odoo
import
http
,
fields
,
exceptions
,
_
from
odoo
import
http
,
fields
,
exceptions
,
_
from
odoo.http
import
request
import
logging
import
json
...
...
@@ -10,6 +10,15 @@ import random
_logger
=
logging
.
getLogger
(
__name__
)
bill_noexist_msg_dic
=
{
'en'
:
'Bill of lading does not exist'
,
'zh'
:
'提单不存在'
}
bill_null_msg_dic
=
{
'en'
:
'The bill of lading number cannot be empty'
,
'zh'
:
'提单号不能为空'
}
class
OrderController
(
http
.
Controller
):
"""
...
...
@@ -24,6 +33,18 @@ class OrderController(http.Controller):
res
=
{
'state'
:
201
,
'message'
:
''
}
kwargs
=
json
.
loads
(
request
.
httprequest
.
data
)
logging
.
info
(
'api_cc_login kwargs:
%
s'
%
kwargs
)
# system_user = request.env['res.users'].sudo().search(
# [('login', '=', 'Odoobat'), '|', ('active', '=', False), ('active', '=', True)])
pda_lang
=
kwargs
.
get
(
'pda_lang'
)
or
'zh'
error_msg_dic
=
{
'en'
:
'Login name and password cannot be empty'
,
'zh'
:
'登录名、密码不能为空'
}
exceptions_msg_dic
=
{
'en'
:
'Wrong login/password'
,
'zh'
:
'错误的登录名或密码'
}
# system_user = system_user.with_context(lang=lang)
try
:
if
kwargs
.
get
(
'login'
)
and
kwargs
.
get
(
'password'
):
uid
=
request
.
session
.
authenticate
(
request
.
session
.
db
,
kwargs
[
'login'
],
kwargs
[
'password'
])
...
...
@@ -35,11 +56,11 @@ class OrderController(http.Controller):
res
[
'state'
]
=
200
else
:
res
[
'state'
]
=
202
res
[
'message'
]
=
_
(
'Login name and password cannot be empty'
)
# 登录名、密码不能为空
res
[
'message'
]
=
error_msg_dic
[
pda_lang
]
#
_('Login name and password cannot be empty') # 登录名、密码不能为空
except
exceptions
.
AccessDenied
as
e
:
if
e
.
args
==
exceptions
.
AccessDenied
()
.
args
:
res
[
'message'
]
=
_
(
"Wrong login/password"
)
# 错误的登录名或密码
res
[
'message'
]
=
exceptions_msg_dic
[
pda_lang
]
#
_("Wrong login/password") # 错误的登录名或密码
else
:
res
[
'message'
]
=
e
.
args
[
0
]
logging
.
info
(
'api_cc_login error:
%
s'
%
res
)
...
...
@@ -53,24 +74,32 @@ class OrderController(http.Controller):
:return:
"""
kwargs
=
json
.
loads
(
request
.
httprequest
.
data
)
pda_lang
=
kwargs
.
get
(
'pda_lang'
)
or
'zh'
res
=
{
'state'
:
201
,
'message'
:
''
}
try
:
logging
.
info
(
'bl_info kwargs:
%
s'
%
kwargs
)
if
kwargs
.
get
(
'bl_no'
):
bl_no
=
kwargs
[
'bl_no'
]
bl_obj
=
request
.
env
[
'cc.bl'
]
.
sudo
()
.
search
([(
'bl_no'
,
'='
,
bl_no
)])
# 提单
if
bl_obj
:
res
[
'bl_info'
]
=
bl_obj
.
search_bl_info
()
res
[
'bl_info'
]
=
bl_obj
.
search_bl_info
(
pda_lang
=
pda_lang
)
res
[
'state'
]
=
200
else
:
res
[
'state'
]
=
404
res
[
'message'
]
=
_
(
'Bill of lading does not exist'
)
# 提单不存在
res
[
'message'
]
=
bill_noexist_msg_dic
[
pda_lang
]
#
_('Bill of lading does not exist') # 提单不存在
else
:
res
[
'state'
]
=
202
res
[
'message'
]
=
_
(
'The bill of lading number cannot be empty'
)
# 提单号不能为空
res
[
'message'
]
=
bill_null_msg_dic
[
pda_lang
]
# _('The bill of lading number cannot be empty') # 提单号不能为空
except
Exception
as
e
:
exceptions_msg_dic
=
{
'en'
:
'System parsing error, the reason for the error is
%
s'
%
e
,
'zh'
:
'系统解析错误,错误原因是
%
s'
%
e
}
logging
.
info
(
'bl_info error:
%
s'
%
e
)
res
[
'message'
]
=
_
(
'System parsing error, the reason for the error is
%
s'
,
e
)
# 系统解析错误,错误原因是
res
[
'message'
]
=
exceptions_msg_dic
[
pda_lang
]
# _('System parsing error, the reason for the error is %s', e) # 系统解析错误,错误原因是
logging
.
info
(
'res:
%
s'
%
res
)
return
res
...
...
@@ -82,6 +111,7 @@ class OrderController(http.Controller):
:return:
"""
kwargs
=
json
.
loads
(
request
.
httprequest
.
data
)
pda_lang
=
kwargs
.
get
(
'pda_lang'
)
or
'zh'
res
=
{
'state'
:
201
,
'message'
:
''
}
try
:
logging
.
info
(
'update_big_package_tally_detail kw:
%
s'
%
kwargs
)
...
...
@@ -113,18 +143,34 @@ class OrderController(http.Controller):
else
:
error_no_arr
.
append
(
big_package_no
)
if
len
(
error_no_arr
)
>
0
:
res
[
'message'
]
=
_
(
'Big package number [
%
s] does not exist'
,
','
.
join
(
list
(
set
(
error_no_arr
))))
# 大包号[%s]不存在
error_no_str
=
','
.
join
(
list
(
set
(
error_no_arr
)))
noexist_msg_dic
=
{
'en'
:
'Big package number [
%
s] does not exist'
%
error_no_str
,
'zh'
:
'大包号[
%
s]不存在'
%
error_no_str
}
res
[
'message'
]
=
noexist_msg_dic
[
pda_lang
]
# _('Big package number [%s] does not exist',','.join(list(set(error_no_arr)))) # 大包号[%s]不存在
else
:
res
[
'state'
]
=
200
# if len(tally_no_arr) > 0:
# res['message'] = '大包号[%s]已理货,无需重新理货!' % ','.join(list(set(tally_no_arr)))
else
:
res
[
'message'
]
=
_
(
'Bill of lading does not exist'
)
# 提单不存在
res
[
'message'
]
=
bill_noexist_msg_dic
[
pda_lang
]
# 提单不存在
else
:
res
[
'message'
]
=
_
(
'The bill of lading number and package data cannot be empty'
)
# 提单号和大包数据不能为空
null_msg_dic
=
{
'en'
:
'The bill of lading number and package data cannot be empty'
,
'zh'
:
'提单号和大包数据不能为空'
}
res
[
'message'
]
=
null_msg_dic
[
pda_lang
]
# _('The bill of lading number and package data cannot be empty') # 提单号和大包数据不能为空
except
Exception
as
e
:
logging
.
info
(
'update_big_package_tally_detail error:
%
s'
%
e
)
res
[
'message'
]
=
_
(
'System parsing error, the reason for the error is
%
s'
,
e
)
# 系统解析错误,错误原因是
exceptions_msg_dic
=
{
'en'
:
'System parsing error, the reason for the error is
%
s'
%
e
,
'zh'
:
'系统解析错误,错误原因是
%
s'
%
e
}
res
[
'message'
]
=
exceptions_msg_dic
[
pda_lang
]
# _('System parsing error, the reason for the error is %s', e) # 系统解析错误,错误原因是
logging
.
info
(
'res:
%
s'
%
res
)
return
res
ccs_connect_tiktok/models/cc_bill_loading.py
浏览文件 @
9ba5f382
...
...
@@ -5,7 +5,7 @@ from datetime import datetime
from
lxml
import
etree
import
pytz
from
odoo
import
models
,
fields
,
api
,
tools
from
odoo
import
models
,
fields
,
api
,
tools
,
_
from
odoo.exceptions
import
ValidationError
,
Warning
...
...
@@ -67,7 +67,8 @@ class CcClearanceFile(models.Model):
error_msg
=
response_data
[
'msg'
]
request_id
=
response_data
[
'requestID'
]
code
=
response_data
[
'code'
]
self
.
env
[
'ao.tt.api.log'
]
.
sudo
()
.
create_api_log
(
self
.
file_name
or
''
,
'清关文件回传:'
+
error_msg
,
''
,
code
,
self
.
env
[
'ao.tt.api.log'
]
.
sudo
()
.
create_api_log
(
self
.
file_name
or
''
,
'清关文件回传:'
+
error_msg
,
''
,
code
,
request_id
,
source
=
'推出'
)
return
error_msg
else
:
...
...
@@ -178,7 +179,8 @@ class CcShipPackage(models.Model):
error_msg
=
response_data
[
'msg'
]
request_id
=
response_data
[
'requestID'
]
code
=
response_data
[
'code'
]
self
.
env
[
'ao.tt.api.log'
]
.
sudo
()
.
create_api_log
(
self
.
tracking_no
or
''
,
'小包状态轨迹回传:'
+
error_msg
,
''
,
self
.
env
[
'ao.tt.api.log'
]
.
sudo
()
.
create_api_log
(
self
.
tracking_no
or
''
,
'小包状态轨迹回传:'
+
error_msg
,
''
,
code
,
request_id
,
source
=
'推出'
)
return
error_msg
...
...
@@ -239,7 +241,7 @@ class CcBl(models.Model):
'domain'
:
[(
'bl_id'
,
'='
,
self
.
id
),
(
'is_sync'
,
'='
,
False
)],
}
def
search_bl_info
(
self
):
def
search_bl_info
(
self
,
pda_lang
=
False
):
"""
查询提单信息
"""
...
...
@@ -247,7 +249,7 @@ class CcBl(models.Model):
'bl_no'
:
self
.
bl_no
or
''
,
# 提单号
'scan_big_package_qty'
:
self
.
tally_big_package_qty
,
# 已扫大包数量
'big_package_arr'
:
[
big_package_item
.
search_big_package_info
()
for
big_package_item
in
'big_package_arr'
:
[
big_package_item
.
search_big_package_info
(
pda_lang
=
pda_lang
)
for
big_package_item
in
self
.
big_package_ids
],
# 大包信息
}
...
...
@@ -260,13 +262,23 @@ class CcBigPackage(models.Model):
# 模型描述
_description
=
'Big Package'
def
search_big_package_info
(
self
):
def
search_big_package_info
(
self
,
pda_lang
=
False
):
"""
查询大包信息
"""
state_arr
=
{
'unprocessed_goods'
:
'未理货'
,
'checked_goods'
:
'已理货'
}
unprocessed_goods_msg_dic
=
{
'en'
:
'Unprocessed goods'
,
'zh'
:
'未理货'
}
checked_goods_msg_dic
=
{
'en'
:
'Checked goods'
,
'zh'
:
'已理货'
}
state_arr
=
{
'unprocessed_goods'
:
unprocessed_goods_msg_dic
[
pda_lang
],
'checked_goods'
:
checked_goods_msg_dic
[
pda_lang
]}
# 未理货/已理货
vals
=
{
'tally_state'
:
state_arr
[
self
.
tally_state
]
or
''
,
# 理货状态
'tally_state_label'
:
state_arr
[
self
.
tally_state
]
or
''
,
# 理货状态显示名称
'tally_state'
:
self
.
tally_state
or
''
,
# 理货状态系统KEY
'tally_user_id'
:
self
.
tally_user_id
.
id
or
0
,
# 理货人id
'tally_user_name'
:
self
.
tally_user_id
.
name
or
''
,
# 理货人名称
'tally_time'
:
self
.
tally_time
or
''
,
...
...
@@ -282,8 +294,7 @@ class CcBigPackage(models.Model):
"""
if
self
.
tally_state
==
'unprocessed_goods'
:
if
kwargs
.
get
(
'tally_state'
):
state_arr
=
{
'未理货'
:
'unprocessed_goods'
,
'已理货'
:
'checked_goods'
}
self
.
tally_state
=
state_arr
[
kwargs
[
'tally_state'
]]
self
.
tally_state
=
kwargs
[
'tally_state'
]
if
kwargs
.
get
(
'tally_user_id'
):
self
.
tally_user_id
=
kwargs
[
'tally_user_id'
]
if
kwargs
.
get
(
'tally_time'
):
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论