zouxuan 5 years ago
parent
commit
5790007ca4

+ 7 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupService.java

@@ -182,7 +182,7 @@ public interface MusicGroupService extends BaseService<String, MusicGroup> {
 	 * 乐团确认成立
 	 * @param musicGroupId
 	 */
-    void musicGroupFound(String musicGroupId);
+    void musicGroupFound(String musicGroupId) throws Exception;
 
 	/**
 	 * 乐团修改,获取乐团声部信息数据
@@ -203,4 +203,10 @@ public interface MusicGroupService extends BaseService<String, MusicGroup> {
 	 * @return
 	 */
     int updateExpectedStudentNum(List<UpdateExpectedNumDto> updateExpectedNumDtos);
+
+	/**
+	 * 开启乐团(筹备中 -->  进行中)
+	 * @param musicGroupId
+	 */
+	void musicGroupAction(String musicGroupId) throws Exception;
 }

+ 46 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -54,7 +54,8 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
     private MusicGroupSubjectPlanDao musicGroupSubjectPlanDao;
     @Autowired
     private MusicGroupBuildLogDao musicGroupBuildLogDao;
-
+    @Autowired
+    private MusicGroupPurchaseListDao musicGroupPurchaseListDao;
     @Autowired
     private MusicGroupStudentFeeDao musicGroupStudentFeeDao;
 
@@ -206,13 +207,43 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
     }
 
     @Override
+    public void musicGroupAction(String musicGroupId) throws Exception {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if(sysUser == null){
+            throw new Exception("用户信息获取失败");
+        }
+        MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
+        if(musicGroup == null){
+            throw new Exception("乐团信息不存在");
+        }
+        if(musicGroup.getStatus() != MusicGroupStatusEnum.PREPARE){
+            throw new Exception("乐团状态异常");
+        }
+        //乐器采购清单是否确认
+        Map<String,Object> param = new HashMap<>();
+        param.put("musicGroupId",musicGroupId);
+        int i = musicGroupPurchaseListDao.queryCount(param);
+        if(i <= 0){
+            throw new Exception("采购清单未确认");
+        }
+        //课酬是否确认
+//        courseScheduleTeacherSalaryDao.queryCount();
+        Date date = new Date();
+        //记录操作日志
+        musicGroupBuildLogDao.insert(new MusicGroupBuildLog(musicGroupId,"确认开团(筹备中 -> 进行中)",sysUser.getId(),""));
+        musicGroup.setStatus(MusicGroupStatusEnum.PROGRESS);
+        musicGroup.setUpdateTime(date);
+        musicGroupDao.update(musicGroup);
+    }
+
+    @Override
     public List<MusicCardDto> queryUserMusicGroups(Integer userId) {
         List<MusicCardDto> musicCardDtos = musicGroupDao.queryUserMusicGroups(userId);
         Set<String> musicGroupIds = musicCardDtos.stream().map(MusicCardDto::getMusicGroupId).collect(Collectors.toSet());
         Map<String,String> paymentStatus = MapUtil.convertMybatisMap(musicGroupStudentFeeDao.queryUserPaymentStatus(userId,StringUtils.join(musicGroupIds,",")));
         // 获取学员在该乐团续费状态
         musicCardDtos.forEach(e -> {
-            e.setPaymentStatus(paymentStatus.get(e.getMusicGroupId()));
+            e.setPaymentStatus(paymentStatus.get(e.getMusicGroupId()) == null?"NON_PAYMENT":paymentStatus.get(e.getMusicGroupId()));
         });
         return musicCardDtos;
     }
