From 1e5fe980b40480cc37f0ae23cf9f773ab9270fd0 Mon Sep 17 00:00:00 2001 From: z Date: Thu, 7 May 2026 17:41:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=93=E5=8C=BA=EF=BC=8C=E4=BB=93=E5=82=A8?= =?UTF-8?q?=EF=BC=8C=E5=B7=A5=E8=89=BA=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../checkitem/vo/CheckItemPageReqVO.java | 3 +- .../controller/admin/proc/ProcController.java | 8 + .../controller/admin/proc/vo/ProcRespVO.java | 2 + .../admin/storearea/StoreAreaController.java | 95 ++++++ .../storearea/vo/StoreAreaPageReqVO.java | 45 +++ .../admin/storearea/vo/StoreAreaRespVO.java | 57 ++++ .../storearea/vo/StoreAreaSaveReqVO.java | 37 +++ .../storehouse/StoreHouseController.java | 199 ++++++------ .../storehouse/vo/StoreHousePageReqVO.java | 5 +- .../admin/techproc/vo/TechProcRespVO.java | 4 +- .../dal/dataobject/checkitem/CheckItemDO.java | 5 +- .../biz/dal/dataobject/proc/ProcDO.java | 5 +- .../dal/dataobject/storearea/StoreAreaDO.java | 59 ++++ .../dal/dataobject/techproc/TechProcDO.java | 4 +- .../dal/mysql/checkitem/CheckItemMapper.java | 20 +- .../inspplanitem/InspPlanItemMapper.java | 5 + .../module/biz/dal/mysql/proc/ProcMapper.java | 16 +- .../dal/mysql/storearea/StoreAreaMapper.java | 39 +++ .../mysql/storehouse/StoreHouseMapper.java | 13 +- .../dal/mysql/techproc/TechProcMapper.java | 27 +- .../checkitem/CheckItemServiceImpl.java | 39 ++- .../module/biz/service/proc/ProcService.java | 1 + .../biz/service/proc/ProcServiceImpl.java | 6 + .../service/storearea/StoreAreaService.java | 55 ++++ .../storearea/StoreAreaServiceImpl.java | 83 +++++ .../service/storehouse/StoreHouseService.java | 111 +++---- .../storehouse/StoreHouseServiceImpl.java | 22 +- .../service/techproc/TechProcServiceImpl.java | 12 +- .../src/main/resources/application-local.yaml | 2 +- .../src/main/resources/application-pro.yaml | 2 +- .../src/api/biz/proc/index.ts | 92 +++--- .../src/api/biz/storearea/index.ts | 42 +++ .../src/api/biz/storehouse/index.ts | 84 ++--- mes-ui/mes-ui-admin-vue3/src/utils/dict.ts | 2 +- .../src/views/biz/checkitem/CheckItemForm.vue | 290 +++++++++++++----- .../src/views/biz/checkitem/index.vue | 179 +++-------- .../src/views/biz/storearea/StoreAreaForm.vue | 151 +++++++++ .../src/views/biz/storearea/index.vue | 202 ++++++++++++ .../views/biz/storehouse/StoreHouseForm.vue | 67 ++-- .../src/views/biz/storehouse/index.vue | 110 +++---- .../src/views/biz/techproc/TechProcForm.vue | 150 +++++++-- .../src/views/biz/techproc/index.vue | 121 ++++---- 42 files changed, 1809 insertions(+), 662 deletions(-) create mode 100644 mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/StoreAreaController.java create mode 100644 mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/vo/StoreAreaPageReqVO.java create mode 100644 mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/vo/StoreAreaRespVO.java create mode 100644 mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/vo/StoreAreaSaveReqVO.java create mode 100644 mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/storearea/StoreAreaDO.java create mode 100644 mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/storearea/StoreAreaMapper.java create mode 100644 mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storearea/StoreAreaService.java create mode 100644 mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storearea/StoreAreaServiceImpl.java create mode 100644 mes-ui/mes-ui-admin-vue3/src/api/biz/storearea/index.ts create mode 100644 mes-ui/mes-ui-admin-vue3/src/views/biz/storearea/StoreAreaForm.vue create mode 100644 mes-ui/mes-ui-admin-vue3/src/views/biz/storearea/index.vue diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/checkitem/vo/CheckItemPageReqVO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/checkitem/vo/CheckItemPageReqVO.java index 257f030..fd73d30 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/checkitem/vo/CheckItemPageReqVO.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/checkitem/vo/CheckItemPageReqVO.java @@ -47,5 +47,6 @@ public class CheckItemPageReqVO extends PageParam { @Schema(description = "打印是否取平均值") private String printAvgValues; - + @Schema(description = "编号") + private String itemNo; } diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/proc/ProcController.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/proc/ProcController.java index 73c7369..6cfb9af 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/proc/ProcController.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/proc/ProcController.java @@ -79,4 +79,12 @@ public class ProcController { return success(procService.getProcDropdown(keyWord)); } + // 下拉框 + @GetMapping("/getProcList") + @Operation(summary = "获得工序不分页") + @PreAuthorize("@ss.hasPermission('biz:proc:query')") + public CommonResult> getProcList() { + return success(procService.getProcList()); + } + } diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/proc/vo/ProcRespVO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/proc/vo/ProcRespVO.java index 2c64ce9..50c4cfb 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/proc/vo/ProcRespVO.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/proc/vo/ProcRespVO.java @@ -38,5 +38,7 @@ public class ProcRespVO { @Schema(description = "备注", example = "你猜") @ExcelProperty("备注") private String remark; + private String creatorName; + } diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/StoreAreaController.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/StoreAreaController.java new file mode 100644 index 0000000..601ca3e --- /dev/null +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/StoreAreaController.java @@ -0,0 +1,95 @@ +package com.ningxia.yunxi.chemmes.module.biz.controller.admin.storearea; + +import org.springframework.web.bind.annotation.*; +import javax.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import javax.validation.constraints.*; +import javax.validation.*; +import javax.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import com.ningxia.yunxi.chemmes.framework.common.pojo.PageParam; +import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult; +import com.ningxia.yunxi.chemmes.framework.common.pojo.CommonResult; +import com.ningxia.yunxi.chemmes.framework.common.util.object.BeanUtils; +import static com.ningxia.yunxi.chemmes.framework.common.pojo.CommonResult.success; + +import com.ningxia.yunxi.chemmes.framework.excel.core.util.ExcelUtils; + +import com.ningxia.yunxi.chemmes.framework.operatelog.core.annotations.OperateLog; +import static com.ningxia.yunxi.chemmes.framework.operatelog.core.enums.OperateTypeEnum.*; + +import com.ningxia.yunxi.chemmes.module.biz.controller.admin.storearea.vo.*; +import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.storearea.StoreAreaDO; +import com.ningxia.yunxi.chemmes.module.biz.service.storearea.StoreAreaService; + +@Tag(name = "管理后台 - 库区主数据") +@RestController +@RequestMapping("/biz/store-area") +@Validated +public class StoreAreaController { + + @Resource + private StoreAreaService storeAreaService; + + @PostMapping("/create") + @Operation(summary = "创建库区主数据") + @PreAuthorize("@ss.hasPermission('biz:store-area:create')") + public CommonResult createStoreArea(@Valid @RequestBody StoreAreaSaveReqVO createReqVO) { + return success(storeAreaService.createStoreArea(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新库区主数据") + @PreAuthorize("@ss.hasPermission('biz:store-area:update')") + public CommonResult updateStoreArea(@Valid @RequestBody StoreAreaSaveReqVO updateReqVO) { + storeAreaService.updateStoreArea(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除库区主数据") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('biz:store-area:delete')") + public CommonResult deleteStoreArea(@RequestParam("id") Integer id) { + storeAreaService.deleteStoreArea(id); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得库区主数据") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('biz:store-area:query')") + public CommonResult getStoreArea(@RequestParam("id") Integer id) { + StoreAreaDO storeArea = storeAreaService.getStoreArea(id); + return success(BeanUtils.toBean(storeArea, StoreAreaRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得库区主数据分页") + @PreAuthorize("@ss.hasPermission('biz:store-area:query')") + public CommonResult> getStoreAreaPage(@Valid StoreAreaPageReqVO pageReqVO) { + PageResult pageResult = storeAreaService.getStoreAreaPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, StoreAreaRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出库区主数据 Excel") + @PreAuthorize("@ss.hasPermission('biz:store-area:export')") + @OperateLog(type = EXPORT) + public void exportStoreAreaExcel(@Valid StoreAreaPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = storeAreaService.getStoreAreaPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "库区主数据.xls", "数据", StoreAreaRespVO.class, + BeanUtils.toBean(list, StoreAreaRespVO.class)); + } + +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/vo/StoreAreaPageReqVO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/vo/StoreAreaPageReqVO.java new file mode 100644 index 0000000..53e9c54 --- /dev/null +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/vo/StoreAreaPageReqVO.java @@ -0,0 +1,45 @@ +package com.ningxia.yunxi.chemmes.module.biz.controller.admin.storearea.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import com.ningxia.yunxi.chemmes.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static com.ningxia.yunxi.chemmes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 库区主数据分页 Request VO") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class StoreAreaPageReqVO extends PageParam { + + @Schema(description = "创建人", example = "32562") + private String fCreatorUserId; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + + @Schema(description = "库区编码") + private String storeAreCd; + + @Schema(description = "库区名称", example = "芋艿") + private String storeAreaName; + + @Schema(description = "状态(1启用 2 未启用)", example = "1") + private Integer enabledStatus; + + @Schema(description = "备注", example = "你说的对") + private String remark; + + @Schema(description = "仓库id", example = "23515") + private Integer storeHouseId; + + @Schema(description = "仓库类型(1 原料库 2 在制品库 3 成品库)", example = "1") + private String storeType; + @Schema(description = "仓库名称") + private String storeHouseName; + +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/vo/StoreAreaRespVO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/vo/StoreAreaRespVO.java new file mode 100644 index 0000000..862dc75 --- /dev/null +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/vo/StoreAreaRespVO.java @@ -0,0 +1,57 @@ +package com.ningxia.yunxi.chemmes.module.biz.controller.admin.storearea.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; +import com.ningxia.yunxi.chemmes.framework.excel.core.annotations.DictFormat; +import com.ningxia.yunxi.chemmes.framework.excel.core.convert.DictConvert; + +@Schema(description = "管理后台 - 库区主数据 Response VO") +@Data +@ExcelIgnoreUnannotated +public class StoreAreaRespVO { + + @Schema(description = "自增字段", requiredMode = Schema.RequiredMode.REQUIRED, example = "5665") + @ExcelProperty("自增字段") + private Integer id; + + @Schema(description = "创建人", example = "32562") + @ExcelProperty("创建人") + private String fCreatorUserId; + + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("创建时间") + private LocalDateTime createTime; + + @Schema(description = "库区编码") + @ExcelProperty("库区编码") + private String storeAreCd; + + @Schema(description = "库区名称", example = "芋艿") + @ExcelProperty("库区名称") + private String storeAreaName; + + @Schema(description = "状态(1启用 2 未启用)", example = "1") + @ExcelProperty(value = "状态(1启用 2 未启用)", converter = DictConvert.class) + @DictFormat("system_status") // TODO 代码优化:建议设置到对应的 DictTypeConstants 枚举类中 + private Integer enabledStatus; + + @Schema(description = "备注", example = "你说的对") + @ExcelProperty("备注") + private String remark; + + @Schema(description = "仓库id", example = "23515") + @ExcelProperty("仓库id") + private Integer storeHouseId; + + @Schema(description = "仓库类型(1 原料库 2 在制品库 3 成品库)", example = "1") + @ExcelProperty("仓库类型(1 原料库 2 在制品库 3 成品库)") + private String storeType; + + private String storeHouseName; + +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/vo/StoreAreaSaveReqVO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/vo/StoreAreaSaveReqVO.java new file mode 100644 index 0000000..51adfd6 --- /dev/null +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storearea/vo/StoreAreaSaveReqVO.java @@ -0,0 +1,37 @@ +package com.ningxia.yunxi.chemmes.module.biz.controller.admin.storearea.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import javax.validation.constraints.*; +import java.util.*; + +@Schema(description = "管理后台 - 库区主数据新增/修改 Request VO") +@Data +public class StoreAreaSaveReqVO { + + @Schema(description = "自增字段", requiredMode = Schema.RequiredMode.REQUIRED, example = "5665") + private Integer id; + + @Schema(description = "创建人", example = "32562") + private String fCreatorUserId; + + @Schema(description = "库区编码") + private String storeAreCd; + + @Schema(description = "库区名称", example = "芋艿") + private String storeAreaName; + + @Schema(description = "状态(1启用 2 未启用)", example = "1") + private Integer enabledStatus; + + @Schema(description = "备注", example = "你说的对") + private String remark; + + @Schema(description = "仓库id", example = "23515") + private Integer storeHouseId; + + @Schema(description = "仓库类型(1 原料库 2 在制品库 3 成品库)", example = "1") + private String storeType; + +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storehouse/StoreHouseController.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storehouse/StoreHouseController.java index 1dff606..2ac87fd 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storehouse/StoreHouseController.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storehouse/StoreHouseController.java @@ -1,95 +1,104 @@ -package com.ningxia.yunxi.chemmes.module.biz.controller.admin.storehouse; - -import org.springframework.web.bind.annotation.*; -import javax.annotation.Resource; -import org.springframework.validation.annotation.Validated; -import org.springframework.security.access.prepost.PreAuthorize; -import io.swagger.v3.oas.annotations.tags.Tag; -import io.swagger.v3.oas.annotations.Parameter; -import io.swagger.v3.oas.annotations.Operation; - -import javax.validation.constraints.*; -import javax.validation.*; -import javax.servlet.http.*; -import java.util.*; -import java.io.IOException; - -import com.ningxia.yunxi.chemmes.framework.common.pojo.PageParam; -import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult; -import com.ningxia.yunxi.chemmes.framework.common.pojo.CommonResult; -import com.ningxia.yunxi.chemmes.framework.common.util.object.BeanUtils; -import static com.ningxia.yunxi.chemmes.framework.common.pojo.CommonResult.success; - -import com.ningxia.yunxi.chemmes.framework.excel.core.util.ExcelUtils; - -import com.ningxia.yunxi.chemmes.framework.operatelog.core.annotations.OperateLog; -import static com.ningxia.yunxi.chemmes.framework.operatelog.core.enums.OperateTypeEnum.*; - -import com.ningxia.yunxi.chemmes.module.biz.controller.admin.storehouse.vo.*; -import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.storehouse.StoreHouseDO; -import com.ningxia.yunxi.chemmes.module.biz.service.storehouse.StoreHouseService; - -@Tag(name = "管理后台 - 仓储主数据") -@RestController -@RequestMapping("/biz/store-house") -@Validated -public class StoreHouseController { - - @Resource - private StoreHouseService storeHouseService; - - @PostMapping("/create") - @Operation(summary = "创建仓储主数据") - @PreAuthorize("@ss.hasPermission('biz:store-house:create')") - public CommonResult createStoreHouse(@Valid @RequestBody StoreHouseSaveReqVO createReqVO) { - return success(storeHouseService.createStoreHouse(createReqVO)); - } - - @PutMapping("/update") - @Operation(summary = "更新仓储主数据") - @PreAuthorize("@ss.hasPermission('biz:store-house:update')") - public CommonResult updateStoreHouse(@Valid @RequestBody StoreHouseSaveReqVO updateReqVO) { - storeHouseService.updateStoreHouse(updateReqVO); - return success(true); - } - - @DeleteMapping("/delete") - @Operation(summary = "删除仓储主数据") - @Parameter(name = "id", description = "编号", required = true) - @PreAuthorize("@ss.hasPermission('biz:store-house:delete')") - public CommonResult deleteStoreHouse(@RequestParam("id") Integer id) { - storeHouseService.deleteStoreHouse(id); - return success(true); - } - - @GetMapping("/get") - @Operation(summary = "获得仓储主数据") - @Parameter(name = "id", description = "编号", required = true, example = "1024") - @PreAuthorize("@ss.hasPermission('biz:store-house:query')") - public CommonResult getStoreHouse(@RequestParam("id") Integer id) { - StoreHouseDO storeHouse = storeHouseService.getStoreHouse(id); - return success(BeanUtils.toBean(storeHouse, StoreHouseRespVO.class)); - } - - @GetMapping("/page") - @Operation(summary = "获得仓储主数据分页") - @PreAuthorize("@ss.hasPermission('biz:store-house:query')") - public CommonResult> getStoreHousePage(@Valid StoreHousePageReqVO pageReqVO) { - PageResult pageResult = storeHouseService.getStoreHousePage(pageReqVO); - return success(BeanUtils.toBean(pageResult, StoreHouseRespVO.class)); - } - - @GetMapping("/export-excel") - @Operation(summary = "导出仓储主数据 Excel") - @PreAuthorize("@ss.hasPermission('biz:store-house:export')") - @OperateLog(type = EXPORT) - public void exportStoreHouseExcel(@Valid StoreHousePageReqVO pageReqVO, - HttpServletResponse response) throws IOException { - pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); - List list = storeHouseService.getStoreHousePage(pageReqVO).getList(); - // 导出 Excel - ExcelUtils.write(response, "仓储主数据.xls", "数据", StoreHouseRespVO.class, - BeanUtils.toBean(list, StoreHouseRespVO.class)); - } - -} \ No newline at end of file +package com.ningxia.yunxi.chemmes.module.biz.controller.admin.storehouse; + +import org.springframework.web.bind.annotation.*; +import javax.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import javax.validation.constraints.*; +import javax.validation.*; +import javax.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import com.ningxia.yunxi.chemmes.framework.common.pojo.PageParam; +import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult; +import com.ningxia.yunxi.chemmes.framework.common.pojo.CommonResult; +import com.ningxia.yunxi.chemmes.framework.common.util.object.BeanUtils; +import static com.ningxia.yunxi.chemmes.framework.common.pojo.CommonResult.success; + +import com.ningxia.yunxi.chemmes.framework.excel.core.util.ExcelUtils; + +import com.ningxia.yunxi.chemmes.framework.operatelog.core.annotations.OperateLog; +import static com.ningxia.yunxi.chemmes.framework.operatelog.core.enums.OperateTypeEnum.*; + +import com.ningxia.yunxi.chemmes.module.biz.controller.admin.storehouse.vo.*; +import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.storehouse.StoreHouseDO; +import com.ningxia.yunxi.chemmes.module.biz.service.storehouse.StoreHouseService; + +@Tag(name = "管理后台 - 仓储主数据") +@RestController +@RequestMapping("/biz/store-house") +@Validated +public class StoreHouseController { + + @Resource + private StoreHouseService storeHouseService; + + @PostMapping("/create") + @Operation(summary = "创建仓储主数据") + @PreAuthorize("@ss.hasPermission('biz:store-house:create')") + public CommonResult createStoreHouse(@Valid @RequestBody StoreHouseSaveReqVO createReqVO) { + return success(storeHouseService.createStoreHouse(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新仓储主数据") + @PreAuthorize("@ss.hasPermission('biz:store-house:update')") + public CommonResult updateStoreHouse(@Valid @RequestBody StoreHouseSaveReqVO updateReqVO) { + storeHouseService.updateStoreHouse(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除仓储主数据") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('biz:store-house:delete')") + public CommonResult deleteStoreHouse(@RequestParam("id") Integer id) { + storeHouseService.deleteStoreHouse(id); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得仓储主数据") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('biz:store-house:query')") + public CommonResult getStoreHouse(@RequestParam("id") Integer id) { + StoreHouseDO storeHouse = storeHouseService.getStoreHouse(id); + return success(BeanUtils.toBean(storeHouse, StoreHouseRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得仓储主数据分页") + @PreAuthorize("@ss.hasPermission('biz:store-house:query')") + public CommonResult> getStoreHousePage(@Valid StoreHousePageReqVO pageReqVO) { + PageResult pageResult = storeHouseService.getStoreHousePage(pageReqVO); + return success(BeanUtils.toBean(pageResult, StoreHouseRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出仓储主数据 Excel") + @PreAuthorize("@ss.hasPermission('biz:store-house:export')") + @OperateLog(type = EXPORT) + public void exportStoreHouseExcel(@Valid StoreHousePageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = storeHouseService.getStoreHousePage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "仓储主数据.xls", "数据", StoreHouseRespVO.class, + BeanUtils.toBean(list, StoreHouseRespVO.class)); + } + @GetMapping("/get-store-house-select") + @Operation(summary = "获得仓储下拉框数据") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('biz:store-house:query')") + public CommonResult> getStoreHouseSelect() { + List list = storeHouseService.getStoreHouseSelect(); + return success(BeanUtils.toBean(list, StoreHouseRespVO.class)); + } + + +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storehouse/vo/StoreHousePageReqVO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storehouse/vo/StoreHousePageReqVO.java index 20ec1ef..b98215d 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storehouse/vo/StoreHousePageReqVO.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/storehouse/vo/StoreHousePageReqVO.java @@ -21,4 +21,7 @@ public class StoreHousePageReqVO extends PageParam { @Schema(description = "状态(1启用 2 未启用)", example = "1") private Integer enabledStatus; -} \ No newline at end of file + private String storeType; + + +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/techproc/vo/TechProcRespVO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/techproc/vo/TechProcRespVO.java index b7a3cbc..f1b7806 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/techproc/vo/TechProcRespVO.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/techproc/vo/TechProcRespVO.java @@ -35,5 +35,7 @@ public class TechProcRespVO { @Schema(description = "备注", example = "你猜") @ExcelProperty("备注") private String remark; + private String nickname; -} \ No newline at end of file + +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/checkitem/CheckItemDO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/checkitem/CheckItemDO.java index 5703448..5397cd8 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/checkitem/CheckItemDO.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/checkitem/CheckItemDO.java @@ -1,5 +1,6 @@ package com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.checkitem; +import com.ningxia.yunxi.chemmes.framework.mybatis.core.dataobject.BaseDOWithoutLogic; import lombok.*; import java.util.*; import java.time.LocalDateTime; @@ -20,7 +21,7 @@ import com.ningxia.yunxi.chemmes.framework.mybatis.core.dataobject.BaseDO; @Builder @NoArgsConstructor @AllArgsConstructor -public class CheckItemDO extends BaseDO { +public class CheckItemDO extends BaseDOWithoutLogic { /** * 自增字段 @@ -86,4 +87,4 @@ public class CheckItemDO extends BaseDO { */ private String printAvgValues; -} \ No newline at end of file +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/proc/ProcDO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/proc/ProcDO.java index 8890e80..7f32c22 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/proc/ProcDO.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/proc/ProcDO.java @@ -1,5 +1,6 @@ package com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.proc; +import com.ningxia.yunxi.chemmes.module.biz.controller.admin.proc.vo.ProcRespVO; import lombok.*; import java.util.*; import java.time.LocalDateTime; @@ -45,5 +46,7 @@ public class ProcDO extends BaseDO { * 备注 */ private String remark; + @TableField(exist = false) + private String creatorName; -} \ No newline at end of file +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/storearea/StoreAreaDO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/storearea/StoreAreaDO.java new file mode 100644 index 0000000..af5da8d --- /dev/null +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/storearea/StoreAreaDO.java @@ -0,0 +1,59 @@ +package com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.storearea; + +import lombok.*; +import java.util.*; +import java.time.LocalDateTime; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; +import com.ningxia.yunxi.chemmes.framework.mybatis.core.dataobject.BaseDO; + +/** + * 库区主数据 DO + * + * @author 管理员 + */ +@TableName("tba_store_area") +@KeySequence("tba_store_area_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class StoreAreaDO extends BaseDO { + + /** + * 自增字段 + */ + @TableId + private Integer id; + /** + * 库区编码 + */ + private String storeAreCd; + /** + * 库区名称 + */ + private String storeAreaName; + /** + * 状态(1启用 2 未启用) + * + * 枚举 {@link TODO system_status 对应的类} + */ + private Integer enabledStatus; + /** + * 备注 + */ + private String remark; + /** + * 仓库id + */ + private Integer storeHouseId; + /** + * 仓库类型(1 原料库 2 在制品库 3 成品库) + */ + private String storeType; + @TableField(exist = false) + private String storeHouseName; + +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/techproc/TechProcDO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/techproc/TechProcDO.java index 43a0e16..634d624 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/techproc/TechProcDO.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/techproc/TechProcDO.java @@ -41,5 +41,7 @@ public class TechProcDO extends BaseDO { * 备注 */ private String remark; + @TableField(exist = false) + private String nickname; -} \ No newline at end of file +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/checkitem/CheckItemMapper.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/checkitem/CheckItemMapper.java index 691d9ac..3bad75f 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/checkitem/CheckItemMapper.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/checkitem/CheckItemMapper.java @@ -17,9 +17,25 @@ import com.ningxia.yunxi.chemmes.module.biz.controller.admin.checkitem.vo.*; @Mapper public interface CheckItemMapper extends BaseMapperX { + /** + * 根据检验项类型和名称统计数量(用于重复校验) + * + * @param itemType 适用类型 + * @param itemName 检验项名称 + * @param excludeId 排除的ID(更新时使用) + * @return 符合条件的记录数 + */ + default Long selectCountByItemTypeAndItemName(String itemType, String itemName, Integer excludeId) { + return selectCount(new LambdaQueryWrapperX() + .eq(CheckItemDO::getItemType, itemType) + .eq(CheckItemDO::getItemName, itemName) + .ne(excludeId != null, CheckItemDO::getId, excludeId)); + } + default PageResult selectPage(CheckItemPageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .likeIfPresent(CheckItemDO::getItemName, reqVO.getItemName()) + .likeIfPresent(CheckItemDO::getItemNo,reqVO.getItemNo()) .eqIfPresent(CheckItemDO::getNature, reqVO.getNature()) .likeIfPresent(CheckItemDO::getUnitName, reqVO.getUnitName()) .eqIfPresent(CheckItemDO::getCheckMethod, reqVO.getCheckMethod()) @@ -31,7 +47,7 @@ public interface CheckItemMapper extends BaseMapperX { .eqIfPresent(CheckItemDO::getTestNum, reqVO.getTestNum()) .eqIfPresent(CheckItemDO::getFloatNum, reqVO.getFloatNum()) .eqIfPresent(CheckItemDO::getPrintAvgValues, reqVO.getPrintAvgValues()) - .orderByDesc(CheckItemDO::getId)); + .orderByDesc(CheckItemDO::getCreateTime)); } -} \ No newline at end of file +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/inspplanitem/InspPlanItemMapper.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/inspplanitem/InspPlanItemMapper.java index f55824d..7eee318 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/inspplanitem/InspPlanItemMapper.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/inspplanitem/InspPlanItemMapper.java @@ -33,4 +33,9 @@ public interface InspPlanItemMapper extends BaseMapperX { .orderByDesc(InspPlanItemDO::getId)); } + default Long selectByItemIdCount(Integer id){ + return selectCount(new LambdaQueryWrapperX() + .eq(InspPlanItemDO::getItemId, id)); + } + } diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/proc/ProcMapper.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/proc/ProcMapper.java index 3431ce3..28246c3 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/proc/ProcMapper.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/proc/ProcMapper.java @@ -1,10 +1,13 @@ package com.ningxia.yunxi.chemmes.module.biz.dal.mysql.proc; +import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult; import com.ningxia.yunxi.chemmes.framework.mybatis.core.mapper.BaseMapperX; import com.ningxia.yunxi.chemmes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.ningxia.yunxi.chemmes.module.biz.controller.admin.proc.vo.ProcPageReqVO; +import com.ningxia.yunxi.chemmes.module.biz.controller.admin.proc.vo.ProcRespVO; import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.proc.ProcDO; +import com.ningxia.yunxi.chemmes.module.system.dal.dataobject.user.AdminUserDO; import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -35,4 +38,15 @@ public interface ProcMapper extends BaseMapperX { default ProcDO selectByProcCd(String procCd) { return selectOne(ProcDO::getProcCd, procCd); - }} + } + + default List getProcList(){ + MPJLambdaWrapper query = new MPJLambdaWrapper<>(); + query.selectAll(ProcDO.class) + .select("u.nickname as creatorName") + .leftJoin(AdminUserDO.class,"u",AdminUserDO::getId,ProcDO::getCreator) + .eq(ProcDO::getEnabledStatus, 0) + .orderByAsc(ProcDO::getProcCd); + return selectList(query); + } +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/storearea/StoreAreaMapper.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/storearea/StoreAreaMapper.java new file mode 100644 index 0000000..2c6e113 --- /dev/null +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/storearea/StoreAreaMapper.java @@ -0,0 +1,39 @@ +package com.ningxia.yunxi.chemmes.module.biz.dal.mysql.storearea; + +import java.util.*; + +import cn.hutool.core.util.ObjectUtil; +import com.github.yulichang.wrapper.MPJLambdaWrapper; +import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult; +import com.ningxia.yunxi.chemmes.framework.mybatis.core.query.LambdaQueryWrapperX; +import com.ningxia.yunxi.chemmes.framework.mybatis.core.mapper.BaseMapperX; +import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.storearea.StoreAreaDO; +import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.storehouse.StoreHouseDO; +import org.apache.ibatis.annotations.Mapper; +import com.ningxia.yunxi.chemmes.module.biz.controller.admin.storearea.vo.*; + +/** + * 库区主数据 Mapper + * + * @author 管理员 + */ +@Mapper +public interface StoreAreaMapper extends BaseMapperX { + + default PageResult selectPage(StoreAreaPageReqVO reqVO) { + MPJLambdaWrapper query = new MPJLambdaWrapper<>(); + query.selectAll(StoreAreaDO.class) + .select("s.store_house_name as storeHouseName") + .leftJoin(StoreHouseDO.class, "s",StoreHouseDO::getId,StoreAreaDO::getStoreHouseId) + .disableSubLogicDel(); + query.eq(ObjectUtil.isNotEmpty( reqVO.getStoreType()),StoreAreaDO::getStoreType, reqVO.getStoreType()); + query.like(ObjectUtil.isNotEmpty( reqVO.getStoreHouseName()),StoreHouseDO::getStoreHouseName, reqVO.getStoreHouseName()); + query.eq(ObjectUtil.isNotEmpty( reqVO.getEnabledStatus()),StoreAreaDO::getEnabledStatus, reqVO.getEnabledStatus()); + return selectPage(reqVO, query); + } + + default Long selectByStoreAreCodeCount(String storeAreCd, Integer id){ + return selectCount(new LambdaQueryWrapperX() + .eq(StoreAreaDO::getStoreAreCd, storeAreCd).ne(ObjectUtil.isNotEmpty(id),StoreAreaDO::getId,id)); + } +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/storehouse/StoreHouseMapper.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/storehouse/StoreHouseMapper.java index 07849c7..c6c38b9 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/storehouse/StoreHouseMapper.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/storehouse/StoreHouseMapper.java @@ -2,6 +2,7 @@ package com.ningxia.yunxi.chemmes.module.biz.dal.mysql.storehouse; import java.util.*; +import cn.hutool.core.util.ObjectUtil; import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult; import com.ningxia.yunxi.chemmes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.ningxia.yunxi.chemmes.framework.mybatis.core.mapper.BaseMapperX; @@ -21,7 +22,17 @@ public interface StoreHouseMapper extends BaseMapperX { return selectPage(reqVO, new LambdaQueryWrapperX() .likeIfPresent(StoreHouseDO::getStoreHouseName, reqVO.getStoreHouseName()) .eqIfPresent(StoreHouseDO::getEnabledStatus, reqVO.getEnabledStatus()) + .eqIfPresent(StoreHouseDO::getStoreType, reqVO.getStoreType()) .orderByDesc(StoreHouseDO::getId)); } -} \ No newline at end of file + default Long selectByStoreHouseCodeCount(String storeHouseCd,Integer id){ + return selectCount(new LambdaQueryWrapperX() + .eq(StoreHouseDO::getStoreHouseCd, storeHouseCd).ne(ObjectUtil.isNotEmpty(id),StoreHouseDO::getId,id)); + } + + default List getStoreHouseSelect(){ + return selectList(new LambdaQueryWrapperX() + .eq(StoreHouseDO::getEnabledStatus, 0)); + } +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/techproc/TechProcMapper.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/techproc/TechProcMapper.java index 41da397..2a44384 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/techproc/TechProcMapper.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/techproc/TechProcMapper.java @@ -1,11 +1,14 @@ package com.ningxia.yunxi.chemmes.module.biz.dal.mysql.techproc; -import java.util.*; + +import cn.hutool.core.util.ObjectUtil; +import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult; -import com.ningxia.yunxi.chemmes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.ningxia.yunxi.chemmes.framework.mybatis.core.mapper.BaseMapperX; +import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.storearea.StoreAreaDO; import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.techproc.TechProcDO; +import com.ningxia.yunxi.chemmes.module.system.dal.dataobject.user.AdminUserDO; import org.apache.ibatis.annotations.Mapper; import com.ningxia.yunxi.chemmes.module.biz.controller.admin.techproc.vo.*; @@ -18,9 +21,21 @@ import com.ningxia.yunxi.chemmes.module.biz.controller.admin.techproc.vo.*; public interface TechProcMapper extends BaseMapperX { default PageResult selectPage(TechProcPageReqVO reqVO) { - return selectPage(reqVO, new LambdaQueryWrapperX() - .eqIfPresent(TechProcDO::getEnabledStatus, reqVO.getEnabledStatus()) - .orderByDesc(TechProcDO::getId)); + MPJLambdaWrapper query = new MPJLambdaWrapper<>(); + query.selectAll(TechProcDO.class) + .select("u.nickname as nickname") + .leftJoin(AdminUserDO.class, "u",AdminUserDO::getId,TechProcDO::getCreator) + .disableSubLogicDel(); + query.eq(ObjectUtil.isNotEmpty( reqVO.getEnabledStatus()),TechProcDO::getEnabledStatus, reqVO.getEnabledStatus()); + return selectPage(reqVO, query); } -} \ No newline at end of file + default Long selectByTechProcCount(String techProc, Integer id){ + return selectCount(new MPJLambdaWrapper() + .eq(TechProcDO::getTechProc, techProc) + .eq(TechProcDO::getId, id) + ); + } + + +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/checkitem/CheckItemServiceImpl.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/checkitem/CheckItemServiceImpl.java index 95fc2a8..30ea0bb 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/checkitem/CheckItemServiceImpl.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/checkitem/CheckItemServiceImpl.java @@ -6,11 +6,16 @@ import com.ningxia.yunxi.chemmes.module.biz.controller.admin.checkitem.vo.CheckI import com.ningxia.yunxi.chemmes.module.biz.controller.admin.checkitem.vo.CheckItemSaveReqVO; import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.checkitem.CheckItemDO; import com.ningxia.yunxi.chemmes.module.biz.dal.mysql.checkitem.CheckItemMapper; +import com.ningxia.yunxi.chemmes.module.biz.dal.mysql.inspplanitem.InspPlanItemMapper; +import com.ningxia.yunxi.chemmes.module.system.dal.dataobject.dict.DictDataDO; +import com.ningxia.yunxi.chemmes.module.system.dal.mysql.dict.DictDataMapper; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; +import static com.ningxia.yunxi.chemmes.framework.common.exception.util.ServiceExceptionUtil.exception; + /** * 检验项目 Service 实现类 * @@ -22,9 +27,15 @@ public class CheckItemServiceImpl implements CheckItemService { @Resource private CheckItemMapper checkItemMapper; + @Resource + private InspPlanItemMapper inspPlanItemMapper; + @Resource + private DictDataMapper dictDataMapper; @Override public Integer createCheckItem(CheckItemSaveReqVO createReqVO) { + // 校验同类下检验项名称不重复 + validateItemNameUnique(null, createReqVO.getItemType(), createReqVO.getItemName()); // 插入 CheckItemDO checkItem = BeanUtils.toBean(createReqVO, CheckItemDO.class); checkItemMapper.insert(checkItem); @@ -36,6 +47,8 @@ public class CheckItemServiceImpl implements CheckItemService { public void updateCheckItem(CheckItemSaveReqVO updateReqVO) { // 校验存在 validateCheckItemExists(updateReqVO.getId()); + // 校验同类下检验项名称不重复 + validateItemNameUnique(updateReqVO.getId(), updateReqVO.getItemType(), updateReqVO.getItemName()); // 更新 CheckItemDO updateObj = BeanUtils.toBean(updateReqVO, CheckItemDO.class); checkItemMapper.updateById(updateObj); @@ -43,18 +56,42 @@ public class CheckItemServiceImpl implements CheckItemService { @Override public void deleteCheckItem(Integer id) { + // 校验存在 validateCheckItemExists(id); + Long count = inspPlanItemMapper.selectByItemIdCount(id); + if (count > 0) { + throw exception("该检验标准已做质检方案,不允许删除,请确认。"); + } // 删除 checkItemMapper.deleteById(id); } private void validateCheckItemExists(Integer id) { if (checkItemMapper.selectById(id) == null) { -// throw exception(CHECK_ITEM_NOT_EXISTS); + throw exception("数据不存在"); } } + /** + * 校验同类下检验项名称不重复 + */ + private void validateItemNameUnique(Integer id, String itemType, String itemName) { + Long count = checkItemMapper.selectCountByItemTypeAndItemName(itemType, itemName, id); + if (count > 0) { + String itemTypeName = getItemTypeName(itemType); + throw exception(itemTypeName + "内已存在检验名称为" + itemName + "的检验项,请确认!"); + } + } + + /** + * 获取适用类型名称 + */ + private String getItemTypeName(String itemType) { + DictDataDO dictData = dictDataMapper.selectByDictTypeAndValue("mat_type", itemType); + return dictData != null ? dictData.getLabel() : itemType; + } + @Override public CheckItemDO getCheckItem(Integer id) { return checkItemMapper.selectById(id); diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/proc/ProcService.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/proc/ProcService.java index d7220e3..18b8584 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/proc/ProcService.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/proc/ProcService.java @@ -56,4 +56,5 @@ public interface ProcService { List getProcDropdown(String keyWord); + List getProcList(); } diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/proc/ProcServiceImpl.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/proc/ProcServiceImpl.java index 0573bb8..c2bb0a7 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/proc/ProcServiceImpl.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/proc/ProcServiceImpl.java @@ -92,4 +92,10 @@ public class ProcServiceImpl implements ProcService { return BeanUtils.toBean(procDOS, ProcRespVO.class); } + + @Override + public List getProcList() { + List procDOS = procMapper.getProcList(); + return BeanUtils.toBean(procDOS, ProcRespVO.class); + } } diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storearea/StoreAreaService.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storearea/StoreAreaService.java new file mode 100644 index 0000000..83d636f --- /dev/null +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storearea/StoreAreaService.java @@ -0,0 +1,55 @@ +package com.ningxia.yunxi.chemmes.module.biz.service.storearea; + +import java.util.*; +import javax.validation.*; +import com.ningxia.yunxi.chemmes.module.biz.controller.admin.storearea.vo.*; +import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.storearea.StoreAreaDO; +import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult; +import com.ningxia.yunxi.chemmes.framework.common.pojo.PageParam; + +/** + * 库区主数据 Service 接口 + * + * @author 管理员 + */ +public interface StoreAreaService { + + /** + * 创建库区主数据 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Integer createStoreArea(@Valid StoreAreaSaveReqVO createReqVO); + + /** + * 更新库区主数据 + * + * @param updateReqVO 更新信息 + */ + void updateStoreArea(@Valid StoreAreaSaveReqVO updateReqVO); + + /** + * 删除库区主数据 + * + * @param id 编号 + */ + void deleteStoreArea(Integer id); + + /** + * 获得库区主数据 + * + * @param id 编号 + * @return 库区主数据 + */ + StoreAreaDO getStoreArea(Integer id); + + /** + * 获得库区主数据分页 + * + * @param pageReqVO 分页查询 + * @return 库区主数据分页 + */ + PageResult getStoreAreaPage(StoreAreaPageReqVO pageReqVO); + +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storearea/StoreAreaServiceImpl.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storearea/StoreAreaServiceImpl.java new file mode 100644 index 0000000..62cf869 --- /dev/null +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storearea/StoreAreaServiceImpl.java @@ -0,0 +1,83 @@ +package com.ningxia.yunxi.chemmes.module.biz.service.storearea; + +import org.springframework.stereotype.Service; +import javax.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.transaction.annotation.Transactional; + +import java.util.*; +import com.ningxia.yunxi.chemmes.module.biz.controller.admin.storearea.vo.*; +import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.storearea.StoreAreaDO; +import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult; +import com.ningxia.yunxi.chemmes.framework.common.pojo.PageParam; +import com.ningxia.yunxi.chemmes.framework.common.util.object.BeanUtils; + +import com.ningxia.yunxi.chemmes.module.biz.dal.mysql.storearea.StoreAreaMapper; + +import static com.ningxia.yunxi.chemmes.framework.common.exception.util.ServiceExceptionUtil.exception; +import static com.ningxia.yunxi.chemmes.module.biz.enums.ErrorCodeConstants.*; + +/** + * 库区主数据 Service 实现类 + * + * @author 管理员 + */ +@Service +@Validated +public class StoreAreaServiceImpl implements StoreAreaService { + + @Resource + private StoreAreaMapper storeAreaMapper; + + @Override + public Integer createStoreArea(StoreAreaSaveReqVO createReqVO) { + Long count = storeAreaMapper.selectByStoreAreCodeCount(createReqVO.getStoreAreCd(),createReqVO.getId()); + if (count > 0) { + throw exception("库区编码已存在,请重新输入!"); + } + + // 插入 + StoreAreaDO storeArea = BeanUtils.toBean(createReqVO, StoreAreaDO.class); + storeAreaMapper.insert(storeArea); + // 返回 + return storeArea.getId(); + } + + @Override + public void updateStoreArea(StoreAreaSaveReqVO updateReqVO) { + Long count = storeAreaMapper.selectByStoreAreCodeCount(updateReqVO.getStoreAreCd(),updateReqVO.getId()); + if (count > 0) { + throw exception("库区编码已存在,请重新输入!"); + } + // 校验存在 + validateStoreAreaExists(updateReqVO.getId()); + // 更新 + StoreAreaDO updateObj = BeanUtils.toBean(updateReqVO, StoreAreaDO.class); + storeAreaMapper.updateById(updateObj); + } + + @Override + public void deleteStoreArea(Integer id) { + // 校验存在 + validateStoreAreaExists(id); + // 删除 + storeAreaMapper.deleteById(id); + } + + private void validateStoreAreaExists(Integer id) { + if (storeAreaMapper.selectById(id) == null) { + throw exception("数据不存在"); + } + } + + @Override + public StoreAreaDO getStoreArea(Integer id) { + return storeAreaMapper.selectById(id); + } + + @Override + public PageResult getStoreAreaPage(StoreAreaPageReqVO pageReqVO) { + return storeAreaMapper.selectPage(pageReqVO); + } + +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storehouse/StoreHouseService.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storehouse/StoreHouseService.java index 9f595ea..d2d25f2 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storehouse/StoreHouseService.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storehouse/StoreHouseService.java @@ -1,55 +1,56 @@ -package com.ningxia.yunxi.chemmes.module.biz.service.storehouse; - -import java.util.*; -import javax.validation.*; -import com.ningxia.yunxi.chemmes.module.biz.controller.admin.storehouse.vo.*; -import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.storehouse.StoreHouseDO; -import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult; -import com.ningxia.yunxi.chemmes.framework.common.pojo.PageParam; - -/** - * 仓储主数据 Service 接口 - * - * @author 管理员 - */ -public interface StoreHouseService { - - /** - * 创建仓储主数据 - * - * @param createReqVO 创建信息 - * @return 编号 - */ - Integer createStoreHouse(@Valid StoreHouseSaveReqVO createReqVO); - - /** - * 更新仓储主数据 - * - * @param updateReqVO 更新信息 - */ - void updateStoreHouse(@Valid StoreHouseSaveReqVO updateReqVO); - - /** - * 删除仓储主数据 - * - * @param id 编号 - */ - void deleteStoreHouse(Integer id); - - /** - * 获得仓储主数据 - * - * @param id 编号 - * @return 仓储主数据 - */ - StoreHouseDO getStoreHouse(Integer id); - - /** - * 获得仓储主数据分页 - * - * @param pageReqVO 分页查询 - * @return 仓储主数据分页 - */ - PageResult getStoreHousePage(StoreHousePageReqVO pageReqVO); - -} \ No newline at end of file +package com.ningxia.yunxi.chemmes.module.biz.service.storehouse; + +import java.util.*; +import javax.validation.*; +import com.ningxia.yunxi.chemmes.module.biz.controller.admin.storehouse.vo.*; +import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.storehouse.StoreHouseDO; +import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult; +import com.ningxia.yunxi.chemmes.framework.common.pojo.PageParam; + +/** + * 仓储主数据 Service 接口 + * + * @author 管理员 + */ +public interface StoreHouseService { + + /** + * 创建仓储主数据 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + Integer createStoreHouse(@Valid StoreHouseSaveReqVO createReqVO); + + /** + * 更新仓储主数据 + * + * @param updateReqVO 更新信息 + */ + void updateStoreHouse(@Valid StoreHouseSaveReqVO updateReqVO); + + /** + * 删除仓储主数据 + * + * @param id 编号 + */ + void deleteStoreHouse(Integer id); + + /** + * 获得仓储主数据 + * + * @param id 编号 + * @return 仓储主数据 + */ + StoreHouseDO getStoreHouse(Integer id); + + /** + * 获得仓储主数据分页 + * + * @param pageReqVO 分页查询 + * @return 仓储主数据分页 + */ + PageResult getStoreHousePage(StoreHousePageReqVO pageReqVO); + + List getStoreHouseSelect(); +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storehouse/StoreHouseServiceImpl.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storehouse/StoreHouseServiceImpl.java index 688da56..f4bf1c8 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storehouse/StoreHouseServiceImpl.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/storehouse/StoreHouseServiceImpl.java @@ -11,6 +11,10 @@ import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; +import java.util.List; + +import static com.ningxia.yunxi.chemmes.framework.common.exception.util.ServiceExceptionUtil.exception; + /** * 仓储主数据 Service 实现类 * @@ -25,6 +29,11 @@ public class StoreHouseServiceImpl implements StoreHouseService { @Override public Integer createStoreHouse(StoreHouseSaveReqVO createReqVO) { + Long count = storeHouseMapper.selectByStoreHouseCodeCount(createReqVO.getStoreHouseCd(),null); + if (count > 0) { + throw exception("仓储编码已存在,请重新输入!"); + } + // 插入 StoreHouseDO storeHouse = BeanUtils.toBean(createReqVO, StoreHouseDO.class); storeHouseMapper.insert(storeHouse); @@ -34,8 +43,12 @@ public class StoreHouseServiceImpl implements StoreHouseService { @Override public void updateStoreHouse(StoreHouseSaveReqVO updateReqVO) { + Long count = storeHouseMapper.selectByStoreHouseCodeCount(updateReqVO.getStoreHouseCd(),updateReqVO.getId()); + if (count > 0) { + throw exception("仓储编码已存在,请重新输入!"); + } // 校验存在 - validateStoreHouseExists(updateReqVO.getId()); +// validateStoreHouseExists(updateReqVO.getId()); // 更新 StoreHouseDO updateObj = BeanUtils.toBean(updateReqVO, StoreHouseDO.class); storeHouseMapper.updateById(updateObj); @@ -51,7 +64,7 @@ public class StoreHouseServiceImpl implements StoreHouseService { private void validateStoreHouseExists(Integer id) { if (storeHouseMapper.selectById(id) == null) { -// throw exception(STORE_HOUSE_NOT_EXISTS); + throw exception("数据不存在"); } } @@ -65,4 +78,9 @@ public class StoreHouseServiceImpl implements StoreHouseService { return storeHouseMapper.selectPage(pageReqVO); } + @Override + public List getStoreHouseSelect() { + return storeHouseMapper.getStoreHouseSelect(); + } + } diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/techproc/TechProcServiceImpl.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/techproc/TechProcServiceImpl.java index bfe8761..50b4938 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/techproc/TechProcServiceImpl.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/service/techproc/TechProcServiceImpl.java @@ -11,6 +11,8 @@ import org.springframework.validation.annotation.Validated; import javax.annotation.Resource; +import static com.ningxia.yunxi.chemmes.framework.common.exception.util.ServiceExceptionUtil.exception; + /** * 工艺流程主数据 Service 实现类 * @@ -25,6 +27,10 @@ public class TechProcServiceImpl implements TechProcService { @Override public Integer createTechProc(TechProcSaveReqVO createReqVO) { + Long count = techProcMapper.selectByTechProcCount(createReqVO.getTechProc(),null); + if (count > 0) { + throw exception("工艺流程已存在,请重新选择!"); + } // 插入 TechProcDO techProc = BeanUtils.toBean(createReqVO, TechProcDO.class); techProcMapper.insert(techProc); @@ -34,6 +40,10 @@ public class TechProcServiceImpl implements TechProcService { @Override public void updateTechProc(TechProcSaveReqVO updateReqVO) { + Long count = techProcMapper.selectByTechProcCount(updateReqVO.getTechProc(),updateReqVO.getId()); + if (count > 0) { + throw exception("工艺流程已存在,请重新选择!"); + } // 校验存在 validateTechProcExists(updateReqVO.getId()); // 更新 @@ -51,7 +61,7 @@ public class TechProcServiceImpl implements TechProcService { private void validateTechProcExists(Integer id) { if (techProcMapper.selectById(id) == null) { -// throw exception(TECH_PROC_NOT_EXISTS); + throw exception("数据不存在"); } } diff --git a/mes-server/src/main/resources/application-local.yaml b/mes-server/src/main/resources/application-local.yaml index 76b3c28..21188e7 100644 --- a/mes-server/src/main/resources/application-local.yaml +++ b/mes-server/src/main/resources/application-local.yaml @@ -60,7 +60,7 @@ spring: redis: host: 218.95.153.170 # 地址 port: 6379 # 端口 - database: 9 # 数据库索引 + database: 8 # 数据库索引 password: 'qweasd,.123' # 密码,建议生产环境开启 --- #################### 定时任务相关配置 #################### diff --git a/mes-server/src/main/resources/application-pro.yaml b/mes-server/src/main/resources/application-pro.yaml index 8390b93..8d2eadc 100644 --- a/mes-server/src/main/resources/application-pro.yaml +++ b/mes-server/src/main/resources/application-pro.yaml @@ -59,7 +59,7 @@ spring: redis: host: localhost # 地址 port: 6379 # 端口 - database: 9 # 数据库索引 + database: 8 # 数据库索引 password: 'qweasd,.123' # 密码,建议生产环境开启 --- #################### 定时任务相关配置 #################### diff --git a/mes-ui/mes-ui-admin-vue3/src/api/biz/proc/index.ts b/mes-ui/mes-ui-admin-vue3/src/api/biz/proc/index.ts index 003a6b5..330d6a7 100644 --- a/mes-ui/mes-ui-admin-vue3/src/api/biz/proc/index.ts +++ b/mes-ui/mes-ui-admin-vue3/src/api/biz/proc/index.ts @@ -1,44 +1,48 @@ -import request from '@/config/axios' - -export interface ProcVO { - id: number - procCd: string - procName: string - enabledStatus: number - remark: string -} - -// 查询工序主数据分页 -export const getProcPage = async (params) => { - return await request.get({ url: `/biz/proc/page`, params }) -} - -// 查询工序主数据详情 -export const getProc = async (id: number) => { - return await request.get({ url: `/biz/proc/get?id=` + id }) -} - -// 新增工序主数据 -export const createProc = async (data: ProcVO) => { - return await request.post({ url: `/biz/proc/create`, data }) -} - -// 修改工序主数据 -export const updateProc = async (data: ProcVO) => { - return await request.put({ url: `/biz/proc/update`, data }) -} - -// 删除工序主数据 -export const deleteProc = async (id: number) => { - return await request.delete({ url: `/biz/proc/delete?id=` + id }) -} - -// 导出工序主数据 Excel -export const exportProc = async (params) => { - return await request.download({ url: `/biz/proc/export-excel`, params }) -} - -// 获取工序下拉列表 -export const getProcDropdown = async (params) => { - return await request.get({ url: `/biz/proc/dropdown`, params }) -} \ No newline at end of file +import request from '@/config/axios' + +export interface ProcVO { + id: number + procCd: string + procName: string + enabledStatus: number + remark: string +} + +// 查询工序主数据分页 +export const getProcPage = async (params) => { + return await request.get({ url: `/biz/proc/page`, params }) +} + +// 查询工序主数据详情 +export const getProc = async (id: number) => { + return await request.get({ url: `/biz/proc/get?id=` + id }) +} + +// 新增工序主数据 +export const createProc = async (data: ProcVO) => { + return await request.post({ url: `/biz/proc/create`, data }) +} + +// 修改工序主数据 +export const updateProc = async (data: ProcVO) => { + return await request.put({ url: `/biz/proc/update`, data }) +} + +// 删除工序主数据 +export const deleteProc = async (id: number) => { + return await request.delete({ url: `/biz/proc/delete?id=` + id }) +} + +// 导出工序主数据 Excel +export const exportProc = async (params) => { + return await request.download({ url: `/biz/proc/export-excel`, params }) +} + +// 获取工序下拉列表 +export const getProcDropdown = async (params) => { + return await request.get({ url: `/biz/proc/dropdown`, params }) +} +// 获取工序下拉列表 +export const getProcList = async () => { + return await request.get({ url: `/biz/proc/getProcList` }) +} diff --git a/mes-ui/mes-ui-admin-vue3/src/api/biz/storearea/index.ts b/mes-ui/mes-ui-admin-vue3/src/api/biz/storearea/index.ts new file mode 100644 index 0000000..92acf05 --- /dev/null +++ b/mes-ui/mes-ui-admin-vue3/src/api/biz/storearea/index.ts @@ -0,0 +1,42 @@ +import request from '@/config/axios' + +export interface StoreAreaVO { + id: number + fCreatorUserId: string + storeAreCd: string + storeAreaName: string + enabledStatus: number + remark: string + storeHouseId: number + storeType: string +} + +// 查询库区主数据分页 +export const getStoreAreaPage = async (params) => { + return await request.get({ url: `/biz/store-area/page`, params }) +} + +// 查询库区主数据详情 +export const getStoreArea = async (id: number) => { + return await request.get({ url: `/biz/store-area/get?id=` + id }) +} + +// 新增库区主数据 +export const createStoreArea = async (data: StoreAreaVO) => { + return await request.post({ url: `/biz/store-area/create`, data }) +} + +// 修改库区主数据 +export const updateStoreArea = async (data: StoreAreaVO) => { + return await request.put({ url: `/biz/store-area/update`, data }) +} + +// 删除库区主数据 +export const deleteStoreArea = async (id: number) => { + return await request.delete({ url: `/biz/store-area/delete?id=` + id }) +} + +// 导出库区主数据 Excel +export const exportStoreArea = async (params) => { + return await request.download({ url: `/biz/store-area/export-excel`, params }) +} diff --git a/mes-ui/mes-ui-admin-vue3/src/api/biz/storehouse/index.ts b/mes-ui/mes-ui-admin-vue3/src/api/biz/storehouse/index.ts index 51f5b70..70367c8 100644 --- a/mes-ui/mes-ui-admin-vue3/src/api/biz/storehouse/index.ts +++ b/mes-ui/mes-ui-admin-vue3/src/api/biz/storehouse/index.ts @@ -1,40 +1,44 @@ -import request from '@/config/axios' - -export interface StoreHouseVO { - id: number - storeHouseCd: string - storeHouseName: string - enabledStatus: number - remark: string - storeType: string -} - -// 查询仓储主数据分页 -export const getStoreHousePage = async (params) => { - return await request.get({ url: `/biz/store-house/page`, params }) -} - -// 查询仓储主数据详情 -export const getStoreHouse = async (id: number) => { - return await request.get({ url: `/biz/store-house/get?id=` + id }) -} - -// 新增仓储主数据 -export const createStoreHouse = async (data: StoreHouseVO) => { - return await request.post({ url: `/biz/store-house/create`, data }) -} - -// 修改仓储主数据 -export const updateStoreHouse = async (data: StoreHouseVO) => { - return await request.put({ url: `/biz/store-house/update`, data }) -} - -// 删除仓储主数据 -export const deleteStoreHouse = async (id: number) => { - return await request.delete({ url: `/biz/store-house/delete?id=` + id }) -} - -// 导出仓储主数据 Excel -export const exportStoreHouse = async (params) => { - return await request.download({ url: `/biz/store-house/export-excel`, params }) -} \ No newline at end of file +import request from '@/config/axios' + +export interface StoreHouseVO { + id: number + storeHouseCd: string + storeHouseName: string + enabledStatus: number + remark: string + storeType: string +} + +// 查询仓储主数据分页 +export const getStoreHousePage = async (params) => { + return await request.get({ url: `/biz/store-house/page`, params }) +} + +// 查询仓储主数据详情 +export const getStoreHouse = async (id: number) => { + return await request.get({ url: `/biz/store-house/get?id=` + id }) +} + +// 新增仓储主数据 +export const createStoreHouse = async (data: StoreHouseVO) => { + return await request.post({ url: `/biz/store-house/create`, data }) +} + +// 修改仓储主数据 +export const updateStoreHouse = async (data: StoreHouseVO) => { + return await request.put({ url: `/biz/store-house/update`, data }) +} + +// 删除仓储主数据 +export const deleteStoreHouse = async (id: number) => { + return await request.delete({ url: `/biz/store-house/delete?id=` + id }) +} + +// 导出仓储主数据 Excel +export const exportStoreHouse = async (params) => { + return await request.download({ url: `/biz/store-house/export-excel`, params }) +} +//获取仓储主数据下拉列表 +export const getStoreHouseSelect = async () => { + return await request.get({ url: `/biz/store-house/get-store-house-select`}) +} diff --git a/mes-ui/mes-ui-admin-vue3/src/utils/dict.ts b/mes-ui/mes-ui-admin-vue3/src/utils/dict.ts index b19a8cb..d1ee522 100644 --- a/mes-ui/mes-ui-admin-vue3/src/utils/dict.ts +++ b/mes-ui/mes-ui-admin-vue3/src/utils/dict.ts @@ -131,7 +131,7 @@ export enum DICT_TYPE { SYSTEM_NOTIFY_TEMPLATE_TYPE = 'system_notify_template_type', SYSTEM_SOCIAL_TYPE = 'system_social_type', SYSTEM_STATUS = 'system_status', - SYSTEM_IS_CELL = 'system_is_cell', + SYSTEM_IS_CELL = 'system_is_cell',//是否 // ========== INFRA 模块 ========== INFRA_BOOLEAN_STRING = 'infra_boolean_string', diff --git a/mes-ui/mes-ui-admin-vue3/src/views/biz/checkitem/CheckItemForm.vue b/mes-ui/mes-ui-admin-vue3/src/views/biz/checkitem/CheckItemForm.vue index 50eb108..dfe75fb 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/biz/checkitem/CheckItemForm.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/biz/checkitem/CheckItemForm.vue @@ -1,77 +1,156 @@ \ No newline at end of file + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/biz/checkitem/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/biz/checkitem/index.vue index f3a1f8b..425664a 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/biz/checkitem/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/biz/checkitem/index.vue @@ -6,57 +6,12 @@ :model="queryParams" ref="queryFormRef" :inline="true" - label-width="68px" + label-width="80px" > - - - - - - - - - - - - - - - - + @@ -68,52 +23,19 @@ /> - + - - - - - - + - - - - - - 新增 - - 导出 - + - - - - - + + + + - - - - + + + + + + - - - + - - - - - + + + + + + - + import { getStrDictOptions, DICT_TYPE } from '@/utils/dict' -import { dateFormatter } from '@/utils/formatTime' -import download from '@/utils/download' import * as CheckItemApi from '@/api/biz/checkitem' import CheckItemForm from './CheckItemForm.vue' @@ -225,7 +133,7 @@ defineOptions({ name: 'CheckItem' }) const message = useMessage() // 消息弹窗 const { t } = useI18n() // 国际化 -const loading = ref(true) // 列表的加载中 +const loading = ref(false) // 列表的加载中 const list = ref([]) // 列表的数据 const total = ref(0) // 列表的总页数 const queryParams = reactive({ @@ -243,9 +151,9 @@ const queryParams = reactive({ testNum: undefined, floatNum: undefined, printAvgValues: undefined, + itemNo:undefined, }) const queryFormRef = ref() // 搜索的表单 -const exportLoading = ref(false) // 导出的加载中 /** 查询列表 */ const getList = async () => { @@ -290,23 +198,10 @@ const handleDelete = async (id: number) => { } catch {} } -/** 导出按钮操作 */ -const handleExport = async () => { - try { - // 导出的二次确认 - await message.exportConfirm() - // 发起导出 - exportLoading.value = true - const data = await CheckItemApi.exportCheckItem(queryParams) - download.excel(data, '检验项目.xls') - } catch { - } finally { - exportLoading.value = false - } -} + /** 初始化 **/ onMounted(() => { - getList() + // getList() }) - \ No newline at end of file + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/biz/storearea/StoreAreaForm.vue b/mes-ui/mes-ui-admin-vue3/src/views/biz/storearea/StoreAreaForm.vue new file mode 100644 index 0000000..589c9a0 --- /dev/null +++ b/mes-ui/mes-ui-admin-vue3/src/views/biz/storearea/StoreAreaForm.vue @@ -0,0 +1,151 @@ + + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/biz/storearea/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/biz/storearea/index.vue new file mode 100644 index 0000000..5ebdf0e --- /dev/null +++ b/mes-ui/mes-ui-admin-vue3/src/views/biz/storearea/index.vue @@ -0,0 +1,202 @@ + + + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/biz/storehouse/StoreHouseForm.vue b/mes-ui/mes-ui-admin-vue3/src/views/biz/storehouse/StoreHouseForm.vue index f487790..ad5b3e2 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/biz/storehouse/StoreHouseForm.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/biz/storehouse/StoreHouseForm.vue @@ -1,5 +1,5 @@ \ No newline at end of file + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/biz/storehouse/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/biz/storehouse/index.vue index b489e35..97c4d85 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/biz/storehouse/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/biz/storehouse/index.vue @@ -6,21 +6,27 @@ :model="queryParams" ref="queryFormRef" :inline="true" - label-width="68px" + label-width="80px" > - - + + > + + - + @@ -39,65 +45,55 @@ type="primary" plain @click="openForm('create')" - v-hasPermi="['biz:store-house:create']" > 新增 - - 导出 - + - - - + + + + + - + - - - + @@ -116,8 +112,7 @@ \ No newline at end of file + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/biz/techproc/TechProcForm.vue b/mes-ui/mes-ui-admin-vue3/src/views/biz/techproc/TechProcForm.vue index f3ee586..702c070 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/biz/techproc/TechProcForm.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/biz/techproc/TechProcForm.vue @@ -1,57 +1,91 @@ \ No newline at end of file + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/biz/techproc/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/biz/techproc/index.vue index 0f39066..e6a67f8 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/biz/techproc/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/biz/techproc/index.vue @@ -8,10 +8,10 @@ :inline="true" label-width="68px" > - + @@ -34,55 +34,44 @@ > 新增 - - 导出 - + - - - - - + + + + - + + + + @@ -101,18 +90,21 @@ \ No newline at end of file +