Commit 89b27ba8 authored by shiyu's avatar shiyu

专场自动开始2

parent 6a15e86b
...@@ -15,5 +15,12 @@ public interface SpecialPerformanceDao { ...@@ -15,5 +15,12 @@ public interface SpecialPerformanceDao {
boolean update(SpecialPerformance specialPerformance); boolean update(SpecialPerformance specialPerformance);
/**
* 查询未开始的专场
* @param type
* @return
*/
SpecialPerformance findNotStart(int type);
} }
...@@ -12,6 +12,7 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -12,6 +12,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
import java.util.Random;
@Repository @Repository
public class SpecialPerformanceConfigDaoImpl implements SpecialPerformanceConfigDao { public class SpecialPerformanceConfigDaoImpl implements SpecialPerformanceConfigDao {
...@@ -67,7 +68,9 @@ public class SpecialPerformanceConfigDaoImpl implements SpecialPerformanceConfig ...@@ -67,7 +68,9 @@ public class SpecialPerformanceConfigDaoImpl implements SpecialPerformanceConfig
criteria.andStateEqualTo(1); criteria.andStateEqualTo(1);
SpecialPerformanceConfig specialPerformanceConfig = specialPerformanceConfigMapper.selectOneByExample(example); SpecialPerformanceConfig specialPerformanceConfig = specialPerformanceConfigMapper.selectOneByExample(example);
if (specialPerformanceConfig != null && specialPerformanceConfig.getViewNum() != null) { if (specialPerformanceConfig != null && specialPerformanceConfig.getViewNum() != null) {
int viewNum = specialPerformanceConfig.getViewNum() + 1; Random random = new Random();
int randomNumber = random.nextInt(5);
int viewNum = specialPerformanceConfig.getViewNum() + randomNumber;
SpecialPerformanceConfig updateDto = new SpecialPerformanceConfig(); SpecialPerformanceConfig updateDto = new SpecialPerformanceConfig();
updateDto.setViewNum(viewNum); updateDto.setViewNum(viewNum);
SpecialPerformanceConfigExample specialPerformanceConfigExample = new SpecialPerformanceConfigExample(); SpecialPerformanceConfigExample specialPerformanceConfigExample = new SpecialPerformanceConfigExample();
......
...@@ -46,5 +46,12 @@ public class SpecialPerformanceDaoImpl implements SpecialPerformanceDao { ...@@ -46,5 +46,12 @@ public class SpecialPerformanceDaoImpl implements SpecialPerformanceDao {
} }
@Override
public SpecialPerformance findNotStart(int type) {
SpecialPerformanceExample example = new SpecialPerformanceExample();
SpecialPerformanceExample.Criteria criteria = example.createCriteria();
criteria.andTypeEqualTo(type);
criteria.andStateEqualTo(1);
return specialPerformanceMapper.selectOneByExample(example);
}
} }
...@@ -49,6 +49,7 @@ public class SpecialPerformanceServiceImpl implements SpecialPerformanceService ...@@ -49,6 +49,7 @@ public class SpecialPerformanceServiceImpl implements SpecialPerformanceService
@Override @Override
public Result findInfo(SpecialPerformanceRequestDto dto) { public Result findInfo(SpecialPerformanceRequestDto dto) {
try { try {
checkStart(dto.getType());
SpecialPerformanceVo specialPerformanceVo = new SpecialPerformanceVo(); SpecialPerformanceVo specialPerformanceVo = new SpecialPerformanceVo();
SpecialPerformance specialPerformance = specialPerformanceDao.findByType(dto.getType()); SpecialPerformance specialPerformance = specialPerformanceDao.findByType(dto.getType());
if (specialPerformance == null) { if (specialPerformance == null) {
...@@ -62,13 +63,6 @@ public class SpecialPerformanceServiceImpl implements SpecialPerformanceService ...@@ -62,13 +63,6 @@ public class SpecialPerformanceServiceImpl implements SpecialPerformanceService
updateDto.setUpdateTime(now); updateDto.setUpdateTime(now);
specialPerformanceDao.update(updateDto); specialPerformanceDao.update(updateDto);
specialPerformance.setState(DistributionEnum.AuctionStateEnum.END.getCode()); specialPerformance.setState(DistributionEnum.AuctionStateEnum.END.getCode());
} else if (now.after(specialPerformance.getStartTime())) {
SpecialPerformance updateDto = new SpecialPerformance();
updateDto.setId(specialPerformance.getId());
updateDto.setState(DistributionEnum.AuctionStateEnum.IN_AUCTION.getCode());
updateDto.setUpdateTime(now);
specialPerformanceDao.update(updateDto);
specialPerformance.setState(DistributionEnum.AuctionStateEnum.IN_AUCTION.getCode());
} }
int specialPerformanceId = specialPerformance.getId(); int specialPerformanceId = specialPerformance.getId();
SpecialPerformanceConfigRequestDto specialPerformanceConfigRequestDto = new SpecialPerformanceConfigRequestDto(); SpecialPerformanceConfigRequestDto specialPerformanceConfigRequestDto = new SpecialPerformanceConfigRequestDto();
...@@ -210,4 +204,20 @@ public class SpecialPerformanceServiceImpl implements SpecialPerformanceService ...@@ -210,4 +204,20 @@ public class SpecialPerformanceServiceImpl implements SpecialPerformanceService
} }
return Result.failed(); return Result.failed();
} }
/**
* 检测到开拍时间
*/
public void checkStart(int type) {
SpecialPerformance specialPerformance = specialPerformanceDao.findNotStart(type);
Date now = new Date();
if (now.after(specialPerformance.getStartTime())) {
SpecialPerformance updateDto = new SpecialPerformance();
updateDto.setId(specialPerformance.getId());
updateDto.setState(DistributionEnum.AuctionStateEnum.IN_AUCTION.getCode());
updateDto.setUpdateTime(now);
specialPerformanceDao.update(updateDto);
}
}
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment