Browse Source

项目添加客户联系人

lizhenhao 2 years ago
parent
commit
f9ae817cc1
13 changed files with 401 additions and 6 deletions
  1. 76 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/domain/CwProjectClientContact.java
  2. 17 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/mapper/CwProjectClientContactMapper.java
  3. 46 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/mapper/xml/CwProjectClientContactMapper.xml
  4. 27 1
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/mapper/xml/CwProjectRecordsMapper.xml
  5. 113 1
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/service/CwProjectRecordsService.java
  6. 73 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/service/dto/CwProjectClientContactDTO.java
  7. 6 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/service/dto/CwProjectRecordsDTO.java
  8. 18 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/service/mapstruct/CwProjectClientContactWrapper.java
  9. 5 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/workClientInfo/domain/CwWorkClientContact.java
  10. 2 1
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/workClientInfo/mapper/xml/CwWorkClientBaseMapper.xml
  11. 3 1
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/workClientInfo/mapper/xml/CwWorkClientContactMapper.xml
  12. 10 2
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/workClientInfo/service/CwWorkClientService.java
  13. 5 0
      jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/workClientInfo/service/dto/CwWorkClientContactDTO.java

+ 76 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/domain/CwProjectClientContact.java

@@ -0,0 +1,76 @@
+package com.jeeplus.test.cw.projectRecords.domain;
+
+import java.io.Serializable;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jeeplus.core.domain.BaseEntity;
+import lombok.Data;
+
+/**
+ * 项目管理-项目登记-客户联系人页签
+ * @TableName cw_project_client_contact
+ */
+@TableName(value ="cw_project_client_contact")
+@Data
+public class CwProjectClientContact extends BaseEntity {
+
+    /**
+     * 备注
+     */
+    private String remarks;
+
+    /**
+     * 项目id
+     */
+    private String projectId;
+
+    /**
+     * 客户id
+     */
+    private String clientId;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 性别
+     */
+    private String sex;
+
+    /**
+     * 部门
+     */
+    private String officeId;
+
+    /**
+     * 职务
+     */
+    private String position;
+
+    /**
+     * 联系方式1
+     */
+    private String contactFirst;
+
+    /**
+     * 联系方式2
+     */
+    private String contactSecond;
+
+    /**
+     * 传真
+     */
+    private String fax;
+
+    /**
+     * 邮箱
+     */
+    private String email;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 17 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/mapper/CwProjectClientContactMapper.java

@@ -0,0 +1,17 @@
+package com.jeeplus.test.cw.projectRecords.mapper;
+
+import com.jeeplus.test.cw.projectRecords.domain.CwProjectClientContact;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @Entity com.jeeplus.test.cw.projectRecords.domain.CwProjectClientContact
+ */
+@Mapper
+public interface CwProjectClientContactMapper extends BaseMapper<CwProjectClientContact> {
+
+}
+
+
+
+

+ 46 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/mapper/xml/CwProjectClientContactMapper.xml

@@ -0,0 +1,46 @@
+<?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.cw.projectRecords.mapper.CwProjectClientContactMapper">
+
+    <resultMap id="BaseResultMap" type="com.jeeplus.test.cw.projectRecords.service.dto.CwProjectClientContactDTO">
+            <id property="id" column="id" jdbcType="VARCHAR"/>
+            <result property="createBy.id" column="create_by" jdbcType="VARCHAR"/>
+            <result property="createDate" column="create_date" jdbcType="TIMESTAMP"/>
+            <result property="updateBy.id" column="update_by" jdbcType="VARCHAR"/>
+            <result property="updateDate" column="update_date" jdbcType="TIMESTAMP"/>
+            <result property="delFlag" column="del_flag" jdbcType="INTEGER"/>
+            <result property="remarks" column="remarks" jdbcType="VARCHAR"/>
+            <result property="projectId" column="project_id" jdbcType="VARCHAR"/>
+            <result property="clientId" column="client_id" jdbcType="VARCHAR"/>
+            <result property="name" column="name" jdbcType="VARCHAR"/>
+            <result property="sex" column="sex" jdbcType="VARCHAR"/>
+            <result property="officeId" column="office_id" jdbcType="VARCHAR"/>
+            <result property="position" column="position" jdbcType="VARCHAR"/>
+            <result property="contactFirst" column="contact_first" jdbcType="VARCHAR"/>
+            <result property="contactSecond" column="contact_second" jdbcType="VARCHAR"/>
+            <result property="fax" column="fax" jdbcType="VARCHAR"/>
+            <result property="email" column="email" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Contact_Column_List">
+        cw_pcc.id,
+        cw_pcc.create_by,
+        cw_pcc.create_date,
+        cw_pcc.update_by,
+        cw_pcc.update_date,
+        cw_pcc.del_flag,
+        cw_pcc.remarks,
+        cw_pcc.project_id,
+        cw_pcc.client_id,
+        cw_pcc.name,
+        cw_pcc.sex,
+        cw_pcc.office_id,
+        cw_pcc.position,
+        cw_pcc.contact_first,
+        cw_pcc.contact_second,
+        cw_pcc.fax,
+        cw_pcc.email
+    </sql>
+</mapper>

+ 27 - 1
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/mapper/xml/CwProjectRecordsMapper.xml

@@ -43,6 +43,7 @@
         <result property="reportType" column="report_type" jdbcType="VARCHAR"/>
         <collection property="cwProjectClientInfoDTOList" ofType="com.jeeplus.test.cw.workClientInfo.service.dto.CwWorkClientBaseDTO" column="id" select="getProjectClient"></collection>
         <collection property="workAttachmentDtoList" ofType="com.jeeplus.test.workContract.service.dto.WorkAttachmentDto" column="id" select="getFileList"></collection>
+        <collection property="cwProjectClientContactDTOList" ofType="com.jeeplus.test.cw.projectRecords.service.dto.CwProjectClientContactDTO" column="id" select="getContact"></collection>
     </resultMap>
 
     <resultMap id="AttachmentMap" type="com.jeeplus.test.workContract.service.dto.WorkAttachmentDto">
@@ -103,7 +104,25 @@
         wa.sort,
         wa.description
     </sql>
-
+    <sql id="Contact_Column_List">
+        cw_pcc.id,
+        cw_pcc.create_by,
+        cw_pcc.create_date,
+        cw_pcc.update_by,
+        cw_pcc.update_date,
+        cw_pcc.del_flag,
+        cw_pcc.remarks,
+        cw_pcc.project_id,
+        cw_pcc.client_id,
+        cw_pcc.name,
+        cw_pcc.sex,
+        cw_pcc.office_id,
+        cw_pcc.position,
+        cw_pcc.contact_first,
+        cw_pcc.contact_second,
+        cw_pcc.fax,
+        cw_pcc.email
+    </sql>
     <sql id="Project_Client_List">
         cw_pci.project_id,
         cw_pci.client_id,
@@ -163,6 +182,13 @@
         where wa.del_flag = '0' and wa.attachment_id = #{id}
     </select>
 
+    <select id="getContact" resultType="com.jeeplus.test.cw.projectRecords.service.dto.CwProjectClientContactDTO">
+        select
+        <include refid="Contact_Column_List"></include>
+        from cw_project_client_contact cw_pcc
+        where cw_pcc.project_id = #{id} and cw_pcc.del_flag = '0'
+    </select>
+
     <select id="findList" resultMap="BaseResultMap">
         select
         <include refid="Base_Column_List"></include>,

+ 113 - 1
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/service/CwProjectRecordsService.java

@@ -1,5 +1,6 @@
 package com.jeeplus.test.cw.projectRecords.service;
 
+import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.ArrayUtil;
 import cn.hutool.core.util.ObjectUtil;
@@ -18,11 +19,21 @@ import com.jeeplus.sys.service.dto.UserDTO;
 import com.jeeplus.sys.utils.Global;
 import com.jeeplus.sys.utils.StringUtils;
 import com.jeeplus.sys.utils.UserUtils;
+import com.jeeplus.test.cw.contractRegistration.domain.ContractFile;
+import com.jeeplus.test.cw.contractRegistration.domain.ContractInfo;
+import com.jeeplus.test.cw.contractRegistration.mapper.ContractInfoMapper;
+import com.jeeplus.test.cw.projectRecords.domain.CwProjectClientContact;
 import com.jeeplus.test.cw.projectRecords.domain.CwProjectRecords;
+import com.jeeplus.test.cw.projectRecords.mapper.CwProjectClientContactMapper;
 import com.jeeplus.test.cw.projectRecords.mapper.CwProjectRecordsMapper;
+import com.jeeplus.test.cw.projectRecords.service.dto.CwProjectClientContactDTO;
 import com.jeeplus.test.cw.projectRecords.service.dto.CwProjectClientInfoDTO;
 import com.jeeplus.test.cw.projectRecords.service.dto.CwProjectRecordsDTO;
+import com.jeeplus.test.cw.projectRecords.service.mapstruct.CwProjectClientContactWrapper;
 import com.jeeplus.test.cw.projectRecords.service.mapstruct.CwProjectRecordsWrapper;
+import com.jeeplus.test.cw.workClientInfo.domain.CwWorkClientContact;
+import com.jeeplus.test.cw.workClientInfo.service.CwWorkClientContactService;
+import com.jeeplus.test.cw.workClientInfo.service.CwWorkClientService;
 import com.jeeplus.test.cw.workClientInfo.service.dto.CwWorkClientBaseDTO;
 import com.jeeplus.test.mould.service.SerialnumTplService;
 import com.jeeplus.test.oss.domain.WorkAttachment;
@@ -56,11 +67,18 @@ public class CwProjectRecordsService extends ServiceImpl<CwProjectRecordsMapper,
     private CwProjectRecordsMapper cwProjectRecordsMapper;
     @Resource
     private OssService ossService;
-
+    @Resource
+    private CwProjectClientContactMapper cwProjectClientContactMapper;
+    @Resource
+    private CwProjectClientContactService cwProjectClientContactService;
+    @Resource
+    private ContractInfoMapper contractInfoMapper;
     @Resource
     private SerialnumTplService serialnumTplService;
     @Resource
     private UserMapper userMapper;
+    @Resource
+    private CwWorkClientContactService cwWorkClientContactService;
 
     /**
      * 差选项目列表信息
@@ -125,6 +143,23 @@ public class CwProjectRecordsService extends ServiceImpl<CwProjectRecordsMapper,
             //项目编号生成
             String serialNum = serialnumTplService.genSerialNum(userDTO.getCompanyDTO().getId(), CwProjectRecordsDTO.BIZ_CODE);
             cwProjectRecordsDTO.setProjectNumber(serialNum);
+        } else {
+            //把原项目关联的客户联系人从客户表删除
+            CwProjectRecords project = this.getById(cwProjectRecordsDTO.getId());
+            if (ObjectUtil.isNotEmpty(project)) {
+                if (StringUtils.isNotBlank(project.getContractId())) {
+                    ContractInfo contractInfo = contractInfoMapper.selectById(project.getContractId());
+                    if (ObjectUtil.isNotEmpty(contractInfo)) {
+                        if (StringUtils.isNotBlank(contractInfo.getClientContacts())) {
+                            // 删除客户的联系人表中与此项目关联的联系人
+                            cwWorkClientContactService.remove(new QueryWrapper<CwWorkClientContact>().lambda()
+                                    .eq(CwWorkClientContact::getClientId,contractInfo.getClientContacts())
+                                    .eq(CwWorkClientContact::getProjectId,cwProjectRecordsDTO.getId())
+                            );
+                        }
+                    }
+                }
+            }
         }
         CwProjectRecords cwProjectRecords = CwProjectRecordsWrapper.INSTANCE.toEntity(cwProjectRecordsDTO);
         if (ObjectUtil.isNotEmpty(cwProjectRecords)) {
@@ -153,6 +188,83 @@ public class CwProjectRecordsService extends ServiceImpl<CwProjectRecordsMapper,
                 //对数据进行批量插入
                 cwProjectRecordsMapper.insertProjectClientInfoList(cwProjectClientInfoDTOList);
             }
+
+            // 客户联系人
+            if (CollectionUtil.isNotEmpty(cwProjectRecordsDTO.getCwProjectClientContactDTOList())) {
+                if (CollectionUtil.isNotEmpty(cwProjectRecordsDTO.getCwProjectClientContactDTOList())) {
+                    // 1. 查看数据是否有合同信息,
+                    // 如果有合同信息,有委托人,则把所有的联系人client_id替换为合同的委托人id
+                    // 如果有合同信息,但是没有委托人,则把所有的联系人client_id置空""
+                    // 如果有合同信息id,但是并没有通过合同信息id查询到数据,则把所有的联系人client_id置空""
+                    // 如果没有合同信息,则把所有的联系人client_id置空""
+                    if (StringUtils.isNotBlank(cwProjectRecords.getContractId())) {
+                        ContractInfo contractInfo = contractInfoMapper.selectById(cwProjectRecords.getContractId());
+                        if (ObjectUtil.isNotEmpty(contractInfo)){
+                            if (StringUtils.isNotBlank(contractInfo.getClientContacts())) {
+                                cwProjectRecordsDTO.getCwProjectClientContactDTOList().stream().forEach(item->{
+                                    item.setClientId(contractInfo.getClientContacts());
+                                });
+                            } else {
+                                cwProjectRecordsDTO.getCwProjectClientContactDTOList().stream().forEach(item->{
+                                    item.setClientId("");
+                                });
+                            }
+                        } else {
+                            cwProjectRecordsDTO.getCwProjectClientContactDTOList().stream().forEach(item->{
+                                item.setClientId("");
+                            });
+                        }
+                    } else {
+                        cwProjectRecordsDTO.getCwProjectClientContactDTOList().stream().forEach(item->{
+                            item.setClientId("");
+                        });
+                    }
+                    // 2. 联系人的添加或修改
+                    List<String> liveIds = cwProjectRecordsDTO.getCwProjectClientContactDTOList().stream().filter(item -> {
+                        if (StringUtils.isNotBlank(item.getId())) {
+                            return true;
+                        }
+                        return false;
+                    }).map(CwProjectClientContactDTO::getId).collect(Collectors.toList());
+                    if (CollectionUtil.isNotEmpty(liveIds)) {
+                        cwProjectClientContactMapper.delete(new QueryWrapper<CwProjectClientContact>().lambda().notIn(CwProjectClientContact::getId, liveIds).eq(CwProjectClientContact::getProjectId,cwProjectRecords.getId()));
+                    } else {
+                        cwProjectClientContactMapper.delete(new QueryWrapper<CwProjectClientContact>().lambda().eq(CwProjectClientContact::getProjectId,cwProjectRecords.getId()));
+                    }
+                    List<CwProjectClientContact> updateBatchById = new ArrayList<>();
+                    List<CwProjectClientContact> insertBatchById = new ArrayList<>();
+                    List<CwWorkClientContact> saveBatchClient = new ArrayList<>();
+                    cwProjectRecordsDTO.getCwProjectClientContactDTOList().stream().forEach(item->{
+                        item.setProjectId(cwProjectRecords.getId());
+                        if (StringUtils.isNotBlank(item.getId())){
+                            // 有id进行修改操作
+                            updateBatchById.add(CwProjectClientContactWrapper.INSTANCE.toEntity(item));
+                        }else{
+                            // 无id进行新增操作
+                            insertBatchById.add(CwProjectClientContactWrapper.INSTANCE.toEntity(item));
+                        }
+                        CwWorkClientContact cwWorkClientContact = new CwWorkClientContact();
+                        BeanUtil.copyProperties(item, cwWorkClientContact);
+                        cwWorkClientContact.setProjectId(cwProjectRecords.getId());
+                        cwWorkClientContact.setId("");
+                        saveBatchClient.add(cwWorkClientContact);
+                    });
+                    // 批量根据id修改数据
+                    if (CollectionUtil.isNotEmpty(updateBatchById)){
+                        cwProjectClientContactService.updateBatchById(updateBatchById);
+                    }
+                    // 批量新增数据
+                    if (CollectionUtil.isNotEmpty(insertBatchById)){
+                        cwProjectClientContactService.saveBatch(insertBatchById);
+                    }
+                    // 将数据添加到客户的联系人表中
+                    if (CollectionUtil.isNotEmpty(saveBatchClient)){
+                        cwWorkClientContactService.saveBatch(saveBatchClient);
+                    }
+                } else {
+                    cwProjectClientContactMapper.delete(new QueryWrapper<CwProjectClientContact>().lambda().eq(CwProjectClientContact::getProjectId,cwProjectRecords.getId()));
+                }
+            }
         }
         return cwProjectRecords.getId();
     }

+ 73 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/service/dto/CwProjectClientContactDTO.java

@@ -0,0 +1,73 @@
+package com.jeeplus.test.cw.projectRecords.service.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jeeplus.core.domain.BaseEntity;
+import com.jeeplus.core.service.dto.BaseDTO;
+import lombok.Data;
+
+/**
+ * 项目管理-项目登记-客户联系人页签
+ * @TableName cw_project_client_contact
+ */
+@Data
+public class CwProjectClientContactDTO extends BaseDTO {
+
+    /**
+     * 备注
+     */
+    private String remarks;
+
+    /**
+     * 项目id
+     */
+    private String projectId;
+
+    /**
+     * 客户id
+     */
+    private String clientId;
+
+    /**
+     * 姓名
+     */
+    private String name;
+
+    /**
+     * 性别
+     */
+    private String sex;
+
+    /**
+     * 部门
+     */
+    private String officeId;
+
+    /**
+     * 职务
+     */
+    private String position;
+
+    /**
+     * 联系方式1
+     */
+    private String contactFirst;
+
+    /**
+     * 联系方式2
+     */
+    private String contactSecond;
+
+    /**
+     * 传真
+     */
+    private String fax;
+
+    /**
+     * 邮箱
+     */
+    private String email;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 6 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/service/dto/CwProjectRecordsDTO.java

@@ -203,4 +203,10 @@ public class CwProjectRecordsDTO extends BaseDTO {
      * 报备类型
      */
     private String reportType;
+
+    /**
+     * 客户联系人
+     */
+    private List<CwProjectClientContactDTO> cwProjectClientContactDTOList;
+
 }

+ 18 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/projectRecords/service/mapstruct/CwProjectClientContactWrapper.java

@@ -0,0 +1,18 @@
+package com.jeeplus.test.cw.projectRecords.service.mapstruct;
+
+import com.jeeplus.core.mapstruct.EntityWrapper;
+import com.jeeplus.test.cw.projectRecords.domain.CwProjectClientContact;
+import com.jeeplus.test.cw.projectRecords.domain.CwProjectRecords;
+import com.jeeplus.test.cw.projectRecords.service.dto.CwProjectClientContactDTO;
+import com.jeeplus.test.cw.projectRecords.service.dto.CwProjectRecordsDTO;
+import org.mapstruct.Mapper;
+import org.mapstruct.ReportingPolicy;
+import org.mapstruct.factory.Mappers;
+
+
+@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE, uses = {})
+public interface CwProjectClientContactWrapper extends EntityWrapper<CwProjectClientContactDTO, CwProjectClientContact> {
+
+    CwProjectClientContactWrapper INSTANCE = Mappers.getMapper(CwProjectClientContactWrapper.class);
+
+}

+ 5 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/workClientInfo/domain/CwWorkClientContact.java

@@ -65,5 +65,10 @@ public class CwWorkClientContact extends BaseEntity {
      */
     private String email;
 
+    /**
+     * 项目id
+     */
+    private String projectId;
+
     private static final long serialVersionUID = 1L;
 }

+ 2 - 1
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/workClientInfo/mapper/xml/CwWorkClientBaseMapper.xml

@@ -163,7 +163,8 @@
         cw_wcc.contact_first,
         cw_wcc.contact_second,
         cw_wcc.fax,
-        cw_wcc.email
+        cw_wcc.email,
+        cw_wcc.project_id
     </sql>
     <sql id="Type_Column_List">
         cw_wct.id,

+ 3 - 1
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/workClientInfo/mapper/xml/CwWorkClientContactMapper.xml

@@ -21,6 +21,7 @@
             <result property="contactSecond" column="contact_second" jdbcType="VARCHAR"/>
             <result property="fax" column="fax" jdbcType="VARCHAR"/>
             <result property="email" column="email" jdbcType="VARCHAR"/>
+        <result property="projectId" column="project_id" jdbcType="VARCHAR"/>
     </resultMap>
 
     <sql id="Contact_Column_List">
@@ -39,6 +40,7 @@
         cw_wcc.contact_first,
         cw_wcc.contact_second,
         cw_wcc.fax,
-        cw_wcc.email
+        cw_wcc.email,
+        cw_wcc.project_id
     </sql>
 </mapper>

+ 10 - 2
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/workClientInfo/service/CwWorkClientService.java

@@ -393,13 +393,21 @@ public class CwWorkClientService extends ServiceImpl<CwWorkClientBaseMapper, CwW
     // 根据客户id查询
     public ResponseEntity<String> queryUscCodeById(String id) {
         CwWorkClientBase cwWorkClientBase = this.getById(id);
-        return ResponseEntity.ok(cwWorkClientBase.getUscCode());
+        if (ObjectUtil.isNotEmpty(cwWorkClientBase)) {
+            return ResponseEntity.ok(cwWorkClientBase.getUscCode());
+        } else {
+            return ResponseEntity.ok("");
+        }
     }
 
     // 根据客户id查询
     public ResponseEntity<String> queryNameById(String id) {
         CwWorkClientBase cwWorkClientBase = this.getById(id);
-        return ResponseEntity.ok(cwWorkClientBase.getName());
+        if (ObjectUtil.isNotEmpty(cwWorkClientBase)) {
+            return ResponseEntity.ok(cwWorkClientBase.getName());
+        } else {
+            return ResponseEntity.ok("");
+        }
     }
 
     // 根据客户id查询修改历史

+ 5 - 0
jeeplus-module/jeeplus-test/src/main/java/com/jeeplus/test/cw/workClientInfo/service/dto/CwWorkClientContactDTO.java

@@ -62,5 +62,10 @@ public class CwWorkClientContactDTO extends BaseDTO {
      */
     private String email;
 
+    /**
+     * 项目id
+     */
+    private String projectId;
+
     private static final long serialVersionUID = 1L;
 }