From a3fe79e605b07a5a908599aaa830a0860e9423d2 Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期三, 14 五月 2025 17:34:27 +0800 Subject: [PATCH] 修改 --- src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java | 158 ++++++++++++++++++++++++++++------------------------ 1 files changed, 85 insertions(+), 73 deletions(-) diff --git a/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java b/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java index f55a72a..15b99ea 100644 --- a/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java +++ b/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java @@ -1,5 +1,6 @@ package com.example.server.progressTrack.service; +import com.example.client.utils.TranslateToPlainStrUtils; import com.example.server.ExportExcel.dto.ExcelColumnDto; import com.example.client.service.BaseService; import com.example.server.ExportExcel.dto.ExprotExcelDto; @@ -58,7 +59,7 @@ private SysTeamGroupClassService sysTeamGroupClassService; - public List<DjJdgzTrackRecord> getList(Long level1NetworkId, Long deptId, Long teamId, Long cabinId, String type, Integer status, String name) { + public List<DjJdgzTrackRecord> getList(Long level1NetworkId, Long deptId, Long teamId, Long cabinId, String type, Integer status, Integer isealCabin, String name) { Long userId = null; /* Map adminRole = sysUserService.adminRole(); Object isTyRole = adminRole.get("isTyRole"); @@ -66,7 +67,7 @@ if (isTyRole.equals(true) || isYwzRole.equals(true)) { userId = UserContext.getUser().getId(); }*/ - List<DjJdgzTrackRecord> list = baseDao.getList(level1NetworkId, deptId, teamId, cabinId, type, status, name); + List<DjJdgzTrackRecord> list = baseDao.getList(level1NetworkId, deptId, teamId, cabinId, type, status, isealCabin, name); /*if (list != null && list.size() > 0) { sysOssService.setListOsses(list, "ProjectProgressFileUpload"); }*/ @@ -76,18 +77,6 @@ Integer trackNum = baseDao.getTrackNum(data.getLevel3NodeId()); data.setActualCompletion(data.getEstimatedCompletionTime()); data.setTrackNum(trackNum); - int weekNo = this.getWeekNo(data.getLevel1NetworkId()); - if (data.getWeekNo() != null) { - if (data.getWeekNo() != weekNo) { - data.setWeekNo(weekNo); - data.setIsUpdate(false); - } else { - data.setIsUpdate(true); - } - } else { - data.setWeekNo(weekNo); - data.setIsUpdate(false); - } } } return list; @@ -102,63 +91,75 @@ super.deleteLogic(ids); } - public Long save(DjJdgzTrackRecord djJdgzTrackRecord) { + public Long save(DjJdgzTrackRecord djJdgzTrackRecord, String type) { Long id = null; - int weekNo = this.getWeekNo(djJdgzTrackRecord.getLevel1NetworkId()); - LocalDate currentDate = LocalDate.now(); - // 瀹氫箟鏃ユ湡鏍煎紡 - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - // 灏嗗綋鍓嶆棩鏈熸牸寮忓寲涓哄瓧绗︿覆 - String formattedDate = currentDate.format(formatter); - djJdgzTrackRecord.setUpdateDate(formattedDate); - if (djJdgzTrackRecord.getCurrentStatus() == 1) { - //鏃堕棿姣旇緝 - djJdgzTrackRecord.setEstimatedCompletionTime(formattedDate); - } - if (djJdgzTrackRecord.getIsUpdate()) { - this.update(djJdgzTrackRecord); - id = djJdgzTrackRecord.getId(); - } else { - id = UUIDUtil.generateId(); - djJdgzTrackRecord.setWeekNo(weekNo); - djJdgzTrackRecord.setId(id); - djJdgzTrackRecord.setCreateDate(formattedDate); - this.insert(djJdgzTrackRecord); - id = djJdgzTrackRecord.getId(); - } + int weekNo = this.getWeekNo(djJdgzTrackRecord.getLevel1NetworkId(),new Date()); - if (djJdgzTrackRecord.getCurrentStatus() == 1) { - DjJdgzNetworkLevel3List nextNode = djJdgzNetworkLevel3ListService.getNextNode(djJdgzTrackRecord.getLevel3NodeId(), djJdgzTrackRecord.getLevel3NetworkId()); - if (nextNode != null) { - DjJdgzTrackRecord data = new DjJdgzTrackRecord(); - data.setLevel3NodeId(nextNode.getId()); - data.setProcessName(nextNode.getProcessName()); - data.setLevel3NetworkId(djJdgzTrackRecord.getLevel3NetworkId()); - data.setLevel3NetworkName(djJdgzTrackRecord.getLevel3NetworkName()); - data.setEstimatedCompletionTime(nextNode.getRequiredCompletionTime()); - data.setGeneralRepairUnit(djJdgzTrackRecord.getGeneralRepairUnit()); - data.setGeneralRepairUnitContact(djJdgzTrackRecord.getGeneralRepairUnitContact()); - data.setGeneralRepairUnitDirector(djJdgzTrackRecord.getGeneralRepairUnitDirector()); - data.setRepairUnit(djJdgzTrackRecord.getRepairUnit()); - data.setRepairUnitContact(djJdgzTrackRecord.getRepairUnitContact()); - data.setRepairUnitDirector(djJdgzTrackRecord.getRepairUnitDirector()); - data.setTrackMethod(1); - data.setWeekNo(weekNo); - data.setUpdateDate(formattedDate); - data.setCreateDate(formattedDate); - this.insert(data); + if (type.equals("import")) { + Long oldId = baseDao.getIsExit(djJdgzTrackRecord.getLevel3NetworkId(), djJdgzTrackRecord.getProcessName(), djJdgzTrackRecord.getWeekNo()); + if (oldId != null) { + djJdgzTrackRecord.setId(oldId); + djJdgzTrackRecord.setIsUpdate(true); + } else { + djJdgzTrackRecord.setIsUpdate(false); + } + }else{ + if (djJdgzTrackRecord.getWeekNo() != null && djJdgzTrackRecord.getWeekNo() == weekNo) { + djJdgzTrackRecord.setIsUpdate(true); + } else { + djJdgzTrackRecord.setWeekNo(weekNo); + djJdgzTrackRecord.setIsUpdate(false); + } + LocalDate currentDate = LocalDate.now(); + // 瀹氫箟鏃ユ湡鏍煎紡 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + // 灏嗗綋鍓嶆棩鏈熸牸寮忓寲涓哄瓧绗︿覆 + String formattedDate = currentDate.format(formatter); + + if (djJdgzTrackRecord.getCurrentStatus() == 1) { + djJdgzTrackRecord.setEstimatedCompletionTime(formattedDate); } } - //鏀瑰彉涓夌骇缃戠粶鍥剧姸鎬� + + if (djJdgzTrackRecord.getIsUpdate()) { + this.update(djJdgzTrackRecord); + } else { + djJdgzTrackRecord.setId(null); + if(type.equals("save")){ + djJdgzTrackRecord.setWeekNo(weekNo); + } + this.insert(djJdgzTrackRecord); + } + id = djJdgzTrackRecord.getId(); + this.setLevel3Status(djJdgzTrackRecord.getLevel3NodeId(), djJdgzTrackRecord.getCurrentStatus(), djJdgzTrackRecord.getEstimatedCompletionTime()); + + if (djJdgzTrackRecord.getCurrentStatus() == 1) { + DjJdgzNetworkLevel3List nextNode = baseDao.isExistTrackRecord(djJdgzNetworkLevel3ListService.get(djJdgzTrackRecord.getLevel3NodeId()).getSort(), djJdgzTrackRecord.getLevel3NetworkId()); + if (nextNode != null && nextNode.getTrackRecordId() == null) { + djJdgzTrackRecord.setId(null); + djJdgzTrackRecord.setLevel3NodeId(nextNode.getId()); + djJdgzTrackRecord.setProcessName(nextNode.getProcessName()); + djJdgzTrackRecord.setEstimatedCompletionTime(nextNode.getRequiredCompletionTime()); + djJdgzTrackRecord.setWeekNo(weekNo); + djJdgzTrackRecord.setCurrentStatus(0); + + djJdgzTrackRecord.setUpdateDate(null); + djJdgzTrackRecord.setCreateDate(null); + djJdgzTrackRecord.setCreator(null); + djJdgzTrackRecord.setUpdater(null); + this.insert(djJdgzTrackRecord); + this.setLevel3Status(djJdgzTrackRecord.getLevel3NodeId(), djJdgzTrackRecord.getCurrentStatus(), djJdgzTrackRecord.getEstimatedCompletionTime()); + } + } return id; + } - public int getWeekNo(Long level1NetworkId) { + public int getWeekNo(Long level1NetworkId,Date nowDate) { DjJdgzNetworkLevel1 level1Network = djJdgzNetworkLevel1Service.get(level1NetworkId); SimpleDateFormat sdFormat = new SimpleDateFormat("yyyy-MM-dd"); - String formattedDate = sdFormat.format(new Date()); - Date nowDate = null; + String formattedDate = sdFormat.format(nowDate); Date startDate = null; try { nowDate = sdFormat.parse(formattedDate); @@ -198,7 +199,7 @@ return baseDao.getReport(level1NetworkId); } - public List<DjJdgzTrackRecord> prompt(Long level1NetworkId) { + public List<DjJdgzTrackRecord> prompt(Long level1NetworkId, Long deptId, Long teamId, String name) { Long userId = null; /* Map adminRole = sysUserService.adminRole(); Object isTyRole = adminRole.get("isTyRole"); @@ -206,8 +207,8 @@ if (isTyRole.equals(true) || isYwzRole.equals(true)) { userId = UserContext.getUser().getId(); }*/ - int weekNo = this.getWeekNo(level1NetworkId); - List<DjJdgzTrackRecord> data = baseDao.prompt(level1NetworkId, weekNo, userId); + int weekNo = this.getWeekNo(level1NetworkId,new Date()); + List<DjJdgzTrackRecord> data = baseDao.prompt(level1NetworkId, weekNo, userId, deptId, teamId, name); for (DjJdgzTrackRecord record : data) { int i = weekNo - record.getWeekNo(); record.setStatus(i + "鍛ㄦ湭瀹屾垚"); @@ -219,8 +220,6 @@ Long level3NetworkId, Long level3NodeId, Integer status, Date beginDate, Date endDate, Integer istq, List<ExcelColumnDto> columnDto) { List<ExprotExcelDto> dtos = new ArrayList<>(); - /* Map<String, String> keywordMap = dailyPlanService.getReplacement(); - String keywordT = keywordMap.get("ting");*/ Map<Integer, String> trackMethodMap = new HashMap<>(); trackMethodMap.put(0, "绾夸笅"); @@ -295,7 +294,8 @@ } } - public List<DjJdgzTrackRecord> getListByImport(Long level1Id, Long level2Id, Long level2NodeId, String selectedIds) { + public List<DjJdgzTrackRecord> getListByImport(Long level1Id, Long level2Id, Long level2NodeId, String + selectedIds) { return baseDao.getListByImport(level1Id, level2Id, level2NodeId, selectedIds); } @@ -387,7 +387,8 @@ isErr = true; continue; } else { - int weekNo = this.getWeekNo(level1NetworkId); + Date parsedDate = new SimpleDateFormat("yyyy-MM-dd").parse(dataDate); + int weekNo = this.getWeekNo(level1NetworkId, parsedDate); data.setWeekNo(weekNo); data.setLevel1NetworkId(level1NetworkId); data.setLevel3NetworkId(level3.getId()); @@ -472,6 +473,7 @@ } if (StringUtils.isNotBlank(trackPersonContact)) { + trackPersonContact = TranslateToPlainStrUtils.translateToPlainStr(trackPersonContact); data.setTrackPersonContact(trackPersonContact); } @@ -480,21 +482,23 @@ } if (StringUtils.isNotBlank(trackedPerson)) { - data.setTrackPerson(trackPersonStr); + data.setTrackedPerson(trackedPerson); } if (StringUtils.isNotBlank(trackedPersonContact)) { - data.setTrackPersonContact(trackPersonContact); + trackedPersonContact = TranslateToPlainStrUtils.translateToPlainStr(trackedPersonContact); + data.setTrackedPersonContact(trackedPersonContact); } if (StringUtils.isNotBlank(trackedPersonUnit)) { - data.setTrackPersonUnit(trackPersonUnit); + data.setTrackedPersonUnit(trackedPersonUnit); } if (StringUtils.isNotBlank(generalRepairUnit)) { data.setGeneralRepairUnit(generalRepairUnit); } if (StringUtils.isNotBlank(generalRepairUnitContact)) { + generalRepairUnitContact = TranslateToPlainStrUtils.translateToPlainStr(generalRepairUnitContact); data.setGeneralRepairUnitContact(generalRepairUnitContact); } if (StringUtils.isNotBlank(generalRepairUnitDirector)) { @@ -504,6 +508,7 @@ data.setRepairUnit(repairUnit); } if (StringUtils.isNotBlank(generalRepairUnit)) { + generalRepairUnit = TranslateToPlainStrUtils.translateToPlainStr(generalRepairUnit); data.setRepairUnitContact(repairUnitContact); } if (StringUtils.isNotBlank(generalRepairUnit)) { @@ -511,8 +516,7 @@ } if (!isErr) { - data.setIsUpdate(false); - this.save(data); + this.save(data, "import"); } if (isErr) { err++; @@ -536,4 +540,12 @@ public List<ReportRecordDto> getReportRecord(Long level1NetworkId, int column, Long teamgroupId) { return baseDao.getReportRecord(level1NetworkId, column, teamgroupId); } + + public List<DjJdgzTrackRecord> getName(Long level3NetworkId) { + return baseDao.getName(level3NetworkId); + } + + public List<DjJdgzTrackRecord> getRecordById(Long id) { + return baseDao.getRecordById(id); + } } -- Gitblit v1.9.1