瀏覽代碼

增加乐团缴费状态查询

周箭河 5 年之前
父節點
當前提交
5b2e1890e0
共有 19 個文件被更改,包括 317 次插入135 次删除
  1. 10 0
      mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/entity/SysUser.java
  2. 51 43
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDao.java
  3. 18 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentRegistrationDao.java
  4. 11 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SysAccountDao.java
  5. 0 28
      mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentRegistration.java
  6. 26 0
      mec-biz/src/main/java/com/ym/mec/biz/dal/enums/PaymentChannelEnum.java
  7. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentPaymentOrderService.java
  8. 8 0
      mec-biz/src/main/java/com/ym/mec/biz/service/StudentRegistrationService.java
  9. 18 0
      mec-biz/src/main/java/com/ym/mec/biz/service/SysAccountService.java
  10. 26 18
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/PayServiceImpl.java
  11. 5 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderServiceImpl.java
  12. 12 2
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java
  13. 31 0
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysAccountServiceImpl.java
  14. 36 19
      mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderMapper.xml
  15. 34 11
      mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml
  16. 4 0
      mec-biz/src/main/resources/config/mybatis/SysAccountMapper.xml
  17. 1 1
      mec-student/src/main/java/com/ym/mec/student/config/ResourceServerConfig.java
  18. 12 11
      mec-student/src/main/java/com/ym/mec/student/controller/MusicGroupController.java
  19. 9 2
      mec-student/src/main/java/com/ym/mec/student/controller/MusicGroupRegisterController.java

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

@@ -98,6 +98,9 @@ public class SysUser implements Serializable{
 	@ApiModelProperty(value = "微信号",required = false)
 	private String wechatId;
 
+	@ApiModelProperty(value = "e签宝唯一编号",required = false)
+	private String esignId;
+
 	public String getRealName() {
 		return realName;
 	}
@@ -274,6 +277,13 @@ public class SysUser implements Serializable{
 		this.wechatId = wechatId;
 	}
 
+	public String getEsignId() {
+		return esignId;
+	}
+
+	public void setEsignId(String esignId) {
+		this.esignId = esignId;
+	}
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 51 - 43
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDao.java

@@ -13,47 +13,55 @@ import com.ym.mec.common.dal.BaseDAO;
 
 public interface StudentPaymentOrderDao extends BaseDAO<Long, StudentPaymentOrder> {
 
-	/**
-	 * 查询商品列表
-	 *
-	 * @param musicGroupId
-	 * @param type
-	 * @return
-	 */
-	List<Goods> queryApplyGoodsList(@Param("musicGroupId") String musicGroupId, @Param("type") OrderDetailTypeEnum type);
-
-	/**
-	 * @Author: Joburgess
-	 * @Date: 2019/10/3
-	 * 根据学生vip课获取缴费订单
-	 */
-	StudentPaymentOrder findByStudentVipGroup(@Param("vipGroupId") Long vipGroupId, @Param("userId") Long userId);
-
-	/**
-	 * 查询乐团报名的订单
-	 *
-	 * @param userId
-	 * @param musicGroupId
-	 * @param status
-	 * @return
-	 */
-	StudentPaymentOrder findMusicGroupApplyOrderByStatus(@Param("userId") Integer userId, @Param("musicGroupId") String musicGroupId,
-			@Param("status") DealStatusEnum status);
-
-	/**
-	 * 根据订单号查询订单
-	 * @param orderNo
-	 * @return
-	 */
-	StudentPaymentOrder findOrderByOrderNo(@Param("orderNo") String orderNo);
-
-	/**
-	 * 查询指定交易状态的乐团报名的订单信息
-	 * @param musicGroupId 乐团编号
-	 * @param type 订单类型
-	 * @param status 订单状态
-	 * @return
-	 */
-	List<StudentPaymentOrder> queryByDealStatus(@Param("musicGroupId") String musicGroupId, @Param("type") OrderTypeEnum type,
-			@Param("status") DealStatusEnum status);
+    /**
+     * 查询商品列表
+     *
+     * @param musicGroupId
+     * @param type
+     * @return
+     */
+    List<Goods> queryApplyGoodsList(@Param("musicGroupId") String musicGroupId, @Param("type") OrderDetailTypeEnum type);
+
+    /**
+     * @Author: Joburgess
+     * @Date: 2019/10/3
+     * 根据学生vip课获取缴费订单
+     */
+    StudentPaymentOrder findByStudentVipGroup(@Param("vipGroupId") Long vipGroupId, @Param("userId") Long userId);
+
+    /**
+     * 查询乐团报名的订单
+     *
+     * @param userId
+     * @param musicGroupId
+     * @param status
+     * @return
+     */
+    StudentPaymentOrder findMusicGroupApplyOrderByStatus(@Param("userId") Integer userId, @Param("musicGroupId") String musicGroupId,
+                                                         @Param("status") DealStatusEnum status);
+
+    /**
+     * 根据订单号查询订单
+     *
+     * @param orderNo
+     * @return
+     */
+    StudentPaymentOrder findOrderByOrderNo(@Param("orderNo") String orderNo);
+
+    /**
+     * 查询指定交易状态的乐团报名的订单信息
+     *
+     * @param musicGroupId 乐团编号
+     * @param type         订单类型
+     * @param status       订单状态
+     * @return
+     */
+    List<StudentPaymentOrder> queryByDealStatus(@Param("musicGroupId") String musicGroupId, @Param("type") OrderTypeEnum type,
+                                                @Param("status") DealStatusEnum status);
+
+    /**
+     * 查找支付成功和支付中订单
+     * @return
+     */
+    int findPayOrderNum();
 }

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

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.dal.dao;
 
+import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dto.StudentApplyDetailDto;
 import com.ym.mec.biz.dal.dto.StudentFeeDto;
 import com.ym.mec.biz.dal.dto.StudentInfo;
@@ -86,4 +87,21 @@ public interface StudentRegistrationDao extends BaseDAO<Long, StudentRegistratio
 	 * @return
 	 */
 	StudentRegistration queryByUserIdAndMusicGroupId(@Param("userId") Integer userId, @Param("musicGroupId") String musicGroupId);
+
+
+	/**
+	 * 查询手机是否已注册
+	 *
+	 * @param musicGroupId
+	 * @param parentsPhone
+	 * @return
+	 */
+	StudentRegistration getByPhoneAndMusicGroupId(@Param("musicGroupId") String musicGroupId, @Param("parentsPhone") String parentsPhone);
+
+	/**
+	 * 查询用户是否存在
+	 * @param phone
+	 * @return
+	 */
+	SysUser getSysUserByPhone(String phone);
 }

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SysAccountDao.java

