wangliang 2 anni fa
parent
commit
1e19926b98

+ 0 - 32
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/OrgCenterDataDisposeService.java

@@ -1,32 +0,0 @@
-package com.qmth.teachcloud.common.service;
-
-import org.springframework.scheduling.annotation.Async;
-
-import java.io.IOException;
-
-/**
- * @Description: 机构中心数据处理服务
- * @Author: CaoZixuan
- * @Date: 2021-04-02
- */
-public interface OrgCenterDataDisposeService {
-
-    /**
-     * 机构用户中心同步操作(异步线程)
-     * <p>
-     *     1.禁用全部学校和机构级别为学校的机构。
-     *     2.获取机构中心的学校数据。
-     *     3.遍历机构中心的学校并和系统中学校对比(根据学校代码),
-     *     如果系统中存在则更新系统中的学校(学校id不变);
-     *     如果系统中不存在则将机构中心的学校新增到系统中,
-     *     如果系统中已存在该机构中心的学校id,则新增的学校id使用分布式id,若不存在则使用机构中心的学校id。
-     *     将新增或更新的学校设置为启用状态
-     *     4.根据新增的或更新的学校id查询机构表中对应的学校级别机构。
-     *     5.如果没有学校级别机构则新增学校级机构,并且将该学校下的所有学院级、印刷室级、没有parentId的机构的父机构指向该学校机构;如果有则更新
-     *     6.权限表未匹配到的学校权限新增
-     * </p>
-     * @throws IOException 异常
-     */
-    @Async
-    void updateSchoolInfo() throws IOException;
-}

+ 0 - 139
teachcloud-common/src/main/java/com/qmth/teachcloud/common/service/impl/OrgCenterDataDisposeServiceImpl.java