@@ -761,9 +792,21 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public void musicGroupFound(String musicGroupId) {
+    public void musicGroupFound(String musicGroupId) throws Exception {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if(sysUser == null){
+            throw new Exception("用户信息获取失败");
+        }
         Date date = new Date();
         MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
+        if(musicGroup == null){
+            throw new Exception("乐团信息不存在");
+        }
+        if(musicGroup.getStatus() != MusicGroupStatusEnum.PAY){
+            throw new Exception("乐团状态异常");
+        }
+        //记录操作日志
+        musicGroupBuildLogDao.insert(new MusicGroupBuildLog(musicGroupId,"确认开团(缴费中 -> 筹备中)",sysUser.getId(),""));
         musicGroup.setStatus(MusicGroupStatusEnum.PREPARE);
         musicGroup.setUpdateTime(date);
         musicGroupDao.update(musicGroup);

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

@@ -309,8 +309,7 @@ public class TeacherServiceImpl extends BaseServiceImpl<Integer, Teacher>  imple
 		if(Objects.isNull(musicGroupId)){
 			throw new BizException("请指定乐团");
 		}
-		List<BasicUserDto> teacherByMusicGroup = teacherDao.findTeacherByMusicGroup(musicGroupId);
-		return teacherByMusicGroup;
+		return teacherDao.findTeacherByMusicGroup(musicGroupId);
 	}
 
 	@Override

+ 12 - 1
mec-biz/src/main/resources/config/mybatis/MusicGroupPurchaseListMapper.xml

@@ -64,12 +64,23 @@
 
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="MusicGroupPurchaseList" parameterType="map">
-        SELECT * FROM music_group_purchase_list ORDER BY id_
+        SELECT * FROM music_group_purchase_list
+        <where>
+            <if test="musicGroupId != null">
+                music_group_id_ = #{musicGroupId}
+            </if>
+        </where>
+        ORDER BY id_
         <include refid="global.limit"/>
     </select>
 
     <!-- 查询当前表的总记录数 -->
     <select id="queryCount" resultType="int">
 		SELECT COUNT(*) FROM music_group_purchase_list
+        <where>
+            <if test="musicGroupId != null">
+                music_group_id_ = #{musicGroupId}
+            </if>
+        </where>
 	</select>
 </mapper>

+ 1 - 0
mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml

@@ -310,6 +310,7 @@
             LEFT JOIN class_group cg ON cg.id_=cgtm.class_group_id_
             LEFT JOIN sys_user su ON cgtm.user_id_=su.id_
             WHERE cg.music_group_id_=#{musicGroupId}
+            GROUP BY su.id_
     </select>
     <resultMap id="MusicGroupTeachersDto" type="com.ym.mec.biz.dal.dto.MusicGroupTeachersDto">
         <result property="teacherName" column="real_name_"/>

+ 0 - 14
mec-web/src/main/java/com/ym/mec/web/controller/ClassGroupController.java

@@ -1,12 +1,9 @@
 package com.ym.mec.web.controller;
 
 import com.ym.mec.biz.dal.dto.ClassGroup4MixDto;
-import com.ym.mec.biz.dal.dto.ClassGroupAdjustDto;
 import com.ym.mec.biz.dal.dto.HighClassGroupDto;
 import com.ym.mec.biz.dal.entity.ClassGroup;
 import com.ym.mec.biz.dal.entity.ClassGroupTeacherMapper;
-import com.ym.mec.biz.dal.entity.CourseScheduleStudentPayment;
-import com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary;
 import com.ym.mec.biz.dal.enums.SalarySettlementTypeEnum;
 import com.ym.mec.biz.dal.page.queryMusicGroupCourseScheduleQueryInfo;
 import com.ym.mec.biz.service.ClassGroupService;
@@ -14,23 +11,14 @@ import com.ym.mec.biz.service.ClassGroupTeacherMapperService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.page.QueryInfo;
-
-import com.ym.mec.jiari.JiaRiFeignService;
 import io.swagger.annotations.*;
-
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 
-import java.math.BigDecimal;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.time.format.DateTimeFormatter;
-import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
-import java.util.Map;
 
 @RequestMapping("classGroup")
 @Api(tags = "班级服务")
@@ -41,8 +29,6 @@ public class ClassGroupController extends BaseController {
     private ClassGroupService classGroupService;
     @Autowired
     private ClassGroupTeacherMapperService classGroupTeacherMapperService;
-    @Autowired
-    private JiaRiFeignService jiaRiFeignService;
 
     @ApiOperation(value = "新增单技班班级")
     @PostMapping("/add")

+ 22 - 19
mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupController.java

@@ -1,30 +1,24 @@
 package com.ym.mec.web.controller;
 
+import com.ym.mec.auth.api.client.SysUserFeignService;
+import com.ym.mec.auth.api.entity.SysUser;
+import com.ym.mec.biz.dal.dto.SubFeeSettingDto;
 import com.ym.mec.biz.dal.dto.UpdateExpectedNumDto;
+import com.ym.mec.biz.dal.page.MusicGroupQueryInfo;
+import com.ym.mec.biz.service.MusicGroupService;
+import com.ym.mec.common.controller.BaseController;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
-
-import java.util.Date;
-import java.util.List;
-import java.util.Set;
-
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
-import com.ym.mec.auth.api.client.SysUserFeignService;
-import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.biz.dal.dto.SubFeeSettingDto;
-import com.ym.mec.biz.dal.page.MusicGroupQueryInfo;
-import com.ym.mec.biz.service.MusicGroupService;
-import com.ym.mec.common.controller.BaseController;
+import java.util.Date;
+import java.util.List;
+import java.util.Set;
 
 @RequestMapping("musicGroup")
 @Api(tags = "乐团服务")
@@ -55,7 +49,7 @@ public class MusicGroupController extends BaseController {
 	}
 
 	@ApiOperation(value = "获取乐团调整--声部信息数据")
-	@PostMapping("/findMusicGroupSubjectInfo")
+	@GetMapping("/findMusicGroupSubjectInfo")
 	@PreAuthorize("@pcs.hasPermissions('musicGroup/findMusicGroupSubjectInfo')")
 	public Object findMusicGroupSubjectInfo(String musicGroupId) {
 		if (StringUtils.isEmpty(musicGroupId)) {
@@ -131,15 +125,24 @@ public class MusicGroupController extends BaseController {
 		return succeed(musicGroupService.openPay(musicGroupId, expireDate));
 	}
 
-	@ApiOperation(value = "乐团确认成立")
+	@ApiOperation(value = "确认开团(缴费中 -->  筹备中)")
 	@PostMapping("/found")
 	@PreAuthorize("@pcs.hasPermissions('musicGroup/found')")
 	@ApiImplicitParams({ @ApiImplicitParam(name = "musicGroupId", value = "乐团编号", required = true, dataType = "String") })
-	public Object found(String musicGroupId) {
+	public Object found(String musicGroupId) throws Exception {
 		musicGroupService.musicGroupFound(musicGroupId);
 		return succeed();
 	}
 
+	@ApiOperation(value = "开启乐团(筹备中 -->  进行中)")
+	@PostMapping("/action")
+	@PreAuthorize("@pcs.hasPermissions('musicGroup/action')")
+	@ApiImplicitParams({ @ApiImplicitParam(name = "musicGroupId", value = "乐团编号", required = true, dataType = "String") })
+	public Object action(String musicGroupId) throws Exception {
+		musicGroupService.musicGroupAction(musicGroupId);
+		return succeed();
+	}
+
 	@ApiOperation(value = "取消乐团")
 	@PostMapping("/cancelMusicGroup")
 	@PreAuthorize("@pcs.hasPermissions('musicGroup/cancelMusicGroup')")