Browse Source

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

周箭河 5 năm trước cách đây
mục cha
commit
5c9f6dc377
23 tập tin đã thay đổi với 175 bổ sung42 xóa
  1. 12 19
      mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/core/filter/PhoneLoginAuthenticationFilter.java
  2. 9 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDao.java
  3. 27 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDetailDao.java
  4. 7 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentRegistrationDao.java
  5. 8 1
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDao.java
  6. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dto/musicalListDetailDto.java
  7. 7 0
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentPaymentOrderDetailService.java
  8. 2 0
      mec-biz/src/main/java/com/ym/mec/biz/service/SysConfigService.java
  9. 9 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java
  10. 3 5
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java
  11. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderDetailServiceImpl.java
  12. 10 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java
  13. 2 2
      mec-biz/src/main/resources/config/contracts/courses.ftl
  14. 3 1
      mec-biz/src/main/resources/config/contracts/goods.ftl
  15. 1 1
      mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml
  16. 25 0
      mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderDetailMapper.xml
  17. 8 1
      mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderMapper.xml
  18. 5 0
      mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml
  19. 7 0
      mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml
  20. 0 3
      mec-student/src/main/java/com/ym/mec/student/controller/MusicGroupController.java
  21. 2 1
      mec-student/src/main/java/com/ym/mec/student/controller/SmsCodeController.java
  22. 10 5
      mec-thirdparty/src/main/java/com/ym/mec/thirdparty/message/provider/JiguangPushPlugin.java
  23. 3 3
      mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

+ 12 - 19
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/core/filter/PhoneLoginAuthenticationFilter.java

@@ -1,27 +1,24 @@
 package com.ym.mec.auth.core.filter;
 
-import java.io.IOException;
-
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
+import com.ym.mec.auth.api.dto.SysUserInfo;
+import com.ym.mec.auth.api.enums.SysUserType;
+import com.ym.mec.auth.config.token.PhoneAuthenticationToken;
+import com.ym.mec.auth.service.SysUserService;
+import com.ym.mec.common.security.SecurityConstants;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.security.authentication.AbstractAuthenticationToken;
 import org.springframework.security.authentication.AuthenticationServiceException;
 import org.springframework.security.authentication.LockedException;
 import org.springframework.security.core.Authentication;
 import org.springframework.security.core.AuthenticationException;
-import org.springframework.security.core.userdetails.UsernameNotFoundException;
 import org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter;
 import org.springframework.security.web.util.matcher.AntPathRequestMatcher;
 
-import com.ym.mec.auth.api.dto.SysUserInfo;
-import com.ym.mec.auth.api.enums.SysUserType;
-import com.ym.mec.auth.config.token.PhoneAuthenticationToken;
-import com.ym.mec.auth.service.SysUserService;
-import com.ym.mec.common.security.SecurityConstants;
+import javax.servlet.FilterChain;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
 
 public class PhoneLoginAuthenticationFilter extends AbstractAuthenticationProcessingFilter {
 
@@ -45,17 +42,13 @@ public class PhoneLoginAuthenticationFilter extends AbstractAuthenticationProces
 		}
 
 		AbstractAuthenticationToken authRequest;
-		String principal;
-		String credentials;
-
 		// 手机验证码登陆
-		principal = obtainParameter(request, SPRING_SECURITY_RESTFUL_PHONE_KEY);
-		credentials = obtainParameter(request, SPRING_SECURITY_RESTFUL_VERIFY_CODE_KEY);
+		String principal = obtainParameter(request, SPRING_SECURITY_RESTFUL_PHONE_KEY);
+		String credentials = obtainParameter(request, SPRING_SECURITY_RESTFUL_VERIFY_CODE_KEY);
 
 		SysUserInfo userInfo = sysUserService.queryUserInfoByPhone(principal);
 
 		String clientId = request.getParameter(clientIdParameter);
-
 		if (userInfo == null) {
 			userInfo = sysUserService.initUser(principal,clientId);
 		}

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDao.java

@@ -1,6 +1,7 @@
 package com.ym.mec.biz.dal.dao;
 
 import com.ym.mec.biz.dal.dto.UserGoodsDto;