@@ -2,8 +2,19 @@ package com.ym.mec.biz.dal.dao;
 
 import com.ym.mec.biz.dal.entity.SysAccount;
 import com.ym.mec.common.dal.BaseDAO;
+import org.apache.ibatis.annotations.Param;
+
+import java.math.BigDecimal;
 
 public interface SysAccountDao extends BaseDAO<Integer, SysAccount> {
 
     int updateByPrimaryKey(SysAccount record);
+
+    /**
+     * 获取一个私户
+     *
+     * @param amount
+     * @return
+     */
+    SysAccount getPerAccount(@Param("amount") BigDecimal amount);
 }

+ 0 - 28
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/StudentRegistration.java

@@ -125,18 +125,6 @@ public class StudentRegistration {
     @ApiModelProperty(value = "班级id", hidden = true)
     private Integer ClassGroupId;
 
-    /**
-     * 最后缴费日期
-     */
-    @ApiModelProperty(value = "最后缴费日期", hidden = true)
-    private java.util.Date lastPaymentDate;
-
-    /**
-     * 预计下次缴费日期
-     */
-    @ApiModelProperty(value = "预计下次缴费日期", hidden = true)
-    private java.util.Date nextPaymentDate;
-
     public Integer getActualSubjectId() {
         return actualSubjectId;
     }
@@ -265,22 +253,6 @@ public class StudentRegistration {
         return paymentStatus;
     }
 
-    public void setLastPaymentDate(java.util.Date lastPaymentDate) {
-        this.lastPaymentDate = lastPaymentDate;
-    }
-
-    public java.util.Date getLastPaymentDate() {
-        return this.lastPaymentDate;
-    }
-
-    public void setNextPaymentDate(java.util.Date nextPaymentDate) {
-        this.nextPaymentDate = nextPaymentDate;
-    }
-
-    public java.util.Date getNextPaymentDate() {
-        return this.nextPaymentDate;
-    }
-
     public Integer getClassGroupId() {
         return ClassGroupId;
     }

+ 26 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/PaymentChannelEnum.java

@@ -0,0 +1,26 @@
+package com.ym.mec.biz.dal.enums;
+
+import com.ym.mec.common.enums.BaseEnum;
+
+public enum PaymentChannelEnum implements BaseEnum<String, PaymentChannelEnum> {
+	YQPAY("YQPAY", "易乾"), UNIONPAY("UNIONPAY", "银联");
+
+	private String code;
+
+	private String desc;
+
+	private PaymentChannelEnum(String code, String desc) {
+		this.code = code;
+		this.desc = desc;
+	}
+
+	@Override
+	public String getCode() {
+		return code;
+	}
+
+	public String getDesc() {
+		return desc;
+	}
+
+}

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

@@ -35,4 +35,9 @@ public interface StudentPaymentOrderService extends BaseService<Long, StudentPay
 	StudentPaymentOrder findOrderByOrderNo(String orderNo);
 
 
+	/**
+	 * 查找支付成功和支付中订单
+	 * @return
+	 */
+	int findPayOrderNum();
 }

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

