heheng
7 小时以前 407885cde2e4b434509d0f97d4c627c9636f4735
部分新功能
已添加36个文件
1822 ■■■■■ 文件已修改
multi-admin/src/main/java/com/gkhy/exam/admin/controller/web/OutsourcedCommonController.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-admin/src/main/java/com/gkhy/exam/admin/controller/web/OutsourcedProductController.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-admin/src/main/java/com/gkhy/exam/admin/controller/web/OutsourcedReviewController.java 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-admin/src/main/java/com/gkhy/exam/admin/controller/web/OutsourcedUnqualifiedController.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-admin/src/main/java/com/gkhy/exam/admin/controller/web/WarehousingRecordController.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/domain/OutsourcedCommon.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/domain/OutsourcedProduct.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/domain/OutsourcedReview.java 185 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/domain/OutsourcedReviewSubsidiary.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/domain/OutsourcedUnqualified.java 92 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/domain/WarehousingRecord.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/domain/WarehousingRecordDetails.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/mapper/OutsourcedCommonMapper.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/mapper/OutsourcedProductMapper.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/mapper/OutsourcedReviewMapper.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/mapper/OutsourcedReviewSubsidiaryMapper.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/mapper/OutsourcedUnqualifiedMapper.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/mapper/WarehousingRecordDetailsMapper.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/mapper/WarehousingRecordMapper.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/service/OutsourcedCommonService.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/service/OutsourcedProductService.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/service/OutsourcedReviewService.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/service/OutsourcedUnqualifiedService.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/service/WarehousingRecordService.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/service/impl/OutsourcedCommonServiceImpl.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/service/impl/OutsourcedProductServiceImpl.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/service/impl/OutsourcedReviewServiceImpl.java 128 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/service/impl/OutsourcedUnqualifiedServiceImpl.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/java/com/gkhy/exam/system/service/impl/WarehousingRecordServiceImpl.java 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/resources/mapper/system/OutsourcedCommonMapper.xml 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/resources/mapper/system/OutsourcedProductMapper.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/resources/mapper/system/OutsourcedReviewMapper.xml 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/resources/mapper/system/OutsourcedReviewSubsidiaryMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/resources/mapper/system/OutsourcedUnqualifiedMapper.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/resources/mapper/system/WarehousingRecordDetailsMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-system/src/main/resources/mapper/system/WarehousingRecordMapper.xml 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
multi-admin/src/main/java/com/gkhy/exam/admin/controller/web/OutsourcedCommonController.java
对比新文件
@@ -0,0 +1,60 @@
package com.gkhy.exam.admin.controller.web;
import com.gkhy.exam.common.annotation.RepeatSubmit;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.system.domain.OutsourcedCommon;
import com.gkhy.exam.system.domain.OutsourcedProduct;
import com.gkhy.exam.system.service.OutsourcedCommonService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
 * <p>
 * 外包 前端控制器
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@RestController
@RequestMapping("/system/outsourcedCommon")
@Api(tags = "外包工艺流程图/加工合同质量协议/产品检验合格记录管理")
public class OutsourcedCommonController {
    @Autowired
    private OutsourcedCommonService outsourcedCommonService;
    @ApiOperation(value = "外包工艺流程图/加工合同质量协议/产品检验合格记录列表(分页)")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"),
            @ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10"),
            @ApiImplicitParam(paramType = "query", name = "companyId", dataType = "int", required = false, value = "公司id"),
            @ApiImplicitParam(paramType = "query", name = "osType", dataType = "int", required = true, value = "1、外包工艺流程图2、加工合同质量协议3、产品检验合格记录"),
    })
    @GetMapping("/selectOutsourcedCommonList")
    public CommonResult selectOutsourcedCommonList(OutsourcedCommon outsourcedCommon){
        return CommonResult.success(outsourcedCommonService.selectOutsourcedCommonList(outsourcedCommon));
    }
    @RepeatSubmit
    @ApiOperation(value = "新增编辑工艺流程图/加工合同质量协议/产品检验合格记录")
    @PostMapping("/saveOutsourcedCommon")
    public CommonResult saveOutsourcedCommon(@RequestBody @Validated OutsourcedCommon outsourcedCommon){
        return outsourcedCommonService.saveOutsourcedCommon(outsourcedCommon);
    }
    @ApiOperation(value = "删除外包工艺流程图/加工合同质量协议/产品检验合格记录")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", name = "id", dataType = "int", required = true, value = "id"),
    })
    @GetMapping("/deletedOutsourcedCommon")
    public CommonResult deletedOutsourcedCommon(@RequestParam Long id){
        return outsourcedCommonService.deletedOutsourcedCommon(id);
    }
}
multi-admin/src/main/java/com/gkhy/exam/admin/controller/web/OutsourcedProductController.java
对比新文件
@@ -0,0 +1,61 @@
package com.gkhy.exam.admin.controller.web;
import com.gkhy.exam.common.annotation.RepeatSubmit;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.system.domain.AnnualMaintenance;
import com.gkhy.exam.system.domain.OutsourcedProduct;
import com.gkhy.exam.system.domain.vo.AnnualMaintenanceSaveDTOReq;
import com.gkhy.exam.system.service.AnnualMaintenanceService;
import com.gkhy.exam.system.service.OutsourcedProductService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
/**
 * <p>
 * 外包产品名称 前端控制器
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@RestController
@RequestMapping("/system/outsourcedProduct")
@Api(tags = "外包产品名称管理")
public class OutsourcedProductController {
    @Resource
    private OutsourcedProductService outsourcedProductService;
    @ApiOperation(value = "外包产品名称列表(分页)")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"),
            @ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10"),
            @ApiImplicitParam(paramType = "query", name = "companyId", dataType = "int", required = false, value = "公司id"),
    })
    @GetMapping("/selectOutsourcedProductList")
    public CommonResult selectOutsourcedProductList(OutsourcedProduct outsourcedProduct){
        return CommonResult.success(outsourcedProductService.selectOutsourcedProductList(outsourcedProduct));
    }
    @RepeatSubmit
    @ApiOperation(value = "新增编辑外包产品名称")
    @PostMapping("/saveOutsourcedProduct")
    public CommonResult saveOutsourcedProduct(@RequestBody @Validated OutsourcedProduct outsourcedProduct){
        return outsourcedProductService.saveOutsourcedProduct(outsourcedProduct);
    }
    @ApiOperation(value = "删除外包产品名称")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", name = "id", dataType = "int", required = true, value = "id"),
    })
    @GetMapping("/deletedOutsourcedProduct")
    public CommonResult deletedOutsourcedProduct(@RequestParam Long id){
        return outsourcedProductService.deletedOutsourcedProduct(id);
    }
}
multi-admin/src/main/java/com/gkhy/exam/admin/controller/web/OutsourcedReviewController.java
对比新文件
@@ -0,0 +1,67 @@
package com.gkhy.exam.admin.controller.web;
import com.gkhy.exam.common.annotation.RepeatSubmit;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.system.domain.OutsourcedReview;
import com.gkhy.exam.system.domain.WarehousingRecord;
import com.gkhy.exam.system.service.OutsourcedReviewService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
 * <p>
 * 外包过程评审 前端控制器
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@RestController
@RequestMapping("/system/outsourcedReview")
@Api(tags = "外包过程评审")
public class OutsourcedReviewController {
    @Autowired
    private OutsourcedReviewService outsourcedReviewService;
    @ApiOperation(value = "外包过程评审列表(分页)")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"),
            @ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10"),
            @ApiImplicitParam(paramType = "query", name = "companyId", dataType = "int", required = false, value = "公司id"),
    })
    @GetMapping("/selectOutsourcedReviewList")
    public CommonResult selectOutsourcedReviewList(OutsourcedReview outsourcedReview){
        return CommonResult.success(outsourcedReviewService.selectOutsourcedReviewList(outsourcedReview));
    }
    @RepeatSubmit
    @ApiOperation(value = "新增编辑外包过程评审")
    @PostMapping("/saveOutsourcedReview")
    public CommonResult saveOutsourcedReview(@RequestBody @Validated OutsourcedReview outsourcedReview){
        return outsourcedReviewService.saveOutsourcedReview(outsourcedReview);
    }
    @ApiOperation(value = "外包过程评审详情")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", name = "id", dataType = "int", required = true, value = "id"),
    })
    @GetMapping("/getOutsourcedReview")
    public CommonResult getOutsourcedReview(@RequestParam Long id){
        return outsourcedReviewService.getOutsourcedReview(id);
    }
    @ApiOperation(value = "删除外包过程评审")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", name = "id", dataType = "int", required = true, value = "id"),
    })
    @GetMapping("/deletedOutsourcedReview")
    public CommonResult deletedOutsourcedReview(@RequestParam Long id){
        return outsourcedReviewService.deletedOutsourcedReview(id);
    }
}
multi-admin/src/main/java/com/gkhy/exam/admin/controller/web/OutsourcedUnqualifiedController.java
对比新文件
@@ -0,0 +1,58 @@
package com.gkhy.exam.admin.controller.web;
import com.gkhy.exam.common.annotation.RepeatSubmit;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.system.domain.OutsourcedProduct;
import com.gkhy.exam.system.domain.OutsourcedUnqualified;
import com.gkhy.exam.system.service.OutsourcedUnqualifiedService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
 * <p>
 * 外包不合格品处理及纠错 前端控制器
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@RestController
@RequestMapping("/system/outsourcedUnqualified")
@Api(tags = "外包不合格品处理及纠错管理")
public class OutsourcedUnqualifiedController {
    @Autowired
    private OutsourcedUnqualifiedService outsourcedUnqualifiedService;
    @ApiOperation(value = "外包不合格品处理及纠错列表(分页)")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"),
            @ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10"),
            @ApiImplicitParam(paramType = "query", name = "companyId", dataType = "int", required = false, value = "公司id"),
    })
    @GetMapping("/selectOutsourcedUnqualifiedList")
    public CommonResult selectOutsourcedUnqualifiedList(OutsourcedUnqualified outsourcedUnqualified){
        return CommonResult.success(outsourcedUnqualifiedService.selectOutsourcedUnqualifiedList(outsourcedUnqualified));
    }
    @RepeatSubmit
    @ApiOperation(value = "新增编辑外包不合格品处理及纠错")
    @PostMapping("/saveOutsourcedUnqualified")
    public CommonResult saveOutsourcedUnqualified(@RequestBody @Validated OutsourcedUnqualified outsourcedUnqualified){
        return outsourcedUnqualifiedService.saveOutsourcedUnqualified(outsourcedUnqualified);
    }
    @ApiOperation(value = "删除外包不合格品处理及纠错")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", name = "id", dataType = "int", required = true, value = "id"),
    })
    @GetMapping("/deletedOutsourcedUnqualified")
    public CommonResult deletedOutsourcedUnqualified(@RequestParam Long id){
        return outsourcedUnqualifiedService.deletedOutsourcedUnqualified(id);
    }
}
multi-admin/src/main/java/com/gkhy/exam/admin/controller/web/WarehousingRecordController.java
对比新文件
@@ -0,0 +1,65 @@
package com.gkhy.exam.admin.controller.web;
import com.gkhy.exam.common.annotation.RepeatSubmit;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.system.domain.OutsourcedUnqualified;
import com.gkhy.exam.system.domain.WarehousingRecord;
import com.gkhy.exam.system.service.WarehousingRecordService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
 * <p>
 * 出入库记录主表 前端控制器
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@RestController
@RequestMapping("/system/warehousingRecord")
@Api(tags = "出入库记录")
public class WarehousingRecordController {
    @Autowired
    private WarehousingRecordService warehousingRecordService;
    @ApiOperation(value = "出入库记录列表(分页)")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"),
            @ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10"),
            @ApiImplicitParam(paramType = "query", name = "companyId", dataType = "int", required = false, value = "公司id"),
    })
    @GetMapping("/selectWarehousingRecordList")
    public CommonResult selectWarehousingRecordList(WarehousingRecord warehousingRecord){
        return CommonResult.success(warehousingRecordService.selectWarehousingRecordList(warehousingRecord));
    }
    @RepeatSubmit
    @ApiOperation(value = "新增编辑出入库记录")
    @PostMapping("/saveWarehousingRecord")
    public CommonResult saveWarehousingRecord(@RequestBody @Validated WarehousingRecord warehousingRecord){
        return warehousingRecordService.saveWarehousingRecord(warehousingRecord);
    }
    @ApiOperation(value = "入库记录详情")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", name = "id", dataType = "int", required = true, value = "id"),
    })
    @GetMapping("/getWarehousingRecord")
    public CommonResult getWarehousingRecord(@RequestParam Long id){
        return warehousingRecordService.getWarehousingRecord(id);
    }
    @ApiOperation(value = "删除出入库记录")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", name = "id", dataType = "int", required = true, value = "id"),
    })
    @GetMapping("/deletedWarehousingRecord")
    public CommonResult deletedWarehousingRecord(@RequestParam Long id){
        return warehousingRecordService.deletedWarehousingRecord(id);
    }
}
multi-system/src/main/java/com/gkhy/exam/system/domain/OutsourcedCommon.java
对比新文件
@@ -0,0 +1,97 @@
package com.gkhy.exam.system.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
 * <p>
 * 外包工艺流程图/加工合同质量协议/产品检验合格记录
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Getter
@Setter
@TableName("outsourced_common")
@ApiModel(value = "OutsourcedCommon对象", description = "外包工艺流程图/加工合同质量协议/产品检验合格记录")
public class OutsourcedCommon implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    @ApiModelProperty(value = "公司id",required = true)
    @TableField("company_id")
    @NotNull(message = "公司id不能为空")
    private Long companyId;
    @ApiModelProperty(value = "供应商id",required = true)
    @TableField("supplier_id")
    @NotNull(message = "供应商id不能为空")
    private Integer supplierId;
    @ApiModelProperty(value = "供应商名称")
    @TableField(exist = false)
    private String supplierName;
//    @ApiModelProperty(value = "产品名称",required = true)
//    @TableField("product_name")
//    @NotBlank(message = "产品名称不能为空")
//    private String productName;
    @ApiModelProperty(value = "1、外包工艺流程图2、加工合同质量协议3、产品检验合格记录",required = true)
    @TableField("os_type")
    @NotNull(message = "类型不能为空")
    private Integer osType;
    @ApiModelProperty("附件名称")
    @TableField("file_name")
    private String fileName;
    @ApiModelProperty("附件地址")
    @TableField("file_path")
    private String filePath;
    @ApiModelProperty("格式")
    @TableField("format")
    private String format;
    @ApiModelProperty("删除标志(0为删除,1删除,默认0)")
    @TableField("del_flag")
    private Integer delFlag;
    @ApiModelProperty("创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;
    @ApiModelProperty("创建人")
    @TableField("create_by")
    private String createBy;
    @ApiModelProperty("更新时间")
    @TableField("update_time")
    private LocalDateTime updateTime;
    @ApiModelProperty("更新人")
    @TableField("update_by")
    private String updateBy;
    @ApiModelProperty("乐观锁")
    @TableField("version")
    private Integer version;
}
multi-system/src/main/java/com/gkhy/exam/system/domain/OutsourcedProduct.java
对比新文件
@@ -0,0 +1,80 @@
package com.gkhy.exam.system.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
 * <p>
 * 外包产品名称
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Getter
@Setter
@TableName("outsourced_product")
@ApiModel(value = "OutsourcedProduct对象", description = "外包产品名称")
public class OutsourcedProduct implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    @ApiModelProperty(value = "公司id",required = true)
    @TableField("company_id")
    @NotNull(message = "公司id不能为空")
    private Long companyId;
    @ApiModelProperty(value = "供应商id",required = true)
    @TableField("supplier_id")
    @NotNull(message = "供应商id不能为空")
    private Integer supplierId;
    @ApiModelProperty(value = "供应商名称")
    @TableField(exist = false)
    private String supplierName;
    @ApiModelProperty(value = "产品名称",required = true)
    @TableField("product_name")
    @NotBlank(message = "产品名称不能为空")
    private String productName;
    @ApiModelProperty("删除标志(0为删除,1删除,默认0)")
    @TableField("del_flag")
    private Integer delFlag;
    @ApiModelProperty("创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;
    @ApiModelProperty("创建人")
    @TableField("create_by")
    private String createBy;
    @ApiModelProperty("更新时间")
    @TableField("update_time")
    private LocalDateTime updateTime;
    @ApiModelProperty("更新人")
    @TableField("update_by")
    private String updateBy;
    @ApiModelProperty("乐观锁")
    @TableField("version")
    private Integer version;
}
multi-system/src/main/java/com/gkhy/exam/system/domain/OutsourcedReview.java
对比新文件
@@ -0,0 +1,185 @@
package com.gkhy.exam.system.domain;
import com.baomidou.mybatisplus.annotation.*;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
 * <p>
 * 外包过程评审
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Getter
@Setter
@TableName("outsourced_review")
@ApiModel(value = "OutsourcedReview对象", description = "外包过程评审")
public class OutsourcedReview implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    @ApiModelProperty(value = "公司id",required = true)
    @TableField("company_id")
    @NotNull(message = "公司id不能为空")
    private Long companyId;
    @ApiModelProperty(value = "评审名称",required = true)
    @TableField("review_name")
    @NotBlank(message = "评审名称不能为空")
    private String reviewName;
    @ApiModelProperty(value = "产品名称",required = true)
    @TableField("product_name")
    @NotBlank(message = "产品名称不能为空")
    private String productName;
    @ApiModelProperty(value = "部门id",required = true)
    @TableField("dept_id")
    @NotNull(message = "部门id不能为空")
    private Long deptId;
    @ApiModelProperty(value = "部门负责人id",required = true)
    @TableField("dept_leader_id")
    @NotNull(message = "部门负责人id不能为空")
    private Integer deptLeaderId;
    @ApiModelProperty(value = "外包过程",required = true)
    @TableField("outsourced_process")
    @NotBlank(message = "外包过程不能为空")
    private String outsourcedProcess;
    @ApiModelProperty(value = "是否为关键件重要件:1、重要2、关键3、普通",required = true)
    @TableField("piece_type")
    @NotNull(message = "是否为关键件重要件不能为空")
    private Integer pieceType;
    @ApiModelProperty(value = "过程重要性:1、关键2、一般",required = true)
    @TableField("process_type")
    @NotNull(message = "过程重要性不能为空")
    private Integer processType;
    @ApiModelProperty(value = "是否可外包:1、是2、否",required = true)
    @TableField("outsource_type")
    @NotNull(message = "是否可外包不能为空")
    private Integer outsourceType;
    @ApiModelProperty("措施内容")
    @TableField("measure")
    private String measure;
    @ApiModelProperty(value = "申请部门",required = true)
    @TableField("apply_dept")
    @NotBlank(message = "申请部门不能为空")
    private String applyDept;
    @ApiModelProperty(value = "申请部门日期",required = true)
    @TableField("apply_dept_date")
    @NotNull(message = "申请部门日期不能为空")
    private LocalDateTime applyDeptDate;
    @ApiModelProperty(value = "质检部",required = true)
    @TableField("quality_inspection")
    @NotBlank(message = "质检部不能为空")
    private String qualityInspection;
    @ApiModelProperty(value = "质检部日期",required = true)
    @TableField("quality_inspection_date")
    @NotNull(message = "质检部日期不能为空")
    private LocalDateTime qualityInspectionDate;
    @ApiModelProperty(value = "管理者代表",required = true)
    @TableField("management_representative")
    @NotBlank(message = "管理者代表不能为空")
    private String managementRepresentative;
    @ApiModelProperty(value = "管理者代表日期",required = true)
    @TableField("management_representative_date")
    @NotNull(message = "质检部日期不能为空")
    private LocalDateTime managementRepresentativeDate;
    @ApiModelProperty("批准意见")
    @TableField("approval_opinions")
    private String approvalOpinions;
    @ApiModelProperty(value = "主管领导",required = true)
    @TableField("executive")
    @NotBlank(message = "主管领导不能为空")
    private String executive;
    @ApiModelProperty(value = "主管领导日期",required = true)
    @TableField("executive_date")
    @NotNull(message = "主管领导日期不能为空")
    private LocalDateTime executiveDate;
    @ApiModelProperty("过程重要性:1、本单位2、生产急需3、其他")
    @TableField("necessity")
    private String necessity;
    @ApiModelProperty("过程可行性:1、本单位图纸2、本单位合格原材料3、本单位实施过程4、其他")
    @TableField("feasibility")
    private String feasibility;
    @ApiModelProperty("风险识别:1、质量影响2、供货影响3、经济效益4、其他")
    @TableField("risk_recognition")
    private String riskRecognition;
    @ApiModelProperty("质量措施:1、进货检验2、我方检验3、顾客方检验")
    @TableField("quality_measures")
    private String qualityMeasures;
    @ApiModelProperty("进度措施:1、供方沟通2、供方出计划3、列出制约")
    @TableField("progress_measures")
    private String progressMeasures;
    @ApiModelProperty("经济措施:1、我司财务2、预算范围内3、协商解决")
    @TableField("economic_measure")
    private String economicMeasure;
    @ApiModelProperty("删除标志(0为删除,1删除,默认0)")
    @TableField("del_flag")
    private Integer delFlag;
    @ApiModelProperty("创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;
    @ApiModelProperty("创建人")
    @TableField("create_by")
    private String createBy;
    @ApiModelProperty("更新时间")
    @TableField("update_time")
    private LocalDateTime updateTime;
    @ApiModelProperty("更新人")
    @TableField("update_by")
    private String updateBy;
    @ApiModelProperty("乐观锁")
    @TableField("version")
    @Version
    private Integer version;
    @ApiModelProperty("协作单位")
    @TableField(exist = false)
    private List<OutsourcedReviewSubsidiary> outsourcedReviewSubsidiaryList;
    @ApiModelProperty("删除的协作单位id")
    @TableField(exist = false)
    private List<Long> delOutsourcedReviewSubsidiaryIds;
}
multi-system/src/main/java/com/gkhy/exam/system/domain/OutsourcedReviewSubsidiary.java
对比新文件
@@ -0,0 +1,78 @@
package com.gkhy.exam.system.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
 * <p>
 * 外包过程评审附属表
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Getter
@Setter
@TableName("outsourced_review_subsidiary")
@ApiModel(value = "OutsourcedReviewSubsidiary对象", description = "外包过程评审附属表")
public class OutsourcedReviewSubsidiary implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    @ApiModelProperty("主表id")
    @TableField("review_id")
    private Long reviewId;
    @ApiModelProperty("协作单位地址")
    @TableField("assist_address")
    private String assistAddress;
    @ApiModelProperty("协作单位名称")
    @TableField("assist_name")
    private String assistName;
    @ApiModelProperty("电话")
    @TableField("phone")
    private String phone;
    @ApiModelProperty("排序")
    @TableField("sort")
    private Integer sort;
    @ApiModelProperty("删除标志(0为删除,1删除,默认0)")
    @TableField("del_flag")
    private Integer delFlag;
    @ApiModelProperty("创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;
    @ApiModelProperty("创建人")
    @TableField("create_by")
    private String createBy;
    @ApiModelProperty("更新时间")
    @TableField("update_time")
    private LocalDateTime updateTime;
    @ApiModelProperty("更新人")
    @TableField("update_by")
    private String updateBy;
    @ApiModelProperty("乐观锁")
    @TableField("version")
    private Integer version;
}
multi-system/src/main/java/com/gkhy/exam/system/domain/OutsourcedUnqualified.java
对比新文件
@@ -0,0 +1,92 @@
package com.gkhy.exam.system.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
 * <p>
 * 外包不合格品处理及纠错
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Getter
@Setter
@TableName("outsourced_unqualified")
@ApiModel(value = "OutsourcedUnqualified对象", description = "外包不合格品处理及纠错")
public class OutsourcedUnqualified implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    @ApiModelProperty(value = "公司id",required = true)
    @TableField("company_id")
    @NotNull(message = "公司id不能为空")
    private Long companyId;
    @ApiModelProperty(value = "供应商id",required = true)
    @TableField("supplier_id")
    @NotNull(message = "供应商id不能为空")
    private Integer supplierId;
    @ApiModelProperty(value = "供应商名称")
    @TableField(exist = false)
    private String supplierName;
    @ApiModelProperty(value = "产品名称",required = true)
    @TableField("unqualified_product_name")
    @NotBlank(message = "产品名称不能为空")
    private String unqualifiedProductName;
    @ApiModelProperty("附件名称")
    @TableField("file_name")
    private String fileName;
    @ApiModelProperty("附件地址")
    @TableField("file_path")
    private String filePath;
    @ApiModelProperty("格式")
    @TableField("format")
    private String format;
    @ApiModelProperty("删除标志(0为删除,1删除,默认0)")
    @TableField("del_flag")
    private Integer delFlag;
    @ApiModelProperty("创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;
    @ApiModelProperty("创建人")
    @TableField("create_by")
    private String createBy;
    @ApiModelProperty("更新时间")
    @TableField("update_time")
    private LocalDateTime updateTime;
    @ApiModelProperty("更新人")
    @TableField("update_by")
    private String updateBy;
    @ApiModelProperty("乐观锁")
    @TableField("version")
    private Integer version;
}
multi-system/src/main/java/com/gkhy/exam/system/domain/WarehousingRecord.java
对比新文件
@@ -0,0 +1,80 @@
package com.gkhy.exam.system.domain;
import com.baomidou.mybatisplus.annotation.*;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
/**
 * <p>
 * 出入库记录主表
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Getter
@Setter
@TableName("warehousing_record")
@ApiModel(value = "WarehousingRecord对象", description = "出入库记录主表")
public class WarehousingRecord implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    @ApiModelProperty(value = "公司id",required = true)
    @TableField("company_id")
    @NotNull(message = "公司id不能为空")
    private Long companyId;
    @ApiModelProperty(value = "记录名称",required = true)
    @TableField("record_name")
    @NotNull(message = "记录名称不能为空")
    private String recordName;
    @ApiModelProperty("删除标志(0为删除,1删除,默认0)")
    @TableField("del_flag")
    private Integer delFlag;
    @ApiModelProperty("创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;
    @ApiModelProperty("创建人")
    @TableField("create_by")
    private String createBy;
    @ApiModelProperty("更新时间")
    @TableField("update_time")
    private LocalDateTime updateTime;
    @ApiModelProperty("更新人")
    @TableField("update_by")
    private String updateBy;
    @ApiModelProperty("乐观锁")
    @TableField("version")
    @Version
    private Integer version;
    @ApiModelProperty("出入库记录详情")
    @TableField(exist = false)
    @NotEmpty
    private List<WarehousingRecordDetails> warehousingRecordDetails;
    @ApiModelProperty("出入库记录详情删除数据")
    @TableField(exist = false)
    private List<Long> delDetails;
}
multi-system/src/main/java/com/gkhy/exam/system/domain/WarehousingRecordDetails.java
对比新文件
@@ -0,0 +1,104 @@
package com.gkhy.exam.system.domain;
import com.baomidou.mybatisplus.annotation.*;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotNull;
/**
 * <p>
 * 出入库记录主表详情/
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Getter
@Setter
@TableName("warehousing_record_details")
@ApiModel(value = "WarehousingRecordDetails对象", description = "出入库记录主表详情")
public class WarehousingRecordDetails implements Serializable {
    private static final long serialVersionUID = 1L;
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    @ApiModelProperty("记录主id")
    @TableField("record_id")
    private Long recordId;
    @ApiModelProperty("登记时间")
    @TableField("boarding_time")
    @NotNull(message = "登记时间不能为空")
    private LocalDateTime boardingTime;
    @ApiModelProperty("名称")
    @TableField("name")
    private String name;
    @ApiModelProperty("入库单位")
    @TableField("enter_company")
    private String enterCompany;
    @ApiModelProperty("入库数量")
    @TableField("enter_num")
    private Integer enterNum;
    @ApiModelProperty("入库经手人")
    @TableField("enter_person")
    private String enterPerson;
    @ApiModelProperty("出库单位")
    @TableField("outbound_company")
    private String outboundCompany;
    @ApiModelProperty("出库数量")
    @TableField("outbound_num")
    private Integer outboundNum;
    @ApiModelProperty("出库经手人")
    @TableField("outbound_person")
    private String outboundPerson;
    @ApiModelProperty("库存")
    @TableField("amount")
    private Integer amount;
    @ApiModelProperty("备注")
    @TableField("remark")
    private String remark;
    @ApiModelProperty("删除标志(0为删除,1删除,默认0)")
    @TableField("del_flag")
    private Integer delFlag;
    @ApiModelProperty("创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;
    @ApiModelProperty("创建人")
    @TableField("create_by")
    private String createBy;
    @ApiModelProperty("更新时间")
    @TableField("update_time")
    private LocalDateTime updateTime;
    @ApiModelProperty("更新人")
    @TableField("update_by")
    private String updateBy;
    @ApiModelProperty("乐观锁")
    @TableField("version")
    @Version
    private Integer version;
}
multi-system/src/main/java/com/gkhy/exam/system/mapper/OutsourcedCommonMapper.java
对比新文件
@@ -0,0 +1,21 @@
package com.gkhy.exam.system.mapper;
import com.gkhy.exam.system.domain.OutsourcedCommon;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
 * <p>
 * 外包工艺流程图/加工合同质量协议/产品检验合格记录 Mapper 接口
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Mapper
public interface OutsourcedCommonMapper extends BaseMapper<OutsourcedCommon> {
    List<OutsourcedCommon> selectOutsourcedCommonList(OutsourcedCommon outsourcedCommon);
}
multi-system/src/main/java/com/gkhy/exam/system/mapper/OutsourcedProductMapper.java
对比新文件
@@ -0,0 +1,21 @@
package com.gkhy.exam.system.mapper;
import com.gkhy.exam.system.domain.OutsourcedProduct;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
 * <p>
 * 外包产品名称 Mapper 接口
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Mapper
public interface OutsourcedProductMapper extends BaseMapper<OutsourcedProduct> {
    List<OutsourcedProduct> getOutsourcedProductList(OutsourcedProduct outsourcedProduct);
}
multi-system/src/main/java/com/gkhy/exam/system/mapper/OutsourcedReviewMapper.java
对比新文件
@@ -0,0 +1,22 @@
package com.gkhy.exam.system.mapper;
import com.gkhy.exam.system.domain.OutsourcedReview;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
 * <p>
 * 外包过程评审 Mapper 接口
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Mapper
public interface OutsourcedReviewMapper extends BaseMapper<OutsourcedReview> {
    List<OutsourcedReview> getOutsourcedReviewList(OutsourcedReview outsourcedReview);
}
multi-system/src/main/java/com/gkhy/exam/system/mapper/OutsourcedReviewSubsidiaryMapper.java
对比新文件
@@ -0,0 +1,18 @@
package com.gkhy.exam.system.mapper;
import com.gkhy.exam.system.domain.OutsourcedReviewSubsidiary;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
 * <p>
 * 外包过程评审附属表 Mapper 接口
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Mapper
public interface OutsourcedReviewSubsidiaryMapper extends BaseMapper<OutsourcedReviewSubsidiary> {
}
multi-system/src/main/java/com/gkhy/exam/system/mapper/OutsourcedUnqualifiedMapper.java
对比新文件
@@ -0,0 +1,21 @@
package com.gkhy.exam.system.mapper;
import com.gkhy.exam.system.domain.OutsourcedUnqualified;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
 * <p>
 * 外包不合格品处理及纠错 Mapper 接口
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Mapper
public interface OutsourcedUnqualifiedMapper extends BaseMapper<OutsourcedUnqualified> {
    List<OutsourcedUnqualified> getOutsourcedUnqualifiedList(OutsourcedUnqualified outsourcedUnqualified);
}
multi-system/src/main/java/com/gkhy/exam/system/mapper/WarehousingRecordDetailsMapper.java
对比新文件
@@ -0,0 +1,18 @@
package com.gkhy.exam.system.mapper;
import com.gkhy.exam.system.domain.WarehousingRecordDetails;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
 * <p>
 * 出入库记录主表详情 Mapper 接口
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Mapper
public interface WarehousingRecordDetailsMapper extends BaseMapper<WarehousingRecordDetails> {
}
multi-system/src/main/java/com/gkhy/exam/system/mapper/WarehousingRecordMapper.java
对比新文件
@@ -0,0 +1,21 @@
package com.gkhy.exam.system.mapper;
import com.gkhy.exam.system.domain.WarehousingRecord;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
 * <p>
 * 出入库记录主表 Mapper 接口
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Mapper
public interface WarehousingRecordMapper extends BaseMapper<WarehousingRecord> {
    List<WarehousingRecord> selectWarehousingRecordList(WarehousingRecord warehousingRecord);
}
multi-system/src/main/java/com/gkhy/exam/system/service/OutsourcedCommonService.java
对比新文件
@@ -0,0 +1,25 @@
package com.gkhy.exam.system.service;
import com.gkhy.exam.common.api.CommonPage;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.system.domain.OutsourcedCommon;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gkhy.exam.system.domain.OutsourcedUnqualified;
/**
 * <p>
 * 外包工艺流程图/加工合同质量协议/产品检验合格记录 服务类
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
public interface OutsourcedCommonService extends IService<OutsourcedCommon> {
    CommonPage selectOutsourcedCommonList(OutsourcedCommon outsourcedCommon);
    CommonResult saveOutsourcedCommon(OutsourcedCommon outsourcedCommon);
    CommonResult deletedOutsourcedCommon(Long id);
}
multi-system/src/main/java/com/gkhy/exam/system/service/OutsourcedProductService.java
对比新文件
@@ -0,0 +1,25 @@
package com.gkhy.exam.system.service;
import com.gkhy.exam.common.api.CommonPage;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.system.domain.AnnualMaintenanceService;
import com.gkhy.exam.system.domain.OutsourcedProduct;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 外包产品名称 服务类
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
public interface OutsourcedProductService extends IService<OutsourcedProduct> {
    CommonPage selectOutsourcedProductList(OutsourcedProduct outsourcedProduct);
    CommonResult saveOutsourcedProduct(OutsourcedProduct outsourcedProduct);
    CommonResult deletedOutsourcedProduct(Long id);
}
multi-system/src/main/java/com/gkhy/exam/system/service/OutsourcedReviewService.java
对比新文件
@@ -0,0 +1,27 @@
package com.gkhy.exam.system.service;
import com.gkhy.exam.common.api.CommonPage;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.system.domain.OutsourcedReview;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gkhy.exam.system.domain.WarehousingRecord;
/**
 * <p>
 * 外包过程评审 服务类
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
public interface OutsourcedReviewService extends IService<OutsourcedReview> {
    CommonPage selectOutsourcedReviewList(OutsourcedReview outsourcedReview);
    CommonResult saveOutsourcedReview(OutsourcedReview outsourcedReview);
    CommonResult getOutsourcedReview(Long id);
    CommonResult deletedOutsourcedReview(Long id);
}
multi-system/src/main/java/com/gkhy/exam/system/service/OutsourcedUnqualifiedService.java
对比新文件
@@ -0,0 +1,24 @@
package com.gkhy.exam.system.service;
import com.gkhy.exam.common.api.CommonPage;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.system.domain.OutsourcedProduct;
import com.gkhy.exam.system.domain.OutsourcedUnqualified;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 外包不合格品处理及纠错 服务类
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
public interface OutsourcedUnqualifiedService extends IService<OutsourcedUnqualified> {
    CommonPage selectOutsourcedUnqualifiedList(OutsourcedUnqualified outsourcedUnqualified);
    CommonResult saveOutsourcedUnqualified(OutsourcedUnqualified outsourcedUnqualified);
    CommonResult deletedOutsourcedUnqualified(Long id);
}
multi-system/src/main/java/com/gkhy/exam/system/service/WarehousingRecordService.java
对比新文件
@@ -0,0 +1,27 @@
package com.gkhy.exam.system.service;
import com.gkhy.exam.common.api.CommonPage;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.system.domain.OutsourcedCommon;
import com.gkhy.exam.system.domain.WarehousingRecord;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * <p>
 * 出入库记录主表 服务类
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
public interface WarehousingRecordService extends IService<WarehousingRecord> {
    CommonPage selectWarehousingRecordList(WarehousingRecord warehousingRecord);
    CommonResult saveWarehousingRecord(WarehousingRecord warehousingRecord);
    CommonResult getWarehousingRecord(Long id);
    CommonResult deletedWarehousingRecord(Long id);
}
multi-system/src/main/java/com/gkhy/exam/system/service/impl/OutsourcedCommonServiceImpl.java
对比新文件
@@ -0,0 +1,63 @@
package com.gkhy.exam.system.service.impl;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.gkhy.exam.common.api.CommonPage;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.common.constant.UserConstant;
import com.gkhy.exam.common.utils.PageUtils;
import com.gkhy.exam.common.utils.SecurityUtils;
import com.gkhy.exam.system.domain.OutsourcedCommon;
import com.gkhy.exam.system.mapper.OutsourcedCommonMapper;
import com.gkhy.exam.system.service.OutsourcedCommonService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.List;
/**
 * <p>
 * 外包工艺流程图/加工合同质量协议/产品检验合格记录 服务实现类
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Service
public class OutsourcedCommonServiceImpl extends ServiceImpl<OutsourcedCommonMapper, OutsourcedCommon> implements OutsourcedCommonService {
    @Autowired
    private OutsourcedCommonMapper outsourcedCommonMapper;
    @Override
    public CommonPage selectOutsourcedCommonList(OutsourcedCommon outsourcedCommon) {
        PageUtils.startPage();
        List<OutsourcedCommon> outsourcedCommons = outsourcedCommonMapper.selectOutsourcedCommonList(outsourcedCommon);
        return CommonPage.restPage(outsourcedCommons);
    }
    @Override
    public CommonResult saveOutsourcedCommon(OutsourcedCommon outsourcedCommon) {
        if (outsourcedCommon.getId() == null){
            outsourcedCommon.setCreateBy(SecurityUtils.getUsername());
            outsourcedCommon.setCreateTime(LocalDateTime.now());
            return outsourcedCommonMapper.insert(outsourcedCommon) > 0 ? CommonResult.success("保存成功") : CommonResult.failed("保存失败");
        }
        outsourcedCommon.setUpdateBy(SecurityUtils.getUsername());
        outsourcedCommon.setUpdateTime(LocalDateTime.now());
        return outsourcedCommonMapper.updateById(outsourcedCommon) > 0 ? CommonResult.success("保存成功") : CommonResult.failed("保存失败");
    }
    @Override
    public CommonResult deletedOutsourcedCommon(Long id) {
        outsourcedCommonMapper.update(new OutsourcedCommon(),
                new LambdaUpdateWrapper<OutsourcedCommon>().eq(OutsourcedCommon::getId, id)
                        .set(OutsourcedCommon::getDelFlag, UserConstant.DEPT_DISABLE)
                        .set(OutsourcedCommon::getUpdateTime, LocalDateTime.now())
                        .set(OutsourcedCommon::getUpdateBy, SecurityUtils.getUsername()));
        return CommonResult.success();
    }
}
multi-system/src/main/java/com/gkhy/exam/system/service/impl/OutsourcedProductServiceImpl.java
对比新文件
@@ -0,0 +1,63 @@
package com.gkhy.exam.system.service.impl;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.gkhy.exam.common.api.CommonPage;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.common.constant.UserConstant;
import com.gkhy.exam.common.utils.PageUtils;
import com.gkhy.exam.common.utils.SecurityUtils;
import com.gkhy.exam.system.domain.AnnualMaintenanceEvaluateDevice;
import com.gkhy.exam.system.domain.OutsourcedProduct;
import com.gkhy.exam.system.mapper.OutsourcedProductMapper;
import com.gkhy.exam.system.service.OutsourcedProductService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.List;
/**
 * <p>
 * 外包产品名称 服务实现类
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Service
public class OutsourcedProductServiceImpl extends ServiceImpl<OutsourcedProductMapper, OutsourcedProduct> implements OutsourcedProductService {
    @Autowired
    private OutsourcedProductMapper outsourcedProductMapper;
    @Override
    public CommonPage selectOutsourcedProductList(OutsourcedProduct outsourcedProduct) {
        PageUtils.startPage();
        List<OutsourcedProduct> outsourcedProducts = outsourcedProductMapper.getOutsourcedProductList(outsourcedProduct);
        return CommonPage.restPage(outsourcedProducts);
    }
    @Override
    public CommonResult saveOutsourcedProduct(OutsourcedProduct outsourcedProduct) {
        if (outsourcedProduct.getId() == null){
            outsourcedProduct.setCreateBy(SecurityUtils.getUsername());
            outsourcedProduct.setCreateTime(LocalDateTime.now());
            return outsourcedProductMapper.insert(outsourcedProduct) > 0 ? CommonResult.success("保存成功") : CommonResult.failed("保存失败");
        }
        outsourcedProduct.setUpdateBy(SecurityUtils.getUsername());
        outsourcedProduct.setUpdateTime(LocalDateTime.now());
        return outsourcedProductMapper.updateById(outsourcedProduct) > 0 ? CommonResult.success("保存成功") : CommonResult.failed("保存失败");
    }
    @Override
    public CommonResult deletedOutsourcedProduct(Long id) {
         outsourcedProductMapper.update(new OutsourcedProduct(),
                new LambdaUpdateWrapper<OutsourcedProduct>().eq(OutsourcedProduct::getId, id)
                        .set(OutsourcedProduct::getDelFlag, UserConstant.DEPT_DISABLE)
                        .set(OutsourcedProduct::getUpdateTime, LocalDateTime.now())
                        .set(OutsourcedProduct::getUpdateBy, SecurityUtils.getUsername()));
        return CommonResult.success();
    }
}
multi-system/src/main/java/com/gkhy/exam/system/service/impl/OutsourcedReviewServiceImpl.java
对比新文件
@@ -0,0 +1,128 @@
package com.gkhy.exam.system.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.gkhy.exam.common.api.CommonPage;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.common.constant.UserConstant;
import com.gkhy.exam.common.utils.PageUtils;
import com.gkhy.exam.common.utils.SecurityUtils;
import com.gkhy.exam.system.domain.OutsourcedReview;
import com.gkhy.exam.system.domain.OutsourcedReviewSubsidiary;
import com.gkhy.exam.system.domain.WarehousingRecordDetails;
import com.gkhy.exam.system.mapper.OutsourcedReviewMapper;
import com.gkhy.exam.system.mapper.OutsourcedReviewSubsidiaryMapper;
import com.gkhy.exam.system.service.OutsourcedReviewService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.List;
/**
 * <p>
 * 外包过程评审 服务实现类
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Service
public class OutsourcedReviewServiceImpl extends ServiceImpl<OutsourcedReviewMapper, OutsourcedReview> implements OutsourcedReviewService {
    @Autowired
    private OutsourcedReviewMapper outsourcedReviewMapper;
    @Autowired
    private OutsourcedReviewSubsidiaryMapper outsourcedReviewSubsidiaryMapper;
    @Override
    public CommonPage selectOutsourcedReviewList(OutsourcedReview outsourcedReview) {
        PageUtils.startPage();
        List<OutsourcedReview> outsourcedReviewList = outsourcedReviewMapper.getOutsourcedReviewList(outsourcedReview);
        return CommonPage.restPage(outsourcedReviewList);
    }
    @Override
    @Transactional
    public CommonResult saveOutsourcedReview(OutsourcedReview outsourcedReview) {
        List<OutsourcedReviewSubsidiary> outsourcedReviewSubsidiaryList = outsourcedReview.getOutsourcedReviewSubsidiaryList();
        if (ObjectUtils.isEmpty(outsourcedReviewSubsidiaryList)){
            return CommonResult.failed("保存参数不能为空");
        }
        int i = 0;
        if (outsourcedReview.getId() == null){
            outsourcedReview.setCreateBy(SecurityUtils.getUsername());
            outsourcedReview.setCreateTime(LocalDateTime.now());
            i = outsourcedReviewMapper.insert(outsourcedReview);
        }else {
            outsourcedReview.setUpdateTime(LocalDateTime.now());
            outsourcedReview.setUpdateBy(SecurityUtils.getUsername());
            i = outsourcedReviewMapper.updateById(outsourcedReview);
        }
        if (i > 0){
            batchSaveSubsidiary(outsourcedReview.getId(), outsourcedReviewSubsidiaryList, outsourcedReview.getDelOutsourcedReviewSubsidiaryIds());
        }
        return i > 0 ? CommonResult.success() : CommonResult.failed();
    }
    private void batchSaveSubsidiary(Long outsourcedReviewId, List<OutsourcedReviewSubsidiary> outsourcedReviewSubsidiaryList,List<Long> delOutsourcedReviewSubsidiaryIds) {
        if (ObjectUtils.isNotEmpty(delOutsourcedReviewSubsidiaryIds)){
            int update = outsourcedReviewSubsidiaryMapper.update(new OutsourcedReviewSubsidiary(),
                    new LambdaUpdateWrapper<OutsourcedReviewSubsidiary>().eq(OutsourcedReviewSubsidiary::getId, delOutsourcedReviewSubsidiaryIds).set(OutsourcedReviewSubsidiary::getDelFlag, UserConstant.DEPT_DISABLE)
                            .set(OutsourcedReviewSubsidiary::getUpdateTime, LocalDateTime.now()).set(OutsourcedReviewSubsidiary::getUpdateBy, SecurityUtils.getUsername())
            );
            if (update <= 0){
                throw new RuntimeException("操作失败");
            }
        }
        outsourcedReviewSubsidiaryList.forEach(outsourcedReviewSubsidiary -> {
            if (outsourcedReviewSubsidiary.getId() == null){
                outsourcedReviewSubsidiary.setReviewId(outsourcedReviewId);
                outsourcedReviewSubsidiary.setCreateTime(LocalDateTime.now());
                outsourcedReviewSubsidiary.setCreateBy(SecurityUtils.getUsername());
                outsourcedReviewSubsidiaryMapper.insert(outsourcedReviewSubsidiary);
            }else {
                outsourcedReviewSubsidiary.setUpdateTime(LocalDateTime.now());
                outsourcedReviewSubsidiary.setUpdateBy(SecurityUtils.getUsername());
                outsourcedReviewSubsidiaryMapper.updateById(outsourcedReviewSubsidiary);
            }
        });
    }
    @Override
    public CommonResult getOutsourcedReview(Long id) {
        OutsourcedReview outsourcedReview = outsourcedReviewMapper.selectById(id);
        if (outsourcedReview != null){
            List<OutsourcedReviewSubsidiary> outsourcedReviewSubsidiaryList = outsourcedReviewSubsidiaryMapper.selectList(
                    new LambdaQueryWrapper<>(OutsourcedReviewSubsidiary.class).eq(OutsourcedReviewSubsidiary::getReviewId, id)
                            .eq(OutsourcedReviewSubsidiary::getDelFlag, UserConstant.ENABLE).orderByDesc(OutsourcedReviewSubsidiary::getCreateTime)
            );
            outsourcedReview.setOutsourcedReviewSubsidiaryList(outsourcedReviewSubsidiaryList);
        }
        return CommonResult.success(outsourcedReview);
    }
    @Override
    @Transactional
    public CommonResult deletedOutsourcedReview(Long id) {
        int i = outsourcedReviewMapper.update(new OutsourcedReview(),
                new LambdaUpdateWrapper<OutsourcedReview>().eq(OutsourcedReview::getId, id).set(OutsourcedReview::getDelFlag, UserConstant.DEPT_DISABLE)
                        .set(OutsourcedReview::getUpdateTime, LocalDateTime.now()).set(OutsourcedReview::getUpdateBy, SecurityUtils.getUsername())
        );
        if (i > 0){
            outsourcedReviewSubsidiaryMapper.update(new OutsourcedReviewSubsidiary(),
                    new LambdaUpdateWrapper<OutsourcedReviewSubsidiary>().eq(OutsourcedReviewSubsidiary::getReviewId, id)
                            .set(OutsourcedReviewSubsidiary::getDelFlag, UserConstant.DEPT_DISABLE)
                            .set(OutsourcedReviewSubsidiary::getUpdateTime, LocalDateTime.now())
                            .set(OutsourcedReviewSubsidiary::getUpdateBy, SecurityUtils.getUsername()));
        }
        return CommonResult.success();
    }
}
multi-system/src/main/java/com/gkhy/exam/system/service/impl/OutsourcedUnqualifiedServiceImpl.java
对比新文件
@@ -0,0 +1,66 @@
package com.gkhy.exam.system.service.impl;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.gkhy.exam.common.api.CommonPage;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.common.constant.UserConstant;
import com.gkhy.exam.common.utils.PageUtils;
import com.gkhy.exam.common.utils.SecurityUtils;
import com.gkhy.exam.system.domain.OutsourcedProduct;
import com.gkhy.exam.system.domain.OutsourcedUnqualified;
import com.gkhy.exam.system.mapper.OutsourcedUnqualifiedMapper;
import com.gkhy.exam.system.service.OutsourcedUnqualifiedService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.List;
/**
 * <p>
 * 外包不合格品处理及纠错 服务实现类
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Service
public class OutsourcedUnqualifiedServiceImpl extends ServiceImpl<OutsourcedUnqualifiedMapper, OutsourcedUnqualified> implements OutsourcedUnqualifiedService {
    @Autowired
    private OutsourcedUnqualifiedMapper outsourcedUnqualifiedMapper;
    @Override
    public CommonPage selectOutsourcedUnqualifiedList(OutsourcedUnqualified outsourcedUnqualified) {
        PageUtils.startPage();
        List<OutsourcedUnqualified> outsourcedUnqualifieds = outsourcedUnqualifiedMapper.getOutsourcedUnqualifiedList(outsourcedUnqualified);
        return CommonPage.restPage(outsourcedUnqualifieds);
    }
    @Override
    public CommonResult saveOutsourcedUnqualified(OutsourcedUnqualified outsourcedUnqualified) {
        if (outsourcedUnqualified.getId() == null){
            outsourcedUnqualified.setCreateBy(SecurityUtils.getUsername());
            outsourcedUnqualified.setCreateTime(LocalDateTime.now());
            return outsourcedUnqualifiedMapper.insert(outsourcedUnqualified) > 0 ? CommonResult.success("保存成功") : CommonResult.failed("保存失败");
        }
        outsourcedUnqualified.setUpdateBy(SecurityUtils.getUsername());
        outsourcedUnqualified.setUpdateTime(LocalDateTime.now());
        return outsourcedUnqualifiedMapper.updateById(outsourcedUnqualified) > 0 ? CommonResult.success("保存成功") : CommonResult.failed("保存失败");
    }
    @Override
    public CommonResult deletedOutsourcedUnqualified(Long id) {
        outsourcedUnqualifiedMapper.update(new OutsourcedUnqualified(),
                new LambdaUpdateWrapper<OutsourcedUnqualified>().eq(OutsourcedUnqualified::getId, id)
                        .set(OutsourcedUnqualified::getDelFlag, UserConstant.DEPT_DISABLE)
                        .set(OutsourcedUnqualified::getUpdateTime, LocalDateTime.now())
                        .set(OutsourcedUnqualified::getUpdateBy, SecurityUtils.getUsername()));
        return CommonResult.success();
    }
}
multi-system/src/main/java/com/gkhy/exam/system/service/impl/WarehousingRecordServiceImpl.java
对比新文件
@@ -0,0 +1,120 @@
package com.gkhy.exam.system.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.gkhy.exam.common.api.CommonPage;
import com.gkhy.exam.common.api.CommonResult;
import com.gkhy.exam.common.constant.UserConstant;
import com.gkhy.exam.common.utils.PageUtils;
import com.gkhy.exam.common.utils.SecurityUtils;
import com.gkhy.exam.system.domain.OutsourcedUnqualified;
import com.gkhy.exam.system.domain.WarehousingRecord;
import com.gkhy.exam.system.domain.WarehousingRecordDetails;
import com.gkhy.exam.system.mapper.WarehousingRecordDetailsMapper;
import com.gkhy.exam.system.mapper.WarehousingRecordMapper;
import com.gkhy.exam.system.service.WarehousingRecordService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.List;
/**
 * <p>
 * 出入库记录主表 服务实现类
 * </p>
 *
 * @author hh
 * @since 2025-08-13 09:16:37
 */
