diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/SpsSyncUploadController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/SpsSyncUploadController.java index 820fb58..6cde1f5 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/SpsSyncUploadController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/SpsSyncUploadController.java @@ -18,6 +18,7 @@ import com.glxp.sale.admin.entity.inout.OrderEntity; import com.glxp.sale.admin.entity.inout.WarehouseBussinessTypeEntity; import com.glxp.sale.admin.entity.inout.WarehouseEntity; import com.glxp.sale.admin.entity.inout.WarehouseUserEntity; +import com.glxp.sale.admin.entity.inventory.InvSubWarehouseEntity; import com.glxp.sale.admin.entity.inventory.InvWarehouseEntity; import com.glxp.sale.admin.entity.thrsys.*; import com.glxp.sale.admin.res.basic.SpsSyncBusResponse; @@ -27,6 +28,7 @@ import com.glxp.sale.admin.service.basic.BasicDownloadService; import com.glxp.sale.admin.service.basic.BussinessChangeTypeService; import com.glxp.sale.admin.service.basic.EntrustReceService; import com.glxp.sale.admin.service.inout.OrderService; +import com.glxp.sale.admin.service.inventory.InvSubWarehouseService; import com.glxp.sale.admin.service.inventory.InvWarehouseService; import com.glxp.sale.admin.service.param.SystemParamConfigService; import com.glxp.sale.admin.thread.BasicBackUpdateProductService; @@ -73,6 +75,8 @@ public class SpsSyncUploadController { private BasicDownloadService basicDownloadService; @Resource private SystemParamConfigService systemParamConfigService; + @Resource + InvSubWarehouseService invSubWarehouseService; @PostMapping("sps/sync/basic/upload") public BaseResponse findProductInfo(@RequestBody SpsSyncDataResponse syncDataResponse) { @@ -132,12 +136,17 @@ public class SpsSyncUploadController { //仓库字典导入 if (CollUtil.isNotEmpty(syncDataResponse.getInvWarehouseEntities())) { - List invWarehouseEntities = syncDataResponse.getInvWarehouseEntities(); - for (InvWarehouseEntity invWarehouseEntity : invWarehouseEntities) { + for (InvWarehouseEntity invWarehouseEntity : syncDataResponse.getInvWarehouseEntities()) { invWarehouseEntity.setUpdateTime(null); - warehouseUserDao.deleteByCode(invWarehouseEntity.getCode()); - warehouseBussinessTypeDao.deleteByCode(invWarehouseEntity.getCode()); + List invSubWarehouseEntities = invSubWarehouseService.findByParentId(invWarehouseEntity.getCode()); + if (CollUtil.isNotEmpty(invSubWarehouseEntities)) { + for (InvSubWarehouseEntity invSubWarehouseEntity : invSubWarehouseEntities) { + warehouseUserDao.deleteByCode(invSubWarehouseEntity.getCode()); + warehouseBussinessTypeDao.deleteByCode(invSubWarehouseEntity.getCode()); + } + } + invSubWarehouseService.deleteByParentCode(invWarehouseEntity.getCode()); } invWarehouseService.importInvWarehouse(syncDataResponse.getInvWarehouseEntities()); remark.append("仓库字典:").append(syncDataResponse.getInvWarehouseEntities().size()).append("条\n"); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/inventory/InvWarehouseController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/inventory/InvWarehouseController.java index 09c0b96..4d22eea 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/inventory/InvWarehouseController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/inventory/InvWarehouseController.java @@ -223,7 +223,7 @@ public class InvWarehouseController { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } - if (invWarehouseEntity.getPid() == null) {//仓库 + if (invWarehouseEntity.getPid() == null || invWarehouseEntity.getPid() == 0) {//仓库 invWarehouseEntity.setPid(0); // 默认设置 FilterInvWarehouseRequest filterInvWarehouseRequest = new FilterInvWarehouseRequest(); filterInvWarehouseRequest.setPid(invWarehouseEntity.getPid()); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/dao/inventory/InvSubWarehouseDao.java b/api-admin/src/main/java/com/glxp/sale/admin/dao/inventory/InvSubWarehouseDao.java index 97c7089..35790ed 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/dao/inventory/InvSubWarehouseDao.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/dao/inventory/InvSubWarehouseDao.java @@ -26,4 +26,7 @@ public interface InvSubWarehouseDao { boolean deleteById(String id); + boolean deleteByParentCode(@Param("code") String code); + + } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/InvSubWarehouseService.java b/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/InvSubWarehouseService.java index 3548bc4..a6aad3b 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/InvSubWarehouseService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/InvSubWarehouseService.java @@ -27,5 +27,6 @@ public interface InvSubWarehouseService { boolean deleteById(String id); + boolean deleteByParentCode(String code); } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/impl/InvSubWarehouseServiceImpl.java b/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/impl/InvSubWarehouseServiceImpl.java index 109f67c..5352b55 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/impl/InvSubWarehouseServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/impl/InvSubWarehouseServiceImpl.java @@ -96,4 +96,9 @@ public class InvSubWarehouseServiceImpl implements InvSubWarehouseService { public boolean deleteById(String id) { return invSubWarehouseDao.deleteById(id); } + + @Override + public boolean deleteByParentCode(String code) { + return invSubWarehouseDao.deleteByParentCode(code); + } } diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/BasicExportTimeDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/BasicExportTimeDao.xml index e68cc16..0cefdf7 100644 --- a/api-admin/src/main/resources/mybatis/mapper/basic/BasicExportTimeDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/basic/BasicExportTimeDao.xml @@ -14,6 +14,7 @@ and `key` = #{key} + order by updateTime desc diff --git a/api-admin/src/main/resources/mybatis/mapper/inventory/InvSubWarehouseDao.xml b/api-admin/src/main/resources/mybatis/mapper/inventory/InvSubWarehouseDao.xml index ebcbd63..c1c1a0d 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inventory/InvSubWarehouseDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inventory/InvSubWarehouseDao.xml @@ -88,7 +88,11 @@ FROM inv_warehouse_sub WHERE id = #{id} - + + DELETE + FROM inv_warehouse_sub + WHERE parentId = #{code} + UPDATE inv_warehouse_sub