@@ -101,4 +101,12 @@ public interface StudentRegistrationService extends BaseService<Long, StudentReg
 	 * @return
 	 */
 	StudentRegistration queryByUserIdAndMusicGroupId(Integer userId, String musicGroupId);
+
+	/**
+	 * 根据乐团id,手机查询乐团注册信息
+	 * @param musicGroupId
+	 * @param parentsPhone
+	 * @return
+	 */
+	StudentRegistration getByPhoneAndMusicGroupId(String musicGroupId, String parentsPhone);
 }

+ 18 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/SysAccountService.java

@@ -0,0 +1,18 @@
+package com.ym.mec.biz.service;
+
+import com.ym.mec.biz.dal.entity.SysAccount;
+import com.ym.mec.biz.dal.entity.SysArea;
+import com.ym.mec.common.service.BaseService;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+public interface SysAccountService extends BaseService<Integer, SysAccount> {
+
+    /**
+     * 获取一个私户
+     * @return
+     */
+    SysAccount getPerAccount(BigDecimal amount);
+
+}

+ 26 - 18
mec-biz/src/main/java/com/ym/mec/biz/service/impl/PayServiceImpl.java

@@ -1,7 +1,10 @@
 package com.ym.mec.biz.service.impl;
 
 
+import com.ym.mec.biz.dal.entity.SysAccount;
 import com.ym.mec.biz.service.PayService;
+import com.ym.mec.biz.service.StudentPaymentOrderService;
+import com.ym.mec.biz.service.SysAccountService;
 import com.ym.mec.thirdparty.union.UnionPay;
 import com.ym.mec.thirdparty.union.UnionPayFeignService;
 import com.ym.mec.thirdparty.yqpay.YqPayUtil;
