Browse Source

add 乐器置换支付接口

周箭河 4 năm trước cách đây
mục cha
commit
82209872e3

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/ReplacementInstrumentActivityDao.java

@@ -15,9 +15,12 @@ public interface ReplacementInstrumentActivityDao extends BaseDAO<Integer, Repla
     ReplacementInstrumentActivity findByUserId(Integer userId);
 
     List<ReplacementInstrumentActivityStatDto> queryReplacements(Map<String, Object> params);
+
     int countReplacements(Map<String, Object> params);
 
     ReplacementInstrumentActivityStatHead countReplacementsInfo(Integer cooperationOrganId);
 
     int openPay(@Param("cooperationOrganId") Integer cooperationOrganId);
+
+    ReplacementInstrumentActivity getLock(@Param("id") Integer id);
 }

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

@@ -128,7 +128,7 @@ public class ReplacementInstrumentActivityServiceImpl extends BaseServiceImpl<In
 
     @Override
     public Map pay(ReplacementPayDto replacementPayDto) throws Exception {
-        ReplacementInstrumentActivity replacementInstrumentActivity = replacementInstrumentActivityDao.get(replacementPayDto.getId());
+        ReplacementInstrumentActivity replacementInstrumentActivity = replacementInstrumentActivityDao.getLock(replacementPayDto.getId());
         if (replacementInstrumentActivity == null) {
             throw new BizException("乐器置换不存在,请核查");
         }
@@ -182,7 +182,9 @@ public class ReplacementInstrumentActivityServiceImpl extends BaseServiceImpl<In
         studentPaymentOrder.setUpdateTime(nowDate);
         studentPaymentOrderService.insert(studentPaymentOrder);
         //修改支付状态
-
+        replacementInstrumentActivity.setPayStatus(1);
+        replacementInstrumentActivity.setUpdateTime(nowDate);
+        replacementInstrumentActivityDao.update(replacementInstrumentActivity);
 
         studentPaymentOrder.setVersion(0);
         if (amount.compareTo(BigDecimal.ZERO) == 0) {
@@ -232,7 +234,7 @@ public class ReplacementInstrumentActivityServiceImpl extends BaseServiceImpl<In
             throw new BizException("订单更新失败");
         }
         //更新维修单信息
-        ReplacementInstrumentActivity replacementInstrumentActivity = get(Integer.parseInt(studentPaymentOrder.getMusicGroupId()));
+        ReplacementInstrumentActivity replacementInstrumentActivity = replacementInstrumentActivityDao.getLock(Integer.parseInt(studentPaymentOrder.getMusicGroupId()));
         if (replacementInstrumentActivity == null) {
             throw new BizException("置换信息不存在");
         }

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

@@ -189,4 +189,8 @@
         WHERE cooperation_organ_id_ = #{cooperationOrganId}
           AND open_flag_ = 0
     </update>
+
+    <select id="getLock" resultMap="ReplacementInstrumentActivity">
+        SELECT * FROM replacement_instrument_activity WHERE id_ = #{id} FOR UPDATE
+    </select>
 </mapper>