Browse Source

问题调整

Joburgess 5 years ago
parent
commit
01044c1689

+ 16 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/VipGroupDefaultClassesCycleDao.java

@@ -5,5 +5,21 @@ import com.ym.mec.common.dal.BaseDAO;
 
 public interface VipGroupDefaultClassesCycleDao extends BaseDAO<Integer, VipGroupDefaultClassesCycle> {
 
+
+    VipGroupDefaultClassesCycle checkMaxClassTimes(Integer maxClassTimes);
+
+    /**
+     * @Author: Joburgess
+     * @Date: 2019/10/8
+     * @params [maxClassTimes]
+     * @return com.ym.mec.biz.dal.entity.VipGroupDefaultClassesCycle
+     * @describe 根据最大课次获取上一梯度信息
+     */
+    VipGroupDefaultClassesCycle findByMaxClassTimes(Integer maxClassTimes);
+
+
+    VipGroupDefaultClassesCycle findByMinClassTimes(Integer minClassTimes);
+
+    int countAll();
 	
 }

+ 12 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentAttendance.java

@@ -44,7 +44,18 @@ public class StudentAttendance {
 	/** 如果是请假状态,此字段就指请假原因 */
 	@ApiModelProperty(value = "如果是请假状态,此字段就指请假原因",required = false)
 	private String remark;
-	
+
+	@ApiModelProperty(value = "当前课时")
+	private Integer currentClassTimes;
+
+	public Integer getCurrentClassTimes() {
+		return currentClassTimes;
+	}
+
+	public void setCurrentClassTimes(Integer currentClassTimes) {
+		this.currentClassTimes = currentClassTimes;
+	}
+
 	public void setId(Long id){
 		this.id = id;
 	}

+ 16 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupDefaultClassesCycleServiceImpl.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.service.impl;
 
+import com.ym.mec.common.exception.BizException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -19,5 +20,19 @@ public class VipGroupDefaultClassesCycleServiceImpl extends BaseServiceImpl<Inte
 	public BaseDAO<Integer, VipGroupDefaultClassesCycle> getDAO() {
 		return vipGroupDefaultClassesCycleDao;
 	}
-	
+
+	@Override
+	public long insert(VipGroupDefaultClassesCycle bean) {
+		if(vipGroupDefaultClassesCycleDao.countAll()>0){
+
+		}else{
+
+		}
+		VipGroupDefaultClassesCycle checkMaxClassTimes = vipGroupDefaultClassesCycleDao.checkMaxClassTimes(bean.getMaxClassTimes());
+		if(null!=checkMaxClassTimes){
+			throw new BizException("已存在包含该课次的设置!");
+		}
+		vipGroupDefaultClassesCycleDao.findByMaxClassTimes(bean.getMaxClassTimes());
+		return super.insert(bean);
+	}
 }

+ 5 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -280,12 +280,15 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		}
 		StudentApplyRefunds studentApplyRefunds=new StudentApplyRefunds();
 		StudentPaymentOrder studentPaymentOrder = studentPaymentOrderDao.findByStudentVipGroup(vipGroupId,studentId);
+		if(null==studentPaymentOrder){
+			throw new BizException("未找到相关订单信息!");
+		}
 		VipGroup vipGroup=vipGroupDao.get(vipGroupId);
 		//剩余课时数
 		Map surplusClassTimes=MapUtil.convertMybatisMap(vipGroupDao.countSurplusClassTimes(vipGroupId));
 		studentApplyRefunds.setExpectAmount(countVipGroupPredictFee(vipGroup,
-				new BigDecimal(surplusClassTimes.get(TeachModeEnum.ONLINE.getMsg()).toString()),
-				new BigDecimal(surplusClassTimes.get(TeachModeEnum.OFFLINE.getMsg()).toString())));
+				new BigDecimal(surplusClassTimes.get(TeachModeEnum.ONLINE.getCode()).toString()),
+				new BigDecimal(surplusClassTimes.get(TeachModeEnum.OFFLINE.getCode()).toString())));
 		studentApplyRefunds.setStatus(AuditStatusEnum.ING);
 		String orderNo=StringUtils.join(new String[]{studentId.toString(),String.valueOf(System.currentTimeMillis())});
 		studentApplyRefunds.setOrderNo(orderNo);

