From 66f0597bf6a1e79540c6bc51dedf561c22f3bdb5 Mon Sep 17 00:00:00 2001
From: jinlin <jinlin>
Date: 星期二, 13 五月 2025 17:49:26 +0800
Subject: [PATCH] 修改

---
 src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java |  418 ++++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 328 insertions(+), 90 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 e011133..90d2886 100644
--- a/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java
+++ b/src/main/java/com/example/server/progressTrack/service/DjJdgzTrackRecordService.java
@@ -1,23 +1,34 @@
 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;
 import com.example.server.ExportExcel.method.ExcelExport;
+import com.example.server.progressTrack.Dto.ReportRecordDto;
 import com.example.server.progressTrack.Dto.StatistReportsDto;
 import com.example.server.progressTrack.dao.DjJdgzTrackRecordDao;
 import com.example.server.progressTrack.model.DjJdgzNetworkLevel1;
+import com.example.server.progressTrack.model.DjJdgzNetworkLevel3;
 import com.example.server.progressTrack.model.DjJdgzNetworkLevel3List;
 import com.example.server.progressTrack.model.DjJdgzTrackRecord;
 import com.example.server.teamGroup.service.SysTeamGroupClassService;
 import com.example.server.user.service.UserService;
+import com.example.server.utils.FileUtils;
+import com.example.server.utils.ImportUtil;
 import com.example.server.utils.TreeFieldUtils;
 import com.example.server.utils.UUIDUtil;
+import org.apache.commons.lang3.StringUtils;
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.apache.poi.ss.usermodel.HorizontalAlignment;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
 
-import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
@@ -41,12 +52,14 @@
     @Autowired
     private DjJdgzNetworkLevel3ListService djJdgzNetworkLevel3ListService;
     @Autowired
+    private DjJdgzNetworkLevel3Service djJdgzNetworkLevel3Service;
+    @Autowired
     private UserService sysUserService;
     @Autowired
     private SysTeamGroupClassService sysTeamGroupClassService;
 
 
-    public List<DjJdgzTrackRecord> getList(Long level1NetworkId, Integer status) {
+    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");
@@ -54,7 +67,7 @@
         if (isTyRole.equals(true) || isYwzRole.equals(true)) {
             userId =  UserContext.getUser().getId();
         }*/
-        List<DjJdgzTrackRecord> list = baseDao.getList(level1NetworkId, status, userId);
+        List<DjJdgzTrackRecord> list = baseDao.getList(level1NetworkId, deptId, teamId, cabinId, type, status, isealCabin, name);
         /*if (list != null && list.size() > 0) {
             sysOssService.setListOsses(list, "ProjectProgressFileUpload");
         }*/
@@ -64,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;
@@ -90,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);
@@ -186,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");
@@ -194,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 + "鍛ㄦ湭瀹屾垚");
@@ -205,10 +218,8 @@
 
     public void exportExcel(String filePath, String teamgroupId, Long level1NetworkId,
                             Long level3NetworkId, Long level3NodeId, Integer status, Date beginDate,
-                            Date endDate, Integer istq) {
+                            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, "绾夸笅");
@@ -225,26 +236,6 @@
 
         ExprotExcelDto dto = new ExprotExcelDto();
         dto.setSheetName("璺熻釜璁板綍鏄庣粏");
