From c6a071b63c06c239e8d5b9306a04dae1a29d40ab Mon Sep 17 00:00:00 2001 From: bupengxiang Date: Mon, 15 May 2023 16:06:52 +0800 Subject: [PATCH] =?UTF-8?q?[=E4=BF=AE=E6=94=B9]=20=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E5=8E=86=E5=8F=B2=E7=9A=84=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task/TaskController.java | 39 ++++++++++++++---- .../entity/BusProcessEntrust.java | 2 + .../task/TaskController$1.class | Bin 1922 -> 1922 bytes .../task/TaskController.class | Bin 13799 -> 14440 bytes 4 files changed, 34 insertions(+), 7 deletions(-) diff --git a/report-activity/src/main/java/com/adc/da/wkflow/business_activiti/task/TaskController.java b/report-activity/src/main/java/com/adc/da/wkflow/business_activiti/task/TaskController.java index 00bd54d..60a0293 100644 --- a/report-activity/src/main/java/com/adc/da/wkflow/business_activiti/task/TaskController.java +++ b/report-activity/src/main/java/com/adc/da/wkflow/business_activiti/task/TaskController.java @@ -33,6 +33,7 @@ import java.text.SimpleDateFormat; import java.time.Duration; import java.time.LocalDateTime; import java.time.ZoneId; +import java.time.format.DateTimeFormatter; import java.util.*; @Api(tags = "流程明细管理") @@ -76,7 +77,8 @@ public class TaskController { List> list = ActivitiTools.turnHistoricTaskInstance(list2); List> relistMap = new ArrayList<>(); - for (Map historicTaskInstance : list) { + for (int j = 0; j < list.size(); j++) { + Map historicTaskInstance = list.get(j); // 获取办理的历史信息 if(historicTaskInstance.get("assignee") == null) { String taskId = historicTaskInstance.get("id").toString(); @@ -120,19 +122,42 @@ public class TaskController { map.put("prcType",one.getPrcType()); map.put("prcName",one.getPrcName()); map.put("prcNum",one.getPrcNum()); - Date createTime = busProcessEntrust.getCreateTime(); + Date createTime1 = busProcessEntrust.getCreateTime(); + LocalDateTime dt = LocalDateTime.ofInstant(busProcessEntrust.getCreateTime().toInstant(), ZoneId.systemDefault()); + String createTime = dt.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); map.put("createTime",createTime); map.put("approvalOpinion",busProcessEntrust.getApprovalOpinion()); if (i+1 != EOS.size()){ BusProcessEntrust busProcessEntrust1 = EOS.get(i + 1); - Date endTime = busProcessEntrust1.getCreateTime(); + LocalDateTime en = + LocalDateTime.ofInstant(busProcessEntrust1.getCreateTime().toInstant(), ZoneId.systemDefault()); + String endTime = en.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); map.put("endTime",endTime); - //long approvalTime = disposeApprovalTime(createTime,endTime); - LocalDateTime startDateTime = LocalDateTime.ofInstant(createTime.toInstant(), ZoneId.systemDefault()); - LocalDateTime endDateTime = LocalDateTime.ofInstant(endTime.toInstant(), ZoneId.systemDefault()); + LocalDateTime startDateTime = + LocalDateTime.ofInstant(busProcessEntrust1.getCreateTime().toInstant(), + ZoneId.systemDefault()); + LocalDateTime endDateTime = LocalDateTime.ofInstant(busProcessEntrust1.getCreateTime().toInstant(), ZoneId.systemDefault()); long days = Duration.between(startDateTime.toLocalDate().atStartOfDay(), endDateTime.toLocalDate().atStartOfDay()).toDays() + 1; - historicTaskInstance.put("approvalTime",days + "天"); + map.put("approvalTime",days + "天"); }else { + if (j+1 stringObjectMap = list.get(j + 1); + Object create = stringObjectMap.get("createTime"); + if(create!=null){ + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Date endTime = sdf.parse((String)create); + LocalDateTime en = + LocalDateTime.ofInstant(endTime.toInstant(), ZoneId.systemDefault()); + String endTimestr = en.format(DateTimeFormatter.ofPattern("yyyy-MM-dd " + + "HH:mm:ss")); + map.put("endTime",endTimestr); + LocalDateTime startDateTime = LocalDateTime.ofInstant(createTime1.toInstant() + , ZoneId.systemDefault()); + LocalDateTime endDateTime = LocalDateTime.ofInstant(endTime.toInstant(), ZoneId.systemDefault()); + long days = Duration.between(startDateTime.toLocalDate().atStartOfDay(), endDateTime.toLocalDate().atStartOfDay()).toDays() + 1; + map.put("approvalTime",days + "天"); + } + } QueryWrapper datasQueryWrapper = new QueryWrapper<>(); datasQueryWrapper.lambda().eq(BusProcessApprove::getTaskId,historicTaskInstance.get("id")); List approveList = iBusProcessApproveService.list(datasQueryWrapper); diff --git a/report-activity/src/main/java/com/adc/da/wkflow/business_main/entity/BusProcessEntrust.java b/report-activity/src/main/java/com/adc/da/wkflow/business_main/entity/BusProcessEntrust.java index ca1332f..60df3bb 100644 --- a/report-activity/src/main/java/com/adc/da/wkflow/business_main/entity/BusProcessEntrust.java +++ b/report-activity/src/main/java/com/adc/da/wkflow/business_main/entity/BusProcessEntrust.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -54,6 +55,7 @@ public class BusProcessEntrust implements Serializable { private String prcName; @TableField("CREATE_TIME") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") private Date createTime = new Date(System.currentTimeMillis());; @TableField("VALID_FLAG") diff --git a/report-activity/target/classes/com/adc/da/wkflow/business_activiti/task/TaskController$1.class b/report-activity/target/classes/com/adc/da/wkflow/business_activiti/task/TaskController$1.class index 0eef976c81da82a3cd4657f2358d8ff721c9a774..766bd724cf32243431a93b413a8e1c647a52f980 100644 GIT binary patch delta 41 wcmZqTZ{pwZoR#tV7;ZDjGTdR%WVp*uoGH6605#VRMF0Q* delta 41 wcmZqTZ{pwZoRx9kuoGH6604UlGmH+?% diff --git a/report-activity/target/classes/com/adc/da/wkflow/business_activiti/task/TaskController.class b/report-activity/target/classes/com/adc/da/wkflow/business_activiti/task/TaskController.class index c3e957140c5fa1166fefac056f1f27319700e071..06d76aeca5ebaeb9252a25682c0d853b4429e035 100644 GIT binary patch literal 14440 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 literal 13799 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