|
|
@@ -71,20 +71,20 @@ public class ZhongcheServiceImpl implements ZhongcheService {
|
|
|
|
|
|
String executorId = UtilMap.getString(taskInfo, "executorId");//执行者id
|
|
|
|
|
|
- Map ddUserInfo = tbClient.idMapQuery(executorId, true).get(0);
|
|
|
-
|
|
|
- Map extra = UtilMap.getMap(ddUserInfo, "extra");
|
|
|
-
|
|
|
- String ddUserId = UtilMap.getString(extra, "userId");//执行人钉钉userid
|
|
|
- Map userInfoById = ddClient_contacts.getUserInfoById(ddClient.getAccessToken(),ddUserId);
|
|
|
- String ddUserName = UtilMap.getString(userInfoById, "name");//执行人钉钉姓名
|
|
|
Map ddUser = new HashMap();
|
|
|
- ddUser.put("label",ddUserName);
|
|
|
- ddUser.put("value",ddUserId);
|
|
|
- ddUser.put("emplId",ddUserId);
|
|
|
+ if (Strings.isNotBlank(executorId)){
|
|
|
+ Map ddUserInfo = tbClient.idMapQuery(executorId, true).get(0);
|
|
|
+ Map extra = UtilMap.getMap(ddUserInfo, "extra");
|
|
|
+ String ddUserId = UtilMap.getString(extra, "userId");//执行人钉钉userid
|
|
|
+ Map userInfoById = ddClient_contacts.getUserInfoById(ddClient.getAccessToken(),ddUserId);
|
|
|
+ String ddUserName = UtilMap.getString(userInfoById, "name");//执行人钉钉姓名
|
|
|
+ ddUser.put("label",ddUserName);
|
|
|
+ ddUser.put("value",ddUserId);
|
|
|
+ ddUser.put("emplId",ddUserId);
|
|
|
+ }
|
|
|
|
|
|
- long startDate = extracted(UtilMap.getString(taskInfo, "startDate"));//任务开始时间
|
|
|
- long dueDate = extracted(UtilMap.getString(taskInfo, "dueDate"));//任务截止时间
|
|
|
+ Long startDate = extracted(UtilMap.getString(taskInfo, "startDate"));//任务开始时间
|
|
|
+ Long dueDate = extracted(UtilMap.getString(taskInfo, "dueDate"));//任务截止时间
|
|
|
|
|
|
String tfsId = UtilMap.getString(taskInfo, "tfsId");//任务状态id
|
|
|
|
|
|
@@ -93,15 +93,18 @@ public class ZhongcheServiceImpl implements ZhongcheService {
|
|
|
Map tfsInfo = tbClient.queryProjectCustomFlowStatus(projectId, body).get(0);
|
|
|
String tfsName = UtilMap.getString(tfsInfo, "name");//任务状态
|
|
|
|
|
|
-
|
|
|
- //获取tb任务上级任务
|
|
|
String parentTaskId = UtilMap.getString(taskInfo, "parentTaskId");
|
|
|
- Map parentTaskInfo = tbClient.queryTaskDetail(parentTaskId, null, null).get(0);
|
|
|
- String parentTaskName = UtilMap.getString(parentTaskInfo, "content");
|
|
|
+ String parentTaskName = "";
|
|
|
+ String rootTaskName = "";
|
|
|
+ if (Strings.isNotBlank(parentTaskId)){
|
|
|
+ //获取tb任务上级任务
|
|
|
+ Map parentTaskInfo = tbClient.queryTaskDetail(parentTaskId, null, null).get(0);
|
|
|
+ parentTaskName = UtilMap.getString(parentTaskInfo, "content");
|
|
|
|
|
|
- //获取tb顶级任务
|
|
|
- Map rootTaskInfo = getRootTask(parentTaskId);
|
|
|
- String rootTaskName = UtilMap.getString(rootTaskInfo, "content");
|
|
|
+ //获取tb顶级任务
|
|
|
+ Map rootTaskInfo = getRootTask(parentTaskId);
|
|
|
+ rootTaskName = UtilMap.getString(rootTaskInfo, "content");
|
|
|
+ }
|
|
|
|
|
|
Map result = new HashMap();
|
|
|
result.put("wtls", wtls);
|
|
|
@@ -193,22 +196,27 @@ public class ZhongcheServiceImpl implements ZhongcheService {
|
|
|
}
|
|
|
|
|
|
//转换时区并返回时间戳
|
|
|
- private static long extracted(String dueDate) {
|
|
|
- // 1. 解析为 Instant(UTC 时间)
|
|
|
- Instant instant = Instant.parse(dueDate);
|
|
|
+ private static Long extracted(String dateStr) {
|
|
|
+ if (Strings.isNotBlank(dateStr)){
|
|
|
+ // 1. 解析为 Instant(UTC 时间)
|
|
|
+ Instant instant = Instant.parse(dateStr);
|
|
|
+
|
|
|
+ // 2. 转换为目标时区(Asia/Shanghai, UTC+8)
|
|
|
+ ZoneId shanghaiZone = ZoneId.of("Asia/Shanghai");
|
|
|
+ ZonedDateTime shanghaiTime = instant.atZone(shanghaiZone);
|
|
|
|
|
|
- // 2. 转换为目标时区(Asia/Shanghai, UTC+8)
|
|
|
- ZoneId shanghaiZone = ZoneId.of("Asia/Shanghai");
|
|
|
- ZonedDateTime shanghaiTime = instant.atZone(shanghaiZone);
|
|
|
+ // 3. 转换为时间戳(毫秒)
|
|
|
+ long timestamp = shanghaiTime.toInstant().toEpochMilli();
|
|
|
|
|
|
- // 3. 转换为时间戳(毫秒)
|
|
|
- long timestamp = shanghaiTime.toInstant().toEpochMilli();
|
|
|
+ // 输出结果
|
|
|
+ System.out.println("UTC 时间: " + instant);
|
|
|
+ System.out.println("上海时间: " + shanghaiTime);
|
|
|
+ System.out.println("时间戳(毫秒): " + timestamp);
|
|
|
|
|
|
- // 输出结果
|
|
|
- System.out.println("UTC 时间: " + instant);
|
|
|
- System.out.println("上海时间: " + shanghaiTime);
|
|
|
- System.out.println("时间戳(毫秒): " + timestamp);
|
|
|
+ return timestamp;
|
|
|
+ }else {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
|
|
|
- return timestamp;
|
|
|
}
|
|
|
}
|