|
@@ -34,6 +34,7 @@
|
|
|
<result column="vip_group_category_id_" property="vipGroupCategoryId"/>
|
|
|
<result column="give_teach_mode_" property="giveTeachMode" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
|
|
|
<result column="organ_id_" property="organId"/>
|
|
|
+ <result column="stop_reason_" property="stopReason"/>
|
|
|
</resultMap>
|
|
|
|
|
|
<resultMap type="com.ym.mec.biz.dal.entity.School" id="School">
|
|
@@ -162,8 +163,8 @@
|
|
|
</selectKey>
|
|
|
-->
|
|
|
INSERT INTO vip_group
|
|
|
- (id_,user_id_,single_class_minutes_,payment_expire_date_,courses_expire_date_,create_time_,update_time_,teacher_school_id_,online_classes_num_,offline_classes_num_,registration_start_time_,name_,organ_id_list_,vip_group_activity_id_,status_,online_classes_unit_price_,offline_classes_unit_price_,total_price_,give_teach_mode_,vip_group_category_id_,organ_id_)
|
|
|
- VALUES(#{id},#{userId},#{singleClassMinutes},#{paymentExpireDate},#{coursesExpireDate},now(),now(),#{teacherSchoolId},#{onlineClassesNum},#{offlineClassesNum},#{registrationStartTime},#{name},#{organIdList},#{vipGroupActivityId},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{onlineClassesUnitPrice},#{offlineClassesUnitPrice},#{totalPrice},#{giveTeachMode},#{vipGroupCategoryId},#{organId})
|
|
|
+ (id_,user_id_,single_class_minutes_,payment_expire_date_,courses_expire_date_,create_time_,update_time_,teacher_school_id_,online_classes_num_,offline_classes_num_,registration_start_time_,name_,organ_id_list_,vip_group_activity_id_,status_,online_classes_unit_price_,offline_classes_unit_price_,total_price_,give_teach_mode_,vip_group_category_id_,organ_id_,stop_reason_)
|
|
|
+ VALUES(#{id},#{userId},#{singleClassMinutes},#{paymentExpireDate},#{coursesExpireDate},now(),now(),#{teacherSchoolId},#{onlineClassesNum},#{offlineClassesNum},#{registrationStartTime},#{name},#{organIdList},#{vipGroupActivityId},#{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{onlineClassesUnitPrice},#{offlineClassesUnitPrice},#{totalPrice},#{giveTeachMode},#{vipGroupCategoryId},#{organId},#{stopReason})
|
|
|
</insert>
|
|
|
|
|
|
|
|
@@ -227,6 +228,9 @@
|
|
|
<if test="organId!=null">
|
|
|
organ_id_=#{organId}
|
|
|
</if>
|
|
|
+ <if test="stopReason!=null">
|
|
|
+ stop_reason_=#{stopReason}
|
|
|
+ </if>
|
|
|
</set>
|
|
|
WHERE id_ = #{id}
|
|
|
</update>
|
|
@@ -561,9 +565,7 @@
|
|
|
</select>
|
|
|
<select id="countTeacherVipGroups" resultType="int">
|
|
|
SELECT COUNT(vg.id_) FROM vip_group vg
|
|
|
- LEFT JOIN vip_group_class_group_mapper vgcgm ON vg.id_ = vgcgm.vip_group_id_
|
|
|
- LEFT JOIN course_schedule cs ON cs.class_group_id_ = vgcgm.class_group_id_
|
|
|
- WHERE cs.actual_teacher_id_ = #{teacherId} AND cs.type_ = 'VIP' AND status_!=3 GROUP BY vg.id_
|
|
|
+ WHERE vg.user_id_ = #{teacherId} AND vg.status_!=3
|
|
|
</select>
|
|
|
|
|
|
<select id="countTeacherVipClass" resultType="java.lang.Integer">
|
|
@@ -607,4 +609,20 @@
|
|
|
<select id="querySchoolByUserId" resultMap="School">
|
|
|
SELECT * from school where user_id_ = #{userId} or user_id_ is null
|
|
|
</select>
|
|
|
+
|
|
|
+ <select id="countVipGroupOverCourse" resultType="java.util.Map">
|
|
|
+ SELECT
|
|
|
+ vgcgm.vip_group_id_,
|
|
|
+ COUNT(cs.Id_)
|
|
|
+ FROM
|
|
|
+ vip_group_class_group_mapper vgcgm
|
|
|
+ LEFT JOIN course_schedule cs ON vgcgm.class_group_id_=cs.class_group_id_
|
|
|
+ WHERE cs.status_='OVER'
|
|
|
+ AND DATE_FORMAT(cs.class_date_,'%Y-%m-%d')=DATE_FORMAT(NOW(),'%Y-%m-%d')
|
|
|
+ AND vgcgm.vip_group_id_ IN
|
|
|
+ <foreach collection="list" item="id" open="(" close=")" separator=",">
|
|
|
+ #{id}
|
|
|
+ </foreach>
|
|
|
+ GROUP BY vgcgm.vip_group_id_
|
|
|
+ </select>
|
|
|
</mapper>
|