|
@@ -35,8 +35,9 @@ public class ChuanyunBasicDataScheduledTask {
|
|
|
private final ChuanyunUserCompanyDao chuanyunUserCompanyDao;
|
|
|
private final ChuanyunCostDao chuanyunCostDao;
|
|
|
private final ChuanyunReimbursementSubjectDao chuanyunReimbursementSubjectDao;
|
|
|
+ private final ChuanyunProjectTypeDao chuanyunProjectTypeDao;
|
|
|
|
|
|
- public ChuanyunBasicDataScheduledTask(ChuanYunManager chuanYunManager, ChuanyunGroupProjectDao chuanyunGroupProjectDao, ChuanyunUserDao chuanyunUserDao, ChuanyunSupplierDao chuanyunSupplierDao, ChuanyunCompanyDao chuanyunCompanyDao, ChuanyunUserCompanyDao chuanyunUserCompanyDao, ChuanyunCostDao chuanyunCostDao, ChuanyunReimbursementSubjectDao chuanyunReimbursementSubjectDao) {
|
|
|
+ public ChuanyunBasicDataScheduledTask(ChuanYunManager chuanYunManager, ChuanyunGroupProjectDao chuanyunGroupProjectDao, ChuanyunUserDao chuanyunUserDao, ChuanyunSupplierDao chuanyunSupplierDao, ChuanyunCompanyDao chuanyunCompanyDao, ChuanyunUserCompanyDao chuanyunUserCompanyDao, ChuanyunCostDao chuanyunCostDao, ChuanyunReimbursementSubjectDao chuanyunReimbursementSubjectDao, ChuanyunProjectTypeDao chuanyunProjectTypeDao) {
|
|
|
this.chuanYunManager = chuanYunManager;
|
|
|
this.chuanyunGroupProjectDao = chuanyunGroupProjectDao;
|
|
|
this.chuanyunUserDao = chuanyunUserDao;
|
|
@@ -45,6 +46,7 @@ public class ChuanyunBasicDataScheduledTask {
|
|
|
this.chuanyunUserCompanyDao = chuanyunUserCompanyDao;
|
|
|
this.chuanyunCostDao = chuanyunCostDao;
|
|
|
this.chuanyunReimbursementSubjectDao = chuanyunReimbursementSubjectDao;
|
|
|
+ this.chuanyunProjectTypeDao = chuanyunProjectTypeDao;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -52,6 +54,9 @@ public class ChuanyunBasicDataScheduledTask {
|
|
|
*/
|
|
|
@Scheduled(fixedDelay = 360000L)
|
|
|
private void getDataFromChuanyun() {
|
|
|
+
|
|
|
+ //支出档案类型
|
|
|
+ updateCostCenter();
|
|
|
//获取报销科目
|
|
|
getReimbursementSubject();
|
|
|
//获取成本中心
|
|
@@ -191,6 +196,42 @@ public class ChuanyunBasicDataScheduledTask {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * 更新支出档案类型
|
|
|
+ */
|
|
|
+ public void updateCostCenter() {
|
|
|
+ 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(ChuanyunProjectTypeDO.SCHEMA_CODE, filter);
|
|
|
+ if (chuanyunFindAllResponse.getReturnData() == null) {
|
|
|
+ flag = false;
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (chuanyunFindAllResponse.getReturnData().getTotalCount() >= start + pageSize) {
|
|
|
+ start += pageSize;
|
|
|
+ } else {
|
|
|
+ flag = false;
|
|
|
+ }
|
|
|
+ //转化为POJO
|
|
|
+ List<ChuanyunProjectTypeDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>(){});
|
|
|
+ //获取项目总数
|
|
|
+ totalCount=chuanyunFindAllResponse.getReturnData().getTotalCount();
|
|
|
+ //保存
|
|
|
+ chuanyunProjectTypeDao.saveAll(result);
|
|
|
+ }catch (Exception e) {
|
|
|
+ log.error(e.getMessage());
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ log.info("支出档案类型"+totalCount);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
* 更新公司信息
|
|
|
*/
|
|
|
private void getCompany(){
|