zouxuan 5 years ago
parent
commit
4dc65eab27

+ 10 - 0
mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/entity/SysMenu.java

@@ -60,9 +60,19 @@ public class SysMenu {
 	@ApiModelProperty(value = "逻辑删除标记(0--正常 1--删除)",required = false)
 	private String delFlag;
 
+	private Integer hid;
+
 	@ApiModelProperty(value = "子节点列表",required = false)
 	private List<SysMenu> sysMenus;
 
+	public Integer getHid() {
+		return hid;
+	}
+
+	public void setHid(Integer hid) {
+		this.hid = hid;
+	}
+
 	public List<SysMenu> getSysMenus() {
 		return sysMenus;
 	}

+ 7 - 7
mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysMenuMapper.xml

@@ -17,9 +17,11 @@
         <result column="sort_" property="sort"/>
         <result column="keep_alive_" property="keepAlive"/>
         <result column="type_" property="type"/>
+        <result column="type_" property="type"/>
         <result column="create_time_" property="createTime"/>
         <result column="update_time_" property="updateTime"/>
         <result column="del_flag_" property="delFlag"/>
+        <result column="hidden_" property="hid"/>
     </resultMap>
 
     <!-- 根据主键查询一条记录 -->
@@ -35,14 +37,9 @@
     <!-- 向数据库增加一条记录 -->
     <insert id="insert" parameterType="com.ym.mec.auth.api.entity.SysMenu" useGeneratedKeys="true" keyColumn="id"
             keyProperty="id">
-        <!--
-        <selectKey resultClass="int" keyProperty="id" >
-        SELECT SEQ_WSDEFINITION_ID.nextval AS ID FROM DUAL
-        </selectKey>
-        -->
         INSERT INTO sys_menu
-        (id_,name_,permission_,path_,parent_id_,icon_,component_,sort_,type_,create_time_,update_time_)
-        VALUES(#{id},#{name},#{permission},#{path},#{parentId},#{icon},#{component},#{sort},#{type},now(),now())
+        (id_,name_,permission_,path_,parent_id_,icon_,component_,sort_,type_,create_time_,update_time_,hidden_)
+        VALUES(#{id},#{name},#{permission},#{path},#{parentId},#{icon},#{component},#{sort},#{type},now(),now(),#{hid})
     </insert>
 
     <!-- 根据主键查询一条记录 -->
@@ -82,6 +79,9 @@
             <if test="type != null">
                 type_ = #{type},
             </if>
+            <if test="hid != null">
+                hidden_ = #{hid},
+            </if>
         </set>
         WHERE id_ = #{id}
     </update>

+ 9 - 2
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupDao.java

@@ -62,10 +62,10 @@ public interface MusicGroupDao extends BaseDAO<String, MusicGroup> {
 
     /**
      * 获取乐团总人数
-     * @param musicGroupId
+     * @param musicGroupIds
      * @return
      */
-    Integer countMusicGroupUserNum(String musicGroupId);
+    List<Map<String,Integer>> countMusicGroupUserNum(Set<String> musicGroupIds);
 
     /**
      * 获取乐团所有学员基本信息
@@ -95,4 +95,11 @@ public interface MusicGroupDao extends BaseDAO<String, MusicGroup> {
      * @return
      */
     List<Map<String, Long>> countPayNum(@Param("musicGroupIds") Set<String> musicGroupIds);
+
+    /**
+     * 获取乐团列表
+     * @param musicGroupIds
+     * @return
+     */
+    List<MusicGroup> queryListByIds(@Param("musicGroupIds") Set<String> musicGroupIds);
 }

+ 6 - 6
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/GoodsCategory.java

@@ -33,8 +33,8 @@ public class GoodsCategory {
 	private Integer orderNo;
 	
 	/** 状态(1,表示可见  0,表示不可见) */
-	@ApiModelProperty(value = "状态(1,表示可见  0,表示不可见)",required = false)
-	private YesOrNoEnum status;
+	@ApiModelProperty(value = "状态",required = false)
+	private YesOrNoEnum delFlag;
 	
 	/** 描述 */
 	@ApiModelProperty(value = "描述",required = false)
@@ -97,12 +97,12 @@ public class GoodsCategory {
 		return this.orderNo;
 	}
 
-	public YesOrNoEnum getStatus() {
-		return status;
+	public YesOrNoEnum getDelFlag() {
+		return delFlag;
 	}
 
-	public void setStatus(YesOrNoEnum status) {
-		this.status = status;
+	public void setDelFlag(YesOrNoEnum delFlag) {
+		this.delFlag = delFlag;
 	}
 
 	public void setDesc(String desc){

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/MusicGroupStudentFee.java

@@ -46,6 +46,17 @@ public class MusicGroupStudentFee {
 	/**  */
 	private java.util.Date updateTime;
 
+	@ApiModelProperty(value = "缴费状态(0待缴费、1已缴费、2缴费中)", required = false)
+	private Integer paymentStatus;
+
+	public Integer getPaymentStatus() {
+		return paymentStatus;
+	}
+
+	public void setPaymentStatus(Integer paymentStatus) {
+		this.paymentStatus = paymentStatus;
+	}
+
 	public Date getNextPaymentDate() {
 		return nextPaymentDate;
 	}

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/page/GoodsCategoryQueryInfo.java

@@ -10,7 +10,7 @@ public class GoodsCategoryQueryInfo extends QueryInfo {
     @ApiModelProperty(value = "上级分类")
     private Integer parentId = 0;
 
-    @ApiModelProperty(value = "状态(1,可见  0,不可见)")
+    @ApiModelProperty(value = "状态")
     private YesOrNoEnum status = YesOrNoEnum.YES;
 
     public Integer getParentId() {

+ 15 - 6
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -28,6 +28,7 @@ import java.time.Instant;
 import java.time.LocalDateTime;
 import java.time.ZoneId;
 import java.util.*;
+import java.util.stream.Collectors;
 
 @Service
 public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup> implements ClassGroupService {
@@ -361,10 +362,10 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
                 } else {
                     //获取学员乐团课的续费状态
                     MusicGroupStudentFee musicGroupStudentFee = musicGroupStudentFeeDao.findByUser(userId, e.getMusicGroupId());
-                    if (musicGroupStudentFee != null) {
-                        int i = DateUtil.daysBetween(new Date(), musicGroupStudentFee.getNextPaymentDate());
-                        e.setRenewStatus(i < 8 ? 0 : 1);
-                    }
+//                    if (musicGroupStudentFee != null) {
+//                        int i = DateUtil.daysBetween(new Date(), musicGroupStudentFee.getNextPaymentDate());
+                        e.setRenewStatus(musicGroupStudentFee.getPaymentStatus());
+//                    }
                 }
             });
         }
@@ -379,11 +380,19 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
     @Override
     public List<ImGroupModel> queryUserGroups(Integer userId, String search) {
         List<ImGroupModel> imGroupModels = musicGroupDao.queryUserGroups(userId, search);
+        Set<String> musicGroupIds = imGroupModels.stream().map(e -> e.getId()).collect(Collectors.toSet());
+
         List<ImGroupModel> imGroupModels1 = classGroupDao.queryUserGroups(userId, search);
+
         if(imGroupModels != null && imGroupModels.size() > 0){
+            List<MusicGroup> musicGroups = musicGroupDao.queryListByIds(musicGroupIds);
+
+            List<Map<String, Integer>> musicGroupUserNums = musicGroupDao.countMusicGroupUserNum(musicGroupIds);
+            Map<String, Integer> musicGroupUserNumMap = MapUtil.convertMybatisMap(musicGroupUserNums);
             imGroupModels.forEach(e -> {
+                MusicGroup musicGroup = musicGroups.stream().filter(mg -> mg.getId().equals(e.getId())).findFirst().get();
                 //获取创建乐团的老师
-                MusicGroup musicGroup = musicGroupDao.get(e.getId());
+//                MusicGroup musicGroup = musicGroupDao.get(e.getId());
                 //获取教学老师id列表
                 Set<Integer> teachers = musicGroupDao.queryTeacherIds(e.getId());
                 teachers.add(musicGroup.getTeamTeacherId());
@@ -392,7 +401,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
                 teachers.add(musicGroup.getDirectorUserId());
                 teachers.removeAll(Collections.singleton(null));
                 //获取乐团群用户总数
-                e.setCount(musicGroupDao.countMusicGroupUserNum(e.getId()) + teachers.size());
+                e.setCount(musicGroupUserNumMap.get(e.getId()) + teachers.size());
                 e.setId("mg" + e.getId());
             });
         }else {

+ 11 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TeacherServiceImpl.java

@@ -104,10 +104,18 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 		List<ImGroupModel> imGroupModels =  musicGroupDao.queryTeacherGroups(userId,search);
 		//获取教师所在班级列表
 		List<ImGroupModel> imGroupModels1 =  classGroupDao.queryTeacherGroups(userId,search);
+
+
+//		musicGroupDao.countMusicGroupUserNum();
 		if(imGroupModels != null && imGroupModels.size() > 0){
+			Set<String> musicGroupIds = imGroupModels.stream().map(e -> e.getId()).collect(Collectors.toSet());
+			List<MusicGroup> musicGroups = musicGroupDao.queryListByIds(musicGroupIds);
+			List<Map<String, Integer>> musicGroupUserNums = musicGroupDao.countMusicGroupUserNum(musicGroupIds);
+			Map<String, Integer> musicGroupUserNumMap = MapUtil.convertMybatisMap(musicGroupUserNums);
 			imGroupModels.forEach(e -> {
+				MusicGroup musicGroup = musicGroups.stream().filter(mg -> mg.getId().equals(e.getId())).findFirst().get();
 				//获取创建乐团的老师
-				MusicGroup musicGroup = musicGroupDao.get(e.getId());
+//				MusicGroup musicGroup = musicGroupDao.get(e.getId());
 				//获取教学老师id列表
 				Set<Integer> teachers = musicGroupDao.queryTeacherIds(e.getId());
 				teachers.add(musicGroup.getTeamTeacherId());
@@ -116,7 +124,8 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 				teachers.add(musicGroup.getDirectorUserId());
 				teachers.removeAll(Collections.singleton(null));
 				//获取乐团群用户总数
-				Integer count = musicGroupDao.countMusicGroupUserNum(e.getId());
+				Integer count = musicGroupUserNumMap.get(e.getId());
+//				Integer count = musicGroupDao.countMusicGroupUserNum(e.getId());
 				int num = count == null?0:count;
 				e.setCount(teachers.size() + num);
 				e.setId("mg" + e.getId());

+ 19 - 6
mec-biz/src/main/resources/config/mybatis/GoodsCategoryMapper.xml

@@ -12,7 +12,7 @@
         <result column="img_" property="img"/>
         <result column="parent_id_" property="parentId"/>
         <result column="order_no_" property="orderNo"/>
-        <result column="status_" property="status" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="del_flag_" property="delFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="desc_" property="desc"/>
         <result column="update_time_" property="updateTime"/>
         <result column="create_time_" property="createTime"/>
@@ -42,8 +42,8 @@
             <if test="parentId != null">
                 parent_id_ = #{parentId},
             </if>
-            <if test="status != null">
-                status_ = #{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
+            <if test="delFlag != null">
+                del_flag_ = #{delFlag,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
             </if>
             <if test="orderNo != null">
                 order_no_ = #{orderNo},
@@ -71,16 +71,29 @@
 
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="GoodsCategory" parameterType="map">
-        SELECT * FROM goods_category ORDER BY id_
+        SELECT gc.* FROM goods_category gc
+        <include refid="queryPageSql"/>
+        ORDER BY id_
         <include refid="global.limit"/>
     </select>
+    <sql id="queryPageSql">
+        <where>
+            <if test="parentId != null">
+                gc.parent_id_ = #{parentId}
+            </if>
+            <if test="delFlag != null">
+                AND gc.del_flag_ = #{delFlag,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+            </if>
+        </where>
+    </sql>
 
     <!-- 查询当前表的总记录数 -->
     <select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM goods_category
+		SELECT COUNT(*) FROM goods_category gc
+        <include refid="queryPageSql"/>
 	</select>
 
     <select id="findByParentId" resultMap="GoodsCategory">
-        SELECT * FROM goods_category WHERE parent_id_ = #{parentId} AND status_ = #{delFlag}
+        SELECT * FROM goods_category WHERE parent_id_ = #{parentId} AND del_flag_ = #{delFlag,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
     </select>
 </mapper>

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

@@ -223,8 +223,13 @@
 		</where>
 	</select>
 
-    <select id="countMusicGroupUserNum" resultType="java.lang.Integer">
-		SELECT SUM(student_num_) FROM class_group WHERE music_group_id_ = #{musicGroupId}
+    <select id="countMusicGroupUserNum" resultType="map">
+		SELECT SUM(student_num_) 'value',music_group_id_ 'key' FROM class_group
+		WHERE music_group_id_ IN
+		<foreach item="item" index="index" collection="musicGroupIds" open="(" separator="," close=")">
+			#{item}
+		</foreach>
+		GROUP BY music_group_id_
     </select>
 
 	<resultMap id="ImUserModel" type="com.ym.mec.common.entity.ImUserModel">
@@ -260,4 +265,11 @@
 		</foreach>
 		AND cgsm.status_ != 'QUIT' GROUP BY cg.music_group_id_
 	</select>
+
+    <select id="queryListByIds" resultMap="MusicGroup">
+		SELECT * FROM music_group WHERE id_ IN
+		<foreach item="item" index="index" collection="musicGroupIds" open="(" separator="," close=")">
+			#{item}
+		</foreach>
+	</select>
 </mapper>

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

@@ -17,6 +17,7 @@
         <result column="continuous_absenteeism_times_" property="continuousAbsenteeismTimes"/>
         <result column="create_time_" property="createTime"/>
         <result column="update_time_" property="updateTime"/>
+        <result column="payment_status_" property="paymentStatus"/>
     </resultMap>
 
     <!-- 根据主键查询一条记录 -->
@@ -64,6 +65,9 @@
             <if test="continuousAbsenteeismTimes != null">
                 continuous_absenteeism_times_ = #{continuousAbsenteeismTimes},
             </if>
+            <if test="paymentStatus != null">
+                payment_status_ = #{paymentStatus},
+            </if>
         </set>
         WHERE id_ = #{id}
     </update>

+ 12 - 0
mec-web/src/main/java/com/ym/mec/web/controller/GoodsCategoryController.java

@@ -40,6 +40,18 @@ public class GoodsCategoryController extends BaseController {
         return succeed();
     }
 
+    @ApiOperation(value = "新增")
+    @PostMapping("/add")
+    public Object add(GoodsCategory goodsCategory){
+        return succeed(goodsCategoryService.insert(goodsCategory));
+    }
+
+    @ApiOperation(value = "修改")
+    @PostMapping("/update")
+    public Object update(GoodsCategory goodsCategory){
+        return succeed(goodsCategoryService.update(goodsCategory));
+    }
+
     @ApiOperation(value = "分页查询商品分类树状列表")
     @GetMapping("/queryPage")
     public Object queryPage(GoodsCategoryQueryInfo queryInfo) {