|
@@ -2,6 +2,7 @@ package com.galaxis.manatee.service;
|
|
|
|
|
|
import com.fasterxml.jackson.core.type.TypeReference;
|
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
+import com.galaxis.manatee.constant.ChuanYunConstant;
|
|
|
import com.galaxis.manatee.dao.ChuanyunSelfCostDao;
|
|
|
import com.galaxis.manatee.dao.ChuanyunSelfWorkHourDao;
|
|
|
import com.galaxis.manatee.dao.ChuanyunWeekMemberHourDao;
|
|
@@ -90,23 +91,25 @@ public class LogCheckService {
|
|
|
map.put(chuanyunWeekMemberHourDO.getUserId()+chuanyunWeekMemberHourDO.getProjectId()+chuanyunWeekMemberHourDO.getYear()+chuanyunWeekMemberHourDO.getWeek(),1);
|
|
|
}
|
|
|
for (ChuanyunWeekMemberHourDO chuanyunWeekMemberHourDO : oldlist){
|
|
|
- Integer count = map.get(chuanyunWeekMemberHourDO.getUserId()+chuanyunWeekMemberHourDO.getProjectId()+chuanyunWeekMemberHourDO.getYear()+chuanyunWeekMemberHourDO.getWeek());
|
|
|
- if (count==null){
|
|
|
- chuanyunWeekMemberHourDao.delete(chuanyunWeekMemberHourDO);
|
|
|
- List<String> matchers = new ArrayList<>();
|
|
|
- matchers.add("F0000001_2,"+chuanyunWeekMemberHourDO.getProjectId());
|
|
|
- matchers.add("F0000002_2,"+chuanyunWeekMemberHourDO.getUserId());
|
|
|
- matchers.add("F0000006_2,"+chuanyunWeekMemberHourDO.getWeek());
|
|
|
- matchers.add("F0000008_2,"+chuanyunWeekMemberHourDO.getYear());
|
|
|
- var filter = Filter.instance(0, 1, true, "And", matchers);
|
|
|
- var chuanyunFindAllResponse = chuanYunManager.findAll(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE, filter);
|
|
|
- ChuanyunSaveDTO chuanyunSaveDTO;
|
|
|
- if (chuanyunFindAllResponse.getReturnData() != null) {
|
|
|
- List<ChuanyunProjectMemberWeekHourDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {
|
|
|
- });
|
|
|
- chuanyunSaveDTO = chuanYunManager.delete(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE, result.get(0).getObjectId());
|
|
|
+ if (!chuanyunWeekMemberHourDO.getProjectType().equals("生产项目")){
|
|
|
+ Integer count = map.get(chuanyunWeekMemberHourDO.getUserId()+chuanyunWeekMemberHourDO.getProjectId()+chuanyunWeekMemberHourDO.getYear()+chuanyunWeekMemberHourDO.getWeek());
|
|
|
+ if (count==null){
|
|
|
+ chuanyunWeekMemberHourDao.delete(chuanyunWeekMemberHourDO);
|
|
|
+ List<String> matchers = new ArrayList<>();
|
|
|
+ matchers.add("F0000001_2,"+chuanyunWeekMemberHourDO.getProjectId());
|
|
|
+ matchers.add("F0000002_2,"+chuanyunWeekMemberHourDO.getUserId());
|
|
|
+ matchers.add("F0000006_2,"+chuanyunWeekMemberHourDO.getWeek());
|
|
|
+ matchers.add("F0000008_2,"+chuanyunWeekMemberHourDO.getYear());
|
|
|
+ var filter = Filter.instance(0, 1, true, "And", matchers);
|
|
|
+ var chuanyunFindAllResponse = chuanYunManager.findAll(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE, filter);
|
|
|
+ ChuanyunSaveDTO chuanyunSaveDTO;
|
|
|
+ if (chuanyunFindAllResponse.getReturnData() != null) {
|
|
|
+ List<ChuanyunProjectMemberWeekHourDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {
|
|
|
+ });
|
|
|
+ chuanyunSaveDTO = chuanYunManager.delete(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE, result.get(0).getObjectId());
|
|
|
+ }
|
|
|
+ log.info(chuanyunWeekMemberHourDO.getUserId()+"删除项目"+chuanyunWeekMemberHourDO.getProjectId()+"时间为"+chuanyunWeekMemberHourDO.getYear()+"年"+chuanyunWeekMemberHourDO.getWeek()+"周工时");
|
|
|
}
|
|
|
- log.info(chuanyunWeekMemberHourDO.getUserId()+"删除项目"+chuanyunWeekMemberHourDO.getProjectId()+"时间为"+chuanyunWeekMemberHourDO.getYear()+"年"+chuanyunWeekMemberHourDO.getWeek()+"周工时");
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -137,22 +140,24 @@ public class LogCheckService {
|
|
|
map.put(chuanyunSelfWorkHourDO.getUserId()+chuanyunSelfWorkHourDO.getProjectId()+chuanyunSelfWorkHourDO.getDayLogDate().withDayOfMonth(1),1);
|
|
|
}
|
|
|
for (ChuanyunSelfCostDO chuanyunSelfCostDO : costDOList){
|
|
|
- Integer count = map.get(chuanyunSelfCostDO.getUserId()+chuanyunSelfCostDO.getProjectId()+chuanyunSelfCostDO.getDayLogDate().withDayOfMonth(1));
|
|
|
- if (count==null){
|
|
|
- chuanyunSelfCostDao.delete(chuanyunSelfCostDO);
|
|
|
- List<String> matchers = new ArrayList<>();
|
|
|
- matchers.add("F0000003_2,"+chuanyunSelfCostDO.getProjectId());
|
|
|
- matchers.add("F0000002_2,"+chuanyunSelfCostDO.getUserId());
|
|
|
- matchers.add("F0000004_2,"+chuanyunSelfCostDO.getDayLogDate().plusDays(1).withDayOfMonth(1));
|
|
|
- var filter = Filter.instance(0, 1, true, "And", matchers);
|
|
|
- var chuanyunFindAllResponse = chuanYunManager.findAll(ChuanyunMemberMonthCostDO.SCHEMA_CODE, filter);
|
|
|
- ChuanyunSaveDTO chuanyunSaveDTO;
|
|
|
- if (chuanyunFindAllResponse.getReturnData() != null) {
|
|
|
- List<ChuanyunMemberMonthCostDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {
|
|
|
- });
|
|
|
- chuanyunSaveDTO = chuanYunManager.delete(ChuanyunMemberMonthCostDO.SCHEMA_CODE, result.get(0).getObjectId());
|
|
|
+ if (!chuanyunSelfCostDO.getProjectType().equals("生产项目")){
|
|
|
+ Integer count = map.get(chuanyunSelfCostDO.getUserId()+chuanyunSelfCostDO.getProjectId()+chuanyunSelfCostDO.getDayLogDate().withDayOfMonth(1));
|
|
|
+ if (count==null){
|
|
|
+ chuanyunSelfCostDao.delete(chuanyunSelfCostDO);
|
|
|
+ List<String> matchers = new ArrayList<>();
|
|
|
+ matchers.add("F0000003_2,"+chuanyunSelfCostDO.getProjectId());
|
|
|
+ matchers.add("F0000002_2,"+chuanyunSelfCostDO.getUserId());
|
|
|
+ matchers.add("F0000004_2,"+chuanyunSelfCostDO.getDayLogDate().plusDays(1).withDayOfMonth(1));
|
|
|
+ var filter = Filter.instance(0, 1, true, "And", matchers);
|
|
|
+ var chuanyunFindAllResponse = chuanYunManager.findAll(ChuanyunMemberMonthCostDO.SCHEMA_CODE, filter);
|
|
|
+ ChuanyunSaveDTO chuanyunSaveDTO;
|
|
|
+ if (chuanyunFindAllResponse.getReturnData() != null) {
|
|
|
+ List<ChuanyunMemberMonthCostDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {
|
|
|
+ });
|
|
|
+ chuanyunSaveDTO = chuanYunManager.delete(ChuanyunMemberMonthCostDO.SCHEMA_CODE, result.get(0).getObjectId());
|
|
|
+ }
|
|
|
+ log.info(chuanyunSelfCostDO.getUserId()+"删除项目"+chuanyunSelfCostDO.getProjectId()+"时间为"+chuanyunSelfCostDO.getDayLogDate()+"月工时");
|
|
|
}
|
|
|
- log.info(chuanyunSelfCostDO.getUserId()+"删除项目"+chuanyunSelfCostDO.getProjectId()+"时间为"+chuanyunSelfCostDO.getDayLogDate()+"月工时");
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -234,28 +239,38 @@ public class LogCheckService {
|
|
|
}
|
|
|
//比较是否有撤回工时
|
|
|
for (ChuanyunSelfWorkHourDO chuanyunSelfWorkHourDO : chuanyunSelfWorkHourList) {
|
|
|
- Integer count = map.get(chuanyunSelfWorkHourDO.getUserId() + chuanyunSelfWorkHourDO.getProjectId() + chuanyunSelfWorkHourDO.getDayLogDate());
|
|
|
- if (count == null) {
|
|
|
- try {
|
|
|
- //删除数据库日工时
|
|
|
- chuanyunSelfWorkHourDao.delete(chuanyunSelfWorkHourDO);
|
|
|
- //删除氚云日工时
|
|
|
- List<String> matchers = new ArrayList<>();
|
|
|
- matchers.add("F0000001_2," + chuanyunSelfWorkHourDO.getProjectId());
|
|
|
- matchers.add("F0000002_2," + chuanyunSelfWorkHourDO.getUserId());
|
|
|
- matchers.add("F0000003_2," + chuanyunSelfWorkHourDO.getDayLogDate());
|
|
|
- var filter = Filter.instance(0, 1, true, "And", matchers);
|
|
|
- var chuanyunFindAllResponse = chuanYunManager.findAll(ChuanyunMemberHourDO.SCHEMA_CODE, filter);
|
|
|
- ChuanyunSaveDTO chuanyunSaveDTO;
|
|
|
- if (chuanyunFindAllResponse.getReturnData() != null) {
|
|
|
- List<ChuanyunMemberHourDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {
|
|
|
- });
|
|
|
- chuanyunSaveDTO = chuanYunManager.delete(ChuanyunMemberHourDO.SCHEMA_CODE, result.get(0).getObjectId());
|
|
|
+ if (!chuanyunSelfWorkHourDO.getProjectType().equals("生产项目")){
|
|
|
+ String projectId;
|
|
|
+ if (chuanyunSelfWorkHourDO.getProjectId().equals(ChuanYunConstant.PRODUCTION_PROJECT_ID)){
|
|
|
+ projectId="";
|
|
|
+ }else{
|
|
|
+ projectId=chuanyunSelfWorkHourDO.getProjectId();
|
|
|
+ }
|
|
|
+ Integer count = map.get(chuanyunSelfWorkHourDO.getUserId() + projectId + chuanyunSelfWorkHourDO.getDayLogDate());
|
|
|
+ if (count == null) {
|
|
|
+ try {
|
|
|
+ //删除数据库日工时
|
|
|
+ chuanyunSelfWorkHourDao.delete(chuanyunSelfWorkHourDO);
|
|
|
+ //删除氚云日工时
|
|
|
+ List<String> matchers = new ArrayList<>();
|
|
|
+ if (!StringUtils.isEmpty(chuanyunSelfWorkHourDO.getProjectId())&&!chuanyunSelfWorkHourDO.getProjectId().equals(ChuanYunConstant.PRODUCTION_PROJECT_ID)){
|
|
|
+ matchers.add("F0000001_2," + chuanyunSelfWorkHourDO.getProjectId());
|
|
|
+ }
|
|
|
+ matchers.add("F0000002_2," + chuanyunSelfWorkHourDO.getUserId());
|
|
|
+ matchers.add("F0000003_2," + chuanyunSelfWorkHourDO.getDayLogDate());
|
|
|
+ var filter = Filter.instance(0, 1, true, "And", matchers);
|
|
|
+ var chuanyunFindAllResponse = chuanYunManager.findAll(ChuanyunMemberHourDO.SCHEMA_CODE, filter);
|
|
|
+ ChuanyunSaveDTO chuanyunSaveDTO;
|
|
|
+ if (chuanyunFindAllResponse.getReturnData() != null) {
|
|
|
+ List<ChuanyunMemberHourDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {
|
|
|
+ });
|
|
|
+ chuanyunSaveDTO = chuanYunManager.delete(ChuanyunMemberHourDO.SCHEMA_CODE, result.get(0).getObjectId());
|
|
|
+ }
|
|
|
+ log.info(chuanyunSelfWorkHourDO.getUserId() + "删除" + chuanyunSelfWorkHourDO.getDayLogDate() + "位于" + chuanyunSelfWorkHourDO.getProjectId() + "工时");
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ log.error(e.getMessage());
|
|
|
}
|
|
|
- log.info(chuanyunSelfWorkHourDO.getUserId() + "删除" + chuanyunSelfWorkHourDO.getDayLogDate() + "位于" + chuanyunSelfWorkHourDO.getProjectId() + "工时");
|
|
|
- } catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- log.error(e.getMessage());
|
|
|
}
|
|
|
}
|
|
|
}
|