+import com.ym.mec.biz.dal.dto.musicalListDetailDto;
 import com.ym.mec.biz.dal.entity.Goods;
 import com.ym.mec.biz.dal.entity.StudentPaymentOrder;
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
@@ -12,6 +13,7 @@ import org.apache.ibatis.annotations.Param;
 import java.math.BigDecimal;
 import java.util.Date;
 import java.util.List;
+import java.util.Map;
 
 public interface StudentPaymentOrderDao extends BaseDAO<Long, StudentPaymentOrder> {
 
@@ -157,4 +159,11 @@ public interface StudentPaymentOrderDao extends BaseDAO<Long, StudentPaymentOrde
      * @return
      */
     Integer findOrderByGroupType(@Param("userId") Integer userId, @Param("sporadicId") Integer sporadicId, @Param("groupType") String groupType, @Param("status") DealStatusEnum status);
+
+    /**
+     * 获取订单金额map
+     * @param paymentOrderNo
+     * @return
+     */
+    List<Map<Long, BigDecimal>> queryActualAmount(@Param("paymentOrderNo") List<Long> paymentOrderNo);
 }

+ 27 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDetailDao.java

@@ -6,7 +6,9 @@ import com.ym.mec.biz.dal.enums.DealStatusEnum;
 import com.ym.mec.common.dal.BaseDAO;
 import org.apache.ibatis.annotations.Param;
 
+import java.math.BigDecimal;
 import java.util.List;
+import java.util.Map;
 
 public interface StudentPaymentOrderDetailDao extends BaseDAO<Long, StudentPaymentOrderDetail> {
 
@@ -47,8 +49,33 @@ public interface StudentPaymentOrderDetailDao extends BaseDAO<Long, StudentPayme
 
     /**
      * 乐器采购清单明细
+     *
      * @param musicGroupId
      * @return
      */
     List<musicalListDetailDto> getMusicalListDetail(String musicGroupId);
+
+    /**
+     * 获取商品名称列表
+     *
+     * @param paymentOrderNo
+     * @return
+     */
+    List<Map<Long, String>> queryGoodsNames(@Param("paymentOrderNo") List<Long> paymentOrderNo);
+
+    /**
+     * 获取对应商品类型总价
+     *
+     * @param paymentOrderNo
+     * @param type
+     * @return
+     */
+    List<Map<Long, BigDecimal>> queryGoodsPrice(@Param("paymentOrderNo") List<Long> paymentOrderNo, @Param("type") String type);
+
+    /**
+     * 获取订单商品
+     * @param orderId
+     * @return
+     */
+    StudentPaymentOrderDetail findApplyOrderMusical(@Param("orderId") Long orderId);
 }

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

@@ -284,4 +284,11 @@ public interface StudentRegistrationDao extends BaseDAO<Long, StudentRegistratio
      * @param studentRegistration
      */
     void updateCurrentClass(StudentRegistration studentRegistration);
+
+    /**
+     * 获取乐团学员购买方式
+     * @param musicGroupId
+     * @return
+     */
+    List<Map<Long, String>> queryPurchaseTypeMap(String musicGroupId);
 }

+ 8 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherDao.java

@@ -44,7 +44,7 @@ public interface TeacherDao extends BaseDAO<Integer, Teacher> {
     List<BasicUserDto> queryGroupStudents(@Param("teacherId") Integer teacherId, @Param("search") String search);
 
     /**
-     * 根据用户编号列表获取用户名称
+     * 根据用户编号列表获取用户realName
      *
      * @param userIds
      * @return
@@ -195,4 +195,11 @@ public interface TeacherDao extends BaseDAO<Integer, Teacher> {
      * @return
      */
     List<Teacher> findTeacherByOrganId(@Param("organId")String organId);
+
+    /**
+     * 获取用户username
+     * @param userIds
+     * @return
+     */
+    List<Map<Integer, String>> queryUsernameByIds(@Param("userIds") List<Integer> userIds);
 }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/musicalListDetailDto.java

