Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 73db798d
由
LN
编写于
2025-04-16 11:35:29 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
SP1560锡膏MES回温出入冰箱接口
1 个父辈
498d1aaf
显示空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
114 行增加
和
0 行删除
src/main/java/com/neotel/smfcore/custom/haierIndiaSp1560/HaierIndiaSpApi.java
src/main/java/com/neotel/smfcore/custom/haierIndiaSp1560/HaierIndiaSpApi.java
0 → 100644
查看文件 @
73db798
package
com
.
neotel
.
smfcore
.
custom
.
haierIndiaSp1560
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.neotel.smfcore.common.exception.ApiException
;
import
com.neotel.smfcore.common.utils.DateUtil
;
import
com.neotel.smfcore.common.utils.HttpHelper
;
import
com.neotel.smfcore.common.utils.JsonUtil
;
import
com.neotel.smfcore.core.api.listener.BaseSmfApiListener
;
import
com.neotel.smfcore.core.barcode.service.po.Barcode
;
import
com.neotel.smfcore.core.storage.service.manager.IStoragePosManager
;
import
com.neotel.smfcore.core.storage.service.po.StoragePos
;
import
com.neotel.smfcore.core.system.service.po.DataLog
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.HashMap
;
import
java.util.Map
;
@Service
@Slf4j
public
class
HaierIndiaSpApi
extends
BaseSmfApiListener
{
// api:
// name: sp1560
// outNotifyUrl: http://xxxxxxxx/interface/fridge
// inNotifyUrl: http://xxxxxxxx/interface/fridge
// taskNotifyUrl: http://xxxxxxxx/interface/fridge
@Autowired
private
IStoragePosManager
storagePosManager
;
@Override
public
boolean
isForThisApi
(
String
apiName
)
{
return
apiName
!=
null
&&
apiName
.
equalsIgnoreCase
(
"sp1560"
);
}
@Override
public
void
inTaskStatusChange
(
String
inNotifyUrl
,
DataLog
task
){
TaskStatusChange
(
inNotifyUrl
,
task
);
}
@Override
public
void
outTaskStatusChange
(
String
outNotifyUrl
,
DataLog
task
){
TaskStatusChange
(
outNotifyUrl
,
task
);
}
@Override
public
void
otherTaskStatusChange
(
String
taskNotifyUrl
,
DataLog
task
)
{
TaskStatusChange
(
taskNotifyUrl
,
task
);
}
public
boolean
TaskStatusChange
(
String
url
,
DataLog
task
)
{
if
(
ObjectUtil
.
isEmpty
(
url
))
{
return
false
;
}
// 参数名 参数类型 备注
// data JSON 提交JSON数据集
// 参数名 参数类型 备注
// STATUS STRING 操作类型,0出冰箱 1入冰箱 2回温 3 搅拌 4领用5 回收 必填
// ITEM_SN STRING 锡膏SN,必填
// EMP STRING 操作员工号,选填
// OP_TIME STRING 操作时间,必填,格式:yyyy-MM-dd HH:mm:ss
Barcode
barcode
=
barcodeManager
.
get
(
task
.
getBarcode
());
int
opType
=
-
1
;
if
(
task
.
isCheckOutTask
())
{
//4领用
opType
=
4
;
}
else
if
(
task
.
isPutInTask
())
{
StoragePos
pos
=
storagePosManager
.
getByPosName
(
task
.
getPosName
());
if
(!
pos
.
isWarmPos
())
{
//入库到冷藏区, 1入冰箱
opType
=
1
;
}
}
else
if
(
task
.
isRewarmTakingTask
())
{
//回温取料, 0出冰箱
opType
=
0
;
}
else
if
(
task
.
isRewarmPuttingTask
())
{
//回温放料,2 回温
opType
=
2
;
}
if
(
opType
==
-
1
)
{
return
false
;
}
try
{
Map
<
String
,
Object
>
param
=
new
HashMap
<>();
Map
<
String
,
String
>
dataMap
=
new
HashMap
<>();
dataMap
.
put
(
"STATUS"
,
opType
+
""
);
dataMap
.
put
(
"ITEM_SN"
,
barcode
.
getBarcode
());
String
time
=
DateUtil
.
toDateString
(
task
.
getUpdateDate
(),
DateUtil
.
DATE_PATTERN
);
dataMap
.
put
(
"OP_TIME"
,
time
);
param
.
put
(
"date"
,
dataMap
);
log
.
info
(
"TaskStatusChange,url="
+
url
+
",发送数据="
+
JsonUtil
.
toJsonStr
(
param
)
);
String
result
=
HttpHelper
.
postJson
(
url
,
param
);
log
.
info
(
"TaskStatusChange,url="
+
url
+
",收到数据="
+
result
);
return
true
;
}
catch
(
ApiException
apiException
)
{
log
.
info
(
"TaskStatusChange,url="
+
url
+
" apiException "
+
apiException
.
toString
());
}
catch
(
Exception
exception
)
{
log
.
info
(
"TaskStatusChange,url="
+
url
+
" apiException "
+
exception
.
toString
());
}
return
false
;
}
}
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论