chenrui
2025-04-02 e4774c6ff705d93fcf3694e244a18dad7f0bec77
标准库功能修改备份开发
已修改10个文件
已删除1个文件
已添加6个文件
919 ■■■■■ 文件已修改
basic-server/src/main/java/com/ruoyi/basic/controller/StandardProductListUpdateRecordController.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/controller/StandardTreeController.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/enums/StandardProductListChcekTypeEnums.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/enums/StandardProductListOperationTypeEnums.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordRelMapper.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductList.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListBackupRel.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListUpdateRecord.java 192 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListUpdateRecordRel.java 228 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListService.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListUpdateRecordService.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardMethodListServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java 111 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListUpdateRecordServiceImpl.java 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/resources/mapper/StandardProductListMapper.xml 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/resources/mapper/StandardProductListUpdateRecordRelMapper.xml 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
basic-server/src/main/java/com/ruoyi/basic/controller/StandardProductListUpdateRecordController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,45 @@
package com.ruoyi.basic.controller;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.basic.dto.*;
import com.ruoyi.basic.pojo.StandardProductList;
import com.ruoyi.basic.pojo.StandardProductListSupplierAsk;
import com.ruoyi.basic.pojo.StandardProductListUpdateRecord;
import com.ruoyi.basic.pojo.StandardProductListUpdateRecordRel;
import com.ruoyi.basic.service.*;
import com.ruoyi.common.core.domain.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
import java.util.Map;
@RestController
@AllArgsConstructor
@RequestMapping("/updateRecord")
@Api(tags = "标准库")
public class StandardProductListUpdateRecordController {
    @Autowired
    private StandardProductListUpdateRecordService standardProductListUpdateRecordService;
    @ApiOperation(value = "标准树下修改记录分页查询")
    @GetMapping("/standardProductListRecordPage")
    public Result standardProductListRecordPage(Page page, StandardProductListUpdateRecord standardProductListUpdateRecord) {
        return Result.success(standardProductListUpdateRecordService.standardProductListRecordPage(page,standardProductListUpdateRecord));
    }
    @ApiOperation(value = "标准树下检验项修改记录分页查询")
    @GetMapping("/standardProductListRecordRelPage")
    public Result standardProductListRecordRelPage(Page page, StandardProductListUpdateRecordRel standardProductListUpdateRecordRel) {
        return Result.success(standardProductListUpdateRecordService.standardProductListRecordRelPage(page,standardProductListUpdateRecordRel));
    }
}
basic-server/src/main/java/com/ruoyi/basic/controller/StandardTreeController.java
@@ -255,16 +255,17 @@
        return Result.success(standardProductListService.copyStandardProductSort(copyStandardProductListDto));
    }
    @ApiOperation(value = "标准树下检验项处理")
    @PostMapping("/productListOperate")
    public Result productListOperate(@RequestBody StandardProductListDto standardProductListDto) {
        standardProductListService.productListOperate(standardProductListDto);
    @ApiOperation(value = "标准树下检验项提交")
    @PostMapping("/productListSubmit")
    public Result productListSubmit(@RequestBody StandardProductListUpdateRecord standardProductListUpdateRecord) {
        standardProductListService.productListSubmit(standardProductListUpdateRecord);
        return Result.success();
    }
    @ApiOperation(value = "标准树下检验项修改记录分页查询")
    @GetMapping("/standardProductListRecordPage")
    public Result standardProductListRecordPage(Page page, StandardProductListUpdateRecord standardProductListUpdateRecord) {
        return Result.success(standardProductListService.standardProductListRecordPage(page,standardProductListUpdateRecord));
    @ApiOperation(value = "标准树下检验项审核")
    @PostMapping("/productListCheck")
    public Result productListCheck(@RequestBody StandardProductListUpdateRecord standardProductListUpdateRecord) {
        standardProductListService.productListCheck(standardProductListUpdateRecord);
        return Result.success();
    }
}
basic-server/src/main/java/com/ruoyi/basic/enums/StandardProductListChcekTypeEnums.java
@@ -2,7 +2,7 @@
public enum StandardProductListChcekTypeEnums {
    WAIT_CHECK("0","未审核"),
    WAIT_CHECK("0","未提交"),
    CHECK_ING("1","审核中"),
    PASS_CHECK("2","审核通过"),
    NO_PASS_CHECK("3","审核未通过");
basic-server/src/main/java/com/ruoyi/basic/enums/StandardProductListOperationTypeEnums.java
ÎļþÒÑɾ³ý
basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java
@@ -70,6 +70,8 @@
     * @param productLists
     */
    void saveBatchProductLists(@Param("productLists") List<StandardProductList> productLists);
    void updateProductListCheckStatus(@Param("ids") List<Long> ids,String checkStatus);
}
basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordRelMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,34 @@
package com.ruoyi.basic.mapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.basic.pojo.StandardProductListUpdateRecord;
import com.ruoyi.basic.pojo.StandardProductListUpdateRecordRel;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @author Administrator
* @description é’ˆå¯¹è¡¨ã€standard_product_list(标准树下的检验项目)】的数据库操作Mapper
* @createDate 2024-03-05 10:33:29
* @Entity com.ruoyi.basic.pojo.StandardProductList
*/
public interface StandardProductListUpdateRecordRelMapper extends BaseMapper<StandardProductListUpdateRecordRel> {
    void batchInsertRecordRel(@Param("list") List<StandardProductListUpdateRecordRel> list);
    /**
     * æ ‡å‡†æ ‘下检验项修改记录分页查询
     * @param page
     * @param ew
     * @return
     */
    IPage<StandardProductListUpdateRecordRel> standardProductListRecordRelPage(Page page, @Param("ew") QueryWrapper<StandardProductListUpdateRecordRel> ew);
}
basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductList.java
@@ -220,6 +220,6 @@
    @ApiModelProperty("导体类型")
    private String conductorType;
    @ApiModelProperty("审核状态 0 æœªå®¡æ ¸ 1 å®¡æ ¸ä¸­ 2 å®¡æ ¸é€šè¿‡ 3 å®¡æ ¸æœªé€šè¿‡")
    @ApiModelProperty("审核状态 0 æœªæäº¤ 1 å®¡æ ¸ä¸­ 2 å®¡æ ¸é€šè¿‡ 3 å®¡æ ¸æœªé€šè¿‡")
    private String checkStatus;
}
basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListBackupRel.java
@@ -11,8 +11,8 @@
import java.time.LocalDateTime;
/**
 * æ ‡å‡†æ ‘下的检验项目
 * @TableName standard_product_list
 * æ ‡å‡†æ ‘下的检验项目备份表
 * @TableName standard_product_list_backup_rel
 */
