diff --git a/zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/DingtalkController.java b/zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/DingtalkController.java index 190f78f..000a228 100644 --- a/zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/DingtalkController.java +++ b/zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/DingtalkController.java @@ -1,6 +1,7 @@ package com.chinagas.modules.schsf.controller; import com.chinagas.common.core.domain.AjaxResult; +import com.chinagas.common.core.utils.StringUtils; import com.chinagas.modules.schsf.constant.DingtalkConstant; import com.chinagas.modules.schsf.exception.OApiException; import com.chinagas.modules.schsf.service.DingtalkService; @@ -32,23 +33,21 @@ public class DingtalkController { String appKey = dingtalkConstant.getAppKey(); String agentId = dingtalkConstant.getAgentId(); String corpId = dingtalkConstant.getCorpId(); + if (StringUtils.isEmpty(appKey) || StringUtils.isEmpty(agentId) || StringUtils.isEmpty(corpId)){ + log.warn("钉钉相关信息为配置,请在nacos中进行配置,appKey:{},agentId:{},corpId:{},", appKey,agentId,corpId); + return AjaxResult.success(null); + } + long timeStamp = System.currentTimeMillis(); String nonceStr = "nonceStr"; - - // 获取access token String accessToken = dingtalkService.getAccessToken(timeStamp); - System.out.println("成功获取access token: " + accessToken); - - + log.info("成功获取access token:{}", accessToken); // 获取jsapi ticket String ticket = dingtalkService.getJsapiTicket(accessToken, timeStamp); - System.out.println("成功获取jsapi ticket: " + ticket); - // 获取签名 -// String url = "http://www.dingtalk.com"; + log.info("成功获取jsapi ticket:{}", ticket); String signature = dingtalkService.getSign(ticket, nonceStr, timeStamp, url); - System.out.println("成功签名: " + signature); - + log.info("成功签名:{}", signature); HashMap objectObjectHashMap = new HashMap<>(); objectObjectHashMap.put("appKey", appKey); objectObjectHashMap.put("agentId", agentId); diff --git a/zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/McBasicCmtyController.java b/zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/McBasicCmtyController.java index ca3be07..0c75880 100644 --- a/zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/McBasicCmtyController.java +++ b/zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/McBasicCmtyController.java @@ -16,6 +16,7 @@ import com.chinagas.modules.schsf.domain.dto.CompanyDto; import com.chinagas.modules.schsf.domain.vo.McBasicCmtyVo; import com.chinagas.modules.schsf.service.IMcBasicCmtyService; import com.chinagas.modules.schsf.utils.listener.McBasicCmtyImportInspection; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -38,6 +39,7 @@ import java.util.stream.Collectors; * @author cw * @date 2024-05-22 */ +@Slf4j @RestController @RequestMapping("/mcBasicCmty") public class McBasicCmtyController extends BaseController { @@ -130,7 +132,7 @@ public class McBasicCmtyController extends BaseController { .sheet(0) // 导入数据的sheet页编号,0代表第一个sheet页,如果不填,则会导入所有sheet页的数据 .headRowNumber(4) // 列表头行数,1代表列表头有1行,第二行开始为数据行 .doReadSync(); // 开始读Excel,返回一个List集合,继续后续入库操作 - + log.info("导入基础数据-户数总条数:{}", list == null ? 0 : list.size()); // // 检验重复数据 // Map> collect = list.stream().collect(Collectors.groupingBy(o -> // o.getRegionName() + @@ -148,6 +150,7 @@ public class McBasicCmtyController extends BaseController { // if (strings.size() < list.size()) { // throw new RuntimeException("表格中存在重复的数据"); // } + long startTime = System.currentTimeMillis(); // 记录任务开始时间 // 插入数据库 if (CollectionUtils.isNotEmpty(list)) { Runnable task = () -> { @@ -159,7 +162,16 @@ public class McBasicCmtyController extends BaseController { Thread backgroundThread = new Thread(task, "后台插入任务线程"); backgroundThread.setDaemon(true); // 设置为守护线程,随主线程结束而结束 backgroundThread.start(); + try { + backgroundThread.join(); // 等待线程执行完毕,确保能准确计算运行时长 + } catch (InterruptedException e) { + Thread.currentThread().interrupt(); // 恢复中断状态 + log.error("导入基础数据-户数,等待线程执行完毕时被中断", e); + } } + long endTime = System.currentTimeMillis(); // 记录任务结束时间 + long duration = endTime - startTime; // 计算任务运行时长 + log.info("导入基础数据-户数,数据库插入任务运行时长:{}毫秒", duration); } catch (Exception e) { Throwable cause = e.getCause(); if (cause instanceof SQLIntegrityConstraintViolationException) { diff --git a/zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/enums/VisitlsStatusNodeEnums.java b/zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/enums/VisitlsStatusNodeEnums.java index 37349a6..0735270 100644 --- a/zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/enums/VisitlsStatusNodeEnums.java +++ b/zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/enums/VisitlsStatusNodeEnums.java @@ -37,7 +37,7 @@ public enum VisitlsStatusNodeEnums { "APPROVED", "发布-通过", "PENDING_LEVEL_1_AUDIT", "异动-待一级审核", "APPROVE", "待审批", - "MODIFICATION_1_AUDIT", "异动-待一级审核" + "MODIFICATION_1_AUDIT", "项目公司_分管领导" )), //异动-一级审核通过 MODIFICATION_2_AUDIT(new McVisitStatusNodeInfo( -- libgit2 0.21.2