package com.ruoyi.web.controller.api; import com.ruoyi.common.basic.PageInfo; import com.ruoyi.common.constant.OrderNumConstants; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.framework.web.service.TokenService; import com.ruoyi.system.dto.OrderMealGeneratorDTO; import com.ruoyi.system.dto.OrderSaleGeneratorDTO; import com.ruoyi.system.query.TDataGeneratorQuery; import com.ruoyi.system.service.TDataGeneratorService; import com.ruoyi.system.service.TOrderMealService; import com.ruoyi.system.vo.TDataGeneratorVO; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; /** *

* 营业数据生成 前端控制器 *

* * @author xiaochen * @since 2024-08-27 */ @RestController @RequestMapping("/t-data-generator") public class TDataGeneratorController { private final TOrderMealService orderMealService; private final TDataGeneratorService dataGeneratorService; private final TokenService tokenService; private final RedisCache redisCache; @Autowired public TDataGeneratorController(TOrderMealService orderMealService, TDataGeneratorService dataGeneratorService, TokenService tokenService, RedisCache redisCache) { this.orderMealService = orderMealService; this.dataGeneratorService = dataGeneratorService; this.tokenService = tokenService; this.redisCache = redisCache; } @ApiOperation( value = "餐饮数据生成") @PostMapping(value = "/mealDataGenerator") public AjaxResult mealDataGenerator(@RequestBody OrderMealGeneratorDTO dto) { dto.setUserId(tokenService.getLoginUser().getUserId()); dto.setNickName(tokenService.getLoginUser().getNickName()); dataGeneratorService.mealDataGenerator(dto); return AjaxResult.success(); } @ApiOperation( value = "销售数据生成") @PostMapping(value = "/saleDataGenerator") public AjaxResult saleDataGenerator(@RequestBody OrderSaleGeneratorDTO dto) { dto.setUserId(tokenService.getLoginUser().getUserId()); dto.setNickName(tokenService.getLoginUser().getNickName()); dataGeneratorService.saleDataGenerator(dto); return AjaxResult.success(); } @ApiOperation( value = "数据生成分页") @PostMapping(value = "/pageList") public AjaxResult> pageList(@Validated @RequestBody TDataGeneratorQuery query) { return AjaxResult.success(dataGeneratorService.pageList(query)); } @ApiOperation( value = "数据覆盖") @GetMapping(value = "/dataCoverage") public AjaxResult dataCoverage(@RequestParam(value = "id") Long id) { dataGeneratorService.dataCoverage(id); return AjaxResult.success(); } @ApiOperation( value = "数据生成终止 shopId=店铺id type: 1=餐饮 2=进货") @GetMapping(value = "/stopGenerator") public AjaxResult dataCoverage(@RequestParam(value = "shopId") Long shopId, @RequestParam(value = "type") Integer type) { if(type == 1){ redisCache.setCacheObject(OrderNumConstants.MEAL+"_"+shopId,shopId); }else { redisCache.setCacheObject(OrderNumConstants.STOCK+"_"+shopId,shopId); } return AjaxResult.success(); } }