Browse Source

企事业单位复查消息提醒

master
zhaoqifeng 3 years ago
parent
commit
8de366c903
  1. 31
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/EnterprisePatrolRemindTask.java
  2. 7
      epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/SmsTemplateConstant.java
  3. 3
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java
  4. 5
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java
  5. 14
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcEnterpriseController.java
  6. 10
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcEnterpriseService.java
  7. 44
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcEnterpriseServiceImpl.java

31
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/EnterprisePatrolRemindTask.java

@ -0,0 +1,31 @@
package com.epmet.task;
import com.epmet.commons.tools.utils.Result;
import com.epmet.feign.GovOrgOpenFeignClient;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
/**
* @Description
* @Author zhaoqifeng
* @Date 2022/9/6 17:35
*/
@Component("enterprisePatrolRemindTask")
@Slf4j
public class EnterprisePatrolRemindTask implements ITask {
@Resource
private GovOrgOpenFeignClient govOrgOpenFeignClient;
@Override
public void run(String params) {
log.info("EnterprisePatrolRemindTask定时任务正在执行,参数为:{}", params);
Result result = govOrgOpenFeignClient.sendEnterprisePatrolRemindMessage();
if (result.success()) {
log.info("EnterprisePatrolRemindTask定时任务执行成功");
} else {
log.error("EnterprisePatrolRemindTask定时任务执行失败:" + result.getMsg());
}
}
}

7
epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/SmsTemplateConstant.java

@ -57,4 +57,11 @@ public interface SmsTemplateConstant {
* ${name}给您指派了一个新的需求请服务完成后尽快反馈谢谢合作
*/
String DEMAND_SERVICE_TEM="SMS_247645013";
/**
* 模板名称: 数字社区-企事业单位复巡查消息提醒模板
* 模板CODE: SMS_251056077
* 模板内容: ${name}最近一次巡查结果不合格请在${date}再次巡查
*/
String ENTERPRISE_PATROL_TEM="SMS_251056077";
}

3
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java

@ -712,4 +712,7 @@ public interface GovOrgOpenFeignClient {
@PostMapping("/gov/org/department/notsyncdept")
Result<CheckStaffInfoResultDTO> notSyncDept(@RequestBody CheckStaffInfoFormDTO formDTO);
@PostMapping("/gov/org/enterprise/sendEnterprisePatrolRemindMessage")
Result sendEnterprisePatrolRemindMessage();
}

5
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java

@ -464,6 +464,11 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient {
return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "notSyncDept", formDTO);
}
@Override
public Result sendEnterprisePatrolRemindMessage() {
return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "sendEnterprisePatrolRemindMessage", null);
}
@Override
public Result<List<CustomerGridStaffListResultDTO>> gridStaff(CustomerGridStaffListFormDTO dto) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "gridStaffList", dto);

14
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcEnterpriseController.java

@ -301,4 +301,18 @@ public class IcEnterpriseController implements ResultDataResolver {
icEnterpriseService.execAsyncExcelImport(fileSavePath, rstData.getTaskId(),tokenDto.getCustomerId(),tokenDto.getUserId());
return new Result();
}
/**
* 复查消息提醒
*
* @Param
* @Return {@link Result}
* @Author zhaoqifeng
* @Date 2022/9/6 17:31
*/
@PostMapping("sendEnterprisePatrolRemindMessage")
public Result sendEnterprisePatrolRemindMessage() {
icEnterpriseService.sendEnterprisePatrolRemindMessage();
return new Result();
}
}

10
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcEnterpriseService.java

@ -68,4 +68,14 @@ public interface IcEnterpriseService extends BaseService<IcEnterpriseEntity> {
PageData<EnterpriseDetailDTO> list(EnterprisePageFormDTO formDTO);
void execAsyncExcelImport(Path fileSavePath, String taskId, String customerId, String userId);
/**
* 复查消息提醒
*
* @Param
* @Return
* @Author zhaoqifeng
* @Date 2022/9/6 17:30
*/
void sendEnterprisePatrolRemindMessage();
}

