فهرست منبع

Merge remote-tracking branch 'origin/master'

Joburgess 5 سال پیش
والد
کامیت
146c931433

+ 2 - 2
cms/src/main/resources/config/mybatis/SysNewsInformationMapper.xml

@@ -51,8 +51,8 @@
 	
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.ym.mec.cms.dal.entity.SysNewsInformation" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
-		INSERT INTO sys_news_information (id_,title_,content_,cover_image_,type_,status_,create_time_,update_time_,link_url_,href_target_,order_,del_flag_,href_target_,order_)
-		VALUES(#{id},#{title},#{content},#{coverImage},#{type},#{status, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now(),now(),#{linkUrl},#{hrefTarget},#{order},0,#{hrefTarget},#{order})
+		INSERT INTO sys_news_information (id_,title_,content_,cover_image_,type_,status_,create_time_,update_time_,link_url_,href_target_,order_,del_flag_,href_target_)
+		VALUES(#{id},#{title},#{content},#{coverImage},#{type},#{status, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now(),now(),#{linkUrl},#{hrefTarget},#{order},0,#{hrefTarget})
 	</insert>
 	
 	<!-- 根据主键查询一条记录 -->

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/CourseScheduleRewardsRulesDao.java

@@ -17,4 +17,10 @@ public interface CourseScheduleRewardsRulesDao extends BaseDAO<Integer, CourseSc
 	 * @return
 	 */
 	List<CourseScheduleRewardsRules> query(@Param("organId") Integer organId, @Param("courseScheduleType") CourseScheduleType courseScheduleType);
+
+	/**
+	 * 查询已设置的分部列表
+	 * @return
+	 */
+	List<String> queryOrganIdList();
 }

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/CourseScheduleRewardsRulesService.java

@@ -1,6 +1,7 @@
 package com.ym.mec.biz.service;
 
 import java.math.BigDecimal;
+import java.util.List;
 
 import com.ym.mec.biz.dal.entity.CourseSchedule.CourseScheduleType;
 import com.ym.mec.biz.dal.entity.CourseScheduleRewardsRules;
@@ -16,4 +17,10 @@ public interface CourseScheduleRewardsRulesService extends BaseService<Integer,
 	 * @return
 	 */
 	BigDecimal queryRewardsAmount(Integer organId, CourseScheduleType courseScheduleType, int coursesNum);
+
+	/**
+	 * 查询已设置的分部列表
+	 * @return
+	 */
+	List<Integer> queryOrganIdList();
 }

+ 21 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleRewardsRulesServiceImpl.java

@@ -29,7 +29,7 @@ public class CourseScheduleRewardsRulesServiceImpl extends BaseServiceImpl<Integ
 
 	@Autowired
 	private CourseScheduleRewardsRulesDao courseScheduleRewardsDao;
-	
+
 	@Autowired
 	private OrganizationDao organizationDao;
 
@@ -43,14 +43,14 @@ public class CourseScheduleRewardsRulesServiceImpl extends BaseServiceImpl<Integ
 		PageInfo<CourseScheduleRewardsRules> pageInfo = new PageInfo<CourseScheduleRewardsRules>(queryInfo.getPage(), queryInfo.getRows());
 		Map<String, Object> params = new HashMap<String, Object>();
 		MapUtil.populateMap(params, queryInfo);
-		
+
 		List<CourseScheduleRewardsRules> dataList = null;
 		int count = this.findCount(params);
 		if (count > 0) {
 			pageInfo.setTotal(count);
 			params.put("offset", pageInfo.getOffset());
 			dataList = this.getDAO().queryPage(params);
-			for(CourseScheduleRewardsRules rules : dataList){
+			for (CourseScheduleRewardsRules rules : dataList) {
 				rules.setOrganNameList(organizationDao.findByOrganIds(rules.getOrganIdList()).stream().collect(Collectors.joining("、")));
 			}
 		}
@@ -106,6 +106,24 @@ public class CourseScheduleRewardsRulesServiceImpl extends BaseServiceImpl<Integ
 		return rewardsRules.getAmount().multiply(new BigDecimal(coursesNum));
 	}
 
