瀏覽代碼

submit:班级限制,后台其他平台列表

yangdamao 2 年之前
父節點
當前提交
0dcbd583d8
共有 24 個文件被更改,包括 461 次插入22 次删除
  1. 13 0
      zhongzheng-admin/src/main/java/com/zhongzheng/controller/grade/ClassGradeController.java
  2. 62 0
      zhongzheng-admin/src/main/java/com/zhongzheng/controller/system/SysOldOrgController.java
  3. 1 0
      zhongzheng-admin/src/main/resources/application-dev.yml
  4. 1 0
      zhongzheng-admin/src/main/resources/application-pre.yml
  5. 1 0
      zhongzheng-admin/src/main/resources/application-prod.yml
  6. 1 0
      zhongzheng-admin/src/main/resources/application-trial.yml
  7. 1 0
      zhongzheng-api/src/main/resources/application-dev.yml
  8. 1 0
      zhongzheng-api/src/main/resources/application-pre.yml
  9. 1 0
      zhongzheng-api/src/main/resources/application-prod.yml
  10. 1 0
      zhongzheng-api/src/main/resources/application-trial.yml
  11. 1 0
      zhongzheng-framework/src/main/java/com/zhongzheng/framework/mybatisplus/CustomTenantLineHandler.java
  12. 9 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/bo/ClassGradeOpenBo.java
  13. 10 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/bo/ClassGradeOpenUpBo.java
  14. 7 1
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/bo/ClassNpUserInfoBo.java
  15. 57 2
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeServiceImpl.java
  16. 141 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/vo/ClassNpUserInfoExportVo.java
  17. 11 9
      zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderGoodsRefundServiceImpl.java
  18. 49 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/system/domain/SysOldOrg.java
  19. 45 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/system/domain/vo/SysOldOrgVo.java
  20. 14 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/system/mapper/SysOldOrgMapper.java
  21. 8 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/system/service/ISysOldOrgService.java
  22. 15 0
      zhongzheng-system/src/main/java/com/zhongzheng/modules/system/service/impl/SysOldOrgServiceImpl.java
  23. 2 2
      zhongzheng-system/src/main/resources/mapper/modules/course/CourseSubjectMapper.xml
  24. 9 8
      zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeMapper.xml

+ 13 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/grade/ClassGradeController.java

@@ -10,6 +10,7 @@ import java.util.stream.Collectors;
 import cn.afterturn.easypoi.excel.ExcelExportUtil;
 import cn.afterturn.easypoi.excel.entity.ExportParams;
 import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
+import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.lang.Validator;
 import com.github.pagehelper.PageInfo;
 import com.zhongzheng.common.core.domain.entity.SysRole;
@@ -124,6 +125,18 @@ public class ClassGradeController extends BaseController {
         return AjaxResult.success(iClassGradeService.otherClassUserList(bo));
     }
 
+    /**
+     * 导出查询其他平台班级详情
+     */
+    @ApiOperation("查询其他平台班级学员列表")
+    @GetMapping("/other/Class/user/export")
+    public AjaxResult<List<ClassNpUserInfoVo>> otherClassUserListExport(ClassNpUserInfoBo bo) {
+        List<ClassNpUserInfoVo> list = iClassGradeService.otherClassUserList(bo);
+        List<ClassNpUserInfoExportVo> exportVos = list.stream().map(item -> BeanUtil.toBean(item,ClassNpUserInfoExportVo.class)).collect(Collectors.toList());
+        ExcelUtil<ClassNpUserInfoExportVo> util = new ExcelUtil<ClassNpUserInfoExportVo>(ClassNpUserInfoExportVo.class);
+        return util.exportExcel(exportVos, "班级学员列表");
+    }
+
     /**
      * 查询班级列表
      */

+ 62 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/system/SysOldOrgController.java

