Prechádzať zdrojové kódy

短信配置 任务查找代码提交

jingyuanchao 1 rok pred
rodič
commit
9ac9686d47
12 zmenil súbory, kde vykonal 242 pridanie a 25 odobranie
  1. 21 0
      soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/reminder/vo/CoreReminderConfigurationFullVo.java
  2. 14 2
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/access/service/impl/TMonitoringRetrievalPlanServiceImpl.java
  3. 14 2
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/service/impl/CoreDrillPlanServiceImpl.java
  4. 14 2
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/service/impl/CoreEduTrainingPlanServiceImpl.java
  5. 7 7
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reminder/controller/CoreReminderConfigurationController.java
  6. 6 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reminder/mapper/CoreReminderConfigurationMapper.java
  7. 3 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reminder/service/ICoreReminderConfigurationService.java
  8. 45 2
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reminder/service/impl/CoreReminderConfigurationServiceImpl.java
  9. 2 0
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/AppPlanService.java
  10. 34 7
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/impl/AppPlanServiceImpl.java
  11. 17 2
      soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/service/impl/CoreSafecheckPlanServiceImpl.java
  12. 65 1
      soc-modules/soc-modules-core/src/main/resources/mapper/reminder/CoreReminderConfigurationMapper.xml

+ 21 - 0
soc-common/soc-common-core/src/main/java/com/xunmei/common/core/domain/reminder/vo/CoreReminderConfigurationFullVo.java

@@ -0,0 +1,21 @@
+package com.xunmei.common.core.domain.reminder.vo;
+
+import com.xunmei.common.core.domain.reminder.domain.CoreReminderConfiguration;
+import com.xunmei.common.core.domain.reminder.domain.CoreReminderConfigurationOrg;
+import com.xunmei.common.core.domain.reminder.domain.CoreReminderConfigurationRole;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.List;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CoreReminderConfigurationFullVo extends CoreReminderConfiguration {
+
+
+    private List<CoreReminderConfigurationRole> roleList;
+
+    private List<CoreReminderConfigurationOrg> orgList;
+
+
+}

+ 14 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/access/service/impl/TMonitoringRetrievalPlanServiceImpl.java

@@ -17,6 +17,7 @@ import com.xunmei.common.core.constant.ErrorMsgConstants;
 import com.xunmei.common.core.constant.SecurityConstants;
 import com.xunmei.common.core.domain.registerbook.domain.CoreRegisterBookPdf;
 import com.xunmei.common.core.domain.retrieval.domain.CoreMonitoringRetrievalTask;
+import com.xunmei.common.core.enums.BusinessPlanType;
 import com.xunmei.common.core.enums.OrgTypeEnum;
 import com.xunmei.common.core.enums.PlanStatus;
 import com.xunmei.common.core.enums.RegisterBookType;
@@ -48,7 +49,6 @@ import com.xunmei.core.retrieval.service.ICoreMonitoringRetrievalTaskBuilderServ
 import com.xunmei.core.retrieval.service.ICoreMonitoringRetrievalTaskService;
 import com.xunmei.system.api.*;
 import com.xunmei.system.api.domain.*;
-import com.xunmei.common.core.enums.BusinessPlanType;
 import com.xunmei.system.api.function.RemoteCallHandlerExecutor;
 import com.xunmei.system.api.vo.SysOrgVO;
 import io.netty.util.internal.StringUtil;
@@ -1758,6 +1758,18 @@ public class TMonitoringRetrievalPlanServiceImpl extends ServiceImpl<TMonitoring
 
     @Override
     public List<Map<String,String>> queryPlanBySendModule() {
-        return null;
+        LambdaQueryWrapper<TMonitoringRetrievalPlan> wrapper=new LambdaQueryWrapper<>();
+        wrapper.eq(TMonitoringRetrievalPlan::getPlanStatus,DrillPlanStatus.USING.getCode());
+        wrapper.eq(TMonitoringRetrievalPlan::getIsDeleted,0);
+        //wrapper.eq(TMonitoringRetrievalPlan::getStandard,1);
+        List<TMonitoringRetrievalPlan> planList = baseMapper.selectList(wrapper);
+        List<Map<String, String>> list = new ArrayList<Map<String, String>>();
+        for (TMonitoringRetrievalPlan plan : planList) {
+            Map<String, String> map = new HashMap<String, String>();
+            map.put("planId", plan.getId().toString());
+            map.put("planName", plan.getPlanName());
+            list.add(map);
+        }
+        return list;
     }
 }