@@ -1,139 +0,0 @@
-package com.qmth.teachcloud.common.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.qmth.teachcloud.common.base.BaseEntity;
-import com.qmth.teachcloud.common.contant.SystemConstant;
-import com.qmth.teachcloud.common.entity.BasicSchool;
-import com.qmth.teachcloud.common.entity.SysOrg;
-import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
-import com.qmth.teachcloud.common.enums.OrgTypeEnum;
-import com.qmth.teachcloud.common.service.BasicSchoolService;
-import com.qmth.teachcloud.common.service.CallApiOrgCenterService;
-import com.qmth.teachcloud.common.service.OrgCenterDataDisposeService;
-import com.qmth.teachcloud.common.service.SysOrgService;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import javax.annotation.Resource;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.stream.Collectors;
-
-/**
- * @Description: 机构数据中心数据处理服务实现类
- * @Author: CaoZixuan
- * @Date: 2021-04-02
- */
-@Service
-public class OrgCenterDataDisposeServiceImpl implements OrgCenterDataDisposeService {
-    @Resource
-    private CallApiOrgCenterService callApiOrgCenterService;
-    @Resource
-    private BasicSchoolService basicSchoolService;
-    @Resource
-    private SysOrgService sysOrgService;
-
-    @Transactional(rollbackFor = Exception.class)
-    @Override
-    public void updateSchoolInfo() throws IOException {
-        List<Map> result = callApiOrgCenterService.callOrgInfo();
-        if (Objects.isNull(result) || result.size() == 0) {
-            return;
-        }
-        // 禁用原有学校
-        List<BasicSchool> basicSchoolList = basicSchoolService.list();
-        basicSchoolService.update(new UpdateWrapper<BasicSchool>().lambda().set(BasicSchool::getEnable, false).gt(BasicSchool::getId, 0));
-
-        // 禁用原有顶级机构(学校)
-        List<SysOrg> sysOrgList = sysOrgService.list();
-        sysOrgService.update(new UpdateWrapper<SysOrg>().lambda().set(SysOrg::getEnable, false).eq(SysOrg::getType, OrgTypeEnum.SCHOOL));
-
-        // 要更改的学校数据
-        List<BasicSchool> updateSchoolList = new ArrayList<>();
-        // 要更改的机构数据
-        List<SysOrg> updateSysOrgList = new ArrayList<>();
-
-        for (Map map : result) {
-            Long orgCenterAppSchoolId = SystemConstant.convertIdToLong(String.valueOf(map.get("id"))); // 机构中心的id
-            String code = String.valueOf(map.get("code"));
-            String name = String.valueOf(map.get("name"));
-            String logo = String.valueOf(map.get("logo"));
-            String accessKey = String.valueOf(map.get("accessKey"));
-            String accessSecret = String.valueOf(map.get("accessSecret"));
-//            Map typeMap = JSONObject.parseObject(String.valueOf(map.get("type")));
-//            String typeCode = String.valueOf(typeMap.get("code"));
-//            String typeName = String.valueOf(typeMap.get("name"));
-
-            List<BasicSchool> oldSchoolList = basicSchoolList.stream().filter(e -> e.getCode().equals(code)).collect(Collectors.toList());
-            if (oldSchoolList.size() > 1) {
-                throw ExceptionResultEnum.ERROR.exception("学校信息异常");
-            }
-            Long schoolId;
-            if (oldSchoolList.size() > 0) {
-                // 系统中原先就有该学校 -》 更新
-                BasicSchool oldSchool = oldSchoolList.get(0);
-                schoolId = oldSchool.getId();
-            } else {
-                // 系统中没有该学校 -》 新增 (优先使用机构中心id如果该id在系统中已经被占用则会使用分布式id)
-                if (basicSchoolList.stream().map(BaseEntity::getId).collect(Collectors.toSet()).contains(orgCenterAppSchoolId)) {
-                    schoolId = SystemConstant.getDbUuid();
-                } else {
-                    schoolId = orgCenterAppSchoolId;
-                }
-            }
-            // 断言schoolId非空
-            if (!SystemConstant.longNotNull(schoolId)) {
-                throw ExceptionResultEnum.ERROR.exception();
-            }
-
-            // 基础学校数据处理
-            BasicSchool school = new BasicSchool();
-            school.setId(schoolId);
-            school.setCode(code);
-            school.setName(name);
-            school.setEnable(true);
-            school.setAccessKey(accessKey);
-            school.setAccessSecret(accessSecret);
-            school.setLogo(logo);
-            updateSchoolList.add(school);
-
-            // 学校机构处理
-            List<SysOrg> schoolOrgList = sysOrgList.stream().filter(e -> schoolId.equals(e.getSchoolId()) && OrgTypeEnum.SCHOOL.equals(e.getType())).collect(Collectors.toList());
-            SysOrg sysOrg = new SysOrg();
-            if (schoolOrgList.size() == 0) {
-                // 机构表没有该学校作为的顶级机构 -》 新增机构并把该学校所属的学院级机构挂在该学校下
-                Long id = SystemConstant.getDbUuid();
-                sysOrg.setId(id);
-                sysOrg.setSchoolId(schoolId);
-                sysOrg.setType(OrgTypeEnum.SCHOOL);
-                sysOrg.setName(name);
-                sysOrg.setEnable(true);
-
-                // 处理该学校下的学院级机构的指向关系
-                List<SysOrg> collegeOrgList = sysOrgList.stream()
-                        .filter(e -> schoolId.equals(e.getSchoolId()) &&
-                                (OrgTypeEnum.COLLEGE.equals(e.getType()) || OrgTypeEnum.PRINTING_HOUSE.equals(e.getType()) || !SystemConstant.longNotNull(e.getParentId())))
-                        .peek(e -> e.setParentId(id))
-                        .collect(Collectors.toList());
-                updateSysOrgList.addAll(collegeOrgList);
-            } else if (schoolOrgList.size() == 1) {
-                // 机构表有该学校作为的顶级机构 -》 启用
-                sysOrg = schoolOrgList.get(0);
-                sysOrg.setEnable(true);
-                sysOrg.setName(name);
-            } else {
-                throw ExceptionResultEnum.ERROR.exception("机构数据异常 - 存在多条数据");
-            }
-            updateSysOrgList.add(sysOrg);
-        }
-        basicSchoolService.saveOrUpdateBatch(updateSchoolList);
-        sysOrgService.saveOrUpdateBatch(updateSysOrgList);
-
-        // 权限表未匹配到的学校权限新增
-//        Set<Long> schoolIdSet = basicSchoolService.list().stream().map(BaseEntity::getId).collect(Collectors.toSet());
-//        teachcloudCommonService.addSchoolPrivilege(schoolIdSet);
-    }
-}

+ 1 - 7
teachcloud-task/src/main/java/com/qmth/teachcloud/task/enums/JobEnum.java

