소스 검색

Merge remote-tracking branch 'origin/master'

周箭河 5 년 전
부모
커밋
36c0d00d82

+ 5 - 7
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/Teacher.java

@@ -1,16 +1,14 @@
 package com.ym.mec.biz.dal.entity;
 
-import io.swagger.annotations.ApiModelProperty;
-
-import java.util.Date;
-import java.util.List;
-
-import org.apache.commons.lang3.builder.ToStringBuilder;
-
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.enums.JobNatureEnum;
 import com.ym.mec.biz.dal.enums.JobTypeEnum;
 import com.ym.mec.biz.dal.enums.YesOrNoEnum;
+import io.swagger.annotations.ApiModelProperty;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+
+import java.util.Date;
+import java.util.List;
 
 /**
  * 对应数据库表(teacher):

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/MessageTypeEnum.java

@@ -4,6 +4,8 @@ import com.ym.mec.common.enums.BaseEnum;
 
 public enum MessageTypeEnum implements BaseEnum<String, MessageTypeEnum> {
     SMS_APPLY_MESSAGE("SMS_APPLY_MESSAGE", "报名通知"),
+    PUSH_STUDENT_VIP_STOP("PUSH_STUDENT_VIP_STOP", "VIP课取消"),
+    PUSH_TEACHER_VIP_STOP("PUSH_TEACHER_VIP_STOP", "VIP课取消"),
     SMS_MUSIC_GROUP_ADD_STUDENT("SMS_MUSIC_GROUP_ADD_STUDENT", "入团通知"),
     SMS_VERIFY_CODE_LOGIN("SMS_VERIFY_CODE_LOGIN", "验证码登录"),
     SMS_PAYMENT_MESSAGE("SMS_PAYMENT_MESSAGE", "缴费通知"),

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/VipGroupService.java

@@ -298,7 +298,7 @@ public interface VipGroupService extends BaseService<Long, VipGroup> {
     void updateVipGroupBaseInfo(VipGroupApplyBaseInfoDto vipGroupApplyBaseInfo);
 
     /**
-     * @describe 取消达到报名时间认为达到报名人数的vip课
+     * @describe 取消达到报名时间仍未达到报名人数的vip课
      * @author Joburgess
      * @date 2019/11/13
      * @return void

+ 8 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -1194,7 +1194,11 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		Map<String,BigDecimal> result=new HashMap<>();
 		if(vipGroup.getStatus().equals(VipGroupStatusEnum.APPLYING)){
 			StudentPaymentOrder studentPaymentOrder = studentPaymentOrderDao.findByStudentVipGroup(vipGroupId, studentId, DealStatusEnum.SUCCESS.getCode());
-			result.put("suplusCourseFee",studentPaymentOrder.getActualAmount());
+			if(Objects.isNull(studentPaymentOrder)){
+				result.put("suplusCourseFee",new BigDecimal(0));
+			}else{
+				result.put("suplusCourseFee",studentPaymentOrder.getActualAmount());
+			}
 			return result;
 		}
 		ClassGroup classGroup = classGroupDao.findByVipGroup(vipGroupId, null);
@@ -1655,6 +1659,9 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		for (VipGroup noCreateSuccessVipGroup : noCreateSuccessVipGroups) {
 			List<StudentPaymentOrder> studentPaymentOrders = studentPaymentOrderDao.queryByDealStatus(noCreateSuccessVipGroup.getId().toString(),
 					OrderTypeEnum.SMALL_CLASS_TO_BUY, DealStatusEnum.SUCCESS);
+			//学生推送消息
+			//老师推送消息
+//			sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG,MessageTypeEnum.PUSH_STUDENT_VIP_STOP,);
 			for (StudentPaymentOrder studentPaymentOrder:studentPaymentOrders){
 				//生成账户资金明细
 				sysUserCashAccountService.updateCourseBalance(studentPaymentOrder.getUserId(),studentPaymentOrder.getActualAmount());

+ 1 - 2
mec-biz/src/main/resources/config/mybatis/ClassGroupStudentMapperMapper.xml

@@ -218,8 +218,6 @@
         WHERE
             class_group_id_ = #{classGroupId}
             AND status_!='QUIT'
-        GROUP BY
-          class_group_id_
     </select>
     <select id="countClassGroupExitStudentNum" resultType="int">
         SELECT
@@ -232,6 +230,7 @@
             <foreach collection="userIds" item="userId" open="(" close=")" separator=",">
                 #{userId}
             </foreach>
+            AND status_!='QUIT'
     </select>
     <select id="countUserGroups" resultType="int">
       SELECT COUNT(1)

+ 4 - 0
mec-client-api/src/main/java/com/ym/mec/task/TaskRemoteService.java

@@ -60,4 +60,8 @@ public interface TaskRemoteService {
 	@GetMapping("task/updateVipGroupToFinishedStatus")
 	// 更新VIP课程状态至已结束
 	public void updateVipGroupToFinishedStatus();
+
+	@GetMapping("task/updateVipGroupToFinishedStatus")
+	// 取消达到报名时间未达到报名人数的vip课
+	public void stopVipGroupWithNoCreate();
 }

+ 5 - 0
mec-client-api/src/main/java/com/ym/mec/task/fallback/TaskRemoteServiceFallback.java

@@ -75,4 +75,9 @@ public class TaskRemoteServiceFallback implements TaskRemoteService {
 	public void updateVipGroupToFinishedStatus() {
 		logger.info("更新VIP课程状态至已结束的服务调用失败");
 	}
+
+	@Override
+	public void stopVipGroupWithNoCreate() {
+		logger.info("取消达到报名时间未达到报名人数的vip课失败");
+	}
 }

+ 23 - 0
mec-task/src/main/java/com/ym/mec/task/jobs/StopVipGroupWithNoCreateTask.java

@@ -0,0 +1,23 @@
+package com.ym.mec.task.jobs;
+
+import com.ym.mec.task.TaskRemoteService;
+import com.ym.mec.task.core.BaseTask;
+import com.ym.mec.task.core.TaskException;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class StopVipGroupWithNoCreateTask extends BaseTask {
+
+	@Autowired
+	private TaskRemoteService taskRemoteService;
+
+	/**
+	 * 取消达到报名时间未达到报名人数的vip课
+	 * @throws TaskException
+	 */
+	@Override
+	public void execute() throws TaskException {
+		taskRemoteService.stopVipGroupWithNoCreate();
+	}
+}

