|
@@ -2,6 +2,7 @@ package com.bofeng.service;
|
|
|
|
|
|
import com.baomidou.mybatisplus.toolkit.IdWorker;
|
|
|
import com.bofeng.dao.BuyMapper;
|
|
|
+import com.bofeng.dao.JmTuangouDao;
|
|
|
import com.bofeng.entity.Buy;
|
|
|
import com.bofeng.entity.JmTuangou;
|
|
|
import org.joda.time.DateTime;
|
|
@@ -10,6 +11,7 @@ import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Propagation;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
|
|
|
@Service
|
|
@@ -19,6 +21,9 @@ public class BuyService {
|
|
|
@Autowired
|
|
|
private BuyMapper buyMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private JmTuangouDao jmTuangouDao;
|
|
|
+
|
|
|
@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
|
|
|
public int buyGroup(Buy buy) {
|
|
|
Buy buy1 = buyMapper.selectBuyOne(buy.getUserId(), buy.getJmId());
|
|
@@ -33,11 +38,15 @@ public class BuyService {
|
|
|
return buyMapper.insert(buy);
|
|
|
}
|
|
|
|
|
|
+ @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
|
|
|
public List<JmTuangou> group(Long userId) {
|
|
|
+ updateStatus();
|
|
|
return buyMapper.group(userId);
|
|
|
}
|
|
|
|
|
|
+ @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
|
|
|
public List<Buy> MyGroup(Long userId) {
|
|
|
+ updateStatus();
|
|
|
return buyMapper.MyGroup(userId);
|
|
|
}
|
|
|
|
|
@@ -54,7 +63,7 @@ public class BuyService {
|
|
|
public int buyBack(Buy buy) {
|
|
|
//在该套餐截止日期之前 并且是在团状态的才能撤单
|
|
|
JmTuangou jmTuangou = buyMapper.selectGroup(buy.getUserId(), buy.getJmId());
|
|
|
- if (jmTuangou.getTgEndTime().getTime() >= new DateTime().getMillis() && jmTuangou.getTgStatus() == 1) {
|
|
|
+ if (jmTuangou.getTgEndTime().getTime() > new DateTime().getMillis() && jmTuangou.getTgStatus() == 1) {
|
|
|
Buy buy1 = buyMapper.selectBuyOne(buy.getUserId(), buy.getJmId());
|
|
|
buy.setBuyId(buy1.getBuyId());
|
|
|
buy.setBuyStatus(2);//撤单
|
|
@@ -67,4 +76,33 @@ public class BuyService {
|
|
|
public Buy status(Buy buy) {
|
|
|
return buyMapper.status(buy.getJmId());
|
|
|
}
|
|
|
+
|
|
|
+ //截止日期状态的更改
|
|
|
+ @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
|
|
|
+ public int updateStatus() {
|
|
|
+ List<JmTuangou> jmTuangous = jmTuangouDao.selectAll();
|
|
|
+ if (jmTuangous != null && jmTuangous.size() > 0) {
|
|
|
+ //已经到截止时间
|
|
|
+ for (JmTuangou list : jmTuangous)
|
|
|
+ if (list.getTgEndTime().getTime() < new DateTime().getMillis()) {
|
|
|
+
|
|
|
+ // 团购数量 最小起订量
|
|
|
+ List<Buy> buys = buyMapper.selectCountNum(list.getJmId());
|
|
|
+ if (buys != null && buys.size() > 0) {
|
|
|
+ for (Buy v : buys) { //最小起订量
|
|
|
+ if (v.getCount().intValue() < list.getTgMinNum().intValue()) {
|
|
|
+ jmTuangouDao.updateStatusByJmId(list.getJmId(), 4L);//取消
|
|
|
+ } else {
|
|
|
+ jmTuangouDao.updateStatusByJmId(list.getJmId(), 2L);//发货
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ jmTuangouDao.updateStatusByJmId(list.getJmId(), 4L);//取消
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
+
|
|
|
}
|