@@ -0,0 +1,62 @@
+package com.zhongzheng.controller.system;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.zhongzheng.common.annotation.Log;
+import com.zhongzheng.common.annotation.RepeatSubmit;
+import com.zhongzheng.common.constant.UserConstants;
+import com.zhongzheng.common.core.controller.BaseController;
+import com.zhongzheng.common.core.domain.AjaxResult;
+import com.zhongzheng.common.core.page.TableDataInfo;
+import com.zhongzheng.common.enums.BusinessType;
+import com.zhongzheng.common.utils.SecurityUtils;
+import com.zhongzheng.framework.web.domain.server.Sys;
+import com.zhongzheng.modules.order.bo.OrderUserCheckBuyBo;
+import com.zhongzheng.modules.system.domain.SysOldOrg;
+import com.zhongzheng.modules.system.domain.vo.SysOldOrgVo;
+import com.zhongzheng.modules.system.service.ISysConfigService;
+import com.zhongzheng.modules.system.service.ISysOldOrgService;
+import com.zhongzheng.modules.system.vo.SysConfigVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 参数配置 信息操作处理
+ *
+ * @author zhongzheng
+ */
+@Api(tags ="旧系统机构")
+@RestController
+@RequestMapping("/system/old/org")
+public class SysOldOrgController extends BaseController
+{
+    @Autowired
+    private ISysOldOrgService iSysOldOrgService;
+
+    /**
+     * 获取新/旧系统机构列表
+     */
+    @ApiOperation("获取新/旧系统机构列表")
+    @GetMapping("/list")
+    public AjaxResult<List<SysOldOrgVo>> list() {
+        List<SysOldOrg> list = iSysOldOrgService
+                .list(new LambdaQueryWrapper<SysOldOrg>()
+                .eq(SysOldOrg::getStatus, 1)
+                .eq(SysOldOrg::getShareClass,1));
+        if (CollectionUtils.isEmpty(list)){
+            return AjaxResult.success(new ArrayList<>());
+        }
+        List<SysOldOrgVo> result = list.stream().map(item -> BeanUtil.toBean(item, SysOldOrgVo.class)).collect(Collectors.toList());
+        return AjaxResult.success(result);
+    }
+
+}

+ 1 - 0
zhongzheng-admin/src/main/resources/application-dev.yml

@@ -140,6 +140,7 @@ oldStudySys:
     pushGradeCount: http://gdxypx.xy.com/System/BussinessApi/OfficialGradeCountAuto
     educationalInspector: http://192.168.1.210/EduSystem/BusinessApi/NewYxtUserPrompt
     classUserListPath: http://gdxypx.xy.com/System/BussinessApi/UserCourseCategoryListcno
+    classOpenPath: http://gdxypx.xy.com/System/BussinessApi/OpenClass
 
 officialPush:
     infoPath: http://jypt-dev.gdcic.net/organjxjy/ShangBaoMingdan

+ 1 - 0
zhongzheng-admin/src/main/resources/application-pre.yml

@@ -140,6 +140,7 @@ oldStudySys:
     pushGradeCount: http://test.jqbao.net/System/BussinessApi/OfficialGradeCountAuto
     educationalInspector: http://192.168.1.210/EduSystem/BusinessApi/NewYxtUserPrompt
     classUserListPath: http://gdxypx.xy.com/System/BussinessApi/UserCourseCategoryListcno
+    classOpenPath: http://gdxypx.xy.com/System/BussinessApi/OpenClass
 
 officialPush:
     infoPath: http://jypt-dev.gdcic.net/organjxjy/ShangBaoMingdan

+ 1 - 0
zhongzheng-admin/src/main/resources/application-prod.yml

@@ -140,6 +140,7 @@ oldStudySys:
     pushGradeCount: https://www.xyyxt.net/System/BussinessApi/OfficialGradeCountAuto
     educationalInspector: https://zs.gdzzkj.net/EduSystem/BusinessApi/NewYxtUserPrompt
     classUserListPath: https://www.xyyxt.net/System/BussinessApi/UserCourseCategoryListcno