@TableName(value ="standard_product_list_backup_rel")
@Data
basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListUpdateRecord.java
@@ -11,12 +11,13 @@
import java.time.LocalDateTime;
/**
 * æ ‡å‡†æ ‘下的检验项目
 * @TableName standard_product_list
 * æ ‡å‡†æ ‘下的检验项目修改记录
 * @TableName standard_product_list_update_record
 */
@TableName(value ="standard_product_list_backup_rel")
@TableName(value ="standard_product_list_update_record")
@Data
public class StandardProductListUpdateRecord implements Serializable {
    /**
     * ä¸»é”®id
     */
@@ -24,141 +25,11 @@
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    /**
     * æ£€éªŒé¡¹
     */
    @ApiModelProperty("检验项")
    private String inspectionItem;
    @ApiModelProperty("检验项EN")
    private String inspectionItemEn;
    /**
     * æ£€éªŒé¡¹å°ç±»
     */
    @ApiModelProperty("检验项小类")
    private String inspectionItemSubclass;
    @ApiModelProperty("检验项小类EN")
    private String inspectionItemSubclassEn;
    /**
     * å®žéªŒå®¤
     */
    @ApiModelProperty("实验室")
    private String laboratory;
    @ApiModelProperty("子实验室")
    private String sonLaboratory;
    /**
     * è®¡é‡å•位
     */
    @ApiModelProperty("计量单位")
    private String unit;
    /**
     * å•ä»·(元)
     */
    @ApiModelProperty("单价")
    private String price;
    /**
     * å·¥æ—¶(H)
     */
    @ApiModelProperty("工时")
    private String manHour;
    /**
     * å·¥æ—¶åˆ†ç»„
     */
    @ApiModelProperty("工时分组")
    private String manHourGroup;
    /**
     * æ£€éªŒé¡¹ç±»åž‹
     */
    @ApiModelProperty("检验项类型")
    private String inspectionItemType;
    /**
     * æ£€éªŒå€¼ç±»åž‹
     */
    @ApiModelProperty("检验值类型")
    private String inspectionValueType;
    /**
     * æ£€éªŒæ¬¡æ•°
     */
    @ApiModelProperty("检验次数")
    private Integer checkoutNumber;
    /**
     * åŒºé—´
     */
    @ApiModelProperty("区间")
    private String section;
    /**
     * åŒºé—´
     */
    @ApiModelProperty("芯数区间")
    private String cores;
    /**
     * æ–¹æ³•
     */
    @ApiModelProperty("方法列表")
    private String method;
    @ApiModelProperty("方法")
    private String methodS;
    /**
     * é¢„计时间(天)
     */
    @ApiModelProperty("预计时间")
    private Integer manDay;
    /**
     * ç‰¹æ®Šæ ‡è¯†
     */
    @ApiModelProperty("特殊标识")
    private String bsm;
    /**
     * è¦æ±‚值
     */
    @ApiModelProperty("要求值")
    private String ask;
    @ApiModelProperty("要求描述")
    private String tell;
    /**
     * å¤–键:标准方法id
     */
    @ApiModelProperty("标准方法id")
    private Integer standardMethodListId;
    @ApiModelProperty("工厂")
    private String factory;
    @ApiModelProperty("样品分类")
    private String sampleType;
    @ApiModelProperty("样品")
    private String sample;
    @ApiModelProperty("型号")
    private String model;
    @ApiModelProperty("模板id")
    private Integer templateId;
    @ApiModelProperty("")
    @ApiModelProperty("创建用户")
    @TableField(fill = FieldFill.INSERT)
    private Integer createUser;
    /**
     *
     */
@@ -166,10 +37,11 @@
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    /**
     *
     */
    @ApiModelProperty("")
    @ApiModelProperty("修改用户")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Integer updateUser;
    /**
@@ -180,49 +52,9 @@
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
    @ApiModelProperty("1:有效 0:无效")
    private Integer state;
    @ApiModelProperty("审核状态 1 å®¡æ ¸ä¸­ 2 å®¡æ ¸é€šè¿‡ 3 å®¡æ ¸æœªé€šè¿‡")
    private String checkStatus;
    private String dic;
    private String tree;
    @ApiModelProperty("检验项id")
    private Integer structureItemParameterId;
    @ApiModelProperty(value = "检验项分类")
    private String inspectionItemClass;
    @ApiModelProperty(value = "检验项分类EN")
    private String inspectionItemClassEn;
    @ApiModelProperty(value = "条件")
    private String radius;
    @ApiModelProperty(value = "条件列表")
    private String radiusList;
    @ApiModelProperty(value = "收费标准(元/次)")
    private String rates;
    @ApiModelProperty(value = "索引顺序")
    private Integer sort;
    /**
     * å¯¼ä½“材质
     */
    @ApiModelProperty("导体材质")
    private String conductorMaterial;
    /**
     * å¯¼ä½“类型
     */
    @ApiModelProperty("导体类型")
    private String conductorType;
    @ApiModelProperty("标准树下检验项目表ID")
    private Long standardProductListId;
    @ApiModelProperty("操作记录 0 ä¿®æ”¹ 1 å®¡æ ¸é€šè¿‡ 2 å®¡æ ¸æœªé€šè¿‡")
    private String operationType;
    @ApiModelProperty("备注")
    private String remark;
}
basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListUpdateRecordRel.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,228 @@
package com.ruoyi.basic.pojo;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * æ ‡å‡†æ ‘下的检验项目修改记录关联表
 * @TableName standard_product_list
 */