-        List<ExcelColumnDto> columnDto = new ArrayList<>();
-
-        columnDto.add(new ExcelColumnDto("涓�绾ц妭鐐�", "Level1NodeName", 20, HorizontalAlignment.LEFT));
-        columnDto.add(new ExcelColumnDto("浜岀骇鑺傜偣", "Level2NodeName", 20, HorizontalAlignment.LEFT));
-        columnDto.add(new ExcelColumnDto("椤圭洰鍚嶇О", "Level3NetworkName", 20, HorizontalAlignment.LEFT));
-        columnDto.add(new ExcelColumnDto("褰撳墠鑺傜偣", "Level3NodeName", 20, HorizontalAlignment.LEFT));
-        columnDto.add(new ExcelColumnDto("涓撲笟", "TeamGroupName", 20, HorizontalAlignment.CENTER));
-        columnDto.add(new ExcelColumnDto("鎬绘壙淇崟浣嶅強璐熻矗浜�", "GeneralRepair", 25, HorizontalAlignment.LEFT));
-        columnDto.add(new ExcelColumnDto("鍒嗘壙淇崟浣嶅強璐熻矗浜�", "Repair", 25, HorizontalAlignment.LEFT));
-        columnDto.add(new ExcelColumnDto("璺熻釜鏂瑰紡", "trackMethodStr", 10, HorizontalAlignment.CENTER));
-        columnDto.add(new ExcelColumnDto("鍔╀慨浜�", "TrackPerson", 25, HorizontalAlignment.LEFT));
-        columnDto.add(new ExcelColumnDto("鍘傛柟", "TrackedPerson", 25, HorizontalAlignment.LEFT));
-        columnDto.add(new ExcelColumnDto("璺熻釜鍦扮偣", "TrackLocation", 10, HorizontalAlignment.LEFT));
-        columnDto.add(new ExcelColumnDto("鑺傜偣杩涘睍", "status", 10, HorizontalAlignment.CENTER));
-        columnDto.add(new ExcelColumnDto("鑴辨湡椋庨櫓", "hasDelayRiskStr", 10, HorizontalAlignment.CENTER));
-        columnDto.add(new ExcelColumnDto("棰勮瀹屾垚鏃堕棿", "EstimatedCompletionTime", 15, HorizontalAlignment.CENTER));
-        columnDto.add(new ExcelColumnDto("瀛樺湪闂", "Problem", 20, HorizontalAlignment.LEFT));
-        columnDto.add(new ExcelColumnDto("鍚庣画璁″垝", "FollowupPlan", 20, HorizontalAlignment.LEFT));
-        columnDto.add(new ExcelColumnDto("澶囨敞", "Remark", 20, HorizontalAlignment.LEFT));
-        columnDto.add(new ExcelColumnDto("濉啓鏃堕棿", "UpdateDate", 15, HorizontalAlignment.CENTER));
 
         List<DjJdgzTrackRecord> list = baseDao.getdata(teamgroupId, level1NetworkId, level3NetworkId, level3NodeId, status, beginDate, endDate, istq);
 
@@ -303,7 +294,254 @@
         }
     }
 