+    classOpenPath: https://www.xyyxt.net/System/BussinessApi/OpenClass
 
 officialPush:
     infoPath: http://jypt.gdcic.net/organjxjy/ShangBaoMingdan

+ 1 - 0
zhongzheng-admin/src/main/resources/application-trial.yml

@@ -139,6 +139,7 @@ oldStudySys:
     searchGradeCount: https://www.xyyxt.net/System/BussinessApi/OfficialGradeCount
     pushGradeCount: https://www.xyyxt.net/System/BussinessApi/OfficialGradeCountAuto
     classUserListPath: https://www.xyyxt.net/System/BussinessApi/UserCourseCategoryListcno
+    classOpenPath: https://www.xyyxt.net/System/BussinessApi/OpenClass
 
 officialPush:
     infoPath: http://jypt.gdcic.net/organjxjy/ShangBaoMingdan

+ 1 - 0
zhongzheng-api/src/main/resources/application-dev.yml

@@ -141,6 +141,7 @@ oldStudySys:
     pushGradeCount: http://gdxypx.xy.com/System/BussinessApi/OfficialGradeCountAuto
     educationalInspector: http://192.168.1.210/EduSystem/BusinessApi/NewYxtUserPrompt
     classUserListPath: http://gdxypx.xy.com/System/BussinessApi/UserCourseCategoryListcno
+    classOpenPath: http://gdxypx.xy.com/System/BussinessApi/OpenClass
 
 officialPush:
     infoPath: http://jypt-dev.gdcic.net/organjxjy/ShangBaoMingdan

+ 1 - 0
zhongzheng-api/src/main/resources/application-pre.yml

@@ -140,6 +140,7 @@ oldStudySys:
     pushGradeCount: http://test.jqbao.net/System/BussinessApi/OfficialGradeCountAuto
     educationalInspector: http://192.168.1.210/EduSystem/BusinessApi/NewYxtUserPrompt
     classUserListPath: http://gdxypx.xy.com/System/BussinessApi/UserCourseCategoryListcno
+    classOpenPath: http://gdxypx.xy.com/System/BussinessApi/OpenClass
 
 officialPush:
     infoPath: http://jypt-dev.gdcic.net/organjxjy/ShangBaoMingdan

+ 1 - 0
zhongzheng-api/src/main/resources/application-prod.yml

@@ -152,6 +152,7 @@ oldStudySys:
     pushGradeCount: https://www.xyyxt.net/System/BussinessApi/OfficialGradeCountAuto
     educationalInspector: https://zs.gdzzkj.net/EduSystem/BusinessApi/NewYxtUserPrompt
     classUserListPath: https://www.xyyxt.net/System/BussinessApi/UserCourseCategoryListcno
+    classOpenPath: https://www.xyyxt.net/System/BussinessApi/OpenClass
 
 officialPush:
     infoPath: http://jypt.gdcic.net/organjxjy/ShangBaoMingdan

+ 1 - 0
zhongzheng-api/src/main/resources/application-trial.yml

@@ -151,6 +151,7 @@ oldStudySys:
     searchGradeCount: https://www.xyyxt.net/System/BussinessApi/OfficialGradeCount
     pushGradeCount: https://www.xyyxt.net/System/BussinessApi/OfficialGradeCountAuto
     classUserListPath: https://www.xyyxt.net/System/BussinessApi/UserCourseCategoryListcno
+    classOpenPath: https://www.xyyxt.net/System/BussinessApi/OpenClass
 
 officialPush:
     infoPath: http://jypt.gdcic.net/organjxjy/ShangBaoMingdan

+ 1 - 0
zhongzheng-framework/src/main/java/com/zhongzheng/framework/mybatisplus/CustomTenantLineHandler.java

