|
@@ -8,6 +8,7 @@ import com.galaxis.capsule.bo.ChuanyunObject;
|
|
|
import com.galaxis.manatee.constant.ChuanYunConstant;
|
|
|
import com.galaxis.manatee.dao.*;
|
|
|
import com.galaxis.manatee.entity.chuanyun.data.object.*;
|
|
|
+import com.galaxis.manatee.entity.chuanyun.dto.ChuanyunSaveDTO;
|
|
|
import com.galaxis.manatee.entity.chuanyun.dto.Filter;
|
|
|
import com.galaxis.manatee.manager.ChuanYunManager;
|
|
|
import lombok.Data;
|
|
@@ -57,7 +58,7 @@ public class ChuanyunBasicDataScheduledTask {
|
|
|
private void getDataFromChuanyun() {
|
|
|
|
|
|
//支出档案类型
|
|
|
- updateCostCenter();
|
|
|
+ getProjectType();
|
|
|
//获取报销科目
|
|
|
getReimbursementSubject();
|
|
|
//获取成本中心
|
|
@@ -144,17 +145,28 @@ public class ChuanyunBasicDataScheduledTask {
|
|
|
}
|
|
|
//通过更新集团项目中的EBG项目经理、IBG项目经理
|
|
|
//TODO 测试结束后需要扩大范围到所有项目
|
|
|
- if ("实施".equals(chuanyunGroupProjectDO.getProjectType())&&"EBG".equals(chuanyunGroupProjectDO.getBusinessGroup())){
|
|
|
- GroupProjectUpdateDTO groupProjectUpdateDTO=new GroupProjectUpdateDTO();
|
|
|
- try {
|
|
|
- chuanYunManager.update(ChuanyunGroupProjectDO.SCHEMA_CODE,chuanyunGroupProjectDO.getObjectId(),objectMapper.writeValueAsString(groupProjectUpdateDTO));
|
|
|
- } catch (JsonProcessingException e) {
|
|
|
- e.printStackTrace();
|
|
|
- }
|
|
|
- groupProjectUpdateDTO=new GroupProjectUpdateDTO(chuanyunGroupProjectDO);
|
|
|
+ GroupProjectUpdateDTO groupProjectUpdateDTO=new GroupProjectUpdateDTO();
|
|
|
+ try {
|
|
|
+ chuanYunManager.update(ChuanyunGroupProjectDO.SCHEMA_CODE,chuanyunGroupProjectDO.getObjectId(),objectMapper.writeValueAsString(groupProjectUpdateDTO));
|
|
|
+ } catch (JsonProcessingException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ groupProjectUpdateDTO=new GroupProjectUpdateDTO(chuanyunGroupProjectDO);
|
|
|
+ //保证项目经理信息更新成功
|
|
|
+ boolean updateFlag=false;
|
|
|
+ while (!updateFlag){
|
|
|
try {
|
|
|
- chuanYunManager.update(ChuanyunGroupProjectDO.SCHEMA_CODE,chuanyunGroupProjectDO.getObjectId(),objectMapper.writeValueAsString(groupProjectUpdateDTO));
|
|
|
- } catch (JsonProcessingException e) {
|
|
|
+ var groupProjectUpdateString=objectMapper.writeValueAsString(groupProjectUpdateDTO);
|
|
|
+ ChuanyunSaveDTO chuanyunSaveDTO=chuanYunManager.update(ChuanyunGroupProjectDO.SCHEMA_CODE,chuanyunGroupProjectDO.getObjectId(),groupProjectUpdateString);
|
|
|
+ if(chuanyunSaveDTO.getSuccessful()){
|
|
|
+ log.info(chuanyunGroupProjectDO.getObjectId()+"更新项目经理成功"+groupProjectUpdateString);
|
|
|
+ updateFlag=true;
|
|
|
+ }else{
|
|
|
+ log.warn(chuanyunGroupProjectDO.getObjectId()+"更新项目经理失败"+groupProjectUpdateString);
|
|
|
+ log.warn(chuanyunGroupProjectDO+"");
|
|
|
+ Thread.sleep(5000L);
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
}
|
|
@@ -171,6 +183,7 @@ public class ChuanyunBasicDataScheduledTask {
|
|
|
chuanyunGroupProjectDO.setProjectMember(idlist);
|
|
|
log.info("成员已更新");
|
|
|
}
|
|
|
+
|
|
|
});
|
|
|
chuanyunGroupProjectDao.saveAll(result);
|
|
|
}catch (Exception e){
|
|
@@ -220,7 +233,7 @@ public class ChuanyunBasicDataScheduledTask {
|
|
|
/**
|
|
|
* 更新支出档案类型
|
|
|
*/
|
|
|
- public void updateCostCenter() {
|
|
|
+ public void getProjectType() {
|
|
|
var objectMapper=new ObjectMapper();
|
|
|
var start=0;
|
|
|
var totalCount=0L;
|