+ 6 - 0
mec-web/src/main/java/com/ym/mec/web/controller/TaskController.java

@@ -114,4 +114,10 @@ public class TaskController extends BaseController {
 		studentPaymentOrderService.queryOrderStatus();
 	}
 
+	//取消达到报名时间仍未达到报名人数的vip课
+	@GetMapping("/stopVipGroupWithNoCreate")
+	public void stopVipGroupWithNoCreate(){
+		vipGroupService.stopVipGroupWithNoCreate();
+	}
+
 }

+ 7 - 0
mec-web/src/main/java/com/ym/mec/web/controller/VipGroupManageController.java

@@ -275,6 +275,13 @@ public class VipGroupManageController extends BaseController {
         return succeed();
     }
 
+    @ApiOperation(value = "取消达到报名时间未达到报名人数的vip课")
+    @PostMapping(value = "/stopVipGroupWithNoCreate")
+    public Object stopVipGroupWithNoCreate(){
+        vipGroupService.stopVipGroupWithNoCreate();
+        return succeed();
+    }
+
     @ApiOperation(value = "新增vip课程计划")
     @PostMapping(value = "/appendVipGroupCourseSchedules")
     public Object appendVipGroupCourseSchedules(@RequestBody VipGroupApplyDto vipGroupApplyDto){