+ 8 - 4
mec-biz/src/main/resources/config/mybatis/StudentAttendanceMapper.xml

@@ -16,6 +16,7 @@
         <result column="status_" property="status" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="create_time_" property="createTime"/>
         <result column="remark_" property="remark"/>
+        <result column="current_class_times_" property="currentClassTimes"/>
     </resultMap>
 
     <!-- 根据主键查询一条记录 -->
@@ -37,15 +38,15 @@
         </selectKey>
         -->
         INSERT INTO student_attendance
-        (id_,music_group_id_,class_group_id_,course_schedule_id_,user_id_,teacher_id_,status_,create_time_,remark_)
-        VALUES(#{id},#{musicGroupId},#{classGroupId},#{courseScheduleId},#{userId},#{teacherId},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now(),#{remark})
+        (id_,music_group_id_,class_group_id_,course_schedule_id_,user_id_,teacher_id_,status_,create_time_,remark_,current_class_times_)
+        VALUES(#{id},#{musicGroupId},#{classGroupId},#{courseScheduleId},#{userId},#{teacherId},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now(),#{remark},#{currentClassTimes})
     </insert>
 
     <insert id="addStudentAttendances" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id_">
-      INSERT INTO student_attendance ( music_group_id_, class_group_id_, course_schedule_id_, user_id_, teacher_id_, status_, create_time_, remark_ )
+      INSERT INTO student_attendance ( music_group_id_, class_group_id_, course_schedule_id_, user_id_, teacher_id_, status_, create_time_, remark_ ,current_class_times_)
       VALUES
 	  <foreach collection="list" item="studentAttendance" separator=",">
-          (#{studentAttendance.musicGroupId},#{studentAttendance.classGroupId},#{studentAttendance.courseScheduleId},#{studentAttendance.userId},#{studentAttendance.teacherId},#{studentAttendance.status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now(),#{studentAttendance.remark})
+          (#{studentAttendance.musicGroupId},#{studentAttendance.classGroupId},#{studentAttendance.courseScheduleId},#{studentAttendance.userId},#{studentAttendance.teacherId},#{studentAttendance.status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now(),#{studentAttendance.remark},#{studentAttendance.currentClassTimes})
       </foreach>
     </insert>
 
@@ -74,6 +75,9 @@
             <if test="musicGroupId != null">
                 music_group_id_ = #{musicGroupId},
             </if>
+            <if test="currentClassTimes != null">
+                current_class_times_ = #{currentClassTimes},
+            </if>
         </set>
         WHERE id_ = #{id}
     </update>

+ 33 - 1
mec-biz/src/main/resources/config/mybatis/VipGroupDefaultClassesCycleMapper.xml

@@ -32,7 +32,7 @@
 		SELECT SEQ_WSDEFINITION_ID.nextval AS ID FROM DUAL 
 		</selectKey>
 		-->
-		INSERT INTO vip_group_default_classes_cycle (id_,min_class_times_,max_class_times_,month_,create_time_,update_time_) VALUES(#{id},#{minClassTimes},#{maxClassTimes},#{month},#{createTime},#{updateTime})
+		INSERT INTO vip_group_default_classes_cycle (id_,min_class_times_,max_class_times_,month_,create_time_,update_time_) VALUES(#{id},#{minClassTimes},#{maxClassTimes},#{month},now(),now())
 	</insert>
 	
 	<!-- 根据主键查询一条记录 -->
@@ -73,4 +73,36 @@ create_time_ = #{createTime},
 	<select id="queryCount" resultType="int">
 		SELECT COUNT(*) FROM vip_group_default_classes_cycle
 	</select>
+	<select id="checkMaxClassTimes" resultMap="VipGroupDefaultClassesCycle">
+		SELECT
+			*
+		FROM
+			vip_group_default_classes_cycle
+			WHERE min_class_times_&gt;#{minClassTimes}
+			AND min_class_times_&gt;#{minClassTimes}
+		ORDER BY min_class_times_ LIMIT 1
+	</select>
+	<select id="findByMaxClassTimes" resultMap="VipGroupDefaultClassesCycle">
+		SELECT
+		*
+		FROM
+		vip_group_default_classes_cycle
+		WHERE max_class_times_&lt;#{maxClassTimes}
+		ORDER BY max_class_times_ DESC LIMIT 1
+	</select>
+	<select id="findByMinClassTimes" resultMap="VipGroupDefaultClassesCycle">
+		SELECT
+			*
+		FROM
+			vip_group_default_classes_cycle
+			WHERE min_class_times_&gt;#{minClassTimes}
+		ORDER BY min_class_times_ LIMIT 1
+	</select>
+    <select id="countAll" resultType="int">
+		SELECT
+			count(*)
+		FROM
+			vip_group_default_classes_cycle
+		LIMIT 1
+    </select>
 </mapper>

+ 5 - 5
mec-student/src/main/java/com/ym/mec/student/controller/StudentVipGroupController.java

@@ -33,7 +33,7 @@ public class StudentVipGroupController extends BaseController {
     @Autowired
     private SubjectService subjectService;
 
-    @ApiOperation("获取vip课列表筛选条件")
+    @ApiOperation(value = "获取vip课列表筛选条件")
     @GetMapping(value = "/findQueryCondition")
     public Object findQueryCondition(){
         List<QueryConditionDto> conditions=new ArrayList<>();
@@ -45,7 +45,7 @@ public class StudentVipGroupController extends BaseController {
         return succeed(conditions);
     }
 
-    @ApiOperation("获取vip课列表")
+    @ApiOperation(value = "获取vip课列表")
     @PostMapping(value = "/queryVipGroups")
     public Object queryVipGroups(@RequestBody StudentVipGroupQueryInfo queryInfo){
         Map<String,Object> result=new HashMap<>();
@@ -54,20 +54,20 @@ public class StudentVipGroupController extends BaseController {
         return succeed(result);
     }
 
-    @ApiOperation("获取学生端vip课显示详情")
+    @ApiOperation(value = "获取学生端vip课显示详情")
     @GetMapping(value = "/getVipGroupShowDetail")
     public Object getVipGroupShowDetail(Long vipGroupId){
         return succeed(vipGroupService.getVipGroupShowDetail(vipGroupId));
     }
 
-    @ApiModelProperty("vip课购买")
+    @ApiModelProperty(value = "vip课购买")
     @PostMapping("/buyVipGroup")
     public Object buyVipGroup(VipGroupBuyParamsDto vipGroupBuyParams){
         vipGroupService.buyVipGroup(vipGroupBuyParams);
         return succeed();
     }
 
-    @ApiModelProperty("vip课退课")
+    @ApiModelProperty(value = "vip课退课")
     @PostMapping("/applyRefund")
     public Object applyRefund(Long vipGroupId){
         vipGroupService.applyRefund(vipGroupId,null);

+ 1 - 4
mec-web/src/main/java/com/ym/mec/web/controller/VipGroupDefaultClassesCycleController.java

@@ -6,11 +6,11 @@ import com.ym.mec.common.controller.BaseController;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.MediaType;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+
 import java.util.Date;
 
 @Api(tags = "vip课默认排课周期")
@@ -36,9 +36,6 @@ public class VipGroupDefaultClassesCycleController extends BaseController {
 	@ApiOperation("新增")
 	@PostMapping(value = "/add")
 	public Object add(VipGroupDefaultClassesCycle vipGroupDefaultClassesCycle) {
-		Date date = new Date();
-		vipGroupDefaultClassesCycle.setCreateTime(date);
-		vipGroupDefaultClassesCycle.setUpdateTime(date);
 		vipGroupDefaultClassesCycleService.insert(vipGroupDefaultClassesCycle);
 		return succeed();
 	}