Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 3c1afeb1
由
LN
编写于
2021-11-30 16:25:33 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
分組出庫修改
1 个父辈
1f484b4b
隐藏空白字符变更
内嵌
并排
正在显示
4 个修改的文件
包含
57 行增加
和
17 行删除
src/main/java/com/neotel/smfcore/core/storage/rest/MaterialController.java
src/main/java/com/neotel/smfcore/core/storage/service/manager/IStoragePosManager.java
src/main/java/com/neotel/smfcore/core/storage/service/manager/impl/StoragePosManagerImpl.java
src/main/java/com/neotel/smfcore/core/storage/service/po/StoragePos.java
src/main/java/com/neotel/smfcore/core/storage/rest/MaterialController.java
查看文件 @
3c1afeb
...
...
@@ -109,6 +109,11 @@ public class MaterialController {
if
(
criteria
.
getStorageId
()
!=
null
&&
criteria
.
getStorageId
().
equals
(
"0"
))
{
criteria
.
setStorageId
(
null
);
}
boolean
noLabelSearch
=
false
;
if
(
criteria
.
getLabelId
()!=
null
&&
criteria
.
getLabelId
().
equals
(
"0"
)){
criteria
.
setLabelId
(
""
);
noLabelSearch
=
true
;
}
Query
query
=
QueryHelp
.
getQuery
(
criteria
);
Criteria
baseCriteria
=
Criteria
.
where
(
"used"
).
is
(
true
);
...
...
@@ -140,6 +145,9 @@ public class MaterialController {
query
.
addCriteria
(
baseCriteria
);
if
(
noLabelSearch
){
query
.
addCriteria
(
Criteria
.
where
(
"labelId"
).
in
(
new
String
[]{
""
,
null
}));
}
PageData
<
StoragePos
>
pages
=
storagePosManager
.
findByPage
(
query
,
pageable
);
List
<
StoragePosDto
>
StoragePosDtos
=
storagePosMapper
.
toDto
(
pages
.
getContent
());
for
(
StoragePosDto
dto
:
StoragePosDtos
...
...
@@ -162,27 +170,54 @@ public class MaterialController {
public
ResultBean
labelOuput
(
@RequestBody
PosLabelDto
params
)
{
List
<
String
>
posIds
=
params
.
getPosIds
();
if
(
posIds
==
null
)
{
throw
new
ValidateException
(
"smfcode.valueCanotNull"
,
"{0}不能为空"
,
new
String
[]{
"PN"
});
}
String
labelId
=
params
.
getLabelId
();
if
(
Objects
.
isNull
(
labelId
))
{
if
(
posIds
==
null
)
{
throw
new
ValidateException
(
"smfcode.valueCanotNull"
,
"{0}不能为空"
,
new
String
[]{
"PN"
});
}
for
(
String
posId
:
posIds
)
{
StoragePos
pos
=
storagePosManager
.
get
(
posId
);
if
(
pos
==
null
)
{
throw
new
ValidateException
(
"smfcode.valueNotExist"
,
"{0}[{1}]不存在"
,
new
String
[]{
"posId"
,
posId
});
for
(
String
posId
:
posIds
)
{
StoragePos
pos
=
storagePosManager
.
get
(
posId
);
if
(
pos
==
null
)
{
throw
new
ValidateException
(
"smfcode.valueNotExist"
,
"{0}[{1}]不存在"
,
new
String
[]{
"posId"
,
posId
});
}
Storage
storage
=
dataCache
.
getStorageById
(
pos
.
getStorageId
());
if
(
storage
==
null
)
{
throw
new
ValidateException
(
"smfcode.valueNotExist"
,
"{0}[{1}]不存在"
,
new
String
[]{
"storageId"
,
pos
.
getStorageId
()});
}
log
.
info
(
"出库料仓【"
+
storage
.
getName
()
+
"_"
+
storage
.
getCid
()
+
"】位置仓位【"
+
pos
.
getPosName
()
+
"】"
);
String
outResult
=
taskService
.
checkout
(
storage
,
pos
,
true
,
SecurityUtils
.
getCurrentUsername
());
if
(!
Strings
.
isNullOrEmpty
(
outResult
))
{
throw
new
ValidateException
(
"smfcode.error"
,
outResult
);
}
}
Storage
storage
=
dataCache
.
getStorageById
(
pos
.
getStorageId
());
if
(
storage
==
null
)
{
throw
new
ValidateException
(
"smfcode.valueNotExist"
,
"{0}[{1}]不存在"
,
new
String
[]{
"storageId"
,
pos
.
getStorageId
()});
}
else
{
//根据标签ID出库
Query
query
=
new
Query
();
query
.
addCriteria
(
Criteria
.
where
(
"labelId"
).
is
(
labelId
));
query
.
addCriteria
(
Criteria
.
where
(
"used"
).
is
(
true
));
List
<
StoragePos
>
posList
=
storagePosManager
.
findByQuery
(
query
);
if
(
posList
.
size
()
<=
0
)
{
//未找到出库信息
throw
new
ValidateException
(
"smfcode.label.noReel"
,
"未找到可出库的物料"
);
}
for
(
StoragePos
pos
:
posList
)
{
Storage
storage
=
dataCache
.
getStorageById
(
pos
.
getStorageId
());
if
(
storage
==
null
)
{
throw
new
ValidateException
(
"smfcode.valueNotExist"
,
"{0}[{1}]不存在"
,
new
String
[]{
"storageId"
,
pos
.
getStorageId
()});
}
log
.
info
(
"出库料仓【"
+
storage
.
getName
()
+
"_"
+
storage
.
getCid
()
+
"】位置仓位【"
+
pos
.
getPosName
()
+
"】"
);
String
outResult
=
taskService
.
checkout
(
storage
,
pos
,
true
,
SecurityUtils
.
getCurrentUsername
());
if
(!
Strings
.
isNullOrEmpty
(
outResult
))
{
throw
new
ValidateException
(
"smfcode.error"
,
outResult
);
log
.
info
(
"出库料仓【"
+
storage
.
getName
()
+
"_"
+
storage
.
getCid
()
+
"】位置仓位【"
+
pos
.
getPosName
()
+
"】"
);
String
outResult
=
taskService
.
checkout
(
storage
,
pos
,
true
,
SecurityUtils
.
getCurrentUsername
());
if
(!
Strings
.
isNullOrEmpty
(
outResult
))
{
throw
new
ValidateException
(
"smfcode.error"
,
outResult
);
}
}
}
return
ResultBean
.
newOkResult
(
"ok"
);
}
...
...
@@ -208,7 +243,7 @@ public class MaterialController {
labelName
=
label
.
getLabelName
();
}
String
[]
array
=
posIds
.
toArray
(
new
String
[
posIds
.
size
()]);
storagePosManager
.
updatePosLabel
(
array
,
labelId
);
storagePosManager
.
updatePosLabel
(
array
,
labelId
,
labelName
);
return
ResultBean
.
newOkResult
(
""
);
}
...
...
src/main/java/com/neotel/smfcore/core/storage/service/manager/IStoragePosManager.java
查看文件 @
3c1afeb
...
...
@@ -50,7 +50,7 @@ public interface IStoragePosManager extends IBaseManager<StoragePos> {
void
clearStoragePosLabel
(
String
id
);
void
updatePosLabel
(
String
[]
posIds
,
String
labelId
);
void
updatePosLabel
(
String
[]
posIds
,
String
labelId
,
String
labelName
);
void
clearLockPos
(
String
lockId
);
...
...
src/main/java/com/neotel/smfcore/core/storage/service/manager/impl/StoragePosManagerImpl.java
查看文件 @
3c1afeb
...
...
@@ -396,9 +396,10 @@ public class StoragePosManagerImpl implements IStoragePosManager {
}
@Override
public
void
updatePosLabel
(
String
[]
posIds
,
String
labelId
)
{
public
void
updatePosLabel
(
String
[]
posIds
,
String
labelId
,
String
labelName
)
{
Query
query
=
new
Query
(
Criteria
.
where
(
"id"
).
in
(
posIds
));
storagePosDao
.
updateMulti
(
query
,
Update
.
update
(
"labelId"
,
labelId
));
storagePosDao
.
updateMulti
(
query
,
Update
.
update
(
"labelName"
,
labelName
));
}
@Override
...
...
src/main/java/com/neotel/smfcore/core/storage/service/po/StoragePos.java
查看文件 @
3c1afeb
...
...
@@ -56,6 +56,10 @@ public class StoragePos extends BasePo implements Serializable {
* 标签ID
*/
private
String
labelId
=
""
;
/**
* 标签名称
*/
private
String
labelName
=
""
;
/**
* 并联的其他库位,合并入主库位的库位
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论