فهرست منبع

1.修改了字符串判断不标准的代码
2.调整了更新日志工时代码

verguenza 4 سال پیش
والد
کامیت
e41a73b78b

+ 2 - 2
src/main/java/com/galaxis/manatee/entity/chuanyun/data/object/ChuanyunAskForLeaveDO.java

@@ -154,8 +154,8 @@ public class ChuanyunAskForLeaveDO extends BasicDO {
         if(processInstanceTopVo.getOperationRecords()!= null) {
             if(processInstanceTopVo.getOperationRecords().get(0).getUserid().equals(processInstanceTopVo.getOperationRecords().get(processInstanceTopVo.getOperationRecords().size() -1).getUserid())
                     && processInstanceTopVo.getOperationRecords().get(0).getUserid().equals(processInstanceTopVo.getOriginatorUserid())  ) {
-                if(processInstanceTopVo.getOperationRecords().get(0).getOperationType().equals("START_PROCESS_INSTANCE")
-                        && processInstanceTopVo.getOperationRecords().get(processInstanceTopVo.getOperationRecords().size() -1).getOperationType().equals("TERMINATE_PROCESS_INSTANCE")) {
+                if("START_PROCESS_INSTANCE".equals(processInstanceTopVo.getOperationRecords().get(0).getOperationType())
+                        && "TERMINATE_PROCESS_INSTANCE".equals(processInstanceTopVo.getOperationRecords().get(processInstanceTopVo.getOperationRecords().size() -1).getOperationType())) {
                     chuanyunAskForLeaveDo.setIsCanncel(1);
                 }
             }

+ 2 - 2
src/main/java/com/galaxis/manatee/entity/chuanyun/data/object/ChuanyunProjectChangeDO.java

@@ -188,8 +188,8 @@ public class ChuanyunProjectChangeDO extends BasicDO {
         if(processInstanceTopVo.getOperationRecords()!= null) {
             if(processInstanceTopVo.getOperationRecords().get(0).getUserid().equals(processInstanceTopVo.getOperationRecords().get(processInstanceTopVo.getOperationRecords().size() -1).getUserid())
                     && processInstanceTopVo.getOperationRecords().get(0).getUserid().equals(processInstanceTopVo.getOriginatorUserid())  ) {
-                if(processInstanceTopVo.getOperationRecords().get(0).getOperationType().equals("START_PROCESS_INSTANCE")
-                        && processInstanceTopVo.getOperationRecords().get(processInstanceTopVo.getOperationRecords().size() -1).getOperationType().equals("TERMINATE_PROCESS_INSTANCE")) {
+                if("START_PROCESS_INSTANCE".equals(processInstanceTopVo.getOperationRecords().get(0).getOperationType())
+                        && "TERMINATE_PROCESS_INSTANCE".equals(processInstanceTopVo.getOperationRecords().get(processInstanceTopVo.getOperationRecords().size() -1).getOperationType())) {
                     chuanyunProjectChangeDO.setIsCancel(1);
                 }
             }

+ 171 - 0
src/main/java/com/galaxis/manatee/service/LogDownloadService.java

@@ -0,0 +1,171 @@
+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.ChuanyunGroupProjectDao;
+import com.galaxis.manatee.dao.ChuanyunLogDao;
+import com.galaxis.manatee.dao.ChuanyunUserCompanyDao;
+import com.galaxis.manatee.dao.ChuanyunUserDepartmentNameDao;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunGroupProjectDO;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunLogDO;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunUserCompanyDO;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunUserDepartmentNameDO;
+import com.galaxis.manatee.entity.chuanyun.dto.Filter;
+import com.galaxis.manatee.manager.ChuanYunManager;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
+
+import java.time.Instant;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.time.temporal.ChronoUnit;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 下载日志原始数据
+ * @author zcj
+ * @version 0.1
+ * @date 2021/3/13 2:14 上午
+ */
+@Slf4j
+@Service
+public class LogDownloadService {
+
+    private final ChuanYunManager chuanYunManager;
+    private final ChuanyunLogDao chuanyunLogDao;
+    private final ChuanyunUserCompanyDao chuanyunUserCompanyDao;
+    private final ChuanyunGroupProjectDao chuanyunGroupProjectDao;
+    private final ChuanyunUserDepartmentNameDao chuanyunUserDepartmentNameDao;
+
+    public LogDownloadService(ChuanYunManager chuanYunManager, ChuanyunLogDao chuanyunLogDao, ChuanyunUserCompanyDao chuanyunUserCompanyDao, ChuanyunGroupProjectDao chuanyunGroupProjectDao, ChuanyunUserDepartmentNameDao chuanyunUserDepartmentNameDao) {
+        this.chuanYunManager = chuanYunManager;
+        this.chuanyunLogDao = chuanyunLogDao;
+        this.chuanyunUserCompanyDao = chuanyunUserCompanyDao;
+        this.chuanyunGroupProjectDao = chuanyunGroupProjectDao;
+        this.chuanyunUserDepartmentNameDao = chuanyunUserDepartmentNameDao;
+    }
+
+    /**
+     * 更新日志数据
+     * @param isRecent  是否只更新最近30天
+     */
+    public void saveChuanyunLogDO(boolean isRecent){
+        var objectMapper = new ObjectMapper();
+        var start = 0;
+        var totalCount = 0L;
+        var flag = true;
+        var pageSize=100;
+        List<String> matchersString=new ArrayList<>();
+        //由于需要统计流程中的日志,在日志数据同步时将状态为2的数据一并统计
+        matchersString.add("Status_6,[1;2;3]");
+        if(isRecent){
+            //获取当前时间30天前日期
+            DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+            LocalDateTime now = LocalDateTime.now();
+            now = now.minus(30, ChronoUnit.DAYS);
+            matchersString.add("logDate_1,"+df.format(now));
+        }
+        while (flag) {
+            long startTime= Instant.now().getEpochSecond();
+            try {
+                //从氚云查询数据
+                var filter= Filter.instance(start,start+pageSize,true,Filter.AND,matchersString);
+                var chuanyunFindAllResponse = chuanYunManager.findAll(ChuanyunLogDO.SCHEMA_CODE, filter);
+                if (chuanyunFindAllResponse.getReturnData() == null) {
+                    flag = false;
+                    continue;
+                }
+                if (chuanyunFindAllResponse.getReturnData().getTotalCount() >= start + pageSize) {
+                    start += pageSize;
+                } else {
+                    flag = false;
+                }
+                //转化为POJO
+                List<ChuanyunLogDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {
+                });
+                //处理日志数据
+                result.forEach(this::updateChuanyunLogData);
+                //获取项目总数
+                totalCount = chuanyunFindAllResponse.getReturnData().getTotalCount();
+                //保存
+                chuanyunLogDao.saveAll(result);
+            } catch (Exception e) {
+                log.error(e.getMessage());
+                e.printStackTrace();
+            }
+            log.info("日志100条保存时间"+(Instant.now().getEpochSecond()-startTime)+"秒");
+        }
+        log.info("最近一月历史日志信息保存" + totalCount);
+    }
+
+    /**
+     * 更新氚云日志数据
+     * @param chuanyunLogDO 待处理数据
+     */
+    private void updateChuanyunLogData(ChuanyunLogDO chuanyunLogDO){
+        if(chuanyunLogDO.getDayLogList()==null||chuanyunLogDO.getDayLogList().size()==0){
+            chuanyunLogDO.setDayLogList(new ArrayList<>());
+            log.warn(chuanyunLogDO+"");
+            log.warn("异常数据");
+        }else{
+            //如果有重复就删除
+            chuanyunLogDao.findById(chuanyunLogDO.getObjectId()).ifPresent(chuanyunLogDao::delete);
+            //根据projectId获取code,如果是生产项目,则不用处理
+            //针对前期测试数据,可能出现日志为空的情况,跳过不处理
+            chuanyunLogDO.getDayLogList().forEach(chuanyunDayLog -> {
+                //离职人员补全用户Id及部门ID
+                if (StringUtils.isEmpty(chuanyunLogDO.getUserId())){
+                    var name="";
+                    if (StringUtils.isEmpty(chuanyunDayLog.getContent())){
+                        name=chuanyunLogDO.getName();
+                    }else {
+                        name=chuanyunDayLog.getContent();
+                    }
+                    chuanyunLogDO.setUserId(getCharacters(name));
+                    ChuanyunUserDepartmentNameDO chuanyunUserDepartmentNameDO = chuanyunUserDepartmentNameDao.findByUserName(chuanyunLogDO.getUserId());
+                    if (chuanyunUserDepartmentNameDO!=null){
+                        chuanyunLogDO.setDepartmentName(chuanyunUserDepartmentNameDO.getDepartmentName());
+                    }
+                }else {
+                    ChuanyunUserCompanyDO chuanyunUserCompanyDO = chuanyunUserCompanyDao.findByUserId(chuanyunLogDO.getUserObject().getObjectId());
+                    if (chuanyunUserCompanyDO!=null){
+                        chuanyunLogDO.setDepartmentName(getDepartmentName(chuanyunUserCompanyDO.getDepartment()));
+                    }
+                }
+                try{
+                    if(!ChuanYunConstant.PRODUCTION_PROJECT.equals(chuanyunDayLog.getProjectType())&& StringUtils.isEmpty(chuanyunDayLog.getProjectId())){
+                        log.info(chuanyunLogDO+"");
+                    }else if(!ChuanYunConstant.PRODUCTION_PROJECT.equals(chuanyunDayLog.getProjectType())){
+                        ChuanyunGroupProjectDO chuanyunGroupProjectDO=chuanyunGroupProjectDao.findById(chuanyunDayLog.getProjectId()).orElseThrow();
+                        chuanyunDayLog.setProjectCode(chuanyunGroupProjectDO.getProjectCode());
+                    }
+                }catch (Exception e){
+                    e.printStackTrace();
+                    log.warn(chuanyunDayLog+"");
+                }
+            });
+        }
+        //处理项目userId
+        if(chuanyunLogDO.getUserObject()!=null){
+            chuanyunLogDO.setUserId(chuanyunLogDO.getUserObject().getObjectId());
+        }
+    }
+
+    private String getCharacters(String str){
+        String reg = "[^\u4e00-\u9fa5]";
+        str = str.replaceAll(reg, " ");
+        return str.trim();
+    }
+
+    private String getDepartmentName(String str){
+        if (str.contains("/")){
+            String[] department = str.split("/");
+            return department[department.length-1];
+        }else {
+            return str;
+        }
+    }
+}

+ 5 - 96
src/main/java/com/galaxis/manatee/task/ChuanyunHumanResourceScheduledTask.java

@@ -8,6 +8,7 @@ import com.galaxis.manatee.entity.chuanyun.data.object.*;
 import com.galaxis.manatee.entity.chuanyun.dto.ChuanyunSaveDTO;
 import com.galaxis.manatee.entity.chuanyun.dto.Filter;
 import com.galaxis.manatee.manager.ChuanYunManager;
+import com.galaxis.manatee.service.LogDownloadService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Service;
@@ -33,16 +34,16 @@ public class ChuanyunHumanResourceScheduledTask {
     private final ChuanyunHolidaySalaryRuleDao chuanyunHolidaySalaryRuleDao;
     private final ChuanyunUserCompanyDao chuanyunUserCompanyDao;
     private final ChuanyunPayrollDao chuanyunPayrollDao;
-    private final ChuanyunUserDepartmentNameDao chuanyunUserDepartmentNameDao;
+    private final LogDownloadService logDownloadService;
 
-    public ChuanyunHumanResourceScheduledTask(ChuanYunManager chuanYunManager, ChuanyunLogDao chuanyunLogDao, ChuanyunGroupProjectDao chuanyunGroupProjectDao, ChuanyunHolidaySalaryRuleDao chuanyunHolidaySalaryRuleDao, ChuanyunUserCompanyDao chuanyunUserCompanyDao, ChuanyunPayrollDao chuanyunPayrollDao, ChuanyunUserDepartmentNameDao chuanyunUserDepartmentNameDao) {
+    public ChuanyunHumanResourceScheduledTask(ChuanYunManager chuanYunManager, ChuanyunLogDao chuanyunLogDao, ChuanyunGroupProjectDao chuanyunGroupProjectDao, ChuanyunHolidaySalaryRuleDao chuanyunHolidaySalaryRuleDao, ChuanyunUserCompanyDao chuanyunUserCompanyDao, ChuanyunPayrollDao chuanyunPayrollDao, LogDownloadService logDownloadService) {
         this.chuanYunManager = chuanYunManager;
         this.chuanyunLogDao = chuanyunLogDao;
         this.chuanyunGroupProjectDao = chuanyunGroupProjectDao;
         this.chuanyunHolidaySalaryRuleDao = chuanyunHolidaySalaryRuleDao;
         this.chuanyunUserCompanyDao = chuanyunUserCompanyDao;
         this.chuanyunPayrollDao = chuanyunPayrollDao;
-        this.chuanyunUserDepartmentNameDao = chuanyunUserDepartmentNameDao;
+        this.logDownloadService = logDownloadService;
     }
 
     /**
@@ -61,99 +62,7 @@ public class ChuanyunHumanResourceScheduledTask {
      */
     @Scheduled(cron = "0 0 1 * * *")
     private void updateLog() {
-        var objectMapper = new ObjectMapper();
-        var start = 0;
-        var totalCount = 0L;
-        var flag = true;
-        List<String> matchersString=new ArrayList<>();
-        //由于需要统计流程中的日志,在日志数据同步时将状态为2的数据一并统计
-//        matchersString.add("Status_2,1");
-        matchersString.add("Status_6,[1;2;3]");
-//        matchersString.add("logDate_4,2019-01-01 00:00:00");
-        while (flag) {
-            Long startTime= Instant.now().getEpochSecond();
-            try {
-                //从氚云查询数据
-                var filter= Filter.instance(start,start+pageSize,true,Filter.AND,matchersString);
-                var chuanyunFindAllResponse = chuanYunManager.findAll(ChuanyunLogDO.SCHEMA_CODE, filter);
-                if (chuanyunFindAllResponse.getReturnData() == null) {
-                    flag = false;
-                    continue;
-                }
-                if (chuanyunFindAllResponse.getReturnData().getTotalCount() >= start + pageSize) {
-                    start += pageSize;
-                } else {
-                    flag = false;
-                }
-                //转化为POJO
-                List<ChuanyunLogDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {
-                });
-                result.forEach(chuanyunLogDO -> {
-                    if(chuanyunLogDO.getDayLogList()==null||chuanyunLogDO.getDayLogList().size()==0){
-                        chuanyunLogDO.setDayLogList(new ArrayList<>());
-                        log.warn(chuanyunLogDO+"");
-                        log.warn("异常数据");
-                    }else{
-                        //如果有重复就删除
-                        chuanyunLogDao.findById(chuanyunLogDO.getObjectId()).ifPresent(toDelete -> {
-//                            log.info("删除" + toDelete.getObjectId());
-                            chuanyunLogDao.delete(toDelete);
-                        });
-                        //根据projectId获取code,如果是生产项目,则不用处理
-                        //针对前期测试数据,可能出现日志为空的情况,跳过不处理
-                        chuanyunLogDO.getDayLogList().forEach(chuanyunDayLog -> {
-                            try{
-                                //离职人员补全用户Id及部门ID
-                                if (StringUtils.isEmpty(chuanyunLogDO.getUserId())){
-                                    var name="";
-                                    if (StringUtils.isEmpty(chuanyunDayLog.getContent())){
-                                        name=chuanyunLogDO.getName();
-                                    }else {
-                                        name=chuanyunDayLog.getContent();
-                                    }
-                                    chuanyunLogDO.setUserId(getCharacters(name));
-                                    ChuanyunUserDepartmentNameDO chuanyunUserDepartmentNameDO = chuanyunUserDepartmentNameDao.findByUserName(chuanyunLogDO.getUserId());
-                                    if (chuanyunUserDepartmentNameDO!=null){
-                                        chuanyunLogDO.setDepartmentName(chuanyunUserDepartmentNameDO.getDepartmentName());
-                                    }
-                                }else {
-                                  ChuanyunUserCompanyDO chuanyunUserCompanyDO = chuanyunUserCompanyDao.findByUserId(chuanyunLogDO.getUserObject().getObjectId());
-                                  if (chuanyunUserCompanyDO!=null){
-                                      chuanyunLogDO.setDepartmentName(getDepartmentName(chuanyunUserCompanyDO.getDepartment()));
-                                  }
-                                }
-
-                                if(!"生产项目".equals(chuanyunDayLog.getProjectType())&& StringUtils.isEmpty(chuanyunDayLog.getProjectId())){
-                                    log.info(chuanyunLogDO+"");
-                                }else if(!"生产项目".equals(chuanyunDayLog.getProjectType())){
-                                    ChuanyunGroupProjectDO chuanyunGroupProjectDO=chuanyunGroupProjectDao.findById(chuanyunDayLog.getProjectId()).orElseThrow();
-                                    chuanyunDayLog.setProjectCode(chuanyunGroupProjectDO.getProjectCode());
-                                }
-                            }catch (Exception e){
-                                e.printStackTrace();
-                                log.warn(chuanyunLogDO+"");
-                            }
-                        });
-                        //判断所属部门是否正确
-                        //目前已经通过excel方式更新完成这个方法暂时不需要使用
-//                        checkDepartment(chuanyunLogDO);
-                    }
-                    //处理项目userId
-                    if(chuanyunLogDO.getUserObject()!=null){
-                        chuanyunLogDO.setUserId(chuanyunLogDO.getUserObject().getObjectId());
-                    }
-                });
-                //获取项目总数
-                totalCount = chuanyunFindAllResponse.getReturnData().getTotalCount();
-                //保存
-                chuanyunLogDao.saveAll(result);
-            } catch (Exception e) {
-                log.error(e.getMessage());
-                e.printStackTrace();
-            }
-            log.info(Instant.now().getEpochSecond()-startTime+"日志100条保存时间");
-        }
-        log.info("历史日志信息保存" + totalCount);
+        logDownloadService.saveChuanyunLogDO(false);
     }
 
     /**

+ 7 - 126
src/main/java/com/galaxis/manatee/task/WorkHourStatisticsRecently.java

@@ -1,23 +1,15 @@
 package com.galaxis.manatee.task;
 
-import com.fasterxml.jackson.core.type.TypeReference;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.galaxis.manatee.dao.*;
-import com.galaxis.manatee.entity.chuanyun.data.object.*;
-import com.galaxis.manatee.entity.chuanyun.dto.Filter;
-import com.galaxis.manatee.manager.ChuanYunManager;
+import com.galaxis.manatee.dao.ChuanyunUserCompanyDao;
+import com.galaxis.manatee.entity.chuanyun.data.object.ChuanyunUserCompanyDO;
+import com.galaxis.manatee.service.LogDownloadService;
 import com.galaxis.manatee.service.LogStandardService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.data.domain.PageRequest;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Service;
-import org.springframework.util.StringUtils;
 
 import java.time.Instant;
-import java.time.LocalDateTime;
-import java.time.format.DateTimeFormatter;
-import java.time.temporal.ChronoUnit;
-import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -26,19 +18,13 @@ import java.util.List;
 @Service
 @Slf4j
 public class WorkHourStatisticsRecently {
-    private final ChuanYunManager chuanYunManager;
-    private final ChuanyunLogDao chuanyunLogDao;
-    private final ChuanyunGroupProjectDao chuanyunGroupProjectDao;
+    private final LogDownloadService logDownloadService;
     private final ChuanyunUserCompanyDao chuanyunUserCompanyDao;
-    private final ChuanyunUserDepartmentNameDao chuanyunUserDepartmentNameDao;
     private final LogStandardService logStandardService;
 
-    public WorkHourStatisticsRecently(ChuanYunManager chuanYunManager, ChuanyunLogDao chuanyunLogDao, ChuanyunGroupProjectDao chuanyunGroupProjectDao, ChuanyunUserCompanyDao chuanyunUserCompanyDao, ChuanyunUserDepartmentNameDao chuanyunUserDepartmentNameDao, LogStandardService logStandardService) {
-        this.chuanYunManager = chuanYunManager;
-        this.chuanyunLogDao = chuanyunLogDao;
-        this.chuanyunGroupProjectDao = chuanyunGroupProjectDao;
+    public WorkHourStatisticsRecently(LogDownloadService logDownloadService, ChuanyunUserCompanyDao chuanyunUserCompanyDao, LogStandardService logStandardService) {
+        this.logDownloadService = logDownloadService;
         this.chuanyunUserCompanyDao = chuanyunUserCompanyDao;
-        this.chuanyunUserDepartmentNameDao = chuanyunUserDepartmentNameDao;
         this.logStandardService = logStandardService;
     }
 
@@ -54,96 +40,7 @@ public class WorkHourStatisticsRecently {
      * 更新最近一个月的日志信息
      */
     public void dayLog() {
-        var objectMapper = new ObjectMapper();
-        var start = 0;
-        var totalCount = 0L;
-        var flag = true;
-        var pageSize=100;
-        List<String> matchersString=new ArrayList<>();
-        //由于需要统计流程中的日志,在日志数据同步时将状态为2的数据一并统计
-        matchersString.add("Status_6,[1;2;3]");
-        //获取当前时间30天前日期
-        DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
-        LocalDateTime now = LocalDateTime.now();
-        now = now.minus(30, ChronoUnit.DAYS);
-        matchersString.add("logDate_1,"+df.format(now));
-        while (flag) {
-            long startTime= Instant.now().getEpochSecond();
-            try {
-                //从氚云查询数据
-                var filter= Filter.instance(start,start+pageSize,true,Filter.AND,matchersString);
-                var chuanyunFindAllResponse = chuanYunManager.findAll(ChuanyunLogDO.SCHEMA_CODE, filter);
-                if (chuanyunFindAllResponse.getReturnData() == null) {
-                    flag = false;
-                    continue;
-                }
-                if (chuanyunFindAllResponse.getReturnData().getTotalCount() >= start + pageSize) {
-                    start += pageSize;
-                } else {
-                    flag = false;
-                }
-                //转化为POJO
-                List<ChuanyunLogDO> result = objectMapper.convertValue(chuanyunFindAllResponse.getReturnData().getBizObjectArray(), new TypeReference<>() {
-                });
-                result.forEach(chuanyunLogDO -> {
-                    if(chuanyunLogDO.getDayLogList()==null||chuanyunLogDO.getDayLogList().size()==0){
-                        chuanyunLogDO.setDayLogList(new ArrayList<>());
-                        log.warn(chuanyunLogDO+"");
-                        log.warn("异常数据");
-                    }else{
-                        //如果有重复就删除
-                        chuanyunLogDao.findById(chuanyunLogDO.getObjectId()).ifPresent(chuanyunLogDao::delete);
-                        //根据projectId获取code,如果是生产项目,则不用处理
-                        //针对前期测试数据,可能出现日志为空的情况,跳过不处理
-                        chuanyunLogDO.getDayLogList().forEach(chuanyunDayLog -> {
-                            //离职人员补全用户Id及部门ID
-                            if (StringUtils.isEmpty(chuanyunLogDO.getUserId())){
-                                var name="";
-                                if (StringUtils.isEmpty(chuanyunDayLog.getContent())){
-                                    name=chuanyunLogDO.getName();
-                                }else {
-                                    name=chuanyunDayLog.getContent();
-                                }
-                                chuanyunLogDO.setUserId(getCharacters(name));
-                                ChuanyunUserDepartmentNameDO chuanyunUserDepartmentNameDO = chuanyunUserDepartmentNameDao.findByUserName(chuanyunLogDO.getUserId());
-                                if (chuanyunUserDepartmentNameDO!=null){
-                                    chuanyunLogDO.setDepartmentName(chuanyunUserDepartmentNameDO.getDepartmentName());
-                                }
-                            }else {
-                                ChuanyunUserCompanyDO chuanyunUserCompanyDO = chuanyunUserCompanyDao.findByUserId(chuanyunLogDO.getUserObject().getObjectId());
-                                if (chuanyunUserCompanyDO!=null){
-                                    chuanyunLogDO.setDepartmentName(getDepartmentName(chuanyunUserCompanyDO.getDepartment()));
-                                }
-                            }
-                            try{
-                                if(!"生产项目".equals(chuanyunDayLog.getProjectType())&& StringUtils.isEmpty(chuanyunDayLog.getProjectId())){
-                                    log.info(chuanyunLogDO+"");
-                                }else if(!"生产项目".equals(chuanyunDayLog.getProjectType())){
-                                    ChuanyunGroupProjectDO chuanyunGroupProjectDO=chuanyunGroupProjectDao.findById(chuanyunDayLog.getProjectId()).orElseThrow();
-                                    chuanyunDayLog.setProjectCode(chuanyunGroupProjectDO.getProjectCode());
-                                }
-                            }catch (Exception e){
-                                e.printStackTrace();
-                                log.warn(chuanyunDayLog+"");
-                            }
-                        });
-                    }
-                    //处理项目userId
-                    if(chuanyunLogDO.getUserObject()!=null){
-                        chuanyunLogDO.setUserId(chuanyunLogDO.getUserObject().getObjectId());
-                    }
-                });
-                //获取项目总数
-                totalCount = chuanyunFindAllResponse.getReturnData().getTotalCount();
-                //保存
-                chuanyunLogDao.saveAll(result);
-            } catch (Exception e) {
-                log.error(e.getMessage());
-                e.printStackTrace();
-            }
-            log.info("日志100条保存时间"+(Instant.now().getEpochSecond()-startTime)+"秒");
-        }
-        log.info("最近一月历史日志信息保存" + totalCount);
+        logDownloadService.saveChuanyunLogDO(true);
     }
 
     /**
@@ -202,20 +99,4 @@ public class WorkHourStatisticsRecently {
             }
         }
     }
-
-    private String getCharacters(String str){
-        String reg = "[^\u4e00-\u9fa5]";
-        str = str.replaceAll(reg, " ");
-        return str.trim();
-    }
-
-    private String getDepartmentName(String str){
-        if (str.contains("/")){
-            String[] department = str.split("/");
-            return department[department.length-1];
-        }else {
-            return str;
-        }
-    }
-
 }

+ 3 - 3
src/main/java/com/galaxis/manatee/webservice/CountryEndpoint.java

@@ -75,11 +75,11 @@ public class CountryEndpoint {
 		InvokeResponse invokeResponse=new InvokeResponse();
 		//书写调用第三方接口方法
 		log.info("开始数据同步");
-		if (request.getMethodName().equals("managerProject")){
+		if ("managerProject".equals(request.getMethodName())){
 			projectMemberService.updateManagerMember(request.getParam());
-		}else if (request.getMethodName().equals("saleProject")){
+		}else if ("saleProject".equals(request.getMethodName())){
 			projectMemberService.updateSaleMember(request.getParam());
-		}else if (request.getMethodName().equals("developProject")){
+		}else if ("developProject".equals(request.getMethodName())){
 			projectMemberService.updateDevelopMember(request.getParam());
 		}else {
 			chuanyunHumanResourceScheduledTask.getPayrollManually();