Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit abc813a8
由
LN
编写于
2021-10-12 14:32:19 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
增加label表
1 个父辈
7fc4c6fa
隐藏空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
298 行增加
和
3 行删除
src/main/java/com/neotel/smfcore/common/init/DataInitManager.java
src/main/java/com/neotel/smfcore/core/storage/rest/LabelController.java
src/main/java/com/neotel/smfcore/core/storage/rest/MaterialController.java
src/main/java/com/neotel/smfcore/core/storage/rest/dto/LabelDto.java
src/main/java/com/neotel/smfcore/core/storage/rest/mapstruct/LabelMapper.java
src/main/java/com/neotel/smfcore/core/storage/service/dao/ILabelDao.java
src/main/java/com/neotel/smfcore/core/storage/service/dao/impl/LabelDaoImpl.java
src/main/java/com/neotel/smfcore/core/storage/service/manager/ILabelManager.java
src/main/java/com/neotel/smfcore/core/storage/service/manager/impl/LabelManagerImpl.java
src/main/java/com/neotel/smfcore/core/storage/service/po/Label.java
src/main/java/com/neotel/smfcore/common/init/DataInitManager.java
查看文件 @
abc813a
...
@@ -191,7 +191,7 @@ public class DataInitManager {
...
@@ -191,7 +191,7 @@ public class DataInitManager {
menus
.
addAll
(
createMenus
(
menukanban
));
menus
.
addAll
(
createMenus
(
menukanban
));
//料架分组
//料架分组
Menu
menuShelf
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"sensorShelf"
,
"料架分组"
,
1
,
"lightGroup"
,
"neolight/lightGroup/index"
,
""
,
0
,
"neo1"
);
Menu
menuShelf
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"sensorShelf"
,
"料架分组"
,
1
,
"lightGroup"
,
"neolight/lightGroup/index"
,
""
,
0
,
"neo1"
);
//
menuShelf.setHidden(true);
menuShelf
.
setHidden
(
true
);
menus
.
addAll
(
createMenus
(
menuShelf
));
menus
.
addAll
(
createMenus
(
menuShelf
));
//出库:工单,查找出库
//出库:工单,查找出库
...
@@ -206,13 +206,13 @@ public class DataInitManager {
...
@@ -206,13 +206,13 @@ public class DataInitManager {
//设置:料仓管理,菜单管理
//设置:料仓管理,菜单管理
Menu
poutSet
=
Menu
.
CreatePMenu
(
"设置"
,
30
,
"system"
,
2
,
"system"
);
Menu
poutSet
=
Menu
.
CreatePMenu
(
"设置"
,
30
,
"system"
,
2
,
"system"
);
Menu
menuStorage
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"storage:list"
,
"
料仓
管理"
,
1
,
"bunker"
,
"storage/storage/index"
,
""
,
0
,
"database"
);
Menu
menuStorage
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"storage:list"
,
"
设备
管理"
,
1
,
"bunker"
,
"storage/storage/index"
,
""
,
0
,
"database"
);
Menu
menuStoragePos
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"storagePos:list"
,
"库位管理"
,
1
,
"storagePos"
,
"storagePos/storagePos/index"
,
""
,
0
,
"tree-table"
);
Menu
menuStoragePos
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"storagePos:list"
,
"库位管理"
,
1
,
"storagePos"
,
"storagePos/storagePos/index"
,
""
,
0
,
"tree-table"
);
Menu
menuMenu
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"menu:list"
,
"菜单管理"
,
1
,
"menu"
,
"system/menu/index"
,
""
,
0
,
"menu"
);
Menu
menuMenu
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"menu:list"
,
"菜单管理"
,
1
,
"menu"
,
"system/menu/index"
,
""
,
0
,
"menu"
);
Menu
sysSetting
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"barcode"
,
"条码设置"
,
1
,
"barcodeSetting"
,
"system/barcodeSetting/index"
,
""
,
0
,
"database"
);
Menu
sysSetting
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"barcode"
,
"条码设置"
,
1
,
"barcodeSetting"
,
"system/barcodeSetting/index"
,
""
,
0
,
"database"
);
Menu
outSet
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"outSetting"
,
"出库策略"
,
1
,
"outSetting"
,
"system/outSetting/index"
,
""
,
0
,
"system"
);
Menu
outSet
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"outSetting"
,
"出库策略"
,
1
,
"outSetting"
,
"system/outSetting/index"
,
""
,
0
,
"system"
);
Menu
sysSet
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"sysSetting"
,
"系统设置"
,
1
,
"sysSetting"
,
"system/sysSetting/index"
,
""
,
0
,
"system"
);
Menu
sysSet
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"sysSetting"
,
"系统设置"
,
1
,
"sysSetting"
,
"system/sysSetting/index"
,
""
,
0
,
"system"
);
menuMenu
.
setHidden
(
true
);
outSet
.
setHidden
(
true
);
outSet
.
setHidden
(
true
);
sysSet
.
setHidden
(
true
);
sysSet
.
setHidden
(
true
);
// menuMenu.setHidden(true);
// menuMenu.setHidden(true);
...
...
src/main/java/com/neotel/smfcore/core/storage/rest/LabelController.java
0 → 100644
查看文件 @
abc813a
package
com
.
neotel
.
smfcore
.
core
.
storage
.
rest
;
import
com.neotel.smfcore.common.exception.ValidateException
;
import
com.neotel.smfcore.common.utils.Constants
;
import
com.neotel.smfcore.common.utils.SecurityUtils
;
import
com.neotel.smfcore.core.storage.rest.dto.LabelDto
;
import
com.neotel.smfcore.core.storage.rest.mapstruct.LabelMapper
;
import
com.neotel.smfcore.core.storage.service.manager.ILabelManager
;
import
com.neotel.smfcore.core.storage.service.manager.IStoragePosManager
;
import
com.neotel.smfcore.core.storage.service.manager.impl.LabelManagerImpl
;
import
com.neotel.smfcore.core.storage.service.po.Label
;
import
com.neotel.smfcore.core.storage.service.po.StoragePos
;
import
com.neotel.smfcore.security.service.po.Group
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.Set
;
@Slf4j
@RestController
@RequiredArgsConstructor
@Api
(
tags
=
"库位:标签管理"
)
@RequestMapping
(
"api/label"
)
public
class
LabelController
{
@Autowired
private
final
ILabelManager
labelManager
;
@Autowired
private
LabelMapper
labelMapper
;
@Autowired
private
IStoragePosManager
storagePosManager
;
@ApiOperation
(
"返回全部的标签"
)
@GetMapping
(
value
=
"/all"
)
@PreAuthorize
(
"@el.check('label:list')"
)
public
ResponseEntity
<
Object
>
query
()
{
Query
query
=
new
Query
();
List
<
Label
>
labels
=
labelManager
.
findByQuery
(
query
);
return
new
ResponseEntity
<>(
labelMapper
.
toDto
(
labels
),
HttpStatus
.
OK
);
}
@ApiOperation
(
"新增标签"
)
@PostMapping
@PreAuthorize
(
"@el.check('label:add')"
)
public
ResponseEntity
<
Object
>
create
(
@RequestBody
LabelDto
labelDto
)
{
Label
resources
=
labelMapper
.
toEntity
(
labelDto
);
resources
=
labelManager
.
saveLabel
(
resources
);
return
new
ResponseEntity
<>(
HttpStatus
.
CREATED
);
}
@ApiOperation
(
"修改标签"
)
@PutMapping
@PreAuthorize
(
"@el.check('label:edit')"
)
public
ResponseEntity
<
Object
>
update
(
@RequestBody
LabelDto
labelDto
)
{
Label
resources
=
labelMapper
.
toEntity
(
labelDto
);
if
(
resources
.
getId
()
==
null
)
{
throw
new
ValidateException
(
"smfcode.valueCanotNull"
,
"{0}不能为空"
,
new
String
[]{
"ID"
}
);
}
labelManager
.
saveLabel
(
resources
);
return
new
ResponseEntity
<>(
HttpStatus
.
NO_CONTENT
);
}
@ApiOperation
(
"删除标签"
)
@DeleteMapping
@PreAuthorize
(
"@el.check('label:del')"
)
public
ResponseEntity
<
Object
>
delete
(
@RequestBody
Set
<
String
>
ids
)
{
Set
<
Group
>
menuSet
=
new
HashSet
<>();
for
(
String
id
:
ids
)
{
if
(
id
==
null
)
{
throw
new
ValidateException
(
"smfcode.valueCanotNull"
,
"{0}不能为空"
,
new
String
[]{
"ID"
}
);
}
Label
label
=
labelManager
.
get
(
id
);
if
(
label
==
null
){
throw
new
ValidateException
(
"smfcode.valueCanotNull"
,
"{0}不能为空"
,
new
String
[]{
"group"
}
);
}
//查找组下是否有设备
Query
query
=
new
Query
(
Criteria
.
where
(
"label"
).
is
(
id
));
List
<
StoragePos
>
storagePosList
=
storagePosManager
.
findByQuery
(
query
);
if
(
storagePosList
!=
null
&&
storagePosList
.
size
()
>=
1
)
{
throw
new
ValidateException
(
"smfcode.labelWithStoragePos"
,
"标签[{0}]已和库位关联"
,
new
String
[]{
label
.
getLabelName
()});
}
//删除关联
log
.
info
(
"手动删除标签:"
+
label
.
getId
()+
"-"
+
label
.
getLabelName
()+
",先删除库位关联"
);
storagePosManager
.
clearStoragePosLabel
(
label
.
getId
());
labelManager
.
delete
(
label
);
}
return
new
ResponseEntity
<>(
HttpStatus
.
OK
);
}
}
src/main/java/com/neotel/smfcore/core/storage/rest/MaterialController.java
0 → 100644
查看文件 @
abc813a
package
com
.
neotel
.
smfcore
.
core
.
storage
.
rest
;
import
com.google.common.collect.Lists
;
import
com.neotel.smfcore.core.device.util.DataCache
;
import
com.neotel.smfcore.core.storage.bean.InventoryItem
;
import
com.neotel.smfcore.core.storage.rest.dto.StorageDto
;
import
com.neotel.smfcore.core.storage.rest.query.InventoryQueryCriteria
;
import
com.neotel.smfcore.core.storage.service.po.Label
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.List
;
import
java.util.Map
;
@Slf4j
@RestController
@RequiredArgsConstructor
@Api
(
tags
=
"物料管理:策略出库,分组出库"
)
@RequestMapping
(
"api/material"
)
public
class
MaterialController
{
@Autowired
private
DataCache
dataCache
;
@ApiOperation
(
"策略出库获取库存信息"
)
@GetMapping
(
value
=
"/inventory"
)
public
ResponseEntity
<
List
<
InventoryItem
>>
inventory
(
InventoryQueryCriteria
criteria
)
{
Map
<
String
,
InventoryItem
>
inventoryItemMap
=
dataCache
.
getAllInventory
();
List
<
InventoryItem
>
list
=
Lists
.
newArrayList
(
inventoryItemMap
.
values
());
return
new
ResponseEntity
<>(
list
,
HttpStatus
.
OK
);
}
}
src/main/java/com/neotel/smfcore/core/storage/rest/dto/LabelDto.java
0 → 100644
查看文件 @
abc813a
package
com
.
neotel
.
smfcore
.
core
.
storage
.
rest
.
dto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.Setter
;
import
java.io.Serializable
;
@Getter
@Setter
public
class
LabelDto
implements
Serializable
{
@ApiModelProperty
(
value
=
"ID"
)
private
String
id
;
@ApiModelProperty
(
value
=
"标签名称"
)
private
String
labelName
;
public
String
getLabel
()
{
return
labelName
;
}
}
src/main/java/com/neotel/smfcore/core/storage/rest/mapstruct/LabelMapper.java
0 → 100644
查看文件 @
abc813a
package
com
.
neotel
.
smfcore
.
core
.
storage
.
rest
.
mapstruct
;
import
com.neotel.smfcore.common.base.BaseMapper
;
import
com.neotel.smfcore.core.storage.rest.dto.LabelDto
;
import
com.neotel.smfcore.core.storage.service.po.Label
;
import
org.mapstruct.Mapper
;
import
org.mapstruct.ReportingPolicy
;
@Mapper
(
componentModel
=
"spring"
,
unmappedTargetPolicy
=
ReportingPolicy
.
IGNORE
)
public
interface
LabelMapper
extends
BaseMapper
<
LabelDto
,
Label
>
{
}
src/main/java/com/neotel/smfcore/core/storage/service/dao/ILabelDao.java
0 → 100644
查看文件 @
abc813a
package
com
.
neotel
.
smfcore
.
core
.
storage
.
service
.
dao
;
import
com.neotel.smfcore.common.base.IBaseDao
;
public
interface
ILabelDao
extends
IBaseDao
{
}
src/main/java/com/neotel/smfcore/core/storage/service/dao/impl/LabelDaoImpl.java
0 → 100644
查看文件 @
abc813a
package
com
.
neotel
.
smfcore
.
core
.
storage
.
service
.
dao
.
impl
;
import
com.neotel.smfcore.common.base.AbstractBaseDao
;
import
com.neotel.smfcore.core.storage.service.dao.ILabelDao
;
import
com.neotel.smfcore.core.storage.service.po.Label
;
import
org.springframework.stereotype.Service
;
@Service
public
class
LabelDaoImpl
extends
AbstractBaseDao
implements
ILabelDao
{
@Override
public
Class
getEntityClass
()
{
return
Label
.
class
;
}
}
src/main/java/com/neotel/smfcore/core/storage/service/manager/ILabelManager.java
0 → 100644
查看文件 @
abc813a
package
com
.
neotel
.
smfcore
.
core
.
storage
.
service
.
manager
;
import
com.neotel.smfcore.common.base.IBaseManager
;
import
com.neotel.smfcore.core.storage.service.po.Label
;
import
com.neotel.smfcore.core.storage.service.po.Storage
;
import
java.util.List
;
public
interface
ILabelManager
extends
IBaseManager
<
Label
>
{
List
<
Label
>
findAll
();
Label
saveLabel
(
Label
resources
);
}
src/main/java/com/neotel/smfcore/core/storage/service/manager/impl/LabelManagerImpl.java
0 → 100644
查看文件 @
abc813a
package
com
.
neotel
.
smfcore
.
core
.
storage
.
service
.
manager
.
impl
;
import
com.neotel.smfcore.common.bean.PageData
;
import
com.neotel.smfcore.common.exception.ValidateException
;
import
com.neotel.smfcore.core.storage.service.dao.ILabelDao
;
import
com.neotel.smfcore.core.storage.service.manager.ILabelManager
;
import
com.neotel.smfcore.core.storage.service.po.Label
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
@Service
@Slf4j
public
class
LabelManagerImpl
implements
ILabelManager
{
@Autowired
private
ILabelDao
labelDao
;
@Override
public
List
<
Label
>
findAll
()
{
return
labelDao
.
findAll
();
}
@Override
public
Label
saveLabel
(
Label
resources
)
throws
ValidateException
{
String
logName
=
"新增标签:"
;
Criteria
c
=
Criteria
.
where
(
"labelName"
).
is
(
resources
.
getLabelName
());
if
(
resources
.
getId
()
!=
null
)
{
c
.
and
(
"id"
).
ne
(
resources
.
getId
());
logName
=
"修改标签:"
;
}
if
(
resources
.
getLabelName
()
==
null
)
{
throw
new
ValidateException
(
"smfcode.valueCanotNull"
,
"{0}不能为空"
,
new
String
[]{
"labelName"
});
}
Query
que
=
new
Query
(
c
);
List
<
Label
>
groups
=
findByQuery
(
que
);
if
(
groups
!=
null
&&
groups
.
size
()
>
0
)
{
throw
new
ValidateException
(
"smfcode.valueAlreadyExist"
,
"{0}[{1}]已存在"
,
new
String
[]{
"labelName"
,
resources
.
getLabelName
()});
}
Label
label
=
labelDao
.
save
(
resources
);
return
label
;
}
@Override
public
Label
get
(
String
id
)
{
return
labelDao
.
findOneById
(
id
);
}
@Override
public
Label
save
(
Label
object
)
throws
ValidateException
{
return
labelDao
.
save
(
object
);
}
@Override
public
void
delete
(
Label
object
)
throws
ValidateException
{
labelDao
.
removeOneById
(
object
.
getId
());
}
@Override
public
PageData
<
Label
>
findByPage
(
Query
query
,
Pageable
pageable
)
{
int
totalCount
=
labelDao
.
countByQuery
(
query
);
List
<
Label
>
list
=
labelDao
.
findByQuery
(
query
,
pageable
);
return
new
PageData
<
Label
>(
list
,
totalCount
);
}
@Override
public
List
<
Label
>
findByQuery
(
Query
query
)
{
return
labelDao
.
findByQuery
(
query
);
}
}
src/main/java/com/neotel/smfcore/core/storage/service/po/Label.java
0 → 100644
查看文件 @
abc813a
package
com
.
neotel
.
smfcore
.
core
.
storage
.
service
.
po
;
import
com.neotel.smfcore.common.base.BasePo
;
import
lombok.Data
;
import
org.springframework.data.mongodb.core.mapping.Document
;
import
java.io.Serializable
;
@Data
@Document
public
class
Label
extends
BasePo
implements
Serializable
{
private
String
labelName
;
}
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论