Explorar o código

Merge branch 'dev' into pre

tanzh %!s(int64=3) %!d(string=hai) anos
pai
achega
25d2fe6ab3

+ 0 - 1
zhongzheng-api/src/main/java/com/zhongzheng/controller/user/UserController.java

@@ -37,7 +37,6 @@ public class UserController extends BaseController {
     private final WxTokenService wxTokenService;
 
 
-
     /**
      * 修改客户端用户
      */

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

@@ -185,4 +185,9 @@ public class ClassGradeVo {
 
 	@ApiModelProperty("科目ID,拼接")
 	private String subjectIds;
+
+	@ApiModelProperty("业务层次ID")
+	private Long businessId;
+	@ApiModelProperty("项目ID")
+	private Long projectId;
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/mapper/OrderGoodsMapper.java

@@ -46,4 +46,6 @@ public interface OrderGoodsMapper extends BaseMapper<OrderGoods> {
     List<OrderGoodsVo> listGoodsUserLive(Long userId);
 
     List<OrderGoodsVo> listUserSubjectGoods(GoodsQueryBo bo);
+
+    List<OrderGoodsVo> selectBuyUserList(Long mockMajorSubjectId);
 }

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/IOrderGoodsService.java

@@ -83,4 +83,6 @@ public interface IOrderGoodsService extends IService<OrderGoods> {
     List<OrderGoodsVo> listGoodsUserLive(Long userId);
 
     List<OrderUserGoodsVo> listUserSubjectGoods(OrderSubjectUserBuyBo bo);
+
+    List<OrderGoodsVo> selectBuyUserList(Long mockMajorSubjectId);
 }

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderGoodsServiceImpl.java

@@ -421,6 +421,11 @@ public class OrderGoodsServiceImpl extends ServiceImpl<OrderGoodsMapper, OrderGo
         return allList;
     }
 
+    @Override
+    public List<OrderGoodsVo> selectBuyUserList(Long mockMajorSubjectId) {
+        return baseMapper.selectBuyUserList(mockMajorSubjectId);
+    }
+
     public boolean joinGrade(Long orderGoodsId, Long gradeId, Long userId, Long goodsId) {
         ClassGradeVo classGradeVo = iClassGradeService.queryById(gradeId);
         if (classGradeVo == null) {

+ 22 - 11
zhongzheng-system/src/main/java/com/zhongzheng/modules/schedule/service/impl/ScheduleServiceImpl.java

@@ -71,8 +71,10 @@ import com.zhongzheng.modules.inform.vo.InformVo;
 import com.zhongzheng.modules.mock.bo.MockApplyEditBo;
 import com.zhongzheng.modules.mock.domain.MockApply;
 import com.zhongzheng.modules.mock.domain.MockMajorSubject;
+import com.zhongzheng.modules.mock.domain.MockMajorSubjectGoods;
 import com.zhongzheng.modules.mock.domain.MockMajorSubjectTime;
 import com.zhongzheng.modules.mock.service.IMockApplyService;
+import com.zhongzheng.modules.mock.service.IMockMajorSubjectGoodsService;
 import com.zhongzheng.modules.mock.service.IMockMajorSubjectService;
 import com.zhongzheng.modules.mock.service.IMockMajorSubjectTimeService;
 import com.zhongzheng.modules.mock.vo.MockApplyVo;
@@ -243,6 +245,9 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
     @Autowired
     private IMockMajorSubjectTimeService iMockMajorSubjectTimeService;
 
+    @Autowired
+    private IMockMajorSubjectGoodsService iMockMajorSubjectGoodsService;
+
     @Autowired
     private IMockMajorSubjectService iMockMajorSubjectService;
 
@@ -1339,15 +1344,17 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
     public void sendMockSubscribe(UserQueryBo bo) {
         List<ClassGradeVo> classGradeVos = iClassGradeService.listGradeSubjects();
         List<MockApplyVo> mockApplyVos = iMockApplyService.listSubjects();
-        Set<Long> gradeIds = new HashSet<>();
+        /*Set<Long> gradeIds = new HashSet<>();
         classGradeVos.forEach(classGradeVo -> {
             if (Validator.isNotEmpty(classGradeVo.getSubjectIds())) {
                 String[] subjectId = classGradeVo.getSubjectIds().split(",");
                 List<String> subjectIds = Arrays.asList(subjectId);
                 if (mockApplyVos != null && mockApplyVos.size() > 0) {
                     for (MockApplyVo mockApplyVo : mockApplyVos) {
-                        if (subjectIds.contains(mockApplyVo.getSubjectId().toString())) {
-                            gradeIds.add(classGradeVo.getGradeId());
+                        if (mockApplyVo.getBusinessId().equals(classGradeVo.getBusinessId()) && mockApplyVo.getProjectId().equals(classGradeVo.getProjectId())) {
+                            if (subjectIds.contains(mockApplyVo.getSubjectId().toString())) {
+                                gradeIds.add(classGradeVo.getGradeId());
+                            }
                         }
                     }
                 }
@@ -1370,11 +1377,14 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
             }
         }
 
-        for (ClassGradeStudentVo classGradeStudentVo : classGradeStudentList) {
+        for (ClassGradeStudentVo classGradeStudentVo : classGradeStudentList) {*/
+        mockApplyVos.forEach(mockApplyVo -> {
+            List<OrderGoodsVo> orderGoodsVoList = iOrderGoodsService.selectBuyUserList(mockApplyVo.getMockMajorSubjectId());
+            orderGoodsVoList.forEach(orderGoodsVo -> {
             InformRemindVo informRemindVo = informRemindService.queryById(25L);
             if (informRemindVo.getWayStatus().equals(1)) {
                 InformUserAddBo informUserAddBo = new InformUserAddBo();
-                informUserAddBo.setUserId(classGradeStudentVo.getUserId());
+                informUserAddBo.setUserId(orderGoodsVo.getUserId());
                 informUserAddBo.setSendStatus(1);
                 informUserAddBo.setSendTime(DateUtils.getNowTime());
                 informUserAddBo.setCreateTime(DateUtils.getNowTime());
@@ -1382,12 +1392,12 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
                 informUserAddBo.setRemindId(25L);
                 informUserAddBo.setSystemStatus(1);
                 informUserAddBo.setRemind("模考预约提醒");
-                informUserAddBo.setText("尊敬的用户:【" + classGradeStudentVo.getBusinessName() + classGradeStudentVo.getProjectName() + "】考前模拟考试将开始报名参加模拟考试。请登录【祥粤云小程序】或【web.xyyxt.net】进行报名。");
+                informUserAddBo.setText("尊敬的用户:【" + mockApplyVo.getBusinessName() + mockApplyVo.getProjectName() + "】考前模拟考试将开始报名参加模拟考试。请登录【祥粤云小程序】或【web.xyyxt.net】进行报名。");
                 iInformUserService.insertByAddBo(informUserAddBo);
             }
             if (informRemindVo.getNoteStatus().equals(1)) {
                 InformUserAddBo informUserAddBo = new InformUserAddBo();
-                informUserAddBo.setUserId(classGradeStudentVo.getUserId());
+                informUserAddBo.setUserId(orderGoodsVo.getUserId());
                 informUserAddBo.setSendTime(DateUtils.getNowTime());
                 informUserAddBo.setSendStatus(1);
                 informUserAddBo.setCreateTime(DateUtils.getNowTime());
@@ -1395,15 +1405,16 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
                 informUserAddBo.setRemindId(25L);
                 informUserAddBo.setSystemStatus(3);
                 informUserAddBo.setRemind("模考预约提醒");
-                informUserAddBo.setText("尊敬的用户:【" + classGradeStudentVo.getBusinessName() + classGradeStudentVo.getProjectName() + "】考前模拟考试将开始报名参加模拟考试。请登录【祥粤云小程序】或【web.xyyxt.net】进行报名。");
-                UserVo userVo = iUserService.queryById(classGradeStudentVo.getUserId());
+                informUserAddBo.setText("尊敬的用户:【" + mockApplyVo.getBusinessName() + mockApplyVo.getProjectName() + "】考前模拟考试将开始报名参加模拟考试。请登录【祥粤云小程序】或【web.xyyxt.net】进行报名。");
+                UserVo userVo = iUserService.queryById(orderGoodsVo.getUserId());
                 Map<String, Object> param = new HashMap<>();
-                param.put("businessName", classGradeStudentVo.getBusinessName() + classGradeStudentVo.getProjectName());
+                param.put("businessName", mockApplyVo.getBusinessName() + mockApplyVo.getProjectName());
                 if (Validator.isNotEmpty(IAliSmsService.sendInformSms(userVo.getTelphone(), JSON.toJSONString(param), mockBookingReminder))) {
                     iInformUserService.insertByAddBo(informUserAddBo);
                 }
             }
-        }
+            });
+        });
         mockApplyVos.forEach(mockApplyVo -> {
             MockApply mockApply = new MockApply();
             mockApply.setApplyId(mockApplyVo.getApplyId());

+ 5 - 1
zhongzheng-system/src/main/resources/mapper/modules/grade/ClassGradeMapper.xml

@@ -56,6 +56,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="periodPlushNum" column="period_plush_num"/>
         <result property="subjectNames" column="subject_names"/>
         <result property="subjectIds" column="subject_ids"/>
+        <result property="businessId" column="business_id"/>
+        <result property="projectId" column="project_id"/>
     </resultMap>
 
     <resultMap type="com.zhongzheng.modules.grade.vo.ClassGradeUserListVo" id="ClassGradeUserListVo">
@@ -801,7 +803,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <select id="listGradeSubjects" resultMap="ClassGradeVoResult">
         SELECT
             cg.*,
-            g.subject_ids
+            g.subject_ids,
+            g.business_id,
+            g.project_id
         FROM
             class_grade cg
         LEFT JOIN class_grade_goods cgg ON cg.grade_id = cgg.grade_id

+ 8 - 3
zhongzheng-system/src/main/resources/mapper/modules/mock/MockApplyMapper.xml

@@ -250,11 +250,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <select id="listSubjects" resultMap="MockApplyVoResult">
         SELECT
             ma.*,
-            mms.subject_id
+            mms.subject_id,
+            mms.mock_major_subject_id,
+            cb.business_name,
+            cpt.project_name
         FROM
             mock_apply ma
-                LEFT JOIN mock_major mm ON ma.apply_id = mm.apply_id
-                LEFT JOIN mock_major_subject mms ON mm.mock_major_id = mms.mock_major_id
+        LEFT JOIN mock_major mm ON ma.apply_id = mm.apply_id
+        LEFT JOIN mock_major_subject mms ON mm.mock_major_id = mms.mock_major_id
+        LEFT JOIN course_business cb ON ma.business_id = cb.id
+        LEFT JOIN course_project_type cpt ON ma.project_id = cpt.id
         WHERE
             unix_timestamp(now()) &lt; ma.apply_end_time
             AND ma.mock_remind = 0

+ 14 - 0
zhongzheng-system/src/main/resources/mapper/modules/order/OrderGoodsMapper.xml

@@ -443,4 +443,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
           AND FIND_IN_SET(#{subjectId},g.subject_ids)
         </if>
     </select>
+    <select id="selectBuyUserList" parameterType="java.lang.Long" resultMap="OrderGoodsResultVo">
+        SELECT
+            og.*,
+            o.user_id
+        FROM
+            order_goods og
+        LEFT JOIN `order` o ON og.order_sn = o.order_sn
+        LEFT JOIN mock_major_subject_goods mmsg ON og.goods_id = mmsg.goods_id
+        WHERE
+            og.refund_status != 2
+			and og.pay_status in (3,4)
+			and og.`status` = 1
+			and mmsg.mock_major_subject_id = #{mockMajorSubjectId}
+    </select>
 </mapper>