+	@Override
+	public List<Integer> queryOrganIdList() {
+		List<String> list = courseScheduleRewardsDao.queryOrganIdList();
+
+		List<Integer> result = new ArrayList<Integer>();
+
+		for (String organIdStr : list) {
+			String[] organIds = organIdStr.split(",");
+			for (String s : organIds) {
+				if (!result.contains(Integer.parseInt(s))) {
+					result.add(Integer.parseInt(s));
+				}
+			}
+		}
+
+		return result;
+	}
+
 	class RewardsRules implements Comparable<RewardsRules> {
 
 		private int min;

+ 0 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentManageServiceImpl.java

@@ -1,6 +1,5 @@
 package com.ym.mec.biz.service.impl;
 
-import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.ClassGroupDao;
 import com.ym.mec.biz.dal.dao.StudentManageDao;
@@ -35,8 +34,6 @@ public class StudentManageServiceImpl implements StudentManageService {
     @Autowired
     private StudentPaymentOrderDao studentPaymentOrderDao;
     @Autowired
-    private SysUserFeignService sysUserFeignService;
-    @Autowired
     private VipGroupDao vipGroupDao;
 
     @Override

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupDefaultClassesCycleServiceImpl.java

@@ -69,6 +69,9 @@ public class VipGroupDefaultClassesCycleServiceImpl extends BaseServiceImpl<Inte
 		super.delete(id);
 		List<VipGroupDefaultClassesCycle> allRecord = vipGroupDefaultClassesCycleDao.findAllByOrgan(bean.getOrganId());
 		allRecord=createMinClassTimess(allRecord);
+		if (allRecord == null || allRecord.size() == 0) {
+			return 1;
+		}
 		vipGroupDefaultClassesCycleDao.deleteAllByOrgan(bean.getOrganId());
 		return vipGroupDefaultClassesCycleDao.batchInstert(allRecord);
 	}

+ 4 - 0
mec-biz/src/main/resources/config/mybatis/CourseScheduleRewardsMapper.xml

@@ -91,4 +91,8 @@
 	<select id="query" resultType="map">
 		SELECT * FROM course_schedule_rewards_rules where find_in_set(#{organId},organ_id_list_) and course_schedule_type_ = #{courseScheduleType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler} order by update_time_ desc
 	</select>
+	
+	<select id="queryOrganIdList" resultType="java.lang.String">
+		SELECT organ_id_list_ FROM course_schedule_rewards_rules
+	</select>
 </mapper>

+ 10 - 7
mec-biz/src/main/resources/config/mybatis/StudentManageDao.xml

@@ -115,15 +115,18 @@
     </update>
 
     <select id="findStudentsByOrganId" resultMap="studentManageListDto">
-        SELECT sr.user_id_,su.username_ real_name_,su.gender_,sr.parents_name_,sr.parents_phone_
-        FROM (SELECT * FROM student_registration WHERE id_ IN(SELECT MAX(id_) FROM student_registration GROUP BY user_id_)) sr
-        LEFT JOIN sys_user su ON sr.user_id_ = su.id_
+        SELECT su.id_ user_id_,su.username_ real_name_,su.gender_,
+        MAX(sr.parents_name_) parents_name_,MAX(sr.parents_phone_) parents_phone_
+        FROM sys_user su
+        LEFT JOIN student_registration sr ON su.id_ = sr.user_id_
         <include refid="findStudentsByOrganIdSql"/>
-        ORDER BY sr.create_time_ DESC
+        GROUP BY su.id_
+        ORDER BY su.create_time_ DESC
         <include refid="global.limit"/>
     </select>
     <sql id="findStudentsByOrganIdSql">
         <where>
+                su.user_type_ = "STUDENT"
             <if test="organId != null">
                 AND FIND_IN_SET(su.organ_id_,#{organId})
             </if>
@@ -137,9 +140,9 @@
     </sql>
 
     <select id="countStudentByOrganId" resultType="java.lang.Integer">
-        SELECT COUNT(DISTINCT sr.user_id_)
-        FROM student_registration sr
-        LEFT JOIN sys_user su ON sr.user_id_ = su.id_
+        SELECT COUNT(DISTINCT su.id_)
+        FROM sys_user su
+        LEFT JOIN student_registration sr ON su.id_ = sr.user_id_
         <include refid="findStudentsByOrganIdSql"/>
     </select>
     <select id="findStudentBaseInfoByUserID" resultMap="studentManageListDto">

+ 21 - 5
mec-web/src/main/java/com/ym/mec/web/controller/CourseScheduleRewardsRulesController.java

@@ -3,6 +3,8 @@ package com.ym.mec.web.controller;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 
+import java.util.List;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -25,35 +27,49 @@ public class CourseScheduleRewardsRulesController extends BaseController {
 
 	@ApiOperation(value = "查询规则列表")
 	@GetMapping("/queryPage")
-    @PreAuthorize("@pcs.hasPermissions('courseScheduleRewards/queryPage')")
+	@PreAuthorize("@pcs.hasPermissions('courseScheduleRewards/queryPage')")
 	public Object queryPage(QueryInfo queryInfo) {
 		return succeed(courseScheduleRewardsRulesService.queryPage(queryInfo));
 	}
 
 	@ApiOperation(value = "单查询")
 	@GetMapping("/query")
-    @PreAuthorize("@pcs.hasPermissions('courseScheduleRewards/query')")
+	@PreAuthorize("@pcs.hasPermissions('courseScheduleRewards/query')")
 	public Object query(Integer id) {
 		return succeed(courseScheduleRewardsRulesService.get(id));
 	}
 
+	@ApiOperation(value = "查询已设置的分部列表")
+	@GetMapping("/queryOrganIdList")
+	@PreAuthorize("@pcs.hasPermissions('courseScheduleRewards/queryOrganIdList')")
+	public Object queryOrganIdList() {
+		return succeed(courseScheduleRewardsRulesService.queryOrganIdList());
+	}
+
 	@ApiOperation(value = "新增")
 	@PostMapping("/add")
-    @PreAuthorize("@pcs.hasPermissions('courseScheduleRewards/add')")
+	@PreAuthorize("@pcs.hasPermissions('courseScheduleRewards/add')")
 	public Object add(CourseScheduleRewardsRules courseScheduleRewardsRules) {
+		List<Integer> organIdList = courseScheduleRewardsRulesService.queryOrganIdList();
+		String[] organIdArrays = courseScheduleRewardsRules.getOrganIdList().split(",");
+		for (String organId : organIdArrays) {
+			if (organIdList.contains(Integer.parseInt(organId))) {
+				return failed("所设分部存在异常");
+			}
+		}
 		return succeed(courseScheduleRewardsRulesService.insert(courseScheduleRewardsRules));
 	}
 
 	@ApiOperation(value = "修改")
 	@PostMapping("/update")
-    @PreAuthorize("@pcs.hasPermissions('courseScheduleRewards/update')")
+	@PreAuthorize("@pcs.hasPermissions('courseScheduleRewards/update')")
 	public Object update(CourseScheduleRewardsRules courseScheduleRewardsRules) {
 		return succeed(courseScheduleRewardsRulesService.update(courseScheduleRewardsRules));
 	}
 
 	@ApiOperation(value = "删除")
 	@PostMapping("/delete")
-    @PreAuthorize("@pcs.hasPermissions('courseScheduleRewards/delete')")
+	@PreAuthorize("@pcs.hasPermissions('courseScheduleRewards/delete')")
 	public Object delete(Integer id) {
 		return succeed(courseScheduleRewardsRulesService.delete(id));
 	}