Ver código fonte

支付提交

小么熊🐻 2 anos atrás
pai
commit
e287308994

+ 9 - 2
nbjk-admin/src/main/java/com/miaxis/app/controller/wx/WxController.java

@@ -16,6 +16,7 @@ import com.miaxis.common.utils.uuid.CommonUtils;
 import com.miaxis.exam.domain.ExamInfo;
 import com.miaxis.exam.service.IExamInfoService;
 import com.miaxis.system.service.ISysDictDataService;
+import com.miaxis.vip.service.IVipUserExamService;
 import com.miaxis.wx.domain.WxOrder;
 import com.miaxis.wx.dto.WxOrderDTO;
 import com.miaxis.wx.service.IWxOrderService;
@@ -72,6 +73,9 @@ public class WxController extends BaseController {
     @Autowired
     private IExamInfoService examInfoService;
 
+    @Autowired
+    private IVipUserExamService vipUserExamService;
+
 
     @Value("${xcx.appid}")
     private String xcxAppid;
@@ -203,11 +207,14 @@ public class WxController extends BaseController {
     @ApiOperation("微信小程序支付下单")
     public Response<JSONObject> xcxPrepareOrder(@RequestBody WxOrderDTO wxOrderDTO) throws Exception{
 
+        UserInfo userInfo = SecurityUtils.getLoginUser().getStudent();
+        int count = vipUserExamService.getUserExamByUnionIdAndGoodsId(userInfo.getUnionId(),wxOrderDTO.getExamId());
+        if(count>0) {
+            throw new CustomException("您已购买过该考场,退回上个页面,重新进入。");
+        }
         ExamInfo examInfo = examInfoService.getById(wxOrderDTO.getExamId());
-
         //创建本地微信订单
         WxOrder order = new WxOrder();
-        UserInfo userInfo = SecurityUtils.getLoginUser().getStudent();
         String orderCode = getOrderCode(userInfo.getId());
         order.setGoodsId(wxOrderDTO.getExamId());
         order.setGoodsName(examInfo.getName());

+ 2 - 35
nbjk-service/src/main/java/com/miaxis/order/domain/OrderInfo.java

@@ -109,41 +109,8 @@ public class OrderInfo extends BaseBusinessEntity{
     @ApiModelProperty(value = "1:微信 2:支付宝")
     private Integer payType;
 
-    /** 是否分成 */
-    @Excel(name = "是否分成给驾校 0:不分成  1:分成")
-    @TableField("is_share")
-    @ApiModelProperty(value = "是否分成给驾校 0:不分成  1:分成")
-    private Integer isShare;
-
-    /** 地区编号 */
-    @Excel(name = "地区编号")
-    @TableField("dqbh")
-    @ApiModelProperty(value = "地区编号")
-    private String dqbh;
-
-    /** 地区编号 */
-    @Excel(name = "地区名称")
-    @TableField("dqmc")
-    @ApiModelProperty(value = "地区名称")
-    private String dqmc;
-
-    /** 驾校编号 */
-    @Excel(name = "驾校编号")
-    @TableField("school")
-    @ApiModelProperty(value = "驾校编号")
-    private String school;
-
-    /** 驾校名称 */
-    @Excel(name = "驾校名称")
-    @TableField("school_name")
-    @ApiModelProperty(value = "驾校名称")
-    private String schoolName;
-
-    /** 驾校提成 */
-    @Excel(name = "驾校提成")
-    @TableField("school_commission")
-    @ApiModelProperty(value = "驾校提成")
-    private Integer schoolCommission;
+
+
 
     /** 手机类型 1:苹果 2:安卓 */
     @Excel(name = "手机类型 1:苹果 2:安卓")

+ 4 - 0
nbjk-service/src/main/java/com/miaxis/vip/mapper/VipUserExamMapper.java

@@ -3,6 +3,7 @@ package com.miaxis.vip.mapper;
 import java.util.List;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.miaxis.vip.domain.VipUserExam;
+import com.miaxis.wx.dto.WxOrderDTO;
 import org.apache.ibatis.annotations.Param;
 
 /**
@@ -21,4 +22,7 @@ public interface VipUserExamMapper extends BaseMapper<VipUserExam> {
     public List<VipUserExam> selectVipUserExamList(VipUserExam vipUserExam);
 
     void deleteVipUserExamByUnionIdAndGoodsId(@Param("unionId")String unionId,@Param("goodsId") Long goodsId);
+
+    int getUserExamByUnionIdAndGoodsId(@Param("unionId")String unionId,@Param("goodsId") Long goodsId);
+
 }

+ 3 - 0
nbjk-service/src/main/java/com/miaxis/vip/service/IVipUserExamService.java

@@ -3,6 +3,7 @@ package com.miaxis.vip.service;
 import java.util.List;
 import com.miaxis.vip.domain.VipUserExam;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.miaxis.wx.dto.WxOrderDTO;
 
 /**
  * 考场会员Service接口
@@ -20,4 +21,6 @@ public interface IVipUserExamService extends IService<VipUserExam>{
     public List<VipUserExam> selectVipUserExamList(VipUserExam vipUserExam);
 
     void deleteVipUserExamByUnionIdAndGoodsId(String unionId, Long goodsId);
+
+    int getUserExamByUnionIdAndGoodsId(String unionId, Long goodsId);
 }

+ 6 - 0
nbjk-service/src/main/java/com/miaxis/vip/service/impl/VipUserExamServiceImpl.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.miaxis.vip.domain.VipUserExam;
 import com.miaxis.vip.mapper.VipUserExamMapper;
 import com.miaxis.vip.service.IVipUserExamService;
+import com.miaxis.wx.dto.WxOrderDTO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -35,4 +36,9 @@ public class VipUserExamServiceImpl extends ServiceImpl<VipUserExamMapper, VipUs
     public void deleteVipUserExamByUnionIdAndGoodsId(String unionId, Long goodsId) {
         vipUserExamMapper.deleteVipUserExamByUnionIdAndGoodsId(unionId,goodsId);
     }
+
+    @Override
+    public int getUserExamByUnionIdAndGoodsId(String unionId, Long goodsId) {
+        return vipUserExamMapper.getUserExamByUnionIdAndGoodsId(unionId,goodsId);
+    }
 }

+ 6 - 0
nbjk-service/src/main/resources/mapper/vip/VipUserExamMapper.xml

@@ -36,4 +36,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </delete>
 
 
+
+    <select id="getUserExamByByUnionIdAndGoodsId" resultType="int">
+        select from vip_user_exam where exam_id = #{goodsId} and union_id = #{unionId}
+    </select>
+
+
 </mapper>