diff --git a/pom.xml b/pom.xml index 32293eb3..87a09e42 100644 --- a/pom.xml +++ b/pom.xml @@ -37,7 +37,7 @@ 2.9.2 1.2.54 1.1.10 - 4.6.0 + 5.2.5 2.5.0 1.2.0.Final diff --git a/sql/yshop2.1升级sql.txt b/sql/yshop2.1升级sql.txt index 7d70ed89..0e662a8a 100644 --- a/sql/yshop2.1升级sql.txt +++ b/sql/yshop2.1升级sql.txt @@ -19,4 +19,7 @@ ADD COLUMN `give_price` decimal(8, 2) NULL DEFAULT 0 COMMENT '赠送金额' AFTE ALTER TABLE `yx_system_attachment` ADD COLUMN `uid` int(0) UNSIGNED NULL DEFAULT 0 COMMENT '用户id' AFTER `module_type`, -ADD COLUMN `invite_code` varchar(50) NULL DEFAULT '' COMMENT '邀请码' AFTER `uid` \ No newline at end of file +ADD COLUMN `invite_code` varchar(50) NULL DEFAULT '' COMMENT '邀请码' AFTER `uid` + +ALTER TABLE `yx_store_seckill` +ADD COLUMN `time_id` int(10) UNSIGNED NULL DEFAULT 0 COMMENT '时间段id' AFTER `start_time_date` \ No newline at end of file diff --git a/yshop-api/src/main/java/co/yixiang/common/web/vo/Paging.java b/yshop-api/src/main/java/co/yixiang/common/web/vo/Paging.java index 51d70002..169caa02 100644 --- a/yshop-api/src/main/java/co/yixiang/common/web/vo/Paging.java +++ b/yshop-api/src/main/java/co/yixiang/common/web/vo/Paging.java @@ -12,6 +12,7 @@ import java.util.List; @ApiModel("分页") +@SuppressWarnings("unchecked") public class Paging implements Serializable { private static final long serialVersionUID = -1683800405530086022L; diff --git a/yshop-api/src/main/java/co/yixiang/modules/activity/service/YxStoreSeckillService.java b/yshop-api/src/main/java/co/yixiang/modules/activity/service/YxStoreSeckillService.java index 0260b700..21728e9d 100644 --- a/yshop-api/src/main/java/co/yixiang/modules/activity/service/YxStoreSeckillService.java +++ b/yshop-api/src/main/java/co/yixiang/modules/activity/service/YxStoreSeckillService.java @@ -43,7 +43,7 @@ public interface YxStoreSeckillService extends BaseService { * @param limit * @return */ - List getList(int page, int limit, int startTime,int endTime); + List getList(int page, int limit, int time); /** * 根据ID获取查询对象 * @param id diff --git a/yshop-api/src/main/java/co/yixiang/modules/activity/service/impl/YxStoreSeckillServiceImpl.java b/yshop-api/src/main/java/co/yixiang/modules/activity/service/impl/YxStoreSeckillServiceImpl.java index e8589941..26aa75c7 100644 --- a/yshop-api/src/main/java/co/yixiang/modules/activity/service/impl/YxStoreSeckillServiceImpl.java +++ b/yshop-api/src/main/java/co/yixiang/modules/activity/service/impl/YxStoreSeckillServiceImpl.java @@ -54,6 +54,7 @@ public class YxStoreSeckillServiceImpl extends BaseServiceImpl getList(int page, int limit,int startTime,int endTime) { + public List getList(int page, int limit, int time) { + int nowTime = OrderUtil.getSecondTimestampTwo(); Page pageModel = new Page<>(page, limit); QueryWrapper 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 yxStoreSeckillQueryVos = storeSeckillMap .toDto(yxStoreSeckillMapper.selectPage(pageModel,wrapper).getRecords()); yxStoreSeckillQueryVos.forEach(item->{ diff --git a/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreCombinationController.java b/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreCombinationController.java index 7f00055a..678b3141 100644 --- a/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreCombinationController.java +++ b/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreCombinationController.java @@ -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 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); } /** diff --git a/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreSeckillController.java b/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreSeckillController.java index 432714a2..5ae4c127 100644 --- a/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreSeckillController.java +++ b/yshop-api/src/main/java/co/yixiang/modules/activity/web/controller/StoreSeckillController.java @@ -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 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 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); } diff --git a/yshop-api/src/main/java/co/yixiang/modules/activity/web/dto/StoreCombinationDTO.java b/yshop-api/src/main/java/co/yixiang/modules/activity/web/dto/StoreCombinationDTO.java index af9a5032..c591eb58 100644 --- a/yshop-api/src/main/java/co/yixiang/modules/activity/web/dto/StoreCombinationDTO.java +++ b/yshop-api/src/main/java/co/yixiang/modules/activity/web/dto/StoreCombinationDTO.java @@ -34,6 +34,8 @@ public class StoreCombinationDTO implements Serializable { private String replyChance; private YxStoreCombinationQueryVo storeInfo; + private Boolean userCollect = false; + } \ No newline at end of file diff --git a/yshop-api/src/main/java/co/yixiang/modules/activity/web/dto/StoreSeckillDTO.java b/yshop-api/src/main/java/co/yixiang/modules/activity/web/dto/StoreSeckillDTO.java index f2459610..2f912581 100644 --- a/yshop-api/src/main/java/co/yixiang/modules/activity/web/dto/StoreSeckillDTO.java +++ b/yshop-api/src/main/java/co/yixiang/modules/activity/web/dto/StoreSeckillDTO.java @@ -26,6 +26,9 @@ public class StoreSeckillDTO implements Serializable { private YxStoreSeckillQueryVo storeInfo; + @Builder.Default + private Boolean userCollect = false; + } \ No newline at end of file diff --git a/yshop-common/src/main/java/co/yixiang/config/SwaggerConfig.java b/yshop-common/src/main/java/co/yixiang/config/SwaggerConfig.java index 30f1a19d..93a60c74 100644 --- a/yshop-common/src/main/java/co/yixiang/config/SwaggerConfig.java +++ b/yshop-common/src/main/java/co/yixiang/config/SwaggerConfig.java @@ -18,6 +18,7 @@ import springfox.documentation.schema.AlternateTypeRule; import springfox.documentation.schema.AlternateTypeRuleConvention; import springfox.documentation.schema.ModelRef; import springfox.documentation.service.ApiInfo; +import springfox.documentation.service.Contact; import springfox.documentation.service.Parameter; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; @@ -84,7 +85,7 @@ public class SwaggerConfig { .termsOfServiceUrl(serverUrl) .description(title) .version(version) - .contact("610796224@qq.com") + .contact(new Contact("hupeng","https://www.yixiang.co","guchengwuyue@163.com")) .build(); } diff --git a/yshop-common/src/main/java/co/yixiang/exception/handler/GlobalExceptionHandler.java b/yshop-common/src/main/java/co/yixiang/exception/handler/GlobalExceptionHandler.java index 3d433da4..f1dc687b 100644 --- a/yshop-common/src/main/java/co/yixiang/exception/handler/GlobalExceptionHandler.java +++ b/yshop-common/src/main/java/co/yixiang/exception/handler/GlobalExceptionHandler.java @@ -21,6 +21,7 @@ import static org.springframework.http.HttpStatus.*; */ @Slf4j @RestControllerAdvice +@SuppressWarnings("unchecked") public class GlobalExceptionHandler { /** diff --git a/yshop-logging/src/main/java/co/yixiang/rest/LogController.java b/yshop-logging/src/main/java/co/yixiang/rest/LogController.java index c6f2d927..d6541149 100644 --- a/yshop-logging/src/main/java/co/yixiang/rest/LogController.java +++ b/yshop-logging/src/main/java/co/yixiang/rest/LogController.java @@ -21,6 +21,7 @@ import java.io.IOException; @RestController @RequestMapping("/api/logs") @Api(tags = "监控:日志管理") +@SuppressWarnings("unchecked") public class LogController { private final LogService logService; diff --git a/yshop-mp/src/main/java/co/yixiang/mp/controller/WechatMenuController.java b/yshop-mp/src/main/java/co/yixiang/mp/controller/WechatMenuController.java index a5b816fe..7f721bc8 100644 --- a/yshop-mp/src/main/java/co/yixiang/mp/controller/WechatMenuController.java +++ b/yshop-mp/src/main/java/co/yixiang/mp/controller/WechatMenuController.java @@ -28,6 +28,7 @@ import org.springframework.web.bind.annotation.*; @Api(tags = "商城:微信菜單") @RestController @RequestMapping("api") +@SuppressWarnings("unchecked") public class WechatMenuController { private final YxCacheService yxCacheService; diff --git a/yshop-shop/src/main/java/co/yixiang/modules/activity/domain/YxStoreSeckill.java b/yshop-shop/src/main/java/co/yixiang/modules/activity/domain/YxStoreSeckill.java index 51329af6..3c69404b 100644 --- a/yshop-shop/src/main/java/co/yixiang/modules/activity/domain/YxStoreSeckill.java +++ b/yshop-shop/src/main/java/co/yixiang/modules/activity/domain/YxStoreSeckill.java @@ -148,6 +148,9 @@ public class YxStoreSeckill implements Serializable { @Column(name = "is_show",nullable = false) private Integer isShow; + @NotNull(message = "请选择开始时间") + private Integer timeId; + public void copy(YxStoreSeckill source){ BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); } diff --git a/yshop-shop/src/main/java/co/yixiang/modules/activity/service/dto/YxStoreSeckillDTO.java b/yshop-shop/src/main/java/co/yixiang/modules/activity/service/dto/YxStoreSeckillDTO.java index 802cac8c..6292d26c 100644 --- a/yshop-shop/src/main/java/co/yixiang/modules/activity/service/dto/YxStoreSeckillDTO.java +++ b/yshop-shop/src/main/java/co/yixiang/modules/activity/service/dto/YxStoreSeckillDTO.java @@ -94,4 +94,6 @@ public class YxStoreSeckillDTO implements Serializable { private Date endTimeDate; private String statusStr; + + private Integer timeId; } \ No newline at end of file diff --git a/yshop-tools/src/main/java/co/yixiang/rest/UploadController.java b/yshop-tools/src/main/java/co/yixiang/rest/UploadController.java index 807101f0..9977cb13 100644 --- a/yshop-tools/src/main/java/co/yixiang/rest/UploadController.java +++ b/yshop-tools/src/main/java/co/yixiang/rest/UploadController.java @@ -32,6 +32,7 @@ import java.util.Map; @Api(tags = "上传统一管理") @RestController @RequestMapping("/api/upload") +@SuppressWarnings("unchecked") public class UploadController { @Value("${file.localUrl}")