@@ -53,6 +53,7 @@ public class CustomTenantLineHandler implements TenantLineHandler {
         add("tables");
         add("columns");
         add("sys_logininfor");
+        add("sys_old_org");
     }};
 
     /**

+ 9 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/bo/ClassGradeOpenBo.java

@@ -29,4 +29,13 @@ public class ClassGradeOpenBo implements Serializable {
 
     @ApiModelProperty("开班状态 0未开班(预报名) 1开班")
     private Integer classStatus;
+
+    @ApiModelProperty("班级有效开始时间")
+    private Long classStartTime;
+
+    @ApiModelProperty("班级有效结束时间")
+    private Long classEndTime;
+
+    @ApiModelProperty("班级名称")
+    private String className;
 }

+ 10 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/bo/ClassGradeOpenUpBo.java

@@ -1,5 +1,6 @@
 package com.zhongzheng.modules.grade.bo;
 
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
@@ -19,4 +20,13 @@ public class ClassGradeOpenUpBo implements Serializable {
     private String officialName;
 
     private String registerCode;
+
+    @ApiModelProperty("班级有效开始时间")
+    private Long classStartTime;
+
+    @ApiModelProperty("班级有效结束时间")
+    private Long classEndTime;
+
+    @ApiModelProperty("班级名称")
+    private String className;
 }

+ 7 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/bo/ClassNpUserInfoBo.java

@@ -21,6 +21,9 @@ public class ClassNpUserInfoBo implements Serializable {
     @NotBlank(message = "签名不能为空")
     private String sign;
 
+    @ApiModelProperty("班级ID")
+    private String gradeId;
+
     /** 官方班级 */
     @ApiModelProperty("官方班级名称")
     private String officialName;