@TableName(value ="standard_product_list_update_record_rel")
@Data
public class StandardProductListUpdateRecordRel implements Serializable {
    /**
     * ä¸»é”®id
     */
    @TableId(value = "id",type = IdType.ASSIGN_ID)
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    /**
     * æ£€éªŒé¡¹
     */
    @ApiModelProperty("检验项")
    private String inspectionItem;
    @ApiModelProperty("检验项EN")
    private String inspectionItemEn;
    /**
     * æ£€éªŒé¡¹å°ç±»
     */
    @ApiModelProperty("检验项小类")
    private String inspectionItemSubclass;
    @ApiModelProperty("检验项小类EN")
    private String inspectionItemSubclassEn;
    /**
     * å®žéªŒå®¤
     */
    @ApiModelProperty("实验室")
    private String laboratory;
    @ApiModelProperty("子实验室")
    private String sonLaboratory;
    /**
     * è®¡é‡å•位
     */
    @ApiModelProperty("计量单位")
    private String unit;
    /**
     * å•ä»·(元)
     */
    @ApiModelProperty("单价")
    private String price;
    /**
     * å·¥æ—¶(H)
     */
    @ApiModelProperty("工时")
    private String manHour;
    /**
     * å·¥æ—¶åˆ†ç»„
     */
    @ApiModelProperty("工时分组")
    private String manHourGroup;
    /**
     * æ£€éªŒé¡¹ç±»åž‹
     */
    @ApiModelProperty("检验项类型")
    private String inspectionItemType;
    /**
     * æ£€éªŒå€¼ç±»åž‹
     */
    @ApiModelProperty("检验值类型")
    private String inspectionValueType;
    /**
     * æ£€éªŒæ¬¡æ•°
     */
    @ApiModelProperty("检验次数")
    private Integer checkoutNumber;
    /**
     * åŒºé—´
     */
    @ApiModelProperty("区间")
    private String section;
    /**
     * åŒºé—´
     */
    @ApiModelProperty("芯数区间")
    private String cores;
    /**
     * æ–¹æ³•
     */
    @ApiModelProperty("方法列表")
    private String method;
    @ApiModelProperty("方法")
    private String methodS;
    /**
     * é¢„计时间(天)
     */
    @ApiModelProperty("预计时间")
    private Integer manDay;
    /**
     * ç‰¹æ®Šæ ‡è¯†
     */
    @ApiModelProperty("特殊标识")
    private String bsm;
    /**
     * è¦æ±‚值
     */
    @ApiModelProperty("要求值")
    private String ask;
    @ApiModelProperty("要求描述")
    private String tell;
    /**
     * å¤–键:标准方法id
     */
    @ApiModelProperty("标准方法id")
    private Integer standardMethodListId;
    @ApiModelProperty("工厂")
    private String factory;
    @ApiModelProperty("样品分类")
    private String sampleType;
    @ApiModelProperty("样品")
    private String sample;
    @ApiModelProperty("型号")
    private String model;
    @ApiModelProperty("模板id")
    private Integer templateId;
    @ApiModelProperty("")
    @TableField(fill = FieldFill.INSERT)
    private Integer createUser;
    /**
     *
     */
    @ApiModelProperty("创建时间")
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    /**
     *
     */
    @ApiModelProperty("")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Integer updateUser;
    /**
     *
     */
    @ApiModelProperty("修改时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
    @ApiModelProperty("1:有效 0:无效")
    private Integer state;
    private String dic;
    private String tree;
    @ApiModelProperty("检验项id")
    private Integer structureItemParameterId;
    @ApiModelProperty(value = "检验项分类")
    private String inspectionItemClass;
    @ApiModelProperty(value = "检验项分类EN")
    private String inspectionItemClassEn;
    @ApiModelProperty(value = "条件")
    private String radius;
    @ApiModelProperty(value = "条件列表")
    private String radiusList;
    @ApiModelProperty(value = "收费标准(元/次)")
    private String rates;
    @ApiModelProperty(value = "索引顺序")
    private Integer sort;
    /**
     * å¯¼ä½“材质
     */
    @ApiModelProperty("导体材质")
    private String conductorMaterial;
    /**
     * å¯¼ä½“类型
     */
    @ApiModelProperty("导体类型")
    private String conductorType;
    @ApiModelProperty("standard_product_list主键ID")
    private Long standardProductListId;
    @ApiModelProperty("standard_product_list_update_record表主键id")
    private Long standardProductListUpdateRecordId;
}
basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListService.java
@@ -68,16 +68,13 @@
    boolean copyStandardProductSort(CopyStandardProductListDto copyStandardProductListDto);
    /**
     * æ ‡å‡†æ ‘下检验项处理
     * @param standardProductListDto
     * æ ‡å‡†æ ‘下检验项提交
     */
    void productListOperate(StandardProductListDto standardProductListDto);
    void productListSubmit(StandardProductListUpdateRecord standardProductListUpdateRecord);
    /**
     * æ ‡å‡†æ ‘下检验项修改记录分页查询
     * @param page
     * @param record
     * @return
     * æ ‡å‡†æ ‘下检验项审核
     * @param standardProductListUpdateRecord
     */
    IPage<StandardProductListUpdateRecord> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record);
    void productListCheck(StandardProductListUpdateRecord standardProductListUpdateRecord);
}
basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListUpdateRecordService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,38 @@
package com.ruoyi.basic.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.basic.dto.CopyStandardProductListDto;
import com.ruoyi.basic.dto.InsSampleReceiveDto;
import com.ruoyi.basic.dto.ResetTreeDragDTO;
import com.ruoyi.basic.pojo.StandardProductList;
import com.ruoyi.basic.pojo.StandardProductListUpdateRecord;
import com.ruoyi.basic.pojo.StandardProductListUpdateRecordRel;
import java.util.List;
import java.util.Map;
/**
 * @author Administrator
 * @description é’ˆå¯¹è¡¨ã€standard_product_list(标准树下的检验项目)】的数据库操作Service
 * @createDate 2024-03-05 10:33:29
 */
