Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 9bc8749c
由
LN
编写于
2023-03-02 16:24:40 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
1053修改:1.Status和ML5页面状态修改。2.ML5页面的NG可以查看详情。3.料架显示入库中,出库中,待取出。4.温湿度,呆滞物料报表增加导出。5.UID和过期物料导出增加批次字段
1 个父辈
d78b2fd4
隐藏空白字符变更
内嵌
并排
正在显示
15 个修改的文件
包含
209 行增加
和
74 行删除
src/main/java/com/neotel/smfcore/core/storage/rest/MaterialStockController.java
src/main/java/com/neotel/smfcore/core/storage/rest/StoragePosController.java
src/main/java/com/neotel/smfcore/custom/micron1053/bean/ML5NgReelInfo.java
src/main/java/com/neotel/smfcore/custom/micron1053/bean/MicronEquipStatus.java
src/main/java/com/neotel/smfcore/custom/micron1053/bean/dto/ML5StatusDto.java
src/main/java/com/neotel/smfcore/custom/micron1053/controller/MicronDeviceController.java
src/main/java/com/neotel/smfcore/custom/micron1053/controller/MicronML5Controller.java
src/main/java/com/neotel/smfcore/custom/micron1053/controller/MicronStatusController.java
src/main/java/com/neotel/smfcore/custom/micron1053/enums/MicronEquipName.java
src/main/java/com/neotel/smfcore/custom/micron1053/util/MicronDataCache.java
src/main/resources/messages.properties
src/main/resources/messages_en_US.properties
src/main/resources/messages_ja_JP.properties
src/main/resources/messages_zh_CN.properties
src/main/resources/messages_zh_TW.properties
src/main/java/com/neotel/smfcore/core/storage/rest/MaterialStockController.java
查看文件 @
9bc8749
...
...
@@ -140,6 +140,7 @@ public class MaterialStockController {
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.partNumber"
,
locale
,
"物料编号"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.proDate"
,
locale
,
"生产日期"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.expireDate"
,
locale
,
"过期时间"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.batch"
,
locale
,
"物料批次"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.posName"
,
locale
,
"库位号"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.lockName"
,
locale
,
"工单号"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.amount"
,
locale
,
"数量"
)));
...
...
@@ -170,6 +171,7 @@ public class MaterialStockController {
data
.
add
(
pos
.
getBarcode
().
getPartNumber
());
data
.
add
(
proDate
);
data
.
add
(
expireDate
);
data
.
add
(
pos
.
getBarcode
().
getBatch
());
data
.
add
(
pos
.
getPosName
());
data
.
add
(
pos
.
getBarcode
().
getLockName
());
data
.
add
(
pos
.
getBarcode
().
getAmount
());
...
...
@@ -233,6 +235,7 @@ public class MaterialStockController {
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.partNumber"
,
locale
,
"物料编号"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.proDate"
,
locale
,
"生产日期"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.expireDate"
,
locale
,
"过期时间"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.batch"
,
locale
,
"物料批次"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.posName"
,
locale
,
"库位号"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.lockName"
,
locale
,
"工单号"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.amount"
,
locale
,
"数量"
)));
...
...
@@ -264,6 +267,7 @@ public class MaterialStockController {
data
.
add
(
proDate
);
data
.
add
(
expireDate
);
data
.
add
(
pos
.
getPosName
());
data
.
add
(
pos
.
getBarcode
().
getBatch
());
data
.
add
(
pos
.
getBarcode
().
getLockName
());
data
.
add
(
pos
.
getBarcode
().
getAmount
());
data
.
add
(
putInTime
);
...
...
src/main/java/com/neotel/smfcore/core/storage/rest/StoragePosController.java
查看文件 @
9bc8749
...
...
@@ -372,6 +372,7 @@ public class StoragePosController {
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.partNumber"
,
locale
,
"物料编号"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.proDate"
,
locale
,
"生产日期"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.expireDate"
,
locale
,
"过期时间"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.batch"
,
locale
,
"物料批次"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.posName"
,
locale
,
"库位号"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.lockName"
,
locale
,
"工单号"
)));
header
.
add
(
Lists
.
newArrayList
(
MessageUtils
.
getText
(
"smfcore.storagePos.amount"
,
locale
,
"数量"
)));
...
...
@@ -402,6 +403,7 @@ public class StoragePosController {
data
.
add
(
pos
.
getBarcode
().
getPartNumber
());
data
.
add
(
proDate
);
data
.
add
(
expireDate
);
data
.
add
(
pos
.
getBarcode
().
getBatch
());
data
.
add
(
pos
.
getPosName
());
data
.
add
(
pos
.
getBarcode
().
getLockName
());
data
.
add
(
pos
.
getBarcode
().
getAmount
());
...
...
src/main/java/com/neotel/smfcore/custom/micron1053/bean/ML5NgReelInfo.java
0 → 100644
查看文件 @
9bc8749
package
com
.
neotel
.
smfcore
.
custom
.
micron1053
.
bean
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
ML5NgReelInfo
implements
Serializable
{
@ApiModelProperty
(
"NG口位置,1=左侧,2=右侧"
)
private
int
NgPos
=
0
;
@ApiModelProperty
(
"物料类型:pizzaBox,pcb,tray,reel"
)
private
String
mType
;
@ApiModelProperty
(
"条码"
)
private
String
barcode
;
@ApiModelProperty
(
"库位号"
)
private
String
posName
;
@ApiModelProperty
(
"出入库类型,1=入库,2=出库"
)
private
String
type
;
@ApiModelProperty
(
"NG原因"
)
private
String
ngMsg
;
}
src/main/java/com/neotel/smfcore/custom/micron1053/bean/MicronEquipStatus.java
查看文件 @
9bc8749
...
...
@@ -12,7 +12,7 @@ import java.util.List;
@NoArgsConstructor
public
class
MicronEquipStatus
implements
Serializable
{
/**
* 设备名称:
ML5,
CI,R1,R2,R3,M1-M8,SBDH1,SBDH2,SBDH3,SBSH1,SBSH2
* 设备名称:CI,R1,R2,R3,M1-M8,SBDH1,SBDH2,SBDH3,SBSH1,SBSH2
* ML5-R1,ML5-R2,ML5-L1,ML5-R2
*/
private
String
equipName
;
...
...
@@ -21,9 +21,19 @@ public class MicronEquipStatus implements Serializable {
*/
private
int
status
;
/**
* 左边代表l1,l2,1=正常运行,2=报警。3=入库中,4=出库中,5=满料待取出
*/
private
int
P1status
;
/**
* 右边代表R1R21,1=正常运行,2=报警。3=入库中,4=出库中,5=满料待取出
*/
private
int
P2status
;
/**
* 当name为ML5-R1对应右侧的ng,ML5-L1对应左侧的ng
*/
private
int
ngCount
;
private
long
updateTime
;
private
List
<
EquipMsg
>
msgList
=
null
;
/**
...
...
src/main/java/com/neotel/smfcore/custom/micron1053/bean/dto/ML5StatusDto.java
查看文件 @
9bc8749
...
...
@@ -18,9 +18,9 @@ public class ML5StatusDto implements Serializable {
private
int
l1Status
=
0
;
@ApiModelProperty
(
"L2状态 0=离线,1=正常运行,2=报警"
)
private
int
l2Status
=
0
;
@ApiModelProperty
(
"R1状态 0=离线,1=正常运行,2=报警"
)
@ApiModelProperty
(
"R1状态 0=离线,1=正常运行,2=报警
,3=入库中,4=出库中,5=满料待取出
"
)
private
int
r1Status
=
0
;
@ApiModelProperty
(
"R2状态 0=离线,1=正常运行,2=报警"
)
@ApiModelProperty
(
"R2状态 0=离线,1=正常运行,2=报警
,3=入库中,4=出库中,5=满料待取出
"
)
private
int
r2Status
=
0
;
@ApiModelProperty
(
"NG1处料盘数量"
)
...
...
src/main/java/com/neotel/smfcore/custom/micron1053/controller/MicronDeviceController.java
查看文件 @
9bc8749
...
...
@@ -4,6 +4,7 @@ import com.neotel.smfcore.common.bean.ResultBean;
import
com.neotel.smfcore.common.utils.JsonUtil
;
import
com.neotel.smfcore.core.system.service.po.DataLog
;
import
com.neotel.smfcore.core.system.util.TaskService
;
import
com.neotel.smfcore.custom.micron1053.bean.ML5NgReelInfo
;
import
com.neotel.smfcore.custom.micron1053.bean.MicronEquipStatus
;
import
com.neotel.smfcore.custom.micron1053.util.MicronDataCache
;
import
com.neotel.smfcore.security.annotation.AnonymousAccess
;
...
...
@@ -97,6 +98,31 @@ public class MicronDeviceController {
Object
value
=
MicronDataCache
.
getDDate
(
key
);
return
ResultBean
.
newOkResult
(
value
);
}
@ApiOperation
(
"上传一个NG料 "
)
@PostMapping
(
value
=
"/uploadNgReel"
)
@ResponseBody
@AnonymousAccess
public
ResultBean
uploadNgReel
(
@RequestBody
Object
param
,
HttpServletRequest
request
)
{
ML5NgReelInfo
info
=
JsonUtil
.
toObj
(
param
.
toString
(),
ML5NgReelInfo
.
class
);
if
(
info
==
null
)
{
return
ResultBean
.
newOkResult
(
"fail"
);
}
log
.
info
(
"uploadNgReel : ["
+
info
.
getNgPos
()
+
"],barcode:["
+
info
.
getBarcode
()
+
"],posName:["
+
info
.
getPosName
()
+
"]type:["
+
info
.
getMType
()
+
"]inout:["
+
info
.
getType
()
+
"],msg["
+
info
.
getNgMsg
()
+
"]"
);
MicronDataCache
.
uploadNgReel
(
info
);
return
ResultBean
.
newOkResult
(
"ok"
);
}
@ApiOperation
(
"清空指定NG的NG料,参数 ngPos:1=左侧,2=右侧 "
)
@PostMapping
(
value
=
"/clearNgPos"
)
@ResponseBody
@AnonymousAccess
public
ResultBean
clearNgPos
(
HttpServletRequest
request
)
{
Integer
ngPos
=
Integer
.
valueOf
(
request
.
getParameter
(
"ngPos"
))
;
log
.
info
(
"clearNgPos : ngPos="
+
ngPos
);
MicronDataCache
.
clearNgPos
(
ngPos
);
return
ResultBean
.
newOkResult
(
"clearNgPos "
+
ngPos
+
" ok"
);
}
// @ApiOperation("ML5设备状态更新")
// @PostMapping(value = "ml5/updateStatus")
...
...
src/main/java/com/neotel/smfcore/custom/micron1053/controller/MicronML5Controller.java
查看文件 @
9bc8749
...
...
@@ -3,10 +3,10 @@ package com.neotel.smfcore.custom.micron1053.controller;
import
com.neotel.smfcore.core.system.service.po.DataLog
;
import
com.neotel.smfcore.core.system.util.TaskService
;
import
com.neotel.smfcore.custom.micron1053.bean.EquipMsg
;
import
com.neotel.smfcore.custom.micron1053.bean.ML5NgReelInfo
;
import
com.neotel.smfcore.custom.micron1053.bean.MicronEquipStatus
;
import
com.neotel.smfcore.custom.micron1053.bean.dto.ML5ShelfDto
;
import
com.neotel.smfcore.custom.micron1053.bean.dto.ML5StatusDto
;
import
com.neotel.smfcore.custom.micron1053.enums.MicronEquipName
;
import
com.neotel.smfcore.custom.micron1053.util.MicronDataCache
;
import
com.neotel.smfcore.security.annotation.AnonymousAccess
;
import
io.swagger.annotations.Api
;
...
...
@@ -17,6 +17,7 @@ import org.springframework.web.bind.annotation.GetMapping;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.*
;
@Slf4j
...
...
@@ -32,30 +33,22 @@ public class MicronML5Controller {
@AnonymousAccess
public
ML5StatusDto
ml5Status
(
)
{
ML5StatusDto
resultDto
=
new
ML5StatusDto
();
MicronEquipStatus
r1
=
MicronDataCache
.
getStatus
(
MicronEquipName
.
ML5_R1
.
getName
());
MicronEquipStatus
r2
=
MicronDataCache
.
getStatus
(
MicronEquipName
.
ML5_R2
.
getName
());
MicronEquipStatus
l1
=
MicronDataCache
.
getStatus
(
MicronEquipName
.
ML5_L1
.
getName
());
MicronEquipStatus
l2
=
MicronDataCache
.
getStatus
(
MicronEquipName
.
ML5_L2
.
getName
());
MicronEquipStatus
mlL
=
MicronDataCache
.
getStatus
(
"ML5-L"
);
MicronEquipStatus
mlR
=
MicronDataCache
.
getStatus
(
"ML5-R"
);
resultDto
.
setL1Status
(
l1
.
getS
tatus
());
resultDto
.
setL2Status
(
l2
.
getS
tatus
());
resultDto
.
setR1Status
(
r1
.
getS
tatus
());
resultDto
.
setR2Status
(
r2
.
getS
tatus
());
resultDto
.
setNg1Count
(
l1
.
getNgCount
());
resultDto
.
setNg2Count
(
r1
.
getNgCount
());
resultDto
.
setL1Status
(
mlL
.
getP1s
tatus
());
resultDto
.
setL2Status
(
mlL
.
getP2s
tatus
());
resultDto
.
setR1Status
(
mlR
.
getP1s
tatus
());
resultDto
.
setR2Status
(
mlR
.
getP2s
tatus
());
resultDto
.
setNg1Count
(
mlL
.
getNgCount
());
resultDto
.
setNg2Count
(
mlR
.
getNgCount
());
List
<
EquipMsg
>
msgs
=
new
ArrayList
<>();
if
(
r1
.
getMsgList
()
!=
null
&&
r1
.
getMsgList
().
size
()
>
0
)
{
msgs
.
addAll
(
r1
.
getMsgList
());
if
(
mlL
.
getMsgList
()
!=
null
&&
mlL
.
getMsgList
().
size
()
>
0
)
{
msgs
.
addAll
(
mlL
.
getMsgList
());
}
if
(
r2
.
getMsgList
()
!=
null
&&
r2
.
getMsgList
().
size
()
>
0
)
{
msgs
.
addAll
(
r2
.
getMsgList
());
}
if
(
l1
.
getMsgList
()
!=
null
&&
l1
.
getMsgList
().
size
()
>
0
)
{
msgs
.
addAll
(
l1
.
getMsgList
());
}
if
(
l2
.
getMsgList
()
!=
null
&&
l2
.
getMsgList
().
size
()
>
0
)
{
msgs
.
addAll
(
l2
.
getMsgList
());
if
(
mlR
.
getMsgList
()
!=
null
&&
mlR
.
getMsgList
().
size
()
>
0
)
{
msgs
.
addAll
(
mlR
.
getMsgList
());
}
if
(
msgs
.
size
()
>
0
)
{
resultDto
.
setMsgList
(
msgs
);
...
...
@@ -96,4 +89,13 @@ public class MicronML5Controller {
return
resultDto
;
}
@ApiOperation
(
"ML5页面点击NG查看详情;参数 ngPos:1=左侧,2=右侧"
)
@GetMapping
(
"/ngDetials"
)
@AnonymousAccess
public
List
<
ML5NgReelInfo
>
ngDetials
(
Integer
ngPos
,
HttpServletRequest
servletRequest
)
{
List
<
ML5NgReelInfo
>
results
=
MicronDataCache
.
getNgDetials
(
ngPos
);
return
results
;
}
}
src/main/java/com/neotel/smfcore/custom/micron1053/controller/MicronStatusController.java
查看文件 @
9bc8749
...
...
@@ -20,7 +20,6 @@ import com.neotel.smfcore.core.system.util.DevicesStatusUtil;
import
com.neotel.smfcore.custom.micron1053.bean.EquipMsg
;
import
com.neotel.smfcore.custom.micron1053.bean.MicronEquipStatus
;
import
com.neotel.smfcore.custom.micron1053.bean.dto.*
;
import
com.neotel.smfcore.custom.micron1053.enums.MicronEquipName
;
import
com.neotel.smfcore.custom.micron1053.util.MicronDataCache
;
import
com.neotel.smfcore.security.annotation.AnonymousAccess
;
import
io.swagger.annotations.Api
;
...
...
@@ -60,12 +59,13 @@ public class MicronStatusController {
dto
.
setStatusMap
(
new
HashMap
<>());
// ML5,CI,R1,R2,R3
String
[]
names
=
new
String
[]{
"ML5"
,
"CI"
,
"R1"
,
"R2"
,
"R3"
};
String
[]
names
=
new
String
[]{
"ML5
-L"
,
"ML5-R
"
,
"CI"
,
"R1"
,
"R2"
,
"R3"
};
for
(
String
name
:
names
)
{
MicronEquipStatus
s
=
MicronDataCache
.
getStatus
(
name
);
if
(!
s
.
timeOut
()){
dto
.
getStatusMap
().
put
(
s
.
getEquipName
(),
s
.
getStatus
()
);
String
newKey
=
s
.
getEquipName
().
replace
(
"-"
,
""
);
dto
.
getStatusMap
().
put
(
newKey
,
s
.
getStatus
()
);
// if(s.getMsgList()!=null&&s.getMsgList().size()>0) {
// dto.getMsgList().addAll(s.getMsgList());
// }
...
...
@@ -91,9 +91,15 @@ public class MicronStatusController {
)
{
boxList
.
add
(
"M"
+
i
);
}
for
(
MicronEquipName
name
:
MicronEquipName
.
sbBoxList
()){
boxList
.
add
(
name
.
getName
());
}
// SBDH1, SBDH2, SBDH3, SBSH1, SBSH2
boxList
.
add
(
"SBDH1"
);
boxList
.
add
(
"SBDH2"
);
boxList
.
add
(
"SBDH3"
);
boxList
.
add
(
"SBSH1"
);
boxList
.
add
(
"SBSH2"
);
// for (MicronEquipName name : MicronEquipName.sbBoxList()){
// boxList.add(name.getName());
// }
for
(
String
boxName
:
boxList
)
{
...
...
@@ -125,7 +131,7 @@ public class MicronStatusController {
private
MicronEquipStatus
getBoxEquip
(
String
boxName
,
Locale
locale
)
{
List
<
String
>
cids
=
getCidsByBoxName
(
boxName
);
MicronEquipStatus
dto
=
new
MicronEquipStatus
(
boxName
,
0
,
0
,
System
.
currentTimeMillis
(),
new
ArrayList
<>());
MicronEquipStatus
dto
=
new
MicronEquipStatus
(
boxName
,
0
,
0
,
0
,
0
,
System
.
currentTimeMillis
(),
new
ArrayList
<>());
List
<
StatusBean
>
statusBeans
=
new
ArrayList
<>();
for
(
String
cid
:
cids
)
{
...
...
src/main/java/com/neotel/smfcore/custom/micron1053/enums/MicronEquipName.java
查看文件 @
9bc8749
...
...
@@ -7,43 +7,43 @@ import java.util.List;
/**
* Created by sunke on 2021/7/13.
*/
public
enum
MicronEquipName
{
// ,,,,,M1-M8,SBDH1,SBDH2,SBDH3,SBSH1,SBSH2
ML5
(
"ML5"
),
CI
(
"CI"
),
R1
(
"R1"
),
R2
(
"R2"
),
R3
(
"R3"
),
SBDH1
(
"SBDH1"
),
SBDH2
(
"SBDH2"
),
SBDH3
(
"SBDH3"
),
SBSH1
(
"SBSH1"
),
SBSH2
(
"SBSH2"
),
ML5_R1
(
"ML5-R1"
),
ML5_R2
(
"ML5-R2"
),
ML5_L1
(
"ML5-L1"
),
ML5_L2
(
"ML5-L2"
);
private
String
key
;
MicronEquipName
(
String
key
)
{
this
.
key
=
key
;
}
public
String
getKey
()
{
return
key
;
}
public
void
setKey
(
String
key
)
{
this
.
key
=
key
;
}
public
String
getName
()
{
return
name
();
}
public
static
List
<
MicronEquipName
>
sbBoxList
()
{
return
Lists
.
newArrayList
(
SBDH1
,
SBDH2
,
SBDH3
,
SBSH1
,
SBSH2
);
}
}
//
public enum MicronEquipName {
//
//
,,,,,M1-M8,SBDH1,SBDH2,SBDH3,SBSH1,SBSH2
//
//
ML5("ML5"),
//
CI("CI"),
//
R1("R1"),
//
R2("R2"),
//
R3("R3"),
//
SBDH1("SBDH1"),
//
SBDH2("SBDH2"),
//
SBDH3("SBDH3"),
//
SBSH1("SBSH1"),
//
SBSH2("SBSH2"),
//
ML5_R1("ML5-R1"),
//
ML5_R2("ML5-R2"),
//
ML5_L1("ML5-L1"),
//
ML5_L2("ML5-L2");
//
//
private String key;
//
//
MicronEquipName(String key) {
//
this.key = key;
//
}
//
//
public String getKey() {
//
return key;
//
}
//
//
public void setKey(String key) {
//
this.key = key;
//
}
//
//
public String getName() {
//
return name();
//
}
//
//
public static List<MicronEquipName> sbBoxList() {
//
return Lists.newArrayList(SBDH1, SBDH2, SBDH3, SBSH1, SBSH2);
//
}
//
}
src/main/java/com/neotel/smfcore/custom/micron1053/util/MicronDataCache.java
查看文件 @
9bc8749
...
...
@@ -3,13 +3,16 @@ package com.neotel.smfcore.custom.micron1053.util;
import
cn.hutool.core.util.ObjectUtil
;
import
com.neotel.smfcore.core.system.service.po.DataLog
;
import
com.neotel.smfcore.custom.micron1053.bean.EquipMsg
;
import
com.neotel.smfcore.custom.micron1053.bean.ML5NgReelInfo
;
import
com.neotel.smfcore.custom.micron1053.bean.MicronEquipStatus
;
import
lombok.extern.slf4j.Slf4j
;
import
java.util.*
;
/**
* 设备状态缓存类
*/
@Slf4j
public
class
MicronDataCache
{
// public static ML5StatusBean ml5StatusBean=null;
...
...
@@ -145,4 +148,24 @@ public class MicronDataCache {
Object
value
=
deviceDataMap
.
getOrDefault
(
key
,
""
);
return
value
;
}
public
static
Map
<
Integer
,
List
<
ML5NgReelInfo
>>
ml5NgMap
=
new
HashMap
<>();
public
static
void
uploadNgReel
(
ML5NgReelInfo
info
)
{
List
<
ML5NgReelInfo
>
list
=
ml5NgMap
.
getOrDefault
(
info
.
getNgPos
(),
new
ArrayList
<>());
list
.
add
(
info
);
ml5NgMap
.
put
(
info
.
getNgPos
(),
list
);
}
public
static
void
clearNgPos
(
Integer
ngPos
)
{
ml5NgMap
.
remove
(
ngPos
);
}
public
static
List
<
ML5NgReelInfo
>
getNgDetials
(
Integer
ngPos
){
List
<
ML5NgReelInfo
>
list
=
ml5NgMap
.
getOrDefault
(
ngPos
,
new
ArrayList
<>());
return
list
;
}
}
src/main/resources/messages.properties
查看文件 @
9bc8749
...
...
@@ -304,6 +304,12 @@ smfcore.diagnosis=Diagnosis
smfcore.helps
=
Help
smfcore.error.storage.noPos
=
{0}
\u7684\u6599\u
683C[{1}]
\u
5DF2
\u
6EE1,
\u
65E0
\u
6CD5
\u
7EE7
\u
7EED
\u
653E
\u5165
smfcore.status
=
Status
smfcore.storagePos.batch
=
\u6279\u
6B21
smfcore.humiture.cid
=
CID
smfcore.humiture.temperature
=
\u
6E29
\u
5EA6
smfcore.humiture.humiture
=
\u
6E7F
\u
5EA6
smfcore.humiture.createDate
=
\u
521B
\u
5EFA
\u
65F6
\u
95F4
smfcore.humiture.updateDate
=
\u
66F4
\u
65B0
\u
65F6
\u
95F4
#smfclient.nlp.onlyOneTray=\u4E0D\u53EF\u540C\u65F6\u653E\u5165\u591A\u76D8\u7269\u6599:{0}
#smfclient.nlp.cannotFindPos={0}\u672A\u627E\u5230\u5E93\u4F4D:{1}
#smfclient.nlp.inputOk={0}\u5165\u5E93\u5230{1}\u6210\u529F
...
...
src/main/resources/messages_en_US.properties
查看文件 @
9bc8749
...
...
@@ -302,4 +302,10 @@ smfcore.ml2=MI2
smfcore.diagnosis
=
Diagnosis
smfcore.helps
=
Help
smfcore.error.storage.noPos
=
{0}'s cell [{1}] is full and cannot be added
smfcore.status
=
Status
\ No newline at end of file
smfcore.status
=
Status
smfcore.storagePos.batch
=
Material Batch
smfcore.humiture.cid
=
CID
smfcore.humiture.temperature
=
Temperature
smfcore.humiture.humiture
=
Humidity
smfcore.humiture.createDate
=
Create Time
smfcore.humiture.updateDate
=
Update Time
\ No newline at end of file
src/main/resources/messages_ja_JP.properties
查看文件 @
9bc8749
...
...
@@ -300,3 +300,9 @@ smfcore.diagnosis=Diagnosis
smfcore.helps
=
Help
smfcore.error.storage.noPos
=
{0}
\u7684\u6599\u
683C[{1}]
\u
5DF2
\u
6EE1,
\u
65E0
\u
6CD5
\u
7EE7
\u
7EED
\u
653E
\u5165
smfcore.status
=
Status
smfcore.storagePos.batch
=
\u
54C1
\u
76EE
\u
30ED
\u
30C3
\u
30C8
smfcore.humiture.cid
=
CID
smfcore.humiture.temperature
=
\u
6E29
\u
5EA6
smfcore.humiture.humiture
=
\u
6E7F
\u
5EA6
smfcore.humiture.createDate
=
\u
521B
\u
5EFA
\u
65F6
\u
95F4
smfcore.humiture.updateDate
=
\u
66F4
\u
65B0
\u
65F6
\u
95F4
src/main/resources/messages_zh_CN.properties
查看文件 @
9bc8749
...
...
@@ -299,4 +299,10 @@ smfcore.ml2=MI2
smfcore.diagnosis
=
Diagnosis
smfcore.helps
=
Help
smfcore.error.storage.noPos
=
{0}
\u7684\u6599\u
683C[{1}]
\u
5DF2
\u
6EE1,
\u
65E0
\u
6CD5
\u
7EE7
\u
7EED
\u
653E
\u5165
smfcore.status
=
Status
\ No newline at end of file
smfcore.status
=
Status
smfcore.storagePos.batch
=
\u6279\u
6B21
smfcore.humiture.cid
=
CID
smfcore.humiture.temperature
=
\u
6E29
\u
5EA6
smfcore.humiture.humiture
=
\u
6E7F
\u
5EA6
smfcore.humiture.createDate
=
\u
521B
\u
5EFA
\u
65F6
\u
95F4
smfcore.humiture.updateDate
=
\u
66F4
\u
65B0
\u
65F6
\u
95F4
\ No newline at end of file
src/main/resources/messages_zh_TW.properties
查看文件 @
9bc8749
...
...
@@ -300,4 +300,10 @@ smfcore.ml2=MI2
smfcore.diagnosis
=
Diagnosis
smfcore.helps
=
Help
smfcore.error.storage.noPos
=
{0}
\u7684\u6599\u
683C[{1}]
\u
5DF2
\u
6EFF,
\u7121\u
6CD5
\u
7E7C
\u
7E8C
\u
653E
\u5165
smfcore.status
=
Status
\ No newline at end of file
smfcore.status
=
Status
smfcore.storagePos.batch
=
\u6279\u
6B21
smfcore.humiture.cid
=
CID
smfcore.humiture.temperature
=
\u
6E29
\u
5EA6
smfcore.humiture.humiture
=
\u
6E7F
\u
5EA6
smfcore.humiture.createDate
=
\u
521B
\u
5EFA
\u
65F6
\u
95F4
smfcore.humiture.updateDate
=
\u
66F4
\u
65B0
\u
65F6
\u
95F4
\ No newline at end of file
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论