Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit b069cd16
由
LN
编写于
2023-04-07 16:46:53 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
bug修改
1 个父辈
743d3c98
显示空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
39 行增加
和
41 行删除
src/main/java/com/neotel/smfcore/common/init/MenuInit.java
src/main/java/com/neotel/smfcore/core/device/util/DataCache.java
src/main/java/com/neotel/smfcore/core/humiture/rest/HumitureController.java
src/main/java/com/neotel/smfcore/core/humiture/rest/bean/dto/HumitureDto.java
src/main/java/com/neotel/smfcore/core/order/LiteOrderCache.java
src/main/java/com/neotel/smfcore/core/order/enums/ORDER_COLOR.java
src/main/java/com/neotel/smfcore/core/order/rest/OrderController.java
src/main/java/com/neotel/smfcore/custom/micron1053/util/MicronDataCache.java
src/main/java/com/neotel/smfcore/common/init/MenuInit.java
查看文件 @
b069cd1
...
...
@@ -115,6 +115,8 @@ public class MenuInit {
//设备看板
addDefaultFunctionMenu
(
1
,
null
,
"设备看板"
,
"lockMaterial"
,
"lockMaterial/material/index"
,
"kanban"
,
DEFAULT_SHOW_MENU
);
//设备看板
addDefaultFunctionMenu
(
2
,
null
,
"设备互联"
,
"equipmentView"
,
"neolight/equipmentView/index"
,
"equipmentView"
);
//物料管理:工单出库,查找出库(UID出库,PN出库),物料标签,料盒操作,出库策略,工单设置
Menu
poutOut
=
Menu
.
CreatePMenu
(
"物料管理"
,
1
,
"order"
,
"workOrder"
,
null
);
...
...
src/main/java/com/neotel/smfcore/core/device/util/DataCache.java
查看文件 @
b069cd1
...
...
@@ -91,7 +91,7 @@ public class DataCache {
/**
* 库位占用Map, key为cid,value为已使用的库位列表
*/
private
static
Map
<
String
,
List
<
StoragePos
>>
usedPosMap
=
new
ConcurrentHashMap
<>();
private
static
Map
<
String
,
Map
<
String
,
StoragePos
>>
usedPosMap
=
new
ConcurrentHashMap
<>();
/**
* 锡膏料仓冷藏区和回温区使用库位数, key为cid, key为 WarmPos 时value表示回温区使用数量,key为 ColdingPos 时value为冷藏区使用数量
...
...
@@ -437,42 +437,31 @@ public class DataCache {
* 出库时清除使用库位列表
*/
private
void
removeUsedPosList
(
String
cid
,
StoragePos
pos
)
{
List
<
StoragePos
>
usedPosNameList
=
getUsedPosList
(
cid
);
// usedPosNameList.remove(posName);
Iterator
<
StoragePos
>
iterator
=
usedPosNameList
.
iterator
();
while
(
iterator
.
hasNext
())
{
StoragePos
book
=
iterator
.
next
();
if
(
book
.
getPosName
()
.
equals
(
pos
.
getPosName
()))
{
iterator
.
remove
();
break
;
}
}
List
<
StoragePos
>
list
=
new
ArrayList
<>();
iterator
.
forEachRemaining
(
list:
:
add
);
usedPosMap
.
put
(
cid
,
list
);
Map
<
String
,
StoragePos
>
usedPosNameList
=
getUsedPosList
(
cid
);
usedPosNameList
.
remove
(
pos
.
getPosName
());
usedPosMap
.
put
(
cid
,
usedPosNameList
);
}
/**
* 入库时增加使用库位列表
*/
private
void
addUsedPosList
(
String
cid
,
StoragePos
pos
)
{
List
<
StoragePos
>
usedPosList
=
getUsedPosList
(
cid
);
usedPosList
.
add
(
pos
);
Map
<
String
,
StoragePos
>
usedPosList
=
getUsedPosList
(
cid
);
usedPosList
.
put
(
pos
.
getPosName
(),
pos
);
usedPosMap
.
put
(
cid
,
usedPosList
);
}
/**
* 获取设备所有占用的库位名称列表
*/
public
List
<
StoragePos
>
getUsedPosList
(
String
cid
)
{
List
<
StoragePos
>
allPos
=
usedPosMap
.
get
(
cid
);
public
Map
<
String
,
StoragePos
>
getUsedPosList
(
String
cid
)
{
Map
<
String
,
StoragePos
>
allPos
=
usedPosMap
.
get
(
cid
);
if
(
allPos
==
null
)
{
Storage
storage
=
getStorage
(
cid
);
if
(
storage
!=
null
)
{
log
.
info
(
"加载["
+
cid
+
"]所有已使用库位到缓存"
);
allPos
=
storagePosManager
.
findUsedPosNameByStorageId
(
storage
.
getId
());
// for (StoragePos pos : allPos
) {
// posNameList.add(pos.getPosName()
);
//
}
List
<
StoragePos
>
posList
=
storagePosManager
.
findUsedPosNameByStorageId
(
storage
.
getId
());
for
(
StoragePos
pos
:
posList
)
{
allPos
.
put
(
pos
.
getPosName
(),
pos
);
}
usedPosMap
.
put
(
cid
,
allPos
);
}
}
...
...
@@ -483,24 +472,16 @@ public class DataCache {
*/
public
List
<
String
>
getUsedPosNameList
(
String
cid
)
{
List
<
String
>
posNameList
=
new
ArrayList
<>();
List
<
StoragePos
>
allPos
=
usedPosMap
.
get
(
cid
);
if
(
allPos
==
null
)
{
Storage
storage
=
getStorage
(
cid
);
if
(
storage
!=
null
)
{
log
.
info
(
"加载["
+
cid
+
"]所有已使用库位到缓存"
);
allPos
=
storagePosManager
.
findUsedPosNameByStorageId
(
storage
.
getId
());
Map
<
String
,
StoragePos
>
allPos
=
getUsedPosList
(
cid
);
usedPosMap
.
put
(
cid
,
allPos
);
}
}
for
(
StoragePos
pos
:
allPos
)
{
for
(
StoragePos
pos
:
allPos
.
values
())
{
posNameList
.
add
(
pos
.
getPosName
());
}
return
posNameList
;
}
public
List
<
List
<
StoragePos
>>
getAllUsedPosMap
()
{
List
<
List
<
StoragePos
>>
posList
=
new
ArrayList
<>();
public
List
<
Map
<
String
,
StoragePos
>>
getAllUsedPosMap
()
{
List
<
Map
<
String
,
StoragePos
>>
posList
=
new
ArrayList
<>();
Set
<
String
>
keys
=
allStorage
.
keySet
();
Set
<
String
>
mapKeys
=
usedPosMap
.
keySet
();
...
...
@@ -513,7 +494,7 @@ public class DataCache {
}
for
(
String
key
:
keys
)
{
List
<
StoragePos
>
list
=
getUsedPosList
(
key
);
Map
<
String
,
StoragePos
>
list
=
getUsedPosList
(
key
);
if
(
list
.
size
()
>
0
)
{
posList
.
add
(
list
);
}
...
...
src/main/java/com/neotel/smfcore/core/humiture/rest/HumitureController.java
查看文件 @
b069cd1
...
...
@@ -48,13 +48,17 @@ public class HumitureController {
}
Float
maxTemperature
=
msdSettiings
.
getMaxTemperature
();
Float
maxHumidity
=
msdSettiings
.
getMaxHumidity
();
Float
minTemperature
=
msdSettiings
.
getMinTemperature
();
Float
minHumidity
=
msdSettiings
.
getMinHumidity
();
Query
query
=
QueryHelp
.
getQuery
(
criteria
);
query
.
with
(
Sort
.
by
(
Sort
.
Direction
.
ASC
,
"createDate"
));
query
.
addCriteria
(
Criteria
.
where
(
"temperature"
).
ne
(
"0"
));
PageData
<
Humiture
>
humitureList
=
humitureManager
.
findByPage
(
query
,
pageable
);
HumitureDto
restultDto
=
new
HumitureDto
();
restultDto
.
setMaxHumidity
(
maxHumidity
);
restultDto
.
setMinTemperature
(
minTemperature
);
restultDto
.
setMaxTemperature
(
maxTemperature
);
restultDto
.
setMinHumidity
(
minHumidity
);
restultDto
.
setHumitureList
(
humitureList
);
return
restultDto
;
}
...
...
src/main/java/com/neotel/smfcore/core/humiture/rest/bean/dto/HumitureDto.java
查看文件 @
b069cd1
...
...
@@ -24,11 +24,16 @@ public class HumitureDto {
@ApiModelProperty
(
"最高温度"
)
private
float
maxTemperature
=
38.0
F
;
@ApiModelProperty
(
"最低温度"
)
private
float
minTemperature
=
0.0
F
;
/**
* 最大湿度值
*/
@ApiModelProperty
(
"最大湿度"
)
private
float
maxHumidity
=
100.0
F
;
@ApiModelProperty
(
"最小湿度"
)
private
float
minHumidity
=
0.0
F
;
@ApiModelProperty
(
"温湿度数据"
)
PageData
<
Humiture
>
humitureList
;
}
src/main/java/com/neotel/smfcore/core/order/LiteOrderCache.java
查看文件 @
b069cd1
...
...
@@ -405,8 +405,10 @@ public class LiteOrderCache {
if
(
dataLog
.
isFinished
()||
dataLog
.
isCancel
()||
dataLog
.
isEnd
()){
continue
;
}
if
(
dataLog
.
isCheckOutTask
()
&&
ObjectUtil
.
isNotEmpty
(
dataLog
.
getSourceId
())&&
ObjectUtil
.
isNotEmpty
(
dataLog
.
getLightColor
()))
{
currentColors
.
add
(
dataLog
.
getLightColor
());
}
}
ORDER_COLOR
nextColor
=
ORDER_COLOR
.
nextColor
(
currentColors
);
return
nextColor
;
}
...
...
src/main/java/com/neotel/smfcore/core/order/enums/ORDER_COLOR.java
查看文件 @
b069cd1
...
...
@@ -31,7 +31,6 @@ public enum ORDER_COLOR {
// 'magenta':[17,125,125,0]
BLUE
(
"0000FF"
),
//MAGENTA("FF00FF"),
CYAN
(
"00FFFF"
),
// FIREBRICK("B22222"),
// PURPLE("A020F0"),
// SKYBLUE("6CA6CD"),
...
...
@@ -40,6 +39,7 @@ public enum ORDER_COLOR {
// LIGHTBLUE("8470FF"),
// INDIANRED("8B3A3A"),
DARKGREEN
(
"556B2F"
),
CYAN
(
"00FFFF"
),
;
private
static
int
currentColorIndex
=
-
1
;
...
...
src/main/java/com/neotel/smfcore/core/order/rest/OrderController.java
查看文件 @
b069cd1
...
...
@@ -299,7 +299,7 @@ public class OrderController {
OrderDto
dto
=
orderMapper
.
toDto
(
liteOrder
);
List
<
LiteOrderItem
>
orderItemDtos
=
liteOrder
.
getOrderItems
();
List
<
OrderItemDto
>
dtos
=
new
ArrayList
<>();
List
<
List
<
StoragePos
>>
allPosLists
=
dataCache
.
getAllUsedPosMap
();;
List
<
Map
<
String
,
StoragePos
>>
allPosLists
=
dataCache
.
getAllUsedPosMap
();;
for
(
LiteOrderItem
item
:
orderItemDtos
)
{
OrderItemDto
orderItemDto
=
orderItemMapper
.
toDto
(
item
);
...
...
@@ -318,9 +318,9 @@ public class OrderController {
int
inventoryReelCount
=
0
;
int
inventoryQty
=
0
;
try
{
for
(
List
<
StoragePos
>
list
:
for
(
Map
<
String
,
StoragePos
>
list
:
allPosLists
)
{
for
(
StoragePos
pos
:
list
)
{
for
(
StoragePos
pos
:
list
.
values
()
)
{
boolean
isItemPos
=
false
;
if
(
ObjectUtil
.
isNotEmpty
(
item
.
getRi
()))
{
...
...
src/main/java/com/neotel/smfcore/custom/micron1053/util/MicronDataCache.java
查看文件 @
b069cd1
...
...
@@ -190,7 +190,11 @@ public class MicronDataCache {
dataList
.
add
(
new
DataContent
(
"barcode"
,
info
.
getBarcode
()));
dataList
.
add
(
new
DataContent
(
"inoutType"
,
info
.
getType
()));
dataList
.
add
(
new
DataContent
(
"MType"
,
info
.
getMType
()));
DeviceMessageUtil
.
addMessage
(
MessageType
.
ERROR
.
name
(),
"ML5"
,
info
.
getPosName
(),
""
,
info
.
getNgMsg
(),
null
,
dataList
);
String
msg
=
info
.
getNgMsg
();
if
(
ObjectUtil
.
isNotEmpty
(
info
.
getBarcode
())){
msg
=
info
.
getNgMsg
()+
":"
+
info
.
getBarcode
();
}
DeviceMessageUtil
.
addMessage
(
MessageType
.
ERROR
.
name
(),
"ML5"
,
info
.
getPosName
(),
""
,
msg
,
null
,
dataList
);
}
public
static
void
clearNgPos
(
Integer
ngPos
)
{
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论