public interface StandardProductListUpdateRecordService extends IService<StandardProductListUpdateRecord> {
    /**
     * æ ‡å‡†æ ‘下检验项修改记录分页查询
     * @param page
     * @param record
     * @return
     */
    IPage<StandardProductListUpdateRecord> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record);
    /**
     * æ ‡å‡†æ ‘下检验项修改记录分页查询
     * @param page
     * @param standardProductListUpdateRecordRel
     * @return
     */
    IPage<StandardProductListUpdateRecordRel> standardProductListRecordRelPage(Page page, StandardProductListUpdateRecordRel standardProductListUpdateRecordRel);
}
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardMethodListServiceImpl.java
@@ -77,7 +77,7 @@
                        standardMethodLists.addAll(standardMethodListMapper.selectStandardMethodLists("\"" + trees[3] + "\""));
                        break;
                    case 1:
                        str += "\"" + trees[3] + "\",\"" + trees[5] + "\"";
                        str += "\"" + trees[3] + "\",\"" + trees[4] + "\"";
                        standardMethodLists.addAll(standardMethodListMapper.selectStandardMethodLists(str));
                        standardMethodLists.addAll(standardMethodListMapper.selectStandardMethodLists("\"" + trees[3] + "\""));
                        break;
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
@@ -1,26 +1,22 @@
package com.ruoyi.basic.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.basic.dto.*;
import com.ruoyi.basic.enums.BasicTreeEnums;
import com.ruoyi.basic.enums.StandardProductListChcekTypeEnums;
import com.ruoyi.basic.enums.StandardProductListOperationTypeEnums;
import com.ruoyi.basic.mapper.*;
import com.ruoyi.basic.pojo.*;
import com.ruoyi.basic.service.StandardMethodListService;
import com.ruoyi.basic.service.StandardMethodService;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.QueryWrappers;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.basic.service.StandardProductListService;
import lombok.AllArgsConstructor;
import org.apache.catalina.security.SecurityUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -68,6 +64,9 @@
    @Autowired
    private StandardProductListUpdateRecordMapper standardProductListUpdateRecordMapper;
    @Autowired
    private StandardProductListUpdateRecordRelMapper standardProductListUpdateRecordRelMapper;
    @Override
