Browse Source

Merge remote-tracking branch 'remotes/origin/dev' into 市北测试

release
jianjun 3 years ago
parent
commit
193b6b03c0
  1. 7
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/EpmetRequestHolder.java
  2. 9
      epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/EpmetCommonServiceOpenFeignClient.java
  3. 16
      epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/fallback/EpmetCommonServiceOpenFeignClientFallback.java
  4. 10
      epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/task/WorkDayScheduleTask.java
  5. 5
      epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/utils/ShowApiUtil.java
  6. 2
      epmet-module/epmet-common-service/common-service-server/src/main/resources/db/migration/V0.0.14__add_areacode_flag.sql
  7. 6
      epmet-module/epmet-job/epmet-job-server/pom.xml
  8. 17
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/WorkDayInitService.java
  9. 24
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/WorkDayInitServiceImpl.java
  10. 39
      epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/WorkDayInitTask.java
  11. 1
      epmet-module/epmet-job/epmet-job-server/src/main/resources/db/migration/V0.0.2__add_workdayinit_job.sql
  12. 6
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportBuildingInfoListener.java
  13. 8
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportHouseInfoListener.java
  14. 4
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportNeighborHoodInfoListener.java
  15. 3
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/controller/ResiGroupMemberController.java
  16. 25
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcNatServiceImpl.java

7
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/EpmetRequestHolder.java

@ -1,6 +1,7 @@
package com.epmet.commons.tools.utils;
import com.alibaba.ttl.TransmittableThreadLocal;
import com.epmet.commons.tools.constant.StrConstant;
import org.apache.commons.lang3.StringUtils;
import java.util.HashMap;
@ -46,7 +47,11 @@ public class EpmetRequestHolder {
* @return
*/
public static String getHeader(String headerName) {
return requestHeaderTtl.get().get(headerName.toLowerCase());
Map<String, String> stringStringMap = requestHeaderTtl.get();
if (stringStringMap == null){
return null;
}
return stringStringMap.get(headerName.toLowerCase());
}
/**

9
epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/EpmetCommonServiceOpenFeignClient.java

@ -7,6 +7,7 @@ import com.epmet.dto.result.*;
import com.epmet.feign.fallback.EpmetCommonServiceOpenFeignClientFallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@ -140,4 +141,12 @@ public interface EpmetCommonServiceOpenFeignClient {
*/
@RequestMapping("/commonservice/import-task/finish")
Result finishImportTask(@RequestBody ImportTaskCommonFormDTO input);
/**
* desc:初始化工作日
* @param dimDateId
* @return
*/
@PostMapping("/commonservice/holiday/initWorkDay/{day}")
Result workDayInit(@PathVariable("day") String dimDateId);
}

16
epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/fallback/EpmetCommonServiceOpenFeignClientFallback.java

@ -3,20 +3,9 @@ package com.epmet.feign.fallback;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.form.CostDayFormDTO;
import com.epmet.dto.form.ExternalAppAuthFormDTO;
import com.epmet.dto.form.GetJwtAccessTokenFormDTO;
import com.epmet.dto.form.WorkDayFormDTO;
import com.epmet.dto.result.AppIdInfoResultDTO;
import com.epmet.dto.form.WorkMinuteFormDTO;
import com.epmet.dto.result.CostDayResultDTO;
import com.epmet.dto.result.AppIdInfoResultDTO;
import com.epmet.dto.result.ExternalAppAuthResultDTO;
import com.epmet.dto.result.WorkDayResultDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.feign.EpmetCommonServiceOpenFeignClient;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
@ -121,4 +110,9 @@ public class EpmetCommonServiceOpenFeignClientFallback implements EpmetCommonSer
public Result finishImportTask(ImportTaskCommonFormDTO input) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_COMMON_SERVICE, "finishImportTask", input);
}
@Override
public Result workDayInit(String dimDateId) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_COMMON_SERVICE, "workDayInit", dimDateId);
}
}

10
epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/task/WorkDayScheduleTask.java

