Ver Fonte

Merge branch 'master' of https://gitee.com/zouxuan/mec

yonge há 5 anos atrás
pai
commit
c0e0d3c213
34 ficheiros alterados com 635 adições e 24 exclusões
  1. 7 0
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/dal/dao/SysMenuDao.java
  2. 9 0
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/dal/dao/SysRoleDao.java
  3. 7 0
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/SysMenuService.java
  4. 7 0
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/SysRoleService.java
  5. 5 0
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysMenuServiceImpl.java
  6. 6 0
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysRoleServiceImpl.java
  7. 8 0
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/web/controller/MenuController.java
  8. 8 0
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/web/controller/RoleController.java
  9. 5 0
      mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysMenuMapper.xml
  10. 4 0
      mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysRoleMapper.xml
  11. 7 0
      mec-web/src/main/java/com/ym/mec/web/controller/CourseGroupDetailController.java
  12. 58 0
      mec-web/src/main/java/com/ym/mec/web/controller/GoodsCategoryController.java
  13. 59 0
      mec-web/src/main/java/com/ym/mec/web/controller/StudentAttendanceController.java
  14. 65 0
      mec-web/src/main/java/com/ym/mec/web/controller/StudentRegistrationController.java
  15. 7 0
      mec-web/src/main/java/com/ym/mec/web/dal/dao/GoodsDao.java
  16. 18 1
      mec-web/src/main/java/com/ym/mec/web/dal/dao/StudentRegistrationDao.java
  17. 3 3
      mec-web/src/main/java/com/ym/mec/web/dal/entity/GoodsCategory.java
  18. 13 1
      mec-web/src/main/java/com/ym/mec/web/dal/entity/StudentRegistration.java
  19. 4 3
      mec-web/src/main/java/com/ym/mec/web/dal/enums/ClassGroupTypeEnum.java
  20. 4 7
      mec-web/src/main/java/com/ym/mec/web/dal/enums/CourseStatusEnum.java
  21. 2 1
      mec-web/src/main/java/com/ym/mec/web/dal/enums/JobNatureEnum.java
  22. 3 2
      mec-web/src/main/java/com/ym/mec/web/dal/enums/KitGroupPurchaseTypeEnum.java
  23. 2 2
      mec-web/src/main/java/com/ym/mec/web/dal/enums/StudentAttendanceStatusEnum.java
  24. 41 0
      mec-web/src/main/java/com/ym/mec/web/dal/enums/UserGenderEnum.java
  25. 41 0
      mec-web/src/main/java/com/ym/mec/web/dal/page/StudentRegistrationQueryInfo.java
  26. 99 0
      mec-web/src/main/java/com/ym/mec/web/dal/utilEntity/StudentApplyDetailUtilEntity.java
  27. 6 0
      mec-web/src/main/java/com/ym/mec/web/service/CourseGroupDetailService.java
  28. 9 0
      mec-web/src/main/java/com/ym/mec/web/service/GoodsService.java
  29. 17 0
      mec-web/src/main/java/com/ym/mec/web/service/StudentRegistrationService.java
  30. 5 1
      mec-web/src/main/java/com/ym/mec/web/service/impl/CourseGroupDetailServiceImpl.java
  31. 4 0
      mec-web/src/main/java/com/ym/mec/web/service/impl/GoodsServiceImpl.java
  32. 43 1
      mec-web/src/main/java/com/ym/mec/web/service/impl/StudentRegistrationServiceImpl.java
  33. 5 0
      mec-web/src/main/resources/config/mybatis/GoodsMapper.xml
  34. 54 2
      mec-web/src/main/resources/config/mybatis/StudentRegistrationMapper.xml

+ 7 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/dal/dao/SysMenuDao.java

@@ -2,6 +2,7 @@ package com.ym.mec.auth.dal.dao;
 
 import com.ym.mec.auth.api.entity.SysMenu;
 import com.ym.mec.common.dal.BaseDAO;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -21,4 +22,10 @@ public interface SysMenuDao extends BaseDAO<Integer, SysMenu> {
      * @return
      */
     List<SysMenu> findByUser(Integer userId);
+
+    /**
+     * 根据权限标识查菜单
+     * @return
+     */
+    SysMenu findMenuByPermission(@Param("permission") String permission);
 }

+ 9 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/dal/dao/SysRoleDao.java

@@ -2,6 +2,8 @@ package com.ym.mec.auth.dal.dao;
 
 import com.ym.mec.auth.api.entity.SysRole;
 import com.ym.mec.common.dal.BaseDAO;
