he2802 1 år sedan
förälder
incheckning
53a5bc7984

+ 3 - 1
zhongzheng-admin/src/main/java/com/zhongzheng/controller/course/CourseController.java

@@ -236,7 +236,9 @@ public class CourseController extends BaseController {
         }
         for(CourseProgressQueryBo queryBo : bo.getTelphoneList()){
             User user = iUserService.getOne(new LambdaQueryWrapper<User>()
-                    .eq(User::getTelphone, EncryptHandler.encrypt(queryBo.getTelphone())).last("limit 1"));
+                    .and(x -> x.eq(StringUtils.isNotBlank(queryBo.getTelphone()),User::getTelphone,EncryptHandler.encrypt(queryBo.getTelphone())).or()
+                    .eq(StringUtils.isNotBlank(queryBo.getIdCard()),User::getIdCard,EncryptHandler.encrypt(queryBo.getIdCard())))
+                    .last("limit 1"));
             if(Validator.isEmpty(user)){
                 continue;
             }

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/bo/CourseProgressQueryBo.java

@@ -27,4 +27,7 @@ public class CourseProgressQueryBo extends BaseEntity {
 	@ApiModelProperty("手机号码")
 	private String telphone;
 
+	@ApiModelProperty("身份证")
+	private String idCard;
+
 }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/vo/GoodsVo.java

@@ -410,4 +410,9 @@ public class GoodsVo {
 	private Integer viewSign;
 	@ApiModelProperty("寄件标签:1是 0否")
 	private Integer mailSign;
+
+	private Long orderGoodsId;
+
+	private Long periodWaitTime;
+
 }

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/mapper/ClassGradeUserMapper.java

@@ -6,6 +6,7 @@ import com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo;
 import com.zhongzheng.modules.grade.domain.ClassGradeUser;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.zhongzheng.modules.grade.vo.*;
+import com.zhongzheng.modules.order.domain.OrderGoods;
 import com.zhongzheng.modules.user.bo.UserQueryBo;
 import com.zhongzheng.modules.user.bo.UserUsbRecordBo;
 import com.zhongzheng.modules.user.domain.User;
@@ -127,4 +128,6 @@ public interface ClassGradeUserMapper extends BaseMapper<ClassGradeUser> {
     List<Long> getFinishRequiredCourse(ClassGradeUserQueryBo bo);
 
 
+    OrderGoods getOrderGoods(@Param("userId") Long userId, @Param("goodsId")Long goodsId);
+
 }

+ 12 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/ClassGradeUserServiceImpl.java

@@ -3813,6 +3813,18 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
         //查询旧系统是否有学习
         String businessName = iGoodsService.getGoodsBusinessName(bo.getGoodsId());
         if (businessName.contains("继续教育二级建造师") || businessName.contains("继续教育二级造价师")){
+            OrderGoods orderGoods = baseMapper.getOrderGoods(bo.getUserId(),bo.getGoodsId());
+            if (ObjectUtils.isNotNull(orderGoods)){
+                ClassGradeUser classGradeUser = getOne(new LambdaQueryWrapper<ClassGradeUser>()
+                        .eq(ClassGradeUser::getOrderGoodsId, orderGoods.getOrderGoodsId())
+                        .eq(ClassGradeUser::getUserId, bo.getUserId())
+                        .eq(ClassGradeUser::getStatus, 1)
+                        .last("limit 1"));
+                if (ObjectUtils.isNotNull(classGradeUser) && ObjectUtils.isNotNull(classGradeUser.getPeriodWaitTime())){
+                    //重修
+                    return 0L;
+                }
+            }
             User user = iUserService.getById(bo.getUserId());
             Integer type = "继续教育二级建造师".equals(businessName)?1:2;
             String param = String.format("idnum=%s&type=%s",EncryptHandler.decrypt(user.getIdCard()),type);

+ 7 - 7
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/UserPeriodServiceImpl.java

@@ -672,13 +672,13 @@ public class UserPeriodServiceImpl extends ServiceImpl<UserPeriodMapper, UserPer
     public boolean syncStudyLogToOld(UserPeriodEditBo bo) {
         //企业ID
         String tenant = ServletUtils.getRequest().getHeader("TenantId");
-//        SysOldOrg org = sysOldOrgService.list(new LambdaQueryWrapper<SysOldOrg>()
-//                .eq(SysOldOrg::getTenantId, tenant)
-//                .last("limit 1")).stream().findFirst().orElse(null);
-//        if (org.getShareClass() == 0){
-//            //有职能的机构学时不推送旧系统
-//            return true;
-//        }
+        SysOldOrg org = sysOldOrgService.list(new LambdaQueryWrapper<SysOldOrg>()
+                .eq(SysOldOrg::getTenantId, tenant)
+                .last("limit 1")).stream().findFirst().orElse(null);
+        if (org.getShareClass() == 0){
+            //有职能的机构学时不推送旧系统
+            return true;
+        }
         CourseEducationType educationType = iCourseEducationTypeService.getOne(new LambdaQueryWrapper<CourseEducationType>().eq(CourseEducationType::getStatus, 1).eq(CourseEducationType::getEducationName,"继续教育").last("limit 1"));
         CourseProjectType projectType = iCourseProjectTypeService.getOne(new LambdaQueryWrapper<CourseProjectType>().eq(CourseProjectType::getStatus, 1).eq(CourseProjectType::getEducationId,educationType.getId()).eq(CourseProjectType::getProjectName,"建造师").last("limit 1"));
         CourseBusiness business = iCourseBusinessService.getOne(new LambdaQueryWrapper<CourseBusiness>().eq(CourseBusiness::getStatus, 1).eq(CourseBusiness::getProjectId,projectType.getId()).eq(CourseBusiness::getBusinessName,"二级").last("limit 1"));

+ 15 - 0
zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeUserMapper.xml

@@ -1899,6 +1899,7 @@
         WHERE
             cgu.user_id = #{userId}
           AND cgu.period_status = -1
+          AND cgu.period_wait_time is null
           AND (unix_timestamp(now())  BETWEEN cg.class_start_time and cg.class_end_time)
           and g.business_id = #{businessId}
           and g.goods_id != #{goodsId}
@@ -1913,6 +1914,20 @@
           AND up.order_goods_id = cgu.order_goods_id
             )>0
     </select>
+    <select id="getOrderGoods" parameterType="java.lang.Long" resultType="com.zhongzheng.modules.order.domain.OrderGoods">
+        SELECT
+            og.*
+        FROM
+            order_goods og
+            LEFT JOIN `order` o ON og.order_sn = o.order_sn
+        WHERE
+            o.user_id = #{userId}
+            AND og.goods_id = #{goodsId}
+            AND og.refund_status != 2
+	        AND og.pay_status != 1
+	        AND og.`status` = 1
+	        AND o.`status` = 1
+    </select>
 
     <select id="getSevenPeriodStartTime" parameterType="com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo" resultType="java.lang.Long">
         SELECT