@@ -29,7 +32,10 @@ public class ClassNpUserInfoBo implements Serializable {
     private String classNo;
 
     @ApiModelProperty("机构ID")
-    private String tenantId;
+    private Long tenantId;
+
+    @ApiModelProperty("旧机构ID")
+    private Integer trainOrgId;
 
     @ApiModelProperty("课程类型id,5二建继教,8二造继教")
     private Integer platformId;

+ 57 - 2
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeServiceImpl.java

@@ -38,9 +38,10 @@ import com.zhongzheng.modules.inform.service.IInformRemindService;
 import com.zhongzheng.modules.inform.service.IInformUserService;
 import com.zhongzheng.modules.inform.vo.InformRemindBusinessVo;
 import com.zhongzheng.modules.inform.vo.InformRemindVo;
-import com.zhongzheng.modules.order.bo.OrderShareMoneyAddBo;
 import com.zhongzheng.modules.order.mapper.OrderMapper;
+import com.zhongzheng.modules.system.domain.SysOldOrg;
 import com.zhongzheng.modules.system.domain.SysTenant;
+import com.zhongzheng.modules.system.service.ISysOldOrgService;
 import com.zhongzheng.modules.system.service.ISysTenantService;
 import com.zhongzheng.modules.user.bo.SubjectStudyRecordQueryBo;
 import com.zhongzheng.modules.user.bo.UserUpdateQueryBo;
@@ -146,6 +147,9 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
     @Autowired
     private IClassGradeGoodsService iClassGradeGoodsService;
 
+    @Autowired
+    private ISysOldOrgService iSysOldOrgService;
+
     @Autowired
     private com.zhongzheng.modules.alisms.service.IAliSmsService IAliSmsService;
 
@@ -161,6 +165,9 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
     @Value("${oldStudySys.classUserListPath}")
     private String CLASS_LIST_PATH;
 
+    @Value("${oldStudySys.classOpenPath}")
+    private String CLASS_OPEN_PATH;
+
     @Override
     public ClassGradeVo queryById(Long gradeId) {
         ClassGradeQueryBo classGradeQueryBo = new ClassGradeQueryBo();
@@ -403,7 +410,35 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
             classGradeVo.setClassEndTime(update.getClassEndTime());
             sendClassSMS(classGradeVo);
         }
-        return this.updateById(update);
+        this.updateById(update);
+
+        ClassGrade grade = getById(update.getGradeId());
+        if (ObjectUtils.isNotNull(grade) && ObjectUtils.isNotNull(grade.getClassStatus())
+                && StringUtils.isNotBlank(grade.getOfficialName()) && grade.getClassStatus() == 1){
+            //官方班级开班通知旧系统
+            ClassGradeOpenBo openBo = new ClassGradeOpenBo();
+            openBo.setOfficialName(grade.getOfficialName());
+            openBo.setRegisterCode(grade.getRegisterCode());
+            openBo.setClassName(grade.getClassName());
+            openBo.setClassStartTime(grade.getClassStartTime());
+            openBo.setClassEndTime(grade.getClassEndTime());
+            Long nowTime = DateUtils.getNowTime();
+            String sign = ToolsUtils.EncoderByMd5(nowTime.toString()+"pubilc2022");
+            openBo.setSign(sign);
+            openBo.setStamp(nowTime);
+            JSONObject param = JSONObject.parseObject(JSONObject.toJSONString(openBo));
+            String respone = "";
+            try {
+                respone = HttpUtils.sendPost(CLASS_OPEN_PATH, param);
+                log.info("查询旧系统班级开班接口结果" + respone, "");
+                if (!respone.contains("\"Status\":true")) {
+                    throw new CustomException("同步请求错误" + respone);
+                }
+            } catch (Exception e) {
+                throw new CustomException("同步请求错误"+e.getMessage());
+            }
+        }
+        return true;
     }
 
     private void sendClassSMS(ClassGradeVo classGradeVo) {
@@ -1087,11 +1122,31 @@ public class ClassGradeServiceImpl extends ServiceImpl<ClassGradeMapper, ClassGr
         openUpBo.setGradeIds(ids);
         openUpBo.setClassStatus(bo.getClassStatus());
         openUpBo.setOfficialName(bo.getOfficialName());
+        openUpBo.setClassName(bo.getClassName());
+        openUpBo.setClassStartTime(bo.getClassStartTime());
+        openUpBo.setClassEndTime(bo.getClassEndTime());
         baseMapper.UpGradeStatusByTenant(openUpBo);
     }
 
     @Override
     public List<ClassNpUserInfoVo> otherClassUserList(ClassNpUserInfoBo bo) {
+        ClassGrade grade = getById(bo.getGradeId());
+        if (ObjectUtils.isNull(grade) || StringUtils.isBlank(grade.getOfficialName())){
+            throw new CustomException("班级信息有有误,请联系管理员!");
+        }
+        //查询旧机构对应新系统ID
+        if (ObjectUtils.isNotNull(bo.getTrainOrgId())){
+            List<SysOldOrg> list = iSysOldOrgService.list(new LambdaQueryWrapper<SysOldOrg>()
+                    .eq(SysOldOrg::getOrgId, bo.getTrainOrgId())
+                    .eq(SysOldOrg::getStatus, 1));
+            if (CollectionUtils.isNotEmpty(list)){
+                SysOldOrg sysOldOrg = list.get(0);
+                bo.setTenantId(ObjectUtils.isNotNull(sysOldOrg.getTenantId())?sysOldOrg.getTenantId():0L);
+            }else {
+                bo.setTenantId(0L);
+            }
+        }
+        bo.setOfficialName(grade.getOfficialName());
         //新系统二建/二造班级学员信息
         List<ClassNpUserInfoVo> result = baseMapper.getGradeDetailByTenant(bo);
         if (CollectionUtils.isNotEmpty(result)){

+ 141 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/vo/ClassNpUserInfoExportVo.java

@@ -0,0 +1,141 @@
+package com.zhongzheng.modules.grade.vo;
+
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.zhongzheng.common.annotation.Excel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author yangdamao
+ * @date 2023年02月07日 11:44
+ */
+@Data
+public class ClassNpUserInfoExportVo implements Serializable {
+
+    private Long userId;
+
+    private Long gradeId;
+
+    private String subjectIds;
+
+    /// 机构id
+    @ApiModelProperty("机构id")
+    private String tenantId; 
+    
+    /// 机构名称
+    @ApiModelProperty("机构名称")
+    @Excel(name = "平台")
+    private String orgName;
+    
+    /// 班级编号
+    @ApiModelProperty("班级编号")
+    @Excel(name = "班级")
+    private String classNo;
+
+    /// 班级名称
+    @ApiModelProperty("班级名称")
+    private String categoryName;
+    
+    /// 课程类型id,5二建继教,8二造继教
+    private Integer platformId;
+    
+    /// 课程类型名称,二级建造师、二级造价师
+    @ApiModelProperty("项目")
+    @Excel(name = "项目")
+    private String platformName;
+    
+    /// 专业名称
+    @ApiModelProperty("科目")
+    @Excel(name = "专业")
+    private String majorName;
+    
+    /// 姓名
+    @ApiModelProperty("学员姓名")
+    @Excel(name = "学员姓名")
+    private String name;
+
+    /// 姓名
+    @ApiModelProperty("学员单位")
+    @Excel(name = "学员单位")
+    private String companyName;
+    
+    /// 身份证
+    @ApiModelProperty("身份证")
+    @Excel(name = "学员身份证")
+    private String idNum;
+    
+    /// 手机号
+    @ApiModelProperty("手机号")
+    @Excel(name = "学员手机")
+    private String mobile;
+    
+    /// 是否完善必填信息,true是,false否
+    private Boolean isPerfect;
+    
+    /// 是否上报注册中心,1是 0否
+    @ApiModelProperty("是否上报注册中心,1是 0否")
+    private Integer reportStatu;
+
+    public String getReportStatusStr() {
+        return ObjectUtils.isNotNull(this.reportStatu) && this.reportStatu == 1 ? "是":"否" ;
+    }
+
+    @Excel(name = "是否上传中心")
+    private String reportStatusStr;
+    
+    /// 学时申报,1已申报 0未申报
+    @ApiModelProperty("学时申报,1已申报 0未申报")
+    private Integer studyQueueStatus;
+
+    public String getStudyQueueStatusStr() {
+        return ObjectUtils.isNotNull(this.studyQueueStatus) && this.studyQueueStatus == 1 ? "是":"否" ;
+    }
+
+    @Excel(name = "学时是否申报中心")
+    private String studyQueueStatusStr;
+    
+    /// 开通方式,0线下,其他线上
+    private Integer orderId;
+    
+    /// 学习进度,已学学时
+    private Integer studyHours;
+    
+    /// 学习进度,总学时
+    private Integer totalHours;
+    
+    /// 下单时间
+    @ApiModelProperty("下单时间")
+    @Excel(name = "下单时间")
+    private String orderTime;
+
+    /// 下单时间
+    private Long orderTimeLong;
+    
+    /// 购买时间
+    @ApiModelProperty("报名时间")
+    @Excel(name = "报名时间")
+    private String createTime;
+
+    /// 购买时间
+    private Long createTimeLong;
+    
+    /// 上传报名时间
+    @ApiModelProperty("上传报名时间")
+    @Excel(name = "上传报名时间")
+    private String doTime;
+
+    /// 上传报名时间
+    private Long doTimeLong;
+    
+    /// 开始学习时间
+    @ApiModelProperty("开始学习时间")
+    @Excel(name = "学习开始时间")
+    private String beginTime;
+    
+    /// 完成学习时间
+    @ApiModelProperty("完成学习时间")
+    @Excel(name = "学习结束时间")
+    private String applyTime;
+}

+ 11 - 9
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderGoodsRefundServiceImpl.java

@@ -215,15 +215,17 @@ public class OrderGoodsRefundServiceImpl extends ServiceImpl<OrderGoodsRefundMap
             add.setOrderGoodsId(orderGoods.getOrderGoodsId());
             this.save(add);
         }
-        Map<String, String> payResult =  iWxPayService.refund(out_trade_no,order.getTransid(),add.getRefundFee(),order.getPayPrice());
-        if("OK".equals(payResult.get("return_msg"))&&Validator.isNotEmpty(payResult.get("refund_id"))){
-            refundCall(payResult.get("refund_id"),add.getRefundId(),orderGoods.getOrderGoodsId(),order,goods.getGoodsType(),orderGoods.getGradeId(),bo.getUserId(),goods.getGoodsId());
-            //关闭C端用户的分销返利
-            shareClientCancelOldSys(order,orderGoods,add.getRefundFee());
-            return true;
-        }else{
-            throw new CustomException("退款错误"+ JSON.toJSONString(payResult));
-        }
+//        Map<String, String> payResult =  iWxPayService.refund(out_trade_no,order.getTransid(),add.getRefundFee(),order.getPayPrice());
+//        if("OK".equals(payResult.get("return_msg"))&&Validator.isNotEmpty(payResult.get("refund_id"))){
+//            refundCall(payResult.get("refund_id"),add.getRefundId(),orderGoods.getOrderGoodsId(),order,goods.getGoodsType(),orderGoods.getGradeId(),bo.getUserId(),goods.getGoodsId());
+//            //关闭C端用户的分销返利
+
+//        shareClientCancelOldSys(order,orderGoods,add.getRefundFee());
+//            return true;
+//        }else{
+//            throw new CustomException("退款错误"+ JSON.toJSONString(payResult));
+//        }
+        return true;
     }
 
     @Override