@@ -19,6 +22,10 @@ public class PayServiceImpl implements PayService {
 
     @Autowired
     private UnionPayFeignService unionPayFeignService;
+    @Autowired
+    private StudentPaymentOrderService studentPaymentOrderService;
+    @Autowired
+    private SysAccountService sysAccountService;
 
 
     /**
@@ -34,29 +41,30 @@ public class PayServiceImpl implements PayService {
      * @throws Exception
      */
     public Map getPayMap(BigDecimal amount, String orderNo, String notifyUrl, String returnUrl, String orderSubject, String orderBody) throws Exception {
-        String routingMerNo = "006718";
-
-        //支付通道决策()
-
-        //易乾支付
-        return YqPayUtil.getPayMap(amount, orderNo, notifyUrl, returnUrl, orderSubject, orderBody, routingMerNo);
-
-       // return UnionPay.getPayMap(amount, orderNo, notifyUrl, returnUrl, orderSubject);
-
+        //支付通道决策
+        SysAccount routingAccount = getRoutingAccount(amount);
+        if (routingAccount != null) {
+            //易乾支付
+            return YqPayUtil.getPayMap(amount, orderNo, notifyUrl, returnUrl, orderSubject, orderBody, routingAccount.getMerNo());
+        } else {
+            return UnionPay.getPayMap(amount, orderNo, notifyUrl, returnUrl, orderSubject);
+        }
     }
 
     public Map<String, Object> query(String orderNo) throws Exception {
         return new UnionPay(unionPayFeignService).query(orderNo);
     }
 
-//    public Account getRoutingAccount(int branchId, BigDecimal money) {
-//        int payOrderNums = orderService.getPayOrderNums(); //获取支付中和成功的订单数
-//        //分佣账户(1、每10笔,前四笔收入私户 2、私户每个商户最多收款400万),进武汉商户
-//        int rem = (payOrderNums + 1) % 10;
-//        if (rem > 0 && rem <= 5) { //私人账户
-//            branchId = 0;
-//        }
-//        return this.getAccountByBranchId(branchId, money);
-//    }
+
+    private SysAccount getRoutingAccount(BigDecimal money) {
+        SysAccount routingAccount = null;
+        int payOrderNums = studentPaymentOrderService.findPayOrderNum(); //获取支付中和成功的订单数
+        //分佣账户(1、每10笔,前四笔收入私户)
+        int rem = (payOrderNums + 1) % 10;
+        if (rem > 0 && rem <= 5) { //私人账户
+            routingAccount = sysAccountService.getPerAccount(money);
+        }
+        return routingAccount;
+    }
 
 }

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

@@ -40,4 +40,9 @@ public class StudentPaymentOrderServiceImpl extends BaseServiceImpl<Long, Studen
         return studentPaymentOrderDao.findOrderByOrderNo(orderNo);
     }
 
+    @Override
+    public int findPayOrderNum() {
+        return studentPaymentOrderDao.findPayOrderNum();
+    }
+
 }

+ 12 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -9,6 +9,7 @@ import java.util.Map;
 
 import javax.annotation.Resource;
 
+import com.ym.mec.biz.dal.dao.TeacherDao;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -51,6 +52,8 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
     private StudentPaymentOrderService studentPaymentOrderService;
     @Autowired
     private StudentPaymentOrderDetailService studentPaymentOrderDetailService;
+    @Autowired
+    private TeacherDao teacherDao;
 
     @Override
     public BaseDAO<Long, StudentRegistration> getDAO() {
@@ -118,7 +121,8 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
     @Transactional(rollbackFor = Exception.class)
     public StudentRegistration addStudent(StudentRegistration studentRegistration) {
         Date date = new Date();
-        SysUser sysUser = sysUserFeignService.queryUserByMobile(studentRegistration.getParentsPhone());
+        int userId = 0;
+        SysUser sysUser = studentRegistrationDao.getSysUserByPhone(studentRegistration.getParentsPhone());
         if (sysUser == null) {
             sysUser = new SysUser();
             sysUser.setPhone(studentRegistration.getParentsPhone());
@@ -131,7 +135,8 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
             sysUser.setOrganId(studentRegistration.getOrganId());
             sysUser.setRealName(studentRegistration.getName());
             sysUser.setIdCardNo(studentRegistration.getIdCardNo());
-            sysUserFeignService.addUser(sysUser);
+            teacherDao.addSysUser(sysUser);
+            userId = sysUser.getId();
         }
         studentRegistration.setUserId(sysUser.getId());
         studentRegistrationDao.insert(studentRegistration);
@@ -227,4 +232,9 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
 		return studentRegistrationDao.queryByUserIdAndMusicGroupId(userId, musicGroupId);
 	}
 
+    @Override
+    public StudentRegistration getByPhoneAndMusicGroupId(String musicGroupId, String parentsPhone) {
+        return studentRegistrationDao.getByPhoneAndMusicGroupId(musicGroupId, parentsPhone);
+    }
+
 }

+ 31 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysAccountServiceImpl.java

