basic-server/src/main/java/com/ruoyi/basic/controller/StandardTreeController.java
@@ -2,11 +2,10 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.basic.dto.*; import com.ruoyi.basic.pojo.*; import com.ruoyi.common.core.domain.Result; import com.ruoyi.basic.pojo.StandardProductList; import com.ruoyi.basic.pojo.StandardProductListSupplierAsk; import com.ruoyi.basic.pojo.StandardTree; import com.ruoyi.basic.service.StandardMethodListService; import com.ruoyi.basic.service.StandardProductListService; import com.ruoyi.basic.service.StandardProductListSupplierAskService; @@ -255,4 +254,17 @@ public Result copyStandardProductSort(@RequestBody CopyStandardProductListDto copyStandardProductListDto) { return Result.success(standardProductListService.copyStandardProductSort(copyStandardProductListDto)); } @ApiOperation(value = "æ åæ ä¸æ£éªé¡¹å¤ç") @PostMapping("/productListOperate") public Result productListOperate(@RequestBody StandardProductListDto standardProductListDto) { standardProductListService.productListOperate(standardProductListDto); return Result.success(); } @ApiOperation(value = "æ åæ ä¸æ£éªé¡¹ä¿®æ¹è®°å½å页æ¥è¯¢") @GetMapping("/standardProductListRecordPage") public Result standardProductListRecordPage(Page page, StandardProductListUpdateRecord standardProductListUpdateRecord) { return Result.success(standardProductListService.standardProductListRecordPage(page,standardProductListUpdateRecord)); } } basic-server/src/main/java/com/ruoyi/basic/dto/StandardProductListDto.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,23 @@ package com.ruoyi.basic.dto; 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 com.ruoyi.basic.pojo.StandardProductList; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.io.Serializable; import java.time.LocalDateTime; /** * æ åæ ä¸çæ£éªé¡¹ç® * @TableName standard_product_list */ @Data public class StandardProductListDto extends StandardProductList { private String operationStatus; } basic-server/src/main/java/com/ruoyi/basic/enums/StandardProductListChcekTypeEnums.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,34 @@ package com.ruoyi.basic.enums; public enum StandardProductListChcekTypeEnums { WAIT_CHECK("0","æªå®¡æ ¸"), CHECK_ING("1","å®¡æ ¸ä¸"), PASS_CHECK("2","å®¡æ ¸éè¿"), NO_PASS_CHECK("3","å®¡æ ¸æªéè¿"); private String code; private String name; StandardProductListChcekTypeEnums(String code, String name) { this.code = code; this.name = name; } public String getCode() { return code; } public void setCode(String code) { this.code = code; } public String getName() { return name; } public void setName(String name) { this.name = name; } } basic-server/src/main/java/com/ruoyi/basic/enums/StandardProductListOperationTypeEnums.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,33 @@ package com.ruoyi.basic.enums; public enum StandardProductListOperationTypeEnums { SUBMIT_OP("0","æäº¤"), PASS_CHECK_OP("1","å®¡æ ¸éè¿"), NO_PASS_CHECK_OP("2","å®¡æ ¸æªéè¿"); private String code; private String name; StandardProductListOperationTypeEnums(String code, String name) { this.code = code; this.name = name; } public String getCode() { return code; } public void setCode(String code) { this.code = code; } public String getName() { return name; } public void setName(String name) { this.name = name; } } basic-server/src/main/java/com/ruoyi/basic/enums/TestPorjectTypeEnums.java
@@ -2,7 +2,7 @@ public enum TestPorjectTypeEnums { RAW_MATERIALS("1","åè¾ æ"), RAW_MATERIALS("1","åè¾ æ"), FINISHED_PRODUCT("2","æå"), SEMI_FINISHED_PRODUCT("3","åæå"), PURCHASED_PART("4","å¤è´ä»¶"), basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListBackupRelMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,18 @@ package com.ruoyi.basic.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.basic.pojo.StandardProductListBackupRel; /** * @author Administrator * @description é对表ãstandard_product_list(æ åæ ä¸çæ£éªé¡¹ç®)ãçæ°æ®åºæä½Mapper * @createDate 2024-03-05 10:33:29 * @Entity com.ruoyi.basic.pojo.StandardProductList */ public interface StandardProductListBackupRelMapper extends BaseMapper<StandardProductListBackupRel> { } basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListMapper.java
@@ -2,7 +2,9 @@ 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.StandardProductList; import com.ruoyi.basic.pojo.StandardProductListUpdateRecord; import org.apache.ibatis.annotations.Param; import java.util.List; basic-server/src/main/java/com/ruoyi/basic/mapper/StandardProductListUpdateRecordMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,30 @@ 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 org.apache.ibatis.annotations.Param; /** * @author Administrator * @description é对表ãstandard_product_list(æ åæ ä¸çæ£éªé¡¹ç®)ãçæ°æ®åºæä½Mapper * @createDate 2024-03-05 10:33:29 * @Entity com.ruoyi.basic.pojo.StandardProductList */ public interface StandardProductListUpdateRecordMapper extends BaseMapper<StandardProductListUpdateRecord> { /** * æ åæ ä¸æ£éªé¡¹ä¿®æ¹è®°å½å页æ¥è¯¢ * * @param page * @param ew * @return */ IPage<StandardProductListUpdateRecord> standardProductListRecordPage(Page page, @Param("ew") QueryWrapper<StandardProductListUpdateRecord> ew); } basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductList.java
@@ -219,4 +219,7 @@ */ @ApiModelProperty("导ä½ç±»å") private String conductorType; @ApiModelProperty("å®¡æ ¸ç¶æ 0 æªå®¡æ ¸ 1 å®¡æ ¸ä¸ 2 å®¡æ ¸éè¿ 3 å®¡æ ¸æªéè¿") private String checkStatus; } basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListBackupRel.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,222 @@ 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_backup_rel") @Data public class StandardProductListBackupRel 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; } basic-server/src/main/java/com/ruoyi/basic/pojo/StandardProductListUpdateRecord.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_backup_rel") @Data public class StandardProductListUpdateRecord 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("æ åæ ä¸æ£éªé¡¹ç®è¡¨ID") private Long standardProductListId; @ApiModelProperty("æä½è®°å½ 0 ä¿®æ¹ 1 å®¡æ ¸éè¿ 2 å®¡æ ¸æªéè¿") private String operationType; } basic-server/src/main/java/com/ruoyi/basic/service/StandardProductListService.java
@@ -2,11 +2,15 @@ import com.alibaba.fastjson.JSONArray; 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.dto.StandardProductListDto; import com.ruoyi.basic.pojo.StandardProductList; import com.ruoyi.basic.pojo.StandardProductListUpdateRecord; import com.ruoyi.basic.pojo.StructureItemParameter; import java.util.List; import java.util.Map; @@ -62,4 +66,18 @@ * @return */ boolean copyStandardProductSort(CopyStandardProductListDto copyStandardProductListDto); /** * æ åæ ä¸æ£éªé¡¹å¤ç * @param standardProductListDto */ void productListOperate(StandardProductListDto standardProductListDto); /** * æ åæ ä¸æ£éªé¡¹ä¿®æ¹è®°å½å页æ¥è¯¢ * @param page * @param record * @return */ IPage<StandardProductListUpdateRecord> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record); } basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
@@ -7,16 +7,17 @@ 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.dto.CopyStandardProductListDto; import com.ruoyi.basic.dto.InsSampleReceiveDto; import com.ruoyi.basic.dto.ProductDto; import com.ruoyi.basic.dto.ResetTreeDragDTO; import com.ruoyi.basic.service.StandardProductListService; import lombok.AllArgsConstructor; import org.apache.catalina.security.SecurityUtil; @@ -59,9 +60,36 @@ @Autowired private StructureItemParameterMapper structureItemParameterMapper; @Autowired private ModelMapper modelMapper; @Autowired private StandardProductListBackupRelMapper standardProductListBackupRelMapper; @Autowired private StandardProductListUpdateRecordMapper standardProductListUpdateRecordMapper; @Override public int upStandardProductList(StandardProductList list) { // æ ¹æ®id æ¥è¯¢å°åå§å¼ StandardProductList standardProductList = standardProductListMapper.selectById(list.getId()); if(ObjectUtils.isEmpty(standardProductList)){ throw new RuntimeException("æ´æ°å¤±è´¥,æªæ¥æ¾å°æ£æ¥é¡¹"); } // 夿å½åç¶æ 妿æ¯å®¡æ ¸ä¸ if(StandardProductListChcekTypeEnums.CHECK_ING.getCode().equals(list.getCheckStatus())){ throw new RuntimeException("å®¡æ ¸ä¸ä¸æ¯æä¿®æ¹"); } // æ¥è¯¢ææ°ç䏿¬¡å ³èå¤ä»½ 妿åå¨è¯´ææªå®¡æ ¸å®ç»§ç»ä¿®æ¹äºãä¸åæ°æ®å¤çã StandardProductListBackupRel standardProductListBackupRel = standardProductListBackupRelMapper.selectById(list.getId()); if(ObjectUtils.isEmpty(standardProductListBackupRel)){ StandardProductListBackupRel productListBackupRel = new StandardProductListBackupRel(); BeanUtils.copyProperties(standardProductList, productListBackupRel); standardProductListBackupRelMapper.insert(productListBackupRel); } // ä¿®æ¹ç¶æ list.setCheckStatus(StandardProductListChcekTypeEnums.WAIT_CHECK.getCode()); return standardProductListMapper.updateById(list); } @@ -290,6 +318,7 @@ String sampleType = ""; String sample = ""; String model = ""; StringBuilder checkItemQueryTree = new StringBuilder(); // æ£æ¥é¡¹æ¥è¯¢ åªæ¼æ¥ æ£æ¥å¯¹è±¡-产å // è¿åç»æ Map<String, Object> map = new HashMap<>(); @@ -303,57 +332,60 @@ if(trees == null && trees.length < 4){ return map; } StringBuilder queryTreeBuilder = new StringBuilder(); // 车é´å±çº§å¤ä¸å±çº§ if(existWorkShopFlag){ switch (trees.length) { case 7: queryTreeBuilder.append("[").append("\"").append(trees[4]).append("\",\"").append(trees[5]).append("\",\"").append(trees[6]).append("\"").append("]"); sampleType = trees[4]; sample = trees[5]; model = trees[6]; checkItemQueryTree.append("[").append("\"").append(trees[4]).append("\",\"").append(trees[5]).append("\"").append("]"); break; case 6: queryTreeBuilder.append("[").append("\"").append(trees[4]).append("\",\"").append(trees[5]).append("\"").append("]"); sampleType = trees[4]; sample = trees[5]; checkItemQueryTree.append("[").append("\"").append(trees[4]).append("\",\"").append(trees[5]).append("\"").append("]"); break; case 5: queryTreeBuilder.append("[").append("\"").append(trees[4]).append("\"").append("]"); sampleType = trees[4]; checkItemQueryTree.append("[").append("\"").append(trees[4]).append("\"").append("]"); break; } }else { switch (trees.length) { case 6: queryTreeBuilder.append("[").append("\"").append(trees[3]).append("\",\"").append(trees[4]).append("\",\"").append(trees[5]).append("\"").append("]"); sampleType = trees[3]; sample = trees[4]; model = trees[5]; checkItemQueryTree.append("[").append("\"").append(trees[3]).append("\",\"").append(trees[4]).append("\"").append("]"); break; case 5: queryTreeBuilder.append("[").append("\"").append(trees[3]).append("\",\"").append(trees[4]).append("\"").append("]"); sampleType = trees[3]; sample = trees[4]; checkItemQueryTree.append("[").append("\"").append(trees[3]).append("\",\"").append(trees[4]).append("\"").append("]"); break; case 4: queryTreeBuilder.append("[").append("\"").append(trees[3]).append("\"").append("]"); sampleType = trees[3]; checkItemQueryTree.append("[").append("\"").append(trees[3]).append("\"").append("]"); break; } } if(StringUtils.isEmpty(queryTreeBuilder.toString())){ if(StringUtils.isEmpty(checkItemQueryTree.toString())){ return map; } // æ ¹æ®æ£éªå¯¹è±¡/产å/åå·æ¥è¯¢æ£éªé¡¹ List<StructureItemParameter> structureItemParameterList = structureItemParameterMapper.selectItemParameterBySample(queryTreeBuilder.toString()); // æ ¹æ®æ£éªå¯¹è±¡/äº§åæ¥è¯¢æ£éªé¡¹ List<StructureItemParameter> structureItemParameterList = structureItemParameterMapper.selectItemParameterBySample(checkItemQueryTree.toString()); // 妿æ¯äº§åçæ£æ¥é¡¹ä¸ºç©ºå䏿¨ if(CollectionUtils.isEmpty(structureItemParameterList)){ String query = "[\"" + sampleType + "\"]"; structureItemParameterList = structureItemParameterMapper.selectItemParameterBySample(query); } // æ¥è¯¢æ ååºå·²ç»å®æ£æ¥é¡¹ç® List<StandardProductList> standardProductList = standardProductListMapper.selectList(Wrappers.<StandardProductList>lambdaQuery() .eq(StandardProductList::getStandardMethodListId, id) .like(StandardProductList::getTree, tree) .orderByAsc(StandardProductList::getSort)); // å°è£ åæ° List<StandardProductList> batchInsertStandardProductListArray = new ArrayList<>(); @@ -374,11 +406,10 @@ addStandProductList.setStructureItemParameterId(structureItemParameter.getId()); } addStandProductList.setId(null); addStandProductList.setId(addStandProductList.getId() != null ? addStandProductList.getId() : IdWorker.getId()); batchInsertStandardProductListArray.add(addStandProductList); } // æåºå¤ç å·²æé¡ºåºæç §åé¡ºåº æ²¡æé¡ºåºçæç §æ£éªé¡¹çidååºï¼é»è®¤æå¨æå batchInsertStandardProductListArray.sort(Comparator.comparing((StandardProductList item) -> item.getSort() != null ? item.getSort() : Integer.MAX_VALUE) .thenComparing(StandardProductList::getStructureItemParameterId)); @@ -611,6 +642,59 @@ this.updateBatchById(productLists); return false; } /** * æ åæ ä¸æ£éªé¡¹å¤ç * @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()); standardProductListUpdateRecordMapper.insert(standardProductListUpdateRecord); // ä¿®æ¹å®¡æ ¸ç¶æ standardProductList.setCheckStatus(standardProductListDto.getOperationStatus()); standardProductListMapper.updateById(standardProductList); } /** * æ åæ ä¸æ£éªé¡¹ä¿®æ¹è®°å½å页æ¥è¯¢ * @param page * @param record * @return */ @Override public IPage<StandardProductListUpdateRecord> standardProductListRecordPage(Page page, StandardProductListUpdateRecord record) { return standardProductListUpdateRecordMapper.standardProductListRecordPage(page,QueryWrappers.queryWrappers(record)); } } basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java
@@ -266,7 +266,7 @@ for (Model model : modelList) { BasicTreeDto basicTreeDto = new BasicTreeDto(); basicTreeDto.setLevel(BasicTreeEnums.MODEL_TYPE.getCode()); basicTreeDto.setValue(String.valueOf(model.getId())); basicTreeDto.setValue(model.getModelName()); basicTreeDto.setLabel(model.getModelName()); basicTreeDto.setChildren(null); if(model.getProductId() != null) { @@ -293,7 +293,7 @@ Product::getObjectId, Collectors.mapping(product -> { BasicTreeDto basicTreeDto = new BasicTreeDto(); basicTreeDto.setValue(String.valueOf(product.getId())); basicTreeDto.setValue(product.getName()); basicTreeDto.setLabel(product.getName()); basicTreeDto.setLevel(BasicTreeEnums.PRODUCT_TYPE.getCode()); basicTreeDto.setChildren(productModelMap.get(product.getId())); @@ -303,8 +303,9 @@ // å¯¹æ£æµå¯¹è±¡å æç §å®éªå®¤å¨æç §æ£æ¥å¯¹è±¡ç±»å«åç±» List<BasicTreeDto> testProjectBasicTreeList = structureTestObjectList.stream().map(structureTestObject -> { BasicTreeDto basicTreeDto = new BasicTreeDto(); basicTreeDto.setValue(String.valueOf(structureTestObject.getId())); basicTreeDto.setValue(structureTestObject.getSpecimenName()); basicTreeDto.setLabel(structureTestObject.getSpecimenName()); basicTreeDto.setLevel(BasicTreeEnums.STRUCTURE_TEST_OBJECT_TYPE.getCode()); List<BasicTreeDto> children = new ArrayList<>(); if (!CollectionUtils.isEmpty(productMap.get(structureTestObject.getId()))) { children.addAll(productMap.get(structureTestObject.getId())); basic-server/src/main/resources/mapper/StandardProductListMapper.xml
@@ -29,7 +29,7 @@ </resultMap> <!-- æ¹éæ·»å æ£æµæ å --> <insert id="saveBatchProductLists" keyProperty="id" useGeneratedKeys="true"> <insert id="saveBatchProductLists"> INSERT INTO standard_product_list (id, 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, template_id, state, dic, tree, structure_item_parameter_id, inspection_item_class, inspection_item_class_en, radius, radius_list, rates, sort, conductor_material, conductor_type) VALUES <foreach item="item" collection="productLists" open="(" separator="),(" close=")"> basic-server/src/main/resources/mapper/StandardProductListUpdateRecordMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,12 @@ <?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.StandardProductListUpdateRecordMapper"> <select id="standardProductListRecordPage" resultType="com.ruoyi.basic.pojo.StandardProductListUpdateRecord"> select * from standard_product_list_update_record <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> ${ew.customSqlSegment} </if> </select> </mapper>