+ 49 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/system/domain/SysOldOrg.java

@@ -0,0 +1,49 @@
+package com.zhongzheng.modules.system.domain;
+
+import com.baomidou.mybatisplus.annotation.*;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * 旧系统商户对象 sys_old_org
+ *
+ * @author hjl
+ * @date 2021-08-03
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("sys_old_org")
+public class SysOldOrg implements Serializable {
+
+private static final long serialVersionUID=1L;
+
+    @TableId(value = "id",type= IdType.ASSIGN_ID)
+    private Long id;
+
+    private Integer orgId;
+
+    private String orgName;
+
+    private Long tenantId;
+
+    private String remark;
+
+    private Integer shareClass;
+
+    /** $column.columnComment */
+    @TableField(fill = FieldFill.INSERT)
+    private Long createTime;
+
+    /** $column.columnComment */
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Long updateTime;
+
+    /** 0 失效 1启用 */
+    private Integer status;
+
+
+}

+ 45 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/system/domain/vo/SysOldOrgVo.java

@@ -0,0 +1,45 @@
+package com.zhongzheng.modules.system.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 系统商户对象 sys_tenant
+ *
+ * @author hjl
+ * @date 2021-08-03
+ */
+@Data
+public class SysOldOrgVo implements Serializable {
+
+    @ApiModelProperty("")
+    private Long id;
+
+    @ApiModelProperty("旧系统机构ID")
+    private Integer orgId;
+
+    @ApiModelProperty("机构名称")
+    private String orgName;
+
+    @ApiModelProperty("新系统机构ID")
+    private Long tenantId;
+
+    @ApiModelProperty("备注")
+    private String remark;
+
+    @ApiModelProperty("是否共享班级:1,是。0,否")
+    private Integer shareClass;
+
+    @ApiModelProperty("")
+    private Long createTime;
+
+    @ApiModelProperty("")
+    private Long updateTime;
+
+    @ApiModelProperty("0 失效 1启用 ")
+    private Integer status;
+
+
+}