+ 14 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/drill/service/impl/CoreDrillPlanServiceImpl.java

@@ -27,6 +27,7 @@ import com.xunmei.common.core.domain.drill.vo.CoreDrillPlanDataVo;
 import com.xunmei.common.core.domain.drill.vo.CoreDrillPlanDetailVo;
 import com.xunmei.common.core.domain.drill.vo.CoreDrillPlanPageVo;
 import com.xunmei.common.core.domain.drill.vo.CoreDrillPlanRoleVo;
+import com.xunmei.common.core.enums.BusinessPlanType;
 import com.xunmei.common.core.enums.OrgTypeEnum;
 import com.xunmei.common.core.enums.drill.DrillDoStatus;
 import com.xunmei.common.core.enums.drill.DrillPlanCycleEnum;
@@ -52,7 +53,6 @@ import com.xunmei.core.drill.service.ICoreDrillTaskService;
 import com.xunmei.core.registerbook.service.ICoreRegisterBookPdfService;
 import com.xunmei.system.api.RemoteOrgService;
 import com.xunmei.system.api.domain.SysOrg;
-import com.xunmei.common.core.enums.BusinessPlanType;
 import com.xunmei.system.api.function.RemoteCallHandlerExecutor;
 import com.xunmei.system.api.vo.SysOrgVO;
 import lombok.extern.slf4j.Slf4j;
@@ -1145,6 +1145,18 @@ public class CoreDrillPlanServiceImpl extends ServiceImpl<CoreDrillPlanMapper, C
 
     @Override
     public List<Map<String,String>> queryPlanBySendModule() {
-        return null;
+        LambdaQueryWrapper<CoreDrillPlan> wrapper=new LambdaQueryWrapper<>();
+        wrapper.eq(CoreDrillPlan::getPlanStatus,DrillPlanStatus.USING.getCode());
+        wrapper.eq(CoreDrillPlan::getDeleted,0);
+        wrapper.eq(CoreDrillPlan::getStandard,1);
+        List<CoreDrillPlan> eduTrainingPlans = baseMapper.selectList(wrapper);
+        List<Map<String, String>> list = new ArrayList<Map<String, String>>();
+        for (CoreDrillPlan plan : eduTrainingPlans) {
+            Map<String, String> map = new HashMap<String, String>();
+            map.put("planId", plan.getId().toString());
+            map.put("planName", plan.getPlanName());
+            list.add(map);
+        }
+        return list;
     }
 }

+ 14 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/edu/service/impl/CoreEduTrainingPlanServiceImpl.java

@@ -29,6 +29,7 @@ import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingPlanDataVo;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingPlanDetailVo;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingPlanPageVo;
 import com.xunmei.common.core.domain.edu.vo.CoreEduTrainingPlanRoleVo;
+import com.xunmei.common.core.enums.BusinessPlanType;
 import com.xunmei.common.core.enums.OrgTypeEnum;
 import com.xunmei.common.core.enums.drill.DrillPlanCycleEnum;
 import com.xunmei.common.core.enums.drill.DrillPlanStatus;
@@ -56,7 +57,6 @@ import com.xunmei.core.edu.service.ICoreEduTrainingTaskService;
 import com.xunmei.core.registerbook.service.ICoreRegisterBookPdfService;
 import com.xunmei.system.api.RemoteOrgService;
 import com.xunmei.system.api.domain.SysOrg;
-import com.xunmei.common.core.enums.BusinessPlanType;
 import com.xunmei.system.api.function.RemoteCallHandlerExecutor;
 import com.xunmei.system.api.vo.SysOrgVO;
 import lombok.extern.slf4j.Slf4j;
@@ -1117,6 +1117,18 @@ public class CoreEduTrainingPlanServiceImpl extends ServiceImpl<CoreEduTrainingP
 
     @Override
     public List<Map<String,String>> queryPlanBySendModule() {
-        return null;
+        LambdaQueryWrapper<CoreEduTrainingPlan> wrapper=new LambdaQueryWrapper<>();
+        wrapper.eq(CoreEduTrainingPlan::getPlanStatus,DrillPlanStatus.USING.getCode());
+        wrapper.eq(CoreEduTrainingPlan::getDeleted,0);
+        wrapper.eq(CoreEduTrainingPlan::getStandard,1);
+        List<CoreEduTrainingPlan> eduTrainingPlans = baseMapper.selectList(wrapper);
+        List<Map<String, String>> list = new ArrayList<Map<String, String>>();
+        for (CoreEduTrainingPlan plan : eduTrainingPlans) {
+            Map<String, String> map = new HashMap<String, String>();
+            map.put("planId", plan.getId().toString());
+            map.put("planName", plan.getPlanName());
+            list.add(map);
+        }
+        return list;
     }
 }

