Browse Source

Merge remote-tracking branch 'origin/master'

Joburgess 5 years ago
parent
commit
a4d923e879

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupDao.java

@@ -154,4 +154,11 @@ public interface MusicGroupDao extends BaseDAO<String, MusicGroup> {
      * @return
      */
     String queryEducationalMusicGroupId(Integer userIds);
+
+    /**
+     * 获取乐团信息
+     * @param list
+     * @return
+     */
+    MusicGroup findMusicGroup(List<Long> list);
 }

+ 1 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/MessageTypeEnum.java

@@ -80,6 +80,7 @@ public enum MessageTypeEnum implements BaseEnum<String, MessageTypeEnum> {
     BACKSTAGE_CREATE_MUSIC_GROUP_APPLY("BACKSTAGE_CREATE_MUSIC_GROUP_APPLY", "建团申请"),
     BACKSTAGE_ACTION_APPLY("BACKSTAGE_ACTION_APPLY", "开启报名"),
     BACKSTAGE_ACTION_PAYMENT("BACKSTAGE_ACTION_PAYMENT", "开启缴费"),
+    SMS_STUDENT_OPEN_PAYMENT("SMS_STUDENT_OPEN_PAYMENT", "开启缴费"),
     BACKSTAGE_LENGTHEN_PAYMENT("BACKSTAGE_LENGTHEN_PAYMENT", "延长缴费"),
     BACKSTAGE_ACTION_GROUP("BACKSTAGE_ACTION_GROUP", "开团"),
     BACKSTAGE_STUDENT_SUBJECT_CHANGE("BACKSTAGE_STUDENT_SUBJECT_CHANGE", "学员声部调整"),

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

@@ -200,7 +200,7 @@ public interface StudentRegistrationService extends BaseService<Long, StudentReg
 	 * @param ids
 	 * @return
 	 */
-	int openPayment(String ids);
+	int openPayment(String ids) throws IOException;
 
 	/**
 	 * 根据乐团编号获取已缴费学员列表

+ 26 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.service.impl;
 
+import com.alibaba.fastjson.JSONObject;
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.auth.api.entity.SysUserRole;
@@ -225,8 +226,16 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
             }
             ImResult register = imFeignService.register(new ImUserModel(userId.toString(), sysUser.getUsername(), sysUser.getAvatar()));
             sysUser.setImToken(register.getToken());
-            teacherDao.updateUser(sysUser);
         }
+        sysUser.setUserType(SysUserType.STUDENT);
+        sysUser.setOrganId(studentRegistration.getOrganId());
+        sysUser.setRealName(studentRegistration.getParentsName());
+        sysUser.setUsername(studentRegistration.getName());
+        sysUser.setGender(studentRegistration.getGender());
+        sysUser.setCreateTime(date);
+        sysUser.setUpdateTime(date);
+        teacherDao.updateUser(sysUser);
+
         studentRegistration.setActualSubjectId(studentRegistration.getSubjectId());
         studentRegistration.setCreateTime(date);
         studentRegistration.setUpdateTime(date);
@@ -442,9 +451,9 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
     @Transactional(rollbackFor = Exception.class)
     public StudentRegistration queryByUserIdAndMusicGroupId(Integer userId, String musicGroupId) {
         StudentRegistration registration = studentRegistrationDao.queryByUserIdAndMusicGroupId(userId, musicGroupId);
-        SysUserCashAccount account = sysUserCashAccountDao.getLocked(userId);
+        /*SysUserCashAccount account = sysUserCashAccountDao.getLocked(userId);
         registration.setBalance(account.getBalance());
-        registration.setTransferStudent(registration.getTemporaryCourseFee() == null ? 0 : 1);
+        registration.setTransferStudent(registration.getTemporaryCourseFee() == null ? 0 : 1);*/
         return registration;
     }
 
@@ -864,7 +873,20 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
     }
 
     @Override
-    public int openPayment(String ids) {
+    public int openPayment(String ids) throws IOException {
+        if(StringUtils.isNotEmpty(ids)){
+            //发送短信通知
+            List<Long> list = JSONObject.parseArray(JSONObject.toJSONString(Arrays.asList(ids.split(","))),Long.class);
+            List<StudentRegistration> registrations = studentRegistrationDao.findStudentListByIdList(list);
+            MusicGroup musicGroup = musicGroupDao.findMusicGroup(list);
+            String configValue = sysConfigDao.findConfigValue(SysConfigService.STUDENT_APPLY_URL);
+            HashMap<Integer,String> receivers = new HashMap<>(registrations.size());
+            registrations.forEach(e->{
+                receivers.put(e.getUserId(),e.getParentsPhone());
+            });
+            sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI,
+                    MessageTypeEnum.SMS_STUDENT_OPEN_PAYMENT,receivers,null,0,null,musicGroup.getName(),HttpUtil.getSortUrl(configValue + musicGroup.getId()));
+        }
         return studentRegistrationDao.batchOpenPay(ids, PaymentStatusEnum.OPEN);
     }
 

+ 9 - 0
mec-biz/src/main/resources/config/mybatis/MusicGroupMapper.xml

@@ -379,4 +379,13 @@
 	<select id="queryEducationalMusicGroupId" resultType="java.lang.String">
 		SELECT GROUP_CONCAT(mg.id_) FROM music_group mg WHERE mg.educational_teacher_id_ = #{userIds}
 	</select>
+    <select id="findMusicGroup" resultMap="MusicGroup">
+		SELECT mg.* FROM student_registration sr
+		LEFT JOIN music_group mg ON sr.music_group_id_ = mg.id_
+		WHERE sr.id_ IN
+		<foreach collection="list" item="id" index="index" open="(" close=")" separator=",">
+			#{id}
+		</foreach>
+		AND mg.id_ IS NOT NULL LIMIT 1
+	</select>
 </mapper>

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

@@ -6,6 +6,7 @@ import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 
+import java.io.IOException;
 import java.util.Date;
 
 import org.apache.commons.lang3.StringUtils;
@@ -120,7 +121,7 @@ public class StudentRegistrationController extends BaseController {
     @PostMapping("/openPayment")
     @PreAuthorize("@pcs.hasPermissions('studentRegistration/openPayment')")
     @ApiImplicitParams({@ApiImplicitParam(name = "ids", value = "报名id(不是userId),逗号分隔", required = true, dataType = "String")})
-    public HttpResponseResult openPayment(String ids) {
+    public HttpResponseResult openPayment(String ids) throws IOException {
         return succeed(studentRegistrationService.openPayment(ids));
     }