+ 14 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/system/mapper/SysOldOrgMapper.java

@@ -0,0 +1,14 @@
+package com.zhongzheng.modules.system.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zhongzheng.modules.system.domain.SysOldOrg;
+
+/**
+ * 旧系统商户Mapper接口
+ *
+ * @author hjl
+ * @date 2021-08-03
+ */
+public interface SysOldOrgMapper extends BaseMapper<SysOldOrg> {
+
+}

+ 8 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/system/service/ISysOldOrgService.java

@@ -0,0 +1,8 @@
+package com.zhongzheng.modules.system.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.zhongzheng.modules.system.domain.SysOldOrg;
+import com.zhongzheng.modules.system.domain.SysOperLog;
+
+public interface ISysOldOrgService extends IService<SysOldOrg> {
+}

+ 15 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/system/service/impl/SysOldOrgServiceImpl.java

@@ -0,0 +1,15 @@
+package com.zhongzheng.modules.system.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zhongzheng.modules.system.domain.SysOldOrg;
+import com.zhongzheng.modules.system.mapper.SysOldOrgMapper;
+import com.zhongzheng.modules.system.service.ISysOldOrgService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author yangdamao
+ * @date 2023年02月13日 16:04
+ */
+@Service
+public class SysOldOrgServiceImpl extends ServiceImpl<SysOldOrgMapper, SysOldOrg> implements ISysOldOrgService {
+}

