|
@@ -62,7 +62,7 @@ public class WorkHourStatistics {
|
|
|
}
|
|
|
|
|
|
|
|
|
-// @Scheduled(fixedDelay = 432000000L)
|
|
|
+ @Scheduled(fixedDelay = 432000000L)
|
|
|
public void updateHour() {
|
|
|
standardWorkHour();
|
|
|
standardWeeklyWorkHour();
|
|
@@ -151,39 +151,39 @@ public class WorkHourStatistics {
|
|
|
* 人员-项目-周度工时汇总
|
|
|
*/
|
|
|
private void standardWeeklyWorkHour() {
|
|
|
- long start=Instant.now().getEpochSecond();
|
|
|
- //更新数据库
|
|
|
- log.info("开始周工时标准化");
|
|
|
- List<ChuanyunWeekMemberHourDO> list = chuanyunWeekMemberHourDao.getWeekMemberHour();
|
|
|
- list.forEach(chuanyunWeekMemberHourDO -> {
|
|
|
- try{
|
|
|
- if (chuanyunWeekMemberHourDO!=null){
|
|
|
- ChuanyunWeekMemberHourDO weekMemberHourDO = new ChuanyunWeekMemberHourDO();
|
|
|
- weekMemberHourDO.setProjectId(chuanyunWeekMemberHourDO.getProjectId());
|
|
|
- weekMemberHourDO.setProjectType(chuanyunWeekMemberHourDO.getProjectType());
|
|
|
- weekMemberHourDO.setStandardWorkHour(chuanyunWeekMemberHourDO.getStandardWorkHour());
|
|
|
- weekMemberHourDO.setStatus(chuanyunWeekMemberHourDO.getStatus());
|
|
|
- weekMemberHourDO.setUserId(chuanyunWeekMemberHourDO.getUserId());
|
|
|
- weekMemberHourDO.setYear(chuanyunWeekMemberHourDO.getYear());
|
|
|
- weekMemberHourDO.setWeek(chuanyunWeekMemberHourDO.getWeek());
|
|
|
- ChuanyunWeekMemberHourDO oldWeekHour = chuanyunWeekMemberHourDao.findByProjectIdAndUserIdAndWeekAndStatusAndProjectTypeAndYear(chuanyunWeekMemberHourDO.getProjectId(),chuanyunWeekMemberHourDO.getUserId(),chuanyunWeekMemberHourDO.getWeek(),chuanyunWeekMemberHourDO.getStatus(),chuanyunWeekMemberHourDO.getProjectType(),chuanyunWeekMemberHourDO.getYear());
|
|
|
- if (oldWeekHour != null) {
|
|
|
- chuanyunWeekMemberHourDao.delete(oldWeekHour);
|
|
|
- }
|
|
|
- chuanyunWeekMemberHourDao.save(weekMemberHourDO);
|
|
|
- //搜索是否还有处于审批中的数据
|
|
|
- ChuanyunWeekMemberHourDO processWeekHour = chuanyunWeekMemberHourDao.getProcessWeekHour(chuanyunWeekMemberHourDO.getProjectId(),chuanyunWeekMemberHourDO.getUserId(),chuanyunWeekMemberHourDO.getYear(),chuanyunWeekMemberHourDO.getWeek(),chuanyunWeekMemberHourDO.getProjectType());
|
|
|
- if (processWeekHour == null){
|
|
|
- chuanyunWeekMemberHourDao.deleteByProjectIdAndUserIdAndYearAndWeekAndStatusAndProjectType(chuanyunWeekMemberHourDO.getProjectId(),chuanyunWeekMemberHourDO.getUserId(),chuanyunWeekMemberHourDO.getYear(),chuanyunWeekMemberHourDO.getWeek(),"2",chuanyunWeekMemberHourDO.getProjectType());
|
|
|
- //同时删除氚云钟数据
|
|
|
- deleteExamineStatus(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE,"F0000007","F0000001",chuanyunWeekMemberHourDO.getProjectId(),"F0000002",chuanyunWeekMemberHourDO.getUserId(),"F0000008",chuanyunWeekMemberHourDO.getYear(),"","","F0000006",chuanyunWeekMemberHourDO.getWeek(),"F0000003",chuanyunWeekMemberHourDO.getProjectType());
|
|
|
- }
|
|
|
- }
|
|
|
- }catch (Exception e){
|
|
|
- log.error(e.getMessage()+"周工时标准化异常");
|
|
|
- }
|
|
|
- });
|
|
|
- log.info("周工时标准化"+(Instant.now().getEpochSecond()-start)+"秒");
|
|
|
+// long start=Instant.now().getEpochSecond();
|
|
|
+// //更新数据库
|
|
|
+// log.info("开始周工时标准化");
|
|
|
+// List<ChuanyunWeekMemberHourDO> list = chuanyunWeekMemberHourDao.getWeekMemberHour();
|
|
|
+// list.forEach(chuanyunWeekMemberHourDO -> {
|
|
|
+// try{
|
|
|
+// if (chuanyunWeekMemberHourDO!=null){
|
|
|
+// ChuanyunWeekMemberHourDO weekMemberHourDO = new ChuanyunWeekMemberHourDO();
|
|
|
+// weekMemberHourDO.setProjectId(chuanyunWeekMemberHourDO.getProjectId());
|
|
|
+// weekMemberHourDO.setProjectType(chuanyunWeekMemberHourDO.getProjectType());
|
|
|
+// weekMemberHourDO.setStandardWorkHour(chuanyunWeekMemberHourDO.getStandardWorkHour());
|
|
|
+// weekMemberHourDO.setStatus(chuanyunWeekMemberHourDO.getStatus());
|
|
|
+// weekMemberHourDO.setUserId(chuanyunWeekMemberHourDO.getUserId());
|
|
|
+// weekMemberHourDO.setYear(chuanyunWeekMemberHourDO.getYear());
|
|
|
+// weekMemberHourDO.setWeek(chuanyunWeekMemberHourDO.getWeek());
|
|
|
+// ChuanyunWeekMemberHourDO oldWeekHour = chuanyunWeekMemberHourDao.findByProjectIdAndUserIdAndWeekAndStatusAndProjectTypeAndYear(chuanyunWeekMemberHourDO.getProjectId(),chuanyunWeekMemberHourDO.getUserId(),chuanyunWeekMemberHourDO.getWeek(),chuanyunWeekMemberHourDO.getStatus(),chuanyunWeekMemberHourDO.getProjectType(),chuanyunWeekMemberHourDO.getYear());
|
|
|
+// if (oldWeekHour != null) {
|
|
|
+// chuanyunWeekMemberHourDao.delete(oldWeekHour);
|
|
|
+// }
|
|
|
+// chuanyunWeekMemberHourDao.save(weekMemberHourDO);
|
|
|
+// //搜索是否还有处于审批中的数据
|
|
|
+// ChuanyunWeekMemberHourDO processWeekHour = chuanyunWeekMemberHourDao.getProcessWeekHour(chuanyunWeekMemberHourDO.getProjectId(),chuanyunWeekMemberHourDO.getUserId(),chuanyunWeekMemberHourDO.getYear(),chuanyunWeekMemberHourDO.getWeek(),chuanyunWeekMemberHourDO.getProjectType());
|
|
|
+// if (processWeekHour == null){
|
|
|
+// chuanyunWeekMemberHourDao.deleteByProjectIdAndUserIdAndYearAndWeekAndStatusAndProjectType(chuanyunWeekMemberHourDO.getProjectId(),chuanyunWeekMemberHourDO.getUserId(),chuanyunWeekMemberHourDO.getYear(),chuanyunWeekMemberHourDO.getWeek(),"2",chuanyunWeekMemberHourDO.getProjectType());
|
|
|
+// //同时删除氚云钟数据
|
|
|
+// deleteExamineStatus(ChuanyunProjectMemberWeekHourDO.SCHEMA_CODE,"F0000007","F0000001",chuanyunWeekMemberHourDO.getProjectId(),"F0000002",chuanyunWeekMemberHourDO.getUserId(),"F0000008",chuanyunWeekMemberHourDO.getYear(),"","","F0000006",chuanyunWeekMemberHourDO.getWeek(),"F0000003",chuanyunWeekMemberHourDO.getProjectType());
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }catch (Exception e){
|
|
|
+// log.error(e.getMessage()+"周工时标准化异常");
|
|
|
+// }
|
|
|
+// });
|
|
|
+// log.info("周工时标准化"+(Instant.now().getEpochSecond()-start)+"秒");
|
|
|
updateChuanyunWeekHour();
|
|
|
}
|
|
|
|
|
@@ -191,21 +191,21 @@ public class WorkHourStatistics {
|
|
|
* 单月工时汇总
|
|
|
*/
|
|
|
private void standardMonthlyWorkHour() {
|
|
|
- var flag = true;
|
|
|
- var pageSize = 20;
|
|
|
- var page = 0;
|
|
|
- while(flag) {
|
|
|
- var pageable= PageRequest.of(page,pageSize);
|
|
|
- var chuanyunUserCompanyList = chuanyunUserCompanyDao.findAllByStatus(1,pageable);
|
|
|
- if (page<=chuanyunUserCompanyList.getTotalPages()){
|
|
|
- page += 1;
|
|
|
- List<ChuanyunUserCompanyDO> userCompanyDOList = chuanyunUserCompanyList.getContent();
|
|
|
- //单项目单人单月成本
|
|
|
- userCompanyDOList.forEach(this::standardMonthlyHour);
|
|
|
- }else {
|
|
|
- flag = false;
|
|
|
- }
|
|
|
- }
|
|
|
+// var flag = true;
|
|
|
+// var pageSize = 20;
|
|
|
+// var page = 0;
|
|
|
+// while(flag) {
|
|
|
+// var pageable= PageRequest.of(page,pageSize);
|
|
|
+// var chuanyunUserCompanyList = chuanyunUserCompanyDao.findAllByStatus(1,pageable);
|
|
|
+// if (page<=chuanyunUserCompanyList.getTotalPages()){
|
|
|
+// page += 1;
|
|
|
+// List<ChuanyunUserCompanyDO> userCompanyDOList = chuanyunUserCompanyList.getContent();
|
|
|
+// //单项目单人单月成本
|
|
|
+// userCompanyDOList.forEach(this::standardMonthlyHour);
|
|
|
+// }else {
|
|
|
+// flag = false;
|
|
|
+// }
|
|
|
+// }
|
|
|
updateChuanyunMonthHour();
|
|
|
}
|
|
|
|