ソースを参照

Merge remote-tracking branch 'origin/master'

公用账号 2 年 前
コミット
95f9865688
12 ファイル変更587 行追加4 行削除
  1. 8 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/mapper/CwProjectReportMapper.java
  2. 10 1
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/mapper/xml/CwProjectReportMapper.xml
  3. 3 3
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/service/CwProjectReportService.java
  4. 83 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/controller/ContractController.java
  5. 66 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/domain/Contract.java
  6. 33 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/domain/ContractUser.java
  7. 21 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/mapper/ContractMapper.java
  8. 17 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/mapper/ContractUserMapper.java
  9. 32 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/mapper/xml/ContractMapper.xml
  10. 10 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/mapper/xml/ContractUserMapper.xml
  11. 224 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/service/ContractService.java
  12. 80 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/service/dto/ContractInfoDto.java

+ 8 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/mapper/CwProjectReportMapper.java

@@ -129,6 +129,14 @@ public interface CwProjectReportMapper extends BaseMapper<CwProjectReport> {
      */
     List<ReviewUser> getReviewByS(String name);
 
+    /**
+     * 根据报部门id和岗位名称查询用户信息
+     * @param postName
+     * @param officeId
+     * @return
+     */
+    List<ReviewUser> getReviewByPost(@Param("postName") String postName);
+
     List<WorkAttachmentDto> findDtos(@Param("id") String id);
 
     CwProjectReport getByNewLineId(String reportId);

+ 10 - 1
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/mapper/xml/CwProjectReportMapper.xml

@@ -314,7 +314,9 @@
         where a.project_id = #{projectId} and a.del_flag = '0'
     </select>
     <select id="findFileList" resultType="com.jeeplus.test.oss.domain.WorkAttachment">
-        SELECT * FROM work_attachment WHERE del_flag = 0 AND attachment_id = #{id}
+        SELECT * FROM work_attachment a
+        left join cw_project_report_file b on a.id = b.report_file_id
+        WHERE a.del_flag = 0 AND a.attachment_id = #{id} and b.file_affiliation = 0
     </select>
     <select id="findIsExit" resultType="java.lang.Integer">
         SELECT
@@ -451,6 +453,13 @@
         from cw_project_report_review_user
         where parent_id = (select id from cw_project_report_review_user where name = #{name}) and del_flag = 0 ORDER BY name
     </select>
+    <select id="getReviewByPost" resultType="com.jeeplus.test.cw.projectReport.domain.ReviewUser">
+        select a.name,a.id as "sysUserId"
+        from sys_user a
+        left join sys_user_post b on a.id = b.user_id
+        left join sys_post c on b.post_id = c.id
+        where c.name = #{postName} and a.del_flag = 0 ORDER BY a.name
+    </select>
     <select id="findDtos" resultType="com.jeeplus.test.workContract.service.dto.WorkAttachmentDto">
         SELECT
 			id,

+ 3 - 3
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectReport/service/CwProjectReportService.java

@@ -659,11 +659,11 @@ public class CwProjectReportService extends ServiceImpl<CwProjectReportMapper, C
             //如果是苏州分部,这里写死
             String officeId = reportMapper.getOfficeId("苏州分部");
             if (reportData.getOfficeId().equals(officeId)){
-                stringList = reportMapper.getReviewByS("苏州分部");
+                stringList = reportMapper.getReviewByPost("质控-苏州分布");
             }else if (reportData.getReportType().equals("1")) {
-                stringList = reportMapper.getReviewByS("苏兴会基字");
+                stringList = reportMapper.getReviewByPost("质控-财务-苏兴会基字");
             } else {
-                stringList = reportMapper.getReviewByS("非苏兴会基字");
+                stringList = reportMapper.getReviewByPost("质控-财务-非苏兴会基字");
             }
             reportData.setReviewBys(stringList);
         } else {

+ 83 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/controller/ContractController.java

@@ -0,0 +1,83 @@
+package com.jeeplus.test.materialManagement.contract.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.jeeplus.common.utils.ResponseUtil;
+import com.jeeplus.test.materialManagement.contract.service.ContractService;
+import com.jeeplus.test.materialManagement.contract.service.dto.ContractInfoDto;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+
+/**
+ * @author: 王强
+ * @create: 2023-01-13 13:55
+ **/
+@RestController
+@Api(tags ="物资管理-合同")
+@RequestMapping(value = "/material/contract")
+public class ContractController {
+
+    @Resource
+    private ContractService contractService;
+
+    /**
+     * 新增/修改
+     * @param dto
+     * @return
+     */
+    @ApiOperation(value = "新增、修改")
+    @PostMapping("/save")
+    public ResponseEntity<String> save(@RequestBody ContractInfoDto dto) throws Exception{
+        String s = contractService.save(dto);
+        return ResponseUtil.newInstance().add("businessTable", "material_management_contract").add("businessId", s).ok ("操作成功");
+    }
+
+    /**
+     * 列表查询
+     * @param dto
+     * @return
+     */
+    @ApiOperation(value = "列表查询")
+    @GetMapping("/list")
+    public ResponseEntity<IPage<ContractInfoDto>> list(Page<ContractInfoDto> page, ContractInfoDto dto) throws Exception{
+        IPage<ContractInfoDto> iPage = contractService.list(page, dto);
+        return ResponseEntity.ok(iPage);
+    }
+
+    /**
+     * 查询
+     * @param id
+     * @return
+     */
+    @ApiOperation(value = "查询")
+    @GetMapping("/findById")
+    public ResponseEntity<ContractInfoDto> findById(@RequestParam String id) throws Exception{
+        ContractInfoDto dto = contractService.findById(id);
+        return ResponseEntity.ok(dto);
+    }
+
+    /**
+     * 根据id修改状态status
+     */
+    @ApiOperation(value = "根据id修改状态status")
+    @PostMapping(value = "updateStatusById")
+    public void updateStatusById(@RequestBody ContractInfoDto dto) {
+        contractService.updateStatusById(dto);
+    }
+
+    /**
+     * 删除
+     * @param id
+     * @return
+     */
+    @ApiOperation(value = "删除")
+    @GetMapping("/remove")
+    public ResponseEntity<String> remove(@RequestParam String id){
+        String s = contractService.remove(id);
+        return ResponseEntity.ok(s);
+    }
+}

+ 66 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/domain/Contract.java

@@ -0,0 +1,66 @@
+package com.jeeplus.test.materialManagement.contract.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.jeeplus.core.domain.BaseEntity;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 物资管理-合同表
+ * @author: 王强
+ * @create: 2023-01-13 13:56
+ **/
+@Data
+@TableName("material_management_contract")
+public class Contract extends BaseEntity {
+
+    //备注1
+    private String remarks1;
+    //备注2
+    private String remarks2;
+
+    private String procInsId;
+
+    /**
+     * 状态
+     */
+    private String status;
+
+    private String processDefinitionId;
+
+    //客户名称
+    private String name;
+
+    //是否有统一社会信用代码
+    private String isUscCode;
+
+    //统一社会信用代码
+    private String uscCode;
+
+    //注册地址
+    private String companyAddress;
+
+    //详细地址
+    private String address;
+
+    //公司电话
+    private String mobile;
+
+    //合同名称
+    private String contractName;
+
+    //签订日期
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date signingDate;
+
+    //合同生效日期
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date effectiveDate;
+
+    //合同终止日期
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date endTime;
+
+}

+ 33 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/domain/ContractUser.java

@@ -0,0 +1,33 @@
+package com.jeeplus.test.materialManagement.contract.domain;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jeeplus.core.domain.BaseEntity;
+import lombok.Data;
+
+/**
+ * 物资管理-合同-客户联系人表
+ * @author: 王强
+ * @create: 2023-01-13 13:57
+ **/
+@Data
+@TableName("material_management_contract_user")
+public class ContractUser extends BaseEntity {
+
+    //备注
+    private String remarks;
+
+    //姓名
+    private String name;
+
+    //职位
+    private String position;
+
+    //联系方式1
+    private String contactFirst;
+
+    //联系方式2
+    private String contactSecond;
+
+    //物资管理-合同表id
+    private String contractId;
+}

+ 21 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/mapper/ContractMapper.java

@@ -0,0 +1,21 @@
+package com.jeeplus.test.materialManagement.contract.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.jeeplus.test.materialManagement.contract.domain.Contract;
+import com.jeeplus.test.materialManagement.contract.service.dto.ContractInfoDto;
+import org.apache.ibatis.annotations.Param;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+
+/**
+ * @author: 王强
+ * @create: 2023-01-13 14:29
+ **/
+public interface ContractMapper extends BaseMapper<Contract> {
+
+    void updateStatusById(@Param("id") String id, @Param("type") String type);
+
+    IPage<ContractInfoDto> findList(Page<ContractInfoDto> page,@Param(Constants.WRAPPER) QueryWrapper<ContractInfoDto> queryWrapper);
+}

+ 17 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/mapper/ContractUserMapper.java

@@ -0,0 +1,17 @@
+package com.jeeplus.test.materialManagement.contract.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jeeplus.test.materialManagement.contract.domain.ContractUser;
+
+import java.util.List;
+
+/**
+ * @author: 王强
+ * @create: 2023-01-13 14:31
+ **/
+public interface ContractUserMapper extends BaseMapper<ContractUser> {
+    //根据合同id查出所有的用户id
+    List<String> getByContractId(String id);
+
+    List<ContractUser> getByContId(String id);
+}

+ 32 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/mapper/xml/ContractMapper.xml

@@ -0,0 +1,32 @@
+<?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.jeeplus.test.materialManagement.contract.mapper.ContractMapper">
+	<update id="updateStatusById">
+		UPDATE material_management_contract SET status = #{type}
+		WHERE id = #{id}
+	</update>
+	<select id="findList"
+            resultType="com.jeeplus.test.materialManagement.contract.service.dto.ContractInfoDto">
+        SELECT
+        	DISTINCT
+			a.id,
+			a.create_by,
+			a.create_date,
+			a.proc_ins_id,
+			a.status,
+			a.process_definition_id,
+			a.usc_code,
+			a.address,
+			a.company_address,
+			a.mobile,
+			a.contract_name,
+			a.signing_date,
+			a.effective_date,
+			a.end_time,
+			a.name
+		FROM
+			material_management_contract a
+			${ew.customSqlSegment}
+		ORDER BY a.update_date DESC
+    </select>
+</mapper>

+ 10 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/mapper/xml/ContractUserMapper.xml

@@ -0,0 +1,10 @@
+<?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.jeeplus.test.materialManagement.contract.mapper.ContractUserMapper">
+    <select id="getByContractId" resultType="java.lang.String">
+        select id from material_management_contract_user where contract_id = #{id} and del_flag = 0
+    </select>
+    <select id="getByContId" resultType="com.jeeplus.test.materialManagement.contract.domain.ContractUser">
+        SELECT * FROM material_management_contract_user where contract_id = #{id} and del_flag = 0 order by create_date desc
+    </select>
+</mapper>

+ 224 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/service/ContractService.java

@@ -0,0 +1,224 @@
+package com.jeeplus.test.materialManagement.contract.service;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.jeeplus.core.query.QueryWrapperGenerator;
+import com.jeeplus.sys.service.dto.UserDTO;
+import com.jeeplus.sys.utils.StringUtils;
+import com.jeeplus.sys.utils.UserUtils;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.jeeplus.test.cw.contractRegistration.service.ContractInfoService;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.jeeplus.test.materialManagement.contract.domain.Contract;
+import com.jeeplus.test.materialManagement.contract.domain.ContractUser;
+import com.jeeplus.test.materialManagement.contract.mapper.ContractMapper;
+import com.jeeplus.test.materialManagement.contract.mapper.ContractUserMapper;
+import com.jeeplus.test.materialManagement.contract.service.dto.ContractInfoDto;
+import com.jeeplus.test.materialManagement.purchase.mapper.MaterialDetailedMapper;
+import com.jeeplus.test.oss.domain.WorkAttachment;
+import com.jeeplus.test.oss.mapper.OssServiceMapper;
+import com.jeeplus.test.program.configuration.projectList.service.dto.ContractDto;
+import com.jeeplus.test.workContract.service.dto.WorkAttachmentDto;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+
+import org.springframework.beans.BeanUtils;
+
+import javax.annotation.Resource;
+import java.util.Date;
+import java.util.List;
+import java.util.UUID;
+
+/**
+ * @author: 王强
+ * @create: 2023-01-13 14:11
+ **/
+@Service
+@Transactional
+public class ContractService {
+
+    @Resource
+    private ContractMapper contractMapper;
+
+    @Resource
+    private ContractUserMapper contractUserMapper;
+
+    @Resource
+    private MaterialDetailedMapper detailedMapper;
+
+    @Resource
+    private OssServiceMapper ossServiceMapper;
+
+
+    @Resource
+    private ContractInfoService infoService;
+
+    public String remove(String id) {
+        // 删除基础信息表
+        contractMapper.deleteById(id);
+        // 删除详情列表 及对应附件信息
+        List<ContractUser> detailedList = contractUserMapper.getByContId(id);
+        if (null != detailedList){
+            detailedList.forEach(de->{
+                detailedMapper.deleteById(de.getId());
+            });
+        }
+        // 删除附件信息
+        LambdaQueryWrapper<WorkAttachment> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(WorkAttachment::getAttachmentId, id);
+        ossServiceMapper.delete(wrapper);
+        return "操作成功";
+    }
+
+    public void updateStatusById(ContractInfoDto dto) {
+        contractMapper.updateStatusById(dto.getId(), dto.getStatus());
+    }
+
+    public ContractInfoDto findById(String id) {
+        ContractInfoDto dto = new ContractInfoDto();
+        // 查询基础信息表
+        Contract info = contractMapper.selectById(id);
+        if (ObjectUtils.isNotEmpty(info)) {
+            BeanUtils.copyProperties(info, dto);
+            //将采购详情数据查出
+            List<ContractUser> detailedList = contractUserMapper.getByContId(id);
+            dto.setCwProjectClientContactDTOList(detailedList);
+            //附件信息
+            List<WorkAttachmentDto> files = detailedMapper.getByAttachmentId(info.getId());
+            if (CollectionUtils.isNotEmpty(files)) {
+                for (WorkAttachmentDto i : files) {
+                    i.setCreateBy(UserUtils.get(i.getBy()));
+                }
+            }
+            dto.setFiles(files);
+        }
+        return dto;
+    }
+
+    /**
+     * 列表查询
+     */
+    public IPage<ContractInfoDto> list(Page<ContractInfoDto> page , ContractInfoDto dto) throws Exception{
+        QueryWrapper<ContractInfoDto> queryWrapper = QueryWrapperGenerator.buildQueryCondition(dto, ContractInfoDto.class);
+
+        queryWrapper.eq("a.del_flag", "0");
+
+        if (StringUtils.isNotEmpty(dto.getName())) {
+            queryWrapper.like("a.name", dto.getName());
+        }
+        if (StringUtils.isNotEmpty(dto.getContractName())) {
+            queryWrapper.like("a.contract_name", dto.getContractName());
+        }
+        if (StringUtils.isNotEmpty(dto.getStatus())) {
+            queryWrapper.like("a.status", dto.getStatus());
+        }
+        String[] effectiveDates = dto.getEffectiveDates();
+        if (effectiveDates != null) {
+
+            queryWrapper.between("a.effective_date", effectiveDates[0], effectiveDates[1]);
+        }
+
+        return contractMapper.findList(page, queryWrapper);
+    }
+
+    public String save(ContractInfoDto dto) throws Exception{
+        // 获取当前登录人信息
+        UserDTO userDTO = UserUtils.getCurrentUserDTO();
+        if (StringUtils.isNotEmpty(dto.getId()) && !dto.getId().equals("false")) {
+            return update(dto, userDTO);
+        } else {
+            return add(dto, userDTO);
+        }
+    }
+
+    public String update(ContractInfoDto dto, UserDTO userDTO) {
+        // 修改基础信息
+        Contract info = new Contract();
+        BeanUtils.copyProperties(dto, info);
+        info.setUpdateBy(userDTO.getId());
+        info.setUpdateDate(new Date());
+        contractMapper.updateById(info);
+        //当一开始保存的联系人数据在修改的时候被删除时
+        List<String> idList = contractUserMapper.getByContractId(info.getId());
+        for (ContractUser detailInfo : dto.getCwProjectClientContactDTOList()) {
+            //删除多余的领用详情
+            //根据基础表id获取所有的详情表id
+            if (null != idList) {
+                if (idList.contains(detailInfo.getId())){
+                    idList.remove(detailInfo.getId());
+                }
+            }
+        }
+        if (null != idList & idList.size()>0) {
+            idList.forEach(id->{
+                contractUserMapper.deleteById(id);
+            });
+        }
+        // 修改客户联系人信息
+        if (CollectionUtils.isNotEmpty(dto.getCwProjectClientContactDTOList())) {
+            for (ContractUser user : dto.getCwProjectClientContactDTOList()) {
+                //根据id去客户联系人表中查是否有对应数据  有则修改,无则添加
+                ContractUser contractUser = contractUserMapper.selectById(user.getId());
+                if (null == contractUser) {
+                    // 生成id
+                    String detailId = UUID.randomUUID().toString().replace("-", "");
+                    user.setId(detailId);
+                    user.setCreateBy(userDTO.getId());
+                    user.setCreateDate(new Date());
+                    user.setUpdateBy(userDTO.getId());
+                    user.setUpdateDate(new Date());
+                    user.setDelFlag(0);
+                    user.setContractId(info.getId());
+                    contractUserMapper.insert(user);
+                } else {
+                    user.setUpdateBy(userDTO.getId());
+                    user.setUpdateDate(new Date());
+                    contractUserMapper.updateById(user);
+                }
+            }
+        }
+        // 修改附件信息列表
+        if (CollectionUtils.isNotEmpty(dto.getFiles())) {
+            infoService.updateFiles(dto.getFiles(), userDTO, dto.getId());
+        }
+        return dto.getId();
+    }
+
+    public String add(ContractInfoDto dto, UserDTO userDTO) throws Exception{
+        // 生成id
+        String id = UUID.randomUUID().toString().replace("-", "");
+        // 保存基础信息表信息
+        Contract info = new Contract();
+        BeanUtils.copyProperties(dto, info);
+        info.setId(id);
+        info.setCreateBy(userDTO.getId());
+        info.setCreateDate(new Date());
+        info.setUpdateBy(userDTO.getId());
+        info.setUpdateDate(new Date());
+        info.setDelFlag(0);
+        contractMapper.insert(info);
+        //保存客户联系人信息
+        if (CollectionUtils.isNotEmpty(dto.getCwProjectClientContactDTOList())) {
+            for (ContractUser user : dto.getCwProjectClientContactDTOList()) {
+                // 生成id
+                String detailId = UUID.randomUUID().toString().replace("-", "");
+                user.setId(detailId);
+                user.setCreateBy(userDTO.getId());
+                user.setCreateDate(new Date());
+                user.setUpdateBy(userDTO.getId());
+                user.setUpdateDate(new Date());
+                user.setDelFlag(0);
+                user.setContractId(info.getId());
+                contractUserMapper.insert(user);
+            }
+        }
+        // 保存附件列表信息
+        if (CollectionUtils.isNotEmpty(dto.getFiles())) {
+            infoService.saveFiles(dto.getFiles(), userDTO, id);
+        }
+        return id;
+    }
+}

+ 80 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/materialManagement/contract/service/dto/ContractInfoDto.java

@@ -0,0 +1,80 @@
+package com.jeeplus.test.materialManagement.contract.service.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.jeeplus.test.materialManagement.contract.domain.ContractUser;
+import com.jeeplus.test.workContract.service.dto.WorkAttachmentDto;
+import lombok.Data;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @author: 王强
+ * @create: 2023-01-13 14:07
+ **/
+@Data
+public class ContractInfoDto {
+
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private String[] effectiveDates;
+
+    private String createBy;
+
+    /**
+     * 基础表主键值
+     */
+    private String id;
+
+    //备注1
+    private String remarks1;
+    //备注2
+    private String remarks2;
+
+    private String procInsId;
+
+    /**
+     * 状态
+     */
+    private String status;
+
+    private String processDefinitionId;
+
+    //客户名称
+    private String name;
+
+    //是否有统一社会信用代码
+    private String isUscCode;
+
+    //统一社会信用代码
+    private String uscCode;
+
+    //注册地址
+    private String companyAddress;
+
+    //详细地址
+    private String address;
+
+    //公司电话
+    private String mobile;
+
+    //合同名称
+    private String contractName;
+
+    //签订日期
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date signingDate;
+
+    //合同生效日期
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date effectiveDate;
+
+    //合同终止日期
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date endTime;
+
+
+    private List<WorkAttachmentDto> files;
+
+    //客户联系人信息
+    List<ContractUser> cwProjectClientContactDTOList;
+}