Browse Source

档案-同步日志文件
1、优先同步按月封装,按月封装没有再同步日志文件
2、同步日志文件 内容调整

LHB 1 month ago
parent
commit
416e1a0220

+ 2 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreePrivateMapper.java

@@ -150,4 +150,6 @@ public interface WbsTreePrivateMapper extends EasyBaseMapper<WbsTreePrivate> {
                          @Param("sort") Integer sort);
                          @Param("sort") Integer sort);
 
 
     void updateSortBatchByPKeyId(List<WbsTreePrivate> resourceData);
     void updateSortBatchByPKeyId(List<WbsTreePrivate> resourceData);
+
+    List<ArchiveSyncLogVO> getContractAllLogMonthPack(@Param("contractId") Long contractId);
 }
 }

+ 41 - 5
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreePrivateMapper.xml

@@ -958,11 +958,27 @@
         </if>
         </if>
     </select>
     </select>
     <select id="getContractAllLog" resultType="org.springblade.manager.vo.ArchiveSyncLogVO">
     <select id="getContractAllLog" resultType="org.springblade.manager.vo.ArchiveSyncLogVO">
-        select id,create_user_name,record_time,file_name,pdf_url,e_visa_pdf_url,create_user,create_time,
-               (select node_type from m_wbs_tree_private where p_key_id = ucl.wbs_node_id) as logType,
-               (select node_name from m_wbs_tree_private where p_key_id = ucl.wbs_node_id) as logName
-        from u_contract_log ucl
-        where contract_id = #{contractId} and is_deleted = 0 and pdf_url IS NOT NULL order by record_time
+
+        SELECT
+            ucl.id,
+            case when b.contract_type = 1 then b.construction_unit_name else b.supervision_unit_name end  create_user_name,
+            ucl.record_time,
+            ucl.file_name,
+            ucl.pdf_url,
+            ucl.e_visa_pdf_url,
+            ucl.create_user,
+            ucl.create_time,
+            ( SELECT node_type FROM m_wbs_tree_private WHERE p_key_id = ucl.wbs_node_id ) AS logType,
+            ( SELECT node_name FROM m_wbs_tree_private WHERE p_key_id = ucl.wbs_node_id ) AS logName
+        FROM
+            u_contract_log ucl
+                left join m_contract_info b on ucl.contract_id = b.id
+        WHERE
+            contract_id = #{contractId}
+          AND ucl.is_deleted = 0
+          AND pdf_url IS NOT NULL
+        ORDER BY
+            record_time
     </select>
     </select>
 
 
 
 
@@ -1013,4 +1029,24 @@
         /*排序*/
         /*排序*/
         -- order by sort,title
         -- order by sort,title
     </select>
     </select>
+    <select id="getContractAllLogMonthPack" resultType="org.springblade.manager.vo.ArchiveSyncLogVO">
+        SELECT
+            id,
+            contract_name create_user_name,
+            record_time,
+            file_name,
+            pdf_url,
+            pdf_url e_visa_pdf_url,
+            create_user,
+            create_time,
+            ( SELECT node_type FROM m_wbs_tree_private WHERE p_key_id = ucl.wbs_node_id ) AS logType,
+            ( SELECT node_name FROM m_wbs_tree_private WHERE p_key_id = ucl.wbs_node_id ) AS logName
+        FROM
+            u_contract_log_month_pack ucl
+        WHERE
+            contract_id = #{contractId}
+          AND pdf_url IS NOT NULL
+        ORDER BY
+            record_time;
+    </select>
 </mapper>
 </mapper>

+ 2 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/service/IWbsTreePrivateService.java

@@ -111,4 +111,6 @@ public interface IWbsTreePrivateService extends BaseService<WbsTreePrivate> {
     void diGuiWbs(int i);
     void diGuiWbs(int i);
 
 
     WbsTreePrivateVO tree3(String wbsId, String projectId);
     WbsTreePrivateVO tree3(String wbsId, String projectId);
+
+    List<ArchiveSyncLogVO> getContractAllLogMonthPack(Long contractId);
 }
 }

+ 5 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ArchiveTreeContractSyncImpl.java

@@ -1166,7 +1166,11 @@ public class ArchiveTreeContractSyncImpl {
         List<ArchiveTreeContract> addNode = new ArrayList<>();
         List<ArchiveTreeContract> addNode = new ArrayList<>();
         List<ArchiveFile> addFile = new ArrayList<>();
         List<ArchiveFile> addFile = new ArrayList<>();
         //获取合同段所有的日志,并且附带类型
         //获取合同段所有的日志,并且附带类型
-        List<ArchiveSyncLogVO> logs = wbsTreePrivateService.getContractAllLog(contractId);
+        List<ArchiveSyncLogVO> logs = wbsTreePrivateService.getContractAllLogMonthPack(contractId);
+        //先查按月封装 没有再查日志
+        if(CollectionUtil.isEmpty(logs)){
+            logs = wbsTreePrivateService.getContractAllLog(contractId);
+        }
         if (CollectionUtil.isEmpty(logs)){
         if (CollectionUtil.isEmpty(logs)){
             throw new ServiceException("当前合同段下没有日志资料");
             throw new ServiceException("当前合同段下没有日志资料");
         }
         }

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

@@ -3208,6 +3208,11 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
         return baseMapper.getContractAllLog(contractId);
         return baseMapper.getContractAllLog(contractId);
     }
     }
 
 
+    @Override
+    public List<ArchiveSyncLogVO> getContractAllLogMonthPack(Long contractId) {
+        return baseMapper.getContractAllLogMonthPack(contractId);
+    }
+
     public void diGuiWbs(int i) {
     public void diGuiWbs(int i) {
         QueryWrapper<WbsTreePrivate> wbsTreePrivateQueryWrapper = new QueryWrapper<>();
         QueryWrapper<WbsTreePrivate> wbsTreePrivateQueryWrapper = new QueryWrapper<>();
         wbsTreePrivateQueryWrapper.select("p_key_id", "id", "p_id", "wbs_id", "project_id", "parent_id", "ancestors");
         wbsTreePrivateQueryWrapper.select("p_key_id", "id", "p_id", "wbs_id", "project_id", "parent_id", "ancestors");