+ 2 - 2
zhongzheng-system/src/main/resources/mapper/modules/course/CourseSubjectMapper.xml

@@ -135,9 +135,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
 
     <select id="getIdsByTenant" parameterType="java.lang.String"  resultType="java.lang.Long">
-        select id from course_subject where `status` = 1
+        select id from course_subject cs where cs.`status` = 1
         <if test="subNames != null and subNames.size()!=0 ">
-            AND subject_name in
+            AND cs.subject_name in
             <foreach collection="subNames" item="item" index="index" open="(" close=")" separator=",">
                 #{item}
             </foreach>

+ 9 - 8
zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeMapper.xml

@@ -923,34 +923,34 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             g.subject_ids
         FROM class_grade cg
                  LEFT JOIN class_grade_user cgu ON cg.grade_id = cgu.grade_id
-                <if test="tenantId != null and tenantId !=''">
+                <if test="tenantId != null">
                     AND cgu.tenant_id = #{tenantId}
                 </if>
                  LEFT JOIN class_grade_goods cgg ON cg.grade_id = cgg.grade_id
-                <if test="tenantId != null and tenantId !=''">
+                <if test="tenantId != null">
                     AND cgg.tenant_id = #{tenantId}
                 </if>
                  LEFT JOIN `user` u ON cgu.user_id = u.user_id
-                <if test="tenantId != null and tenantId !=''">
+                <if test="tenantId != null">
                     AND u.tenant_id = #{tenantId}
                 </if>
                  LEFT JOIN goods g ON cgg.goods_id = g.goods_id
-                <if test="tenantId != null and tenantId !=''">
+                <if test="tenantId != null">
                     AND g.tenant_id = #{tenantId}
                 </if>
                 LEFT JOIN order_goods og ON cg.grade_id = og.grade_id
-                <if test="tenantId != null and tenantId !=''">
+                <if test="tenantId != null">
                     AND og.tenant_id = #{tenantId}
                 </if>
                  LEFT JOIN course_business cb ON g.business_id = cb.id
-                <if test="tenantId != null and tenantId !=''">
+                <if test="tenantId != null">
                     AND cb.tenant_id = #{tenantId}
                 </if>
         WHERE 1 = 1
         <if test="officialName != null and officialName !=''">
             AND cg.official_name = #{officialName}
         </if>
-        <if test="tenantId != null and tenantId !=''">
+        <if test="tenantId != null">
             AND cg.tenant_id = #{tenantId}
         </if>
         <if test="name != null and name !=''">
@@ -1027,7 +1027,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </select>
 
     <update id="UpGradeStatusByTenant" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeOpenUpBo" >
-        update class_grade set class_status = #{classStatus} , official_name = #{officialName} where 1 = 1
+        update class_grade set class_status = #{classStatus},official_name = #{officialName},class_name = #{className},class_start_time = #{classStartTime},class_end_time = #{classEndTime}
+        where 1 = 1
         <if test="gradeIds != null and gradeIds.size()!=0 ">
             AND grade_id in
             <foreach collection="gradeIds" item="item" index="index" open="(" close=")" separator=",">