@@ -644,57 +643,77 @@
    }
    /**
     * æ ‡å‡†æ ‘下检验项处理
     * @param standardProductListDto
     * æ ‡å‡†æ ‘下检验项提交
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void productListOperate(StandardProductListDto standardProductListDto) {
        StandardProductList standardProductList = new StandardProductList();
        standardProductList.setId(standardProductListDto.getId());
        StandardProductListUpdateRecord standardProductListUpdateRecord = new StandardProductListUpdateRecord();
        // å®¡æ ¸é€šè¿‡
        if(StandardProductListOperationTypeEnums.PASS_CHECK_OP.getCode().equals(standardProductListDto.getOperationStatus())){
            // åˆ é™¤å¤‡ä»½æ•°æ®
            standardProductListBackupRelMapper.deleteById(standardProductListDto.getId());
            standardProductList.setCheckStatus(StandardProductListChcekTypeEnums.PASS_CHECK.getCode());
        // å®¡æ ¸ä¸é€šè¿‡
        }else if(StandardProductListOperationTypeEnums.NO_PASS_CHECK_OP.getCode().equals(standardProductListDto.getOperationStatus())) {
            // è¿˜åŽŸæ•°æ®
            StandardProductListBackupRel standardProductListBackupRel = standardProductListBackupRelMapper.selectById(standardProductListDto.getId());
            if(ObjectUtils.isEmpty(standardProductListBackupRel)){
                throw new RuntimeException("备份数据查找失败");
            }
            BeanUtils.copyProperties(standardProductListBackupRel, standardProductList);
            standardProductList.setCheckStatus(StandardProductListChcekTypeEnums.NO_PASS_CHECK.getCode());
        // æäº¤
        }else if(StandardProductListOperationTypeEnums.SUBMIT_OP.getCode().equals(standardProductListDto.getOperationStatus())) {
            standardProductListUpdateRecord.setOperationType(StandardProductListOperationTypeEnums.PASS_CHECK_OP.getCode());
            standardProductList.setCheckStatus(StandardProductListChcekTypeEnums.CHECK_ING.getCode());
        } else {
            throw new RuntimeException("操作有误");
        }
        // æ–°å¢žæ“ä½œè®°å½•
        standardProductListUpdateRecord.setStandardProductListId(standardProductListDto.getId());
        standardProductListUpdateRecord.setOperationType(standardProductListDto.getOperationStatus());
    public void productListSubmit(StandardProductListUpdateRecord standardProductListUpdateRecord) {
        // æŸ¥è¯¢æ‰€æœ‰å¾…审核的数据
        QueryWrapper<StandardProductList> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("check_status",StandardProductListChcekTypeEnums.WAIT_CHECK.getCode());
        List<StandardProductList> unCheckStandardProductListArray = standardProductListMapper.selectList(queryWrapper);
        List<Long> standardProductListIds = new ArrayList<>();
        // æ’入修改记录
        standardProductListUpdateRecordMapper.insert(standardProductListUpdateRecord);
        // ä¿®æ”¹å®¡æ ¸çŠ¶æ€
        standardProductList.setCheckStatus(standardProductListDto.getOperationStatus());
        standardProductListMapper.updateById(standardProductList);
        // æ’入修改记录关联表
        List<StandardProductListUpdateRecordRel> standardProductListUpdateRecordRelList = new ArrayList<>();
        for (StandardProductList standardProductList : unCheckStandardProductListArray) {
            StandardProductListUpdateRecordRel standardProductListUpdateRecordRel = new StandardProductListUpdateRecordRel();
            BeanUtils.copyProperties(standardProductList, standardProductListUpdateRecordRel);
            standardProductListUpdateRecordRel.setId(null);
            standardProductListUpdateRecordRel.setStandardProductListId(standardProductList.getId());
            standardProductListUpdateRecordRel.setStandardProductListUpdateRecordId(standardProductListUpdateRecord.getId());
            standardProductListUpdateRecordRelList.add(standardProductListUpdateRecordRel);
            standardProductListUpdateRecordRelMapper.insert(standardProductListUpdateRecordRel);
            standardProductListIds.add(standardProductList.getId());
        }
        // ä¿®æ”¹æ ‡å‡†æ ‘下检查项状态为审核中
        standardProductListMapper.updateProductListCheckStatus(standardProductListIds,StandardProductListChcekTypeEnums.CHECK_ING.getCode());
    }
    /**
     * æ ‡å‡†æ ‘下检验项修改记录分页查询
     * @param page
     * @param record
     * @return
     * æ ‡å‡†æ ‘下检验项审核
     * @param standardProductListUpdateRecord
     */
    @Override
    public IPage<StandardProductListUpdateRecord> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record) {
        return standardProductListUpdateRecordMapper.standardProductListRecordPage(page,QueryWrappers.queryWrappers(record));
    @Transactional(rollbackFor = Exception.class)
    public void productListCheck(StandardProductListUpdateRecord standardProductListUpdateRecord) {
        // æŸ¥è¯¢æ‰€æœ‰å®¡æ ¸ä¸­çš„æ•°æ®
        QueryWrapper<StandardProductList> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("check_status",StandardProductListChcekTypeEnums.CHECK_ING.getCode());
        List<StandardProductList> standardProductListArray = standardProductListMapper.selectList(queryWrapper);
        if(CollectionUtils.isEmpty(standardProductListArray)){
            return;
    }
        List<Long> standardProductListIds = new ArrayList<>();
        for (StandardProductList standardProductList : standardProductListArray) {
            standardProductListIds.add(standardProductList.getId());
        }
        // å®¡æ ¸é€šè¿‡
        if(StandardProductListChcekTypeEnums.PASS_CHECK.getCode().equals(standardProductListUpdateRecord.getCheckStatus())){
            // åˆ é™¤å¤‡ä»½æ•°æ®
            standardProductListBackupRelMapper.deleteBatchIds(standardProductListIds);
            // ä¿®æ”¹çŠ¶æ€
            standardProductListMapper.updateProductListCheckStatus(standardProductListIds,StandardProductListChcekTypeEnums.PASS_CHECK.getCode());
        }
        // å®¡æ ¸æœªé€šè¿‡
        if(StandardProductListChcekTypeEnums.NO_PASS_CHECK.getCode().equals(standardProductListUpdateRecord.getCheckStatus())){
            // æŸ¥è¯¢æ‰€æœ‰çš„备份数据
            List<StandardProductListBackupRel> standardProductListBackupRelList = standardProductListBackupRelMapper.selectBatchIds(standardProductListIds);
            // å›žæ»šæ•°æ®
            for (StandardProductListBackupRel standardProductListBackupRel : standardProductListBackupRelList) {
                StandardProductList standardProductList = new StandardProductList();
                BeanUtils.copyProperties(standardProductListBackupRel, standardProductList);
                standardProductList.setCheckStatus("");
                standardProductListMapper.updateById(standardProductList);
            }
            // åˆ é™¤å¤‡ä»½æ•°æ®
            standardProductListBackupRelMapper.deleteBatchIds(standardProductListIds);
        }
        standardProductListUpdateRecordMapper.updateById(standardProductListUpdateRecord);
    }
}
basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListUpdateRecordServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,76 @@
package com.ruoyi.basic.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.basic.dto.CopyStandardProductListDto;
import com.ruoyi.basic.dto.InsSampleReceiveDto;
import com.ruoyi.basic.dto.ResetTreeDragDTO;
import com.ruoyi.basic.enums.StandardProductListChcekTypeEnums;
import com.ruoyi.basic.mapper.*;
import com.ruoyi.basic.pojo.*;
import com.ruoyi.basic.service.StandardMethodListService;
import com.ruoyi.basic.service.StandardProductListService;
import com.ruoyi.basic.service.StandardProductListUpdateRecordService;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.QueryWrappers;
import com.ruoyi.common.utils.SecurityUtils;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
/**
 * @author Administrator
 * @description é’ˆå¯¹è¡¨ã€standard_product_list(标准树下的检验项目)】的数据库操作Service实现
 * @createDate 2024-03-05 10:33:29
 */
