|
@@ -2,10 +2,8 @@ package com.galaxis.manatee.service;
|
|
|
|
|
|
import com.fasterxml.jackson.core.type.TypeReference;
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
-import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunCommonDO;
|
|
|
-import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunMemberHourDO;
|
|
|
-import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunMemberMonthCostDO;
|
|
|
-import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunProjectMemberWeekHourDO;
|
|
|
+import com.galaxis.manatee.constant.ChuanYunConstant;
|
|
|
+import com.galaxis.manatee.entity.chuanyun.data.object.*;
|
|
|
import com.galaxis.manatee.entity.chuanyun.dto.*;
|
|
|
import com.galaxis.manatee.manager.ChuanYunManager;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
@@ -18,6 +16,7 @@ import java.util.List;
|
|
|
|
|
|
/**
|
|
|
* 快速更新数据方法
|
|
|
+ *
|
|
|
* @author zcj
|
|
|
* @version 0.1
|
|
|
* @date 2021/3/6 5:55 上午
|
|
@@ -68,52 +67,55 @@ public class DataArcherService {
|
|
|
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
- log.warn("更新标准工时异常"+chuanyunSelfWorkHourDTO);
|
|
|
+ log.warn("更新标准工时异常" + chuanyunSelfWorkHourDTO);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 异步更新每周工时
|
|
|
+ *
|
|
|
* @param chuanyunWeekMemberHourDTO 每周工时数据对象
|
|
|
*/
|
|
|
@Async
|
|
|
- public void updateWeekMemberHour(ChuanyunWeekMemberHourDTO chuanyunWeekMemberHourDTO){
|
|
|
- ObjectMapper objectMapper=new ObjectMapper();
|
|
|
- try{
|
|
|
+ public void updateWeekMemberHour(ChuanyunWeekMemberHourDTO chuanyunWeekMemberHourDTO) {
|
|
|
+ ObjectMapper objectMapper = new ObjectMapper();
|
|
|
+ try {
|
|
|
List<String> matchers = new ArrayList<>();
|
|
|
- matchers.add("F0000001_2,"+chuanyunWeekMemberHourDTO.getProjectId());
|
|
|
- matchers.add("F0000002_2,"+chuanyunWeekMemberHourDTO.getUserId());
|
|
|
- matchers.add("F0000006_2,"+chuanyunWeekMemberHourDTO.getWeek());
|
|
|
- matchers.add("F0000008_2,"+chuanyunWeekMemberHourDTO.getYear());
|
|
|
- matchers.add("F0000003_2,"+chuanyunWeekMemberHourDTO.getProjectType());
|
|
|
- matchers.add("F0000007_2,"+chuanyunWeekMemberHourDTO.getStatus());
|
|
|
- var filter= Filter.instance(0,1,true,"And",matchers);
|
|
|
- var chuanyunFindAllResponse=chuanYunManager.findAll(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE,filter);
|
|
|
- var selfMonthString=objectMapper.writeValueAsString(chuanyunWeekMemberHourDTO);
|
|
|
+ matchers.add("F0000001_2," + chuanyunWeekMemberHourDTO.getProjectId());
|
|
|
+ matchers.add("F0000002_2," + chuanyunWeekMemberHourDTO.getUserId());
|
|
|
+ matchers.add("F0000006_2," + chuanyunWeekMemberHourDTO.getWeek());
|
|
|
+ matchers.add("F0000008_2," + chuanyunWeekMemberHourDTO.getYear());
|
|
|
+ matchers.add("F0000003_2," + chuanyunWeekMemberHourDTO.getProjectType());
|
|
|
+ matchers.add("F0000007_2," + chuanyunWeekMemberHourDTO.getStatus());
|
|
|
+ var filter = Filter.instance(0, 1, true, "And", matchers);
|
|
|
+ var chuanyunFindAllResponse = chuanYunManager.findAll(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE, filter);
|
|
|
+ var selfMonthString = objectMapper.writeValueAsString(chuanyunWeekMemberHourDTO);
|
|
|
ChuanyunSaveDTO chuanyunSaveDTO;
|
|
|
- if (chuanyunFindAllResponse.getReturnData()!=null) {
|
|
|
- List<ChuanyunProjectMemberWeekHourDO> result=objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>(){});
|
|
|
+ if (chuanyunFindAllResponse.getReturnData() != null) {
|
|
|
+ List<ChuanyunProjectMemberWeekHourDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {
|
|
|
+ });
|
|
|
ChuanyunProjectMemberWeekHourDO firstResult = result.get(0);
|
|
|
- chuanyunSaveDTO = chuanYunManager.update(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE,firstResult.getObjectId(),selfMonthString);
|
|
|
- }else {
|
|
|
- chuanyunSaveDTO = chuanYunManager.save(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE,selfMonthString,true);
|
|
|
+ chuanyunSaveDTO = chuanYunManager.update(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE, firstResult.getObjectId(), selfMonthString);
|
|
|
+ } else {
|
|
|
+ chuanyunSaveDTO = chuanYunManager.save(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE, selfMonthString, true);
|
|
|
}
|
|
|
- if(!chuanyunSaveDTO.getSuccessful()){
|
|
|
+ if (!chuanyunSaveDTO.getSuccessful()) {
|
|
|
log.warn("新增人员项目周度工时失败");
|
|
|
}
|
|
|
- }catch (Exception e){
|
|
|
+ } catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
- log.warn("更新标准工时异常"+chuanyunWeekMemberHourDTO);
|
|
|
+ log.warn("更新标准工时异常" + chuanyunWeekMemberHourDTO);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 异步更新每月工时
|
|
|
+ *
|
|
|
* @param chuanyunSelfCostDTO 每周工时数据对象
|
|
|
*/
|
|
|
@Async
|
|
|
- public void updateChuanyunSelfCost(ChuanyunSelfCostDTO chuanyunSelfCostDTO){
|
|
|
- ObjectMapper objectMapper=new ObjectMapper();
|
|
|
+ public void updateChuanyunSelfCost(ChuanyunSelfCostDTO chuanyunSelfCostDTO) {
|
|
|
+ ObjectMapper objectMapper = new ObjectMapper();
|
|
|
try {
|
|
|
List<String> matchers = new ArrayList<>();
|
|
|
matchers.add("F0000003_2," + chuanyunSelfCostDTO.getProjectId());
|
|
@@ -142,44 +144,77 @@ public class DataArcherService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
+ /**
|
|
|
+ * 删除审核中的每月工时
|
|
|
+ * @param chuanyunSelfCostDO 氚云每月工时
|
|
|
+ */
|
|
|
+ @Async
|
|
|
+ public void deleteSelfCostInProcess(ChuanyunSelfCostDO chuanyunSelfCostDO) {
|
|
|
+ ObjectMapper objectMapper=new ObjectMapper();
|
|
|
+ //删除氚云中的在审核工时
|
|
|
+ List<String> matchers = new ArrayList<>();
|
|
|
+ matchers.add("F0000003_2," + chuanyunSelfCostDO.getProjectId());
|
|
|
+ matchers.add("F0000009_2," + ChuanYunConstant.IN_PROCESS);
|
|
|
+ matchers.add("F0000002_2," + chuanyunSelfCostDO.getUserId());
|
|
|
+ matchers.add("F0000008_2," + chuanyunSelfCostDO.getProjectType());
|
|
|
+ matchers.add("F0000004_2," + chuanyunSelfCostDO.getDayLogDate());
|
|
|
+ var filter = Filter.instance(0, 1, true, "And", matchers);
|
|
|
+ try {
|
|
|
+ ChuanyunFindAllBizDTO<Object> chuanyunFindAllResponse = chuanYunManager.findAll(ChuanyunMemberMonthCostDO.SCHEMA_CODE, filter);
|
|
|
+ if (chuanyunFindAllResponse.getReturnData() != null) {
|
|
|
+ List<ChuanyunMemberMonthCostDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {
|
|
|
+ });
|
|
|
+ result.forEach(chuanyunMemberMonthCostDO -> {
|
|
|
+ try {
|
|
|
+ chuanYunManager.delete(ChuanyunMemberMonthCostDO.SCHEMA_CODE, chuanyunMemberMonthCostDO.getObjectId());
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error("逐条删除失败" + e.getMessage());
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ log.error("删除已审核通过的月度数据汇总失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
|
* 删除状态为审核中数据
|
|
|
*/
|
|
|
- public void deleteExamineStatus(String schemaCode,String statusCode,String projectCode,String projectId,String userCode,String userId,String yearCode,String year,String monthCode,String month,String weekCode,String week,String typeCode,String projectType) {
|
|
|
- ObjectMapper objectMapper=new ObjectMapper();
|
|
|
+ public void deleteExamineStatus(String schemaCode, String statusCode, String projectCode, String projectId, String userCode, String userId, String yearCode, String year, String monthCode, String month, String weekCode, String week, String typeCode, String projectType) {
|
|
|
+ ObjectMapper objectMapper = new ObjectMapper();
|
|
|
try {
|
|
|
List<String> matchers = new ArrayList<>();
|
|
|
- matchers.add(statusCode+"_2,"+"2");
|
|
|
- matchers.add(projectCode+"_2,"+projectId);
|
|
|
- if (!StringUtils.isEmpty(userId)){
|
|
|
- matchers.add(userCode+"_2,"+userId);
|
|
|
+ matchers.add(statusCode + "_2," + "2");
|
|
|
+ matchers.add(projectCode + "_2," + projectId);
|
|
|
+ if (!StringUtils.isEmpty(userId)) {
|
|
|
+ matchers.add(userCode + "_2," + userId);
|
|
|
}
|
|
|
- if (!StringUtils.isEmpty(year)){
|
|
|
- matchers.add(yearCode+"_2,"+year);
|
|
|
+ if (!StringUtils.isEmpty(year)) {
|
|
|
+ matchers.add(yearCode + "_2," + year);
|
|
|
}
|
|
|
- if (!StringUtils.isEmpty(month)){
|
|
|
- matchers.add(monthCode+"_2,"+month);
|
|
|
+ if (!StringUtils.isEmpty(month)) {
|
|
|
+ matchers.add(monthCode + "_2," + month);
|
|
|
}
|
|
|
- if (!StringUtils.isEmpty(week)){
|
|
|
- matchers.add(weekCode+"_2,"+week);
|
|
|
+ if (!StringUtils.isEmpty(week)) {
|
|
|
+ matchers.add(weekCode + "_2," + week);
|
|
|
}
|
|
|
- if (!StringUtils.isEmpty(projectType)){
|
|
|
- matchers.add(typeCode+"_2,"+projectType);
|
|
|
+ if (!StringUtils.isEmpty(projectType)) {
|
|
|
+ matchers.add(typeCode + "_2," + projectType);
|
|
|
}
|
|
|
- var filter= Filter.instance(0,Integer.MAX_VALUE,true,"And",matchers);
|
|
|
- var chuanyunFindAllResponse=chuanYunManager.findAll(schemaCode,filter);
|
|
|
- if (chuanyunFindAllResponse.getReturnData()!=null){
|
|
|
- List<ChuanyunCommonDO> result=objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>(){});
|
|
|
+ var filter = Filter.instance(0, Integer.MAX_VALUE, true, "And", matchers);
|
|
|
+ var chuanyunFindAllResponse = chuanYunManager.findAll(schemaCode, filter);
|
|
|
+ if (chuanyunFindAllResponse.getReturnData() != null) {
|
|
|
+ List<ChuanyunCommonDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {
|
|
|
+ });
|
|
|
result.forEach(basicDO -> {
|
|
|
- ChuanyunSaveDTO chuanyunSaveDTO = chuanYunManager.delete(schemaCode,basicDO.getObjectId());
|
|
|
- if(!chuanyunSaveDTO.getSuccessful()){
|
|
|
+ ChuanyunSaveDTO chuanyunSaveDTO = chuanYunManager.delete(schemaCode, basicDO.getObjectId());
|
|
|
+ if (!chuanyunSaveDTO.getSuccessful()) {
|
|
|
log.warn("删除状态为审核中数据失败");
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
- }catch (Exception e) {
|
|
|
+ } catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
log.error(e.getMessage());
|
|
|
}
|