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