Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 9e224c7d
由
LN
编写于
2022-04-26 09:41:28 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
hik接口返回值修改
1 个父辈
fbed650f
隐藏空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
70 行增加
和
32 行删除
src/main/java/com/neotel/smfcore/core/inList/rest/InListController.java
src/main/java/com/neotel/smfcore/core/order/LiteOrderCache.java
src/main/java/com/neotel/smfcore/core/outList/rest/OutListController.java
src/main/java/com/neotel/smfcore/hikvision/HikApi.java
src/main/java/com/neotel/smfcore/hikvision/bean/result/ApiResult.java
src/main/java/com/neotel/smfcore/core/inList/rest/InListController.java
查看文件 @
9e224c7
...
...
@@ -28,6 +28,7 @@ import com.neotel.smfcore.core.storage.service.po.Storage;
import
com.neotel.smfcore.core.system.bean.OrderSetting
;
import
com.neotel.smfcore.hikvision.HikApi
;
import
com.neotel.smfcore.hikvision.bean.TransferOrderInfo
;
import
com.neotel.smfcore.hikvision.bean.result.ApiResult
;
import
com.neotel.smfcore.security.annotation.AnonymousAccess
;
import
com.neotel.smfcore.security.bean.FileProperties
;
import
io.swagger.annotations.Api
;
...
...
@@ -251,8 +252,11 @@ public class InListController {
InList
inList
=
inListCache
.
getInList
(
name
);
if
(
inList
==
null
)
{
//从接口获取入库单
List
<
TransferOrderInfo
>
inOrderLists
=
HikApi
.
transferOrderApi
(
SecurityUtils
.
getCurrentUsername
(),
name
,
type
.
toString
());
ApiResult
apiResult
=
HikApi
.
transferOrderApi
(
SecurityUtils
.
getCurrentUsername
(),
name
,
type
.
toString
());
if
(
ObjectUtil
.
isNotEmpty
(
apiResult
.
getMsg
()))
{
return
ResultBean
.
newErrorResult
(
1
,
"smfcore.apiError"
,
"错误码{0}:{1}"
,
new
String
[]{
apiResult
.
getCode
()
+
""
,
apiResult
.
getMsg
()});
}
List
<
TransferOrderInfo
>
inOrderLists
=
(
List
<
TransferOrderInfo
>)
apiResult
.
getData
();
if
(
inOrderLists
==
null
||
inOrderLists
.
size
()
<=
0
)
{
return
ResultBean
.
newErrorResult
(
1
,
"smfcore.inlist.notFound"
,
"未找到单据号[{0}]"
,
new
String
[]{
name
});
}
...
...
src/main/java/com/neotel/smfcore/core/order/LiteOrderCache.java
查看文件 @
9e224c7
...
...
@@ -26,6 +26,7 @@ import com.neotel.smfcore.core.system.service.po.DataLog;
import
com.neotel.smfcore.core.system.util.TaskService
;
import
com.neotel.smfcore.hikvision.HikApi
;
import
com.neotel.smfcore.hikvision.bean.HikOrderInfo
;
import
com.neotel.smfcore.hikvision.bean.result.ApiResult
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -273,26 +274,26 @@ public class LiteOrderCache implements ITaskListener {
}
//判断是工单号查询还是补料单号查询
List
<
Object
>
apiResults
=
null
;
ApiResult
apiResult
=
null
;
List
<
HikOrderInfo
>
newItems
=
null
;
if
(
ObjectUtil
.
isNotEmpty
(
liteOrder
.
getReplenishmentNo
()))
{
// 7.9补料单发料状态查询接口
apiResult
s
=
HikApi
.
updateRepOrderApi
(
userName
,
liteOrder
.
getReplenishmentNo
());
apiResult
=
HikApi
.
updateRepOrderApi
(
userName
,
liteOrder
.
getReplenishmentNo
());
}
else
{
// 7.7工单发料状态查询接口
apiResult
s
=
HikApi
.
updateOrderApi
(
userName
,
liteOrder
.
getOrderNo
());
apiResult
=
HikApi
.
updateOrderApi
(
userName
,
liteOrder
.
getOrderNo
());
}
if
(
apiResult
s
!=
null
&&
apiResults
.
size
()
==
2
)
{
int
code
=
Integer
.
parseInt
(
apiResults
.
get
(
0
).
toString
());
if
(
code
==
33
)
{
if
(
apiResult
!=
null
)
{
if
(
apiResult
.
getCode
()
==
33
)
{
liteOrder
.
setClosed
(
true
);
liteOrderManager
.
save
(
liteOrder
);
log
.
info
(
" API更新 工单【"
+
liteOrder
.
getOrderNo
()
+
"】已关闭,直接关闭不需要出库"
);
addOrderToMap
(
liteOrder
);
return
liteOrder
;
}
else
{
newItems
=
(
ArrayList
<
HikOrderInfo
>)
apiResult
s
.
get
(
1
);
newItems
=
(
ArrayList
<
HikOrderInfo
>)
apiResult
.
getData
(
);
}
}
if
(
newItems
!=
null
)
{
...
...
src/main/java/com/neotel/smfcore/core/outList/rest/OutListController.java
查看文件 @
9e224c7
...
...
@@ -19,6 +19,7 @@ import com.neotel.smfcore.core.outList.service.manager.IOutListManager;
import
com.neotel.smfcore.core.outList.util.OutListCache
;
import
com.neotel.smfcore.hikvision.HikApi
;
import
com.neotel.smfcore.hikvision.bean.ReservedOrderItem
;
import
com.neotel.smfcore.hikvision.bean.result.ApiResult
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.RequiredArgsConstructor
;
...
...
@@ -156,8 +157,11 @@ public class OutListController {
OutList
outList
=
outListCache
.
getOutList
(
name
);
if
(
outList
==
null
)
{
//从接口获取出库单
List
<
ReservedOrderItem
>
outOrderLists
=
HikApi
.
reservedOrderApi
(
SecurityUtils
.
getCurrentUsername
(),
name
,
type
);
ApiResult
apiResult
=
HikApi
.
reservedOrderApi
(
SecurityUtils
.
getCurrentUsername
(),
name
,
type
);
if
(
ObjectUtil
.
isNotEmpty
(
apiResult
.
getMsg
()))
{
return
ResultBean
.
newErrorResult
(
1
,
"smfcore.apiError"
,
"错误码{0}:{1}"
,
new
String
[]{
apiResult
.
getCode
()
+
""
,
apiResult
.
getMsg
()});
}
List
<
ReservedOrderItem
>
outOrderLists
=
null
;
if
(
outOrderLists
==
null
||
outOrderLists
.
size
()
<=
0
)
{
return
ResultBean
.
newErrorResult
(
1
,
"smfcore.inlist.notFound"
,
"未找到单据号[{0}]"
,
new
String
[]{
name
});
}
...
...
src/main/java/com/neotel/smfcore/hikvision/HikApi.java
查看文件 @
9e224c7
...
...
@@ -5,6 +5,7 @@ import com.neotel.smfcore.hikvision.bean.*;
import
com.neotel.smfcore.hikvision.bean.api.HikApiRequest
;
import
com.neotel.smfcore.hikvision.bean.api.RequestParam
;
import
com.neotel.smfcore.hikvision.bean.api.ResponseParam
;
import
com.neotel.smfcore.hikvision.bean.result.ApiResult
;
import
com.neotel.smfcore.hikvision.util.HttpHelper
;
import
com.neotel.smfcore.hikvision.util.JsonUtil
;
import
lombok.extern.slf4j.Slf4j
;
...
...
@@ -97,7 +98,8 @@ public class HikApi {
* baseCode String 16 基地编号
* dumpQty Integer 转出数量
*/
public
static
List
<
TransferOrderInfo
>
transferOrderApi
(
String
userName
,
String
docNo
,
String
docType
)
{
public
static
ApiResult
transferOrderApi
(
String
userName
,
String
docNo
,
String
docType
)
{
String
apiName
=
"Hik 转储单接口 (transferOrderApi): "
;
String
url
=
getUrl
(
config
.
addr_1_transferOrderApi
,
"transferOrderApi"
);
...
...
@@ -121,11 +123,15 @@ public class HikApi {
}
else
if
(
responseInfo
.
getCode
().
equals
(
CODE_PARAMERROR
)
||
responseInfo
.
getCode
().
equals
(
CODE_REPEAT
))
{
needResend
=
true
;
log
.
info
(
apiName
+
"返回code="
+
responseInfo
.
getCode
()
+
",需要重发,"
+
JsonUtil
.
toJsonStr
(
responseInfo
));
log
.
info
(
apiName
+
"返回code="
+
responseInfo
.
getCode
()
+
",message="
+
responseInfo
.
getMessage
()+
",需要重发,"
+
JsonUtil
.
toJsonStr
(
responseInfo
));
ApiResult
apiResult
=
new
ApiResult
(
responseInfo
.
getCode
(),
responseInfo
.
getMessage
(),
new
ArrayList
<>());
return
apiResult
;
}
else
{
log
.
info
(
apiName
+
"返回"
+
JsonUtil
.
toJsonStr
(
responseInfo
));
String
dataStr
=
responseInfo
.
getDataStr
();
List
<
TransferOrderInfo
>
list
=
JsonUtil
.
toList
(
dataStr
,
TransferOrderInfo
.
class
);
ApiResult
apiResult
=
new
ApiResult
(
0
,
""
,
list
);
return
apiResult
;
}
}
catch
(
Exception
e
)
{
log
.
error
(
apiName
+
" 出错"
,
e
);
...
...
@@ -432,14 +438,14 @@ public class HikApi {
* @param orderNo 工单号、合单号
* @return 保存下架过账信息 是否成功,true=成功
*/
public
static
List
<
Object
>
updateOrderApi
(
String
userName
,
String
orderNo
){
public
static
ApiResult
updateOrderApi
(
String
userName
,
String
orderNo
){
boolean
needResend
=
false
;
String
apiName
=
"Hik 工单发料状态查询接口 (updateOrderApi): "
;
String
url
=
getUrl
(
config
.
addr_7_updateOrderApi
,
"updateOrderApi"
);
// data String 16 是 工单号/合单号
RequestParam
info
=
new
RequestParam
(
getReqCode
(),
userName
,
orderNo
);
HikApiRequest
request
=
new
HikApiRequest
(
6
,
url
,
config
.
key_7_updateOrderApi
,
config
.
secret_7_updateOrderApi
,
info
,
new
Date
());
List
<
Object
>
resultList
=
new
ArrayList
<>();
//
List<Object> resultList=new ArrayList<>();
log
.
info
(
apiName
+
" 发送"
+
info
.
getData
());
try
{
ResponseParam
responseInfo
=
HttpHelper
.
post
(
request
);
...
...
@@ -456,17 +462,19 @@ public class HikApi {
// code Integer 结果码(33关闭)
//工单已关闭
log
.
info
(
apiName
+
"返回code="
+
responseInfo
.
getCode
()
+
",工单已关闭,无法出库"
);
resultList
.
add
(
33
);
resultList
.
add
(
new
ArrayList
<>());
return
resultList
;
return
new
ApiResult
(
33
,
"工单已关闭,无法出库"
,
new
ArrayList
<>());
// resultList.add(33);
// resultList.add(new ArrayList<>());
// return resultList;
}
else
{
log
.
info
(
apiName
+
"返回"
+
JsonUtil
.
toJsonStr
(
responseInfo
));
String
dataStr
=
responseInfo
.
getDataStr
();
List
<
HikOrderInfo
>
list
=
JsonUtil
.
toList
(
dataStr
,
HikOrderInfo
.
class
);
resultList
.
add
(
responseInfo
.
getCode
());
resultList
.
add
(
list
);
return
resultList
;
return
new
ApiResult
(
responseInfo
.
getCode
(),
responseInfo
.
getMessage
(),
new
ArrayList
<>());
// resultList.add(responseInfo.getCode());
// resultList.add(list);
// return resultList;
}
}
catch
(
Exception
e
)
{
...
...
@@ -541,10 +549,10 @@ public class HikApi {
* @param replenishmentNo 补料单号
* @return 返回备料列表
*/
public
static
List
<
Object
>
updateRepOrderApi
(
String
userName
,
String
replenishmentNo
){
public
static
ApiResult
updateRepOrderApi
(
String
userName
,
String
replenishmentNo
){
String
apiName
=
"Hik 补料单发料状态查询接口 (updateRepOrderApi): "
;
String
url
=
getUrl
(
config
.
addr_9_updateRepOrderApi
,
"updateRepOrderApi"
);
List
<
Object
>
resultList
=
new
ArrayList
<>();
//
List<Object> resultList=new ArrayList<>();
// data String 41 是 补料单号
RequestParam
info
=
new
RequestParam
(
getReqCode
(),
userName
,
replenishmentNo
);
HikApiRequest
request
=
new
HikApiRequest
(
9
,
url
,
config
.
key_9_updateRepOrderApi
,
config
.
secret_9_updateRepOrderApi
,
info
,
new
Date
());
...
...
@@ -564,16 +572,20 @@ public class HikApi {
// code Integer 结果码(33关闭)
//工单已关闭
log
.
info
(
apiName
+
"返回code="
+
responseInfo
.
getCode
()
+
",工单已关闭,无法出库"
);
resultList
.
add
(
33
);
resultList
.
add
(
new
ArrayList
<>());
return
resultList
;
ApiResult
apiResult
=
new
ApiResult
(
33
,
"工单已关闭,无法出库"
,
new
ArrayList
<>());
return
apiResult
;
// resultList.add(33);
// resultList.add(new ArrayList<>());
// return resultList;
}
else
{
log
.
info
(
apiName
+
"返回"
+
JsonUtil
.
toJsonStr
(
responseInfo
));
String
dataStr
=
responseInfo
.
getDataStr
();
List
<
HikOrderInfo
>
list
=
JsonUtil
.
toList
(
dataStr
,
HikOrderInfo
.
class
);
resultList
.
add
(
responseInfo
.
getCode
());
resultList
.
add
(
list
);
return
resultList
;
ApiResult
apiResult
=
new
ApiResult
(
responseInfo
.
getCode
(),
responseInfo
.
getMessage
(),
list
);
return
apiResult
;
// resultList.add(responseInfo.getCode());
// resultList.add(list);
// return resultList;
}
}
catch
(
Exception
e
)
{
...
...
@@ -593,7 +605,7 @@ public class HikApi {
* @param businessType 单据类型(0 线边仓间转储,1 )
* @return 返回预留单详情列表
*/
public
static
List
<
ReservedOrderItem
>
reservedOrderApi
(
String
userName
,
String
docNo
,
Integer
businessType
){
public
static
ApiResult
reservedOrderApi
(
String
userName
,
String
docNo
,
Integer
businessType
){
String
apiName
=
"Hik 预留单转储出库接口 (reservedOrderApi): "
;
String
url
=
getUrl
(
config
.
addr_10_reservedOrderApi
,
"reservedOrderApi"
);
// 接口名 预留单转储出库接口
...
...
@@ -618,11 +630,12 @@ public class HikApi {
}
else
if
(
responseInfo
.
getCode
().
equals
(
CODE_PARAMERROR
)
||
responseInfo
.
getCode
().
equals
(
CODE_REPEAT
))
{
needResend
=
true
;
log
.
info
(
apiName
+
"返回code="
+
responseInfo
.
getCode
()
+
",需要重发,"
+
JsonUtil
.
toJsonStr
(
responseInfo
));
return
new
ApiResult
(
responseInfo
.
getCode
(),
responseInfo
.
getMessage
(),
new
ArrayList
<>());
}
else
{
log
.
info
(
apiName
+
"返回"
+
JsonUtil
.
toJsonStr
(
responseInfo
));
String
dataStr
=
responseInfo
.
getDataStr
();
List
<
ReservedOrderItem
>
list
=
JsonUtil
.
toList
(
dataStr
,
ReservedOrderItem
.
class
);
return
list
;
List
<
ReservedOrderItem
>
list
=
JsonUtil
.
toList
(
dataStr
,
ReservedOrderItem
.
class
);
return
new
ApiResult
(
responseInfo
.
getCode
(),
responseInfo
.
getMessage
(),
list
)
;
}
}
catch
(
Exception
e
)
{
...
...
src/main/java/com/neotel/smfcore/hikvision/bean/result/ApiResult.java
0 → 100644
查看文件 @
9e224c7
package
com
.
neotel
.
smfcore
.
hikvision
.
bean
.
result
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
ApiResult
{
private
int
code
=-
1
;
private
String
msg
=
""
;
private
Object
data
=
""
;
}
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论