Sfoglia il codice sorgente

添加数据推送是重复推送的数据去重,重复推送就更新

chengpan 2 anni fa
parent
commit
48e7492262

+ 6 - 0
ruoyi-system/src/main/java/com/ruoyi/opt/mapper/CompanyInfoMapper.java

@@ -27,6 +27,12 @@ public interface CompanyInfoMapper
      */
     public List<CompanyInfo> selectCompanyInfoList(CompanyInfo companyInfo);
 
+    /**
+     * 根据参数判断企业是否已存入企业信息表
+     * @return
+     */
+    public Long getCompanyIdByParams(CompanyInfo companyInfo);
+
     /**
      * 新增企业信息
      * 

+ 7 - 0
ruoyi-system/src/main/java/com/ruoyi/opt/mapper/ProcessInfoMapper.java

@@ -41,6 +41,13 @@ public interface ProcessInfoMapper extends BaseMapper<ProcessInfo>
      */
     public List<ProcessInfo> selectProcessInfoList(ProcessInfo processInfo);
 
+    /**
+     * 根据订单编号判断订单是否已存入订单信息表
+     * @param processInfo
+     * @return
+     */
+    Long getPIdByParams(ProcessInfo processInfo);
+
     /**
      * 新增保函订单
      * 

+ 7 - 0
ruoyi-system/src/main/java/com/ruoyi/opt/mapper/ProjectInfoMapper.java

@@ -27,6 +27,13 @@ public interface ProjectInfoMapper
      */
     public List<ProjectInfo> selectProjectInfoList(ProjectInfo projectInfo);
 
+    /**
+     * 根据参数判断项目是否已存入项目信息表
+     * @param projectInfo
+     * @return
+     */
+    Long getProjectIdByParams(ProjectInfo projectInfo);
+
     /**
      * 新增招标项目
      * 

+ 24 - 4
ruoyi-system/src/main/java/com/ruoyi/opt/service/impl/CompanyInfoServiceImpl.java

@@ -10,7 +10,6 @@ import com.ruoyi.opt.domain.ProcessInfo;
 import com.ruoyi.opt.domain.ProjectInfo;
 import com.ruoyi.opt.mapper.ProcessInfoMapper;
 import com.ruoyi.opt.mapper.ProjectInfoMapper;
-import lombok.Builder;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -63,7 +62,14 @@ public class CompanyInfoServiceImpl implements ICompanyInfoService
 //                companyInfo.setCreateTime(new Date("yyyy-MM-dd"));
                 companyInfo.setUpdateBy(null);
 //                companyInfo.setUpdateTime(new Date("yyyy-MM-dd"));
-                companyInfoMapper.insertCompanyInfo(companyInfo);
+                Long companyId = companyInfoMapper.getCompanyIdByParams(companyInfo);
+                if(null == companyId) {
+                    companyInfoMapper.insertCompanyInfo(companyInfo);
+                }else {
+                    companyInfo.setUpdateTime(DateUtils.getNowDate());
+                    companyInfo.setCompanyId(companyId);
+                    companyInfoMapper.updateCompanyInfo(companyInfo);
+                }
 
                 //开始入库项目信息
                 ProjectInfo projectInfo = new ProjectInfo();
@@ -83,7 +89,14 @@ public class CompanyInfoServiceImpl implements ICompanyInfoService
 //                projectInfo.setCreateTime(new Date("yyyy-MM-dd"));
                 projectInfo.setUpdateBy(null);
 //                projectInfo.setUpdateTime(new Date("yyyy-MM-dd"));
-                projectInfoMapper.insertProjectInfo(projectInfo);
+                Long projectId = projectInfoMapper.getProjectIdByParams(projectInfo);
+                if(null == projectId) {
+                    projectInfoMapper.insertProjectInfo(projectInfo);
+                }else {
+                    projectInfo.setUpdateTime(DateUtils.getNowDate());
+                    projectInfo.setProjectId(projectId);
+                    projectInfoMapper.updateProjectInfo(projectInfo);
+                }
 
                 //开始组装数据准备入库
                 ProcessInfo processInfo = new ProcessInfo();
@@ -104,7 +117,14 @@ public class CompanyInfoServiceImpl implements ICompanyInfoService
                 processInfo.setCreateBy(null);
                 processInfo.setUpdateBy(null);
 //                processInfo.setUpdateTime(new Date("yyyy-MM-dd"));
-                processInfoMapper.insertProcessInfo(processInfo);
+                Long pId = processInfoMapper.getPIdByParams(processInfo);
+                if(null == pId) {
+                    processInfoMapper.insertProcessInfo(processInfo);
+                }else {
+                    processInfo.setUpdateTime(DateUtils.getNowDate());
+                    processInfo.setpId(pId);
+                    processInfoMapper.updateProcessInfo(processInfo);
+                }
             }
         } catch (Exception e) {
             e.printStackTrace();

+ 4 - 0
ruoyi-system/src/main/resources/mapper/opt/CompanyInfoMapper.xml

@@ -42,6 +42,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <include refid="selectCompanyInfoVo"/>
         where company_id = #{companyId}
     </select>
+
+    <select id="getCompanyIdByParams" parameterType="CompanyInfo" resultType="Long">
+        SELECT c.company_id FROM t_company_info c WHERE c.company_social_no = #{companySocialNo} AND c.apply_tel = #{applyTel}
+    </select>
         
     <insert id="insertCompanyInfo" parameterType="CompanyInfo" useGeneratedKeys="true" keyProperty="companyId">
         <selectKey keyProperty="companyId" order="AFTER" resultType="java.lang.Long" >

+ 4 - 0
ruoyi-system/src/main/resources/mapper/opt/ProcessInfoMapper.xml

@@ -55,6 +55,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <include refid="selectProcessInfoVo"/>
         where t.p_id = #{pId}
     </select>
+
+    <select id="getPIdByParams" parameterType="ProcessInfo" resultType="Long">
+        SELECT p.p_id FROM t_process_info p WHERE p.process_id = #{processId}
+    </select>
         
     <insert id="insertProcessInfo" parameterType="ProcessInfo">
         insert into t_process_info

+ 5 - 1
ruoyi-system/src/main/resources/mapper/opt/ProjectInfoMapper.xml

@@ -50,7 +50,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <include refid="selectProjectInfoVo"/>
         where project_id = #{projectId}
     </select>
-        
+
+    <select id="getProjectIdByParams" parameterType="ProjectInfo" resultType="Long">
+        SELECT p.project_id FROM t_project_info p WHERE p.project_cd = #{projectCd} AND p.tender_no = #{tenderNo}
+    </select>
+
     <insert id="insertProjectInfo" parameterType="ProjectInfo" useGeneratedKeys="true" keyProperty="projectId">
         <selectKey keyProperty="projectId" order="AFTER" resultType="java.lang.Long" >
             SELECT LAST_INSERT_ID();