瀏覽代碼

会员试用

zouxuan 3 年之前
父節點
當前提交
a0dfecffcd

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/MusicGroupStudentsDto.java

@@ -130,11 +130,20 @@ public class MusicGroupStudentsDto{
     private Integer experienceMembershipDay;
     private Integer membershipDay;
     private Integer musicMembershipDay;
+    private Integer musicMembershipDay1;
     //是否有未生效的云教练订单
     private Boolean hasNoStartCloudTeacher = false;
 
     private Integer memberRankSettingId;
 
+    public Integer getMusicMembershipDay1() {
+        return musicMembershipDay1;
+    }
+
+    public void setMusicMembershipDay1(Integer musicMembershipDay1) {
+        this.musicMembershipDay1 = musicMembershipDay1;
+    }
+
     public Integer getMemberRankSettingId() {
         return memberRankSettingId;
     }

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

@@ -800,7 +800,7 @@
 		LEFT JOIN student_registration sr ON sr.music_group_id_ = mgpc.music_group_id_ AND mgpcd.user_id_ = sr.user_id_
 		WHERE
 		mg.status_ = 'PROGRESS'
-		AND ((mgpc.member_rank_setting_id_ IS NOT NULL AND (DATEDIFF(sr.membership_end_time_,NOW()) < 0 OR sr.membership_end_time_ IS NULL)) OR mgpc.member_rank_setting_id_ IS NULL)
+		AND ((mgpc.member_rank_setting_id_ IS NOT NULL AND (sr.membership_end_time_ < NOW() OR sr.membership_end_time_ IS NULL)) OR mgpc.member_rank_setting_id_ IS NULL)
 		<if test="noPaymentType==null or noPaymentType==0">
 			AND DATE_FORMAT(NOW(),'%Y-%m-%d') > DATE_FORMAT(mgpc.deadline_payment_date_,'%Y-%m-%d')
 		</if>

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

@@ -403,7 +403,7 @@
 		LEFT JOIN student_registration sr ON sr.user_id_ = mgpcd.user_id_ AND sr.music_group_id_ = mgpc.music_group_id_
 		WHERE mgpc.batch_no_ IS NOT NULL AND mgpcd.payment_status_ = 'NON_PAYMENT' AND (mgpcd.expect_amount_ + mgpcd.expect_member_amount_) > 0
 		  AND mgpc.music_group_id_ = #{musicGroupId} AND mgpc.status_ IN ('OPEN','OVER','PAID') AND mgpc.pay_user_type_ = 'STUDENT'
-		  AND ((mgpc.member_rank_setting_id_ IS NOT NULL AND (DATEDIFF(sr.membership_end_time_,NOW()) &lt; 0 OR sr.membership_end_time_ IS NULL)) OR mgpc.member_rank_setting_id_ IS NULL)
+		  AND ((mgpc.member_rank_setting_id_ IS NOT NULL AND (sr.membership_end_time_ &lt; NOW() OR sr.membership_end_time_ IS NULL)) OR mgpc.member_rank_setting_id_ IS NULL)
 		GROUP BY mgpcd.user_id_
 	</select>
 
@@ -439,7 +439,7 @@
 	<sql id="queryArrearageStudentsCondition">
 		<where>
 			mg.status_ = 'PROGRESS'
-			AND ((mgpc.member_rank_setting_id_ IS NOT NULL AND (DATEDIFF(sr.membership_end_time_,NOW()) &lt; 0 OR sr.membership_end_time_ IS NULL)) OR mgpc.member_rank_setting_id_ IS NULL)
+			AND ((mgpc.member_rank_setting_id_ IS NOT NULL AND (sr.membership_end_time_ &lt; NOW() OR sr.membership_end_time_ IS NULL)) OR mgpc.member_rank_setting_id_ IS NULL)
 			<if test="noPaymentType==null or noPaymentType==0">
 				AND DATE_FORMAT(NOW(),'%Y-%m-%d') > DATE_FORMAT(mgpc.deadline_payment_date_,'%Y-%m-%d')
 			</if>

+ 3 - 5
mec-biz/src/main/resources/config/mybatis/StudentMapper.xml

@@ -987,7 +987,7 @@
             stu.cloud_study_sequence_days_ cloudStudyRunningDays,
             COUNT(DISTINCT smcr.behavior_id_) cloudStudyUseNum,
             SUM(CASE WHEN smcr.play_time_ IS NULL THEN 0 ELSE play_time_ END) cloudStudyUseTime,
-            DATE_FORMAT(stu.membership_end_time_, '%Y-%m-%d') membershipEndTime
+            stu.membership_end_time_ membershipEndTime
         FROM student stu
             LEFT JOIN sys_user su ON stu.user_id_=su.id_
             LEFT JOIN sys_user tea ON stu.teacher_id_=tea.id_
@@ -1072,12 +1072,10 @@
         </foreach>
     </update>
     <update id="cleanStudentMember">
-        UPDATE student SET member_rank_setting_id_ = NULL
-        WHERE DATEDIFF(NOW(),membership_end_time_) > 0
+        UPDATE student SET member_rank_setting_id_ = NULL WHERE NOW() > membership_end_time_
     </update>
     <update id="cleanExperienceStudentMember">
-        UPDATE student SET experience_member_rank_setting_id_ = NULL
-        WHERE DATEDIFF(NOW(),experience_membership_end_time_) > 0
+        UPDATE student SET experience_member_rank_setting_id_ = NULL WHERE NOW() > experience_membership_end_time_
     </update>
     <update id="cleanMember">
         UPDATE student SET member_rank_setting_id_ = NULL,membership_start_time_ = NULL,membership_end_time_ = NULL

+ 16 - 10
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -970,10 +970,12 @@ public class ExportController extends BaseController {
         try {
             HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"分部", "学员编号", "学员姓名", "性别", "家长姓名",
                     "家长联系电话", "是否激活", "是否有课", "是否有网管课","网管课剩余课时","VIP课剩余课时", "课程余额(元)", "账户余额(元)",
-                    "所在乐团", "乐团所属声部", "所在乐团状态", "所在vip课", "所在VIP状态", "服务标签", "运营标签", "指导老师", "是否签订协议"}, new String[]{
+                    "所在乐团", "乐团所属声部", "所在乐团状态", "所在vip课", "所在VIP状态", "服务标签", "运营标签", "指导老师", "是否签订协议", "会员截止日期", "会员剩余天数", "会员试用结束日期", "会员试用剩余天数"}, new String[]{
                     "organName", "userId", "username", "gender.description", "parentsName", "parentsPhone",
                     "isActive.msg", "hasCourse.msg", "hasPracticeCourse.msg","noStartPracticeCourseNum","noStartVipCourseNum", "courseBalance", "balance", "musicGroupName",
-                    "subjectName", "musicGroupStatus", "vipGroupName", "vipGroupStatus", "serviceTag.msg", "operatingTag.msg", "teacherName", "isSignedContract ? '是' : '否'"}, rows);
+                    "subjectName", "musicGroupStatus", "vipGroupName", "vipGroupStatus", "serviceTag.msg", "operatingTag.msg", "teacherName", "isSignedContract ? '是' : '否'",
+                    "membershipEndTime","membershipEndTime == null ? hasNoStartCloudTeacher ? \"未生效\" : \"未购买\" : membershipDay >= 0 ? membershipDay : hasNoStartCloudTeacher ? \"未生效\" : \"会员已过期\"",
+                    "experienceMembershipEndTime","membershipEndTime == null ? \"未试用\" : membershipDay >= 0 ? membershipDay : \"已失效\""}, rows);
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");
             response.flushBuffer();
