|
@@ -3,8 +3,10 @@ package com.galaxis.manatee.task;
|
|
|
import com.fasterxml.jackson.core.type.TypeReference;
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
import com.galaxis.manatee.dao.ChuanyunGroupProjectDao;
|
|
|
+import com.galaxis.manatee.dao.ChuanyunHolidaySalaryRuleDao;
|
|
|
import com.galaxis.manatee.dao.ChuanyunLogDao;
|
|
|
import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunGroupProjectDO;
|
|
|
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunHolidaySalaryRuleDO;
|
|
|
import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunLogDO;
|
|
|
import com.galaxis.manatee.entity.chuanyun.dto.Filter;
|
|
|
import com.galaxis.manatee.manager.ChuanYunManager;
|
|
@@ -29,11 +31,13 @@ public class ChuanyunHumanResourceScheduledTask {
|
|
|
private final ChuanYunManager chuanYunManager;
|
|
|
private final ChuanyunLogDao chuanyunLogDao;
|
|
|
private final ChuanyunGroupProjectDao chuanyunGroupProjectDao;
|
|
|
+ private final ChuanyunHolidaySalaryRuleDao chuanyunHolidaySalaryRuleDao;
|
|
|
|
|
|
- public ChuanyunHumanResourceScheduledTask(ChuanYunManager chuanYunManager, ChuanyunLogDao chuanyunLogDao, ChuanyunGroupProjectDao chuanyunGroupProjectDao) {
|
|
|
+ public ChuanyunHumanResourceScheduledTask(ChuanYunManager chuanYunManager, ChuanyunLogDao chuanyunLogDao, ChuanyunGroupProjectDao chuanyunGroupProjectDao, ChuanyunHolidaySalaryRuleDao chuanyunHolidaySalaryRuleDao) {
|
|
|
this.chuanYunManager = chuanYunManager;
|
|
|
this.chuanyunLogDao = chuanyunLogDao;
|
|
|
this.chuanyunGroupProjectDao = chuanyunGroupProjectDao;
|
|
|
+ this.chuanyunHolidaySalaryRuleDao = chuanyunHolidaySalaryRuleDao;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -108,4 +112,38 @@ public class ChuanyunHumanResourceScheduledTask {
|
|
|
}
|
|
|
log.info("日志信息保存" + totalCount);
|
|
|
}
|
|
|
+
|
|
|
+ @Scheduled(fixedDelay = 1000000000L)
|
|
|
+ private void updateHolidaySalaryRule() {
|
|
|
+ var objectMapper = new ObjectMapper();
|
|
|
+ var start = 0;
|
|
|
+ var totalCount = 0L;
|
|
|
+ var flag = true;
|
|
|
+ while (flag) {
|
|
|
+ try {
|
|
|
+ //从氚云查询数据
|
|
|
+ var filter = Filter.instance(start, start + pageSize, true);
|
|
|
+ var chuanyunFindAllResponse = chuanYunManager.findAll(ChuanyunHolidaySalaryRuleDO.SCHEMA_CODE, filter);
|
|
|
+ if (chuanyunFindAllResponse.getReturnData() == null) {
|
|
|
+ flag = false;
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (chuanyunFindAllResponse.getReturnData().getTotalCount() >= start + pageSize) {
|
|
|
+ start += pageSize;
|
|
|
+ } else {
|
|
|
+ flag = false;
|
|
|
+ }
|
|
|
+ //转化为POJO
|
|
|
+ List<ChuanyunHolidaySalaryRuleDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {});
|
|
|
+ //获取项目总数
|
|
|
+ totalCount=chuanyunFindAllResponse.getReturnData().getTotalCount();
|
|
|
+ //保存数据
|
|
|
+ chuanyunHolidaySalaryRuleDao.saveAll(result);
|
|
|
+ }catch (Exception e) {
|
|
|
+ log.error(e.getMessage());
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ log.info("法定假日薪资规则同步"+totalCount);
|
|
|
+ }
|
|
|
}
|