Browse Source

Merge remote-tracking branch 'origin/master'

liweifan 3 years ago
parent
commit
2e0a8850ef

+ 1 - 0
cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/dao/PortalOrderDao.java

@@ -37,4 +37,5 @@ public interface PortalOrderDao {
      */
     int releaseSkuStockLock(@Param("itemList") List<OmsOrderItem> orderItemList);
 
+    int releaseProductStockLock(@Param("itemList") List<OmsOrderItem> orderItemList);
 }

+ 1 - 0
cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/service/OmsPortalOrderService.java

@@ -105,6 +105,7 @@ public interface OmsPortalOrderService {
      *
      * @param data
      */
+    @Transactional
     void closePaymentCallBack(PaymentCallBack data);
 
 

+ 4 - 0
cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/service/UserOrderPaymentService.java

@@ -4,6 +4,7 @@ import com.yonge.cooleshow.mbg.model.UserOrderPayment;
 import com.yonge.toolset.payment.base.enums.PayChannelEnum;
 import com.yonge.toolset.payment.base.enums.TradeStatusEnum;
 import com.yonge.toolset.payment.base.model.callback.PaymentCallBack;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 
@@ -28,8 +29,10 @@ public interface UserOrderPaymentService {
      *
      * @param userOrderPayment
      */
+    @Transactional
     void save(UserOrderPayment userOrderPayment);
 
+    @Transactional
     void saveOrUpdate(UserOrderPayment userOrderPayment);
 
     UserOrderPayment getByOrderNo(String orderSn, PayChannelEnum payChannel, TradeStatusEnum pending);
@@ -48,6 +51,7 @@ public interface UserOrderPaymentService {
      * @param message 信息
      * @param data
      */
+    @Transactional
     void closePayment(String orderSn, String message, PaymentCallBack data);
 
     /**

+ 4 - 3
cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/service/impl/OmsPortalOrderServiceImpl.java

@@ -375,6 +375,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
             //解除订单商品库存锁定
             if (!CollectionUtils.isEmpty(orderItemList)) {
                 portalOrderDao.releaseSkuStockLock(orderItemList);
+                portalOrderDao.releaseProductStockLock(orderItemList);
             }
             //修改优惠券使用状态
             updateCouponStatus(cancelOrder.getCouponId(), cancelOrder.getMemberId(), 0);
@@ -542,12 +543,12 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
         payment.setOrderDesc("酷乐秀商城订单编号-" + detail.getOrderSn());
 
         //封装订单详情
-        List<OrderDetil> orderDetils = new ArrayList<>();
+        List<OrderDetil> orderDetails = new ArrayList<>();
         for (OmsOrderItem orderDetailVo : detail.getOrderItemList()) {
-            orderDetils.add(new OrderDetil(orderDetailVo.getId().toString(), orderDetailVo.getProductName(),
+            orderDetails.add(new OrderDetil(orderDetailVo.getId().toString(), orderDetailVo.getProductName(),
                     orderDetailVo.getProductQuantity(), orderDetailVo.getRealAmount().toString()));
         }
-        payment.setOrderDetils(orderDetils);
+        payment.setOrderDetils(orderDetails);
         payment.setPayAmt(detail.getPayAmount().setScale(2, RoundingMode.HALF_UP).toString());
         payment.setDescription(payReq.getReason());
 

+ 15 - 0
cooleshow-mall/mall-portal/src/main/resources/config/mybatis/PortalOrderDao.xml

@@ -92,4 +92,19 @@
             #{item.productSkuId}
         </foreach>
     </update>
+
+    <update id="releaseProductStockLock">
+        UPDATE pms_product
+        SET
+        lock_stock = CASE id
+        <foreach collection="itemList" item="item">
+            WHEN #{item.productId} THEN lock_stock - #{item.productQuantity}
+        </foreach>
+        END
+        WHERE
+        id IN
+        <foreach collection="itemList" item="item" separator="," open="(" close=")">
+            #{item.productId}
+        </foreach>
+    </update>
 </mapper>

+ 11 - 6
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicSheetServiceImpl.java

@@ -326,6 +326,7 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao,MusicSheet>
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public boolean del(Long id) {
 
         MusicSheet musicSheet = super.getById(id);
@@ -347,6 +348,7 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao,MusicSheet>
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public boolean saveMusicSheet(MusicSheetDto musicSheetDto,Long userId) {
 
         if (musicSheetDto.getId() != null) {
@@ -590,6 +592,7 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao,MusicSheet>
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public void importExcel(List<ExcelDataReaderProperty<MusicSheetExport>> dataList, Long userId) {
 
         List<ErrMsg> errMsgList = new ArrayList<>();
@@ -597,7 +600,7 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao,MusicSheet>
         List<MusicSheetDto> musicSheetDtoList = new ArrayList<>();
         List<MusicTagVo> musicTagVoList = musicTagService.selectMusicTagTree();
         List<Subject> subjects = subjectService.subjectSelect();
-
+        Date date = new Date();
         for (ExcelDataReaderProperty<MusicSheetExport> readerProperty : dataList) {
             MusicSheetDto musicSheetDto = new MusicSheetDto();
             musicSheetDto.setUserId(userId);
@@ -609,11 +612,9 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao,MusicSheet>
             musicSheetDto.setDelFlag(false);
             musicSheetDto.setCreateBy(userId);
             musicSheetDto.setUpdateBy(userId);
-            musicSheetDto.setCreateTime(new Date());
-            musicSheetDto.setUpdateTime(new Date());
-            if(AudioTypeEnum.MIDI.getCode().equals(musicSheetDto.getAudioType().getCode())) {
-                musicSheetDto.setMp3Type(null);
-            }
+            musicSheetDto.setCreateTime(date);
+            musicSheetDto.setUpdateTime(date);
+
             String errMsg = readerProperty.getErrorMessage();
             if (!StringUtil.isEmpty(errMsg)) {
                 errMsgList.add(new ErrMsg(readerProperty.getRowIndex(), errMsg));
@@ -622,6 +623,10 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao,MusicSheet>
             MusicSheetExport sheetExport = readerProperty.getClazz();
             BeanUtils.copyProperties(sheetExport,musicSheetDto);
 
+            if(AudioTypeEnum.MIDI.getCode().equals(musicSheetDto.getAudioType().getCode())) {
+                musicSheetDto.setMp3Type(null);
+            }
+
             if (musicSheetDto.getAudioType().equals(AudioTypeEnum.MP3)) {
                 musicSheetDto.setUrl(musicSheetDto.getMidiUrl());
                 musicSheetDto.setMidiUrl("");