Эх сурвалжийг харах

新增 补偿生产履职PDF 接口 忽略已生成机构

zhulu 1 сар өмнө
parent
commit
861196c5e7

+ 13 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/controller/ApiPlanController.java

@@ -4,6 +4,7 @@ import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.xunmei.common.core.constant.Constants;
+import com.xunmei.common.core.exception.SystemException;
 import com.xunmei.common.core.web.domain.AjaxResult;
 import com.xunmei.common.core.web.page.TableDataInfo;
 import com.xunmei.common.security.annotation.RequiresPermissions;
@@ -129,6 +130,18 @@ public class ApiPlanController {
         return AjaxResult.success();
     }
 
+    @GetMapping("/buildPdf/ignorecreatedpdforg/{dateStr}")
+    public AjaxResult buildPdfAndIgnoreCreatedPdfOrg(@PathVariable("dateStr") String dateStr) {
+        Date date;
+        if (ObjectUtil.isEmpty(dateStr)) {
+            throw new SystemException("dateStr 参数不能为空");
+        } else {
+            date = DateUtil.parse(dateStr, Constants.DAILY_FORMAT);
+        }
+        appPlanService.buildPdfAndIgnoreCreatedPdfOrg(date);
+        return AjaxResult.success();
+    }
+
     /**
      * 新增 修改履职计划
      *

+ 2 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/AppPlanService.java

@@ -90,6 +90,8 @@ public interface AppPlanService extends IService<AppPlan> {
 
     void buildPdf(Date date);
 
+    void buildPdfAndIgnoreCreatedPdfOrg(Date date);
+
     void buildResumptionNotWorkTimePdf(Long orgId, Date date);
 
     void buildResumptionPdfDaily(Long orgId, Date date);

+ 238 - 14
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/impl/AppPlanServiceImpl.java

@@ -1597,8 +1597,61 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
     @Override
     public void buildResumptionNotWorkTimePdf(Long orgId, Date date) {
         SysOrg sysOrg = RemoteCallHandlerExecutor.executeRemoteCall(() -> orgService.selectOrgById(orgId, SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR);
+        buildResumptionNotWorkTimePdf(sysOrg,date);
+//        String fileName = registerBookPdfService.getPdfFileName(RegisterBookType.ON_DUTY_USER, sysOrg);
+//        Map<String, Object> data = this.getFtlResumptionNotWorkTime(orgId, date);
+//        if (!checkHasData(data)) {
+//            log.error("未查询到履职数据,未能生成{},机构名称:{}", RegisterBookType.ON_DUTY_USER.getText(), sysOrg.getShortName());
+//            return;
+//        }
+//        data.put("title", RegisterBookType.ON_DUTY_USER.getText());
+//        data.put("fileName", fileName);
+//        data.put("orgName", sysOrg.getShortName());
+//        data.put("dateStr", DateUtil.format(date, Constants.DAILY_FORMAT_ZH));
+//        data.put("remark", "");
+//        CompletableFuture.runAsync(() -> {
+//            R<String> r = RemoteCallHandlerExecutor.executeRemoteCall(() -> fileService.generateResumptionPdf(data), ErrorMsgConstants.GENERATE_PDF_ERROR);
+//            if (null == r || null == r.getData()) {
+//                throw new SystemException(ErrorMsgConstants.GENERATE_PDF_ERROR);
+//            }
+//           /* Long id = (Long) data.get("id");
+//            if (ObjectUtil.isNull(id)) {
+//                throw new SystemException(ErrorMsgConstants.GENERATE_PDF_ERROR);
+//            }*/
+//            String pdfUrl = r.getData();
+//            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+//            String dateStr = sdf.format(date);
+//            LambdaQueryWrapper<CoreRegisterBookPdf> wrapper = new LambdaQueryWrapper<>();
+//            wrapper.eq(CoreRegisterBookPdf::getOrgId, orgId)
+//                    .eq(CoreRegisterBookPdf::getDate, dateStr)
+//                    .eq(CoreRegisterBookPdf::getRegisterBookType, RegisterBookType.ON_DUTY_USER.getNum())
+//                    .like(CoreRegisterBookPdf::getFileName, sysOrg.getName() + "_" + RegisterBookType.ON_DUTY_USER.getText() + "_");
+//            CoreRegisterBookPdf registerBookPdf = coreRegisterBookPdfMapper.selectOne(wrapper);
+//            if (ObjectUtil.isEmpty(registerBookPdf)) {
+//                registerBookPdf = new CoreRegisterBookPdf();
+//                registerBookPdf.setId(IdWorker.getId());
+//                registerBookPdf.setRegisterBookType(RegisterBookType.ON_DUTY_USER.getNum());
+//                registerBookPdf.setDate(date);
+//                registerBookPdf.setOrgId(orgId);
+//                registerBookPdf.setOrgName(sysOrg.getShortName());
+//                registerBookPdf.setOrgPath(sysOrg.getPath());
+//                registerBookPdf.setFileUrl(pdfUrl);
+//                registerBookPdf.setFileName(fileName);
+//            } else {
+//                registerBookPdf.setFileUrl(pdfUrl);
+//                registerBookPdf.setFileName(fileName);
+//            }
+//            if (StringUtils.isEmpty(registerBookPdf.getFileName()) || StringUtils.isEmpty(pdfUrl)) {
+//                throw new SystemException(ErrorMsgConstants.GENERATE_PDF_ERROR);
+//            }
+//            registerBookPdfService.saveOrUpdate(registerBookPdf);
+//        }, threadPoolTaskExecutor);
+    }
+
+
+    public void buildResumptionNotWorkTimePdf(SysOrg sysOrg, Date date) {
         String fileName = registerBookPdfService.getPdfFileName(RegisterBookType.ON_DUTY_USER, sysOrg);
-        Map<String, Object> data = this.getFtlResumptionNotWorkTime(orgId, date);
+        Map<String, Object> data = this.getFtlResumptionNotWorkTime(sysOrg.getId(), date);
         if (!checkHasData(data)) {
             log.error("未查询到履职数据,未能生成{},机构名称:{}", RegisterBookType.ON_DUTY_USER.getText(), sysOrg.getShortName());
             return;
@@ -1621,7 +1674,7 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
             SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
             String dateStr = sdf.format(date);
             LambdaQueryWrapper<CoreRegisterBookPdf> wrapper = new LambdaQueryWrapper<>();
-            wrapper.eq(CoreRegisterBookPdf::getOrgId, orgId)
+            wrapper.eq(CoreRegisterBookPdf::getOrgId, sysOrg.getId())
                     .eq(CoreRegisterBookPdf::getDate, dateStr)
                     .eq(CoreRegisterBookPdf::getRegisterBookType, RegisterBookType.ON_DUTY_USER.getNum())
                     .like(CoreRegisterBookPdf::getFileName, sysOrg.getName() + "_" + RegisterBookType.ON_DUTY_USER.getText() + "_");
@@ -1631,7 +1684,7 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
                 registerBookPdf.setId(IdWorker.getId());
                 registerBookPdf.setRegisterBookType(RegisterBookType.ON_DUTY_USER.getNum());
                 registerBookPdf.setDate(date);
-                registerBookPdf.setOrgId(orgId);
+                registerBookPdf.setOrgId(sysOrg.getId());
                 registerBookPdf.setOrgName(sysOrg.getShortName());
                 registerBookPdf.setOrgPath(sysOrg.getPath());
                 registerBookPdf.setFileUrl(pdfUrl);
@@ -1648,13 +1701,66 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
     }
 
 
-    @Async
+//    @Async
     @Override
     @Transactional(rollbackFor = Exception.class)
     public void buildResumptionPdfDaily(Long orgId, Date date) {
         SysOrg sysOrg = RemoteCallHandlerExecutor.executeRemoteCall(() -> orgService.selectOrgById(orgId, SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR);
+        buildResumptionPdfDaily(sysOrg,date);
+//        String fileName = registerBookPdfService.getPdfFileName(RegisterBookType.SECURITY_PERFORMANCE, sysOrg);
+//        Map<String, Object> data = this.getFtlResumptionDaily(orgId, date);
+//        if (!checkHasData(data)) {
+//            log.error("未查询到履职数据,未能生成{},机构名称:{}", RegisterBookType.SECURITY_PERFORMANCE.getText(), sysOrg.getShortName());
+//            return;
+//        }
+//        data.put("fileName", fileName);
+//        data.put("title", RegisterBookType.SECURITY_PERFORMANCE.getText());
+//        data.put("orgName", sysOrg.getShortName());
+//        data.put("dateStr", DateUtil.format(date, Constants.DAILY_FORMAT_ZH));
+//        data.put("remark", "");
+//        CompletableFuture.runAsync(() -> {
+//            R<String> r = RemoteCallHandlerExecutor.executeRemoteCall(() -> fileService.generateResumptionPdf(data), ErrorMsgConstants.GENERATE_PDF_ERROR);
+//            if (null == r || null == r.getData()) {
+//                throw new SystemException(ErrorMsgConstants.GENERATE_PDF_ERROR);
+//            }
+//            /*Long id = (Long) data.get("id");
+//            if (ObjectUtil.isNull(id)) {
+//                throw new SystemException(ErrorMsgConstants.GENERATE_PDF_ERROR);
+//            }*/
+//            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+//            String dateStr = sdf.format(date);
+//
+//            String pdfUrl = r.getData();
+//            LambdaQueryWrapper<CoreRegisterBookPdf> wrapper = new LambdaQueryWrapper<>();
+//            wrapper.eq(CoreRegisterBookPdf::getOrgId, orgId)
+//                    .eq(CoreRegisterBookPdf::getDate, dateStr)
+//                    .eq(CoreRegisterBookPdf::getRegisterBookType, RegisterBookType.SECURITY_PERFORMANCE.getNum())
+//                    .like(CoreRegisterBookPdf::getFileName, sysOrg.getName() + "_" + RegisterBookType.SECURITY_PERFORMANCE.getText() + "_");
+//            CoreRegisterBookPdf registerBookPdf = coreRegisterBookPdfMapper.selectOne(wrapper);
+//            if (ObjectUtil.isEmpty(registerBookPdf)) {
+//                registerBookPdf = new CoreRegisterBookPdf();
+//                registerBookPdf.setId(IdWorker.getId());
+//                registerBookPdf.setRegisterBookType(RegisterBookType.SECURITY_PERFORMANCE.getNum());
+//                registerBookPdf.setDate(date);
+//                registerBookPdf.setOrgId(orgId);
+//                registerBookPdf.setOrgName(sysOrg.getShortName());
+//                registerBookPdf.setOrgPath(sysOrg.getPath());
+//                registerBookPdf.setFileUrl(pdfUrl);
+//                registerBookPdf.setFileName(fileName);
+//            } else {
+//                registerBookPdf.setFileUrl(pdfUrl);
+//                registerBookPdf.setFileName(fileName);
+//            }
+//            if (StringUtils.isEmpty(registerBookPdf.getFileName()) || StringUtils.isEmpty(pdfUrl)) {
+//                throw new SystemException(ErrorMsgConstants.GENERATE_PDF_ERROR);
+//            }
+//            registerBookPdfService.saveOrUpdate(registerBookPdf);
+//        }, threadPoolTaskExecutor);
+    }
+
+    public void buildResumptionPdfDaily(SysOrg sysOrg, Date date) {
         String fileName = registerBookPdfService.getPdfFileName(RegisterBookType.SECURITY_PERFORMANCE, sysOrg);
-        Map<String, Object> data = this.getFtlResumptionDaily(orgId, date);
+        Map<String, Object> data = this.getFtlResumptionDaily(sysOrg.getId(), date);
         if (!checkHasData(data)) {
             log.error("未查询到履职数据,未能生成{},机构名称:{}", RegisterBookType.SECURITY_PERFORMANCE.getText(), sysOrg.getShortName());
             return;
@@ -1678,7 +1784,7 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
 
             String pdfUrl = r.getData();
             LambdaQueryWrapper<CoreRegisterBookPdf> wrapper = new LambdaQueryWrapper<>();
-            wrapper.eq(CoreRegisterBookPdf::getOrgId, orgId)
+            wrapper.eq(CoreRegisterBookPdf::getOrgId, sysOrg.getId())
                     .eq(CoreRegisterBookPdf::getDate, dateStr)
                     .eq(CoreRegisterBookPdf::getRegisterBookType, RegisterBookType.SECURITY_PERFORMANCE.getNum())
                     .like(CoreRegisterBookPdf::getFileName, sysOrg.getName() + "_" + RegisterBookType.SECURITY_PERFORMANCE.getText() + "_");
@@ -1688,7 +1794,7 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
                 registerBookPdf.setId(IdWorker.getId());
                 registerBookPdf.setRegisterBookType(RegisterBookType.SECURITY_PERFORMANCE.getNum());
                 registerBookPdf.setDate(date);
-                registerBookPdf.setOrgId(orgId);
+                registerBookPdf.setOrgId(sysOrg.getId());
                 registerBookPdf.setOrgName(sysOrg.getShortName());
                 registerBookPdf.setOrgPath(sysOrg.getPath());
                 registerBookPdf.setFileUrl(pdfUrl);
@@ -1715,12 +1821,79 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
                 .select(Resumption::getOrgId));
         List<Long> orgIds = resumptions.stream().map(Resumption::getOrgId).distinct().collect(Collectors.toList());
         for (Long orgId : orgIds) {
-            buildResumptionPdfDaily(orgId, date);
-            buildResumptionNotWorkTimePdf(orgId, date);
-            buildResumptionAllDayPdf(orgId, date);
+            try{
+                SysOrg sysOrg = RemoteCallHandlerExecutor.executeRemoteCall(() -> orgService.selectOrgById(orgId, SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR);
+                buildResumptionPdfDaily(sysOrg, date);
+                buildResumptionNotWorkTimePdf(sysOrg, date);
+                buildResumptionAllDayPdf(sysOrg, date);
+            }
+            catch (Exception e)
+            {
+                log.error("生成机构ID为{}的登记簿异常,异常原因{}", orgId, e.getMessage()+e.getStackTrace());
+            }
         }
     }
 
+    public void buildPdfAndIgnoreCreatedPdfOrg(Date date,Map<String, List<CoreRegisterBookPdf>> existPdfGrouped) {
+
+        List<Resumption> resumptions = resumptionMapper.selectList(new LambdaQueryWrapper<Resumption>()
+                .le(Resumption::getPlanStartTime, DateUtils.toLocalDate(date))
+                .ge(Resumption::getPlanEndTime, DateUtils.toLocalDate(date))
+                .select(Resumption::getOrgId));
+        List<Long> orgIds = resumptions.stream().map(Resumption::getOrgId).distinct().collect(Collectors.toList());
+        for (Long orgId : orgIds) {
+            try{
+                SysOrg sysOrg = RemoteCallHandlerExecutor.executeRemoteCall(() -> orgService.selectOrgById(orgId, SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR);
+                // 安保履职登记簿
+                String dailyPdfKey =getPdfKey(orgId,RegisterBookType.SECURITY_PERFORMANCE.getNum());
+                if(!existPdfGrouped.containsKey(dailyPdfKey))
+                {
+                    buildResumptionPdfDaily(sysOrg, date);
+                }
+                // 值班履职登记簿
+                String onDutyPdfKey =getPdfKey(orgId,RegisterBookType.ON_DUTY_USER.getNum());
+                if(!existPdfGrouped.containsKey(onDutyPdfKey))
+                {
+                    buildResumptionNotWorkTimePdf(sysOrg, date);
+                }
+                //4:“110”入侵报警系统测试 5:不间断电源(UPS)维护 6:离行式自助银行巡检
+                String alarmPdfKey =getPdfKey(orgId,RegisterBookType.ALARM_TEST.getNum());
+                String selfPdfKey =getPdfKey(orgId,RegisterBookType.SELF_SERVICE_BANK.getNum());
+                String backupPowerPdfKey =getPdfKey(orgId,RegisterBookType.BACKUP_POWER.getNum());
+                if(!existPdfGrouped.containsKey(alarmPdfKey)&&!existPdfGrouped.containsKey(selfPdfKey) &&!existPdfGrouped.containsKey(backupPowerPdfKey))
+                {
+                    buildResumptionAllDayPdf(sysOrg, date);
+                }
+            }
+            catch (Exception e)
+            {
+                log.error("buildPdfAndIgnoreCreatedPdfOrg 生成机构ID为{}的登记簿异常,异常原因{}", orgId, e.getMessage()+e.getStackTrace());
+            }
+        }
+    }
+
+    private String getPdfKey(Long orgId,Integer registerBookType)
+    {
+        return orgId + "_" + registerBookType;
+    }
+
+    @Async
+    @Override
+    public void buildPdfAndIgnoreCreatedPdfOrg(Date date) {
+        Integer[] bookTypes={0,4,5,6,7};
+        List<CoreRegisterBookPdf> existPdfList= registerBookPdfService.list(new LambdaQueryWrapper<CoreRegisterBookPdf>()
+                .eq(CoreRegisterBookPdf::getDate, DateUtils.toLocalDate(date))
+                .in(CoreRegisterBookPdf::getRegisterBookType,bookTypes)
+                .select(CoreRegisterBookPdf::getOrgId,CoreRegisterBookPdf::getRegisterBookType));
+
+        Map<String, List<CoreRegisterBookPdf>> existPdfGrouped = existPdfList.stream()
+                .collect(Collectors.groupingBy(
+                        pdf -> getPdfKey(pdf.getOrgId(),pdf.getRegisterBookType()) //pdf.getOrgId() + "_" + pdf.getRegisterBookType()
+                ));
+
+        buildPdfAndIgnoreCreatedPdfOrg(date,existPdfGrouped);
+    }
+
     private Boolean checkHasData(Map<String, Object> data) {
         final List<SysDictData> dictCache = DictUtils.getDictCache(DictConstants.RESUMPTION_PLAN_EXEC);
         final List<String> names = dictCache.stream().map(SysDictData::getDictLabel).collect(Collectors.toList());
@@ -1736,6 +1909,59 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
     @Override
     public void buildResumptionAllDayPdf(Long orgId, Date date) {
         SysOrg sysOrg = RemoteCallHandlerExecutor.executeRemoteCall(() -> orgService.selectOrgById(orgId, SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR);
+        buildResumptionAllDayPdf(sysOrg,date);
+//        //110报警:4
+//        //电源:5
+//        final List<Map<String, Object>> mapList = this.getFtlResumptionAllDay(sysOrg, date);
+//        for (Map<String, Object> data : mapList) {
+//            if (!checkHasData(data)) {
+//                log.error("未查询到履职数据,未能生成{},机构名称:{}", RegisterBookType.getEnums((Integer) data.get("planType")).getText(), sysOrg.getShortName());
+//                return;
+//            }
+//            CompletableFuture.runAsync(() -> {
+//                R<String> r = RemoteCallHandlerExecutor.executeRemoteCall(() -> fileService.generateResumptionPdf(data), ErrorMsgConstants.GENERATE_PDF_ERROR);
+//                if (null == r || null == r.getData()) {
+//                    throw new SystemException(ErrorMsgConstants.GENERATE_PDF_ERROR);
+//                }
+//               /* Long id = (Long) data.get("id");
+//                if (ObjectUtil.isNull(id)) {
+//                    throw new SystemException(ErrorMsgConstants.GENERATE_PDF_ERROR);
+//                }*/
+//                String pdfUrl = r.getData();
+//                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+//                String dateStr = sdf.format(date);
+//                LambdaQueryWrapper<CoreRegisterBookPdf> wrapper = new LambdaQueryWrapper<>();
+//                wrapper.eq(CoreRegisterBookPdf::getOrgId, orgId)
+//                        .eq(CoreRegisterBookPdf::getDate, dateStr)
+//                        .eq(CoreRegisterBookPdf::getRegisterBookType, RegisterBookType.getEnums((Integer) data.get("planType")).getNum())
+//                        .like(CoreRegisterBookPdf::getFileName, sysOrg.getName() + "_" + RegisterBookType.getEnums((Integer) data.get("planType")).getText() + "_");
+//                CoreRegisterBookPdf registerBookPdf = coreRegisterBookPdfMapper.selectOne(wrapper);
+//                if (ObjectUtil.isEmpty(registerBookPdf)) {
+//                    registerBookPdf = new CoreRegisterBookPdf();
+//                    registerBookPdf.setId(IdWorker.getId());
+//                    registerBookPdf.setRegisterBookType(RegisterBookType.getEnums((Integer) data.get("planType")).getNum());
+//                    registerBookPdf.setDate(date);
+//                    registerBookPdf.setOrgId(orgId);
+//                    registerBookPdf.setOrgName(sysOrg.getShortName());
+//                    registerBookPdf.setOrgPath(sysOrg.getPath());
+//                    registerBookPdf.setFileUrl(pdfUrl);
+//                    registerBookPdf.setFileName(data.get("fileName").toString());
+//                } else {
+//                    registerBookPdf.setFileUrl(pdfUrl);
+//                    registerBookPdf.setFileName(data.get("fileName").toString());
+//                }
+//
+//                if (StringUtils.isEmpty(registerBookPdf.getFileName()) || StringUtils.isEmpty(pdfUrl)) {
+//                    throw new SystemException(ErrorMsgConstants.GENERATE_PDF_ERROR);
+//                }
+//                registerBookPdfService.saveOrUpdate(registerBookPdf);
+//            }, threadPoolTaskExecutor);
+//        }
+
+
+    }
+
+    public void buildResumptionAllDayPdf(SysOrg sysOrg, Date date) {
         //110报警:4
         //电源:5
         final List<Map<String, Object>> mapList = this.getFtlResumptionAllDay(sysOrg, date);
@@ -1757,7 +1983,7 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
                 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
                 String dateStr = sdf.format(date);
                 LambdaQueryWrapper<CoreRegisterBookPdf> wrapper = new LambdaQueryWrapper<>();
-                wrapper.eq(CoreRegisterBookPdf::getOrgId, orgId)
+                wrapper.eq(CoreRegisterBookPdf::getOrgId, sysOrg.getId())
                         .eq(CoreRegisterBookPdf::getDate, dateStr)
                         .eq(CoreRegisterBookPdf::getRegisterBookType, RegisterBookType.getEnums((Integer) data.get("planType")).getNum())
                         .like(CoreRegisterBookPdf::getFileName, sysOrg.getName() + "_" + RegisterBookType.getEnums((Integer) data.get("planType")).getText() + "_");
@@ -1767,7 +1993,7 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
                     registerBookPdf.setId(IdWorker.getId());
                     registerBookPdf.setRegisterBookType(RegisterBookType.getEnums((Integer) data.get("planType")).getNum());
                     registerBookPdf.setDate(date);
-                    registerBookPdf.setOrgId(orgId);
+                    registerBookPdf.setOrgId(sysOrg.getId());
                     registerBookPdf.setOrgName(sysOrg.getShortName());
                     registerBookPdf.setOrgPath(sysOrg.getPath());
                     registerBookPdf.setFileUrl(pdfUrl);
@@ -1783,8 +2009,6 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
                 registerBookPdfService.saveOrUpdate(registerBookPdf);
             }, threadPoolTaskExecutor);
         }
-
-
     }
 
     private List<Map<String, Object>> getFtlResumptionAllDay(SysOrg sysOrg, Date date) {