+ 7 - 7
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reminder/controller/CoreReminderConfigurationController.java

@@ -14,8 +14,6 @@ import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
 import javax.validation.constraints.NotNull;
-import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -70,11 +68,6 @@ public class CoreReminderConfigurationController {
     @GetMapping("queryPlanBySendModule/{sendModule}")
     public AjaxResult queryPlanBySendModule(@PathVariable("sendModule") @NotNull String sendModule) {
         List<Map<String, String>> list = configurationService.queryPlanBySendModule(sendModule);
-        list = new ArrayList<>();
-        HashMap<String, String> planMap = new HashMap<>();
-        list.add(planMap);
-        planMap.put("planId", "1734056336692040245");
-        planMap.put("planName", "计划名称");
         return AjaxResult.success(list);
     }
 
@@ -85,5 +78,12 @@ public class CoreReminderConfigurationController {
         return AjaxResult.success(list);
     }
 
+    @ApiOperation(value = "根据配置查找对应的任务,从而生成短息提醒任务")
+    @GetMapping("findTask")
+    public AjaxResult findTask() {
+        configurationService.findTask();
+        return AjaxResult.success();
+    }
+
 }
 

+ 6 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reminder/mapper/CoreReminderConfigurationMapper.java

@@ -4,9 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.xunmei.common.core.domain.reminder.domain.CoreReminderConfiguration;
 import com.xunmei.common.core.domain.reminder.dto.ReminderConfigPageDto;
+import com.xunmei.common.core.domain.reminder.vo.CoreReminderConfigurationFullVo;
 import com.xunmei.common.core.domain.reminder.vo.ReminderConfigPageVo;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * <p>
  *  Mapper 接口
@@ -18,4 +21,7 @@ import org.apache.ibatis.annotations.Param;
 public interface CoreReminderConfigurationMapper extends BaseMapper<CoreReminderConfiguration> {
 
     Page<ReminderConfigPageVo> selectPageData(Page<ReminderConfigPageVo> page, @Param("req") ReminderConfigPageDto req);
+
+    List<CoreReminderConfigurationFullVo> findAllFullData();
+
 }

+ 3 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reminder/service/ICoreReminderConfigurationService.java

@@ -31,4 +31,7 @@ public interface ICoreReminderConfigurationService extends IService<CoreReminder
     List<Map<String,String>> queryPlanBySendModule(String sendModule);
 
     List<Map<String, String>> calculateTimeUnit(String sendModule, Long planId);
+
+    void findTask();
+
 }

+ 45 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/reminder/service/impl/CoreReminderConfigurationServiceImpl.java

@@ -12,11 +12,13 @@ import com.xunmei.common.core.domain.reminder.domain.CoreReminderConfigurationOr
 import com.xunmei.common.core.domain.reminder.domain.CoreReminderConfigurationRole;
 import com.xunmei.common.core.domain.reminder.dto.ReminderConfigEditDto;
 import com.xunmei.common.core.domain.reminder.dto.ReminderConfigPageDto;
+import com.xunmei.common.core.domain.reminder.vo.CoreReminderConfigurationFullVo;
 import com.xunmei.common.core.domain.reminder.vo.ReminderConfigDetailVo;
 import com.xunmei.common.core.domain.reminder.vo.ReminderConfigPageVo;
 import com.xunmei.common.core.enums.BusinessPlanType;
 import com.xunmei.common.core.enums.CycleCommonEnum;
 import com.xunmei.common.core.enums.TimeUnitEnum;
+import com.xunmei.common.core.thread.ThreadPoolConfig;
 import com.xunmei.common.core.utils.DateUtils;
 import com.xunmei.common.core.vo.IdNameVo;
 import com.xunmei.common.core.web.page.TableDataInfo;