@Service
public class WarehousingRecordServiceImpl extends ServiceImpl<WarehousingRecordMapper, WarehousingRecord> implements WarehousingRecordService {
    @Autowired
    private WarehousingRecordMapper warehousingRecordMapper;
    @Autowired
    private WarehousingRecordDetailsMapper warehousingRecordDetailsMapper;
    @Override
    public CommonPage selectWarehousingRecordList(WarehousingRecord warehousingRecord) {
        PageUtils.startPage();
        List<WarehousingRecord> warehousingRecords = warehousingRecordMapper.selectWarehousingRecordList(warehousingRecord);
        return CommonPage.restPage(warehousingRecords);
    }
    @Override
    @Transactional
    public CommonResult saveWarehousingRecord(WarehousingRecord warehousingRecord) {
        List<WarehousingRecordDetails> warehousingRecordDetails = warehousingRecord.getWarehousingRecordDetails();
        if (ObjectUtil.isEmpty(warehousingRecordDetails)){
            return CommonResult.validateFailed("请选择入库记录详情");
        }
        int i = 0;
        if (warehousingRecord.getId() == null){
            warehousingRecord.setCreateTime(LocalDateTime.now());
            warehousingRecord.setCreateBy(SecurityUtils.getUsername());
             i = warehousingRecordMapper.insert(warehousingRecord);
        }else {
            warehousingRecord.setUpdateTime(LocalDateTime.now());
            warehousingRecord.setUpdateBy(SecurityUtils.getUsername());
            i = warehousingRecordMapper.updateById(warehousingRecord);
        }
        if (i > 0){
          batchSave(warehousingRecord.getId(), warehousingRecordDetails,warehousingRecord.getDelDetails());
        }
        return CommonResult.success();
    }
    private void batchSave(Long id, List<WarehousingRecordDetails> warehousingRecordDetails,List<Long> delDetails) {
        warehousingRecordDetails.stream().filter(item -> item.getId() == null).forEach(item -> {
            item.setRecordId(id);
            item.setCreateTime(LocalDateTime.now());
            item.setCreateBy(SecurityUtils.getUsername());
            warehousingRecordDetailsMapper.insert(item);
        });
        warehousingRecordDetails.stream().filter(item -> item.getId() != null).forEach(item -> {
            item.setRecordId(id);
            item.setUpdateTime(LocalDateTime.now());
            item.setUpdateBy(SecurityUtils.getUsername());
            warehousingRecordDetailsMapper.updateById(item);
        });
        if (delDetails != null){
            warehousingRecordDetailsMapper.update(new WarehousingRecordDetails(),
                    new LambdaUpdateWrapper<WarehousingRecordDetails>().in(WarehousingRecordDetails::getId, delDetails)
                            .set(WarehousingRecordDetails::getDelFlag, UserConstant.DEPT_DISABLE)
                            .set(WarehousingRecordDetails::getUpdateTime, LocalDateTime.now())
                            .set(WarehousingRecordDetails::getUpdateBy, SecurityUtils.getUsername()));
        }
    }
    @Override
    public CommonResult getWarehousingRecord(Long id) {
        WarehousingRecord warehousingRecord = warehousingRecordMapper.selectById(id);
        List<WarehousingRecordDetails > de = warehousingRecordDetailsMapper.selectList(
                new LambdaQueryWrapper<>(WarehousingRecordDetails.class).eq(WarehousingRecordDetails::getRecordId, id)
                        .eq(WarehousingRecordDetails::getDelFlag, UserConstant.ENABLE).orderByAsc(WarehousingRecordDetails::getCreateTime));
        warehousingRecord.setWarehousingRecordDetails(de);
        return CommonResult.success(warehousingRecord);
    }
    @Override
    @Transactional
    public CommonResult deletedWarehousingRecord(Long id) {
        warehousingRecordMapper.update(new WarehousingRecord(),
                new LambdaUpdateWrapper<WarehousingRecord>().eq(WarehousingRecord::getId, id)
                        .set(WarehousingRecord::getDelFlag, UserConstant.DEPT_DISABLE)
                        .set(WarehousingRecord::getUpdateTime, LocalDateTime.now())
                        .set(WarehousingRecord::getUpdateBy, SecurityUtils.getUsername()));
        warehousingRecordDetailsMapper.update(new WarehousingRecordDetails(),
                new LambdaUpdateWrapper<WarehousingRecordDetails>().eq(WarehousingRecordDetails::getRecordId, id)
                        .set(WarehousingRecordDetails::getDelFlag, UserConstant.DEPT_DISABLE)
                        .set(WarehousingRecordDetails::getUpdateTime, LocalDateTime.now())
                        .set(WarehousingRecordDetails::getUpdateBy, SecurityUtils.getUsername()));
        return CommonResult.success();
    }
}
multi-system/src/main/resources/mapper/system/OutsourcedCommonMapper.xml
对比新文件
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gkhy.exam.system.mapper.OutsourcedCommonMapper">
    <select id="selectOutsourcedCommonList" resultType="com.gkhy.exam.system.domain.OutsourcedCommon"
            parameterType="com.gkhy.exam.system.domain.OutsourcedCommon">
        select a.*, b.supplier_name as supplierName from outsourced_common a
        left join supplier_sure b on a.supplier_id = b.id
        where a.del_flag = 0
        <if test="companyId != null">
            and a.company_id = #{companyId}
        </if>
        order by a.create_time desc
    </select>