+import org.apache.ibatis.annotations.Param;
+
 import java.util.List;
 
 public interface SysRoleDao extends BaseDAO<Integer, SysRole> {
@@ -12,4 +14,11 @@ public interface SysRoleDao extends BaseDAO<Integer, SysRole> {
      * @return
      */
     List<SysRole> findRoleByUserId(Integer userId);
+
+    /**
+     * 根据role_code 查询角色
+     * @param code
+     * @return
+     */
+    SysRole findRoleByCode(@Param("code") String code);
 }

+ 7 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/SysMenuService.java

@@ -20,4 +20,11 @@ public interface SysMenuService extends BaseService<Integer, SysMenu> {
      * @return
      */
     List<SysMenu> findByUser(Integer id);
+
+    /**
+     * 根据权限标识查菜单
+     * @param permission
+     * @return
+     */
+    SysMenu findMenuByPermission(String permission);
 }

+ 7 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/SysRoleService.java

@@ -13,4 +13,11 @@ public interface SysRoleService extends BaseService<Integer, SysRole> {
      * @return
      */
     List<SysRole> findRoleByUserId(Integer userId);
+
+    /**
+     * 根据角色标识查询角色
+     * @param code
+     * @return
+     */
+    SysRole findRoleByCode(String code);
 }

+ 5 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysMenuServiceImpl.java

@@ -31,4 +31,9 @@ public class SysMenuServiceImpl extends BaseServiceImpl<Integer, SysMenu>  imple
 	public List<SysMenu> findByUser(Integer id) {
 		return sysMenuDao.findByUser(id);
 	}
+
+	@Override
+	public SysMenu findMenuByPermission(String permission){
+		return sysMenuDao.findMenuByPermission(permission);
+	}
 }

+ 6 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysRoleServiceImpl.java

@@ -27,4 +27,10 @@ public class SysRoleServiceImpl extends BaseServiceImpl<Integer, SysRole>  imple
 	public List<SysRole> findRoleByUserId(Integer userId) {
 		return sysRoleDao.findRoleByUserId(userId);
 	}
+
+	@Override
+	public SysRole findRoleByCode(String code){
+		return sysRoleDao.findRoleByCode(code);
+	}
+
 }

+ 8 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/web/controller/MenuController.java

