无关风月
2025-02-28 2f8e70ad2884d2b6b7443dfae0af11ae9cfc8b99
manage/src/main/java/com/jilongda/manage/controller/TStoreController.java
@@ -1,9 +1,24 @@
package com.jilongda.manage.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.jilongda.common.basic.ApiResult;
import com.jilongda.common.basic.PageInfo;
import com.jilongda.manage.model.Region;
import com.jilongda.manage.model.TStore;
import com.jilongda.manage.query.TStoreQuery;
import com.jilongda.manage.service.ITRegionService;
import com.jilongda.manage.service.TStoreService;
import com.jilongda.manage.utils.LoginInfoUtil;
import com.jilongda.manage.vo.TStoreVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Objects;
/**
 * <p>
@@ -13,9 +28,74 @@
 * @author 无关风月
 * @since 2024-12-09
 */
@Api(tags = "门店管理")
@RestController
@RequestMapping("/t-store")
public class TStoreController {
    @Autowired
    private TStoreService storeService;
    @Autowired
    private LoginInfoUtil loginInfoUtil;
    @Autowired
    private ITRegionService regionService;
    /**
     * 获取门店列表
     */
    @ApiOperation(value = "获取门店分页列表")
    @PostMapping(value = "/pageList")
    public ApiResult<PageInfo<TStoreVO>> pageList(@RequestBody TStoreQuery query) {
        Integer userType = loginInfoUtil.getLoginUser().getUserType();
        if(!Objects.equals(userType,1)){
            query.setStatus(1);
        }
        return ApiResult.success(storeService.pageList(query));
    }
    @ApiOperation(value = "省市区三级联动 获取省不传值 市区县传上级code")
    @GetMapping(value = "/list")
    public ApiResult<List<Region>> add(String code) {
        if (!StringUtils.hasLength(code)){
            return ApiResult.success(regionService.lambdaQuery().eq(Region::getParentId,0).list());
        }else{
            return ApiResult.success(regionService.lambdaQuery().eq(Region::getParentId,regionService.lambdaQuery().eq(Region::getCode,code).one().getId()).list());
        }
    }
    /**
     * 添加门店
     */
    @ApiOperation(value = "添加门店")
    @PostMapping(value = "/add")
    public ApiResult<String> add(@Validated @RequestBody TStore dto) {
        storeService.save(dto);
        return ApiResult.success();
    }
    @ApiOperation(value = "修改门店")
    @PostMapping(value = "/update")
    public ApiResult<String> update(@Validated @RequestBody TStore dto) {
        storeService.updateById(dto);
        return ApiResult.success();
    }
    @ApiOperation(value = "删除门店")
    @DeleteMapping(value = "/deleteById")
    public ApiResult<Boolean> deleteById(@RequestParam Long id) {
        return ApiResult.success(storeService.removeById(id));
    }
    @ApiOperation(value = "批量删除门店")
    @DeleteMapping(value = "/deleteByIds")
    public ApiResult<Boolean> deleteByIds(@RequestBody List<Long> ids) {
        return ApiResult.success(storeService.removeByIds(ids));
    }
    @ApiOperation(value = "查询门店详情")
    @GetMapping(value = "/getDetailById")
    public ApiResult<TStore> getDetailById(@RequestParam Long id) {
        return ApiResult.success(storeService.getById(id));
    }
}