diff --git a/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java b/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java index 03483395..6ae0d8ed 100644 --- a/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java +++ b/src/main/java/com/glxp/api/controller/auth/InvWarehouseController.java @@ -236,14 +236,18 @@ public class InvWarehouseController extends BaseController { if (invWarehouseEntity.getId() == null) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); } + InvWarehouseEntity originEntity = invWarehouseService.findByInvSubByCode(invWarehouseEntity.getCode()); - Integer userCount = warehouseUserService.countUserBySubInvCode(invWarehouseEntity.getCode()); - if (userCount > 0) { - return ResultVOUtils.error(500, "修改失败,请先移除该仓库关联用户!"); + if (!originEntity.getParentId().equals(invWarehouseEntity.getParentId()) || !originEntity.getParentCode().equals(invWarehouseEntity.getParentCode())) { + Integer userCount = warehouseUserService.countUserBySubInvCode(invWarehouseEntity.getCode()); + if (userCount > 0) { + return ResultVOUtils.error(500, "修改部门或上级仓库时,请先移除该仓库关联用户!"); + } } + // 先判断是否有相同名字的仓库 - boolean checkResult = invWarehouseService.checkDuplicateName(invWarehouseEntity.getParentId(), invWarehouseEntity.getName()); + boolean checkResult = invWarehouseService.updateCheckExit(invWarehouseEntity); if (checkResult) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "仓库名称重复!"); } diff --git a/src/main/java/com/glxp/api/controller/basic/BasicBusTypeChangeController.java b/src/main/java/com/glxp/api/controller/basic/BasicBusTypeChangeController.java index 942b217f..af9e37f5 100644 --- a/src/main/java/com/glxp/api/controller/basic/BasicBusTypeChangeController.java +++ b/src/main/java/com/glxp/api/controller/basic/BasicBusTypeChangeController.java @@ -66,7 +66,7 @@ public class BasicBusTypeChangeController { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } - boolean result = basicBusTypeChangeService.verifyExists(basicBusTypeChangeEntity); + boolean result = basicBusTypeChangeService.insertVerifyExists(basicBusTypeChangeEntity); if (result) { return ResultVOUtils.error(ResultEnum.DATA_REPEAT, "重复添加"); } diff --git a/src/main/java/com/glxp/api/controller/basic/BasicBusTypePreController.java b/src/main/java/com/glxp/api/controller/basic/BasicBusTypePreController.java index bc21f932..82b1cf4e 100644 --- a/src/main/java/com/glxp/api/controller/basic/BasicBusTypePreController.java +++ b/src/main/java/com/glxp/api/controller/basic/BasicBusTypePreController.java @@ -1,6 +1,7 @@ package com.glxp.api.controller.basic; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageInfo; import com.glxp.api.annotation.Log; @@ -208,6 +209,7 @@ public class BasicBusTypePreController { InvWarehouseEntity invWarehouse = invWarehouseService.findByInvSubByCode(basicBusTypePreEntity.getInvCode()); basicBusTypePreEntity.setDeptCode(invWarehouse.getParentId()); } + basicBusTypePreEntity.setId(IdUtil.getSnowflakeNextId()); basicBusTypePreService.insertBusChangeType(basicBusTypePreEntity); } else { ResultVOUtils.error(999, "参数错误"); diff --git a/src/main/java/com/glxp/api/controller/inout/ioCodeRelController.java b/src/main/java/com/glxp/api/controller/inout/ioCodeRelController.java index cbb788bf..972178a2 100644 --- a/src/main/java/com/glxp/api/controller/inout/ioCodeRelController.java +++ b/src/main/java/com/glxp/api/controller/inout/ioCodeRelController.java @@ -57,6 +57,9 @@ public class ioCodeRelController { if (StrUtil.isNotEmpty(code)) { UdiEntity udiEntity = FilterUdiUtils.getGS1Udi(code); + if(udiEntity == null){ + return ResultVOUtils.error(500,"UDI码格式错误!"); + } UdiProductEntity udiProductEntity = udiProductService.findByNameCode(udiEntity.getUdi()); if (udiProductEntity.getPackLevel() != null) { if (Integer.valueOf(udiProductEntity.getPackLevel()) > 1) { diff --git a/src/main/java/com/glxp/api/service/auth/InvWarehouseService.java b/src/main/java/com/glxp/api/service/auth/InvWarehouseService.java index 18fe59c1..e04bf4ac 100644 --- a/src/main/java/com/glxp/api/service/auth/InvWarehouseService.java +++ b/src/main/java/com/glxp/api/service/auth/InvWarehouseService.java @@ -16,12 +16,11 @@ public interface InvWarehouseService { InvWarehouseEntity selectByThrCode(String code, String thirdSys); - InvWarehouseEntity getByWareId( String id); + InvWarehouseEntity getByWareId(String id); List getByWarePcode(@Param("parentCode") String parentCode); - List filterInvSubWarehouse(FilterInvSubWarehouseRequest filterInvSubWarehouseRequest); List filterGroupInvSub(FilterInvWarehouseRequest filterInvSubWarehouseRequest); @@ -42,6 +41,8 @@ public interface InvWarehouseService { public boolean checkDuplicateName(String parentId, String name); + boolean updateCheckExit(InvWarehouseEntity invWarehouseEntity); + /** * 根据分库编码,查询分库名称 * @@ -88,7 +89,8 @@ public interface InvWarehouseService { * @return */ List findInvListByUser(FilterInvWarehouseRequest filterInvWarehouseRequest); - String selectParentIdByCode( String invCode); + + String selectParentIdByCode(String invCode); List selectInvById(List InvList); diff --git a/src/main/java/com/glxp/api/service/auth/impl/InvWarehouseServiceImpl.java b/src/main/java/com/glxp/api/service/auth/impl/InvWarehouseServiceImpl.java index 382261d8..5ebe8ac1 100644 --- a/src/main/java/com/glxp/api/service/auth/impl/InvWarehouseServiceImpl.java +++ b/src/main/java/com/glxp/api/service/auth/impl/InvWarehouseServiceImpl.java @@ -3,6 +3,7 @@ package com.glxp.api.service.auth.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ReflectUtil; import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageHelper; import com.glxp.api.dao.auth.InvWarehouseDao; import com.glxp.api.dao.thrsys.ThrSystemDao; @@ -142,6 +143,12 @@ public class InvWarehouseServiceImpl implements InvWarehouseService { return false; } + @Override + public boolean updateCheckExit(InvWarehouseEntity invWarehouseEntity) { + return invWarehouseDao.exists(new QueryWrapper().eq("parentId", invWarehouseEntity.getParentId()) + .eq("name", invWarehouseEntity.getName()).ne("id", invWarehouseEntity.getId())); + } + @Override public String getSubInvName(String subInvCode) { if (StrUtil.isBlank(subInvCode)) { diff --git a/src/main/java/com/glxp/api/service/auth/impl/WarehouseBussinessTypeServiceImpl.java b/src/main/java/com/glxp/api/service/auth/impl/WarehouseBussinessTypeServiceImpl.java index d4b70b79..2890ef3b 100644 --- a/src/main/java/com/glxp/api/service/auth/impl/WarehouseBussinessTypeServiceImpl.java +++ b/src/main/java/com/glxp/api/service/auth/impl/WarehouseBussinessTypeServiceImpl.java @@ -1,6 +1,7 @@ package com.glxp.api.service.auth.impl; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.IdUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageHelper; import com.glxp.api.dao.auth.WarehouseBussinessTypeDao; @@ -64,6 +65,7 @@ public class WarehouseBussinessTypeServiceImpl implements WarehouseBussinessType entity.setCode(code); entity.setAction(bussinessTypeEntity.getAction()); entity.setName(bussinessTypeEntity.getName()); + entity.setId(IdUtil.getSnowflakeNextId()); warehouseBussinessTypeEntities.add(entity); }); diff --git a/src/main/java/com/glxp/api/service/basic/IBasicBusTypeChangeService.java b/src/main/java/com/glxp/api/service/basic/IBasicBusTypeChangeService.java index c5d9e32c..1cb2d3a6 100644 --- a/src/main/java/com/glxp/api/service/basic/IBasicBusTypeChangeService.java +++ b/src/main/java/com/glxp/api/service/basic/IBasicBusTypeChangeService.java @@ -53,4 +53,7 @@ public interface IBasicBusTypeChangeService extends IService wrapper = new QueryWrapper<>(); + wrapper.eq("originAction", basicBusTypeChangeEntity.getOriginAction()) + .eq("targetAction", basicBusTypeChangeEntity.getTargetAction()) + .eq("originName", basicBusTypeChangeEntity.getOriginName()).ne("id", basicBusTypeChangeEntity.getId()); + return basicBusTypeChangeDao.exists(wrapper); + } + + + @Override + public boolean insertVerifyExists(BasicBusTypeChangeEntity basicBusTypeChangeEntity) { QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("originAction", basicBusTypeChangeEntity.getOriginAction()) .eq("targetAction", basicBusTypeChangeEntity.getTargetAction()) .eq("originName", basicBusTypeChangeEntity.getOriginName()); - List list = basicBusTypeChangeDao.selectList(wrapper); - if (CollUtil.isNotEmpty(list)) { - if (null != basicBusTypeChangeEntity.getId()) { - for (BasicBusTypeChangeEntity busTypeChangeEntity : list) { - if (busTypeChangeEntity.getId() != basicBusTypeChangeEntity.getId()) { - return true; - } - } - } else { - return true; - } - } - return false; + return basicBusTypeChangeDao.exists(wrapper); } private void setUpdateInfo(BasicBusTypeChangeEntity basicBusTypeChangeEntity) {