@@ -22,6 +22,10 @@ public class MenuController extends BaseController {
     @ApiOperation("新增菜单")
     @PutMapping("/add")
     public Object getMenu(SysMenu sysMenu) {
+        SysMenu menuByPermission = sysMenuService.findMenuByPermission(sysMenu.getPermission());
+        if(menuByPermission != null){
+            return failed("权限标识不能重复");
+        }
         Date date = new Date();
         sysMenu.setUpdateTime(date);
         sysMenu.setCreateTime(date);
@@ -37,6 +41,10 @@ public class MenuController extends BaseController {
     @ApiOperation("根据菜单id修改菜单")
     @PutMapping("/update")
     public Object updateMenu(SysMenu sysMenu) {
+        SysMenu menuByPermission = sysMenuService.findMenuByPermission(sysMenu.getPermission());
+        if(menuByPermission != null && !menuByPermission.getId().equals(sysMenu.getId())){
+            return failed("权限标识不能重复");
+        }
         Date date = new Date();
         sysMenu.setUpdateTime(date);
         return succeed(sysMenuService.update(sysMenu));

+ 8 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/web/controller/RoleController.java

@@ -39,6 +39,10 @@ public class RoleController extends BaseController {
     @ApiOperation("修改角色")
     @PutMapping("/update")
     public Object updateRole(SysRole sysRole) {
+        SysRole roleByCode = sysRoleService.findRoleByCode(sysRole.getRoleCode());
+        if(roleByCode != null && !roleByCode.getId().equals(sysRole.getId())){
+            return failed("权限标识已存在");
+        }
         sysRole.setUpdateTime(new Date());
         sysRoleService.update(sysRole);
         return succeed();
@@ -47,6 +51,10 @@ public class RoleController extends BaseController {
     @ApiOperation("新增角色")
     @PostMapping("/add")
     public Object addRole(SysRole sysRole) {
+        SysRole roleByCode = sysRoleService.findRoleByCode(sysRole.getRoleCode());
+        if(roleByCode != null){
+            return failed("权限标识已存在");
+        }
         Date date = new Date();
         sysRole.setUpdateTime(date);
         sysRole.setCreateTime(date);

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

@@ -113,4 +113,9 @@
 		LEFT JOIN sys_menu sm ON srm.menu_id_ = sm.id_
 		WHERE sur.user_id_ = #{userId} AND sr.del_flag_ = 0 AND sm.del_flag_ = 0
 	</select>
+
+    <!-- 根据权限标识查菜单 -->
+    <select id="findMenuByPermission" resultType="com.ym.mec.auth.api.entity.SysMenu">
+        SELECT * FROM `sys_role_menu` WHERE `permission_` = #{permission} AND sm.del_flag_ = 0
+    </select>
 </mapper>

+ 4 - 0
mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysRoleMapper.xml

@@ -80,4 +80,8 @@
     <select id="findRoleByUserId" resultMap="SysRole">
 		SELECT sr.* FROM sys_user_role sur LEFT JOIN sys_role sr ON sur.role_id_ = sr.id_ WHERE sur.user_id_ = #{userId} AND sr.del_flag_ = 0
 	</select>
+
+    <select id="findRoleByCode" resultMap="SysRole">
+        SELECT sr.* FROM sys_role WHERE role_code_ = #{code} AND sr.del_flag_ = 0
+    </select>
 </mapper>

+ 7 - 0
mec-web/src/main/java/com/ym/mec/web/controller/CourseGroupDetailController.java

@@ -30,6 +30,13 @@ public class CourseGroupDetailController extends BaseController {
         return succeed();
     }
 
+    @ApiOperation(value = "批量新增课程组详情")
+    @PostMapping("/batchAdd")
+    public Object batchAdd(Integer courseGroupId,CourseGroupDetail courseGroupDetail){
+        courseGroupDetailService.batchInsert(courseGroupId,courseGroupDetail);
+        return succeed();
+    }
+
     @ApiOperation(value = "删除课程组详情")
     @DeleteMapping("/del/{id}")
     public Object del(@ApiParam(value = "课程组详情编号", required = true) @PathVariable("id") Integer id){

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

@@ -0,0 +1,58 @@
+package com.ym.mec.web.controller;
+
+import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.web.dal.entity.GoodsCategory;
+import com.ym.mec.web.service.GoodsCategoryService;
+import com.ym.mec.web.service.GoodsService;
+import io.swagger.annotations.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+
+@RequestMapping("category")
+@Api(tags = "商品分类服务")
+@RestController
+public class GoodsCategoryController extends BaseController {
+
+    @Autowired
+    private GoodsCategoryService GoodsCategoryCategoryService;
+
+    @Autowired
+    private GoodsService goodsService;
+
+    @ApiOperation(value = "新增商品分类")
+    @PostMapping("/add")
+    public Object add(GoodsCategory goodsCategory) {
+        Date date = new Date();
+        goodsCategory.setCreateTime(date);
+        goodsCategory.setUpdateTime(date);
+        GoodsCategoryCategoryService.insert(goodsCategory);
+        return succeed();
+    }
+
+    @ApiOperation(value = "删除商品分类")
+    @DeleteMapping("/del/{id}")
+    public Object del(@ApiParam(value = "商品分类编号", required = true) @PathVariable("id") Integer id) {
+        int num = goodsService.findGoodsNumByCategoryId(id);
+        if (num > 0) {
+            return failed("商品分类下有商品,不能删除");
+        }
+        GoodsCategoryCategoryService.delete(id);
+        return succeed();
+    }
+
+    @ApiOperation(value = "修改商品分类")
+    @PutMapping("/update")
+    public Object update(GoodsCategory goodsCategory) {
+        goodsCategory.setUpdateTime(new Date());
+        GoodsCategoryCategoryService.update(goodsCategory);
+        return succeed();
+    }
+
+    @ApiOperation(value = "根据商品分类编号查询商品分类")
+    @GetMapping("/get/{id}")
+    public Object get(@ApiParam(value = "商品分类编号", required = true) @PathVariable("id") Integer id) {
+        return succeed(GoodsCategoryCategoryService.get(id));
+    }
+}

+ 59 - 0
mec-web/src/main/java/com/ym/mec/web/controller/StudentAttendanceController.java

@@ -0,0 +1,59 @@
+package com.ym.mec.web.controller;
+
+import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.common.page.QueryInfo;
+import com.ym.mec.web.dal.entity.CourseGroup;
+import com.ym.mec.web.service.CourseGroupService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+
+@RequestMapping("studentAttendance")
+@Api(tags = "学生考勤服务")
+@RestController
+public class StudentAttendanceController extends BaseController {
+
+    @Autowired
+    private CourseGroupService courseGroupService;
+
+    @ApiOperation(value = "新增课程组")
+    @PostMapping("/add")
+    public Object add(CourseGroup courseGroup){
+        Date date = new Date();
+        courseGroup.setCreateTime(date);
+        courseGroup.setUpdateTime(date);
+        courseGroupService.insert(courseGroup);
+        return succeed();
+    }
+
+    @ApiOperation(value = "删除课程组")
+    @DeleteMapping("/del/{id}")
+    public Object del(@ApiParam(value = "课程组编号", required = true) @PathVariable("id") Integer id){
+        courseGroupService.delete(id);
+        return succeed();
+    }
+
+    @ApiOperation(value = "修改课程组")
+    @PutMapping("/update")
+    public Object update(CourseGroup courseGroup){
+        courseGroup.setUpdateTime(new Date());
+        courseGroupService.update(courseGroup);
+        return succeed();
+    }
+
+    @ApiOperation(value = "根据课程组编号查询课程组")
+    @GetMapping("/get/{id}")
+    public Object get(@ApiParam(value = "课程组编号", required = true) @PathVariable("id") Integer id){
+        return succeed(courseGroupService.findDetailById(id));
+    }
+
+    @ApiOperation(value = "分页查询课程组")
+    @PostMapping("/queryPage")
+    public Object queryPage(QueryInfo queryInfo){
+        return succeed(courseGroupService.queryPage(queryInfo));
+    }
+}

+ 65 - 0
mec-web/src/main/java/com/ym/mec/web/controller/StudentRegistrationController.java

@@ -0,0 +1,65 @@
+package com.ym.mec.web.controller;
+
+import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.common.page.QueryInfo;
+import com.ym.mec.web.dal.entity.CourseGroup;
+import com.ym.mec.web.dal.entity.StudentRegistration;
+import com.ym.mec.web.dal.page.StudentRegistrationQueryInfo;
+import com.ym.mec.web.service.StudentRegistrationService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+
+@RequestMapping("studentRegistration")
+@Api(tags = "学生报名信息服务")
+@RestController
+public class StudentRegistrationController extends BaseController {
+
+    @Autowired
+    private StudentRegistrationService studentRegistrationService;
+
+    @ApiOperation(value = "新增学生报名信息")
+    @PostMapping("/add")
+    public Object add(StudentRegistration studentRegistration){
+        Date date = new Date();
+        studentRegistration.setCreateTime(date);
+        studentRegistration.setUpdateTime(date);
+        studentRegistrationService.insert(studentRegistration);
+        return succeed();
+    }
+
+    @ApiOperation(value = "删除学生报名信息")
+    @DeleteMapping("/del/{id}")
+    public Object del(@ApiParam(value = "学生报名信息编号", required = true) @PathVariable("id") Long id){
+        studentRegistrationService.delete(id);
+        return succeed();
+    }
+
+    @ApiOperation(value = "修改学生报名信息")
+    @PutMapping("/update")
+    public Object update(StudentRegistration studentRegistration){
+        studentRegistration.setUpdateTime(new Date());
+        studentRegistrationService.update(studentRegistration);
+        return succeed();
+    }
+
+    @ApiOperation(value = "分页查询学生乐团报名详情")
+    @PostMapping("/queryStudentDetailPage")
+    public Object queryStudentDetailPage(StudentRegistrationQueryInfo queryInfo){
+        return succeed(studentRegistrationService.queryStudentDetailPage(queryInfo));
+    }
+
+    @ApiOperation(value = "批量调剂学生报名专业")
+    @PutMapping("/batchUpdateSubject")
+    public Object batchUpdateSubject(String userId,Integer subId){
+        if(StringUtils.isEmpty(userId) || subId == null){
+            return failed();
+        }
+        return succeed(studentRegistrationService.batchUpdateSubject(userId,subId));
+    }
+}

+ 7 - 0
mec-web/src/main/java/com/ym/mec/web/dal/dao/GoodsDao.java

@@ -14,4 +14,11 @@ public interface GoodsDao extends BaseDAO<Integer, Goods> {
      * @return
      */
     List<Goods> findGoodsBySubId(@Param("subjectId") Integer subjectId, @Param("goodsCategoryId") Integer goodsCategoryId);
+
+    /**
+     * 根据商品分类查找商品数量
+     * @param goodsCategoryId
+     * @return
+     */
+    int findGoodsNumByCategoryId(@Param("goodsCategoryId") Integer goodsCategoryId);
 }

+ 18 - 1
mec-web/src/main/java/com/ym/mec/web/dal/dao/StudentRegistrationDao.java

@@ -2,8 +2,25 @@ package com.ym.mec.web.dal.dao;
 
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.web.dal.entity.StudentRegistration;
+import com.ym.mec.web.dal.page.StudentRegistrationQueryInfo;
+import com.ym.mec.web.dal.utilEntity.StudentApplyDetailUtilEntity;
+
+import java.util.List;
+import java.util.Map;
 
 public interface StudentRegistrationDao extends BaseDAO<Long, StudentRegistration> {
 
-	
+    /**
+     * 获取乐团学员报名详情
+     * @param params
+     * @return
+     */
+    List<StudentApplyDetailUtilEntity> queryStudentDetailPage(Map<String, Object> params);
+
+    /**
+     * 获取乐团学员报名详情条数
+     * @param params
+     * @return
+     */
+    int queryStudentDetailCount(Map<String, Object> params);
 }

+ 3 - 3
mec-web/src/main/java/com/ym/mec/web/dal/entity/GoodsCategory.java

@@ -13,15 +13,15 @@ public class GoodsCategory {
 	private Integer id;
 	
 	/** 分类名称 */
-	@ApiModelProperty(value = "分类名称",required = false)
+	@ApiModelProperty(value = "分类名称",required = true)
 	private String name;
 	
 	/** 产品展示的图片地址 */
-	@ApiModelProperty(value = "产品展示的图片地址",required = false)
+	@ApiModelProperty(value = "产品展示的图片地址")
 	private String img;
 	
 	/** 父节点编号 */
-	@ApiModelProperty(value = "父节点编号",required = false)
+	@ApiModelProperty(value = "父节点编号",required = true)
 	private Integer parentId;
 	
 	/** 顺序编号 */

+ 13 - 1
mec-web/src/main/java/com/ym/mec/web/dal/entity/StudentRegistration.java

@@ -53,6 +53,10 @@ public class StudentRegistration {
 	/** 家长姓名 */
 	@ApiModelProperty(value = "家长姓名",required = false)
 	private String parentsName;
+
+	/** 家长姓名 */
+	@ApiModelProperty(value = "家长电话",required = false)
+	private String parentsPhone;
 	
 	/** 家长单位 */
 	@ApiModelProperty(value = "家长单位",required = false)
@@ -69,7 +73,15 @@ public class StudentRegistration {
 	/** 预计下次缴费日期 */
 	@ApiModelProperty(value = "预计下次缴费日期",required = false)
 	private java.util.Date nextPaymentDate;
-	
+
+	public String getParentsPhone() {
+		return parentsPhone;
+	}
+
+	public void setParentsPhone(String parentsPhone) {
+		this.parentsPhone = parentsPhone;
+	}
+
 	public void setId(Long id){
 		this.id = id;
 	}

+ 4 - 3
mec-web/src/main/java/com/ym/mec/web/dal/enums/ClassGroupTypeEnum.java

@@ -5,9 +5,10 @@ import com.ym.mec.common.enums.BaseEnum;
 /**
  * 班级类型(普通班级、合奏班级)
  */
-public enum ClassGroupTypeEnum implements BaseEnum {
+public enum ClassGroupTypeEnum implements BaseEnum<String,ClassGroupTypeEnum> {
     COMMON("COMMON","普通班级"),
-    CONCERT("CONCERT","合奏班级");
+    CONCERT("CONCERT","合奏班级"),
+    ENHANCE("ENHANCE","提高班");
 
     private String code;
 
@@ -31,6 +32,6 @@ public enum ClassGroupTypeEnum implements BaseEnum {
     }
 
     @Override
-    public Object getCode() {
+    public String getCode() {
         return this.code;
     }}

+ 4 - 7
mec-web/src/main/java/com/ym/mec/web/dal/enums/CourseStatusEnum.java

@@ -2,13 +2,10 @@ package com.ym.mec.web.dal.enums;
 
 import com.ym.mec.common.enums.BaseEnum;
 
-/**
- * 课程状态NOT_START未开始,SIGN_IN已签到,SIGN_OUT已签退
- */
-public enum CourseStatusEnum implements BaseEnum {
+public enum CourseStatusEnum implements BaseEnum<String,CourseStatusEnum> {
     NOT_START("NOT_START","未开始"),
-    SIGN_IN("SIGN_IN","已签到"),
-    SIGN_OUT("SIGN_OUT","已签退");
+    UNDERWAY("UNDERWAY","进行中"),
+    OVER("OVER","已结束");
 
     private String code;
 
@@ -32,6 +29,6 @@ public enum CourseStatusEnum implements BaseEnum {
     }
 
     @Override
-    public Object getCode() {
+    public String getCode() {
         return this.code;
     }}

+ 2 - 1
mec-web/src/main/java/com/ym/mec/web/dal/enums/JobNatureEnum.java

@@ -5,7 +5,8 @@ import com.ym.mec.common.enums.BaseEnum;
 //工作性质(兼职、全职)
 public enum JobNatureEnum implements BaseEnum<String,JobNatureEnum> {
     PART_JOB("PART_JOB","兼职"),
-    FULL_JOB("FULL_JOB","全职");
+    FULL_JOB("FULL_JOB","全职"),
+    TEMPORARY_JOB("TEMPORARY_JOB","零时工");
 
     private String code;
 

+ 3 - 2
mec-web/src/main/java/com/ym/mec/web/dal/enums/KitGroupPurchaseTypeEnum.java

@@ -3,8 +3,9 @@ package com.ym.mec.web.dal.enums;
 import com.ym.mec.common.enums.BaseEnum;
 
 //乐器团购类型(免费、租赁、借用)
-public enum  KitGroupPurchaseTypeEnum implements BaseEnum {
+public enum  KitGroupPurchaseTypeEnum implements BaseEnum<String,KitGroupPurchaseTypeEnum> {
     FREE("FREE","免费"),
+    GROUP("GROUP","团购"),
     LEASE("LEASE","租赁");
     private String code;
 
@@ -28,7 +29,7 @@ public enum  KitGroupPurchaseTypeEnum implements BaseEnum {
     }
 
     @Override
-    public Object getCode() {
+    public String getCode() {
         return this.code;
     }
 }

+ 2 - 2
mec-web/src/main/java/com/ym/mec/web/dal/enums/StudentAttendanceStatusEnum.java

@@ -5,7 +5,7 @@ import com.ym.mec.common.enums.BaseEnum;
 /**
  * 学生考勤状态
  */
-public enum StudentAttendanceStatusEnum implements BaseEnum {
+public enum StudentAttendanceStatusEnum implements BaseEnum<String,StudentAttendanceStatusEnum> {
     NORMAL("NORMAL","正常"),
     TRUANT("TRUANT","旷课"),
     LEAVE("LEAVE","请假");
@@ -32,7 +32,7 @@ public enum StudentAttendanceStatusEnum implements BaseEnum {
     }
 
     @Override
-    public Object getCode() {
+    public String getCode() {
         return this.code;
     }
 }

+ 41 - 0
mec-web/src/main/java/com/ym/mec/web/dal/enums/UserGenderEnum.java

@@ -0,0 +1,41 @@
+package com.ym.mec.web.dal.enums;
+
+import com.ym.mec.common.enums.BaseEnum;
+
+/** 
+ * @author sunzl 
+ * 2015年9月7日 下午1:57:10 
+ * 会员性别枚举
+ */
+public enum UserGenderEnum implements BaseEnum<Integer, UserGenderEnum> {
+
+	WOMAN(0, "女"), MAN(1, "男");
+
+	private int code;
+
+	private String description;
+
+	private UserGenderEnum(int code, String description) {
+		this.code = code;
+		this.description = description;
+	}
+
+	public static UserGenderEnum get(int code) {
+		for (UserGenderEnum info : UserGenderEnum.values()) {
+			if (info.getCode() == code) {
+				return info;
+			}
+		}
+		return null;
+	}
+
+	public String getDescription() {
+		return description;
+	}
+
+	@Override
+	public Integer getCode() {
+		return code;
+	}
+
+}

+ 41 - 0
mec-web/src/main/java/com/ym/mec/web/dal/page/StudentRegistrationQueryInfo.java

@@ -0,0 +1,41 @@
+package com.ym.mec.web.dal.page;
+
+import com.ym.mec.common.page.QueryInfo;
+import com.ym.mec.web.dal.enums.YesOrNoEnum;
+import io.swagger.annotations.ApiModelProperty;
+
+public class StudentRegistrationQueryInfo extends QueryInfo {
+
+    @ApiModelProperty(value = "乐团编号",required = false)
+    private Integer musicGroupId;
+
+    @ApiModelProperty(value = "是否允许调剂",required = false)
+    private YesOrNoEnum isAllowAdjust;
+
+    @ApiModelProperty(value = "专业编号",required = false)
+    private Integer subjectId;
+
+    public Integer getMusicGroupId() {
+        return musicGroupId;
+    }
+
+    public void setMusicGroupId(Integer musicGroupId) {
+        this.musicGroupId = musicGroupId;
+    }
+
+    public YesOrNoEnum getIsAllowAdjust() {
+        return isAllowAdjust;
+    }
+
+    public void setIsAllowAdjust(YesOrNoEnum isAllowAdjust) {
+        this.isAllowAdjust = isAllowAdjust;
+    }
+
+    public Integer getSubjectId() {
+        return subjectId;
+    }
+
+    public void setSubjectId(Integer subjectId) {
+        this.subjectId = subjectId;
+    }
+}

+ 99 - 0
mec-web/src/main/java/com/ym/mec/web/dal/utilEntity/StudentApplyDetailUtilEntity.java

@@ -0,0 +1,99 @@
+package com.ym.mec.web.dal.utilEntity;
+
+import com.ym.mec.web.dal.enums.UserGenderEnum;
+import com.ym.mec.web.dal.enums.YesOrNoEnum;
+import io.swagger.annotations.ApiModelProperty;
+
+public class StudentApplyDetailUtilEntity {
+
+    @ApiModelProperty(value = "学生姓名",required = false)
+    private String studentName;
+
+    @ApiModelProperty(value = "家长姓名",required = false)
+    private String parentsName;
+
+    /** 当前所在年级 */
+    @ApiModelProperty(value = "当前所在年级",required = false)
+    private String currentGrade;
+
+    /** 当前所在班级 */
+    @ApiModelProperty(value = "当前所在班级",required = false)
+    private String currentClass;
+
+    @ApiModelProperty(value = "性别",required = false)
+    private UserGenderEnum gender;
+
+    /** 是否允许调剂 */
+    @ApiModelProperty(value = "是否允许调剂",required = false)
+    private YesOrNoEnum isAllowAdjust;
+
+    @ApiModelProperty(value = "专业名称",required = false)
+    private String subjectName;
+
+    @ApiModelProperty(value = "家长电话",required = false)
+    private String parentsPhone;
+
+    public String getStudentName() {
+        return studentName;
+    }
+
+    public void setStudentName(String studentName) {
+        this.studentName = studentName;
+    }
+
+    public String getParentsName() {
+        return parentsName;
+    }
+
+    public void setParentsName(String parentsName) {
+        this.parentsName = parentsName;
+    }
+
+    public String getCurrentGrade() {
+        return currentGrade;
+    }
+
+    public void setCurrentGrade(String currentGrade) {
+        this.currentGrade = currentGrade;
+    }
+
+    public String getCurrentClass() {
+        return currentClass;
+    }
+
+    public void setCurrentClass(String currentClass) {
+        this.currentClass = currentClass;
+    }
+
+    public UserGenderEnum getGender() {
+        return gender;
+    }
+
+    public void setGender(UserGenderEnum gender) {
+        this.gender = gender;
+    }
+
+    public YesOrNoEnum getIsAllowAdjust() {
+        return isAllowAdjust;
+    }
+
+    public void setIsAllowAdjust(YesOrNoEnum isAllowAdjust) {
+        this.isAllowAdjust = isAllowAdjust;
+    }
+
+    public String getSubjectName() {
+        return subjectName;
+    }
+
+    public void setSubjectName(String subjectName) {
+        this.subjectName = subjectName;
+    }
+
+    public String getParentsPhone() {
+        return parentsPhone;
+    }
+
+    public void setParentsPhone(String parentsPhone) {
+        this.parentsPhone = parentsPhone;
+    }
+}

+ 6 - 0
mec-web/src/main/java/com/ym/mec/web/service/CourseGroupDetailService.java

@@ -5,4 +5,10 @@ import com.ym.mec.web.dal.entity.CourseGroupDetail;
 
 public interface CourseGroupDetailService extends BaseService<Integer, CourseGroupDetail> {
 
+    /**
+     * 新增课程组,并批量新增课程详情
+     * @param courseGroupId
+     * @param courseGroupDetail
+     */
+    void batchInsert(Integer courseGroupId, CourseGroupDetail courseGroupDetail);
 }

+ 9 - 0
mec-web/src/main/java/com/ym/mec/web/service/GoodsService.java

@@ -2,6 +2,7 @@ package com.ym.mec.web.service;
 
 import com.ym.mec.common.service.BaseService;
 import com.ym.mec.web.dal.entity.Goods;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -13,4 +14,12 @@ public interface GoodsService extends BaseService<Integer, Goods> {
      * @return
      */
     List<Goods> findGoodsBySubId(Integer subjectId,Integer goodsCategoryId);
+
+    /**
+     * 根据商品分类id查找商品数量
+     * @param goodsCategoryId
+     * @return
+     */
+    int findGoodsNumByCategoryId(@Param("goodsCategoryId") Integer goodsCategoryId);
+
 }

+ 17 - 0
mec-web/src/main/java/com/ym/mec/web/service/StudentRegistrationService.java

@@ -1,8 +1,25 @@
 package com.ym.mec.web.service;
 
+import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.BaseService;
 import com.ym.mec.web.dal.entity.StudentRegistration;
+import com.ym.mec.web.dal.page.StudentRegistrationQueryInfo;
+import com.ym.mec.web.dal.utilEntity.StudentApplyDetailUtilEntity;
 
 public interface StudentRegistrationService extends BaseService<Long, StudentRegistration> {
 
+    /**
+     * 获取乐团学员报名详情
+     * @param queryInfo
+     * @return
+     */
+    PageInfo<StudentApplyDetailUtilEntity> queryStudentDetailPage(StudentRegistrationQueryInfo queryInfo);
+
+    /**
+     * 批量调剂
+     * @param userId
+     * @param subId
+     * @return
+     */
+    boolean batchUpdateSubject(String userId, Integer subId);
 }

+ 5 - 1
mec-web/src/main/java/com/ym/mec/web/service/impl/CourseGroupDetailServiceImpl.java

@@ -19,5 +19,9 @@ public class CourseGroupDetailServiceImpl extends BaseServiceImpl<Integer, Cours
 	public BaseDAO<Integer, CourseGroupDetail> getDAO() {
 		return courseGroupDetailDao;
 	}
-	
+
+	@Override
+	public void batchInsert(Integer courseGroupId, CourseGroupDetail courseGroupDetail) {
+		
+	}
 }

+ 4 - 0
mec-web/src/main/java/com/ym/mec/web/service/impl/GoodsServiceImpl.java

@@ -26,4 +26,8 @@ public class GoodsServiceImpl extends BaseServiceImpl<Integer, Goods>  implement
 	public List<Goods> findGoodsBySubId(Integer subjectId,Integer goodsCategoryId) {
 		return goodsDao.findGoodsBySubId(subjectId,goodsCategoryId);
 	}
+
+	public int findGoodsNumByCategoryId(Integer goodsCategoryId){
+		return goodsDao.findGoodsNumByCategoryId(goodsCategoryId);
+	}
 }

+ 43 - 1
mec-web/src/main/java/com/ym/mec/web/service/impl/StudentRegistrationServiceImpl.java

@@ -1,5 +1,10 @@
 package com.ym.mec.web.service.impl;
 
+import com.ym.mec.common.page.PageInfo;
+import com.ym.mec.util.collection.MapUtil;
+import com.ym.mec.web.dal.enums.YesOrNoEnum;
+import com.ym.mec.web.dal.page.StudentRegistrationQueryInfo;
+import com.ym.mec.web.dal.utilEntity.StudentApplyDetailUtilEntity;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -9,6 +14,8 @@ import com.ym.mec.web.dal.dao.StudentRegistrationDao;
 import com.ym.mec.web.dal.entity.StudentRegistration;
 import com.ym.mec.web.service.StudentRegistrationService;
 
+import java.util.*;
+
 @Service
 public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, StudentRegistration>  implements StudentRegistrationService {
 	
@@ -19,5 +26,40 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
 	public BaseDAO<Long, StudentRegistration> getDAO() {
 		return studentRegistrationDao;
 	}
-	
+
+	@Override
+	public PageInfo<StudentApplyDetailUtilEntity> queryStudentDetailPage(StudentRegistrationQueryInfo queryInfo) {
+		PageInfo<StudentApplyDetailUtilEntity> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
+		Map<String, Object> params = new HashMap<>();
+		MapUtil.populateMap(params, queryInfo);
+
+		List<StudentApplyDetailUtilEntity> dataList = null;
+		int count = studentRegistrationDao.queryStudentDetailCount(params);
+		if (count > 0) {
+			pageInfo.setTotal(count);
+			params.put("offset", pageInfo.getOffset());
+			dataList = studentRegistrationDao.queryStudentDetailPage(params);
+		}
+		if (count == 0) {
+			dataList = new ArrayList<>();
+		}
+		pageInfo.setRows(dataList);
+		return pageInfo;
+	}
+
+	@Override
+	public boolean batchUpdateSubject(String userIds, Integer subId) {
+		String[] userId = userIds.split(",");
+		StudentRegistration studentRegistration;
+		Date date = new Date();
+		for (String str:userId) {
+			studentRegistration = studentRegistrationDao.get(Long.parseLong(str));
+			if(studentRegistration.getPaymentStatus()== YesOrNoEnum.NO){
+				studentRegistration.setUpdateTime(date);
+				studentRegistration.setSubjectId(subId);
+				studentRegistrationDao.update(studentRegistration);
+			}
+		}
+		return true;
+	}
 }

+ 5 - 0
mec-web/src/main/resources/config/mybatis/GoodsMapper.xml

@@ -138,4 +138,9 @@
         SELECT g.* FROM subject_goods_mapper sgm LEFT JOIN goods g ON sgm.goods_id_ = g.id_
         WHERE sgm.subject_id_ =  #{subjectId} AND g.goods_category_id_ = #{goodsCategoryId}
     </select>
+
+    <!-- 根据 -->
+    <select id="findGoodsNumByCategoryId" resultType="int">
+        SELECT COUNT(*) FROM goods WHERE goods_category_id_ = #{goodsCategoryId}
+    </select>
 </mapper>

+ 54 - 2
mec-web/src/main/resources/config/mybatis/StudentRegistrationMapper.xml

@@ -19,6 +19,7 @@
         <result column="create_time_" property="createTime"/>
         <result column="update_time_" property="updateTime"/>
         <result column="parents_name_" property="parentsName"/>
+        <result column="parents_phone_" property="parentsPhone"/>
         <result column="parents_company_" property="parentsCompany"/>
         <result column="payment_status_" property="paymentStatus" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
         <result column="last_payment_date_" property="lastPaymentDate"/>
@@ -44,14 +45,17 @@
         </selectKey>
         -->
         INSERT INTO student_registration
-        (id_,user_id_,music_group_id_,current_grade_,current_class_,subject_id_,is_allow_adjust_,kit_purchase_method_,remark_,create_time_,update_time_,parents_name_,parents_company_,payment_status_,last_payment_date_,next_payment_date_)
-        VALUES(#{id},#{userId},#{musicGroupId},#{currentGrade},#{currentClass},#{subjectId},#{isAllowAdjust,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{kitPurchaseMethod},#{remark},#{createTime},#{updateTime},#{parentsName},#{parentsCompany},#{paymentStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{lastPaymentDate},#{nextPaymentDate})
+        (parents_phone_,id_,user_id_,music_group_id_,current_grade_,current_class_,subject_id_,is_allow_adjust_,kit_purchase_method_,remark_,create_time_,update_time_,parents_name_,parents_company_,payment_status_,last_payment_date_,next_payment_date_)
+        VALUES(#{parentsPhone},#{id},#{userId},#{musicGroupId},#{currentGrade},#{currentClass},#{subjectId},#{isAllowAdjust,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{kitPurchaseMethod},#{remark},#{createTime},#{updateTime},#{parentsName},#{parentsCompany},#{paymentStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{lastPaymentDate},#{nextPaymentDate})
     </insert>
 
     <!-- 根据主键查询一条记录 -->
     <update id="update" parameterType="com.ym.mec.web.dal.entity.StudentRegistration">
         UPDATE student_registration
         <set>
+            <if test="parentsPhone != null">
+                parents_phone_ = #{parentsPhone},
+            </if>
             <if test="subjectId != null">
                 subject_id_ = #{subjectId},
             </if>
@@ -103,6 +107,17 @@
 		DELETE FROM student_registration WHERE id_ = #{id} 
 	</delete>
 
+    <sql id="queryPageSql">
+        <where>
+            <if test="isAllowAdjust != null">
+                AND is_allow_adjust_ = #{isAllowAdjust,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+            </if>
+            <if test="subjectId != null">
+                AND subject_id_ = #{subjectId}
+            </if>
+        </where>
+    </sql>
+
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="StudentRegistration" parameterType="map">
         SELECT * FROM student_registration ORDER BY id_
@@ -113,4 +128,41 @@
     <select id="queryCount" resultType="int">
 		SELECT COUNT(*) FROM student_registration
 	</select>
+
+    <resultMap type="com.ym.mec.web.dal.utilEntity.StudentApplyDetailUtilEntity" id="studentApplyDetail">
+        <result column="current_grade_" property="currentGrade"/>
+        <result column="current_class_" property="currentClass"/>
+        <result column="is_allow_adjust_" property="isAllowAdjust" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="parents_name_" property="parentsName"/>
+        <result column="parents_phone_" property="parentsPhone"/>
+        <result column="subject_name_" property="subjectName"/>
+        <result column="student_name_" property="studentName"/>
+        <result column="gender_" property="gender"/>
+    </resultMap>
+    <sql id="queryStudentDetailPageSql">
+        <where>
+            <if test="musicGroupId">
+                sr.music_group_id_ = #{musicGroupId}
+            </if>
+            <if test="subjectId">
+                sr.subject_id_ = #{subjectId}
+            </if>
+            <if test="isAllowAdjust">
+                sr.is_allow_adjust_ = #{isAllowAdjust}
+            </if>
+        </where>
+    </sql>
+
+    <select id="queryStudentDetailPage" resultMap="studentApplyDetail">
+        SELECT su.username_,sr.parents_name_,sr.current_class_,sr.current_grade_,su.gender_,sr.is_allow_adjust_, s.name_,sr.parents_phone_
+        FROM student_registration sr
+        LEFT JOIN sys_user su ON sr.subject_id_ = su.id_
+        LEFT JOIN `subject` s ON sr.subject_id_ = s.id_
+        <include refid="queryStudentDetailPageSql"/>
+        <include refid="global.limit"/>
+    </select>
+    <select id="queryStudentDetailCount" resultType="java.lang.Integer">
+        SELECT COUNT(sr.id_) FROM student_registration sr
+        <include refid="queryStudentDetailPageSql"/>
+    </select>
 </mapper>