@@ -1431,19 +1433,23 @@ public class ExportController extends BaseController {
                 } else {
                     row.setActiveName("否");
                 }
-                if (row.getIsNewStudent().equals(1)) {
-                    row.setIsNewStudentStr("是");
-                } else {
-                    row.setIsNewStudentStr("否");
+                if (row.getMusicMembershipDay() != null && row.getMusicMembershipDay() < 0) {
+                    row.setMusicMembershipDay1(Math.abs(row.getMusicMembershipDay()));
                 }
                 if (row.getNextPaymentDate() != null) {
                     row.setNextPaymentDateStr(DateUtil.format(row.getNextPaymentDate(), DateUtil.DEFAULT_PATTERN));
                 }
             }
-            String[] header = {"学员编号", "学员姓名", "性别", "联系电话", "年级", "班级", "专业", "学员状态", "新增学员", "缴费金额",
-                    "下次缴费日期", "报名缴费状态", "是否激活", "是否有剩余VIP", "是否有剩余网管课", "欠费总额"};
-            String[] body = {"userId", "realName", "gender", "phone", "currentGrade", "currentClass", "subjectName", "studentStatus", "isNewStudentStr",
-                    "courseFee", "nextPaymentDateStr", "paymentStatus.desc", "activeName", "hasVip ? '是' : '否'", "hasPractice ? '是' : '否'", "noPaymentAmount"};
+            String[] header = {"学员编号", "学员姓名", "性别", "联系电话","入团时间", "年级", "班级", "入团专业", "学员状态", "报名缴费", "缴费金额", "是否激活",
+                    "VIP/网管是否有课","关心包","加油包", "欠费金额(元)", "退团原因",
+                    "下次续费时间", "下次续费剩余天数", "会员截止时间", "会员剩余天数", "试用会员截止时间", "试用会员剩余天数"};
+            String[] body = {"userId", "realName", "gender", "phone","registerTime", "currentGrade", "currentClass", "subjectName", "studentStatus", "paymentStatus.desc"
+                    ,"courseFee", "activeName", "hasCourse ? '是' : '否'"
+                    ,"carePackage == null || carePackage == 0 ? \"不可用\" : carePackage == 1 ? \"可用\" : \"已使用\""
+                    ,"comeOnPackage == null || comeOnPackage == 0 ? \"不可用\" : comeOnPackage == 1 ? \"可用\" : \"已使用\""
+                    ,"noPaymentAmount == null ? 0 : noPaymentAmount", "quitReason", "musicMembershipEndTime", "musicMembershipEndTime == null ? '' : musicMembershipDay >= 0 ? musicMembershipDay : '已欠费' + musicMembershipDay1 + '天'",
+                    "membershipEndTime","membershipEndTime == null ? hasNoStartCloudTeacher ? \"未生效\" : \"未购买\" : membershipDay >= 0 ? membershipDay : hasNoStartCloudTeacher ? \"未生效\" : \"会员已过期\"",
+                    "experienceMembershipEndTime","membershipEndTime == null ? \"未试用\" : membershipDay >= 0 ? membershipDay : \"已失效\""};
             HSSFWorkbook workbook = POIUtil.exportExcel(header, body, musicGroupStudentsDtoPageInfo.getRows());
             response.setContentType("application/octet-stream");
             response.setHeader("Content-Disposition", "attachment;filename=lender-" + DateUtil.getDate(new Date()) + ".xls");