@ -1,10 +1,10 @@
package com.epmet.task;
import com.epmet.service.ShowApiService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
@ -15,19 +15,21 @@ import java.util.Date;
* @Author yinzuomei
* @Date 2020/5/12 0:01
*/
@Slf4j
@Configuration //1.主要用于标记配置类,兼备Component的效果。
@EnableScheduling // 2.开启定时任务
@EnableScheduling// 2.开启定时任务
@Deprecated //由job统一调度
public class WorkDayScheduleTask {
@Autowired
private ShowApiService showApiService;
//每天晚上00:00:01执行{秒数} {分钟} {小时} {日期} {月份} {星期} {年份(可为空)}
@Scheduled(cron = "1 0 0 * * ?")
//@Scheduled(cron = "1 0 0 * * ?")
private void configureTasks() {
Date nowDate = new Date();
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
showApiService.initWorkDay(format.format(nowDate));
System.err.println("执行静态定时任务时间: " + LocalDateTime.now());
log.info("执行静态定时任务时间: " + LocalDateTime.now());
}
}

5
epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/utils/ShowApiUtil.java

@ -97,8 +97,9 @@ public class ShowApiUtil {
}
public static void main(String[] args) {
try {
// queryHolidayV2020("20200503");
holidayList("2020");
DayDetailResultDTO dayDetailResultDTO = queryHolidayV2020("20220407");
System.out.println(dayDetailResultDTO);
//holidayList("2020");
} catch (Exception e) {
e.printStackTrace();
}

2
epmet-module/epmet-common-service/common-service-server/src/main/resources/db/migration/V0.0.14__add_areacode_flag.sql

@ -13,7 +13,7 @@ SELECT ID, `CODE`, `NAME`, `P_CODE`, `LEVEL`, `CATAGORY`, `DEL_FLAG`, `REVISION`
SELECT * FROM area_code_new WHERE county_code = '441900';
#清空数据
DELETE FROM area_code where 1=1;
DELETE FROM area_code;
#插入数据
INSERT INTO `epmet_common_service`.`area_code`
SELECT * FROM area_code_new;

6
epmet-module/epmet-job/epmet-job-server/pom.xml

@ -108,6 +108,12 @@
<version>2.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.epmet</groupId>
<artifactId>common-service-client</artifactId>
<version>2.0.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>

17
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/WorkDayInitService.java

@ -0,0 +1,17 @@
package com.epmet.service;
import com.epmet.commons.tools.utils.Result;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/12/29 17:45
*/
public interface WorkDayInitService {
/**
* desc:初始化工作日 日历
* @param dimDateId
* @return
*/
Result workDayInit(String dimDateId);
}

24
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/service/impl/WorkDayInitServiceImpl.java

@ -0,0 +1,24 @@
package com.epmet.service.impl;
import com.epmet.commons.tools.utils.Result;
import com.epmet.feign.EpmetCommonServiceOpenFeignClient;
import com.epmet.service.WorkDayInitService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/12/29 17:46
*/
@Service
public class WorkDayInitServiceImpl implements WorkDayInitService {
@Autowired
private EpmetCommonServiceOpenFeignClient epmetCommonServiceOpenFeignClient;
@Override
public Result workDayInit(String dimDateId) {
return epmetCommonServiceOpenFeignClient.workDayInit(dimDateId);
}
}

39
epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/WorkDayInitTask.java

@ -0,0 +1,39 @@
package com.epmet.task;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.service.WorkDayInitService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.Date;
/**
* desc:工作日日历定时任务
* @author zhaoqifeng
* @dscription
* @date 2020/12/29 17:43
*/
@Slf4j
@Component("workDayInitTask")
public class WorkDayInitTask implements ITask {
@Autowired
private WorkDayInitService workDayInitService;
@Override
public void run(String params) {
log.info("WorkDayInitTask定时任务正在执行,参数为:{}", params);
if (StringUtils.isBlank(params)){
params = DateUtils.format(new Date(),DateUtils.DATE_PATTERN_YYYYMMDD);
}
Result result = workDayInitService.workDayInit(params);
if (result.success()) {
log.info("{}定时任务执行成功,{}", getClass().getSimpleName(),params);
} else {
log.error("{}定时任务执行失败:{},param:{}" ,getClass().getSimpleName(), result.getMsg(), params);
}
}
}

1
epmet-module/epmet-job/epmet-job-server/src/main/resources/db/migration/V0.0.2__add_workdayinit_job.sql

@ -0,0 +1 @@
INSERT INTO `epmet_job`.`schedule_job` (`id`, `bean_name`, `params`, `cron_expression`, `status`, `remark`, `creator`, `create_date`, `updater`, `update_date`) VALUES (1511526737639378945, 'workDayInitTask', '', '3 0 0 * * ?', 1, '调用第三方api初始化工作日(有调用限制)参数:20220406', NULL, '2022-04-06 10:10:32', 0, '2022-04-06 10:11:04');

6
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportBuildingInfoListener.java

@ -344,7 +344,7 @@ public class ImportBuildingInfoListener extends AnalysisEventListener<BuildingIn
*/
public Map<String,Object> getGridInfos(String orgId){
gridInfoDTOs = icBuildingDao.selectAllGridByOrgId(orgId);
gridInfos = gridInfoDTOs.stream().collect(Collectors.toMap(n -> n.getGridName(), n -> n.getGridId()));
gridInfos = gridInfoDTOs.stream().collect(Collectors.toMap(n -> n.getGridName(), n -> n.getGridId(),(o1,o2) -> o1));
icHouseRedis.setTemporaryCacheGrid(formDTO.getCustomerId(), gridInfos, formDTO.getUserId());
return gridInfos;
}
@ -357,7 +357,7 @@ public class ImportBuildingInfoListener extends AnalysisEventListener<BuildingIn
*/
public Map<String,Object> getNeighborHoodInfos(List<String> gridIds){
neighborHoodInfoDTOs = icBuildingDao.selectAllNeighborHoodByGridIds(gridIds);
neighborHoodInfos = neighborHoodInfoDTOs.stream().collect(Collectors.toMap(n -> n.getGridId() + "_" + n.getNeighborHoodName(), n -> n.getNeighborHoodId()));
neighborHoodInfos = neighborHoodInfoDTOs.stream().collect(Collectors.toMap(n -> n.getGridId() + "_" + n.getNeighborHoodName(), n -> n.getNeighborHoodId(),(o1,o2) -> o1));
icHouseRedis.setTemporaryCacheNeighBorHood(formDTO.getCustomerId(), neighborHoodInfos, formDTO.getUserId());
return neighborHoodInfos;
}
@ -370,7 +370,7 @@ public class ImportBuildingInfoListener extends AnalysisEventListener<BuildingIn
*/
public Map<String,Object> getBuildingInfos(String orgId){
buildingInfoDTOs = icBuildingDao.selectAllBuildingByNeighborHoodId(orgId);
buildingInfos = buildingInfoDTOs.stream().collect(Collectors.toMap(n -> n.getNeighborHoodId() + "_" + n.getBuildingName(), n -> n.getBuildingId()));
buildingInfos = buildingInfoDTOs.stream().collect(Collectors.toMap(n -> n.getNeighborHoodId() + "_" + n.getBuildingName(), n -> n.getBuildingId(),(o1,o2) -> o1));
icHouseRedis.setTemporaryCacheBuilding(formDTO.getCustomerId(), buildingInfos, formDTO.getUserId());
return buildingInfos;
}

8
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportHouseInfoListener.java

@ -490,7 +490,7 @@ public class ImportHouseInfoListener extends AnalysisEventListener<HouseInfoMode
*/
public Map<String,Object> getGridInfos(String orgId){
gridInfoDTOs = icBuildingDao.selectAllGridByOrgId(orgId);
gridInfos = gridInfoDTOs.stream().collect(Collectors.toMap(n -> n.getGridName(), n -> n.getGridId()));
gridInfos = gridInfoDTOs.stream().collect(Collectors.toMap(n -> n.getGridName(), n -> n.getGridId(),(o1,o2) -> o1));
icHouseRedis.setTemporaryCacheGrid(formDTO.getCustomerId(), gridInfos, formDTO.getUserId());
return gridInfos;
}
@ -503,7 +503,7 @@ public class ImportHouseInfoListener extends AnalysisEventListener<HouseInfoMode
*/
public Map<String,Object> getNeighborHoodInfos(List<String> gridIds){
neighborHoodInfoDTOs = icBuildingDao.selectAllNeighborHoodByGridIds(gridIds);
neighborHoodInfos = neighborHoodInfoDTOs.stream().collect(Collectors.toMap(n -> n.getGridId() + "_" + n.getNeighborHoodName(), n -> n.getNeighborHoodId()));
neighborHoodInfos = neighborHoodInfoDTOs.stream().collect(Collectors.toMap(n -> n.getGridId() + "_" + n.getNeighborHoodName(), n -> n.getNeighborHoodId(),(o1,o2) -> o1));
icHouseRedis.setTemporaryCacheNeighBorHood(formDTO.getCustomerId(), neighborHoodInfos, formDTO.getUserId());
return neighborHoodInfos;
}
@ -516,7 +516,7 @@ public class ImportHouseInfoListener extends AnalysisEventListener<HouseInfoMode
*/
public Map<String,Object> getBuildingInfos(String orgId){
buildingInfoDTOs = icBuildingDao.selectAllBuildingByNeighborHoodId(orgId);
buildingInfos = buildingInfoDTOs.stream().collect(Collectors.toMap(n -> n.getNeighborHoodId() + "_" + n.getBuildingName(), n -> n.getBuildingId()));
buildingInfos = buildingInfoDTOs.stream().collect(Collectors.toMap(n -> n.getNeighborHoodId() + "_" + n.getBuildingName(), n -> n.getBuildingId(),(o1,o2) -> o1));
icHouseRedis.setTemporaryCacheBuilding(formDTO.getCustomerId(), buildingInfos, formDTO.getUserId());
return buildingInfos;
}
@ -530,7 +530,7 @@ public class ImportHouseInfoListener extends AnalysisEventListener<HouseInfoMode
public Map<String,Object> getBuildingUnitInfos(String orgId){
buildingUnitInfoDTOs = icBuildingDao.selectAllBuildingUnitByBuildingId(orgId);
if (!CollectionUtils.isEmpty(buildingUnitInfoDTOs)){
buildingUnitInfos = buildingUnitInfoDTOs.stream().collect(Collectors.toMap(n -> n.getBuildingId() + "_" + n.getBuildingUnit(), n -> n.getBuildingUnitId()));
buildingUnitInfos = buildingUnitInfoDTOs.stream().collect(Collectors.toMap(n -> n.getBuildingId() + "_" + n.getBuildingUnit(), n -> n.getBuildingUnitId(),(o1,o2) -> o1));
icHouseRedis.setTemporaryCacheBuildingUnit(formDTO.getCustomerId(), buildingUnitInfos, formDTO.getUserId());
}
return buildingInfos;

4
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/model/ImportNeighborHoodInfoListener.java

@ -312,7 +312,7 @@ public class ImportNeighborHoodInfoListener extends AnalysisEventListener<Neighb
*/
public Map<String,Object> getGridInfos(String orgId){
gridInfoDTOs = icBuildingDao.selectAllGridByOrgId(orgId);
gridInfos = gridInfoDTOs.stream().collect(Collectors.toMap(n -> n.getGridName(), n -> n.getGridId()));
gridInfos = gridInfoDTOs.stream().collect(Collectors.toMap(n -> n.getGridName(), n -> n.getGridId(),(o1,o2) -> o1));
icHouseRedis.setTemporaryCacheGrid(formDTO.getCustomerId(), gridInfos, formDTO.getUserId());
return gridInfos;
}
@ -325,7 +325,7 @@ public class ImportNeighborHoodInfoListener extends AnalysisEventListener<Neighb
*/
public Map<String,Object> getNeighborHoodInfos(List<String> gridIds){
neighborHoodInfoDTOs = icBuildingDao.selectAllNeighborHoodByGridIds(gridIds);
neighborHoodInfos = neighborHoodInfoDTOs.stream().collect(Collectors.toMap(n -> n.getGridId() + "_" + n.getNeighborHoodName(), n -> n.getNeighborHoodId()));
neighborHoodInfos = neighborHoodInfoDTOs.stream().collect(Collectors.toMap(n -> n.getGridId() + "_" + n.getNeighborHoodName(), n -> n.getNeighborHoodId(),(o1,o2) -> o1));
icHouseRedis.setTemporaryCacheNeighBorHood(formDTO.getCustomerId(), neighborHoodInfos, formDTO.getUserId());
return neighborHoodInfos;
}

3
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/controller/ResiGroupMemberController.java

@ -18,6 +18,7 @@
package com.epmet.modules.member.controller;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.aop.NoRepeatSubmit;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
@ -57,6 +58,7 @@ public class ResiGroupMemberController {
* @Date 2020/3/29 20:01
**/
@PostMapping("applyjoingroup")
@NoRepeatSubmit
public Result applyJoinGroup(@LoginUser TokenDto tokenDto,
@RequestBody ApplyJoinGroupFormDTO applyJoinGroupFormDTO) {
applyJoinGroupFormDTO.setUserId(tokenDto.getUserId());
@ -109,6 +111,7 @@ public class ResiGroupMemberController {
* @Date 2020/3/30 22:07
**/
@PostMapping("agreeapply")
@NoRepeatSubmit
public Result agreeApply(@LoginUser TokenDto tokenDto,
@RequestBody AgreeApplyFormDTO agreeApplyFormDTO) {
agreeApplyFormDTO.setUserId(tokenDto.getUserId());

25
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcNatServiceImpl.java

@ -478,6 +478,8 @@ public class IcNatServiceImpl extends BaseServiceImpl<IcNatDao, IcNatEntity> imp
@Transactional(rollbackFor = Exception.class)
public void persisNat(IcNatEntity e, String customerId, String currentUserId, IcNatExcelImportListener listener) {
List<IcNatImportExcelData.RowRemarkMessage> otherRows = listener.getOtherRows();
String agencyPids = listener.getCurrentAgencyPids();
String agencyId = listener.getCurrentAgencyId();
Date natTime = e.getNatTime();
String idCard = e.getIdCard();
@ -545,43 +547,50 @@ public class IcNatServiceImpl extends BaseServiceImpl<IcNatDao, IcNatEntity> imp
resiNat.setUpdatedBy(currentUserId);
resiNat.setUpdatedTime(new Date());
IcResiUserEntity resi = getResi(customerId, idCard);
IcResiUserEntity resi = getResi(customerId, idCard, null);
resiNat.setIsResiUser(resi != null ? "1" : "0");
resiNat.setUserId(resi != null ? resi.getId() : "");
baseDao.updateById(resiNat);
}
// 还要创建关系
createNatRelation(resiNat.getId(), listener.getCurrentAgencyId(), listener.getCurrentAgencyPids());
// 还要创建关系。只有本辖区及下级居民,才建立关系
if (getResi(customerId, idCard, String.join(":", Arrays.asList(agencyPids, agencyId))) != null) {
createNatRelation(resiNat.getId(), listener.getCurrentAgencyId(), listener.getCurrentAgencyPids());
}
return;
}
// 执行新增操作
IcResiUserEntity resi = getResi(customerId, idCard);
IcResiUserEntity resi = getResi(customerId, idCard, null);
e.setIsResiUser(resi != null ? "1" : "0");
e.setUserId(resi != null ? resi.getId() : "");
e.setUserType("import");
baseDao.insert(e);
// 还要创建关系
createNatRelation(e.getId(), listener.getCurrentAgencyId(), listener.getCurrentAgencyPids());
// 还要创建关系。只有本辖区及下级居民,才建立关系
if (getResi(customerId, idCard, String.join(":", Arrays.asList(agencyPids, agencyId))) != null) {
createNatRelation(e.getId(), listener.getCurrentAgencyId(), listener.getCurrentAgencyPids());
}
}
/**
* 是否是客户下的居民
* 是否是指定条件下的居民
* 0
* 1
* @param customerId
* @param idCard
* @return
*/
public IcResiUserEntity getResi(String customerId, String idCard) {
public IcResiUserEntity getResi(String customerId, String idCard, String pids) {
LambdaQueryWrapper<IcResiUserEntity> query = new LambdaQueryWrapper();
query.eq(IcResiUserEntity::getCustomerId, customerId);
query.eq(IcResiUserEntity::getIdCard, idCard);
if (StringUtils.isNotBlank(pids)) {
query.likeRight(IcResiUserEntity::getPids, pids);
}
return icResiUserDao.selectOne(query);
}

Loading…
Cancel
Save