|
|
|
@ -53,6 +53,15 @@ public class InvSpaceServiceImpl implements InvSpaceService {
|
|
|
|
|
if (!"success".equals(result)) {
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, result);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//获取当前仓库下的最大货位编码
|
|
|
|
|
String maxSpaceCode = invSpaceDao.getMaxSpaceCode(invSpace.getInvWarehouseCode());
|
|
|
|
|
if (StrUtil.isBlank(maxSpaceCode)) {
|
|
|
|
|
maxSpaceCode = "0000";
|
|
|
|
|
}
|
|
|
|
|
String spaceCode = getSpaceCode(maxSpaceCode);
|
|
|
|
|
invSpace.setCode(spaceCode);
|
|
|
|
|
Date date = new Date();
|
|
|
|
|
AuthAdmin user = customerService.getUserBean();
|
|
|
|
|
invSpace.setCreateTime(date);
|
|
|
|
@ -71,8 +80,8 @@ public class InvSpaceServiceImpl implements InvSpaceService {
|
|
|
|
|
*/
|
|
|
|
|
private static BaseResponse verifySpaceParams(InvSpace invSpace) {
|
|
|
|
|
//校验参数
|
|
|
|
|
if (StrUtil.isBlank(invSpace.getCode()) || StrUtil.isBlank(invSpace.getName())) {
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "货位名称和货位号不能为空!");
|
|
|
|
|
if (StrUtil.isBlank(invSpace.getName())) {
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "货位名称不能为空!");
|
|
|
|
|
}
|
|
|
|
|
if (StrUtil.isBlank(invSpace.getInvStorageCode()) || StrUtil.isBlank(invSpace.getInvWarehouseCode())) {
|
|
|
|
|
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "请指定所属仓库和分库!");
|
|
|
|
@ -142,22 +151,8 @@ public class InvSpaceServiceImpl implements InvSpaceService {
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public String verifyExist(InvSpace invSpace) {
|
|
|
|
|
//先检查货位号是否重复
|
|
|
|
|
List<InvSpace> invSpaces = invSpaceDao.selectByInvCode(invSpace.getInvStorageCode(), invSpace.getInvWarehouseCode(), invSpace.getCode());
|
|
|
|
|
if (CollUtil.isNotEmpty(invSpaces)) {
|
|
|
|
|
//判断ID是否为空,如果为空表示数据为新增货位,是重复添加-
|
|
|
|
|
if (null == invSpace.getId()) {
|
|
|
|
|
return "货位信息已存在";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//此分库下,货位号重复,判断ID是否与当前货位相同
|
|
|
|
|
for (InvSpace space : invSpaces) {
|
|
|
|
|
if (!space.getId().equals(invSpace.getId())) {
|
|
|
|
|
return "货位信息已存在";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
List<InvSpace> list = invSpaceDao.selectExist(invSpace);
|
|
|
|
|
//判断此货位名称是否重复
|
|
|
|
|
List<InvSpace> list = invSpaceDao.selectExistByName(invSpace);
|
|
|
|
|
if (CollUtil.isNotEmpty(list)) {
|
|
|
|
|
if (null == invSpace.getId()) {
|
|
|
|
|
return "货位信息已存在";
|
|
|
|
@ -171,4 +166,16 @@ public class InvSpaceServiceImpl implements InvSpaceService {
|
|
|
|
|
return "success";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 获取新的货位编码,基于传入的最大编码参数+1,并拼接成4位数返回
|
|
|
|
|
*
|
|
|
|
|
* @param maxSpaceCode 当前最大货位编码
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public String getSpaceCode(String maxSpaceCode) {
|
|
|
|
|
Long l = Long.parseLong(maxSpaceCode) + 1L;
|
|
|
|
|
return String.format("%04d", l);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|