Browse Source

update:预报名统计

yonge 4 năm trước cách đây
mục cha
commit
3410c94e09

+ 27 - 3
mec-biz/src/main/resources/config/mybatis/StudentPreRegistrationMapper.xml

@@ -46,9 +46,33 @@
 
     <!-- 全查询 -->
     <select id="findAll" resultMap="StudentPreRegistration">
-        SELECT *
-        FROM student_pre_registration
-        ORDER BY id_
+        SELECT spr.*
+        FROM student_pre_registration spr
+        <where>
+            <if test="musicGroupId != null">
+                and spr.music_group_id_ = #{musicGroupId}
+            </if>
+            <if test="isAllowAdjust != null">
+                and spr.is_allow_adjust_ = #{isAllowAdjust}
+            </if>
+            <if test="subjectId != null">
+                and (spr.subject_first_ = #{subjectId} or spr.subject_second_ = #{subjectId})
+            </if>
+            <if test="name != null">
+                and (spr.phone_ like concat('%',#{name},'%') or spr.user_name_ like concat('%',#{name},'%') or
+                spr.user_id_ like concat('%',#{name},'%'))
+            </if>
+            <if test="isAllowAdjust != null">
+                and spr.is_allow_adjust_ = #{isAllowAdjust}
+            </if>
+            <if test="kitPurchaseMethod != null">
+                and spr.kit_purchase_method_ = #{kitPurchaseMethod}
+            </if>
+            <if test="cloudTeacherMethod != null">
+                and spr.cloud_teacher_method_ = #{cloudTeacherMethod}
+            </if>
+        </where>
+        ORDER BY spr.id_
     </select>
 
     <!-- 向数据库增加一条记录 -->

+ 1 - 1
mec-web/src/main/java/com/ym/mec/web/config/ResourceServerConfig.java

@@ -35,7 +35,7 @@ public class ResourceServerConfig extends ResourceServerConfigurerAdapter {
 				.hasIpAddress("0.0.0.0/0")
 				.antMatchers("/v2/api-docs", "/classGroup/highClassGroups", "/code/*", "/api/*", "/appVersionInfo/queryByPlatform", "/eduDegree/*",
 						"/uploadFile", "/eduContracts/queryProduceContract","/activity/doubleEleven2020Statis","/replacementInstrument/queryPage",
-						"/replacementInstrumentActivity/queryReplacementsStat").permitAll().anyRequest().authenticated().and().httpBasic();
+						"/replacementInstrumentActivity/queryReplacementsStat","/eduStudentRegistration/queryPreApplyList","/eduSubject/findSubSubjects").permitAll().anyRequest().authenticated().and().httpBasic();
 	}
 
 	@Override

+ 21 - 1
mec-web/src/main/java/com/ym/mec/web/controller/StudentRegistrationController.java

@@ -6,6 +6,7 @@ import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.CourseViewTypeEnum;
 import com.ym.mec.biz.dal.page.NoClassMusicStudentQueryInfo;
 import com.ym.mec.biz.service.EmployeeService;
+
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
@@ -15,7 +16,9 @@ import java.io.IOException;
 import java.io.OutputStream;
 import java.util.Arrays;
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
 import javax.servlet.http.HttpServletResponse;
 
@@ -23,6 +26,7 @@ import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.ui.ModelMap;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -45,6 +49,7 @@ import com.ym.mec.biz.service.StudentRegistrationService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.page.PageInfo;
+import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.excel.POIUtil;
 
@@ -74,7 +79,22 @@ public class StudentRegistrationController extends BaseController {
     @GetMapping("/queryPreApplyList")
     @PreAuthorize("@pcs.hasPermissions('studentRegistration/queryPreApplyList')")
     public Object queryPreApplyList(StudentPreRegistrationQueryInfo queryInfo) {
-        return succeed(studentPreRegistrationService.queryListForPage(queryInfo));
+    	ModelMap model = new ModelMap();
+    	PageInfo<StudentPreRegistrationDto> dataList = studentPreRegistrationService.queryListForPage(queryInfo);
+    	model.put("dataList", dataList);
+    	
+    	Map<String, Object> params = new HashMap<String, Object>();
+		MapUtil.populateMap(params, queryInfo);
+    	List<StudentPreRegistration> studentPreRegistrationList = studentPreRegistrationService.findAll(params);
+    	long instrument = studentPreRegistrationList.stream().filter(p -> p.getKitPurchaseMethod().equals("OWNED")).count();
+    	long cloudTeacher = studentPreRegistrationList.stream().filter(p -> p.getCloudTeacherMethod().equals("OWNED")).count();
+    	
+    	model.put("instrument", instrument);
+    	model.put("cloudTeacher", cloudTeacher);
+    	
+    	model.put("musicGroup", musicGroupDao.get(queryInfo.getMusicGroupId()));
+    	
+        return succeed(model);
     }
 
     @ApiOperation(value = "乐团预报名声部列表查询")

+ 83 - 0
mec-web/src/main/java/com/ym/mec/web/controller/education/EduStudentRegistrationController.java

@@ -0,0 +1,83 @@
+package com.ym.mec.web.controller.education;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.biz.dal.dao.MusicGroupDao;
+import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderCourseSettingsDao;
+import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDao;
+import com.ym.mec.biz.dal.dto.StudentPreRegistrationDto;
+import com.ym.mec.biz.dal.entity.StudentPreRegistration;
+import com.ym.mec.biz.dal.page.StudentPreRegistrationQueryInfo;
+import com.ym.mec.biz.service.EmployeeService;
+import com.ym.mec.biz.service.MusicGroupSubjectPlanService;
+import com.ym.mec.biz.service.StudentPreRegistrationService;
+import com.ym.mec.biz.service.StudentRegistrationService;
+import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.common.page.PageInfo;
+import com.ym.mec.util.collection.MapUtil;
+
+@RequestMapping("eduStudentRegistration")
+@Api(tags = "学生报名信息服务")
+@RestController
+public class EduStudentRegistrationController extends BaseController {
+
+    @Autowired
+    private StudentRegistrationService studentRegistrationService;
+    @Autowired
+    private MusicGroupSubjectPlanService musicGroupSubjectPlanService;
+    @Autowired
+    private MusicGroupPaymentCalenderDao musicGroupPaymentCalenderDao;
+    @Autowired
+    private MusicGroupPaymentCalenderCourseSettingsDao musicGroupPaymentCalenderCourseSettingsDao;
+    @Autowired
+    private StudentPreRegistrationService studentPreRegistrationService;
+    @Autowired
+    private MusicGroupDao musicGroupDao;
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
+    @Autowired
+    private EmployeeService employeeService;
+
+    @ApiOperation(value = "乐团预报名列表分页查询")
+    @GetMapping("/queryPreApplyList")
+    public Object queryPreApplyList(StudentPreRegistrationQueryInfo queryInfo) {
+    	ModelMap model = new ModelMap();
+    	PageInfo<StudentPreRegistrationDto> dataList = studentPreRegistrationService.queryListForPage(queryInfo);
+    	model.put("dataList", dataList);
+    	
+    	Map<String, Object> params = new HashMap<String, Object>();
+		MapUtil.populateMap(params, queryInfo);
+    	List<StudentPreRegistration> studentPreRegistrationList = studentPreRegistrationService.findAll(params);
+    	
+    	int instrument = 0;
+    	long cloudTeacher = 0;
+		for (StudentPreRegistration spr : studentPreRegistrationList) {
+			if (spr.getCloudTeacherMethod() != null && spr.getCloudTeacherMethod().equals("OWNED")) {
+				++cloudTeacher;
+			}
+			if (spr.getKitPurchaseMethod() != null && spr.getKitPurchaseMethod().equals("OWNED")) {
+				++instrument;
+			}
+		}
+    	
+    	model.put("instrument", instrument);
+    	model.put("cloudTeacher", cloudTeacher);
+    	model.put("total", studentPreRegistrationList.size());
+    	
+    	model.put("musicGroup", musicGroupDao.get(queryInfo.getMusicGroupId()));
+    	
+        return succeed(model);
+    }
+}

+ 27 - 0
mec-web/src/main/java/com/ym/mec/web/controller/education/EduSubjectController.java

@@ -0,0 +1,27 @@
+package com.ym.mec.web.controller.education;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.ym.mec.biz.service.SubjectService;
+import com.ym.mec.common.controller.BaseController;
+
+@RequestMapping("eduSubject")
+@Api(tags = "教务端科目服务")
+@RestController
+public class EduSubjectController extends BaseController {
+
+    @Autowired
+    private SubjectService subjectService;
+
+    @ApiOperation(value = "获取子集科目列表")
+    @GetMapping("/findSubSubjects")
+    public Object findSubSubjects(Integer tenantId){
+        return succeed(subjectService.findSubSubjects(tenantId));
+    }
+}