Explorar o código

试验检测相关

liuyc %!s(int64=2) %!d(string=hai) anos
pai
achega
5ac06135d6
Modificáronse 27 ficheiros con 528 adicións e 82 borrados
  1. 13 0
      blade-service-api/blade-business-api/src/main/java/org/springblade/business/dto/TrialDetectionDataDTO.java
  2. 25 0
      blade-service-api/blade-business-api/src/main/java/org/springblade/business/dto/TrialDetectionDataPageDTO.java
  3. 118 0
      blade-service-api/blade-business-api/src/main/java/org/springblade/business/entity/TrialDetectionData.java
  4. 1 1
      blade-service-api/blade-business-api/src/main/java/org/springblade/business/entity/TrialMaterialMobilization.java
  5. 1 1
      blade-service-api/blade-business-api/src/main/java/org/springblade/business/entity/TrialSampleInfo.java
  6. 13 0
      blade-service-api/blade-business-api/src/main/java/org/springblade/business/vo/TrialSampleInfoVO3.java
  7. 3 0
      blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/vo/TrialClassificationConfigurationTreeVO.java
  8. 4 4
      blade-service/blade-business/src/main/java/org/springblade/business/controller/TrialContainerController.java
  9. 76 0
      blade-service/blade-business/src/main/java/org/springblade/business/controller/TrialDetectionController.java
  10. 1 1
      blade-service/blade-business/src/main/java/org/springblade/business/excel/TrialMaterialMobilizationExcel.java
  11. 1 1
      blade-service/blade-business/src/main/java/org/springblade/business/excel/TrialSampleInfoExcel.java
  12. 1 1
      blade-service/blade-business/src/main/java/org/springblade/business/mapper/TrialContainerClassificationMapper.java
  13. 4 1
      blade-service/blade-business/src/main/java/org/springblade/business/mapper/TrialContainerClassificationMapper.xml
  14. 7 0
      blade-service/blade-business/src/main/java/org/springblade/business/mapper/TrialDetectionDataMapper.java
  15. 47 0
      blade-service/blade-business/src/main/java/org/springblade/business/mapper/TrialDetectionDataMapper.xml
  16. 1 1
      blade-service/blade-business/src/main/java/org/springblade/business/service/ITrialContainerClassificationService.java
  17. 19 0
      blade-service/blade-business/src/main/java/org/springblade/business/service/ITrialDetectionDataService.java
  18. 3 0
      blade-service/blade-business/src/main/java/org/springblade/business/service/ITrialSampleInfoService.java
  19. 4 2
      blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialContainerClassificationServiceImpl.java
  20. 81 0
      blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialDetectionDataServiceImpl.java
  21. 1 2
      blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialDeviceInfoServiceImpl.java
  22. 1 2
      blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialDeviceOverhaulServiceImpl.java
  23. 1 2
      blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialDeviceUseServiceImpl.java
  24. 3 3
      blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialMaterialMobilizationServiceImpl.java
  25. 22 3
      blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialSampleInfoServiceImpl.java
  26. 55 35
      blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreePrivateMapper.xml
  27. 22 22
      blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreePrivateServiceImpl.java

+ 13 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/dto/TrialDetectionDataDTO.java

@@ -0,0 +1,13 @@
+package org.springblade.business.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springblade.business.entity.TrialDetectionData;
+
+@Data
+public class TrialDetectionDataDTO extends TrialDetectionData {
+
+    @ApiModelProperty("批量复制ids")
+    private String ids;
+
+}

+ 25 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/dto/TrialDetectionDataPageDTO.java

@@ -0,0 +1,25 @@
+package org.springblade.business.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springblade.business.entity.TrialDetectionData;
+
+@Data
+public class TrialDetectionDataPageDTO extends TrialDetectionData {
+
+    @ApiModelProperty("查询输入框 报告编号、委托编号")
+    private String queryValue;
+
+    @ApiModelProperty(value = "报告时间-起")
+    private String startTime;
+
+    @ApiModelProperty(value = "报告时间-止")
+    private String endTime;
+
+    @ApiModelProperty(value = "送样人员")
+    private String queryName;
+
+    @ApiModelProperty(value = "是否合格 '0'=不合格 '1'=合格")
+    private String queryStatus;
+
+}

+ 118 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/entity/TrialDetectionData.java

@@ -0,0 +1,118 @@
+package org.springblade.business.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.mp.base.BaseEntity;
+
+import java.util.Date;
+
+/**
+ * 试验检测数据表实体
+ */
+@Data
+@TableName("m_trial_detection_data")
+@EqualsAndHashCode(callSuper = true)
+public class TrialDetectionData extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "合同段id")
+    private Long contractId;
+
+    @ApiModelProperty(value = "节点id")
+    private Long nodeId;
+
+    @ApiModelProperty(value = "委托编号")
+    private String entrustNo;
+
+    @ApiModelProperty(value = "委托单位")
+    private String entrustCompany;
+
+    @ApiModelProperty(value = "样品名称")
+    private String materialName;
+
+    @ApiModelProperty(value = "样品编号")
+    private String specificationNumber;
+
+    @ApiModelProperty(value = "合格状态 '0'=不合格 '1'=合格")
+    private Integer status;
+
+    @ApiModelProperty(value = "检测机构证书编号")
+    private String testingAgencyCertificateNo;
+
+    @ApiModelProperty(value = "样品数量")
+    private Integer materialCount;
+
+    @ApiModelProperty(value = "代表数量")
+    private Integer representativeCount;
+
+    @ApiModelProperty(value = "取样人")
+    private String userName;
+
+    @ApiModelProperty(value = "见证人")
+    private String witness;
+
+    @ApiModelProperty(value = "检测机构")
+    private String inspectionOrganization;
+
+    @ApiModelProperty(value = "取样日期")
+    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date samplingDate;
+
+    @ApiModelProperty(value = "取样地点")
+    private String samplingLocation;
+
+    @ApiModelProperty(value = "送样日期")
+    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date sampleDeliveryDate;
+
+    @ApiModelProperty(value = "产地")
+    private String placeOfOrigin;
+
+    @ApiModelProperty(value = "检测日期")
+    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Long testDate;
+
+    @ApiModelProperty(value = "生产厂家")
+    private String manufacturer;
+
+    @ApiModelProperty(value = "报告日期")
+    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date reportDate;
+
+    @ApiModelProperty(value = "生产批号")
+    private String batchNumber;
+
+    @ApiModelProperty(value = "报告编号")
+    private String reportNo;
+
+    @ApiModelProperty(value = "工程部位")
+    private String projectPosition;
+
+    @ApiModelProperty(value = "委托单附件URL")
+    private String delegationOrderUrl;
+
+    @ApiModelProperty(value = "记录表附件URL")
+    private String recordTableUrl;
+
+    @ApiModelProperty(value = "报告单附件URL")
+    private String reportAttachmentUrl;
+
+    @ApiModelProperty(value = "检测依据")
+    private String testBasisText;
+
+    @ApiModelProperty(value = "评定标准")
+    private String evaluationCriteriaText;
+
+    @ApiModelProperty(value = "检测结论")
+    private String testConclusionText;
+
+    @ApiModelProperty(value = "备注")
+    private String remarks;
+
+    @ApiModelProperty(value = "排序")
+    private Integer sort;
+
+}