@Service
@AllArgsConstructor
public class StandardProductListUpdateRecordServiceImpl extends ServiceImpl<StandardProductListUpdateRecordMapper, StandardProductListUpdateRecord>
        implements StandardProductListUpdateRecordService {
    @Autowired
    private StandardProductListUpdateRecordMapper standardProductListUpdateRecordMapper;
    @Autowired
    private StandardProductListUpdateRecordRelMapper standardProductListUpdateRecordRelMapper;
    /**
     * æ ‡å‡†æ ‘下检验项修改记录分页查询
     * @param page
     * @param record
     * @return
     */
    @Override
    public IPage<StandardProductListUpdateRecord> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record) {
        return standardProductListUpdateRecordMapper.standardProductListRecordPage(page,QueryWrappers.queryWrappers(record));
    }
    /**
     * æ ‡å‡†æ ‘下检验项修改记录分页查询
     * @param page
     * @param standardProductListUpdateRecordRel
     * @return
     */
    @Override
    public IPage<StandardProductListUpdateRecordRel> standardProductListRecordRelPage(Page page, StandardProductListUpdateRecordRel standardProductListUpdateRecordRel) {
        return standardProductListUpdateRecordRelMapper.standardProductListRecordRelPage(page,QueryWrappers.queryWrappers(standardProductListUpdateRecordRel));
    }
}
basic-server/src/main/resources/mapper/StandardProductListMapper.xml
@@ -154,4 +154,12 @@
        from structure_test_object_part
        where part_no = #{partNo}
    </select>
    <update id="updateProductListCheckStatus">
        UPDATE standard_product_list SET check_status = #{checkStatus}
        WHERE ID IN
        <foreach collection="ids" open="(" close=")" item="item">
            #{item}
        </foreach>
    </update>