@@ -11,10 +11,6 @@ import java.util.Objects;
  */
 public enum JobEnum {
 
-    TIMED_SYNC_SCHOOL_JOB("学校信息同步定时任务"),
-
-    TIMED_TASK_JOB_GROUP("定时任务job组"),
-
     RESET_CREATE_PDF_JOB("重新生成pdf定时任务"),
 
     RESET_CREATE_PDF_JOB_GROUP("重新生成pdfjob组"),
@@ -41,9 +37,7 @@ public enum JobEnum {
 
     TIMED_SYNC_USER_NEED_PUSH_AGAIN_JOB("用户需重新推送再次推送定时任务"),
 
-    TIMED_SYNC_USER_NEED_PUSH_AGAIN_JOB_GROUP("用户需重新推送再次推送定时任务组"),
-    ;
-
+    TIMED_SYNC_USER_NEED_PUSH_AGAIN_JOB_GROUP("用户需重新推送再次推送定时任务组");
 
     private String title;
 

+ 0 - 33
teachcloud-task/src/main/java/com/qmth/teachcloud/task/job/TimedSyncSchoolJob.java

@@ -1,33 +0,0 @@
-package com.qmth.teachcloud.task.job;
-
-import com.qmth.teachcloud.task.job.service.JobService;
-import org.quartz.JobExecutionContext;
-import org.quartz.JobExecutionException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.scheduling.quartz.QuartzJobBean;
-
-import javax.annotation.Resource;
-
-/**
- * @Description: 同步学校信息定时任务
- * @Author: CaoZixuan
- * @Date: 2021-04-19
- */
-public class TimedSyncSchoolJob extends QuartzJobBean {
-    private final static Logger log = LoggerFactory.getLogger(TimedSyncSchoolJob.class);
-
-    @Resource
-    JobService jobService;
-
-    @Override
-    protected void executeInternal(JobExecutionContext jobExecutionContext) throws JobExecutionException {
-//        try {
-//            jobService.updateSchoolInfo();
-        jobService.updatePrintPlan();
-//            jobService.syncData();
-//        } catch (IOException e) {
-//            log.error(SystemConstant.LOG_ERROR, e);
-//        }
-    }
-}

+ 0 - 15
teachcloud-task/src/main/java/com/qmth/teachcloud/task/job/service/JobService.java

@@ -11,16 +11,6 @@ import java.io.IOException;
  */
 public interface JobService {
 
-    /**
-     * 同步学校信息
-     */
-    void updateSchoolInfo() throws IOException;
-
-    /**
-     * 更新印刷计划状态
-     */
-    void updatePrintPlan();
-
     /**
      * 重新生成pdf失败任务
      *
@@ -50,11 +40,6 @@ public interface JobService {
      */
     public void assembleJob(String redisKey);
 
-    /**
-     * 同步数据到云阅卷
-     */
-    void syncData();
-
     /**
      * 机器心跳
      */

+ 4 - 60
teachcloud-task/src/main/java/com/qmth/teachcloud/task/job/service/impl/JobServiceImpl.java

@@ -1,16 +1,13 @@
 package com.qmth.teachcloud.task.job.service.impl;
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.qmth.boot.redis.uid.RedisMachineService;
-import com.qmth.distributed.print.business.entity.ExamDetail;
-import com.qmth.distributed.print.business.entity.ExamPrintPlan;
-import com.qmth.distributed.print.business.enums.PrintPlanStatusEnum;
-import com.qmth.distributed.print.business.service.*;
+import com.qmth.distributed.print.business.service.BasicMessageService;
+import com.qmth.distributed.print.business.service.DataSyncService;
+import com.qmth.distributed.print.business.service.ExamTaskService;
+import com.qmth.distributed.print.business.service.PrintCommonService;
 import com.qmth.teachcloud.common.bean.dto.MqDto;
 import com.qmth.teachcloud.common.contant.SystemConstant;
 import com.qmth.teachcloud.common.entity.SysUser;
-import com.qmth.teachcloud.common.service.OrgCenterDataDisposeService;
-import com.qmth.teachcloud.common.service.SysConfigService;
 import com.qmth.teachcloud.common.service.SysUserService;
 import com.qmth.teachcloud.common.util.RedisUtil;
 import com.qmth.teachcloud.task.job.service.JobService;
@@ -18,11 +15,9 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
 import java.io.IOException;
-import java.util.List;
 import java.util.Map;
 import java.util.Objects;
 import java.util.concurrent.TimeUnit;
@@ -38,15 +33,6 @@ import java.util.concurrent.TimeUnit;
 public class JobServiceImpl implements JobService {
     private final static Logger log = LoggerFactory.getLogger(JobServiceImpl.class);
 
-    @Resource
-    OrgCenterDataDisposeService orgCenterDataDisposeService;
-
-    @Resource
-    ExamPrintPlanService examPrintPlanService;
-
-    @Resource
-    ExamDetailService examDetailService;
-
     @Resource
     PrintCommonService printCommonService;
 
@@ -68,42 +54,6 @@ public class JobServiceImpl implements JobService {
     @Resource
     SysUserService sysUserService;
 
-    @Override
-    public void updateSchoolInfo() throws IOException {
-        orgCenterDataDisposeService.updateSchoolInfo();
-    }
-
-    /**
-     * 更新印刷计划状态
-     */
-    @Override
-    @Transactional
-    public void updatePrintPlan() {
-        QueryWrapper<ExamPrintPlan> examPrintPlanQueryWrapper = new QueryWrapper<>();
-        examPrintPlanQueryWrapper.lambda().ne(ExamPrintPlan::getStatus, PrintPlanStatusEnum.END);
-        List<ExamPrintPlan> examPrintPlanList = examPrintPlanService.list(examPrintPlanQueryWrapper);
-        if (Objects.nonNull(examPrintPlanList) && examPrintPlanList.size() > 0) {
-            for (ExamPrintPlan examPrintPlan : examPrintPlanList) {
-                QueryWrapper<ExamDetail> examDetailQueryWrapper = new QueryWrapper<>();
-                examDetailQueryWrapper.lambda().eq(ExamDetail::getPrintPlanId, examPrintPlan.getId());
-                List<ExamDetail> examDetailList = examDetailService.list(examDetailQueryWrapper);
-                if (Objects.nonNull(examDetailList) && examDetailList.size() > 0) {
-                    Long maxEndTime = examDetailList.stream().mapToLong(i -> i.getExamEndTime()).max().getAsLong();
-                    if (System.currentTimeMillis() >= maxEndTime.longValue()) {
-                        examPrintPlan.setStatus(PrintPlanStatusEnum.END);
-                    }
-                }
-            }
-        }
-        examPrintPlanService.saveOrUpdateBatch(examPrintPlanList);
-
-        // 2021-05-20 同步数据到云阅卷
-//        SysConfig sysConfig = sysConfigService.getByKey("sys.code.enable");
-//        if (Objects.nonNull(sysConfig) && sysConfig.getConfigValue() == "true") {
-//            dataSyncService.syncToCloudReview();
-//        }
-    }
-
     /**
      * 重新生成pdf失败任务
      *
@@ -129,12 +79,6 @@ public class JobServiceImpl implements JobService {
         basicMessageService.resendSmsTask();
     }
 
-    @Override
-    public void syncData() {
-        // 2021-05-20 同步数据到云阅卷
-//        dataSyncService.syncToCloudReview();
-    }
-
     @Override
     public void machineHeart() {
         redisUtil.set(SystemConstant.TASK_MACHINE_ID + redisMachineService.getMachineId(), redisMachineService.getMachineId(), 30, TimeUnit.SECONDS);

+ 0 - 8
teachcloud-task/src/main/java/com/qmth/teachcloud/task/start/StartRunning.java

@@ -42,14 +42,6 @@ public class StartRunning implements CommandLineRunner {
         jobService.machineHeart();
         printCommonService.updateStatus();
 
-        log.info("增加学校信息同步定时任务 start");
-        Map schoolJobMap = new HashMap();
-        schoolJobMap.computeIfAbsent("name", v -> TimedSyncSchoolJob.class.getName());
-        quartzService.deleteJob(JobEnum.TIMED_SYNC_SCHOOL_JOB.name(), JobEnum.TIMED_TASK_JOB_GROUP.name());
-        // 每天0点定时任务
-        quartzService.addJob(TimedSyncSchoolJob.class, JobEnum.TIMED_SYNC_SCHOOL_JOB.name(), JobEnum.TIMED_TASK_JOB_GROUP.name(), "0 0 0 * * ?", schoolJobMap);
-        log.info("增加学校信息同步定时任务 end");
-
         log.info("增加用户推送失败再次推送定时任务 start");
         Map userPushErrorMap = new HashMap();
         userPushErrorMap.computeIfAbsent("name", v -> TimedSyncUserPushErrorJob.class.getName());