@@ -0,0 +1,31 @@
+package com.ym.mec.biz.service.impl;
+
+import com.ym.mec.biz.dal.dao.SysAccountDao;
+import com.ym.mec.biz.dal.entity.SysAccount;
+import com.ym.mec.biz.dal.entity.SysArea;
+import com.ym.mec.biz.service.SysAccountService;
+import com.ym.mec.common.dal.BaseDAO;
+import com.ym.mec.common.service.impl.BaseServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+@Service
+public class SysAccountServiceImpl extends BaseServiceImpl<Integer, SysAccount> implements SysAccountService {
+	
+	@Autowired
+	private SysAccountDao sysAccountDao;
+
+	@Override
+	public BaseDAO<Integer, SysAccount> getDAO() {
+		return sysAccountDao;
+	}
+
+	@Override
+	public SysAccount getPerAccount(BigDecimal money) {
+		return sysAccountDao.getPerAccount(money);
+	}
+
+}

+ 36 - 19
mec-biz/src/main/resources/config/mybatis/StudentPaymentOrderMapper.xml

@@ -24,7 +24,7 @@
         <result column="music_group_id_" property="musicGroupId"/>
         <result column="class_group_id_" property="classGroupId"/>
     </resultMap>
-    
+
     <resultMap type="com.ym.mec.biz.dal.entity.Goods" id="Goods">
         <result column="id_" property="id"/>
         <result column="goods_category_id_" property="goodsCategoryId"/>
@@ -52,13 +52,15 @@
 
     <!-- 根据主键查询一条记录 -->
     <select id="get" resultMap="StudentPaymentOrder">
-		SELECT * FROM student_payment_order WHERE id_ = #{id} 
-	</select>
+        SELECT * FROM student_payment_order WHERE id_ = #{id}
+    </select>
 
     <!-- 全查询 -->
     <select id="findAll" resultMap="StudentPaymentOrder">
-		SELECT * FROM student_payment_order ORDER BY id_
-	</select>
+        SELECT *
+        FROM student_payment_order
+        ORDER BY id_
+    </select>
 
     <!-- 向数据库增加一条记录 -->
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.StudentPaymentOrder" useGeneratedKeys="true"
@@ -125,8 +127,8 @@
 
     <!-- 根据主键删除一条记录 -->
     <delete id="delete">
-		DELETE FROM student_payment_order WHERE id_ = #{id} 
-	</delete>
+        DELETE FROM student_payment_order WHERE id_ = #{id}
+    </delete>
 
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="StudentPaymentOrder" parameterType="map">
@@ -136,31 +138,46 @@
 
     <!-- 查询当前表的总记录数 -->
     <select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM student_payment_order
-	</select>
-	
+        SELECT COUNT(*)
+        FROM student_payment_order
+    </select>
+
     <select id="queryApplyGoodsList" resultMap="Goods" parameterType="map">