+ 1 - 1
blade-service-api/blade-business-api/src/main/java/org/springblade/business/entity/TrialMaterialMobilization.java

@@ -77,7 +77,7 @@ public class TrialMaterialMobilization extends BaseEntity {
      * 生产批号
      */
     @ApiModelProperty(value = "生产批号")
-    private Integer batchNumber;
+    private String batchNumber;
 
     /**
      * 进场日期

+ 1 - 1
blade-service-api/blade-business-api/src/main/java/org/springblade/business/entity/TrialSampleInfo.java

@@ -77,7 +77,7 @@ public class TrialSampleInfo extends BaseEntity {
      * 生产批号
      */
     @ApiModelProperty(value = "生产批号")
-    private Integer batchNumber;
+    private String batchNumber;
 
     /**
      * 拟定部位

+ 13 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/vo/TrialSampleInfoVO3.java

@@ -0,0 +1,13 @@
+package org.springblade.business.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springblade.business.entity.TrialSampleInfo;
+
+@Data
+public class TrialSampleInfoVO3 extends TrialSampleInfo {
+
+    @ApiModelProperty("取样人")
+    private String userName;
+
+}

+ 3 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/vo/TrialClassificationConfigurationTreeVO.java

@@ -1,6 +1,7 @@
 package org.springblade.manager.vo;
 
 
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
@@ -10,9 +11,11 @@ import java.util.List;
 public class TrialClassificationConfigurationTreeVO implements Serializable {
 
     //外委检测
+    @ApiModelProperty("外委检测树")
     private List<TrialClassificationConfigurationTree> leftTree;
 
     //第三方检测
+    @ApiModelProperty("第三方检测树")
     private List<TrialClassificationConfigurationTree> rightTree;
 
 }

+ 4 - 4
blade-service/blade-business/src/main/java/org/springblade/business/controller/TrialContainerController.java

@@ -100,9 +100,9 @@ public class TrialContainerController extends BladeController {
 
     @PostMapping("/data/remove")
     @ApiOperationSupport(order = 8)
-    @ApiOperation(value = "容器数据删除", notes = "传入id、容器对应实体表名containerInitTabName")
-    public R<Object> dataRemove(@RequestParam Long id, @RequestParam String containerInitTabName) {
-        return R.status(iTrialContainerClassificationService.dataRemove(id, containerInitTabName));
+    @ApiOperation(value = "容器数据批量删除", notes = "传入字符串ids 逗号分隔 、容器对应实体表名containerInitTabName")
+    public R<Object> dataRemove(@RequestParam String ids, @RequestParam String containerInitTabName) {
+        return R.status(iTrialContainerClassificationService.dataRemove(ids, containerInitTabName));
     }
 
     @PostMapping("/data/import-excel")
@@ -112,7 +112,7 @@ public class TrialContainerController extends BladeController {
         return R.status(iTrialContainerClassificationService.dataImportExcel(containerInitTabName, file));
     }
 
-    @GetMapping("/data/verification-no")
+    @PostMapping("/data/verification-no")
     @ApiOperationSupport(order = 10)
     @ApiOperation(value = "校验容器数据编号是否唯一", notes = "传入TrialContainerVerificationDTO")
     public R<Object> dataVerificationNo(@RequestBody TrialContainerVerificationDTO dto) {

+ 76 - 0
blade-service/blade-business/src/main/java/org/springblade/business/controller/TrialDetectionController.java

@@ -0,0 +1,76 @@
+package org.springblade.business.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springblade.business.dto.TrialDetectionDataDTO;
+import org.springblade.business.dto.TrialDetectionDataPageDTO;
+import org.springblade.business.entity.TrialDetectionData;
+import org.springblade.business.service.ITrialDetectionDataService;
+import org.springblade.business.service.ITrialSampleInfoService;
+import org.springblade.business.vo.TrialSampleInfoVO3;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+
+@RestController
+@AllArgsConstructor
+@RequestMapping("/detection")
+@Api(value = "试验检测", tags = "试验检测接口")
+public class TrialDetectionController extends BladeController {
+
+    private ITrialDetectionDataService iTrialDetectionDataService;
+    private ITrialSampleInfoService iTrialSampleInfoService;
+
+    @GetMapping("/data/detail")
+    @ApiOperationSupport(order = 1)
+    @ApiOperation(value = "外委或三方数据详情", notes = "传入id")
+    public R<TrialDetectionData> dataDetail(@Valid @RequestParam Long id) {
+        return R.data(iTrialDetectionDataService.dataDetail(id));
+    }
+
+    @PostMapping("/data/submit")
+    @ApiOperationSupport(order = 2)
+    @ApiOperation(value = "外委或三方数据新增或者修改", notes = "传入TrialDetectionData")
+    public R<Object> dataSubmit(@Valid @RequestBody TrialDetectionData obj) {
+        return R.status(iTrialDetectionDataService.dataSubmit(obj));
+    }
+
+    @PostMapping("/data/remove")
+    @ApiOperationSupport(order = 3)
+    @ApiOperation(value = "外委或三方数据批量删除", notes = "传入ids,字符串逗号分隔")
+    public R<Object> dataRemove(@Valid @RequestParam String ids) {
+        return R.status(iTrialDetectionDataService.deleteLogic(Func.toLongList(ids)));
+    }
+
+    @PostMapping("/data/page")
+    @ApiOperationSupport(order = 4)
+    @ApiOperation(value = "外委或三方数据分页条件查询", notes = "传入Query,contractId、nodeId、TrialDetectionDataPageDTO")
+    public R<IPage<TrialDetectionData>> dataPage(@RequestBody Query query, @RequestBody TrialDetectionDataPageDTO dto) {
+        return R.data(iTrialDetectionDataService.dataPage(Condition.getPage(query), dto));
+    }
+
+    @GetMapping("/sample/list-info")
+    @ApiOperationSupport(order = 5)
+    @ApiOperation(value = "查询关联样品信息列表", notes = "传入节点id")
+    public R<List<TrialSampleInfoVO3>> sampleListInfo(Long nodeId) {
+        return R.data(iTrialSampleInfoService.sampleListInfo(nodeId));
+    }
+
+    @PostMapping("/data/copy")
+    @ApiOperationSupport(order = 6)
+    @ApiOperation(value = "外委或三方数据复制", notes = "如果是多条批量复制,就传ids,不传obj;如果是单条复制,就传obj,不传ids")
+    public R<Object> dataCopy(@RequestBody TrialDetectionDataDTO dto) {
+        return R.status(iTrialDetectionDataService.dataCopy(dto));
+    }
+
+
+}

+ 1 - 1
blade-service/blade-business/src/main/java/org/springblade/business/excel/TrialMaterialMobilizationExcel.java

@@ -48,7 +48,7 @@ public class TrialMaterialMobilizationExcel implements Serializable {
     private String calculationUnit;
 
     @ExcelProperty(value = "生产批号")
-    private Integer batchNumber;
+    private String batchNumber;
 
     @ExcelProperty(value = "进场日期")
     @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "GMT+8")

+ 1 - 1
blade-service/blade-business/src/main/java/org/springblade/business/excel/TrialSampleInfoExcel.java

@@ -47,7 +47,7 @@ public class TrialSampleInfoExcel implements Serializable {
     private String calculationUnit;
 
     @ExcelProperty(value = "生产批号")
-    private Integer batchNumber;
+    private String batchNumber;
 
     @ExcelProperty(value = "拟定部位")
     private String proposedPosition;

+ 1 - 1
blade-service/blade-business/src/main/java/org/springblade/business/mapper/TrialContainerClassificationMapper.java

@@ -35,6 +35,6 @@ public interface TrialContainerClassificationMapper extends BaseMapper<TrialCont
 
     int updateData(@Param("tabName") String containerInitTabName, @Param("id") Long id, @Param("time") String fieldCalibrationTime, @Param("values") String values);
 
-    int removeData(@Param("id") Long id, @Param("tabName") String containerInitTabName);
+    int removeData(@Param("ids") List<Long> ids, @Param("tabName") String containerInitTabName);
 
 }

+ 4 - 1
blade-service/blade-business/src/main/java/org/springblade/business/mapper/TrialContainerClassificationMapper.xml

@@ -69,7 +69,10 @@
     </update>
 
     <delete id="removeData">
-        delete #{tabName} where id = #{id}
+        delete from ${tabName} where id in
+        <foreach collection="ids" item="ids" index="ids" open="(" separator="," close=")">
+            ${ids}
+        </foreach>
     </delete>
 
     <select id="selectDataByTabName" resultType="java.lang.Integer">

+ 7 - 0
blade-service/blade-business/src/main/java/org/springblade/business/mapper/TrialDetectionDataMapper.java

@@ -0,0 +1,7 @@
+package org.springblade.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springblade.business.entity.TrialDetectionData;
+
+public interface TrialDetectionDataMapper extends BaseMapper<TrialDetectionData> {
+}

+ 47 - 0
blade-service/blade-business/src/main/java/org/springblade/business/mapper/TrialDetectionDataMapper.xml

@@ -0,0 +1,47 @@
+<?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="org.springblade.business.mapper.TrialDetectionDataMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="treeContractFirstResultMap" type="org.springblade.business.entity.TrialDetectionData">
+        <result column="id" property="id"/>
+        <result column="contract_id" property="contractId"/>
+        <result column="node_id" property="nodeId"/>
+        <result column="entrust_no" property="entrustNo"/>
+        <result column="entrust_company" property="entrustCompany"/>
+        <result column="material_name" property="materialName"/>
+        <result column="specification_number" property="specificationNumber"/>
+        <result column="testing_agency_certificate_no" property="testingAgencyCertificateNo"/>
+        <result column="material_count" property="materialCount"/>
+        <result column="representative_count" property="representativeCount"/>
+        <result column="user_name" property="userName"/>
+        <result column="witness" property="witness"/>
+        <result column="inspection_organization" property="inspectionOrganization"/>
+        <result column="sampling_date" property="samplingDate"/>
+        <result column="sampling_location" property="samplingLocation"/>
+        <result column="sample_delivery_date" property="sampleDeliveryDate"/>
+        <result column="place_of_origin" property="placeOfOrigin"/>
+        <result column="test_date" property="testDate"/>
+        <result column="manufacturer" property="manufacturer"/>
+        <result column="report_date" property="reportDate"/>
+        <result column="batch_number" property="batchNumber"/>
+        <result column="report_no" property="reportNo"/>
+        <result column="project_position" property="projectPosition"/>
+        <result column="delegationOrder_url" property="delegationOrderUrl"/>
+        <result column="recordTable_url" property="recordTableUrl"/>
+        <result column="report_attachment_url" property="reportAttachmentUrl"/>
+        <result column="test_basis_text" property="testBasisText"/>
+        <result column="evaluation_criteria_text" property="evaluationCriteriaText"/>
+        <result column="test_conclusion_text" property="testConclusionText"/>
+        <result column="remarks" property="remarks"/>
+        <result column="sort" property="sort"/>
+        <result column="create_user" property="createUser"/>
+        <result column="create_dept" property="createDept"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_user" property="updateUser"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="status" property="status"/>
+        <result column="is_deleted" property="isDeleted"/>
+    </resultMap>
+
+</mapper>

+ 1 - 1
blade-service/blade-business/src/main/java/org/springblade/business/service/ITrialContainerClassificationService.java

@@ -26,7 +26,7 @@ public interface ITrialContainerClassificationService extends BaseService<TrialC
 
     boolean dataSubmit(TrialContainerDataDTO obj);
 
-    boolean dataRemove(Long id, String containerInitTabName);
+    boolean dataRemove(String ids, String containerInitTabName);
 
     boolean dataImportExcel(String containerInitTabName, MultipartFile file) throws IOException;
 

+ 19 - 0
blade-service/blade-business/src/main/java/org/springblade/business/service/ITrialDetectionDataService.java

@@ -0,0 +1,19 @@
+package org.springblade.business.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.business.dto.TrialDetectionDataDTO;
+import org.springblade.business.dto.TrialDetectionDataPageDTO;
+import org.springblade.business.entity.TrialDetectionData;
+import org.springblade.core.mp.base.BaseService;
+
+public interface ITrialDetectionDataService extends BaseService<TrialDetectionData> {
+
+    TrialDetectionData dataDetail(Long id);
+
+    boolean dataSubmit(TrialDetectionData obj);
+
+    IPage<TrialDetectionData> dataPage(IPage<TrialDetectionData> page, TrialDetectionDataPageDTO dto);
+
+    boolean dataCopy(TrialDetectionDataDTO dto);
+
+}

+ 3 - 0
blade-service/blade-business/src/main/java/org/springblade/business/service/ITrialSampleInfoService.java

@@ -6,6 +6,7 @@ import org.springblade.business.entity.TrialSampleInfo;
 import org.springblade.business.excel.TrialSampleInfoExcel;
 import org.springblade.business.vo.TrialSampleInfoVO;
 import org.springblade.business.vo.TrialSampleInfoVO2;
+import org.springblade.business.vo.TrialSampleInfoVO3;
 import org.springblade.core.mp.base.BaseService;
 
 import javax.servlet.http.HttpServletResponse;
@@ -29,4 +30,6 @@ public interface ITrialSampleInfoService extends BaseService<TrialSampleInfo> {
 
     List<TrialSampleInfoVO2> useDeviceList(Long nodeId);
 
+    List<TrialSampleInfoVO3> sampleListInfo(Long nodeId);
+
 }

+ 4 - 2
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialContainerClassificationServiceImpl.java

@@ -18,6 +18,7 @@ import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.mp.base.BaseServiceImpl;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
 import org.springblade.core.tool.utils.ObjectUtil;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -144,6 +145,7 @@ public class TrialContainerClassificationServiceImpl
     private int alterTabFiled(TrialContainerClassificationDTO obj, int keyName, TrialContainerClassificationFieldBean bean) {
         TrialContainerClassification beanObj = BeanUtil.copyProperties(bean, TrialContainerClassification.class);
         if (beanObj != null) {
+            beanObj.setContractId(obj.getContractId());
             beanObj.setContainerId(obj.getId());
             beanObj.setFieldId(SnowFlakeUtil.getId());
             beanObj.setFieldKey("key_" + keyName++);
@@ -252,8 +254,8 @@ public class TrialContainerClassificationServiceImpl
     }
 
     @Override
-    public boolean dataRemove(Long id, String containerInitTabName) {
-        return baseMapper.removeData(id, containerInitTabName) > 0;
+    public boolean dataRemove(String ids, String containerInitTabName) {
+        return baseMapper.removeData(Func.toLongList(ids), containerInitTabName) > 0;
     }
 
     @Override

+ 81 - 0
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialDetectionDataServiceImpl.java

@@ -0,0 +1,81 @@
+package org.springblade.business.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import lombok.AllArgsConstructor;
+import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang.time.DateUtils;
+import org.springblade.business.dto.TrialDetectionDataDTO;
+import org.springblade.business.dto.TrialDetectionDataPageDTO;
+import org.springblade.business.entity.TrialDetectionData;
+import org.springblade.business.mapper.TrialDetectionDataMapper;
+import org.springblade.business.service.ITrialDetectionDataService;
+import org.springblade.common.utils.SnowFlakeUtil;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.core.tool.utils.ObjectUtil;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+@AllArgsConstructor
+public class TrialDetectionDataServiceImpl extends BaseServiceImpl<TrialDetectionDataMapper, TrialDetectionData> implements ITrialDetectionDataService {
+
+    @Override
+    public TrialDetectionData dataDetail(Long id) {
+        return baseMapper.selectById(id);
+    }
+
+    @Override
+    public boolean dataSubmit(TrialDetectionData obj) {
+        return this.saveOrUpdate(obj);
+    }
+
+    @Override
+    public IPage<TrialDetectionData> dataPage(IPage<TrialDetectionData> page, TrialDetectionDataPageDTO dto) {
+        QueryWrapper<TrialDetectionData> queryWrapper = Condition.getQueryWrapper(dto);
+        if (StringUtils.isNotEmpty(dto.getQueryStatus())) {
+            queryWrapper.lambda().eq(TrialDetectionData::getStatus, dto.getQueryStatus());
+        }
+        if (StringUtils.isNotEmpty(dto.getStartTime()) && StringUtils.isNotEmpty(dto.getEndTime())) {
+            String endTime = dto.getEndTime();
+            endTime = DateUtil.format(DateUtils.addDays(DateUtil.parse(endTime, "yyyy-MM-dd"), 1), "yyyy-MM-dd");
+            queryWrapper.lambda().between(TrialDetectionData::getReportDate, dto.getStartTime(), endTime);
+        }
+        if (StringUtils.isNotEmpty(dto.getQueryName())) {
+            queryWrapper.lambda().like(TrialDetectionData::getUserName, dto.getQueryName());
+        }
+        if (StringUtils.isNotEmpty(dto.getQueryValue())) {
+            queryWrapper.lambda().and(wrapper -> wrapper.like(TrialDetectionData::getEntrustNo, dto.getQueryValue()).or().like(TrialDetectionData::getReportNo, dto.getQueryValue()));
+        }
+        return this.page(page, queryWrapper.lambda().orderBy(true, true, TrialDetectionData::getCreateTime));
+    }
+
+    @Override
+    public boolean dataCopy(TrialDetectionDataDTO dto) {
+        if (StringUtils.isNotEmpty(dto.getIds())) {
+            //批量复制新增保存
+            List<Long> longs = Func.toLongList(dto.getIds());
+            List<TrialDetectionData> trialDetectionData = baseMapper.selectBatchIds(longs);
+            for (TrialDetectionData trialDetectionDatum : trialDetectionData) {
+                trialDetectionDatum.setId(SnowFlakeUtil.getId());
+                trialDetectionDatum.setEntrustNo(String.valueOf(SnowFlakeUtil.getId()));
+                trialDetectionDatum.setReportNo(String.valueOf(SnowFlakeUtil.getId()));
+            }
+            this.saveBatch(trialDetectionData);
+        } else {
+            //单条复制编辑新增保存
+            dto.setId(SnowFlakeUtil.getId());
+            dto.setEntrustNo(String.valueOf(SnowFlakeUtil.getId()));
+            dto.setReportNo(String.valueOf(SnowFlakeUtil.getId()));
+            this.save(dto);
+        }
+        return true;
+    }
+
+}
+
+

+ 1 - 2
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialDeviceInfoServiceImpl.java

@@ -123,8 +123,7 @@ public class TrialDeviceInfoServiceImpl extends BaseServiceImpl<TrialDeviceInfoM
             queryWrapper.lambda().eq(TrialDeviceInfo::getStatus, obj.getStatus());
         }
         if (ObjectUtil.isNotEmpty(obj.getQueryValue())) {
-            queryWrapper.lambda().like(TrialDeviceInfo::getDeviceName, obj.getQueryValue());
-            queryWrapper.lambda().or().like(TrialDeviceInfo::getDeviceNumber, obj.getQueryValue());
+            queryWrapper.lambda().and(wrapper -> wrapper.like(TrialDeviceInfo::getDeviceName, obj.getQueryValue()).or().like(TrialDeviceInfo::getDeviceNumber, obj.getQueryValue()));
         }
         if (StringUtils.isNotEmpty(obj.getStartTime()) && StringUtils.isNotEmpty(obj.getEndTime())) {
             String endTime = obj.getEndTime();

+ 1 - 2
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialDeviceOverhaulServiceImpl.java

@@ -87,8 +87,7 @@ public class TrialDeviceOverhaulServiceImpl extends BaseServiceImpl<TrialDeviceO
             queryWrapper.lambda().eq(TrialDeviceOverhaul::getDeviceClassId, dto.getDeviceClassId());
         }
         if (ObjectUtil.isNotEmpty(dto.getQueryValue())) {
-            queryWrapper.lambda().like(TrialDeviceOverhaul::getDeviceName, dto.getDeviceName());
-            queryWrapper.lambda().or().like(TrialDeviceOverhaul::getDeviceModel, dto.getDeviceModel());
+            queryWrapper.lambda().and(wrapper -> wrapper.like(TrialDeviceOverhaul::getDeviceName, dto.getDeviceName()).or().like(TrialDeviceOverhaul::getDeviceModel, dto.getDeviceModel()));
         }
         if (StringUtils.isNotEmpty(dto.getStartTime()) && StringUtils.isNotEmpty(dto.getEndTime())) {
             String endTime = dto.getEndTime();

+ 1 - 2
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialDeviceUseServiceImpl.java

@@ -86,8 +86,7 @@ public class TrialDeviceUseServiceImpl extends BaseServiceImpl<TrialDeviceUseMap
             queryWrapper.lambda().eq(TrialDeviceUse::getDeviceClassId, dto.getDeviceClassId());
         }
         if (ObjectUtil.isNotEmpty(dto.getQueryValue())) {
-            queryWrapper.lambda().like(TrialDeviceUse::getDeviceName, dto.getDeviceName());
-            queryWrapper.lambda().or().like(TrialDeviceUse::getDeviceModel, dto.getDeviceModel());
+            queryWrapper.lambda().and(wrapper -> wrapper.like(TrialDeviceUse::getDeviceName, dto.getDeviceName()).or().like(TrialDeviceUse::getDeviceModel, dto.getDeviceModel()));
         }
         if (StringUtils.isNotEmpty(dto.getStartTime()) && StringUtils.isNotEmpty(dto.getEndTime())) {
             String endTime = dto.getEndTime();

+ 3 - 3
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialMaterialMobilizationServiceImpl.java

@@ -117,9 +117,9 @@ public class TrialMaterialMobilizationServiceImpl extends BaseServiceImpl<TrialM
             queryWrapper.lambda().between(TrialMaterialMobilization::getCreateTime, obj.getStartTime(), endTime);
         }
         if (ObjectUtil.isNotEmpty(obj.getQueryValue())) {
-            queryWrapper.lambda().like(TrialMaterialMobilization::getMaterialName, obj.getQueryValue());
-            queryWrapper.lambda().or().like(TrialMaterialMobilization::getSpecificationModel, obj.getQueryValue());
-            queryWrapper.lambda().or().like(TrialMaterialMobilization::getMaterialNumber, obj.getQueryValue());
+            queryWrapper.lambda().and(wrapper -> wrapper.like(TrialMaterialMobilization::getMaterialName, obj.getQueryValue())
+                    .or().like(TrialMaterialMobilization::getSpecificationModel, obj.getQueryValue())
+                    .or().like(TrialMaterialMobilization::getMaterialNumber, obj.getQueryValue()));
         }
         IPage<TrialMaterialMobilization> pages = this.page(page, queryWrapper.lambda().orderBy(true, true, TrialMaterialMobilization::getCreateTime));
 

+ 22 - 3
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/TrialSampleInfoServiceImpl.java

@@ -24,6 +24,7 @@ import org.springblade.business.utils.PDFUtil;
 import org.springblade.business.utils.SystemUtils;
 import org.springblade.business.vo.TrialSampleInfoVO;
 import org.springblade.business.vo.TrialSampleInfoVO2;
+import org.springblade.business.vo.TrialSampleInfoVO3;
 import org.springblade.business.wrapper.TrialSampleInfoWarpper;
 import org.springblade.common.utils.CommonUtil;
 import org.springblade.common.utils.SnowFlakeUtil;
@@ -78,6 +79,24 @@ public class TrialSampleInfoServiceImpl extends BaseServiceImpl<TrialSampleInfoM
         return BeanUtil.copyProperties(trialSampleInfos, TrialSampleInfoVO2.class);
     }
 
+    @Override
+    public List<TrialSampleInfoVO3> sampleListInfo(Long nodeId) {
+        List<TrialSampleInfo> trialSampleInfos = baseMapper.selectList(Wrappers.<TrialSampleInfo>query().lambda().eq(TrialSampleInfo::getNodeId, nodeId));
+        List<User> users = iUserClient.selectUserAll();
+        List<TrialSampleInfoVO3> list = new ArrayList<>();
+        for (TrialSampleInfo trialSampleInfo : trialSampleInfos) {
+            for (User user : users) {
+                if (trialSampleInfo.getUserId().equals(user.getId())) {
+                    TrialSampleInfoVO3 trialSampleInfoVO3 = BeanUtil.copyProperties(trialSampleInfo, TrialSampleInfoVO3.class);
+                    assert trialSampleInfoVO3 != null;
+                    trialSampleInfoVO3.setUserName(ObjectUtil.isNotEmpty(user.getName()) ? user.getName() : user.getRealName());
+                    list.add(trialSampleInfoVO3);
+                }
+            }
+        }
+        return list;
+    }
+
     @Override
     public TrialSampleInfo sampleDetail(Long id) {
         return baseMapper.selectById(id);
@@ -95,9 +114,9 @@ public class TrialSampleInfoServiceImpl extends BaseServiceImpl<TrialSampleInfoM
             queryWrapper.lambda().between(TrialSampleInfo::getCreateTime, obj.getStartTime(), endTime);
         }
         if (ObjectUtil.isNotEmpty(obj.getQueryValue())) {
-            queryWrapper.lambda().like(TrialSampleInfo::getMaterialName, obj.getQueryValue());
-            queryWrapper.lambda().or().like(TrialSampleInfo::getSpecificationModel, obj.getQueryValue());
-            queryWrapper.lambda().or().like(TrialSampleInfo::getSpecificationNumber, obj.getQueryValue());
+            queryWrapper.lambda().and(wrapper -> wrapper.like(TrialSampleInfo::getMaterialName, obj.getQueryValue())
+                    .or().like(TrialSampleInfo::getSpecificationModel, obj.getQueryValue())
+                    .or().like(TrialSampleInfo::getSpecificationNumber, obj.getQueryValue()));
         }
         IPage<TrialSampleInfo> pages = this.page(page, queryWrapper.lambda().orderBy(true, true, TrialSampleInfo::getCreateTime));
         IPage<TrialSampleInfoVO> trialMaterialMobilizationVOIPage = TrialSampleInfoWarpper.build().pageVO(pages);

+ 55 - 35
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreePrivateMapper.xml

@@ -315,9 +315,13 @@
         WHERE
         d.is_deleted = 0
         AND d.parent_id = #{parentId}
-        AND d.wbs_type = #{wbsType}
         AND d.project_id = #{projectId}
-        AND d.wbs_id = #{wbsId}
+        <if test="wbsType != null and wbsType != '' and wbsType != -1">
+            AND d.wbs_type = #{wbsType}
+        </if>
+        <if test="wbsId != null and wbsId != '' and wbsType != -1">
+            AND d.wbs_id = #{wbsId}
+        </if>
         AND d.type = 1
         AND status = 1
         ORDER BY d.sort
@@ -534,64 +538,80 @@
     <!-- 项目级 表单类型分类 wbs树 -->
     <select id="tabTypeLazyTree" resultMap="treeNodeResultMapTabType">
         SELECT p_key_id as id,p_key_id as primaryKeyId,title,parent_id,fill_rate as fillRate,
-        (SELECT dict_value from blade_dict where  code='table_type' and dict_key not in(-1,0) and dict_key=table_type )	 as tabType,
+        (SELECT dict_value from blade_dict where code='table_type' and dict_key not in(-1,0) and dict_key=table_type )
+        as tabType,
         (SELECT count(1) FROM m_wbs_form_element WHERE f_id = initTableId and is_deleted=0) AS "elementTotal",
-        (SELECT dict_value from blade_dict where code='owner_type' and dict_key not in(-1,0) and dict_key=table_owner ) as tabOwner,
-               (
-                   SELECT
-                       CASE WHEN count(1) > 0 THEN 1 ELSE 0 END
-                   FROM
-                       (
-                           SELECT  '12345678910' as p_key_id , '表单类型' as node_name, 0 as parent_id
-                           union all
-                           SELECT dict_key as p_key_id ,dict_value as node_name,'12345678910' as parent_id from blade_dict where code='table_type' and dict_key not in(-1,0)
-                           union all
-                           SELECT p_key_id,node_name,table_type as  parent_id from m_wbs_tree_private WHERE project_id=#{projectId} and is_deleted=0 and type=10 and table_type is not NULL GROUP BY node_name
-                       ) b
-                   WHERE
-                       b.parent_id = a.p_key_id
-               ) AS "has_children"
-               from (
-        SELECT  '12345678910' as p_key_id , '表单类型' as title, 0 as parent_id,0 as table_type,0 as fill_rate,0 as table_owner,0 as initTableId,0 as exceIds
-                 union all
-            SELECT dict_key as p_key_id ,dict_value as title,'12345678910' as parent_id,0 as table_type,0 as fill_rate,0 as table_owner,0 as initTableId,0 as exceIds from blade_dict where code='table_type' and dict_key not in(-1,0)
-                 union all
-            SELECT p_key_id,node_name as title,table_type as  parent_id,table_type,fill_rate,table_owner,init_table_id as initTableId,GROUP_CONCAT(excel_id) as excelIds from m_wbs_tree_private WHERE project_id=#{projectId} and is_deleted=0 and type=10 and table_type is not NULL GROUP BY node_name
-           ) a where 1=1
+        (SELECT dict_value from blade_dict where code='owner_type' and dict_key not in(-1,0) and dict_key=table_owner )
+        as tabOwner,
+        (
+        SELECT
+        CASE WHEN count(1) > 0 THEN 1 ELSE 0 END
+        FROM
+        (
+        SELECT '12345678910' as p_key_id , '表单类型' as node_name, 0 as parent_id
+        union all
+        SELECT dict_key as p_key_id ,dict_value as node_name,'12345678910' as parent_id from blade_dict where
+        code='table_type' and dict_key not in(-1,0)
+        union all
+        SELECT p_key_id,node_name,table_type as parent_id from m_wbs_tree_private WHERE project_id=#{projectId} and
+        is_deleted=0 and type=10 and table_type is not NULL GROUP BY node_name
+        ) b
+        WHERE
+        b.parent_id = a.p_key_id
+        ) AS "has_children"
+        from (
+        SELECT '12345678910' as p_key_id , '表单类型' as title, 0 as parent_id,0 as table_type,0 as fill_rate,0 as
+        table_owner,0 as initTableId,0 as exceIds
+        union all
+        SELECT dict_key as p_key_id ,dict_value as title,'12345678910' as parent_id,0 as table_type,0 as fill_rate,0 as
+        table_owner,0 as initTableId,0 as exceIds from blade_dict where code='table_type' and dict_key not in(-1,0)
+        union all
+        SELECT p_key_id,node_name as title,table_type as parent_id,table_type,fill_rate,table_owner,init_table_id as
+        initTableId,GROUP_CONCAT(excel_id) as excelIds from m_wbs_tree_private WHERE project_id=#{projectId} and
+        is_deleted=0 and type=10 and table_type is not NULL GROUP BY node_name
+        ) a where 1=1
         <if test="parentId != null and parentId != ''">
-           and a.parent_id = #{parentId}
+            and a.parent_id = #{parentId}
         </if>
         <if test="titleName != null and titleName != ''">
-           and a.title like concat('%',#{titleName},'%') and LENGTH(a.p_key_id)>11
+            and a.title like concat('%',#{titleName},'%') and LENGTH(a.p_key_id)>11
         </if>
     </select>
 
     <!-- 项目级 表单类型分类 wbs树 -->
     <select id="tabTypeLazyTreeAll" resultMap="treeNodeResultMapTabType">
         SELECT p_key_id as id,p_key_id as primaryKeyId,title,parent_id,fill_rate as fillRate,
-        (SELECT dict_value from blade_dict where  code='table_type' and dict_key not in(-1,0) and dict_key=table_type )	 as tabType,
+        (SELECT dict_value from blade_dict where code='table_type' and dict_key not in(-1,0) and dict_key=table_type )
+        as tabType,
         (SELECT count(1) FROM m_wbs_form_element WHERE f_id = initTableId and is_deleted=0) AS "elementTotal",
-        (SELECT dict_value from blade_dict where code='owner_type' and dict_key not in(-1,0) and dict_key=table_owner ) as tabOwner,
+        (SELECT dict_value from blade_dict where code='owner_type' and dict_key not in(-1,0) and dict_key=table_owner )
+        as tabOwner,
         (
         SELECT
         CASE WHEN count(1) > 0 THEN 1 ELSE 0 END
         FROM
         (
-        SELECT  '12345678910' as p_key_id , '表单类型' as node_name, 0 as parent_id
+        SELECT '12345678910' as p_key_id , '表单类型' as node_name, 0 as parent_id
         union all
-        SELECT dict_key as p_key_id ,dict_value as node_name,'12345678910' as parent_id from blade_dict where code='table_type' and dict_key not in(-1,0)
+        SELECT dict_key as p_key_id ,dict_value as node_name,'12345678910' as parent_id from blade_dict where
+        code='table_type' and dict_key not in(-1,0)
         union all
-        SELECT id as p_key_id,node_name,table_type as  parent_id from m_wbs_tree_private WHERE  is_deleted=0 and type=2 and table_type is not NULL GROUP BY node_name
+        SELECT id as p_key_id,node_name,table_type as parent_id from m_wbs_tree_private WHERE is_deleted=0 and type=2
+        and table_type is not NULL GROUP BY node_name
         ) b
         WHERE
         b.parent_id = a.p_key_id
         ) AS "has_children"
         from (
-        SELECT  '12345678910' as p_key_id , '表单类型' as title, 0 as parent_id,0 as table_type,0 as fill_rate,0 as table_owner,0 as initTableId,0 as exceIds
+        SELECT '12345678910' as p_key_id , '表单类型' as title, 0 as parent_id,0 as table_type,0 as fill_rate,0 as
+        table_owner,0 as initTableId,0 as exceIds
         union all
-        SELECT dict_key as p_key_id ,dict_value as title,'12345678910' as parent_id,0 as table_type,0 as fill_rate,0 as table_owner,0 as initTableId,0 as exceIds from blade_dict where code='table_type' and dict_key not in(-1,0)
+        SELECT dict_key as p_key_id ,dict_value as title,'12345678910' as parent_id,0 as table_type,0 as fill_rate,0 as
+        table_owner,0 as initTableId,0 as exceIds from blade_dict where code='table_type' and dict_key not in(-1,0)
         union all
-        SELECT id as p_key_id,node_name as title,table_type as  parent_id,table_type,fill_rate,table_owner,init_table_id as initTableId,GROUP_CONCAT(excel_id) as excelIds from m_wbs_tree_private WHERE is_deleted=0 and type=2 and  init_table_id is not null and table_type is not NULL GROUP BY node_name
+        SELECT id as p_key_id,node_name as title,table_type as parent_id,table_type,fill_rate,table_owner,init_table_id
+        as initTableId,GROUP_CONCAT(excel_id) as excelIds from m_wbs_tree_private WHERE is_deleted=0 and type=2 and
+        init_table_id is not null and table_type is not NULL GROUP BY node_name
         ) a where 1=1
         <if test="parentId != null and parentId != ''">
             and a.parent_id = #{parentId}

+ 22 - 22
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreePrivateServiceImpl.java

@@ -164,18 +164,18 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
 
     @Override
     public IPage<TreeNodeVOByTabType> tabTypeLazyTree(IPage<TreeNodeVOByTabType> page, Long parentId, String projectId, String titleName) {
-        if((parentId+"").equals("12345678910")){
+        if ((parentId + "").equals("12345678910")) {
             page.setSize(100);
         }
-        return page.setRecords(baseMapper.tabTypeLazyTree(page,parentId, projectId,titleName));
+        return page.setRecords(baseMapper.tabTypeLazyTree(page, parentId, projectId, titleName));
     }
 
     @Override
     public IPage<TreeNodeVOByTabType> tabTypeLazyTreeAll(IPage<TreeNodeVOByTabType> page, Long parentId, String titleName) {
-        if((parentId+"").equals("12345678910")){
+        if ((parentId + "").equals("12345678910")) {
             page.setSize(100);
         }
-        return page.setRecords(baseMapper.tabTypeLazyTreeAll(page,parentId,titleName));
+        return page.setRecords(baseMapper.tabTypeLazyTreeAll(page, parentId, titleName));
     }
 
     @Override
@@ -883,15 +883,15 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
     }
 
     @Override
-    public R addWbsTreeContractInfo(String nodeId, String primaryKeyIds,long contractId) {
-        if(com.alibaba.cloud.commons.lang.StringUtils.isEmpty(nodeId)){
-            return  R.fail("nodeId不能为空");
+    public R addWbsTreeContractInfo(String nodeId, String primaryKeyIds, long contractId) {
+        if (com.alibaba.cloud.commons.lang.StringUtils.isEmpty(nodeId)) {
+            return R.fail("nodeId不能为空");
         }
-        if(com.alibaba.cloud.commons.lang.StringUtils.isEmpty(primaryKeyIds)){
-            return   R.fail("primaryKeyIds不能为空");
+        if (com.alibaba.cloud.commons.lang.StringUtils.isEmpty(primaryKeyIds)) {
+            return R.fail("primaryKeyIds不能为空");
         }
         List<Long> longs = Func.toLongList(primaryKeyIds);
-        for(Long id:longs){
+        for (Long id : longs) {
             WbsTreePrivate wbsTreePrivate = wbsTreePrivateMapper.getByPKeyId(id);
             Long pKeyId1 = SnowFlakeUtil.getId();
             wbsTreeContractMapper.insertByCondition(wbsTreePrivate, contractId, pKeyId1, Integer.valueOf(wbsTreePrivate.getWbsType()));
@@ -900,16 +900,16 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
     }
 
     @Override
-    public R addWbsTreeProjectInfo (String primaryKeyIds,String projectId) {
-        if(com.alibaba.cloud.commons.lang.StringUtils.isEmpty(projectId)){
-            return  R.fail("projectId不能为空");
+    public R addWbsTreeProjectInfo(String primaryKeyIds, String projectId) {
+        if (com.alibaba.cloud.commons.lang.StringUtils.isEmpty(projectId)) {
+            return R.fail("projectId不能为空");
         }
-        if(com.alibaba.cloud.commons.lang.StringUtils.isEmpty(primaryKeyIds)){
-            return   R.fail("primaryKeyIds不能为空");
+        if (com.alibaba.cloud.commons.lang.StringUtils.isEmpty(primaryKeyIds)) {
+            return R.fail("primaryKeyIds不能为空");
         }
 
         List<Long> longs = Func.toLongList(primaryKeyIds);
-        for(Long id:longs){
+        for (Long id : longs) {
             WbsTree wbsTree = wbsTreeMapper.selectById(id);
             WbsTreePrivate wbsPrivate = BeanUtil.copyProperties(wbsTree, WbsTreePrivate.class);
             Long pKeyId1 = SnowFlakeUtil.getId();
@@ -924,15 +924,15 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
 
     @Override
     public R delTabProjectById(String primaryKeyIds, String projectId) {
-        if(com.alibaba.cloud.commons.lang.StringUtils.isEmpty(projectId)){
-            return  R.fail("projectId不能为空");
+        if (com.alibaba.cloud.commons.lang.StringUtils.isEmpty(projectId)) {
+            return R.fail("projectId不能为空");
         }
-        if(com.alibaba.cloud.commons.lang.StringUtils.isEmpty(primaryKeyIds)){
-            return   R.fail("primaryKeyIds不能为空");
+        if (com.alibaba.cloud.commons.lang.StringUtils.isEmpty(primaryKeyIds)) {
+            return R.fail("primaryKeyIds不能为空");
         }
         List<String> longs = Func.toStrList(primaryKeyIds);
-        for(String id:longs){
-            wbsTreePrivateMapper.delTabProjectById(id,projectId);
+        for (String id : longs) {
+            wbsTreePrivateMapper.delTabProjectById(id, projectId);
         }
         return R.success("添加成功");
     }