Commit 3dd273a30dda737bbc0afd4cdfd11775828e5568

Authored by YunaiV
2 parents 7d99c6db 6696bb89

Merge branch 'master' of https://gitee.com/zhijiantianya/ruoyi-vue-pro

sql/postgresql/ruoyi-vue-pro.sql
@@ -2587,7 +2587,7 @@ INSERT INTO "qrtz_job_details" ("sched_name", "job_name", "job_group", "descript @@ -2587,7 +2587,7 @@ INSERT INTO "qrtz_job_details" ("sched_name", "job_name", "job_group", "descript
2587 "is_nonconcurrent", "is_update_data", "requests_recovery", "job_data") 2587 "is_nonconcurrent", "is_update_data", "requests_recovery", "job_data")
2588 VALUES ('schedulerName', 'userSessionTimeoutJob', 'DEFAULT', NULL, 2588 VALUES ('schedulerName', 'userSessionTimeoutJob', 'DEFAULT', NULL,
2589 'cn.iocoder.yudao.framework.quartz.core.handler.JobHandlerInvoker', 'f', 't', 't', 'f', 2589 'cn.iocoder.yudao.framework.quartz.core.handler.JobHandlerInvoker', 'f', 't', 't', 'f',
2590 - E '\254\355\000\005sr\000\025org.quartz.JobDataMap\237\260\203\350\277\251\260\313\002\000\000xr\000&org.quartz.utils.StringKeyDirtyFlagMap\202\010\350\303\373\305](\002\000\001Z\000\023allowsTransientDataxr\000\035org.quartz.utils.DirtyFlagMap\023\346.\255(v\012\316\002\000\002Z\000\005dirtyL\000\003mapt\000\017Ljava/util/Map;xp\001sr\000\021java.util.HashMap\005\007\332\301\303\026`\321\003\000\002F\000\012loadFactorI\000\011thresholdxp?@\000\000\000\000\000\014w\010\000\000\000\020\000\000\000\002t\000\006JOB_IDsr\000\016java.lang.Long;\213\344\220\314\217#\337\002\000\001J\000\005valuexr\000\020java.lang.Number\206\254\225\035\013\224\340\213\002\000\000xp\000\000\000\000\000\000\000\002t\000\020JOB_HANDLER_NAMEt\000\025userSessionTimeoutJobx\000'); 2590 + '\254\355\000\005sr\000\025org.quartz.JobDataMap\237\260\203\350\277\251\260\313\002\000\000xr\000&org.quartz.utils.StringKeyDirtyFlagMap\202\010\350\303\373\305](\002\000\001Z\000\023allowsTransientDataxr\000\035org.quartz.utils.DirtyFlagMap\023\346.\255(v\012\316\002\000\002Z\000\005dirtyL\000\003mapt\000\017Ljava/util/Map;xp\001sr\000\021java.util.HashMap\005\007\332\301\303\026`\321\003\000\002F\000\012loadFactorI\000\011thresholdxp?@\000\000\000\000\000\014w\010\000\000\000\020\000\000\000\002t\000\006JOB_IDsr\000\016java.lang.Long;\213\344\220\314\217#\337\002\000\001J\000\005valuexr\000\020java.lang.Number\206\254\225\035\013\224\340\213\002\000\000xp\000\000\000\000\000\000\000\002t\000\020JOB_HANDLER_NAMEt\000\025userSessionTimeoutJobx\000');
2591 COMMIT; 2591 COMMIT;
2592 2592
2593 -- ---------------------------- 2593 -- ----------------------------
@@ -2733,7 +2733,7 @@ INSERT INTO "qrtz_triggers" ("sched_name", "trigger_name", "trigger_group", "job @@ -2733,7 +2733,7 @@ INSERT INTO "qrtz_triggers" ("sched_name", "trigger_name", "trigger_group", "job
2733 "start_time", "end_time", "calendar_name", "misfire_instr", "job_data") 2733 "start_time", "end_time", "calendar_name", "misfire_instr", "job_data")
2734 VALUES ('schedulerName', 'userSessionTimeoutJob', 'DEFAULT', 'userSessionTimeoutJob', 'DEFAULT', NULL, 1651328700000, 2734 VALUES ('schedulerName', 'userSessionTimeoutJob', 'DEFAULT', 'userSessionTimeoutJob', 'DEFAULT', NULL, 1651328700000,
2735 1651328640000, 5, 'WAITING', 'CRON', 1651328526000, 0, NULL, 0, 2735 1651328640000, 5, 'WAITING', 'CRON', 1651328526000, 0, NULL, 0,
2736 - E '\254\355\000\005sr\000\025org.quartz.JobDataMap\237\260\203\350\277\251\260\313\002\000\000xr\000&org.quartz.utils.StringKeyDirtyFlagMap\202\010\350\303\373\305](\002\000\001Z\000\023allowsTransientDataxr\000\035org.quartz.utils.DirtyFlagMap\023\346.\255(v\012\316\002\000\002Z\000\005dirtyL\000\003mapt\000\017Ljava/util/Map;xp\001sr\000\021java.util.HashMap\005\007\332\301\303\026`\321\003\000\002F\000\012loadFactorI\000\011thresholdxp?@\000\000\000\000\000\014w\010\000\000\000\020\000\000\000\003t\000\021JOB_HANDLER_PARAMpt\000\022JOB_RETRY_INTERVALsr\000\021java.lang.Integer\022\342\240\244\367\201\2078\002\000\001I\000\005valuexr\000\020java.lang.Number\206\254\225\035\013\224\340\213\002\000\000xp\000\000\007\320t\000\017JOB_RETRY_COUNTsq\000~\000\011\000\000\000\003x\000'); 2736 + '\254\355\000\005sr\000\025org.quartz.JobDataMap\237\260\203\350\277\251\260\313\002\000\000xr\000&org.quartz.utils.StringKeyDirtyFlagMap\202\010\350\303\373\305](\002\000\001Z\000\023allowsTransientDataxr\000\035org.quartz.utils.DirtyFlagMap\023\346.\255(v\012\316\002\000\002Z\000\005dirtyL\000\003mapt\000\017Ljava/util/Map;xp\001sr\000\021java.util.HashMap\005\007\332\301\303\026`\321\003\000\002F\000\012loadFactorI\000\011thresholdxp?@\000\000\000\000\000\014w\010\000\000\000\020\000\000\000\003t\000\021JOB_HANDLER_PARAMpt\000\022JOB_RETRY_INTERVALsr\000\021java.lang.Integer\022\342\240\244\367\201\2078\002\000\001I\000\005valuexr\000\020java.lang.Number\206\254\225\035\013\224\340\213\002\000\000xp\000\000\007\320t\000\017JOB_RETRY_COUNTsq\000~\000\011\000\000\000\003x\000');
2737 COMMIT; 2737 COMMIT;
2738 2738
2739 -- ---------------------------- 2739 -- ----------------------------
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/util/date/DateUtils.java
@@ -36,6 +36,9 @@ public class DateUtils { @@ -36,6 +36,9 @@ public class DateUtils {
36 * @return LocalDateTime 36 * @return LocalDateTime
37 */ 37 */
38 public static Date of(LocalDateTime date) { 38 public static Date of(LocalDateTime date) {
  39 + if (date == null) {
  40 + return null;
  41 + }
39 // 将此日期时间与时区相结合以创建 ZonedDateTime 42 // 将此日期时间与时区相结合以创建 ZonedDateTime
40 ZonedDateTime zonedDateTime = date.atZone(ZoneId.systemDefault()); 43 ZonedDateTime zonedDateTime = date.atZone(ZoneId.systemDefault());
41 // 本地时间线 LocalDateTime 到即时时间线 Instant 时间戳 44 // 本地时间线 LocalDateTime 到即时时间线 Instant 时间戳
@@ -51,6 +54,9 @@ public class DateUtils { @@ -51,6 +54,9 @@ public class DateUtils {
51 * @return LocalDateTime 54 * @return LocalDateTime
52 */ 55 */
53 public static LocalDateTime of(Date date) { 56 public static LocalDateTime of(Date date) {
  57 + if (date == null) {
  58 + return null;
  59 + }
54 // 转为时间戳 60 // 转为时间戳
55 Instant instant = date.toInstant(); 61 Instant instant = date.toInstant();
56 // UTC时间(世界协调时间,UTC + 00:00)转北京(北京,UTC + 8:00)时间 62 // UTC时间(世界协调时间,UTC + 00:00)转北京(北京,UTC + 8:00)时间
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/convert/task/BpmActivityConvert.java
1 package cn.iocoder.yudao.module.bpm.convert.task; 1 package cn.iocoder.yudao.module.bpm.convert.task;
2 2
  3 +import cn.iocoder.yudao.framework.common.util.date.DateUtils;
3 import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.activity.BpmActivityRespVO; 4 import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.activity.BpmActivityRespVO;
4 import org.flowable.engine.history.HistoricActivityInstance; 5 import org.flowable.engine.history.HistoricActivityInstance;
5 import org.mapstruct.Mapper; 6 import org.mapstruct.Mapper;
@@ -14,7 +15,7 @@ import java.util.List; @@ -14,7 +15,7 @@ import java.util.List;
14 * 15 *
15 * @author 芋道源码 16 * @author 芋道源码
16 */ 17 */
17 -@Mapper 18 +@Mapper(uses = DateUtils.class)
18 public interface BpmActivityConvert { 19 public interface BpmActivityConvert {
19 20
20 BpmActivityConvert INSTANCE = Mappers.getMapper(BpmActivityConvert.class); 21 BpmActivityConvert INSTANCE = Mappers.getMapper(BpmActivityConvert.class);
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/convert/task/BpmProcessInstanceConvert.java
1 package cn.iocoder.yudao.module.bpm.convert.task; 1 package cn.iocoder.yudao.module.bpm.convert.task;
2 2
3 import cn.iocoder.yudao.framework.common.pojo.PageResult; 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
  4 +import cn.iocoder.yudao.framework.common.util.date.DateUtils;
4 import cn.iocoder.yudao.framework.common.util.number.NumberUtils; 5 import cn.iocoder.yudao.framework.common.util.number.NumberUtils;
5 import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.instance.BpmProcessInstancePageItemRespVO; 6 import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.instance.BpmProcessInstancePageItemRespVO;
6 import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.instance.BpmProcessInstanceRespVO; 7 import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.instance.BpmProcessInstanceRespVO;
@@ -28,7 +29,7 @@ import java.util.Map; @@ -28,7 +29,7 @@ import java.util.Map;
28 * 29 *
29 * @author 芋道源码 30 * @author 芋道源码
30 */ 31 */
31 -@Mapper 32 +@Mapper(uses = DateUtils.class)
32 public interface BpmProcessInstanceConvert { 33 public interface BpmProcessInstanceConvert {
33 34
34 BpmProcessInstanceConvert INSTANCE = Mappers.getMapper(BpmProcessInstanceConvert.class); 35 BpmProcessInstanceConvert INSTANCE = Mappers.getMapper(BpmProcessInstanceConvert.class);
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/convert/task/BpmTaskConvert.java
@@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.bpm.convert.task; @@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.bpm.convert.task;
2 2
3 import cn.hutool.core.date.LocalDateTimeUtil; 3 import cn.hutool.core.date.LocalDateTimeUtil;
4 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; 4 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
  5 +import cn.iocoder.yudao.framework.common.util.date.DateUtils;
5 import cn.iocoder.yudao.framework.common.util.number.NumberUtils; 6 import cn.iocoder.yudao.framework.common.util.number.NumberUtils;
6 import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskDonePageItemRespVO; 7 import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskDonePageItemRespVO;
7 import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskRespVO; 8 import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskRespVO;
@@ -26,7 +27,7 @@ import java.util.Map; @@ -26,7 +27,7 @@ import java.util.Map;
26 * 27 *
27 * @author 芋道源码 28 * @author 芋道源码
28 */ 29 */
29 -@Mapper 30 +@Mapper(uses = DateUtils.class)
30 public interface BpmTaskConvert { 31 public interface BpmTaskConvert {
31 32
32 BpmTaskConvert INSTANCE = Mappers.getMapper(BpmTaskConvert.class); 33 BpmTaskConvert INSTANCE = Mappers.getMapper(BpmTaskConvert.class);
@@ -46,8 +47,6 @@ public interface BpmTaskConvert { @@ -46,8 +47,6 @@ public interface BpmTaskConvert {
46 } 47 }
47 48
48 @Mapping(source = "suspended", target = "suspensionState", qualifiedByName = "convertSuspendedToSuspensionState") 49 @Mapping(source = "suspended", target = "suspensionState", qualifiedByName = "convertSuspendedToSuspensionState")
49 - @Mapping(target = "claimTime", expression = "java(bean.getClaimTime()==null?null: LocalDateTime.ofInstant(bean.getClaimTime().toInstant(),ZoneId.systemDefault()))")  
50 - @Mapping(target = "createTime", expression = "java(bean.getCreateTime()==null?null:LocalDateTime.ofInstant(bean.getCreateTime().toInstant(),ZoneId.systemDefault()))")  
51 BpmTaskTodoPageItemRespVO convert1(Task bean); 50 BpmTaskTodoPageItemRespVO convert1(Task bean);
52 51
53 @Named("convertSuspendedToSuspensionState") 52 @Named("convertSuspendedToSuspensionState")
@@ -106,8 +105,6 @@ public interface BpmTaskConvert { @@ -106,8 +105,6 @@ public interface BpmTaskConvert {
106 } 105 }
107 106
108 @Mapping(source = "taskDefinitionKey", target = "definitionKey") 107 @Mapping(source = "taskDefinitionKey", target = "definitionKey")
109 - @Mapping(target = "createTime", expression = "java(bean.getCreateTime() == null ? null : LocalDateTime.ofInstant(bean.getCreateTime().toInstant(), ZoneId.systemDefault()))")  
110 - @Mapping(target = "endTime", expression = "java(bean.getEndTime() == null ? null : LocalDateTime.ofInstant(bean.getEndTime().toInstant(), ZoneId.systemDefault()))")  
111 BpmTaskRespVO convert3(HistoricTaskInstance bean); 108 BpmTaskRespVO convert3(HistoricTaskInstance bean);
112 109
113 BpmTaskRespVO.User convert3(AdminUserRespDTO bean); 110 BpmTaskRespVO.User convert3(AdminUserRespDTO bean);
yudao-module-mall/yudao-module-trade-biz/src/main/java/cn/iocoder/yudao/module/trade/convert/order/TradeOrderConvert.java
@@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil; @@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil;
4 import cn.hutool.core.util.StrUtil; 4 import cn.hutool.core.util.StrUtil;
5 import cn.iocoder.yudao.framework.common.pojo.PageResult; 5 import cn.iocoder.yudao.framework.common.pojo.PageResult;
6 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils; 6 import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
  7 +import cn.iocoder.yudao.framework.common.util.date.DateUtils;
7 import cn.iocoder.yudao.framework.dict.core.util.DictFrameworkUtils; 8 import cn.iocoder.yudao.framework.dict.core.util.DictFrameworkUtils;
8 import cn.iocoder.yudao.framework.ip.core.utils.AreaUtils; 9 import cn.iocoder.yudao.framework.ip.core.utils.AreaUtils;
9 import cn.iocoder.yudao.module.member.api.address.dto.AddressRespDTO; 10 import cn.iocoder.yudao.module.member.api.address.dto.AddressRespDTO;
@@ -44,7 +45,7 @@ import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils. @@ -44,7 +45,7 @@ import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.
44 import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMultiMap; 45 import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertMultiMap;
45 import static cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils.addTime; 46 import static cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils.addTime;
46 47
47 -@Mapper 48 +@Mapper(uses = DateUtils.class)
48 public interface TradeOrderConvert { 49 public interface TradeOrderConvert {
49 50
50 TradeOrderConvert INSTANCE = Mappers.getMapper(TradeOrderConvert.class); 51 TradeOrderConvert INSTANCE = Mappers.getMapper(TradeOrderConvert.class);
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/convert/notify/NotifyMessageConvert.java
1 package cn.iocoder.yudao.module.system.convert.notify; 1 package cn.iocoder.yudao.module.system.convert.notify;
2 2
3 import cn.iocoder.yudao.framework.common.pojo.PageResult; 3 import cn.iocoder.yudao.framework.common.pojo.PageResult;
  4 +import cn.iocoder.yudao.framework.common.util.date.DateUtils;
4 import cn.iocoder.yudao.module.system.controller.admin.notify.vo.message.NotifyMessageRespVO; 5 import cn.iocoder.yudao.module.system.controller.admin.notify.vo.message.NotifyMessageRespVO;
5 import cn.iocoder.yudao.module.system.dal.dataobject.notify.NotifyMessageDO; 6 import cn.iocoder.yudao.module.system.dal.dataobject.notify.NotifyMessageDO;
6 import org.mapstruct.Mapper; 7 import org.mapstruct.Mapper;
@@ -13,7 +14,7 @@ import java.util.List; @@ -13,7 +14,7 @@ import java.util.List;
13 * 14 *
14 * @author xrcoder 15 * @author xrcoder
15 */ 16 */
16 -@Mapper 17 +@Mapper(uses = DateUtils.class)
17 public interface NotifyMessageConvert { 18 public interface NotifyMessageConvert {
18 19
19 NotifyMessageConvert INSTANCE = Mappers.getMapper(NotifyMessageConvert.class); 20 NotifyMessageConvert INSTANCE = Mappers.getMapper(NotifyMessageConvert.class);
@@ -24,5 +25,4 @@ public interface NotifyMessageConvert { @@ -24,5 +25,4 @@ public interface NotifyMessageConvert {
24 25
25 PageResult<NotifyMessageRespVO> convertPage(PageResult<NotifyMessageDO> page); 26 PageResult<NotifyMessageRespVO> convertPage(PageResult<NotifyMessageDO> page);
26 27
27 -  
28 } 28 }
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/convert/notify/NotifyTemplateConvert.java
@@ -4,6 +4,7 @@ import java.util.*; @@ -4,6 +4,7 @@ import java.util.*;
4 4
5 import cn.iocoder.yudao.framework.common.pojo.PageResult; 5 import cn.iocoder.yudao.framework.common.pojo.PageResult;
6 6
  7 +import cn.iocoder.yudao.framework.common.util.date.DateUtils;
7 import cn.iocoder.yudao.module.system.controller.admin.notify.vo.template.NotifyTemplateCreateReqVO; 8 import cn.iocoder.yudao.module.system.controller.admin.notify.vo.template.NotifyTemplateCreateReqVO;
8 import cn.iocoder.yudao.module.system.controller.admin.notify.vo.template.NotifyTemplateRespVO; 9 import cn.iocoder.yudao.module.system.controller.admin.notify.vo.template.NotifyTemplateRespVO;
9 import cn.iocoder.yudao.module.system.controller.admin.notify.vo.template.NotifyTemplateUpdateReqVO; 10 import cn.iocoder.yudao.module.system.controller.admin.notify.vo.template.NotifyTemplateUpdateReqVO;
@@ -16,7 +17,7 @@ import cn.iocoder.yudao.module.system.dal.dataobject.notify.NotifyTemplateDO; @@ -16,7 +17,7 @@ import cn.iocoder.yudao.module.system.dal.dataobject.notify.NotifyTemplateDO;
16 * 17 *
17 * @author xrcoder 18 * @author xrcoder
18 */ 19 */
19 -@Mapper 20 +@Mapper(uses = DateUtils.class)
20 public interface NotifyTemplateConvert { 21 public interface NotifyTemplateConvert {
21 22
22 NotifyTemplateConvert INSTANCE = Mappers.getMapper(NotifyTemplateConvert.class); 23 NotifyTemplateConvert INSTANCE = Mappers.getMapper(NotifyTemplateConvert.class);