From ae0f0d79c52483e93939ba2e105a7f34cbc3f9e2 Mon Sep 17 00:00:00 2001 From: FCL Date: Thu, 4 Dec 2025 08:58:02 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E4=BE=9B=E5=BA=94=E5=95=86=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../module/qms/enums/ErrorCodeConstants.java | 5 + .../com/zt/plat/module/qms/office/deleteme | 0 .../controller/admin/SupplierController.java | 119 ++++++++++++++++++ .../admin/SupplierEvaluationAtController.java | 118 +++++++++++++++++ .../admin/SupplierEvaluationController.java | 118 +++++++++++++++++ .../admin/SupplierPropertiesController.java | 118 +++++++++++++++++ .../vo/SupplierEvaluationAtPageReqVO.java | 34 +++++ .../vo/SupplierEvaluationAtRespVO.java | 42 +++++++ .../vo/SupplierEvaluationAtSaveReqVO.java | 32 +++++ .../vo/SupplierEvaluationPageReqVO.java | 53 ++++++++ .../vo/SupplierEvaluationRespVO.java | 66 ++++++++++ .../vo/SupplierEvaluationSaveReqVO.java | 48 +++++++ .../controller/vo/SupplierPageReqVO.java | 49 ++++++++ .../vo/SupplierPropertiesPageReqVO.java | 50 ++++++++ .../vo/SupplierPropertiesRespVO.java | 59 +++++++++ .../vo/SupplierPropertiesSaveReqVO.java | 43 +++++++ .../controller/vo/SupplierRespVO.java | 62 +++++++++ .../controller/vo/SupplierSaveReqVO.java | 43 +++++++ .../supplier/dal/dataobject/SupplierDO.java | 81 ++++++++++++ .../dataobject/SupplierEvaluationAtDO.java | 57 +++++++++ .../dal/dataobject/SupplierEvaluationDO.java | 90 +++++++++++++ .../dal/dataobject/SupplierPropertiesDO.java | 81 ++++++++++++ .../mapper/SupplierEvaluationAtMapper.java | 29 +++++ .../dal/mapper/SupplierEvaluationMapper.java | 35 ++++++ .../supplier/dal/mapper/SupplierMapper.java | 33 +++++ .../dal/mapper/SupplierPropertiesMapper.java | 33 +++++ .../service/SupplierEvaluationAtService.java | 64 ++++++++++ .../SupplierEvaluationAtServiceImpl.java | 92 ++++++++++++++ .../service/SupplierEvaluationService.java | 64 ++++++++++ .../SupplierEvaluationServiceImpl.java | 92 ++++++++++++++ .../service/SupplierPropertiesService.java | 64 ++++++++++ .../SupplierPropertiesServiceImpl.java | 92 ++++++++++++++ .../supplier/service/SupplierService.java | 64 ++++++++++ .../supplier/service/SupplierServiceImpl.java | 92 ++++++++++++++ .../com/zt/plat/module/qms/office/deleteme | 0 .../dal/mapper/SupplierEvaluationAtMapper.xml | 12 ++ .../dal/mapper/SupplierEvaluationMapper.xml | 12 ++ .../supplier/dal/mapper/SupplierMapper.xml | 12 ++ .../dal/mapper/SupplierPropertiesMapper.xml | 12 ++ 39 files changed, 2170 insertions(+) delete mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/deleteme create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierController.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierEvaluationAtController.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierEvaluationController.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierPropertiesController.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationAtPageReqVO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationAtRespVO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationAtSaveReqVO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationPageReqVO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationRespVO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationSaveReqVO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPageReqVO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPropertiesPageReqVO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPropertiesRespVO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPropertiesSaveReqVO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierRespVO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierSaveReqVO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierDO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierEvaluationAtDO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierEvaluationDO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierPropertiesDO.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationAtMapper.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationMapper.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierMapper.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierPropertiesMapper.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationAtService.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationAtServiceImpl.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationService.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationServiceImpl.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierPropertiesService.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierPropertiesServiceImpl.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierService.java create mode 100644 zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierServiceImpl.java delete mode 100644 zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/deleteme create mode 100644 zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationAtMapper.xml create mode 100644 zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationMapper.xml create mode 100644 zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierMapper.xml create mode 100644 zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierPropertiesMapper.xml diff --git a/zt-module-qms/zt-module-qms-api/src/main/java/com/zt/plat/module/qms/enums/ErrorCodeConstants.java b/zt-module-qms/zt-module-qms-api/src/main/java/com/zt/plat/module/qms/enums/ErrorCodeConstants.java index 5e6806e..60eef13 100644 --- a/zt-module-qms/zt-module-qms-api/src/main/java/com/zt/plat/module/qms/enums/ErrorCodeConstants.java +++ b/zt-module-qms/zt-module-qms-api/src/main/java/com/zt/plat/module/qms/enums/ErrorCodeConstants.java @@ -166,6 +166,11 @@ public interface ErrorCodeConstants { /*================================= office 办公 1_032_250_000 ~ 1_032_299_999 ==================================*/ + ErrorCode SUPPLIER_NOT_EXISTS = new ErrorCode(1_032_250_000, "供应商不存在"); + ErrorCode SUPPLIER_PROPERTIES_NOT_EXISTS = new ErrorCode(1_032_250_000, "供应商属性不存在"); + ErrorCode SUPPLIER_EVALUATION_NOT_EXISTS = new ErrorCode(1_032_250_000, "供应商评价不存在"); + ErrorCode SUPPLIER_EVALUATION_AT_NOT_EXISTS = new ErrorCode(1_032_250_000, "供应商评价关系不存在"); + /*================================= dzj 大质检 1_032_300_000 ~ 1_032_349_999 ==================================*/ diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/deleteme b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/deleteme deleted file mode 100644 index e69de29..0000000 diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierController.java new file mode 100644 index 0000000..eabfca4 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierController.java @@ -0,0 +1,119 @@ +package com.zt.plat.module.qms.office.supplier.controller.admin; + +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPageReqVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierRespVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import com.zt.plat.framework.business.interceptor.BusinessControllerMarker; +import com.zt.plat.framework.business.annotation.FileUploadController; +import com.zt.plat.framework.business.controller.AbstractFileUploadController; + +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import com.zt.plat.framework.common.pojo.vo.BatchDeleteReqVO; +import com.zt.plat.framework.common.pojo.PageParam; +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.common.pojo.CommonResult; +import com.zt.plat.framework.common.util.object.BeanUtils; +import static com.zt.plat.framework.common.pojo.CommonResult.success; + +import com.zt.plat.framework.excel.core.util.ExcelUtils; + +import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog; +import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*; + +import com.zt.plat.module.qms.office.supplier.controller.vo.*; +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierDO; +import com.zt.plat.module.qms.office.supplier.service.SupplierService; + +@Tag(name = "管理后台 - 供应商") +@RestController +@RequestMapping("/qms/supplier") +@Validated +@FileUploadController(source = "qms.supplier") +public class SupplierController extends AbstractFileUploadController implements BusinessControllerMarker{ + + static { + FileUploadController annotation = SupplierController.class.getAnnotation(FileUploadController.class); + if (annotation != null) { + setFileUploadInfo(annotation); + } + } + + @Resource + private SupplierService supplierService; + + @PostMapping("/create") + @Operation(summary = "创建供应商") + @PreAuthorize("@ss.hasPermission('qms:supplier:create')") + public CommonResult createSupplier(@Valid @RequestBody SupplierSaveReqVO createReqVO) { + return success(supplierService.createSupplier(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新供应商") + @PreAuthorize("@ss.hasPermission('qms:supplier:update')") + public CommonResult updateSupplier(@Valid @RequestBody SupplierSaveReqVO updateReqVO) { + supplierService.updateSupplier(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除供应商") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('qms:supplier:delete')") + public CommonResult deleteSupplier(@RequestParam("id") Long id) { + supplierService.deleteSupplier(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除供应商") + @PreAuthorize("@ss.hasPermission('qms:supplier:delete')") + public CommonResult deleteSupplierList(@RequestBody BatchDeleteReqVO req) { + supplierService.deleteSupplierListByIds(req.getIds()); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得供应商") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('qms:supplier:query')") + public CommonResult getSupplier(@RequestParam("id") Long id) { + SupplierDO supplier = supplierService.getSupplier(id); + return success(BeanUtils.toBean(supplier, SupplierRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得供应商分页") + @PreAuthorize("@ss.hasPermission('qms:supplier:query')") + public CommonResult> getSupplierPage(@Valid SupplierPageReqVO pageReqVO) { + PageResult pageResult = supplierService.getSupplierPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, SupplierRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出供应商 Excel") + @PreAuthorize("@ss.hasPermission('qms:supplier:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportSupplierExcel(@Valid SupplierPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = supplierService.getSupplierPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "供应商.xls", "数据", SupplierRespVO.class, + BeanUtils.toBean(list, SupplierRespVO.class)); + } + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierEvaluationAtController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierEvaluationAtController.java new file mode 100644 index 0000000..e1101a0 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierEvaluationAtController.java @@ -0,0 +1,118 @@ +package com.zt.plat.module.qms.office.supplier.controller.admin; + +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationAtPageReqVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationAtRespVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationAtSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import com.zt.plat.framework.business.interceptor.BusinessControllerMarker; +import com.zt.plat.framework.business.annotation.FileUploadController; +import com.zt.plat.framework.business.controller.AbstractFileUploadController; + +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import com.zt.plat.framework.common.pojo.vo.BatchDeleteReqVO; +import com.zt.plat.framework.common.pojo.PageParam; +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.common.pojo.CommonResult; +import com.zt.plat.framework.common.util.object.BeanUtils; +import static com.zt.plat.framework.common.pojo.CommonResult.success; + +import com.zt.plat.framework.excel.core.util.ExcelUtils; + +import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog; +import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*; + +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierEvaluationAtDO; +import com.zt.plat.module.qms.office.supplier.service.SupplierEvaluationAtService; + +@Tag(name = "管理后台 - 供应商评价关系") +@RestController +@RequestMapping("/qms/supplier-evaluation-at") +@Validated +@FileUploadController(source = "qms.supplierevaluationat") +public class SupplierEvaluationAtController extends AbstractFileUploadController implements BusinessControllerMarker{ + + static { + FileUploadController annotation = SupplierEvaluationAtController.class.getAnnotation(FileUploadController.class); + if (annotation != null) { + setFileUploadInfo(annotation); + } + } + + @Resource + private SupplierEvaluationAtService supplierEvaluationAtService; + + @PostMapping("/create") + @Operation(summary = "创建供应商评价关系") + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation-at:create')") + public CommonResult createSupplierEvaluationAt(@Valid @RequestBody SupplierEvaluationAtSaveReqVO createReqVO) { + return success(supplierEvaluationAtService.createSupplierEvaluationAt(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新供应商评价关系") + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation-at:update')") + public CommonResult updateSupplierEvaluationAt(@Valid @RequestBody SupplierEvaluationAtSaveReqVO updateReqVO) { + supplierEvaluationAtService.updateSupplierEvaluationAt(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除供应商评价关系") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation-at:delete')") + public CommonResult deleteSupplierEvaluationAt(@RequestParam("id") Long id) { + supplierEvaluationAtService.deleteSupplierEvaluationAt(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除供应商评价关系") + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation-at:delete')") + public CommonResult deleteSupplierEvaluationAtList(@RequestBody BatchDeleteReqVO req) { + supplierEvaluationAtService.deleteSupplierEvaluationAtListByIds(req.getIds()); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得供应商评价关系") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation-at:query')") + public CommonResult getSupplierEvaluationAt(@RequestParam("id") Long id) { + SupplierEvaluationAtDO supplierEvaluationAt = supplierEvaluationAtService.getSupplierEvaluationAt(id); + return success(BeanUtils.toBean(supplierEvaluationAt, SupplierEvaluationAtRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得供应商评价关系分页") + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation-at:query')") + public CommonResult> getSupplierEvaluationAtPage(@Valid SupplierEvaluationAtPageReqVO pageReqVO) { + PageResult pageResult = supplierEvaluationAtService.getSupplierEvaluationAtPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, SupplierEvaluationAtRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出供应商评价关系 Excel") + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation-at:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportSupplierEvaluationAtExcel(@Valid SupplierEvaluationAtPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = supplierEvaluationAtService.getSupplierEvaluationAtPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "供应商评价关系.xls", "数据", SupplierEvaluationAtRespVO.class, + BeanUtils.toBean(list, SupplierEvaluationAtRespVO.class)); + } + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierEvaluationController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierEvaluationController.java new file mode 100644 index 0000000..ca11044 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierEvaluationController.java @@ -0,0 +1,118 @@ +package com.zt.plat.module.qms.office.supplier.controller.admin; + +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationPageReqVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationRespVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import com.zt.plat.framework.business.interceptor.BusinessControllerMarker; +import com.zt.plat.framework.business.annotation.FileUploadController; +import com.zt.plat.framework.business.controller.AbstractFileUploadController; + +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import com.zt.plat.framework.common.pojo.vo.BatchDeleteReqVO; +import com.zt.plat.framework.common.pojo.PageParam; +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.common.pojo.CommonResult; +import com.zt.plat.framework.common.util.object.BeanUtils; +import static com.zt.plat.framework.common.pojo.CommonResult.success; + +import com.zt.plat.framework.excel.core.util.ExcelUtils; + +import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog; +import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*; + +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierEvaluationDO; +import com.zt.plat.module.qms.office.supplier.service.SupplierEvaluationService; + +@Tag(name = "管理后台 - 供应商评价") +@RestController +@RequestMapping("/qms/supplier-evaluation") +@Validated +@FileUploadController(source = "qms.supplierevaluation") +public class SupplierEvaluationController extends AbstractFileUploadController implements BusinessControllerMarker{ + + static { + FileUploadController annotation = SupplierEvaluationController.class.getAnnotation(FileUploadController.class); + if (annotation != null) { + setFileUploadInfo(annotation); + } + } + + @Resource + private SupplierEvaluationService supplierEvaluationService; + + @PostMapping("/create") + @Operation(summary = "创建供应商评价") + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation:create')") + public CommonResult createSupplierEvaluation(@Valid @RequestBody SupplierEvaluationSaveReqVO createReqVO) { + return success(supplierEvaluationService.createSupplierEvaluation(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新供应商评价") + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation:update')") + public CommonResult updateSupplierEvaluation(@Valid @RequestBody SupplierEvaluationSaveReqVO updateReqVO) { + supplierEvaluationService.updateSupplierEvaluation(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除供应商评价") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation:delete')") + public CommonResult deleteSupplierEvaluation(@RequestParam("id") Long id) { + supplierEvaluationService.deleteSupplierEvaluation(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除供应商评价") + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation:delete')") + public CommonResult deleteSupplierEvaluationList(@RequestBody BatchDeleteReqVO req) { + supplierEvaluationService.deleteSupplierEvaluationListByIds(req.getIds()); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得供应商评价") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation:query')") + public CommonResult getSupplierEvaluation(@RequestParam("id") Long id) { + SupplierEvaluationDO supplierEvaluation = supplierEvaluationService.getSupplierEvaluation(id); + return success(BeanUtils.toBean(supplierEvaluation, SupplierEvaluationRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得供应商评价分页") + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation:query')") + public CommonResult> getSupplierEvaluationPage(@Valid SupplierEvaluationPageReqVO pageReqVO) { + PageResult pageResult = supplierEvaluationService.getSupplierEvaluationPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, SupplierEvaluationRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出供应商评价 Excel") + @PreAuthorize("@ss.hasPermission('qms:supplier-evaluation:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportSupplierEvaluationExcel(@Valid SupplierEvaluationPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = supplierEvaluationService.getSupplierEvaluationPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "供应商评价.xls", "数据", SupplierEvaluationRespVO.class, + BeanUtils.toBean(list, SupplierEvaluationRespVO.class)); + } + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierPropertiesController.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierPropertiesController.java new file mode 100644 index 0000000..580d087 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/admin/SupplierPropertiesController.java @@ -0,0 +1,118 @@ +package com.zt.plat.module.qms.office.supplier.controller.admin; + +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPropertiesPageReqVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPropertiesRespVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPropertiesSaveReqVO; +import org.springframework.web.bind.annotation.*; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.security.access.prepost.PreAuthorize; +import com.zt.plat.framework.business.interceptor.BusinessControllerMarker; +import com.zt.plat.framework.business.annotation.FileUploadController; +import com.zt.plat.framework.business.controller.AbstractFileUploadController; + +import io.swagger.v3.oas.annotations.tags.Tag; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Operation; + +import jakarta.validation.*; +import jakarta.servlet.http.*; +import java.util.*; +import java.io.IOException; + +import com.zt.plat.framework.common.pojo.vo.BatchDeleteReqVO; +import com.zt.plat.framework.common.pojo.PageParam; +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.common.pojo.CommonResult; +import com.zt.plat.framework.common.util.object.BeanUtils; +import static com.zt.plat.framework.common.pojo.CommonResult.success; + +import com.zt.plat.framework.excel.core.util.ExcelUtils; + +import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog; +import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*; + +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierPropertiesDO; +import com.zt.plat.module.qms.office.supplier.service.SupplierPropertiesService; + +@Tag(name = "管理后台 - 供应商属性") +@RestController +@RequestMapping("/qms/supplier-properties") +@Validated +@FileUploadController(source = "qms.supplierproperties") +public class SupplierPropertiesController extends AbstractFileUploadController implements BusinessControllerMarker{ + + static { + FileUploadController annotation = SupplierPropertiesController.class.getAnnotation(FileUploadController.class); + if (annotation != null) { + setFileUploadInfo(annotation); + } + } + + @Resource + private SupplierPropertiesService supplierPropertiesService; + + @PostMapping("/create") + @Operation(summary = "创建供应商属性") + @PreAuthorize("@ss.hasPermission('qms:supplier-properties:create')") + public CommonResult createSupplierProperties(@Valid @RequestBody SupplierPropertiesSaveReqVO createReqVO) { + return success(supplierPropertiesService.createSupplierProperties(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新供应商属性") + @PreAuthorize("@ss.hasPermission('qms:supplier-properties:update')") + public CommonResult updateSupplierProperties(@Valid @RequestBody SupplierPropertiesSaveReqVO updateReqVO) { + supplierPropertiesService.updateSupplierProperties(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除供应商属性") + @Parameter(name = "id", description = "编号", required = true) + @PreAuthorize("@ss.hasPermission('qms:supplier-properties:delete')") + public CommonResult deleteSupplierProperties(@RequestParam("id") Long id) { + supplierPropertiesService.deleteSupplierProperties(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除供应商属性") + @PreAuthorize("@ss.hasPermission('qms:supplier-properties:delete')") + public CommonResult deleteSupplierPropertiesList(@RequestBody BatchDeleteReqVO req) { + supplierPropertiesService.deleteSupplierPropertiesListByIds(req.getIds()); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得供应商属性") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('qms:supplier-properties:query')") + public CommonResult getSupplierProperties(@RequestParam("id") Long id) { + SupplierPropertiesDO supplierProperties = supplierPropertiesService.getSupplierProperties(id); + return success(BeanUtils.toBean(supplierProperties, SupplierPropertiesRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得供应商属性分页") + @PreAuthorize("@ss.hasPermission('qms:supplier-properties:query')") + public CommonResult> getSupplierPropertiesPage(@Valid SupplierPropertiesPageReqVO pageReqVO) { + PageResult pageResult = supplierPropertiesService.getSupplierPropertiesPage(pageReqVO); + return success(BeanUtils.toBean(pageResult, SupplierPropertiesRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出供应商属性 Excel") + @PreAuthorize("@ss.hasPermission('qms:supplier-properties:export')") + @ApiAccessLog(operateType = EXPORT) + public void exportSupplierPropertiesExcel(@Valid SupplierPropertiesPageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = supplierPropertiesService.getSupplierPropertiesPage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "供应商属性.xls", "数据", SupplierPropertiesRespVO.class, + BeanUtils.toBean(list, SupplierPropertiesRespVO.class)); + } + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationAtPageReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationAtPageReqVO.java new file mode 100644 index 0000000..eaf8880 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationAtPageReqVO.java @@ -0,0 +1,34 @@ +package com.zt.plat.module.qms.office.supplier.controller.vo; + +import lombok.*; +import io.swagger.v3.oas.annotations.media.Schema; +import com.zt.plat.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 供应商评价关系分页 Request VO") +@Data +public class SupplierEvaluationAtPageReqVO extends PageParam { + + @Schema(description = "评价id", example = "6160") + private Long supplierEvaluationId; + + @Schema(description = "目标对象id", example = "24374") + private Long targetId; + + @Schema(description = "目标对象类型,业务类型:设备实例、物料试剂、检定校准记录等", example = "2") + private String targetType; + + @Schema(description = "所属部门") + private String systemDepartmentCode; + + @Schema(description = "备注") + private String remark; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationAtRespVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationAtRespVO.java new file mode 100644 index 0000000..c2250df --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationAtRespVO.java @@ -0,0 +1,42 @@ +package com.zt.plat.module.qms.office.supplier.controller.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 供应商评价关系 Response VO") +@Data +@ExcelIgnoreUnannotated +public class SupplierEvaluationAtRespVO { + + @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "2684") + @ExcelProperty("ID") + private Long id; + + @Schema(description = "评价id", requiredMode = Schema.RequiredMode.REQUIRED, example = "6160") + @ExcelProperty("评价id") + private Long supplierEvaluationId; + + @Schema(description = "目标对象id", requiredMode = Schema.RequiredMode.REQUIRED, example = "24374") + @ExcelProperty("目标对象id") + private Long targetId; + + @Schema(description = "目标对象类型,业务类型:设备实例、物料试剂、检定校准记录等", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @ExcelProperty("目标对象类型,业务类型:设备实例、物料试剂、检定校准记录等") + private String targetType; + + @Schema(description = "所属部门") + @ExcelProperty("所属部门") + private String systemDepartmentCode; + + @Schema(description = "备注") + @ExcelProperty("备注") + private String remark; + + @Schema(description = "创建时间") + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationAtSaveReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationAtSaveReqVO.java new file mode 100644 index 0000000..c1c0ea6 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationAtSaveReqVO.java @@ -0,0 +1,32 @@ +package com.zt.plat.module.qms.office.supplier.controller.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import jakarta.validation.constraints.*; + +@Schema(description = "管理后台 - 供应商评价关系新增/修改 Request VO") +@Data +public class SupplierEvaluationAtSaveReqVO { + + @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "2684") + private Long id; + + @Schema(description = "评价id", requiredMode = Schema.RequiredMode.REQUIRED, example = "6160") + @NotNull(message = "评价id不能为空") + private Long supplierEvaluationId; + + @Schema(description = "目标对象id", requiredMode = Schema.RequiredMode.REQUIRED, example = "24374") + @NotNull(message = "目标对象id不能为空") + private Long targetId; + + @Schema(description = "目标对象类型,业务类型:设备实例、物料试剂、检定校准记录等", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @NotEmpty(message = "目标对象类型,业务类型:设备实例、物料试剂、检定校准记录等不能为空") + private String targetType; + + @Schema(description = "所属部门") + private String systemDepartmentCode; + + @Schema(description = "备注") + private String remark; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationPageReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationPageReqVO.java new file mode 100644 index 0000000..1b67536 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationPageReqVO.java @@ -0,0 +1,53 @@ +package com.zt.plat.module.qms.office.supplier.controller.vo; + +import lombok.*; +import io.swagger.v3.oas.annotations.media.Schema; +import com.zt.plat.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 供应商评价分页 Request VO") +@Data +public class SupplierEvaluationPageReqVO extends PageParam { + + @Schema(description = "供应商ID", example = "3346") + private Long supplierId; + + @Schema(description = "表单模板id", example = "32304") + private Long formId; + + @Schema(description = "评价内容") + private String content; + + @Schema(description = "评价结论") + private String conclusion; + + @Schema(description = "评价人") + private String evaluator; + + @Schema(description = "评价人id", example = "25943") + private Long evaluatorId; + + @Schema(description = "评价日期") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] evaluationDate; + + @Schema(description = "流程审批状态", example = "2") + private String flowStatus; + + @Schema(description = "流程实例id", example = "24931") + private String flowInstanceId; + + @Schema(description = "所属部门") + private String systemDepartmentCode; + + @Schema(description = "备注") + private String remark; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationRespVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationRespVO.java new file mode 100644 index 0000000..bb2ea1b --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationRespVO.java @@ -0,0 +1,66 @@ +package com.zt.plat.module.qms.office.supplier.controller.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 供应商评价 Response VO") +@Data +@ExcelIgnoreUnannotated +public class SupplierEvaluationRespVO { + + @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "31678") + @ExcelProperty("主键") + private Long id; + + @Schema(description = "供应商ID", example = "3346") + @ExcelProperty("供应商ID") + private Long supplierId; + + @Schema(description = "表单模板id", example = "32304") + @ExcelProperty("表单模板id") + private Long formId; + + @Schema(description = "评价内容") + @ExcelProperty("评价内容") + private String content; + + @Schema(description = "评价结论") + @ExcelProperty("评价结论") + private String conclusion; + + @Schema(description = "评价人") + @ExcelProperty("评价人") + private String evaluator; + + @Schema(description = "评价人id", example = "25943") + @ExcelProperty("评价人id") + private Long evaluatorId; + + @Schema(description = "评价日期") + @ExcelProperty("评价日期") + private LocalDateTime evaluationDate; + + @Schema(description = "流程审批状态", example = "2") + @ExcelProperty("流程审批状态") + private String flowStatus; + + @Schema(description = "流程实例id", example = "24931") + @ExcelProperty("流程实例id") + private String flowInstanceId; + + @Schema(description = "所属部门") + @ExcelProperty("所属部门") + private String systemDepartmentCode; + + @Schema(description = "备注") + @ExcelProperty("备注") + private String remark; + + @Schema(description = "创建时间") + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationSaveReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationSaveReqVO.java new file mode 100644 index 0000000..5f208ce --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierEvaluationSaveReqVO.java @@ -0,0 +1,48 @@ +package com.zt.plat.module.qms.office.supplier.controller.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +import java.time.LocalDateTime; + +@Schema(description = "管理后台 - 供应商评价新增/修改 Request VO") +@Data +public class SupplierEvaluationSaveReqVO { + + @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "31678") + private Long id; + + @Schema(description = "供应商ID", example = "3346") + private Long supplierId; + + @Schema(description = "表单模板id", example = "32304") + private Long formId; + + @Schema(description = "评价内容") + private String content; + + @Schema(description = "评价结论") + private String conclusion; + + @Schema(description = "评价人") + private String evaluator; + + @Schema(description = "评价人id", example = "25943") + private Long evaluatorId; + + @Schema(description = "评价日期") + private LocalDateTime evaluationDate; + + @Schema(description = "流程审批状态", example = "2") + private String flowStatus; + + @Schema(description = "流程实例id", example = "24931") + private String flowInstanceId; + + @Schema(description = "所属部门") + private String systemDepartmentCode; + + @Schema(description = "备注") + private String remark; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPageReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPageReqVO.java new file mode 100644 index 0000000..e00c5d0 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPageReqVO.java @@ -0,0 +1,49 @@ +package com.zt.plat.module.qms.office.supplier.controller.vo; + +import lombok.*; +import io.swagger.v3.oas.annotations.media.Schema; +import com.zt.plat.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 供应商分页 Request VO") +@Data +public class SupplierPageReqVO extends PageParam { + + @Schema(description = "供应商名称", example = "张三") + private String name; + + @Schema(description = "编号") + private String code; + + @Schema(description = "类型", example = "1") + private String type; + + @Schema(description = "地址") + private String address; + + @Schema(description = "联系人") + private String contact; + + @Schema(description = "电话") + private String mobile; + + @Schema(description = "经营范围") + private String businessScope; + + @Schema(description = "禁用标识") + private String cancelFlag; + + @Schema(description = "所属部门") + private String systemDepartmentCode; + + @Schema(description = "备注") + private String remark; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPropertiesPageReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPropertiesPageReqVO.java new file mode 100644 index 0000000..101fdba --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPropertiesPageReqVO.java @@ -0,0 +1,50 @@ +package com.zt.plat.module.qms.office.supplier.controller.vo; + +import lombok.*; +import io.swagger.v3.oas.annotations.media.Schema; +import com.zt.plat.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 供应商属性分页 Request VO") +@Data +public class SupplierPropertiesPageReqVO extends PageParam { + + @Schema(description = "供应商ID", example = "31214") + private Long supplierId; + + @Schema(description = "业务类型,【字典】【jy_supplier_bsn_type】供应商类型、资质、证照等", example = "1") + private String businessType; + + @Schema(description = "业务编码") + private String businessCode; + + @Schema(description = "子业务编码") + private String subitemCode; + + @Schema(description = "名称", example = "王五") + private String name; + + @Schema(description = "有效期开始") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] startDate; + + @Schema(description = "有效期截止") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] endDate; + + @Schema(description = "所属部门") + private String systemDepartmentCode; + + @Schema(description = "备注") + private String remark; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPropertiesRespVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPropertiesRespVO.java new file mode 100644 index 0000000..d39ddb0 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPropertiesRespVO.java @@ -0,0 +1,59 @@ +package com.zt.plat.module.qms.office.supplier.controller.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +import java.time.LocalDate; +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 供应商属性 Response VO") +@Data +@ExcelIgnoreUnannotated +public class SupplierPropertiesRespVO { + + @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "22878") + @ExcelProperty("主键") + private Long id; + + @Schema(description = "供应商ID", example = "31214") + @ExcelProperty("供应商ID") + private Long supplierId; + + @Schema(description = "业务类型,【字典】【jy_supplier_bsn_type】供应商类型、资质、证照等", example = "1") + @ExcelProperty("业务类型,【字典】【jy_supplier_bsn_type】供应商类型、资质、证照等") + private String businessType; + + @Schema(description = "业务编码") + @ExcelProperty("业务编码") + private String businessCode; + + @Schema(description = "子业务编码") + @ExcelProperty("子业务编码") + private String subitemCode; + + @Schema(description = "名称", example = "王五") + @ExcelProperty("名称") + private String name; + + @Schema(description = "有效期开始") + @ExcelProperty("有效期开始") + private LocalDateTime startDate; + + @Schema(description = "有效期截止") + @ExcelProperty("有效期截止") + private LocalDateTime endDate; + + @Schema(description = "所属部门") + @ExcelProperty("所属部门") + private String systemDepartmentCode; + + @Schema(description = "备注") + @ExcelProperty("备注") + private String remark; + + @Schema(description = "创建时间") + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPropertiesSaveReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPropertiesSaveReqVO.java new file mode 100644 index 0000000..77a27cf --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierPropertiesSaveReqVO.java @@ -0,0 +1,43 @@ +package com.zt.plat.module.qms.office.supplier.controller.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +@Schema(description = "管理后台 - 供应商属性新增/修改 Request VO") +@Data +public class SupplierPropertiesSaveReqVO { + + @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "22878") + private Long id; + + @Schema(description = "供应商ID", example = "31214") + private Long supplierId; + + @Schema(description = "业务类型,【字典】【jy_supplier_bsn_type】供应商类型、资质、证照等", example = "1") + private String businessType; + + @Schema(description = "业务编码") + private String businessCode; + + @Schema(description = "子业务编码") + private String subitemCode; + + @Schema(description = "名称", example = "王五") + private String name; + + @Schema(description = "有效期开始") + private LocalDateTime startDate; + + @Schema(description = "有效期截止") + private LocalDateTime endDate; + + @Schema(description = "所属部门") + private String systemDepartmentCode; + + @Schema(description = "备注") + private String remark; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierRespVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierRespVO.java new file mode 100644 index 0000000..d120efc --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierRespVO.java @@ -0,0 +1,62 @@ +package com.zt.plat.module.qms.office.supplier.controller.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +import java.time.LocalDateTime; +import com.alibaba.excel.annotation.*; + +@Schema(description = "管理后台 - 供应商 Response VO") +@Data +@ExcelIgnoreUnannotated +public class SupplierRespVO { + + @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "15586") + @ExcelProperty("主键") + private Long id; + + @Schema(description = "供应商名称", example = "张三") + @ExcelProperty("供应商名称") + private String name; + + @Schema(description = "编号") + @ExcelProperty("编号") + private String code; + + @Schema(description = "类型", example = "1") + @ExcelProperty("类型") + private String type; + + @Schema(description = "地址") + @ExcelProperty("地址") + private String address; + + @Schema(description = "联系人") + @ExcelProperty("联系人") + private String contact; + + @Schema(description = "电话") + @ExcelProperty("电话") + private String mobile; + + @Schema(description = "经营范围") + @ExcelProperty("经营范围") + private String businessScope; + + @Schema(description = "禁用标识") + @ExcelProperty("禁用标识") + private String cancelFlag; + + @Schema(description = "所属部门") + @ExcelProperty("所属部门") + private String systemDepartmentCode; + + @Schema(description = "备注") + @ExcelProperty("备注") + private String remark; + + @Schema(description = "创建时间") + @ExcelProperty("创建时间") + private LocalDateTime createTime; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierSaveReqVO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierSaveReqVO.java new file mode 100644 index 0000000..843cbfc --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/controller/vo/SupplierSaveReqVO.java @@ -0,0 +1,43 @@ +package com.zt.plat.module.qms.office.supplier.controller.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +@Schema(description = "管理后台 - 供应商新增/修改 Request VO") +@Data +public class SupplierSaveReqVO { + + @Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "15586") + private Long id; + + @Schema(description = "供应商名称", example = "张三") + private String name; + + @Schema(description = "编号") + private String code; + + @Schema(description = "类型", example = "1") + private String type; + + @Schema(description = "地址") + private String address; + + @Schema(description = "联系人") + private String contact; + + @Schema(description = "电话") + private String mobile; + + @Schema(description = "经营范围") + private String businessScope; + + @Schema(description = "禁用标识") + private String cancelFlag; + + @Schema(description = "所属部门") + private String systemDepartmentCode; + + @Schema(description = "备注") + private String remark; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierDO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierDO.java new file mode 100644 index 0000000..08ad568 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierDO.java @@ -0,0 +1,81 @@ +package com.zt.plat.module.qms.office.supplier.dal.dataobject; + +import lombok.*; +import com.baomidou.mybatisplus.annotation.*; +import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO; +/** +* 供应商 DO +* +* @author 后台管理 +*/ +@TableName("t_splr") +@KeySequence("t_splr_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +/** +* 支持业务基类继承:isBusiness=true 时继承 BusinessBaseDO,否则继承 BaseDO +*/ +public class SupplierDO extends BusinessBaseDO { + + + + /** + * 主键 + */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + /** + * 供应商名称 + */ + @TableField("NAME") + private String name; + /** + * 编号 + */ + @TableField("CD") + private String code; + /** + * 类型 + */ + @TableField("TP") + private String type; + /** + * 地址 + */ + @TableField("ADR") + private String address; + /** + * 联系人 + */ + @TableField("CTCT") + private String contact; + /** + * 电话 + */ + @TableField("MOB") + private String mobile; + /** + * 经营范围 + */ + @TableField("BSN_SCO") + private String businessScope; + + //禁用标识 + @TableField("CNL_FLG") + private String cancelFlag; + /** + * 所属部门 + */ + @TableField("SYS_DEPT_CD") + private String systemDepartmentCode; + /** + * 备注 + */ + @TableField("RMK") + private String remark; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierEvaluationAtDO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierEvaluationAtDO.java new file mode 100644 index 0000000..945983a --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierEvaluationAtDO.java @@ -0,0 +1,57 @@ +package com.zt.plat.module.qms.office.supplier.dal.dataobject; + +import lombok.*; +import com.baomidou.mybatisplus.annotation.*; +import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO; +/** +* 供应商评价关系 DO +* +* @author 后台管理 +*/ +@TableName("t_splr_evl_at") +@KeySequence("t_splr_evl_at_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +/** +* 支持业务基类继承:isBusiness=true 时继承 BusinessBaseDO,否则继承 BaseDO +*/ +public class SupplierEvaluationAtDO extends BusinessBaseDO { + + + + /** + * ID + */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + /** + * 评价id + */ + @TableField("SPLR_EVL_ID") + private Long supplierEvaluationId; + /** + * 目标对象id + */ + @TableField("TGT_ID") + private Long targetId; + /** + * 目标对象类型,业务类型:设备实例、物料试剂、检定校准记录等 + */ + @TableField("TGT_TP") + private String targetType; + /** + * 所属部门 + */ + @TableField("SYS_DEPT_CD") + private String systemDepartmentCode; + /** + * 备注 + */ + @TableField("RMK") + private String remark; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierEvaluationDO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierEvaluationDO.java new file mode 100644 index 0000000..c0e1fbb --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierEvaluationDO.java @@ -0,0 +1,90 @@ +package com.zt.plat.module.qms.office.supplier.dal.dataobject; + +import lombok.*; + +import java.time.LocalDateTime; + +import com.baomidou.mybatisplus.annotation.*; +import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO; +/** +* 供应商评价 DO +* +* @author 后台管理 +*/ +@TableName("t_splr_evl") +@KeySequence("t_splr_evl_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +/** +* 支持业务基类继承:isBusiness=true 时继承 BusinessBaseDO,否则继承 BaseDO +*/ +public class SupplierEvaluationDO extends BusinessBaseDO { + + + + /** + * 主键 + */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + /** + * 供应商ID + */ + @TableField("SPLR_ID") + private Long supplierId; + /** + * 表单模板id + */ + @TableField("FORM_ID") + private Long formId; + /** + * 评价内容 + */ + @TableField("CNTT") + private String content; + /** + * 评价结论 + */ + @TableField("CNCL") + private String conclusion; + /** + * 评价人 + */ + @TableField("EVLR") + private String evaluator; + /** + * 评价人id + */ + @TableField("EVLR_ID") + private Long evaluatorId; + /** + * 评价日期 + */ + @TableField("EVL_DT") + private LocalDateTime evaluationDate; + /** + * 流程审批状态 + */ + @TableField("FLW_STS") + private String flowStatus; + /** + * 流程实例id + */ + @TableField("FLW_INSC_ID") + private String flowInstanceId; + /** + * 所属部门 + */ + @TableField("SYS_DEPT_CD") + private String systemDepartmentCode; + /** + * 备注 + */ + @TableField("RMK") + private String remark; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierPropertiesDO.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierPropertiesDO.java new file mode 100644 index 0000000..d74a2a4 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/dataobject/SupplierPropertiesDO.java @@ -0,0 +1,81 @@ +package com.zt.plat.module.qms.office.supplier.dal.dataobject; + +import lombok.*; +import com.baomidou.mybatisplus.annotation.*; +import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +/** +* 供应商属性 DO +* +* @author 后台管理 +*/ +@TableName("t_splr_prps") +@KeySequence("t_splr_prps_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +/** +* 支持业务基类继承:isBusiness=true 时继承 BusinessBaseDO,否则继承 BaseDO +*/ +public class SupplierPropertiesDO extends BusinessBaseDO { + + + + /** + * 主键 + */ + @TableId(type = IdType.ASSIGN_ID) + private Long id; + /** + * 供应商ID + */ + @TableField("SPLR_ID") + private Long supplierId; + /** + * 业务类型,【字典】【jy_supplier_bsn_type】供应商类型、资质、证照等 + */ + @TableField("BSN_TP") + private String businessType; + /** + * 业务编码 + */ + @TableField("BSN_CD") + private String businessCode; + /** + * 子业务编码 + */ + @TableField("SUB_CD") + private String subitemCode; + /** + * 名称 + */ + @TableField("NAME") + private String name; + /** + * 有效期开始 + */ + @TableField("STRT_DT") + private LocalDateTime startDate; + /** + * 有效期截止 + */ + @TableField("END_DT") + private LocalDateTime endDate; + /** + * 所属部门 + */ + @TableField("SYS_DEPT_CD") + private String systemDepartmentCode; + /** + * 备注 + */ + @TableField("RMK") + private String remark; + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationAtMapper.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationAtMapper.java new file mode 100644 index 0000000..71df810 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationAtMapper.java @@ -0,0 +1,29 @@ +package com.zt.plat.module.qms.office.supplier.dal.mapper; + +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX; +import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX; +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierEvaluationAtDO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationAtPageReqVO; +import org.apache.ibatis.annotations.Mapper; + +/** + * 供应商评价关系 Mapper + * + * @author 后台管理 + */ +@Mapper +public interface SupplierEvaluationAtMapper extends BaseMapperX { + + default PageResult selectPage(SupplierEvaluationAtPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(SupplierEvaluationAtDO::getSupplierEvaluationId, reqVO.getSupplierEvaluationId()) + .eqIfPresent(SupplierEvaluationAtDO::getTargetId, reqVO.getTargetId()) + .eqIfPresent(SupplierEvaluationAtDO::getTargetType, reqVO.getTargetType()) + .eqIfPresent(SupplierEvaluationAtDO::getSystemDepartmentCode, reqVO.getSystemDepartmentCode()) + .eqIfPresent(SupplierEvaluationAtDO::getRemark, reqVO.getRemark()) + .betweenIfPresent(SupplierEvaluationAtDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(SupplierEvaluationAtDO::getId)); + } + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationMapper.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationMapper.java new file mode 100644 index 0000000..c2e5388 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationMapper.java @@ -0,0 +1,35 @@ +package com.zt.plat.module.qms.office.supplier.dal.mapper; + +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX; +import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX; +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierEvaluationDO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationPageReqVO; +import org.apache.ibatis.annotations.Mapper; + +/** + * 供应商评价 Mapper + * + * @author 后台管理 + */ +@Mapper +public interface SupplierEvaluationMapper extends BaseMapperX { + + default PageResult selectPage(SupplierEvaluationPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(SupplierEvaluationDO::getSupplierId, reqVO.getSupplierId()) + .eqIfPresent(SupplierEvaluationDO::getFormId, reqVO.getFormId()) + .eqIfPresent(SupplierEvaluationDO::getContent, reqVO.getContent()) + .eqIfPresent(SupplierEvaluationDO::getConclusion, reqVO.getConclusion()) + .eqIfPresent(SupplierEvaluationDO::getEvaluator, reqVO.getEvaluator()) + .eqIfPresent(SupplierEvaluationDO::getEvaluatorId, reqVO.getEvaluatorId()) + .betweenIfPresent(SupplierEvaluationDO::getEvaluationDate, reqVO.getEvaluationDate()) + .eqIfPresent(SupplierEvaluationDO::getFlowStatus, reqVO.getFlowStatus()) + .eqIfPresent(SupplierEvaluationDO::getFlowInstanceId, reqVO.getFlowInstanceId()) + .eqIfPresent(SupplierEvaluationDO::getSystemDepartmentCode, reqVO.getSystemDepartmentCode()) + .eqIfPresent(SupplierEvaluationDO::getRemark, reqVO.getRemark()) + .betweenIfPresent(SupplierEvaluationDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(SupplierEvaluationDO::getId)); + } + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierMapper.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierMapper.java new file mode 100644 index 0000000..dc232d4 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierMapper.java @@ -0,0 +1,33 @@ +package com.zt.plat.module.qms.office.supplier.dal.mapper; + +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX; +import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX; +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierDO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPageReqVO; +import org.apache.ibatis.annotations.Mapper; + +/** + * 供应商 Mapper + * + * @author 后台管理 + */ +@Mapper +public interface SupplierMapper extends BaseMapperX { + + default PageResult selectPage(SupplierPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .likeIfPresent(SupplierDO::getName, reqVO.getName()) + .eqIfPresent(SupplierDO::getCode, reqVO.getCode()) + .eqIfPresent(SupplierDO::getType, reqVO.getType()) + .eqIfPresent(SupplierDO::getAddress, reqVO.getAddress()) + .eqIfPresent(SupplierDO::getContact, reqVO.getContact()) + .eqIfPresent(SupplierDO::getMobile, reqVO.getMobile()) + .eqIfPresent(SupplierDO::getBusinessScope, reqVO.getBusinessScope()) + .eqIfPresent(SupplierDO::getSystemDepartmentCode, reqVO.getSystemDepartmentCode()) + .eqIfPresent(SupplierDO::getRemark, reqVO.getRemark()) + .betweenIfPresent(SupplierDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(SupplierDO::getId)); + } + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierPropertiesMapper.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierPropertiesMapper.java new file mode 100644 index 0000000..89ecc1e --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierPropertiesMapper.java @@ -0,0 +1,33 @@ +package com.zt.plat.module.qms.office.supplier.dal.mapper; + +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX; +import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX; +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierPropertiesDO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPropertiesPageReqVO; +import org.apache.ibatis.annotations.Mapper; + +/** + * 供应商属性 Mapper + * + * @author 后台管理 + */ +@Mapper +public interface SupplierPropertiesMapper extends BaseMapperX { + + default PageResult selectPage(SupplierPropertiesPageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(SupplierPropertiesDO::getSupplierId, reqVO.getSupplierId()) + .eqIfPresent(SupplierPropertiesDO::getBusinessType, reqVO.getBusinessType()) + .eqIfPresent(SupplierPropertiesDO::getBusinessCode, reqVO.getBusinessCode()) + .eqIfPresent(SupplierPropertiesDO::getSubitemCode, reqVO.getSubitemCode()) + .likeIfPresent(SupplierPropertiesDO::getName, reqVO.getName()) + .betweenIfPresent(SupplierPropertiesDO::getStartDate, reqVO.getStartDate()) + .betweenIfPresent(SupplierPropertiesDO::getEndDate, reqVO.getEndDate()) + .eqIfPresent(SupplierPropertiesDO::getSystemDepartmentCode, reqVO.getSystemDepartmentCode()) + .eqIfPresent(SupplierPropertiesDO::getRemark, reqVO.getRemark()) + .betweenIfPresent(SupplierPropertiesDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(SupplierPropertiesDO::getId)); + } + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationAtService.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationAtService.java new file mode 100644 index 0000000..6fc9006 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationAtService.java @@ -0,0 +1,64 @@ +package com.zt.plat.module.qms.office.supplier.service; + +import java.util.*; + +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationAtPageReqVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationAtRespVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationAtSaveReqVO; +import jakarta.validation.*; +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierEvaluationAtDO; +import com.zt.plat.framework.common.pojo.PageResult; + +/** + * 供应商评价关系 Service 接口 + * + * @author 后台管理 + */ +public interface SupplierEvaluationAtService { + + /** + * 创建供应商评价关系 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + SupplierEvaluationAtRespVO createSupplierEvaluationAt(@Valid SupplierEvaluationAtSaveReqVO createReqVO); + + /** + * 更新供应商评价关系 + * + * @param updateReqVO 更新信息 + */ + void updateSupplierEvaluationAt(@Valid SupplierEvaluationAtSaveReqVO updateReqVO); + + /** + * 删除供应商评价关系 + * + * @param id 编号 + */ + void deleteSupplierEvaluationAt(Long id); + + /** + * 批量删除供应商评价关系 + * + * @param ids 编号 + */ + void deleteSupplierEvaluationAtListByIds(List ids); + + /** + * 获得供应商评价关系 + * + * @param id 编号 + * @return 供应商评价关系 + */ + SupplierEvaluationAtDO getSupplierEvaluationAt(Long id); + + /** + * 获得供应商评价关系分页 + * + * @param pageReqVO 分页查询 + * @return 供应商评价关系分页 + */ + PageResult getSupplierEvaluationAtPage(SupplierEvaluationAtPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationAtServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationAtServiceImpl.java new file mode 100644 index 0000000..b2eadc2 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationAtServiceImpl.java @@ -0,0 +1,92 @@ +package com.zt.plat.module.qms.office.supplier.service; + +import cn.hutool.core.collection.CollUtil; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationAtPageReqVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationAtRespVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationAtSaveReqVO; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; + +import java.util.*; + +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierEvaluationAtDO; +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.common.util.object.BeanUtils; + +import com.zt.plat.module.qms.office.supplier.dal.mapper.SupplierEvaluationAtMapper; + +import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception; +import static com.zt.plat.framework.common.util.collection.CollectionUtils.convertList; +import static com.zt.plat.module.qms.enums.ErrorCodeConstants.*; + +/** + * 供应商评价关系 Service 实现类 + * + * @author 后台管理 + */ +@Service +@Validated +public class SupplierEvaluationAtServiceImpl implements SupplierEvaluationAtService { + + @Resource + private SupplierEvaluationAtMapper supplierEvaluationAtMapper; + + @Override + public SupplierEvaluationAtRespVO createSupplierEvaluationAt(SupplierEvaluationAtSaveReqVO createReqVO) { + // 插入 + SupplierEvaluationAtDO supplierEvaluationAt = BeanUtils.toBean(createReqVO, SupplierEvaluationAtDO.class); + supplierEvaluationAtMapper.insert(supplierEvaluationAt); + // 返回 + return BeanUtils.toBean(supplierEvaluationAt, SupplierEvaluationAtRespVO.class); + } + + @Override + public void updateSupplierEvaluationAt(SupplierEvaluationAtSaveReqVO updateReqVO) { + // 校验存在 + validateSupplierEvaluationAtExists(updateReqVO.getId()); + // 更新 + SupplierEvaluationAtDO updateObj = BeanUtils.toBean(updateReqVO, SupplierEvaluationAtDO.class); + supplierEvaluationAtMapper.updateById(updateObj); + } + + @Override + public void deleteSupplierEvaluationAt(Long id) { + // 校验存在 + validateSupplierEvaluationAtExists(id); + // 删除 + supplierEvaluationAtMapper.deleteById(id); + } + + @Override + public void deleteSupplierEvaluationAtListByIds(List ids) { + // 校验存在 + validateSupplierEvaluationAtExists(ids); + // 删除 + supplierEvaluationAtMapper.deleteByIds(ids); + } + + private void validateSupplierEvaluationAtExists(List ids) { + List list = supplierEvaluationAtMapper.selectByIds(ids); + if (CollUtil.isEmpty(list) || list.size() != ids.size()) { + throw exception(SUPPLIER_EVALUATION_AT_NOT_EXISTS); + } + } + + private void validateSupplierEvaluationAtExists(Long id) { + if (supplierEvaluationAtMapper.selectById(id) == null) { + throw exception(SUPPLIER_EVALUATION_AT_NOT_EXISTS); + } + } + + @Override + public SupplierEvaluationAtDO getSupplierEvaluationAt(Long id) { + return supplierEvaluationAtMapper.selectById(id); + } + + @Override + public PageResult getSupplierEvaluationAtPage(SupplierEvaluationAtPageReqVO pageReqVO) { + return supplierEvaluationAtMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationService.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationService.java new file mode 100644 index 0000000..5eff693 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationService.java @@ -0,0 +1,64 @@ +package com.zt.plat.module.qms.office.supplier.service; + +import java.util.*; + +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationPageReqVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationRespVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationSaveReqVO; +import jakarta.validation.*; +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierEvaluationDO; +import com.zt.plat.framework.common.pojo.PageResult; + +/** + * 供应商评价 Service 接口 + * + * @author 后台管理 + */ +public interface SupplierEvaluationService { + + /** + * 创建供应商评价 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + SupplierEvaluationRespVO createSupplierEvaluation(@Valid SupplierEvaluationSaveReqVO createReqVO); + + /** + * 更新供应商评价 + * + * @param updateReqVO 更新信息 + */ + void updateSupplierEvaluation(@Valid SupplierEvaluationSaveReqVO updateReqVO); + + /** + * 删除供应商评价 + * + * @param id 编号 + */ + void deleteSupplierEvaluation(Long id); + + /** + * 批量删除供应商评价 + * + * @param ids 编号 + */ + void deleteSupplierEvaluationListByIds(List ids); + + /** + * 获得供应商评价 + * + * @param id 编号 + * @return 供应商评价 + */ + SupplierEvaluationDO getSupplierEvaluation(Long id); + + /** + * 获得供应商评价分页 + * + * @param pageReqVO 分页查询 + * @return 供应商评价分页 + */ + PageResult getSupplierEvaluationPage(SupplierEvaluationPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationServiceImpl.java new file mode 100644 index 0000000..e19b7e8 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierEvaluationServiceImpl.java @@ -0,0 +1,92 @@ +package com.zt.plat.module.qms.office.supplier.service; + +import cn.hutool.core.collection.CollUtil; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationPageReqVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationRespVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierEvaluationSaveReqVO; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; + +import java.util.*; + +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierEvaluationDO; +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.common.util.object.BeanUtils; + +import com.zt.plat.module.qms.office.supplier.dal.mapper.SupplierEvaluationMapper; + +import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception; +import static com.zt.plat.framework.common.util.collection.CollectionUtils.convertList; +import static com.zt.plat.module.qms.enums.ErrorCodeConstants.*; + +/** + * 供应商评价 Service 实现类 + * + * @author 后台管理 + */ +@Service +@Validated +public class SupplierEvaluationServiceImpl implements SupplierEvaluationService { + + @Resource + private SupplierEvaluationMapper supplierEvaluationMapper; + + @Override + public SupplierEvaluationRespVO createSupplierEvaluation(SupplierEvaluationSaveReqVO createReqVO) { + // 插入 + SupplierEvaluationDO supplierEvaluation = BeanUtils.toBean(createReqVO, SupplierEvaluationDO.class); + supplierEvaluationMapper.insert(supplierEvaluation); + // 返回 + return BeanUtils.toBean(supplierEvaluation, SupplierEvaluationRespVO.class); + } + + @Override + public void updateSupplierEvaluation(SupplierEvaluationSaveReqVO updateReqVO) { + // 校验存在 + validateSupplierEvaluationExists(updateReqVO.getId()); + // 更新 + SupplierEvaluationDO updateObj = BeanUtils.toBean(updateReqVO, SupplierEvaluationDO.class); + supplierEvaluationMapper.updateById(updateObj); + } + + @Override + public void deleteSupplierEvaluation(Long id) { + // 校验存在 + validateSupplierEvaluationExists(id); + // 删除 + supplierEvaluationMapper.deleteById(id); + } + + @Override + public void deleteSupplierEvaluationListByIds(List ids) { + // 校验存在 + validateSupplierEvaluationExists(ids); + // 删除 + supplierEvaluationMapper.deleteByIds(ids); + } + + private void validateSupplierEvaluationExists(List ids) { + List list = supplierEvaluationMapper.selectByIds(ids); + if (CollUtil.isEmpty(list) || list.size() != ids.size()) { + throw exception(SUPPLIER_EVALUATION_NOT_EXISTS); + } + } + + private void validateSupplierEvaluationExists(Long id) { + if (supplierEvaluationMapper.selectById(id) == null) { + throw exception(SUPPLIER_EVALUATION_NOT_EXISTS); + } + } + + @Override + public SupplierEvaluationDO getSupplierEvaluation(Long id) { + return supplierEvaluationMapper.selectById(id); + } + + @Override + public PageResult getSupplierEvaluationPage(SupplierEvaluationPageReqVO pageReqVO) { + return supplierEvaluationMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierPropertiesService.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierPropertiesService.java new file mode 100644 index 0000000..dbd1b61 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierPropertiesService.java @@ -0,0 +1,64 @@ +package com.zt.plat.module.qms.office.supplier.service; + +import java.util.*; + +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPropertiesPageReqVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPropertiesRespVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPropertiesSaveReqVO; +import jakarta.validation.*; +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierPropertiesDO; +import com.zt.plat.framework.common.pojo.PageResult; + +/** + * 供应商属性 Service 接口 + * + * @author 后台管理 + */ +public interface SupplierPropertiesService { + + /** + * 创建供应商属性 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + SupplierPropertiesRespVO createSupplierProperties(@Valid SupplierPropertiesSaveReqVO createReqVO); + + /** + * 更新供应商属性 + * + * @param updateReqVO 更新信息 + */ + void updateSupplierProperties(@Valid SupplierPropertiesSaveReqVO updateReqVO); + + /** + * 删除供应商属性 + * + * @param id 编号 + */ + void deleteSupplierProperties(Long id); + + /** + * 批量删除供应商属性 + * + * @param ids 编号 + */ + void deleteSupplierPropertiesListByIds(List ids); + + /** + * 获得供应商属性 + * + * @param id 编号 + * @return 供应商属性 + */ + SupplierPropertiesDO getSupplierProperties(Long id); + + /** + * 获得供应商属性分页 + * + * @param pageReqVO 分页查询 + * @return 供应商属性分页 + */ + PageResult getSupplierPropertiesPage(SupplierPropertiesPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierPropertiesServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierPropertiesServiceImpl.java new file mode 100644 index 0000000..7b08e56 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierPropertiesServiceImpl.java @@ -0,0 +1,92 @@ +package com.zt.plat.module.qms.office.supplier.service; + +import cn.hutool.core.collection.CollUtil; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPropertiesPageReqVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPropertiesRespVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPropertiesSaveReqVO; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; + +import java.util.*; + +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierPropertiesDO; +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.common.util.object.BeanUtils; + +import com.zt.plat.module.qms.office.supplier.dal.mapper.SupplierPropertiesMapper; + +import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception; +import static com.zt.plat.framework.common.util.collection.CollectionUtils.convertList; +import static com.zt.plat.module.qms.enums.ErrorCodeConstants.*; + +/** + * 供应商属性 Service 实现类 + * + * @author 后台管理 + */ +@Service +@Validated +public class SupplierPropertiesServiceImpl implements SupplierPropertiesService { + + @Resource + private SupplierPropertiesMapper supplierPropertiesMapper; + + @Override + public SupplierPropertiesRespVO createSupplierProperties(SupplierPropertiesSaveReqVO createReqVO) { + // 插入 + SupplierPropertiesDO supplierProperties = BeanUtils.toBean(createReqVO, SupplierPropertiesDO.class); + supplierPropertiesMapper.insert(supplierProperties); + // 返回 + return BeanUtils.toBean(supplierProperties, SupplierPropertiesRespVO.class); + } + + @Override + public void updateSupplierProperties(SupplierPropertiesSaveReqVO updateReqVO) { + // 校验存在 + validateSupplierPropertiesExists(updateReqVO.getId()); + // 更新 + SupplierPropertiesDO updateObj = BeanUtils.toBean(updateReqVO, SupplierPropertiesDO.class); + supplierPropertiesMapper.updateById(updateObj); + } + + @Override + public void deleteSupplierProperties(Long id) { + // 校验存在 + validateSupplierPropertiesExists(id); + // 删除 + supplierPropertiesMapper.deleteById(id); + } + + @Override + public void deleteSupplierPropertiesListByIds(List ids) { + // 校验存在 + validateSupplierPropertiesExists(ids); + // 删除 + supplierPropertiesMapper.deleteByIds(ids); + } + + private void validateSupplierPropertiesExists(List ids) { + List list = supplierPropertiesMapper.selectByIds(ids); + if (CollUtil.isEmpty(list) || list.size() != ids.size()) { + throw exception(SUPPLIER_PROPERTIES_NOT_EXISTS); + } + } + + private void validateSupplierPropertiesExists(Long id) { + if (supplierPropertiesMapper.selectById(id) == null) { + throw exception(SUPPLIER_PROPERTIES_NOT_EXISTS); + } + } + + @Override + public SupplierPropertiesDO getSupplierProperties(Long id) { + return supplierPropertiesMapper.selectById(id); + } + + @Override + public PageResult getSupplierPropertiesPage(SupplierPropertiesPageReqVO pageReqVO) { + return supplierPropertiesMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierService.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierService.java new file mode 100644 index 0000000..003ca82 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierService.java @@ -0,0 +1,64 @@ +package com.zt.plat.module.qms.office.supplier.service; + +import java.util.*; + +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPageReqVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierRespVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierSaveReqVO; +import jakarta.validation.*; +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierDO; +import com.zt.plat.framework.common.pojo.PageResult; + +/** + * 供应商 Service 接口 + * + * @author 后台管理 + */ +public interface SupplierService { + + /** + * 创建供应商 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + SupplierRespVO createSupplier(@Valid SupplierSaveReqVO createReqVO); + + /** + * 更新供应商 + * + * @param updateReqVO 更新信息 + */ + void updateSupplier(@Valid SupplierSaveReqVO updateReqVO); + + /** + * 删除供应商 + * + * @param id 编号 + */ + void deleteSupplier(Long id); + + /** + * 批量删除供应商 + * + * @param ids 编号 + */ + void deleteSupplierListByIds(List ids); + + /** + * 获得供应商 + * + * @param id 编号 + * @return 供应商 + */ + SupplierDO getSupplier(Long id); + + /** + * 获得供应商分页 + * + * @param pageReqVO 分页查询 + * @return 供应商分页 + */ + PageResult getSupplierPage(SupplierPageReqVO pageReqVO); + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierServiceImpl.java new file mode 100644 index 0000000..867d750 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/office/supplier/service/SupplierServiceImpl.java @@ -0,0 +1,92 @@ +package com.zt.plat.module.qms.office.supplier.service; + +import cn.hutool.core.collection.CollUtil; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierPageReqVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierRespVO; +import com.zt.plat.module.qms.office.supplier.controller.vo.SupplierSaveReqVO; +import org.springframework.stereotype.Service; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; + +import java.util.*; + +import com.zt.plat.module.qms.office.supplier.dal.dataobject.SupplierDO; +import com.zt.plat.framework.common.pojo.PageResult; +import com.zt.plat.framework.common.util.object.BeanUtils; + +import com.zt.plat.module.qms.office.supplier.dal.mapper.SupplierMapper; + +import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception; +import static com.zt.plat.framework.common.util.collection.CollectionUtils.convertList; +import static com.zt.plat.module.qms.enums.ErrorCodeConstants.*; + +/** + * 供应商 Service 实现类 + * + * @author 后台管理 + */ +@Service +@Validated +public class SupplierServiceImpl implements SupplierService { + + @Resource + private SupplierMapper supplierMapper; + + @Override + public SupplierRespVO createSupplier(SupplierSaveReqVO createReqVO) { + // 插入 + SupplierDO supplier = BeanUtils.toBean(createReqVO, SupplierDO.class); + supplierMapper.insert(supplier); + // 返回 + return BeanUtils.toBean(supplier, SupplierRespVO.class); + } + + @Override + public void updateSupplier(SupplierSaveReqVO updateReqVO) { + // 校验存在 + validateSupplierExists(updateReqVO.getId()); + // 更新 + SupplierDO updateObj = BeanUtils.toBean(updateReqVO, SupplierDO.class); + supplierMapper.updateById(updateObj); + } + + @Override + public void deleteSupplier(Long id) { + // 校验存在 + validateSupplierExists(id); + // 删除 + supplierMapper.deleteById(id); + } + + @Override + public void deleteSupplierListByIds(List ids) { + // 校验存在 + validateSupplierExists(ids); + // 删除 + supplierMapper.deleteByIds(ids); + } + + private void validateSupplierExists(List ids) { + List list = supplierMapper.selectByIds(ids); + if (CollUtil.isEmpty(list) || list.size() != ids.size()) { + throw exception(SUPPLIER_NOT_EXISTS); + } + } + + private void validateSupplierExists(Long id) { + if (supplierMapper.selectById(id) == null) { + throw exception(SUPPLIER_NOT_EXISTS); + } + } + + @Override + public SupplierDO getSupplier(Long id) { + return supplierMapper.selectById(id); + } + + @Override + public PageResult getSupplierPage(SupplierPageReqVO pageReqVO) { + return supplierMapper.selectPage(pageReqVO); + } + +} \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/deleteme b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/deleteme deleted file mode 100644 index e69de29..0000000 diff --git a/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationAtMapper.xml b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationAtMapper.xml new file mode 100644 index 0000000..b151ed0 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationAtMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationMapper.xml b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationMapper.xml new file mode 100644 index 0000000..cd84c69 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierEvaluationMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierMapper.xml b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierMapper.xml new file mode 100644 index 0000000..abf2da0 --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file diff --git a/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierPropertiesMapper.xml b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierPropertiesMapper.xml new file mode 100644 index 0000000..270074a --- /dev/null +++ b/zt-module-qms/zt-module-qms-server/src/main/resources/com/zt/plat/module/qms/office/supplier/dal/mapper/SupplierPropertiesMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file