</mapper>
multi-system/src/main/resources/mapper/system/OutsourcedProductMapper.xml
对比新文件
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gkhy.exam.system.mapper.OutsourcedProductMapper">
    <select id="getOutsourcedProductList" parameterType="com.gkhy.exam.system.domain.OutsourcedProduct"
            resultType="com.gkhy.exam.system.domain.OutsourcedProduct">
        select a.*, b.supplier_name as supplierName from outsourced_product a
        left join supplier_sure b on a.supplier_id = b.id
        where a.del_flag = 0
        <if test="companyId != null">
            and a.company_id = #{companyId}
        </if>
        order by a.create_time desc
    </select>
</mapper>
multi-system/src/main/resources/mapper/system/OutsourcedReviewMapper.xml
对比新文件
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gkhy.exam.system.mapper.OutsourcedReviewMapper">
    <select id="getOutsourcedReviewList" resultType="com.gkhy.exam.system.domain.OutsourcedReview" parameterType="com.gkhy.exam.system.domain.OutsourcedReview">
        select * from outsourced_review where del_flag = 0
        <if test="companyId != null">
            and company_id = #{companyId}
        </if>
        order by create_time desc
    </select>
</mapper>
multi-system/src/main/resources/mapper/system/OutsourcedReviewSubsidiaryMapper.xml
对比新文件
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gkhy.exam.system.mapper.OutsourcedReviewSubsidiaryMapper">
</mapper>
multi-system/src/main/resources/mapper/system/OutsourcedUnqualifiedMapper.xml
对比新文件
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gkhy.exam.system.mapper.OutsourcedUnqualifiedMapper">
    <select id="getOutsourcedUnqualifiedList" parameterType="com.gkhy.exam.system.domain.OutsourcedUnqualified"
            resultType="com.gkhy.exam.system.domain.OutsourcedUnqualified">
        select a.*, b.supplier_name as supplierName from outsourced_unqualified a
        left join supplier_sure b on a.supplier_id = b.id
        where a.del_flag = 0
        <if test="companyId != null">
            and a.company_id = #{companyId}
        </if>
        order by a.create_time desc
    </select>
</mapper>
multi-system/src/main/resources/mapper/system/WarehousingRecordDetailsMapper.xml
对比新文件
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gkhy.exam.system.mapper.WarehousingRecordDetailsMapper">
</mapper>
multi-system/src/main/resources/mapper/system/WarehousingRecordMapper.xml
对比新文件
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gkhy.exam.system.mapper.WarehousingRecordMapper">
    <select id="selectWarehousingRecordList" parameterType="com.gkhy.exam.system.domain.WarehousingRecord"
            resultType="com.gkhy.exam.system.domain.WarehousingRecord">
        select * from warehousing_record
        where del_flag = 0
        <if test="companyId != null">
            and company_id = #{companyId}
        </if>
        order by create_time desc
    </select>
</mapper>