he2802 3 年 前
コミット
f5c4895720

+ 11 - 0
zhongzheng-admin/src/main/java/com/zhongzheng/controller/schedule/ScheduleController.java

@@ -140,4 +140,15 @@ public class ScheduleController extends BaseController {
         iScheduleService.bindBefore(bo);
         return AjaxResult.success();
     }
+
+    /**
+     * 官方信息推送
+     * @return
+     */
+    @ApiOperation("官方信息推送")
+    @GetMapping("/officialInfoPush")
+    public AjaxResult officialInfoPush(UserQueryBo bo){
+        iScheduleService.officialInfoPush(bo);
+        return AjaxResult.success();
+    }
 }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/service/impl/CourseServiceImpl.java

@@ -361,6 +361,11 @@ public class CourseServiceImpl extends ServiceImpl<CourseMapper, Course> impleme
             goodsUserVo.setClassStatus(classGradeVo.getClassStatus());
             goodsUserVo.setRecordNum(classGradeVo.getRecordNum());
             goodsUserVo.setExamNum(classGradeVo.getExamNum());
+            goodsUserVo.setInterfaceAccountId(classGradeVo.getInterfaceAccountId());
+            goodsUserVo.setInterfacePushId(classGradeVo.getInterfacePushId());
+            goodsUserVo.setOfficialLearningUrl(classGradeVo.getOfficialLearningUrl());
+            goodsUserVo.setOfficialStatus(classGradeVo.getOfficialStatus());
+            goodsUserVo.setLearnStatus(classGradeVo.getLearnStatus());
             Long secLong = 0L;
             Long studyLong = 0L;
             SubjectStudyRecordQueryBo subjectStudyRecordQueryBo = new SubjectStudyRecordQueryBo();

+ 8 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/impl/GoodsServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.lang.Validator;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.zhongzheng.common.exception.CustomException;
 import com.zhongzheng.common.utils.DateUtils;
@@ -32,6 +33,7 @@ import com.zhongzheng.modules.order.bo.OrderGoodsQueryBo;
 import com.zhongzheng.modules.order.domain.OrderGoods;
 import com.zhongzheng.modules.order.service.IOrderGoodsService;
 import com.zhongzheng.modules.order.vo.OrderGoodsVo;
+import com.zhongzheng.modules.user.domain.UserBankRecord;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -253,6 +255,12 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
             }
             iGoodsCourseService.saveBatch(coll);
         }
