xuhy
4 天以前 13a3236249d21e1ed1a0f1e8ae20a29d6bf3913a
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TGoodsTypeController.java
@@ -3,10 +3,14 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.framework.web.service.TokenService;
import com.ruoyi.system.domain.TFoundationConfig;
import com.ruoyi.system.domain.TGoodsType;
import com.ruoyi.system.domain.TShop;
import com.ruoyi.system.service.TFoundationConfigService;
import com.ruoyi.system.service.TGoodsTypeService;
import com.ruoyi.system.service.TShopService;
import io.swagger.annotations.Api;
@@ -33,12 +37,14 @@
    private final TGoodsTypeService goodsTypeService;
    private final TokenService tokenService;
    private final TShopService shopService;
    private final TFoundationConfigService foundationConfigService;
    @Autowired
    public TGoodsTypeController(TGoodsTypeService goodsTypeService, TokenService tokenService, TShopService shopService) {
    public TGoodsTypeController(TGoodsTypeService goodsTypeService, TokenService tokenService, TShopService shopService, TFoundationConfigService foundationConfigService) {
        this.goodsTypeService = goodsTypeService;
        this.tokenService = tokenService;
        this.shopService = shopService;
        this.foundationConfigService = foundationConfigService;
    }
    /**
@@ -47,13 +53,18 @@
    @ApiOperation( value = "查询商品分类列表")
    @PostMapping(value = "/list")
    public AjaxResult<List<TGoodsType>> list() {
//        Long shopId = tokenService.getLoginUser().getObjectId();
//        Integer roleType = tokenService.getLoginUser().getRoleType();
//        LambdaQueryWrapper<TGoodsType> wrapper = new LambdaQueryWrapper<>();
//        if(roleType != 1){
//            wrapper.eq(TGoodsType::getShopId, shopId);
//        }
        return AjaxResult.success(goodsTypeService.list());
        Long shopId = tokenService.getLoginUser().getObjectId();
        Integer roleType = tokenService.getLoginUser().getRoleType();
        TShop shop = shopService.getById(shopId);
        LambdaQueryWrapper<TGoodsType> wrapper = new LambdaQueryWrapper<>();
        if(roleType != 1){
            if(roleType == 2){
                wrapper.eq(TGoodsType::getMealType, shop.getMealType());
            }else {
                wrapper.isNull(TGoodsType::getMealType);
            }
        }
        return AjaxResult.success(goodsTypeService.list(wrapper));
    }
    /**
@@ -61,7 +72,7 @@
     */
    @ApiOperation( value = "查询商品分类列表-后台使用")
    @GetMapping(value = "/getList")
    public AjaxResult<List<TGoodsType>> getList(@RequestParam("mealType") Integer mealType) {
    public AjaxResult<List<TGoodsType>> getList(@RequestParam(value = "mealType",required = false) Integer mealType) {
        // 获取餐饮分类店铺id
//        TShop one = shopService.getOne(Wrappers.lambdaQuery(TShop.class)
//                .eq(TShop::getMealType, mealType)
@@ -70,24 +81,31 @@
//            String str = mealType == 1 ? "中餐" : "火锅";
//            return AjaxResult.error("无"+str+"类型店铺");
//        }
//        LambdaQueryWrapper<TGoodsType> wrapper = new LambdaQueryWrapper<>();
//        wrapper.eq(TGoodsType::getShopId, one.getId());
        return AjaxResult.success(goodsTypeService.list());
        LambdaQueryWrapper<TGoodsType> wrapper = new LambdaQueryWrapper<>();
        if(Objects.nonNull(mealType)){
            wrapper.eq(TGoodsType::getMealType, mealType);
        }
        return AjaxResult.success(goodsTypeService.list(wrapper));
    }
    /**
     * 添加商品分类管理
     */
    @Log(title = "商品分类-添加商品分类", businessType = BusinessType.INSERT)
    @ApiOperation( value = "添加商品分类")
    @PostMapping(value = "/add")
    public AjaxResult<Boolean> add(@RequestBody TGoodsType dto) {
        dto.setShopId(tokenService.getLoginUser().getObjectId());
        Long shopId = tokenService.getLoginUser().getObjectId();
        TShop shop = shopService.getById(shopId);
        dto.setMealType(shop.getMealType());
        dto.setShopId(shopId);
        return AjaxResult.success(goodsTypeService.save(dto));
    }
    /**
     * 修改商品分类
     */
    @Log(title = "商品分类-修改商品分类", businessType = BusinessType.UPDATE)
    @ApiOperation( value = "修改商品分类")
    @PostMapping(value = "/update")
    public AjaxResult<Boolean> update(@RequestBody TGoodsType dto) {
@@ -106,15 +124,23 @@
    /**
     * 删除商品分类
     */
    @Log(title = "商品分类-删除商品分类", businessType = BusinessType.DELETE)
    @ApiOperation( value = "删除商品分类")
    @DeleteMapping(value = "/deleteById")
    public AjaxResult<Boolean> deleteById(@RequestParam("id") Long id) {
        // 查询分类是否在生成配置里面存在
        long count = foundationConfigService.count(Wrappers.lambdaQuery(TFoundationConfig.class)
                .eq(TFoundationConfig::getTypeId, id));
        if(count>0){
            return AjaxResult.warn("该分类在基础设置中正在使用,无法删除");
        }
        return AjaxResult.success(goodsTypeService.removeById(id));
    }
    /**
     * 批量删除商品分类
     */
    @Log(title = "商品分类-批量删除商品分类", businessType = BusinessType.DELETE)
    @ApiOperation( value = "批量删除商品分类")
    @DeleteMapping(value = "/deleteByIds")
    public AjaxResult<Boolean> deleteByIds(@RequestBody List<Long> ids) {