@@ -5,6 +5,8 @@ import com.ym.mec.biz.dal.enums.KitGroupPurchaseTypeEnum;
 import java.math.BigDecimal;
 
 public class musicalListDetailDto {
+    private Long paymentOrderId;
+
     private Integer userId;
 
     private String goodsNames;
@@ -25,6 +27,14 @@ public class musicalListDetailDto {
 
     private BigDecimal orderAmount;
 
+    public Long getPaymentOrderId() {
+        return paymentOrderId;
+    }
+
+    public void setPaymentOrderId(Long paymentOrderId) {
+        this.paymentOrderId = paymentOrderId;
+    }
+
     public String getMusicGroupName() {
         return musicGroupName;
     }

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

@@ -64,4 +64,11 @@ public interface StudentPaymentOrderDetailService extends BaseService<Long, Stud
      * @return
      */
     List<musicalListDetailDto> getMusicalListDetail(String musicGroupId);
+
+    /**
+     * 获取订单的乐器信息
+     * @param orderId
+     * @return
+     */
+    StudentPaymentOrderDetail findApplyOrderMusical(Long orderId);
 }

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/SysConfigService.java

@@ -4,6 +4,8 @@ import com.ym.mec.biz.dal.entity.SysConfig;
 import com.ym.mec.common.service.BaseService;
 
 public interface SysConfigService extends BaseService<Long, SysConfig> {
+	
+	public static final String BASE_API_URL = "base_api_url";
 
     /**
      * 缴费状态提前{}天刷新

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -1042,6 +1042,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         if (musicGroup == null) {
             throw new BizException("乐团不存在");
         }
+        if(classGroup4MixDto.getCourseTimes().compareTo(0) <= 0){
+            throw new BizException("排课次数必须大于0");
+        }
         Date entryDate = DateUtil.stringToDate(sysConfigDao.findByParamName(SysConfigService.TEACHER_ENTRY_DATE).getParanValue(),"yyyy-MM-dd");
         Integer schoolId = musicGroup.getSchoolId();
 
@@ -1293,6 +1296,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         if (classGroup == null) {
             throw new BizException("班级不存在");
         }
+        if(classGroup4MixDto.getCourseTimes().compareTo(0) <= 0){
+            throw new BizException("排课次数必须大于0");
+        }
         Integer courseTimes = classGroup4MixDto.getCourseTimes();
 
         Date entryDate = DateUtil.stringToDate(sysConfigDao.findByParamName(SysConfigService.TEACHER_ENTRY_DATE).getParanValue(),"yyyy-MM-dd");
@@ -1532,6 +1538,9 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         if (musicGroup == null) {
             throw new BizException("乐团不存在");
         }
+        if(classGroup4MixDto.getCourseTimes().compareTo(0) <= 0){
+            throw new BizException("排课次数必须大于0");
+        }
         Integer schoolId = musicGroup.getSchoolId();
 
         Date entryDate = DateUtil.stringToDate(sysConfigDao.findByParamName(SysConfigService.TEACHER_ENTRY_DATE).getParanValue(),"yyyy-MM-dd");

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

@@ -978,7 +978,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         Map<String,String> paymentStatus = MapUtil.convertMybatisMap(musicGroupStudentFeeDao.queryUserPaymentStatus(userId,StringUtils.join(musicGroupIds,",")));
         // 获取学员在该乐团续费状态
         musicCardDtos.forEach(e -> {
-            e.setPaymentStatus(paymentStatus.get(e.getMusicGroupId()) == null?"NON_PAYMENT":paymentStatus.get(e.getMusicGroupId()));
+            e.setPaymentStatus(paymentStatus.get(e.getMusicGroupId()));
         });
         return musicCardDtos;
     }
@@ -1600,13 +1600,11 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
             return true;
         }
         if(studentPaymentOrder.getStatus() == DealStatusEnum.CLOSE || studentPaymentOrder.getStatus() == DealStatusEnum.FAILED){
-//            String studentApplyUrl = sysConfigDao.findConfigValue(SysConfigService.STUDENT_APPLY_URL) + musicGroupId;
-            String memo = "http://mstudev.dayaedu.com/#/renew?musicGroupId=" + musicGroupId;
+            String baseUrl = sysConfigDao.findConfigValue(SysConfigService.BASE_API_URL);
+            String memo = baseUrl + "/#/renew?musicGroupId=" + musicGroupId;
             //4?http://mstudev.dayaedu.com/#/renew?musicGroupId=" +musicGroupId
             sysMessageService.batchSendMessage(MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_MUSIC_GROUP_RENEW_FAILED, push, null, 0, "4?" + memo,
                     HttpUtil.getSortUrl(memo));
-            sysMessageService.batchSendMessage(MessageSender.YIMEI, MessageTypeEnum.STUDENT_PUSH_MUSIC_GROUP_RENEW_FAILED, yimei, null, 0, "4?" + memo,
-                    HttpUtil.getSortUrl(memo));
             return false;
         }
         return false;

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderDetailServiceImpl.java

@@ -164,4 +164,9 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
     public List<musicalListDetailDto> getMusicalListDetail(String musicGroupId) {
         return studentPaymentOrderDetailDao.getMusicalListDetail(musicGroupId);
     }
+
+    @Override
+    public StudentPaymentOrderDetail findApplyOrderMusical(Long orderId) {
+        return studentPaymentOrderDetailDao.findApplyOrderMusical(orderId);
+    }
 }

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -787,6 +787,16 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
             sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG,
                     MessageTypeEnum.STUDENT_SMS_PAYMENT_SUCCESS, map1, null, 0, "1",
                     studentRegistration.getParentsName(), studentPaymentOrder.getActualAmount());
+
+            //生成课程协议
+            contractService.transferMusicGroupCoursesContract(studentRegistration.getUserId(),studentRegistration.getMusicGroupId());
+            //商品协议(租赁时候有)
+            if(musicOneSubjectClassPlan.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.LEASE)){
+                StudentPaymentOrderDetail applyOrderMusical = studentPaymentOrderDetailService.findApplyOrderMusical(studentPaymentOrder.getId());
+                if(applyOrderMusical != null && applyOrderMusical.getGoodsIdList() != null && !applyOrderMusical.getGoodsIdList().equals("")){
+                    contractService.transferGoodsContract(studentPaymentOrder.getUserId(),studentPaymentOrder.getMusicGroupId(),applyOrderMusical.getGoodsIdList(),musicOneSubjectClassPlan.getKitGroupPurchaseType());
+                }
+            }
         }
 
 

+ 2 - 2
mec-biz/src/main/resources/config/contracts/courses.ftl

@@ -91,9 +91,9 @@
                     <span>身份证号:${studentInfo.idCardNo!}</span>
                 </div>
                 <div class="iInfo">
-                    <span>学生姓名:${studentInfo.name!}</span>
+                    <span>学生姓名:${studentInfo.username!}</span>
                 </div>
-                <#if studentInfo.grade??>
+                <#if studentInfo.grade?default("")?trim?length gt 1>
                 <div class="iInfo">
                     <span>所在班级:${studentInfo.grade!} ${studentInfo.clazz!}</span>
                 </div>

+ 3 - 1
mec-biz/src/main/resources/config/contracts/goods.ftl

@@ -90,11 +90,13 @@
                     <span>身份证号:${studentInfo.idCardNo!}</span>
                 </div>
                 <div class="iInfo">
-                    <span>学生姓名:${studentInfo.name!}</span>
+                    <span>学生姓名:${studentInfo.username!}</span>
                 </div>
+                <#if studentInfo.grade?default("")?trim?length gt 1>
                 <div class="iInfo">
                     <span>所在班级:${studentInfo.grade!} ${studentInfo.clazz!}</span>
                 </div>
+                </#if>
                 <div class="iInfo">
                     <span>所在声部:${studentInfo.subject.name!}</span>
                 </div>

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

@@ -793,7 +793,7 @@
     </update>
 
     <select id="findClassGroupByType" resultMap="ClassGroupTeachers">
-        SELECT * FROM class_group WHERE music_group_id_=#{musicGroupId}
+        SELECT * FROM class_group WHERE music_group_id_=#{musicGroupId} AND group_type = 'MUSIC'
         <if test="type !=null ">
             AND type_=#{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
         </if>

+ 25 - 0
mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderDetailMapper.xml

@@ -113,6 +113,7 @@
         AND spo.type_ = 'APPLY'
     </select>
     <resultMap id="musicalListDetailDtoMap" type="com.ym.mec.biz.dal.dto.musicalListDetailDto">
+        <result property="paymentOrderId" column="payment_order_id_"/>
         <result property="username" column="username_"/>
         <result property="userId" column="user_id_"/>
         <result property="musicGroupName" column="muaic_group_name_"/>
@@ -125,6 +126,30 @@
         <result property="goodsNames" column="goods_names_"/>
     </resultMap>
     <select id="getMusicalListDetail" resultMap="musicalListDetailDtoMap">
+        SELECT MAX(spo.id_) payment_order_id_,spo.user_id_  FROM student_payment_order spo
+        WHERE spo.music_group_id_ = #{musicGroupId}
+        GROUP BY spo.user_id_
+    </select>
+    <select id="queryGoodsNames" resultType="java.util.Map">
+        SELECT spod.payment_order_id_ 'key',GROUP_CONCAT(g.name_) 'value'
+        FROM student_payment_order_detail spod
+        LEFT JOIN goods g ON FIND_IN_SET(g.id_,spod.goods_id_list_)
+        WHERE spod.payment_order_id_ IN
+        <foreach collection="paymentOrderNo" open="(" close=")" separator="," item="item">
+            #{item}
+        </foreach>
+        GROUP BY spod.payment_order_id_
+    </select>
+    <select id="queryGoodsPrice" resultType="java.util.Map">
+        SELECT spod.payment_order_id_ 'key' ,SUM(price_) 'value' FROM student_payment_order_detail spod
+        WHERE spod.type_ = #{type} AND spod.payment_order_id_ IN
+        <foreach collection="paymentOrderNo" open="(" close=")" separator="," item="item">
+            #{item}
+        </foreach>
+        GROUP BY spod.payment_order_id_
+    </select>
 
+    <select id="findApplyOrderMusical" resultMap="StudentPaymentOrderDetail">
+        SELECT * FROM student_payment_order_detail WHERE payment_order_id_ = #{orderId} AND type_ = 'MUSICAL' LIMIT 1
     </select>
 </mapper>

+ 8 - 1
mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderMapper.xml

@@ -340,5 +340,12 @@
             AND status_ = #{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
         </if>
     </select>
-
+    <select id="queryActualAmount" resultType="java.util.Map">
+        SELECT spo.actual_amount_ 'value',spo.id_ 'key'
+        FROM student_payment_order spo
+        WHERE spo.id_ IN
+        <foreach collection="paymentOrderNo" open="(" close=")" separator="," item="item">
+            #{item}
+        </foreach>
+    </select>
 </mapper>

+ 5 - 0
mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml

@@ -543,6 +543,11 @@
         WHERE sr.parents_phone_ = #{mobile}
         LIMIT 1
     </select>
+    <select id="queryPurchaseTypeMap" resultType="java.util.Map">
+        SELECT sr.user_id_ 'key',mgsp.kit_group_purchase_type_ 'value' FROM student_registration sr
+        LEFT JOIN music_group_subject_plan mgsp ON sr.actual_subject_id_ = mgsp.subject_id_ AND sr.music_group_id_ = mgsp.music_group_id_
+        WHERE sr.music_group_id_ = #{musicGroupId}
+    </select>
 
     <update id="updateUser">
         UPDATE sys_user SET real_name_ = #{realName},id_card_no_=#{idCardNo} WHERE id_=#{id}

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

@@ -568,4 +568,11 @@
             AND FIND_IN_SET(t.organ_id_,#{organId})
         </if>
     </select>
+    <select id="queryUsernameByIds" resultType="java.util.Map" parameterType="list">
+        select id_ `key`,username_ `value` FROM sys_user s
+        WHERE s.id_ IN
+        <foreach collection="userIds" item="item" open="(" close=")" separator=",">
+            #{item}
+        </foreach>
+    </select>
 </mapper>

+ 0 - 3
mec-student/src/main/java/com/ym/mec/student/controller/MusicGroupController.java

@@ -2,10 +2,8 @@ package com.ym.mec.student.controller;
 
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
-import com.ym.mec.auth.api.enums.SysUserType;
 import com.ym.mec.biz.dal.dao.MusicGroupStudentFeeDao;
 import com.ym.mec.biz.dal.dto.RegisterPayDto;
-import com.ym.mec.biz.dal.dto.SporadicPayDto;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.entity.MusicGroupStudentFee.PaymentStatus;
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
@@ -23,7 +21,6 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.ui.ModelMap;
 import org.springframework.web.bind.annotation.*;
-
 import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.util.HashMap;

+ 2 - 1
mec-student/src/main/java/com/ym/mec/student/controller/SmsCodeController.java

@@ -5,6 +5,7 @@ import com.google.code.kaptcha.Producer;
 import com.google.code.kaptcha.servlet.KaptchaServlet;
 import com.ym.mec.biz.service.SmsCodeService;
 import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.security.SecurityConstants;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
@@ -80,7 +81,7 @@ public class SmsCodeController extends BaseController {
     @ApiImplicitParam(name = "phone", value = "手机号", required = true, dataType = "String")
     public void getKaptchaImage(HttpServletResponse response,String phone) throws Exception {
         if(StringUtils.isEmpty(phone)){
-            return;
+            throw new BizException("请输入手机号");
         }
         response.setDateHeader("Expires", 0);
 

+ 10 - 5
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/message/provider/JiguangPushPlugin.java

@@ -22,19 +22,19 @@ import com.ym.mec.util.http.HttpUtil;
 public class JiguangPushPlugin implements MessageSenderPlugin, InitializingBean {
 
 	@Value("${push.jiguang.appKey:0e7422e1d6e73637e678716a}")
-	private String appKey;
+	private String appKey = "0e7422e1d6e73637e678716a";
 
 	@Value("${push.jiguang.masterSecret:c2361016604eab56ab2db2ac}")
-	private String masterSecret;
+	private String masterSecret = "c2361016604eab56ab2db2ac";
 
 	@Value("${push.jiguang.apns_production:false}")
-	private boolean apns_production; // 推送环境 True 表示推送生产环境,False 表示要推送开发环境
+	private boolean apns_production = false; // 推送环境 True 表示推送生产环境,False 表示要推送开发环境
 
 	@Value("${push.jiguang.time_to_live:86400}")
-	private int time_to_live; // 离线保留时长 秒为单位 默认1天 最大10天
+	private int time_to_live = 86400; // 离线保留时长 秒为单位 默认1天 最大10天
 
 	@Value("${push.jiguang.reqURL:https://api.jpush.cn/v3/push}")
-	private String reqURL;// 请求极光地址
+	private String reqURL = "https://api.jpush.cn/v3/push";// 请求极光地址
 
 	public static String getName() {
 		return "Jiguang";
@@ -196,4 +196,9 @@ public class JiguangPushPlugin implements MessageSenderPlugin, InitializingBean
 		this.reqURL = reqURL;
 	}
 
+	public static void main(String[] args) throws IOException {
+		JiguangPushPlugin plugin = new JiguangPushPlugin();
+		plugin.send("测试标题", "测试内容", "1093192", "");
+	}
+
 }

+ 3 - 3
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -21,10 +21,7 @@ import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
-
 import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.io.OutputStream;
 import java.util.Date;
 import java.util.List;
 
@@ -42,6 +39,7 @@ public class ExportController extends BaseController {
 
     @ApiOperation(value = "导出乐器采购清单")
     @PostMapping("order/musicalListExport")
+    @PreAuthorize("@pcs.hasPermissions('order/musicalListExport')")
     public void musicalListExport(HttpServletResponse response, String musicGroupId){
         List<Goods> musicalList = studentPaymentOrderDetailService.getMusicalList(musicGroupId);
         if(musicalList == null || musicalList.size() < 1){
@@ -62,6 +60,7 @@ public class ExportController extends BaseController {
 
     @ApiOperation(value = "导出学员采购清单明细")
     @PostMapping("order/musicalListDetailExport")
+    @PreAuthorize("@pcs.hasPermissions('order/musicalListDetailExport')")
     public void musicalListDetailExport(HttpServletResponse response, String musicGroupId){
         List<musicalListDetailDto> musicalList = studentPaymentOrderDetailService.getMusicalListDetail(musicGroupId);
         if(musicalList == null || musicalList.size() < 1){
@@ -103,6 +102,7 @@ public class ExportController extends BaseController {
 
     @ApiOperation(value = "分页导出教师薪酬列表")
     @RequestMapping("courseScheduleTeacherSalary/export")
+    @PreAuthorize("@pcs.hasPermissions('courseScheduleTeacherSalary/export')")
     public void export(CourseScheduleTeacherSalaryQueryInfo queryInfo, HttpServletResponse response) {
         List<TeacherSalaryDto> teacherSalaries = courseScheduleTeacherSalaryService.querySalaries(queryInfo).getRows();
         try {