+        if(Validator.isEmpty(bo.getBuyNote())){
+            LambdaUpdateWrapper<Goods> objectLambdaUpdateWrapper = Wrappers.lambdaUpdate();
+            objectLambdaUpdateWrapper.eq(Goods::getGoodsId,bo.getGoodsId());
+            objectLambdaUpdateWrapper.set(Goods::getBuyNote,null);
+            update(null, objectLambdaUpdateWrapper);
+        }
         //试听列表
         if(bo.getAuditionList()!=null&&bo.getAuditionList().size()>0){
             update.setGoodsAuditionConfig(JSON.toJSONString(bo.getAuditionList()));

+ 20 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/vo/GoodsUserVo.java

@@ -330,5 +330,25 @@ public class GoodsUserVo {
 	/** 已做试卷 */
 	@ApiModelProperty("已做试卷")
 	private Long recordNum;
+	/** 官方学习地址 */
+	@Excel(name = "官方学习地址")
+	@ApiModelProperty("官方学习地址")
+	private String officialLearningUrl;
+	/** 官方推送状态 1是 0否 */
+	@Excel(name = "官方推送状态 1是 0否")
+	@ApiModelProperty("官方推送状态 1是 0否")
+	private Integer officialStatus;
+	/** 官方学习账号推送状态 0否 1是 */
+	@Excel(name = "官方学习账号推送状态 0否 1是")
+	@ApiModelProperty("官方学习账号推送状态 0否 1是")
+	private Integer learnStatus;
+	/** 官方账号开通 */
+	@Excel(name = "官方账号开通")
+	@ApiModelProperty("官方账号开通")
+	private Long interfaceAccountId;
+	/** 官方信息推送接口 */
+	@Excel(name = "官方信息推送接口")
+	@ApiModelProperty("官方信息推送接口")
+	private Long interfacePushId;
 
 }

+ 0 - 3
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/domain/ClassGrade.java

@@ -64,15 +64,12 @@ private static final long serialVersionUID=1L;
     private Long sysUserId;
 
     /** 官方信息推送接口 */
-    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private Long interfacePushId;
     /** 备注 */
     private String remark;
     /** 官方账号开通 */
-    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private Long interfaceAccountId;
     /** 学时推送 */
-    @TableField(updateStrategy = FieldStrategy.IGNORED)
     private Long interfacePeriodId;
 
     /** 报考地区 */

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

@@ -5,6 +5,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.user.bo.UserQueryBo;
 import com.zhongzheng.modules.user.domain.User;
 import org.apache.ibatis.annotations.Param;
 
@@ -61,5 +62,9 @@ public interface ClassGradeUserMapper extends BaseMapper<ClassGradeUser> {
 
     Long selectOfficialPeriodCount(ClassGradeUserQueryBo bo);
 
+
     Long selectLearnStatusCount(ClassGradeUserQueryBo bo);
+
+    List<ClassGradeUserGoodsVo> selectOfficialNotPush(UserQueryBo bo);
+
 }

+ 3 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/IClassGradeUserService.java

@@ -7,6 +7,7 @@ import com.zhongzheng.modules.grade.bo.*;
 import com.zhongzheng.modules.grade.domain.ClassGradeUser;
 import com.zhongzheng.modules.grade.vo.*;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.zhongzheng.modules.user.bo.UserQueryBo;
 import com.zhongzheng.modules.user.bo.UserStudyRecordQueryBo;
 import com.zhongzheng.modules.user.domain.User;
 
@@ -104,4 +105,6 @@ public interface IClassGradeUserService extends IService<ClassGradeUser> {
 
 	Long selectOfficialPeriodCount(ClassGradeUserQueryBo bo);
 
+	List<ClassGradeUserGoodsVo> selectOfficialNotPush(UserQueryBo bo);
+
 }

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

@@ -35,6 +35,7 @@ import com.zhongzheng.modules.order.service.IOrderService;
 import com.zhongzheng.modules.order.vo.OrderGoodsVo;
 import com.zhongzheng.modules.system.domain.SysTenant;
 import com.zhongzheng.modules.user.bo.SubjectStudyRecordQueryBo;
+import com.zhongzheng.modules.user.bo.UserQueryBo;
 import com.zhongzheng.modules.user.bo.UserStudyRecordQueryBo;
 import com.zhongzheng.modules.user.domain.User;
 import com.zhongzheng.modules.user.domain.UserPlan;
@@ -1493,6 +1494,10 @@ public class ClassGradeUserServiceImpl extends ServiceImpl<ClassGradeUserMapper,
         return baseMapper.selectOfficialPeriodCount(bo);
     }
 
+    @Override
+    public List<ClassGradeUserGoodsVo> selectOfficialNotPush(UserQueryBo bo) {
+        return baseMapper.selectOfficialNotPush(bo);
+    }
 
 
     /**

+ 9 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/vo/ClassGradeVo.java

@@ -150,4 +150,13 @@ public class ClassGradeVo {
 	@Excel(name = "官方学习地址")
 	@ApiModelProperty("官方学习地址")
 	private String officialLearningUrl;
+	/** 官方推送状态 1是 0否 */
+	@Excel(name = "官方推送状态 1是 0否")
+	@ApiModelProperty("官方推送状态 1是 0否")
+	private Integer officialStatus;
+	/** 官方学习账号推送状态 0否 1是 */
+	@Excel(name = "官方学习账号推送状态 0否 1是")
+	@ApiModelProperty("官方学习账号推送状态 0否 1是")
+	private Integer learnStatus;
+
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/schedule/service/IScheduleService.java

@@ -42,4 +42,6 @@ public interface IScheduleService extends IService<PolyvVideo> {
     void UpExamNum(UserQueryBo bo);
 
     void bindBefore(UserQueryBo bo);
+
+    void officialInfoPush(UserQueryBo bo);
 }

+ 16 - 4
zhongzheng-system/src/main/java/com/zhongzheng/modules/schedule/service/impl/ScheduleServiceImpl.java

@@ -37,6 +37,7 @@ import com.zhongzheng.modules.exam.vo.ExamNumberVo;
 import com.zhongzheng.modules.exam.vo.ExamUserApplyVo;
 import com.zhongzheng.modules.goods.service.IGoodsService;
 import com.zhongzheng.modules.goods.vo.GoodsVo;