-    public List<DjJdgzTrackRecord> getListByImport(Long level1Id, Long level2Id, Long level2NodeId, String selectedIds) {
-        return baseDao.getListByImport(level1Id,level2Id,level2NodeId,selectedIds);
+    public List<DjJdgzTrackRecord> getListByImport(Long level1Id, Long level2Id, Long level2NodeId, String
+            selectedIds) {
+        return baseDao.getListByImport(level1Id, level2Id, level2NodeId, selectedIds);
+    }
+
+    public String importDiagramFromExcel(String path) {
+        String result = "true";
+        Integer sum = 0; // 鎬诲叡鐨勬潯鏁�
+        Integer suc = 0; // 鎴愬姛鐨勬潯鏁�
+        Integer err = 0; // 澶辫触鐨勬潯鏁�
+        Map<String, Object> errMap = new HashMap<>();
+        MultipartFile mutFile = null;
+        try {
+            mutFile = FileUtils.convertFileToMultipartFile(path);
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        String sheetName = null;
+        int row1 = 0;
+        try {
+            // 鑾峰彇瀵煎叆鏂囦欢鐨勫悗缂�鍚�
+            String fileName = mutFile.getOriginalFilename();
+            Workbook workbook = null;
+            //瑙e喅excel鐗堟湰闂
+            if (fileName != null && fileName.endsWith(".xls")) {
+                workbook = new HSSFWorkbook(mutFile.getInputStream());
+            } else if (fileName != null && fileName.endsWith(".xlsx")) {
+                workbook = new XSSFWorkbook(mutFile.getInputStream());
+            }
+            assert workbook != null; //鏂█濡傛灉[boolean琛ㄨ揪寮廬涓簍rue锛屽垯绋嬪簭缁х画鎵ц銆� 濡傛灉涓篺alse锛屽垯绋嬪簭鎶涘嚭AssertionError锛屽苟缁堟鎵ц銆�
+
+            Sheet sheet = workbook.getSheetAt(0);
+            int num = sheet.getLastRowNum(); // 涓�鍏辨湁澶氬皯琛�
+            sheetName = sheet.getSheetName(); //鑾峰彇褰撳墠sheet鍚嶇О
+            sum = sum + num;
+
+            Map<String, Integer> trackMethodMap = new HashMap<>();
+            trackMethodMap.put("绾夸笅", 0);
+            trackMethodMap.put("鐢佃瘽", 1);
+
+            Map<String, Integer> statusMap = new HashMap<>();
+            statusMap.put("杩涜涓�", 0);
+            statusMap.put("宸插畬鎴�", 1);
+
+            Map<String, Integer> hasDelayRiskMap = new HashMap<>();
+            hasDelayRiskMap.put("鏈�", 1);
+            hasDelayRiskMap.put("鏃�", 0);
+
+
+            for (int j = 2; j <= num; j++) {
+                int sort = 0;
+                DjJdgzTrackRecord data = new DjJdgzTrackRecord();
+
+                boolean isErr = false;
+                row1 = j + 1;
+                String pattern = "yyyy-MM-dd";
+                Row row = sheet.getRow(j);
+
+                String idStr = ImportUtil.getCellValue(row, 0, pattern);
+                String dataDate = ImportUtil.getCellValue(row, 1, pattern);
+                String name = ImportUtil.getCellValue(row, 2, pattern);
+                String progressName = ImportUtil.getCellValue(row, 3, pattern);
+                String trackMethodStr = ImportUtil.getCellValue(row, 4, pattern);
+                String trackLocationStr = ImportUtil.getCellValue(row, 5, pattern);
+                String currentStatusStr = ImportUtil.getCellValue(row, 6, pattern);
+                String hasDelayRiskStr = ImportUtil.getCellValue(row, 7, pattern);
+                String estimatedCompletionTimeStr = ImportUtil.getCellValue(row, 8, pattern);
+                String problemStr = ImportUtil.getCellValue(row, 9, pattern);
+                String followupPlanStr = ImportUtil.getCellValue(row, 10, pattern);
+                String remarkStr = ImportUtil.getCellValue(row, 11, pattern);
+                String trackPersonStr = ImportUtil.getCellValue(row, 12, pattern);
+                String trackPersonContact = ImportUtil.getCellValue(row, 13, pattern);
+                String trackPersonUnit = ImportUtil.getCellValue(row, 14, pattern);
+                String trackedPerson = ImportUtil.getCellValue(row, 15, pattern);
+                String trackedPersonContact = ImportUtil.getCellValue(row, 16, pattern);
+                String trackedPersonUnit = ImportUtil.getCellValue(row, 17, pattern);
+                String generalRepairUnit = ImportUtil.getCellValue(row, 18, pattern);
+                String generalRepairUnitDirector = ImportUtil.getCellValue(row, 19, pattern);
+                String generalRepairUnitContact = ImportUtil.getCellValue(row, 20, pattern);
+                String repairUnit = ImportUtil.getCellValue(row, 21, pattern);
+                String repairUnitDirector = ImportUtil.getCellValue(row, 22, pattern);
+                String repairUnitContact = ImportUtil.getCellValue(row, 23, pattern);
+
+                DjJdgzNetworkLevel3 level3 = djJdgzNetworkLevel3Service.get(Long.parseLong(idStr));
+                Long level1NetworkId = level3.getLevel1NetworkId();
+
+                Long id = UUIDUtil.generateId();
+
+                if (StringUtils.isEmpty(dataDate)) {
+                    result = "绗�" + j + "琛�" + "褰曞叆鏃堕棿涓嶈兘涓虹┖";
+                    isErr = true;
+                    continue;
+                } else {
+                    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());
+                }
+
+                if (StringUtils.isEmpty(name)) {
+                    result = "绗�" + j + "琛�" + "璁惧鍚嶇О涓嶈兘涓虹┖";
+                    isErr = true;
+                    continue;
+                } else {
+                    data.setId(id);
+                    data.setLevel3NetworkName(name);
+                }
+
+                if (StringUtils.isEmpty(progressName)) {
+                    result = "绗�" + j + "琛�" + "鑺傜偣鍚嶇О涓嶈兘涓虹┖";
+                    isErr = true;
+                    continue;
+                } else {
+                    List<DjJdgzNetworkLevel3List> list = djJdgzNetworkLevel3ListService.getList(level3.getId());
+                    for (DjJdgzNetworkLevel3List item : list) {
+                        if (item.getProcessName().equals(progressName)) {
+                            data.setLevel3NodeId(item.getId());
+                            data.setEstimatedCompletionTime(item.getRequiredCompletionTime());
+                            break;
+                        }
+                    }
+                    data.setProcessName(progressName);
+                }
+
+                if (StringUtils.isEmpty(trackMethodStr)) {
+                    data.setTrackMethod(0);
+                } else {
+                    data.setTrackMethod(trackMethodMap.get(trackMethodStr));
+                }
+
+                if (StringUtils.isNotBlank(trackLocationStr)) {
+                    data.setTrackLocation(trackLocationStr);
+                }
+
+                if (StringUtils.isEmpty(currentStatusStr)) {
+                    data.setCurrentStatus(0);
+                } else {
+                    data.setCurrentStatus(statusMap.get(currentStatusStr));
+                }
+
+                if (StringUtils.isEmpty(hasDelayRiskStr)) {
+                    data.setHasDelayRisk(0);
+                } else {
+                    data.setHasDelayRisk(hasDelayRiskMap.get(hasDelayRiskStr));
+                }
+
+                if (StringUtils.isNotBlank(estimatedCompletionTimeStr)) {
+                    if (estimatedCompletionTimeStr.matches("[0-9/]+")) {
+                        estimatedCompletionTimeStr = estimatedCompletionTimeStr.replace("/", "-");
+                        data.setEstimatedCompletionTime(estimatedCompletionTimeStr);
+                    } else if (estimatedCompletionTimeStr.matches("[0-9.]+")) {
+                        estimatedCompletionTimeStr = estimatedCompletionTimeStr.replace(".", "-");
+                        data.setEstimatedCompletionTime(estimatedCompletionTimeStr);
+                    } else if (estimatedCompletionTimeStr.matches("[0-9-]+")) {
+                        data.setEstimatedCompletionTime(estimatedCompletionTimeStr);
+                    } else {
+                        result = "绗�" + j + "琛�" + "绗�" + 1 + "涓�" + "棰勮瀹屾垚鏃堕棿鏃ユ湡鏍煎紡涓嶈鑼�";
+                        isErr = true;
+                    }
+                }
+
+                if (StringUtils.isNotBlank(problemStr)) {
+                    data.setProblem(problemStr);
+                }
+
+                if (StringUtils.isNotBlank(followupPlanStr)) {
+                    data.setFollowupPlan(followupPlanStr);
+                }
+
+                if (StringUtils.isNotBlank(remarkStr)) {
+                    data.setRemark(remarkStr);
+                }
+
+                if (StringUtils.isNotBlank(trackPersonStr)) {
+                    data.setTrackPerson(trackPersonStr);
+                }
+
+                if (StringUtils.isNotBlank(trackPersonContact)) {
+                    trackPersonContact = TranslateToPlainStrUtils.translateToPlainStr(trackPersonContact);
+                    data.setTrackPersonContact(trackPersonContact);
+                }
+
+                if (StringUtils.isNotBlank(trackPersonUnit)) {
+                    data.setTrackPersonUnit(trackPersonUnit);
+                }
+
+                if (StringUtils.isNotBlank(trackedPerson)) {
+                    data.setTrackedPerson(trackedPerson);
+                }
+
+                if (StringUtils.isNotBlank(trackedPersonContact)) {
+                    trackedPersonContact = TranslateToPlainStrUtils.translateToPlainStr(trackedPersonContact);
+                    data.setTrackedPersonContact(trackedPersonContact);
+                }
+
+                if (StringUtils.isNotBlank(trackedPersonUnit)) {
+                    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)) {
+                    data.setGeneralRepairUnitDirector(generalRepairUnitDirector);
+                }
+                if (StringUtils.isNotBlank(generalRepairUnit)) {
+                    data.setRepairUnit(repairUnit);
+                }
+                if (StringUtils.isNotBlank(generalRepairUnit)) {
+                    generalRepairUnit = TranslateToPlainStrUtils.translateToPlainStr(generalRepairUnit);
+                    data.setRepairUnitContact(repairUnitContact);
+                }
+                if (StringUtils.isNotBlank(generalRepairUnit)) {
+                    data.setRepairUnitDirector(repairUnitDirector);
+                }
+
+                if (!isErr) {
+                    this.save(data, "import");
+                }
+                if (isErr) {
+                    err++;
+                    continue;
+                }
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            result = "瀵煎叆" + row1 + "琛屾暟鎹椂妫�娴嬪埌寮傚父锛屼腑鏂鍏ユ搷浣溿��";
+        }
+
+        suc = sum - err;
+
+        return result;
+    }
+
+    public void retract(Long id) {
+        baseDao.retract(id);
+    }
+
+    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);
     }
 }

--
Gitblit v1.9.1