</mapper>
basic-server/src/main/resources/mapper/StandardProductListUpdateRecordRelMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,112 @@
<?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.ruoyi.basic.mapper.StandardProductListUpdateRecordRelMapper">
    <insert id="batchInsertRecordRel">
        INSERT INTO standard_product_list_update_record_rel (
            inspection_item,
            inspection_item_en,
            inspection_item_subclass,
            inspection_item_subclass_en,
            factory,
            laboratory,
            sample_type,
            sample,
            model,
            son_laboratory,
            unit,
            price,
            man_hour,
            man_hour_group,
            inspection_item_type,
            inspection_value_type,
            checkout_number,
            section,
            cores,
            method,
            method_s,
            man_day,
            bsm,
            ask,
            tell,
            standard_method_list_id,
            create_user,
            update_user,
            create_time,
            update_time,
            template_id,
            state,
            dic,
            tree,
            structure_item_parameter_id,
            inspection_item_class,
            inspection_item_class_en,
            radius,
            radius_list,
            rates,
            sort,
            conductor_material,
            standard_product_list_id,
            standard_product_list_update_record_id,
            conductor_type
        ) values
        <foreach collection="list" separator="," item="item">
            (
            #{item.inspectionItem},
            #{item.inspectionItemEn},
            #{item.inspectionItemSubclass},
            #{item.inspectionItemSubclassEn},
            #{item.factory},
            #{item.laboratory},
            #{item.sampleType},
            #{item.sample},
            #{item.model},
            #{item.sonLaboratory},
            #{item.unit},
            #{item.price},
            #{item.manHour},
            #{item.manHourGroup},
            #{item.inspectionItemType},
            #{item.inspectionValueType},
            #{item.checkoutNumber},
            #{item.section},
            #{item.cores},
            #{item.method},
            #{item.methodS},
            #{item.manDay},
            #{item.bsm},
            #{item.ask},
            #{item.tell},
            #{item.standardMethodListId},
            #{item.createUser},
            #{item.updateUser},
            #{item.createTime},
            #{item.updateTime},
            #{item.templateId},
            #{item.state},
            #{item.dic},
            #{item.tree},
            #{item.structureItemParameterId},
            #{item.inspectionItemClass},
            #{item.inspectionItemClassEn},
            #{item.radius},
            #{item.radiusList},
            #{item.rates},
            #{item.sort},
            #{item.conductorMaterial},
            #{item.standardProductListId},
            #{item.standardProductListUpdateRecordId},
            #{item.conductorType}
            )
        </foreach>
    </insert>
    <select id="standardProductListRecordRelPage" resultType="com.ruoyi.basic.pojo.StandardProductListUpdateRecordRel">
        select * from standard_product_list_update_record_rel
        <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
            ${ew.customSqlSegment}
        </if>
    </select>
</mapper>