xuhy
2024-09-24 ae4c93dd2e2aef79332360fb5dec13c5b2c961f3
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TGoodsController.java
@@ -4,13 +4,12 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.CodeGenerateUtils;
import com.ruoyi.common.utils.bean.BeanUtils;
import com.ruoyi.framework.web.service.TokenService;
import com.ruoyi.system.domain.TGoods;
import com.ruoyi.system.domain.TGoodsType;
import com.ruoyi.system.domain.*;
import com.ruoyi.system.query.TGoodsQuery;
import com.ruoyi.system.service.TGoodsService;
import com.ruoyi.system.service.TGoodsTypeService;
import com.ruoyi.system.service.*;
import com.ruoyi.system.vo.TGoodsVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -36,12 +35,18 @@
    private final TGoodsService goodsService;
    private final TGoodsTypeService goodsTypeService;
    private final TokenService tokenService;
    private final TOrderStockGoodsService orderStockGoodsService;
    private final TOrderSaleGoodsService orderSaleGoodsService;
    private final TOrderMealGoodsService orderMealGoodsService;
    @Autowired
    public TGoodsController(TGoodsService goodsService, TGoodsTypeService goodsTypeService, TokenService tokenService) {
    public TGoodsController(TGoodsService goodsService, TGoodsTypeService goodsTypeService, TokenService tokenService, TOrderStockGoodsService orderStockGoodsService, TOrderSaleGoodsService orderSaleGoodsService, TOrderMealGoodsService orderMealGoodsService) {
        this.goodsService = goodsService;
        this.goodsTypeService = goodsTypeService;
        this.tokenService = tokenService;
        this.orderStockGoodsService = orderStockGoodsService;
        this.orderSaleGoodsService = orderSaleGoodsService;
        this.orderMealGoodsService = orderMealGoodsService;
    }
    /**
@@ -64,6 +69,7 @@
    @PostMapping(value = "/add")
    public AjaxResult<Boolean> add(@RequestBody TGoods dto) {
        dto.setShopId(tokenService.getLoginUser().getObjectId());
        dto.setGoodsNum(CodeGenerateUtils.generateVolumeSn());
        return AjaxResult.success(goodsService.save(dto));
    }
@@ -73,6 +79,24 @@
    @ApiOperation( value = "修改商品管理")
    @PostMapping(value = "/update")
    public AjaxResult<Boolean> update(@RequestBody TGoods dto) {
        // 判断是否修改了名称
        TGoods goods = goodsService.getById(dto.getId());
        if(!goods.getGoodsName().equals(dto.getGoodsName())){
            List<TOrderStockGoods> orderStockGoods = orderStockGoodsService.list(Wrappers.lambdaQuery(TOrderStockGoods.class)
                    .eq(TOrderStockGoods::getGoodsNum, goods.getGoodsNum()));
            orderStockGoods.stream().forEach(tOrderStockGoods -> tOrderStockGoods.setGoodsNum(dto.getGoodsNum()));
            orderStockGoodsService.updateBatchById(orderStockGoods);
            List<TOrderMealGoods> orderMealGoods = orderMealGoodsService.list(Wrappers.lambdaQuery(TOrderMealGoods.class)
                    .eq(TOrderMealGoods::getGoodsNum, goods.getGoodsNum()));
            orderMealGoods.stream().forEach(tOrderMealGoods -> tOrderMealGoods.setGoodsNum(dto.getGoodsNum()));
            orderMealGoodsService.updateBatchById(orderMealGoods);
            List<TOrderSaleGoods> list = orderSaleGoodsService.list(Wrappers.lambdaQuery(TOrderSaleGoods.class)
                    .eq(TOrderSaleGoods::getGoodsNum, goods.getGoodsNum()));
            list.stream().forEach(tOrderSaleGoods -> tOrderSaleGoods.setGoodsNum(dto.getGoodsNum()));
            orderSaleGoodsService.updateBatchById(list);
        }
        return AjaxResult.success(goodsService.updateById(dto));
    }