秒杀时间段优化,hutool升级到5.2.5,swagger contact修改去掉idea启动的warn及其其他警告

This commit is contained in:
hupeng
2020-04-06 12:09:51 +08:00
parent d0a8cd1c7a
commit 2fa92da5c9
16 changed files with 48 additions and 11 deletions

View File

@ -12,6 +12,7 @@ import java.util.List;
@ApiModel("分页")
@SuppressWarnings("unchecked")
public class Paging<T> implements Serializable {
private static final long serialVersionUID = -1683800405530086022L;

View File

@ -43,7 +43,7 @@ public interface YxStoreSeckillService extends BaseService<YxStoreSeckill> {
* @param limit
* @return
*/
List<YxStoreSeckillQueryVo> getList(int page, int limit, int startTime,int endTime);
List<YxStoreSeckillQueryVo> getList(int page, int limit, int time);
/**
* 根据ID获取查询对象
* @param id

View File

@ -54,6 +54,7 @@ public class YxStoreSeckillServiceImpl extends BaseServiceImpl<YxStoreSeckillMap
private final YxStoreProductReplyService replyService;
/**
* 退回库存减少销量
* @param num
@ -104,6 +105,7 @@ public class YxStoreSeckillServiceImpl extends BaseServiceImpl<YxStoreSeckillMap
.replyCount(replyService.productReplyCount(yxStoreSeckillQueryVo.getProductId()))
.build();
return storeSeckillDTO;
}
@ -116,11 +118,13 @@ public class YxStoreSeckillServiceImpl extends BaseServiceImpl<YxStoreSeckillMap
* @return
*/
@Override
public List<YxStoreSeckillQueryVo> getList(int page, int limit,int startTime,int endTime) {
public List<YxStoreSeckillQueryVo> getList(int page, int limit, int time) {
int nowTime = OrderUtil.getSecondTimestampTwo();
Page<YxStoreSeckill> pageModel = new Page<>(page, limit);
QueryWrapper<YxStoreSeckill> wrapper = new QueryWrapper<>();
wrapper.eq("is_del",0).eq("status",1)
.le("start_time",startTime).ge("stop_time",endTime).orderByDesc("sort");
.eq("time_id",time)
.le("start_time",nowTime).ge("stop_time",nowTime).orderByDesc("sort");
List<YxStoreSeckillQueryVo> yxStoreSeckillQueryVos = storeSeckillMap
.toDto(yxStoreSeckillMapper.selectPage(pageModel,wrapper).getRecords());
yxStoreSeckillQueryVos.forEach(item->{

View File

@ -22,8 +22,10 @@ import co.yixiang.enums.AppFromEnum;
import co.yixiang.modules.activity.entity.YxStorePink;
import co.yixiang.modules.activity.service.YxStoreCombinationService;
import co.yixiang.modules.activity.service.YxStorePinkService;
import co.yixiang.modules.activity.web.dto.StoreCombinationDTO;
import co.yixiang.modules.activity.web.param.YxStoreCombinationQueryParam;
import co.yixiang.modules.activity.web.vo.YxStoreCombinationQueryVo;
import co.yixiang.modules.shop.service.YxStoreProductRelationService;
import co.yixiang.modules.shop.service.YxSystemConfigService;
import co.yixiang.modules.user.entity.YxSystemAttachment;
import co.yixiang.modules.user.service.YxSystemAttachmentService;
@ -67,6 +69,7 @@ public class StoreCombinationController extends BaseController {
private final YxSystemConfigService systemConfigService;
private final YxUserService yxUserService;
private final YxSystemAttachmentService systemAttachmentService;
private final YxStoreProductRelationService relationService;
@Value("${file.path}")
private String path;
@ -92,7 +95,10 @@ public class StoreCombinationController extends BaseController {
public ApiResult<Object> detail(@PathVariable Integer id){
if(ObjectUtil.isNull(id)) return ApiResult.fail("参数有误");
int uid = SecurityUtils.getUserId().intValue();
return ApiResult.ok(storeCombinationService.getDetail(id,uid));
StoreCombinationDTO storeCombinationDTO = storeCombinationService.getDetail(id,uid);
storeCombinationDTO.setUserCollect(relationService
.isProductRelation(storeCombinationDTO.getStoreInfo().getProductId(),"product",uid,"collect"));
return ApiResult.ok(storeCombinationDTO);
}
/**

View File

@ -18,11 +18,14 @@ import co.yixiang.constant.ShopConstants;
import co.yixiang.modules.activity.service.YxStoreSeckillService;
import co.yixiang.modules.activity.web.dto.SeckillConfigDTO;
import co.yixiang.modules.activity.web.dto.SeckillTimeDTO;
import co.yixiang.modules.activity.web.dto.StoreSeckillDTO;
import co.yixiang.modules.activity.web.param.YxStoreSeckillQueryParam;
import co.yixiang.modules.activity.web.vo.YxStoreSeckillQueryVo;
import co.yixiang.modules.shop.entity.YxSystemGroupData;
import co.yixiang.modules.shop.service.YxStoreProductRelationService;
import co.yixiang.modules.shop.service.YxSystemGroupDataService;
import co.yixiang.utils.OrderUtil;
import co.yixiang.utils.SecurityUtils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@ -56,6 +59,7 @@ public class StoreSeckillController extends BaseController {
private final YxStoreSeckillService yxStoreSeckillService;
private final YxSystemGroupDataService yxSystemGroupDataService;
private final YxStoreProductRelationService relationService;
/**
* 秒杀产品列表
@ -66,6 +70,7 @@ public class StoreSeckillController extends BaseController {
public ApiResult<Object> getYxStoreSeckillPageList(@PathVariable String time,
YxStoreSeckillQueryParam queryParam) throws Exception {
if (StrUtil.isBlank(time)) return ApiResult.fail("参数错误");
/** 此处代码已经废弃
YxSystemGroupData systemGroupData = yxSystemGroupDataService
.findData(Integer.valueOf(time));
if (ObjectUtil.isNull(systemGroupData)) return ApiResult.fail("参数错误");
@ -73,10 +78,9 @@ public class StoreSeckillController extends BaseController {
JSONObject jsonObject = JSONObject.parseObject(systemGroupData.getValue());
int startTime = today + (jsonObject.getInteger("time") * 3600);
int endTime = today + ((jsonObject.getInteger("time") + jsonObject.getInteger("continued")) * 3600);
**/
return ApiResult.ok(yxStoreSeckillService.getList(queryParam.getPage().intValue(),
queryParam.getLimit().intValue(), startTime, endTime));
queryParam.getLimit().intValue(), Integer.valueOf(time)));
}
@ -87,7 +91,11 @@ public class StoreSeckillController extends BaseController {
@GetMapping("/seckill/detail/{id}")
@ApiOperation(value = "秒杀产品详情", notes = "秒杀产品详情", response = YxStoreSeckillQueryVo.class)
public ApiResult<Object> getYxStoreSeckill(@PathVariable Integer id) throws Exception {
return ApiResult.ok(yxStoreSeckillService.getDetail(id));
int uid = SecurityUtils.getUserId().intValue();
StoreSeckillDTO storeSeckillDTO = yxStoreSeckillService.getDetail(id);
storeSeckillDTO.setUserCollect(relationService
.isProductRelation(storeSeckillDTO.getStoreInfo().getProductId(),"product",uid,"collect"));
return ApiResult.ok(storeSeckillDTO);
}

View File

@ -34,6 +34,8 @@ public class StoreCombinationDTO implements Serializable {
private String replyChance;
private YxStoreCombinationQueryVo storeInfo;
private Boolean userCollect = false;
}

View File

@ -26,6 +26,9 @@ public class StoreSeckillDTO implements Serializable {
private YxStoreSeckillQueryVo storeInfo;
@Builder.Default
private Boolean userCollect = false;
}