-		select g.* from goods g where g.id_ in (SELECT spod.goods_id_list_ FROM student_payment_order spo left join student_payment_order_detail spod on spo.id_ = spod.payment_order_id_ where spo.music_group_id_ = #{musicGroupId} and spo.type_ = 'APPLY' and spod.type_ = #{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler})
-	</select>
+        select g.* from goods g where g.id_ in (SELECT spod.goods_id_list_ FROM student_payment_order spo left join
+        student_payment_order_detail spod on spo.id_ = spod.payment_order_id_ where spo.music_group_id_ =
+        #{musicGroupId} and spo.type_ = 'APPLY' and spod.type_ =
+        #{type,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler})
+    </select>
     <select id="findByStudentVipGroup" resultMap="StudentPaymentOrder">
         SELECT
-            spo.*
+        spo.*
         FROM
-            student_vip_group_payment svgp
-            LEFT JOIN student_payment_order spo ON svgp.student_payment_order_id_=spo.id_
-            WHERE svgp.user_id_=#{userId} AND svgp.vip_group_id_=#{vipGroupId}
+        student_vip_group_payment svgp
+        LEFT JOIN student_payment_order spo ON svgp.student_payment_order_id_=spo.id_
+        WHERE svgp.user_id_=#{userId} AND svgp.vip_group_id_=#{vipGroupId}
     </select>
     <!-- 查询报名订单 -->
     <select id="findMusicGroupApplyOrderByStatus" resultMap="StudentPaymentOrder">
-        SELECT * FROM student_payment_order WHERE music_group_id_= #{musicGroupId} AND user_id_=#{userId} AND type_ = 'APPLY' AND status_ = #{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+        SELECT * FROM student_payment_order WHERE music_group_id_= #{musicGroupId} AND user_id_=#{userId} AND type_ =
+        'APPLY' AND status_ = #{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
     </select>
 
     <!-- 根据订单号查询订单 -->
     <select id="findOrderByOrderNo" resultMap="StudentPaymentOrder">
         SELECT * FROM student_payment_order WHERE order_no_ = #{orderNo}
     </select>
-    
+
     <select id="queryByDealStatus" resultMap="StudentPaymentOrder" parameterType="map">
-        SELECT * FROM student_payment_order WHERE music_group_id_= #{musicGroupId} AND user_id_=#{userId} AND type_ = #{type} AND status_ = #{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+        SELECT * FROM student_payment_order WHERE music_group_id_= #{musicGroupId} AND user_id_=#{userId} AND type_ =
+        #{type} AND status_ = #{status,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+    </select>
+
+    <!-- 查找支付成功和支付中订单 -->
+    <select id="findPayOrderNum" resultType="int">
+        <![CDATA[
+        SELECT COUNT(*)
+        FROM student_payment_order
+        WHERE status_ <= 2
+        ]]>
     </select>
 </mapper>

+ 34 - 11
mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml

@@ -77,9 +77,9 @@
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.StudentRegistration" useGeneratedKeys="true"
             keyColumn="id" keyProperty="id">
         INSERT INTO student_registration
-        (parents_phone_,id_,user_id_,name_,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_,actual_subject_id_)
+        (parents_phone_,id_,user_id_,name_,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_,actual_subject_id_)
         VALUES(#{parentsPhone},#{id},#{userId},#{name},#{musicGroupId},#{currentGrade},#{currentClass},#{subjectId},#{isAllowAdjust,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{kitPurchaseMethod,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-        #{remark},now(),now(),#{parentsName},#{parentsCompany},#{paymentStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{lastPaymentDate},#{nextPaymentDate},#{subjectId})
+        #{remark},now(),now(),#{parentsName},#{parentsCompany},#{paymentStatus,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},#{subjectId})
     </insert>
 
     <!-- 根据主键查询一条记录 -->
@@ -92,15 +92,6 @@
             <if test="subjectId != null">
                 subject_id_ = #{subjectId},
             </if>
-            <if test="nextPaymentDate != null">
-                next_payment_date_ = #{nextPaymentDate},
-            </if>
-            <if test="currentGrade != null">
-                current_grade_ = #{currentGrade},
-            </if>
-            <if test="lastPaymentDate != null">
-                last_payment_date_ = #{lastPaymentDate},
-            </if>
             <if test="currentClass != null">
                 current_class_ = #{currentClass},
             </if>
@@ -256,4 +247,36 @@
     <select id="queryByUserIdAndMusicGroupId" resultMap="StudentRegistration" parameterType="map">
     	select * from student_registration where music_group_id_ = #{musicGroupId} and user_id_ = #{userId}
     </select>
+
+    <!-- 根据乐团编号和手机号查询注册乐团注册信息-->
+    <select id="getByPhoneAndMusicGroupId" resultMap="StudentRegistration">
+        SELECT * FROM student_registration WHERE music_group_id_=#{musicGroupId} AND parents_phone_ = #{parentsPhone}
+    </select>
+
+    <resultMap type="com.ym.mec.auth.api.entity.SysUser" id="FindSysUser">
+        <result column="id_" property="id"/>
+        <result column="username_" property="username"/>
+        <result column="password_" property="password"/>
+        <result column="salt_" property="salt"/>
+        <result column="phone_" property="phone"/>
+        <result column="avatar_" property="avatar"/>
+        <result column="organ_id_" property="organId"/>
+        <result column="create_time_" property="createTime"/>
+        <result column="update_time_" property="updateTime"/>
+        <result column="lock_flag_" property="lockFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="del_flag_" property="delFlag" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="wx_openid_" property="wxOpenid"/>
+        <result column="qq_openid_" property="qqOpenid"/>
+        <result column="user_type_" property="userType" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler"/>
+        <result column="gender_" property="gender"/>
+        <result column="nation_" property="nation"/>
+        <result column="birthdate_" property="birthdate"/>
+        <result column="email_" property="email"/>
+        <result column="im_token_" property="imToken"/>
+        <result column="id_card_no_" property="idCardNo"/>
+        <result column="wechat_id_" property="wechatId"/>
+    </resultMap>
+    <select id="getSysUserByPhone" resultMap="FindSysUser">
+        SELECT * FROM sys_user WHERE phone_ = #{phone}
+    </select>
 </mapper>

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

@@ -107,4 +107,8 @@
     where id_ = #{id,jdbcType=INTEGER}
   </update>
   <select id="find"></select>
+  <!-- 获取一个私户账户 -->
+  <select id="getPerAccount" resultMap="SysAccount">
+    SELECT * FROM sys_account WHERE channel_type_ = 'YQPAY' AND channel_type_ = 'PER'
+  </select>
 </mapper>

+ 1 - 1
mec-student/src/main/java/com/ym/mec/student/config/ResourceServerConfig.java

@@ -22,7 +22,7 @@ public class ResourceServerConfig extends ResourceServerConfigurerAdapter {
 
 	@Override
 	public void configure(HttpSecurity http) throws Exception {
-		http.csrf().disable().authorizeRequests().antMatchers("/v2/api-docs", "/register/findSubByMusicGroupId", "/register/add","musicGroup/getSubjectGoodsAndInfo","/musicGroup/test").permitAll().anyRequest().authenticated().and().httpBasic();
+		http.csrf().disable().authorizeRequests().antMatchers("/v2/api-docs", "/register/getMusicGroupRegInfo", "/register/add","musicGroup/getSubjectGoodsAndInfo","/musicGroup/test").permitAll().anyRequest().authenticated().and().httpBasic();
 	}
 
 	@Override

+ 12 - 11
mec-student/src/main/java/com/ym/mec/student/controller/MusicGroupController.java

@@ -275,17 +275,18 @@ public class MusicGroupController extends BaseController {
 
     @GetMapping("/test")
     public Object test() throws Exception {
-
-        Map query = payService.query("1017201910111756231647562047");
-
-
-        System.out.println(query);
-
-        IdWorker idWorker = new IdWorker(0, 0);
-        String orderNo = "1017" + idWorker.nextId();
-        BigDecimal amount = new BigDecimal("200");
-        Map map = payService.getPayMap(amount, orderNo, "https://pay.dayaedu.com/notify", "https://baodiu.com", "测试订单", "测试订单");
-        return succeed(map);
+        SysUser sysUser = sysUserFeignService.queryUserByMobile("15829292961");
+
+
+//        Map query = payService.query("1017201910111756231647562047");
+//
+//        System.out.println(query);
+//
+//        IdWorker idWorker = new IdWorker(0, 0);
+//        String orderNo = "1017" + idWorker.nextId();
+//        BigDecimal amount = new BigDecimal("200");
+//        Map map = payService.getPayMap(amount, orderNo, "https://pay.dayaedu.com/notify", "https://baodiu.com", "测试订单", "测试订单");
+       return succeed(sysUser);
     }
 
     @ApiOperation(value = "订单状态查询")

+ 9 - 2
mec-student/src/main/java/com/ym/mec/student/controller/MusicGroupRegisterController.java

@@ -42,8 +42,15 @@ public class MusicGroupRegisterController extends BaseController {
 
     @ApiOperation(value = "新增学生报名信息")
     @PostMapping("/add")
-    public Object add(StudentRegistration studentRegistration) {
-        MusicGroup musicGroup = musicGroupService.get(studentRegistration.getMusicGroupId().toString());
+    public HttpResponseResult add(@RequestBody StudentRegistration studentRegistration) {
+        MusicGroup musicGroup = musicGroupService.get(studentRegistration.getMusicGroupId());
+        if (musicGroup == null) {
+            return failed("乐团信息不存在");
+        }
+        StudentRegistration hasReg = studentRegistrationService.getByPhoneAndMusicGroupId(studentRegistration.getMusicGroupId(), studentRegistration.getParentsPhone());
+        if (hasReg != null) {
+            return failed("该乐团您已注册");
+        }
         studentRegistration.setOrganId(musicGroup.getOrganId());
         return succeed(studentRegistrationService.addStudent(studentRegistration));
     }