diff --git a/base-server/src/main/resources/logback-spring.xml b/base-server/src/main/resources/logback-spring.xml index 19d38bf5..2156fc14 100644 --- a/base-server/src/main/resources/logback-spring.xml +++ b/base-server/src/main/resources/logback-spring.xml @@ -108,4 +108,8 @@ + + + + diff --git a/sql/dm/2026-1-14物料相关表增加索引.sql b/sql/dm/2026-1-14物料相关表增加索引.sql new file mode 100644 index 00000000..2ab2ea62 --- /dev/null +++ b/sql/dm/2026-1-14物料相关表增加索引.sql @@ -0,0 +1,29 @@ +CREATE INDEX idx_hs_cls_tenant_deleted_cls + ON bse_mtrl_hs_cls(tenant_id, deleted, CLS_ID, INF_ID); + +CREATE INDEX idx_hs_cls_composite + ON bse_mtrl_hs_cls(tenant_id, deleted, CLS_ID); + +CREATE INDEX idx_mtrl_inf_tenant_deleted_id + ON bse_mtrl_inf(tenant_id, deleted, id); + +CREATE INDEX idx_mtrl_inf_tenant_deleted_cd + ON bse_mtrl_inf(tenant_id, deleted, CD, id); + +CREATE INDEX idx_mtrl_inf_cover + ON bse_mtrl_inf(tenant_id, deleted, CD, id, NAME, RMK, create_time, update_time, creator, updater); + +CREATE INDEX idx_hs_prps_tenant_deleted_inf + ON bse_mtrl_hs_prps(tenant_id, deleted, INF_ID, PRPS_ID); + +CREATE INDEX idx_hs_prps_tenant_inf_deleted + ON bse_mtrl_hs_prps(tenant_id, INF_ID, deleted); + +CREATE INDEX idx_hs_prps_cover + ON bse_mtrl_hs_prps(tenant_id, deleted, INF_ID, PRPS_ID, UNT_ID, IS_KY, IS_MTNG, SRT, DEPT_ID); + +CREATE INDEX idx_mtrl_prps_tenant_deleted_id + ON bse_mtrl_prps(tenant_id, deleted, id); + +CREATE INDEX idx_mtrl_prps_cover + ON bse_mtrl_prps(tenant_id, deleted, id, CD, NAME, UNT_QTY_ID, DIC_DAT_VAL, DAT_TP, RMK, DEPT_ID); \ No newline at end of file diff --git a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/materialhasproperties/MaterialHasPropertiesDeptController.java b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/materialhasproperties/MaterialHasPropertiesDeptController.java index 27e8fb63..08bb476a 100644 --- a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/materialhasproperties/MaterialHasPropertiesDeptController.java +++ b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/materialhasproperties/MaterialHasPropertiesDeptController.java @@ -52,7 +52,7 @@ public class MaterialHasPropertiesDeptController { public CommonResult batchSave(@Valid @RequestBody MaterialHasPropertiesBatchSaveReqVO reqVO) { Long deptId = reqVO.getDeptId(); if (deptId == null) { - throw new ServiceException(401, "部门ID不能为空"); + throw new ServiceException(500, "部门ID不能为空"); } MaterialHasPropertiesBatchSaveRespVO resp = materialHasPropertiesService.batchSave(reqVO, deptId); return success(resp); diff --git a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/materialproperties/MaterialPropertiesDeptController.java b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/materialproperties/MaterialPropertiesDeptController.java index fe37ca8e..e1237a90 100644 --- a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/materialproperties/MaterialPropertiesDeptController.java +++ b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/controller/admin/materialproperties/MaterialPropertiesDeptController.java @@ -97,7 +97,7 @@ public class MaterialPropertiesDeptController { public CommonResult getMaterialProperties(@RequestParam("id") Long id) { MaterialPropertiesRespVO materialProperties = materialPropertiesService.getMaterialProperties(id); if (materialProperties.getDeptId() == null) { - throw new ServiceException(401, "没有权限"); + throw new ServiceException(500, "没有权限"); } return success(materialProperties); } @@ -107,7 +107,7 @@ public class MaterialPropertiesDeptController { @PreAuthorize("@ss.hasPermission('base:material-properties-dept:query')") public CommonResult> getMaterialPropertiesPage(@Valid MaterialPropertiesPageReqVO pageReqVO) { if (pageReqVO.getDeptId() == null) { - throw new ServiceException(401, "部门ID不能为空"); + throw new ServiceException(500, "部门ID不能为空"); } PageResult pageResult = materialPropertiesService.getMaterialPropertiesPage(pageReqVO); return success(pageResult); @@ -118,7 +118,7 @@ public class MaterialPropertiesDeptController { @PreAuthorize("@ss.hasPermission('base:material-properties-dept:query')") public CommonResult> getMaterialPropertiesSimplePage(@Valid MaterialPropertiesSimplePageReqVO pageReqVO) { if (pageReqVO.getDeptId() == null) { - throw new ServiceException(401, "部门ID不能为空"); + throw new ServiceException(500, "部门ID不能为空"); } return success(materialPropertiesService.getMaterialPropertiesSimplePage(pageReqVO)); } @@ -130,7 +130,7 @@ public class MaterialPropertiesDeptController { public void exportMaterialPropertiesExcel(@Valid MaterialPropertiesPageReqVO pageReqVO, HttpServletResponse response) throws IOException { if (pageReqVO.getDeptId() == null) { - throw new ServiceException(401, "部门ID不能为空"); + throw new ServiceException(500, "部门ID不能为空"); } pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); List list = materialPropertiesService.getMaterialPropertiesPage(pageReqVO).getList(); diff --git a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/service/materialhasproperties/MaterialHasPropertiesServiceImpl.java b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/service/materialhasproperties/MaterialHasPropertiesServiceImpl.java index 6681d747..d9903e76 100644 --- a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/service/materialhasproperties/MaterialHasPropertiesServiceImpl.java +++ b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/service/materialhasproperties/MaterialHasPropertiesServiceImpl.java @@ -114,8 +114,14 @@ public class MaterialHasPropertiesServiceImpl implements MaterialHasPropertiesSe return resp; } // 全量替换:先删除该物料的已有属性 - materialHasPropertiesMapper.delete(new LambdaQueryWrapperX() - .eq(MaterialHasPropertiesDO::getInfomationId, infoId)); + LambdaQueryWrapperX delQuery = new LambdaQueryWrapperX<>(); + delQuery.eq(MaterialHasPropertiesDO::getInfomationId, infoId); + if (deptId == null) { + delQuery.isNull(MaterialHasPropertiesDO::getDeptId); + } else { + delQuery.eq(MaterialHasPropertiesDO::getDeptId, deptId); + } + materialHasPropertiesMapper.delete(delQuery); List properties = batchReqVO.getProperties(); if (CollUtil.isEmpty(properties)) {