From 8257c0333f96aeedecef1c205b42802dbf1c5930 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 25 五月 2021 13:30:22 +0800
Subject: [PATCH] 订单修改

---
 service-vip/src/main/java/com/ks/vip/service/remote/VipOrderServiceImpl.java |   39 +++++++++++++++++++++++++++++----------
 1 files changed, 29 insertions(+), 10 deletions(-)

diff --git a/service-vip/src/main/java/com/ks/vip/service/remote/VipOrderServiceImpl.java b/service-vip/src/main/java/com/ks/vip/service/remote/VipOrderServiceImpl.java
index 94383c7..b46557d 100644
--- a/service-vip/src/main/java/com/ks/vip/service/remote/VipOrderServiceImpl.java
+++ b/service-vip/src/main/java/com/ks/vip/service/remote/VipOrderServiceImpl.java
@@ -14,9 +14,12 @@
 import com.ks.vip.service.VipOrederService;
 import org.apache.dubbo.config.annotation.Service;
 import org.springframework.transaction.annotation.Transactional;
+import org.yeshi.utils.DateUtil;
 import org.yeshi.utils.StringUtil;
+import org.yeshi.utils.TimeUtil;
 
 import javax.annotation.Resource;
+import java.text.ParseException;
 import java.util.Date;
 import java.util.List;
 
@@ -34,12 +37,12 @@
 
 
     @Override
-    public void insertSelective(VipOrder t){
+    public void insertSelective(VipOrder t) {
         vipOrderMapper.insertSelective(t);
     }
 
     @Override
-    public void updateByPrimaryKeySelective(VipOrder t){
+    public void updateByPrimaryKeySelective(VipOrder t) {
         vipOrderMapper.updateByPrimaryKeySelective(t);
     }
 
@@ -73,28 +76,44 @@
     }
 
 
-
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public void addOrderByWatchVideo(String uid, Long gradeId, Integer validDays) throws VipOrderException {
-        if(StringUtil.isNullOrEmpty(uid)){
+    public void addOrderByWatchVideo(String uid, Long gradeId, Integer hour) throws VipOrderException {
+        if (StringUtil.isNullOrEmpty(uid)) {
             throw new VipOrderException(1, "鐢ㄦ埛ID涓嶈兘涓虹┖");
         }
-        if(gradeId == null){
+        if (gradeId == null) {
             throw new VipOrderException(1, "绛夌骇ID涓嶈兘涓虹┖");
         }
-        if(validDays == null || validDays.longValue() <= 0){
-            throw new VipOrderException(1, "鏈夋晥澶╂暟涓嶈兘涓虹┖");
+        if (hour == null || hour.longValue() <= 0) {
+            throw new VipOrderException(1, "鏈夋晥灏忔椂鏁颁笉鑳戒负绌�");
         }
+        if (!canAddOrderByWatchVideo(uid)) {
+            throw new VipOrderException(1, "浠婃棩娆℃暟宸茬粡鐢ㄥ畬");
+        }
+
 
         // 鎻掑叆璁㈠崟淇℃伅  鍞竴鎬у鐞員ODO
         VipOrder newOrder = new VipOrder();
         newOrder.setUid(uid);
-        newOrder.setType(OrderTypeEnum.watchVideo.name());
+        newOrder.setType(OrderTypeEnum.watchVideo);
         newOrder.setCreateTime(new Date());
         vipOrderMapper.insertSelective(newOrder);
 
         // 鏇存柊绛夌骇
-        vipCenterService.saveVipCenter(uid, gradeId, validDays,newOrder.getId() );
+        vipCenterService.saveVipCenter(uid, gradeId, hour, newOrder.getId());
+    }
+
+    @Override
+    public boolean canAddOrderByWatchVideo(String uid) {
+        long now = System.currentTimeMillis();
+        VipOrderQuery vipOrderQuery = new VipOrderQuery();
+        vipOrderQuery.uid = uid;
+        vipOrderQuery.type = OrderTypeEnum.watchVideo;
+        vipOrderQuery.minCreateTime = new Date(TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(now, "yyyy-MM-dd"), "yyyy-MM-dd"));
+        vipOrderQuery.maxCreateTime = DateUtil.plusDayDate(1, vipOrderQuery.minCreateTime);
+        long count = vipOrderMapper.count(vipOrderQuery);
+        //TODO 鍐欏叆閰嶇疆淇℃伅
+        return count < 5;
     }
 }

--
Gitblit v1.8.0