+import com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo;
 import com.zhongzheng.modules.grade.domain.ClassGradeUser;
 import com.zhongzheng.modules.grade.domain.ClassGradeUserTemp;
 import com.zhongzheng.modules.grade.service.IClassGradeGoodsService;
@@ -134,12 +135,8 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
     @Autowired
     private IGoodsService iGoodsService;
     @Autowired
-    private IClassGradeService iClassGradeService;
-    @Autowired
     private IClassGradeUserService iClassGradeUserService;
     @Autowired
-    private IClassGradeGoodsService iClassGradeGoodsService;
-    @Autowired
     private IOrderService iOrderService;
 
     @Autowired
@@ -843,6 +840,21 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
         }
     }
 
+    /**
+     * 官方信息推送
+     * @param bo
+     */
+    @Override
+    public void officialInfoPush(UserQueryBo bo) {
+        List<ClassGradeUserGoodsVo> list = iClassGradeUserService.selectOfficialNotPush(bo);
+        for(ClassGradeUserGoodsVo vo : list){
+            ClassGradeUserQueryBo queryBo = new ClassGradeUserQueryBo();
+            queryBo.setGradeId(vo.getGradeId());
+            queryBo.setUserId(bo.getUserId());
+            iClassGradeUserService.pushOfficialInfo(queryBo);
+        }
+    }
+
     //获得可用学习天数
     private static int getDutyDays(Date  startDateStr, Date endDateStr,Long[] longs,Long studyDay)  {
         int result = 0;

+ 11 - 1
zhongzheng-system/src/main/resources/mapper/modules/course/CourseMapper.xml

@@ -211,6 +211,11 @@
         <result property="periodStatus" column="period_status"/>
         <result property="examNum" column="exam_num"/>
         <result property="recordNum" column="record_num"/>
+        <result property="interfacePushId" column="interface_push_id"/>
+        <result property="interfaceAccountId" column="interface_account_id"/>
+        <result property="officialLearningUrl" column="official_learning_url"/>
+        <result property="learnStatus" column="learn_status"/>
+        <result property="officialStatus" column="official_status"/>
     </resultMap>
 
 
@@ -565,7 +570,12 @@
             cg.status,
             cg.learning_status,
             cgu.period_status,
-            cg.learning_time_start
+            cg.learning_time_start,
+            cgu.learn_status,
+            cg.interface_account_id,
+            cg.official_learning_url,
+            cg.interface_push_id,
+            cgu.official_status
         FROM
             class_grade_user cgu
                 LEFT JOIN class_grade cg on cgu.grade_id = cg.grade_id

+ 21 - 1
zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeUserMapper.xml

@@ -11,11 +11,17 @@
         <result property="status" column="status"/>
         <result property="createTime" column="create_time"/>
         <result property="updateTime" column="update_time"/>
+        <result property="createBy" column="create_by"/>
         <result property="fromType" column="from_type"/>
+        <result property="periodStatus" column="period_status"/>
         <result property="orderGoodsId" column="order_goods_id"/>
+        <result property="finishStatus" column="finish_status"/>
+        <result property="officialStatus" column="official_status"/>
+        <result property="learnStatus" column="learn_status"/>
+        <result property="periodPlush" column="period_plush"/>
+        <result property="periodTime" column="period_time"/>
         <result property="periodWaitTime" column="period_wait_time"/>
         <result property="changeGrade" column="change_grade"/>
-        <result property="periodTime" column="period_time"/>
         <result property="officialStatusMsg" column="official_status_msg"/>
         <result property="periodPlushMsg" column="period_plush_msg"/>
         <result property="officialStatusTime" column="official_status_time"/>
@@ -1020,4 +1026,18 @@
             cgu.grade_id = #{gradeId}
           AND cgu.period_plush = 1
     </select>
+
+    <select id="selectOfficialNotPush" parameterType="com.zhongzheng.modules.user.bo.UserQueryBo" resultMap="ClassGradeUserGoodsVoResult">
+        SELECT
+            gu.*
+        FROM
+            class_grade g
+                LEFT JOIN class_grade_user gu ON g.grade_id = gu.grade_id
+        WHERE
+            g.interface_push_id = 1
+          AND g.`status` = 1
+          AND gu.`status` = 1
+          AND gu.change_grade = 0
+          AND gu.official_status = 0
+    </select>
 </mapper>