Merge remote-tracking branch 'origin/test' into test

This commit is contained in:
张松
2025-10-22 09:41:34 +08:00
19 changed files with 615 additions and 31 deletions

View File

@@ -0,0 +1,76 @@
package com.czg.controller.admin;
import com.czg.BaseQueryParam;
import com.czg.TimeQueryParam;
import com.czg.log.annotation.OperationLog;
import com.czg.market.dto.MkProductSmartSuggestDTO;
import com.czg.market.service.MkProductSmartSuggestService;
import com.czg.resp.CzgResult;
import com.czg.sa.StpKit;
import com.czg.utils.AssertUtil;
import com.czg.validator.group.DefaultGroup;
import com.czg.validator.group.InsertGroup;
import com.czg.validator.group.UpdateGroup;
import com.mybatisflex.core.paginate.Page;
import jakarta.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
* 点单智能推荐
*
* @author Administrator
*/
@RestController
@RequestMapping("/admin/suggest")
public class AProductSmartSuggestController {
@Resource
private MkProductSmartSuggestService suggestService;
/**
* 点单智能推荐-分页
*/
@GetMapping("page")
public CzgResult<Page<MkProductSmartSuggestDTO>> getProductSmartSuggestPage(BaseQueryParam param) {
Page<MkProductSmartSuggestDTO> data = suggestService.getProductSmartSuggestPage(param, StpKit.USER.getShopId());
return CzgResult.success(data);
}
/**
* 点单智能推荐-新增
*/
@PostMapping
@OperationLog("点单智能推荐-新增")
public CzgResult<Void> addProductSmartSuggest(@RequestBody @Validated({InsertGroup.class, DefaultGroup.class}) MkProductSmartSuggestDTO dto) {
Long shopId = StpKit.USER.getShopId();
dto.setShopId(shopId);
suggestService.addProductSmartSuggest(dto);
return CzgResult.success();
}
/**
* 点单智能推荐-修改
*/
@PutMapping
@OperationLog("点单智能推荐-修改")
public CzgResult<Void> updateProductSmartSuggest(@RequestBody @Validated({UpdateGroup.class, DefaultGroup.class}) MkProductSmartSuggestDTO dto) {
Long shopId = StpKit.USER.getShopId();
dto.setShopId(shopId);
suggestService.updateProductSmartSuggestById(dto);
return CzgResult.success();
}
/**
* 点单智能推荐-删除
*/
@DeleteMapping
@OperationLog("点单智能推荐-删除")
public CzgResult<String> deleteMkProductSmartSuggest(@RequestParam Long id) {
AssertUtil.isNull(id, "{}不能为空", "id");
suggestService.deleteProductSmartSuggest(id);
return CzgResult.success();
}
}

View File

@@ -0,0 +1,36 @@
package com.czg.controller.user;
import com.czg.market.entity.MkProductSmartSuggest;
import com.czg.market.service.MkProductSmartSuggestService;
import com.czg.resp.CzgResult;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 点单智能推荐
*
* @author ww
*/
@RestController
@RequestMapping("/user/suggest")
public class UProductSmartSuggestController {
@Resource
private MkProductSmartSuggestService suggestService;
/**
* 获取点单智能推荐
*/
@GetMapping
public CzgResult<List<MkProductSmartSuggest>> getActivity(@RequestParam Long shopId) {
List<MkProductSmartSuggest> list = suggestService.getProductSmartSuggestByShopId(shopId);
return CzgResult.success(list);
}
}

View File

@@ -42,13 +42,13 @@ public class AAMarketTasks {
memberTask.task();
}
//满减活动定时任务
//满减活动/限时折扣 处理任务状态 定时任务
@Resource
private DiscountActivityTask discountActivityTask;
private ActivityStatusTask activityStatusTask;
//每天0点 0分 1秒 执行
@Scheduled(cron = "1 0 0 * * ? ")
public void discountActivityTask() {
discountActivityTask.task();
public void activityStatusTask() {
activityStatusTask.task();
}

View File

@@ -1,7 +1,9 @@
package com.czg.task;
import com.czg.market.entity.MkDiscountActivity;
import com.czg.market.entity.MkLimitTimeDiscount;
import com.czg.market.service.MkDiscountActivityService;
import com.czg.market.service.MkLimitTimeDiscountService;
import com.mybatisflex.core.query.QueryWrapper;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
@@ -17,14 +19,17 @@ import java.time.LocalDateTime;
*/
@Slf4j
@Component
public class DiscountActivityTask {
public class ActivityStatusTask {
@Resource
private MkDiscountActivityService discountActivityService;
@Resource
private MkLimitTimeDiscountService limitTimeDiscountService;
/**
* 满减活动 过期
* 满减活动/限时折扣 任务状态更新任务
*/
public void task() {
//满减活动
discountActivityService.update(new MkDiscountActivity().setStatus(2),
new QueryWrapper()
.eq(MkDiscountActivity::getStatus, 1)
@@ -34,5 +39,17 @@ public class DiscountActivityTask {
discountActivityService.update(new MkDiscountActivity().setStatus(3),
new QueryWrapper().le(MkDiscountActivity::getValidEndTime, LocalDateTime.now())
);
//限时折扣
limitTimeDiscountService.update(new MkLimitTimeDiscount().setStatus(2),
new QueryWrapper()
.eq(MkLimitTimeDiscount::getStatus, 1)
.le(MkLimitTimeDiscount::getValidStartTime, LocalDateTime.now())
.gt(MkLimitTimeDiscount::getValidEndTime, LocalDateTime.now())
);
limitTimeDiscountService.update(new MkLimitTimeDiscount().setStatus(3),
new QueryWrapper().le(MkLimitTimeDiscount::getValidEndTime, LocalDateTime.now())
);
}
}