44
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcEnterpriseServiceImpl.java

@ -19,15 +19,14 @@ import com.epmet.commons.tools.redis.common.CustomerStaffRedis;
import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache;
import com.epmet.commons.tools.redis.common.bean.GridInfoCache;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.FileUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.SmsTemplateConstant;
import com.epmet.constants.ImportTaskConstants;
import com.epmet.dao.*;
import com.epmet.dto.SysDictDataDTO;
import com.epmet.dto.form.EnterpriseFormDTO;
import com.epmet.dto.form.EnterprisePageFormDTO;
import com.epmet.dto.form.EnterprisePatrolFormDTO;
import com.epmet.dto.form.ImportTaskCommonFormDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.entity.IcEnterpriseEntity;
import com.epmet.entity.IcEnterprisePatrolAttachmentEntity;
@ -36,6 +35,7 @@ import com.epmet.excel.EnterpriseImportExcelDTO;
import com.epmet.excel.handler.IcEnterpriseExcelImportListener;
import com.epmet.feign.EpmetAdminOpenFeignClient;
import com.epmet.feign.EpmetCommonServiceOpenFeignClient;
import com.epmet.feign.EpmetMessageOpenFeignClient;
import com.epmet.feign.OssFeignClient;
import com.epmet.service.CoverageService;
import com.epmet.service.IcEnterpriseService;
@ -55,14 +55,12 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
import javax.annotation.Resource;
import java.io.IOException;
import java.io.OutputStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.*;
import java.util.stream.Collectors;
/**
@ -90,6 +88,8 @@ public class IcEnterpriseServiceImpl extends BaseServiceImpl<IcEnterpriseDao, Ic
private CoverageService coverageService;
@Autowired
private CustomerGridDao customerGridDao;
@Resource
private EpmetMessageOpenFeignClient messageOpenFeignClient;
/**
* 企事业单位巡查新增/编辑
@ -400,6 +400,34 @@ public class IcEnterpriseServiceImpl extends BaseServiceImpl<IcEnterpriseDao, Ic
}
@Override
public void sendEnterprisePatrolRemindMessage() {
//一天后
Date afterThreeDayDate=DateUtils.calDateBaseDay(new Date(), NumConstant.ONE);
String dateId= DateUtils.format(afterThreeDayDate, DateUtils.DATE_PATTERN_YYYYMMDD);
LambdaQueryWrapper<IcEnterprisePatrolRecordEntity> wrapper = new LambdaQueryWrapper<>();
wrapper.apply("DATE_FORMAT(REVIEW_TIME,'%Y%m%d') = " + dateId);
List<IcEnterprisePatrolRecordEntity> list = enterprisePatrolRecordDao.selectList(wrapper);
if (CollectionUtils.isNotEmpty(list)) {
List<SendSmsFormDTO> smsList=new ArrayList<>();
list.forEach(item -> {
IcEnterpriseEntity enterprise = baseDao.selectById(item.getEnterpriseId());
if (null != enterprise) {
SendSmsFormDTO sms = new SendSmsFormDTO();
sms.setCustomerId(item.getCustomerId());
sms.setMobile(item.getMobile());
sms.setAliyunTemplateCode(SmsTemplateConstant.ENTERPRISE_PATROL_TEM);
Map<String, String> paramMap = new HashMap<>();
paramMap.put("name",enterprise.getPlaceOrgName());
paramMap.put("date",DateUtils.format(item.getReviewTime(),DateUtils.DATE_PATTERN));
sms.setParamMap(paramMap);
smsList.add(sms);
}
});
messageOpenFeignClient.sendMsg(smsList);
}
}
private CustomerStaffInfoCacheResult queryCurrentStaff(String customerId, String userId) {
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(customerId, userId);
if (null == staffInfo) {

Loading…
Cancel
Save