@@ -39,6 +41,8 @@ import com.xunmei.system.api.RemoteRoleService;
 import com.xunmei.system.api.domain.SysOrg;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -48,6 +52,7 @@ import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.CompletableFuture;
 import java.util.stream.Collectors;
 
 /**
@@ -80,7 +85,9 @@ public class CoreReminderConfigurationServiceImpl extends ServiceImpl<CoreRemind
     private CoreReminderConfigurationOrgMapper coreReminderConfigurationOrgMapper;
     @Autowired
     private ICoreReminderScheduleService reminderScheduleService;
-
+    @Autowired
+    @Qualifier(ThreadPoolConfig.SOC_EXECUTOR)
+    private ThreadPoolTaskExecutor threadPoolTaskExecutor;
 
     @Override
     @Transactional(rollbackFor = Exception.class)
@@ -133,7 +140,7 @@ public class CoreReminderConfigurationServiceImpl extends ServiceImpl<CoreRemind
         if (sysOrg == null) {
             throw new RuntimeException("未找到机构");
         }
-        if (req.getCheckSub()){
+        if (req.getCheckSub()) {
             req.setOrgPath(sysOrg.getPath());
         }
 
@@ -218,6 +225,42 @@ public class CoreReminderConfigurationServiceImpl extends ServiceImpl<CoreRemind
                 execNums);
     }
 
+    @Override
+    public void findTask() {
+
+        List<CoreReminderConfigurationFullVo> configList = baseMapper.findAllFullData();
+
+
+        Map<String, List<CoreReminderConfigurationFullVo>> listMap = configList.stream().collect(Collectors.groupingBy(CoreReminderConfigurationFullVo::getSendModule));
+        for (Map.Entry<String, List<CoreReminderConfigurationFullVo>> entry : listMap.entrySet()) {
+            BusinessPlanType type = BusinessPlanType.getBusinessPlanType(entry.getKey());
+            List<CoreReminderConfigurationFullVo> configurationList = entry.getValue();
+            CompletableFuture.runAsync(() -> {
+                switch (type) {
+                    case RESUMPTION:
+                        resumptionPlanService.findTaskAndBuildReminderSchedule(configurationList);
+                        break;
+                    case SAFETY_CHECK:
+                        break;
+                    case EDU_TRAINING:
+                        break;
+
+                    case DRILL:
+                        break;
+
+                    case MONITORING_RETRIEVAL:
+                        break;
+
+                    default:
+                        throw new RuntimeException("不支持的业务类型!");
+                }
+
+
+            }, threadPoolTaskExecutor);
+        }
+
+    }
+
     private DateRange getPlanDateRange(String sendModule, Long planId) {
         BusinessPlanType type = BusinessPlanType.getBusinessPlanType(sendModule);
         switch (type) {

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

@@ -2,6 +2,7 @@ package com.xunmei.core.resumption.service;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.xunmei.common.core.domain.reminder.vo.CoreReminderConfigurationFullVo;
 import com.xunmei.core.resumption.domain.AppPlan;
 import com.xunmei.core.resumption.dto.DistributeDto;
 import com.xunmei.core.resumption.dto.plan.CoreResumptionPlanPageDto;
@@ -116,4 +117,5 @@ public interface AppPlanService extends IService<AppPlan> {
 
     List<Map<String,String>> queryPlanBySendModule();
 
+    void findTaskAndBuildReminderSchedule(List<CoreReminderConfigurationFullVo> configurationList);
 }

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

@@ -16,6 +16,8 @@ import com.xunmei.common.core.constant.*;
 import com.xunmei.common.core.domain.DateRange;
 import com.xunmei.common.core.domain.R;
 import com.xunmei.common.core.domain.registerbook.domain.CoreRegisterBookPdf;
+import com.xunmei.common.core.domain.reminder.domain.CoreReminderConfiguration;
+import com.xunmei.common.core.domain.reminder.vo.CoreReminderConfigurationFullVo;
 import com.xunmei.common.core.enums.*;
 import com.xunmei.common.core.enums.resumption.ResumptionTaskStatus;
 import com.xunmei.common.core.exception.ServiceException;
@@ -51,7 +53,6 @@ import com.xunmei.system.api.domain.ResumptionPdf;
 import com.xunmei.system.api.domain.SysDictData;
 import com.xunmei.system.api.domain.SysOrg;
 import com.xunmei.system.api.function.RemoteCallHandlerExecutor;
-import com.xunmei.system.api.model.LoginUser;
 import com.xunmei.system.api.vo.QuestionPdfVo;
 import com.xunmei.system.api.vo.SysOrgVO;
 import lombok.extern.slf4j.Slf4j;
@@ -1558,9 +1559,9 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
         if (OrgTypeEnum.SHEGN_LIAN_SHE.equals(orgTypeEnum) || OrgTypeEnum.BAN_SHI_CHU.equals(orgTypeEnum) || OrgTypeEnum.DIQU_HANG_SHE.equals(orgTypeEnum)) {
             throw new ServiceException("orgIdList中传递机构信息错误!与计划信息不匹配");
         }
-        if (OrgTypeEnum.HANG_SHE.equals(orgTypeEnum)){
+        if (OrgTypeEnum.HANG_SHE.equals(orgTypeEnum)) {
             run(() -> resumptionTaskBusiness.buildTask(null, Lists.newArrayList(appPlan), new Date()), threadPoolTaskExecutor);
-        }else {
+        } else {
             run(() -> resumptionTaskBusiness.buildTask(orgIdList, Lists.newArrayList(appPlan), new Date()), threadPoolTaskExecutor);
         }
 
@@ -1633,10 +1634,36 @@ public class AppPlanServiceImpl extends ServiceImpl<AppPlanMapper, AppPlan> impl
     }
 
     @Override
-    public List<Map<String,String>> queryPlanBySendModule() {
-        LoginUser loginUser = SecurityUtils.getLoginUser();
-        Long orgId = loginUser.getOrgId();
+    public List<Map<String, String>> queryPlanBySendModule() {
+        LambdaQueryWrapper<AppPlan> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(AppPlan::getPlanStatus, PlanStatus.USING.getCode());
+        wrapper.eq(AppPlan::getDeleted, 0);
+        wrapper.eq(AppPlan::getParentId, -1);
+        wrapper.in(AppPlan::getPlanOfOrgType, OrgTypeEnum.SHEGN_LIAN_SHE.getCode(), OrgTypeEnum.HANG_SHE.getCode());
+        wrapper.select(AppPlan::getId, AppPlan::getPlanName);
+        List<AppPlan> appPlans = baseMapper.selectList(wrapper);
+        List<Map<String, String>> list = new ArrayList<Map<String, String>>();
+        for (AppPlan appPlan : appPlans) {
+            Map<String, String> map = new HashMap<String, String>();
+            map.put("planId", appPlan.getId().toString());
+            map.put("planName", appPlan.getPlanName());
+            list.add(map);
+        }
+
+        return list;
+    }
+
+    @Override
+    public void findTaskAndBuildReminderSchedule(List<CoreReminderConfigurationFullVo> configurationList) {
+        for (CoreReminderConfiguration configuration : configurationList) {
+
+            Long planId = configuration.getPlanId();
+            AppPlan appPlan = getById(planId);
+
+
+
+
+        }
 
-        return null;
     }
 }

+ 17 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/safetyCheck/service/impl/CoreSafecheckPlanServiceImpl.java

@@ -19,6 +19,7 @@ import com.xunmei.common.core.constant.ErrorMsgConstants;
 import com.xunmei.common.core.constant.SecurityConstants;
 import com.xunmei.common.core.domain.DateRange;
 import com.xunmei.common.core.domain.registerbook.domain.CoreRegisterBookPdf;
+import com.xunmei.common.core.enums.BusinessPlanType;
 import com.xunmei.common.core.enums.OrgTypeEnum;
 import com.xunmei.common.core.enums.PlanStatus;
 import com.xunmei.common.core.enums.RegisterBookType;
@@ -54,7 +55,6 @@ import com.xunmei.system.api.RemoteOrgService;
 import com.xunmei.system.api.domain.CheckDataVo;
 import com.xunmei.system.api.domain.SafeCheckTaskRegisterBookVo;
 import com.xunmei.system.api.domain.SysOrg;
-import com.xunmei.common.core.enums.BusinessPlanType;
 import com.xunmei.system.api.function.RemoteCallHandlerExecutor;
 import com.xunmei.system.api.vo.SysOrgVO;
 import io.netty.util.internal.StringUtil;
@@ -1287,6 +1287,21 @@ public class CoreSafecheckPlanServiceImpl extends ServiceImpl<CoreSafecheckPlanM
 
     @Override
     public List<Map<String,String>> queryPlanBySendModule() {
-        return null;
+        LambdaQueryWrapper<CoreSafecheckPlan> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(CoreSafecheckPlan::getPlanStatus, PlanStatus.USING.getCode());
+        wrapper.eq(CoreSafecheckPlan::getIsDeleted, 0);
+        wrapper.eq(CoreSafecheckPlan::getParentId, -1);
+        wrapper.in(CoreSafecheckPlan::getPlanOfOrgType, OrgTypeEnum.SHEGN_LIAN_SHE.getCode(), OrgTypeEnum.HANG_SHE.getCode());
+        wrapper.select(CoreSafecheckPlan::getId, CoreSafecheckPlan::getPlanName);
+        List<CoreSafecheckPlan> appPlans = baseMapper.selectList(wrapper);
+        List<Map<String, String>> list = new ArrayList<Map<String, String>>();
+        for (CoreSafecheckPlan plan : appPlans) {
+            Map<String, String> map = new HashMap<String, String>();
+            map.put("planId", plan.getId().toString());
+            map.put("planName", plan.getPlanName());
+            list.add(map);
+        }
+
+        return list;
     }
 }

+ 65 - 1
soc-modules/soc-modules-core/src/main/resources/mapper/reminder/CoreReminderConfigurationMapper.xml

@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.xunmei.core.reminder.mapper.CoreReminderConfigurationMapper">
-
     <select id="selectPageData" resultType="com.xunmei.common.core.domain.reminder.vo.ReminderConfigPageVo">
         select *
         from core_reminder_configuration c
@@ -31,4 +30,69 @@
             </if>-->
         </where>
     </select>
+    <!-- config_id         bigint                  not null comment '配置ID'
+     primary key,
+     reminder_type     int                     not null comment '提醒类型(0:逾期提醒、1:临期提醒)',
+     send_module       varchar(50)             not null comment '发送模块(五大计划之一)',
+     plan_id           bigint       default 1  not null comment '计划id',
+     plan_name         varchar(125) default '' not null comment '计划名称',
+     compare_time_type int                     null comment '对比时间类型,0:计划开始时间,1:计划结束时间',
+     time_unit         varchar(25)             null comment '时间单位',
+     reminder_time     int                     null comment '提醒时间',
+     enabled           tinyint(1)   default 1  not null comment '是否启用该提醒配置'-->
+
+    <resultMap id="configurationFullData"
+               type="com.xunmei.common.core.domain.reminder.vo.CoreReminderConfigurationFullVo">
+        <result property="configId" column="config_id"/>
+
+        <result property="reminderType" column="reminder_type"/>
+
+        <result property="sendModule" column="send_module"/>
+
+        <result property="planId" column="plan_id"/>
+
+        <result property="planName" column="plan_name"/>
+
+        <result property="compareTimeType" column="compare_time_type"/>
+
+        <result property="timeUnit" column="time_unit"/>
+
+        <result property="reminderTime" column="reminder_time"/>
+
+        <result property="enabled" column="enabled"/>
+
+        <collection property="orgList"
+                    ofType="com.xunmei.common.core.domain.reminder.domain.CoreReminderConfigurationOrg"
+                    autoMapping="true"
+                    select="com.xunmei.core.reminder.mapper.CoreReminderConfigurationOrgMapper.selectByConfigId"
+                    column="config_id">
+            <result property="configId" column="config_id"/>
+
+            <result property="targetOrgId" column="target_org_id"/>
+
+            <result property="targetOrgPath" column="target_org_path"/>
+
+            <result property="targetOrgName" column="target_org_name"/>
+
+            <result property="targetOrgType" column="target_org_type"/>
+        </collection>
+        <collection property="roleList" ofType="com.xunmei.common.core.domain.reminder.domain.CoreReminderConfigurationRole"
+                    autoMapping="true"
+                    select="com.xunmei.core.reminder.mapper.CoreReminderConfigurationRoleMapper.selectByConfigId"
+                    column="config_id">
+            <result property="configId" column="config_id"/>
+
+            <result property="targetRoleId" column="target_role_id"/>
+
+            <result property="targetRoleName" column="target_role_name"/>
+
+        </collection>
+
+    </resultMap>
+
+    <select id="findAllFullData" resultMap="configurationFullData">
+        select *
+        from core_reminder_configuration
+        where enabled = true
+    </select>
 </mapper>