Authored by wangshusheng

砍价状态

... ... @@ -2,9 +2,11 @@ package com.yoho.activity.queue.constant;
public class CutPriceConstant {
// 1:砍价中 2:已成功 3:已失效 4:已结束
// 1:砍价中 2:已成功 3:已失效(活动已过期、发起砍价24小时未成功、砍价成功后24小时内未下单)
public static final Integer CUT_STATUS_ONGOING = 1;
public static final Integer CUT_STATUS_SUCCESS = 2;
public static final Integer CUT_STATUS_EXPIRE = 3;
public static final Integer CUT_STATUS_END = 4;
}
... ...
... ... @@ -635,20 +635,33 @@ public class CutDownPriceServiceImpl implements ICutDownPriceService {
private void buildCutStatus(CutDownPriceActivityProductBo bo) {
int currentTime = DateUtils.getCurrentTimeSecond();
bo.setCurrentTime(currentTime);
// 活动进行中、已结束
if(currentTime>bo.getEndTime()){
// 活动已结束
bo.setCutStatus(CutPriceConstant.CUT_STATUS_END);
bo.setCutStatus(CutPriceConstant.CUT_STATUS_EXPIRE);
}else{
// 活动进行中
// 砍价成功、失败
if(bo.getHasJoinNum() > bo.getJoinNum()){
// 砍价已成功
bo.setCutStatus(CutPriceConstant.CUT_STATUS_SUCCESS);
// 是否24小时内下单
if(bo.getCanUseCount()>0 && (currentTime - bo.getCutTime()>TIME_24_HOUR)){//标识未下单
bo.setCutStatus(CutPriceConstant.CUT_STATUS_EXPIRE);
}else{
bo.setCutStatus(CutPriceConstant.CUT_STATUS_SUCCESS);
}
}else if(currentTime - bo.getCreateTime()>TIME_24_HOUR){
// 未成功,发起已超过24小时,已失效
// 砍价未成功,发起已超过24小时,已失效
bo.setCutStatus(CutPriceConstant.CUT_STATUS_EXPIRE);
}else{
// 未成功,发起24小时内,砍价中
bo.setCutStatus(CutPriceConstant.CUT_STATUS_ONGOING);
// 砍价截止时间,发起砍价后24小时,或者活动截止时间
if(bo.getCreateTime()+TIME_24_HOUR > bo.getEndTime()){
bo.setCutEndTime(bo.getEndTime());
}else{
bo.setCutEndTime(bo.getCreateTime()+TIME_24_HOUR);
}
}
}
}
... ...