Browse Source

活动排课

zouxuan 3 years ago
parent
commit
59ff6442c6

+ 20 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/VipGroupActivityQueryInfo.java

@@ -29,6 +29,26 @@ public class VipGroupActivityQueryInfo extends QueryInfo {
 
     private Integer allowOnlineToOffline;
 
+    private Integer memberFlag;
+
+    private Integer newStudent;
+
+    public Integer getMemberFlag() {
+        return memberFlag;
+    }
+
+    public void setMemberFlag(Integer memberFlag) {
+        this.memberFlag = memberFlag;
+    }
+
+    public Integer getNewStudent() {
+        return newStudent;
+    }
+
+    public void setNewStudent(Integer newStudent) {
+        this.newStudent = newStudent;
+    }
+
     public Boolean getGiveFlag() {
         return giveFlag;
     }

+ 9 - 3
mec-biz/src/main/resources/config/mybatis/VipGroupActivityMapper.xml

@@ -148,8 +148,11 @@
 			<if test="search != null and search != ''">
 				AND (vga.id_ = #{search} OR vga.name_ LIKE CONCAT('%', #{search}, '%'))
 			</if>
-			<if test="applyToStudentType != null">
-				AND (FIND_IN_SET(#{applyToStudentType},vga.apply_to_student_type_) OR vga.apply_to_student_type_ IS NULL)
+			<if test="newStudent != null">
+				AND (aps.new_student_ = #{newStudent} OR aps.new_student_ = -1)
+			</if>
+			<if test="memberFlag != null">
+				AND (aps.member_flag_ = #{memberFlag} OR aps.member_flag_ = -1)
 			</if>
 		</where>
 	</sql>
@@ -160,6 +163,7 @@
 		vga.*,((NOW() &lt; end_time_ AND NOW() > start_time_) OR end_time_ IS NULL) enable_,
 		GROUP_CONCAT(vgc.name_) vip_group_category_names_
 		FROM vip_group_activity vga
+		LEFT JOIN activity_apply_student_type aps ON vga.id_ = aps.activity_id_
 		LEFT JOIN vip_group_category vgc ON FIND_IN_SET(vgc.id_,vga.vip_group_category_id_list_)
 		<include refid="queryCondition"/>
 		GROUP BY vga.id_
@@ -169,7 +173,8 @@
 	
 	<!-- 查询当前表的总记录数 -->
 	<select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM vip_group_activity vga
+		SELECT COUNT(vga.id_) FROM vip_group_activity vga
+		LEFT JOIN activity_apply_student_type aps ON vga.id_ = aps.activity_id_
 		<include refid="queryCondition"/>
 	</select>
     <select id="findByCategory" resultMap="VipGroupActivity">
@@ -203,6 +208,7 @@
 		<if test="activityQueryDto.memberNum == null">
 			AND ast.member_flag_ = -1
 		</if>
+		ORDER BY vga.create_time_ DESC
 	</select>
     <select id="queryNamesById" resultType="java.util.Map">
 		SELECT vga.id_ `key`,vga.name_ `value` FROM vip_group_activity vga

+ 23 - 29
mec-web/src/main/java/com/ym/mec/web/controller/VipGroupActivityController.java

@@ -9,10 +9,8 @@ import com.ym.mec.biz.dal.dto.ActivityQueryDto;
 import com.ym.mec.biz.dal.dto.VipGroupActivityAddDto;
 import com.ym.mec.biz.dal.entity.Employee;
 import com.ym.mec.biz.dal.entity.Student;
-import com.ym.mec.biz.dal.entity.SysConfig;
 import com.ym.mec.biz.dal.entity.VipGroupActivity;
 import com.ym.mec.biz.dal.page.VipGroupActivityQueryInfo;
-import com.ym.mec.biz.service.SysConfigService;
 import com.ym.mec.biz.service.VipGroupActivityService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.exception.BizException;
@@ -24,7 +22,9 @@ import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.*;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 /**
@@ -47,8 +47,6 @@ public class VipGroupActivityController extends BaseController {
     private TeacherDao teacherDao;
 	@Autowired
     private StudentDao studentDao;
-	@Autowired
-    private SysConfigService sysConfigService;
 
     @ApiOperation(value = "新增vip课活动方案")
     @PostMapping("/addVipGroupActivity")
@@ -64,18 +62,6 @@ public class VipGroupActivityController extends BaseController {
         return succeed(vipGroupActivityService.get(id));
     }
 
-//    @ApiOperation(value = "启用停用")
-//    @GetMapping("/enable")
-//    @PreAuthorize("@pcs.hasPermissions('vipGroupActivity/enable')")
-//    public Object enable(Integer id){
-//        VipGroupActivity activity = vipGroupActivityService.get(id);
-//        Date date = new Date();
-//        if(enable && (activity.getStartTime() == null || activity.getStartTime().compareTo(date) > 0 || activity.getEndTime() == null || activity.getEndTime().compareTo(date) <= 0)){
-//            throw new BizException("当前时间段不允许开启活动");
-//        }
-//        return succeed(vipGroupActivityService.update(activity));
-//    }
-
     @ApiOperation(value = "分页查询活动方案")
     @GetMapping("/queryPage")
     @PreAuthorize("@pcs.hasPermissions('vipGroupActivity/queryPage')")
@@ -95,6 +81,15 @@ public class VipGroupActivityController extends BaseController {
                 return failed("非法请求");
             }
         }
+        Integer applyToStudentType = queryInfo.getApplyToStudentType();
+        if(applyToStudentType != null){
+            if(applyToStudentType == 0 || applyToStudentType == 1){
+                queryInfo.setNewStudent(applyToStudentType);
+            }
+            if(applyToStudentType == 2 || applyToStudentType == 3){
+                queryInfo.setMemberFlag(applyToStudentType);
+            }
+        }
         return succeed(vipGroupActivityService.queryPage(queryInfo));
     }
 
@@ -151,18 +146,17 @@ public class VipGroupActivityController extends BaseController {
         activityQueryDto.setEnable(true);
         List<VipGroupActivity> vipGroupActivities = vipGroupActivityService.findByVipGroupCategory(activityQueryDto);
 
-        SysConfig doubleElevenIdConfig = sysConfigService.findByParamName(SysConfigService.VIP_SPECIAL_ACTIVITY_IDS);
-        if(Objects.nonNull(doubleElevenIdConfig)&&StringUtils.isNotBlank(doubleElevenIdConfig.getParanValue())){
-            Set<Integer> activityIds = Arrays.stream(doubleElevenIdConfig.getParanValue().split(",")).map(id->Integer.valueOf(id)).collect(Collectors.toSet());
-            Iterator<VipGroupActivity> iterator = vipGroupActivities.iterator();
-            while(iterator.hasNext()){
-                VipGroupActivity vipGroupActivity = iterator.next();
-                if(activityIds.contains(vipGroupActivity.getId())){
-                    iterator.remove();
-                }
-            }
-        }
-
+//        SysConfig doubleElevenIdConfig = sysConfigService.findByParamName(SysConfigService.VIP_SPECIAL_ACTIVITY_IDS);
+//        if(Objects.nonNull(doubleElevenIdConfig)&&StringUtils.isNotBlank(doubleElevenIdConfig.getParanValue())){
+//            Set<Integer> activityIds = Arrays.stream(doubleElevenIdConfig.getParanValue().split(",")).map(id->Integer.valueOf(id)).collect(Collectors.toSet());
+//            Iterator<VipGroupActivity> iterator = vipGroupActivities.iterator();
+//            while(iterator.hasNext()){
+//                VipGroupActivity vipGroupActivity = iterator.next();
+//                if(activityIds.contains(vipGroupActivity.getId())){
+//                    iterator.remove();
+//                }
+//            }
+//        }
         return succeed(vipGroupActivities);
     }