futian.liu
2023-12-09 b16483ae0dff952639e4b7e152f72dc32e662154
consum-base/src/main/java/com/consum/base/controller/BaseWarehouseController.java
@@ -1,19 +1,30 @@
package com.consum.base.controller;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.consum.base.BaseController;
import com.consum.base.core.utils.CommonUtil;
import com.consum.base.pojo.BaseWarehouseParam;
import com.consum.base.pojo.FinSysTenantDepartmentParam;
import com.consum.base.service.BaseWarehouseServiceImpl;
import com.consum.base.pojo.query.WarehouseQry;
import com.consum.base.service.BaseWarehouseService;
import com.consum.base.service.LWhGoodsService;
import com.consum.model.po.BaseWarehouse;
import com.consum.model.po.FinSysTenantDepartment;
import com.consum.model.po.FinSysTenantUser;
import com.walker.db.page.GenericPager;
import com.walker.infrastructure.utils.StringUtils;
import com.walker.web.ResponseValue;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
/**
 * @Description 仓库管理
@@ -25,7 +36,9 @@
public class BaseWarehouseController extends BaseController {
    @Autowired
    private BaseWarehouseServiceImpl baseWarehouseService;
    private BaseWarehouseService baseWarehouseService;
    @Autowired
    private LWhGoodsService lWhGoodsService;
    /**
     * @Description 新增
@@ -33,14 +46,21 @@
     * @Date 2023/10/26
     */
    @PostMapping("/add")
    public ResponseValue add(@RequestBody BaseWarehouseParam param) {
    public ResponseValue add() {
        BaseWarehouseParam param = CommonUtil.getObjFromReqBody(BaseWarehouseParam.class);
        BaseWarehouseParam param2 = new BaseWarehouseParam();
        CommonUtil.copyProperties(param, param2);
        param = param2;
        if (StringUtils.isEmpty(param.getWarehouseName())) {
            return ResponseValue.error("仓库名称为空");
        }
        //TODO 加权限 省级管理员录入所有仓库信息
        // TODO 加权限 省级管理员录入所有仓库信息
        int result = this.baseWarehouseService.add(param);
        if (result > 0) return ResponseValue.success(1);
        if (result > 0) {
            return ResponseValue.success(1);
        }
        return ResponseValue.error("新增失败!");
    }
@@ -50,12 +70,18 @@
     * @Date 2023/10/26
     */
    @GetMapping("/list")
    public ResponseValue queryList(BaseWarehouseParam param) {
//        FinSysTenantUser sysInfo = this.getSysInfo();
//        if (sysInfo == null) {
//            return ResponseValue.error("登录用户信息不存在");
//        }
        GenericPager<BaseWarehouse> pager = this.baseWarehouseService.queryList(param);
    public ResponseValue queryList() {
        BaseWarehouseParam param = CommonUtil.getObjFromReq(BaseWarehouseParam.class);
        BaseWarehouseParam param2 = new BaseWarehouseParam();
        CommonUtil.copyProperties(param, param2);
        param = param2;
        FinSysTenantUser currentUser = this.getSysInfo();
        if (currentUser == null) {
            return ResponseValue.error("登录用户信息不存在");
        }
        param.setAgencyId(Long.valueOf(currentUser.getTenantId()));
        GenericPager<BaseWarehouse> pager = this.baseWarehouseService.queryList(param, currentUser);
        return ResponseValue.success(pager);
    }
@@ -65,7 +91,12 @@
     * @Date 2023/10/26
     */
    @PostMapping("/edit")
    public ResponseValue edit(@RequestBody BaseWarehouse baseWarehouse) {
    public ResponseValue edit() {
        BaseWarehouse baseWarehouse = CommonUtil.getObjFromReqBody(BaseWarehouse.class);
        BaseWarehouse param2 = new BaseWarehouse();
        CommonUtil.copyProperties(baseWarehouse, param2);
        baseWarehouse = param2;
        Long id = baseWarehouse.getId();
        if (id == null || id <= 0) {
            return ResponseValue.error("编辑的仓库不存在");
@@ -80,6 +111,7 @@
    /**
     * 根据仓库id查询仓库详情
     *
     * @author 卢庆阳
     * @Date 2023/10/26
     */
@@ -89,7 +121,9 @@
            return ResponseValue.error("仓库id为空");
        }
        BaseWarehouse baseWarehouse = this.baseWarehouseService.getById(id);
        if (baseWarehouse == null) return ResponseValue.error("查询失败!");
        if (baseWarehouse == null) {
            return ResponseValue.error("查询失败!");
        }
        return ResponseValue.success("查询成功!", baseWarehouse);
    }
@@ -99,7 +133,12 @@
     * @Date 2023/10/26
     */
    @DeleteMapping("/del")
    public ResponseValue updateById(@RequestBody BaseWarehouse baseWarehouse) {
    public ResponseValue updateById() {
        BaseWarehouse baseWarehouse = CommonUtil.getObjFromReqBody(BaseWarehouse.class);
        BaseWarehouse param2 = new BaseWarehouse();
        CommonUtil.copyProperties(baseWarehouse, param2);
        baseWarehouse = param2;
        if (baseWarehouse.getId() == null) {
            return ResponseValue.error("仓库id为空");
        }
@@ -115,7 +154,7 @@
     */
    @GetMapping("/select/userList")
    public ResponseValue queryList(Long baseWarehouseId) {
        if (baseWarehouseId == null){
        if (baseWarehouseId == null) {
            return ResponseValue.error("仓库id为空");
        }
        this.baseWarehouseService.queryUserList(baseWarehouseId);
@@ -123,20 +162,46 @@
    }
    /**
     * @Description  根据机构id查询机构仓库
     * @Description 根据机构id查询机构仓库
     * @Author 卢庆阳
     * @Date 2023/10/27
     */
    @GetMapping("/select/tenant_warehouse")
    public ResponseValue getByAgencyId(Long agencyId) {
        if (agencyId == null) {
            return ResponseValue.error("机构id为空");
            return ResponseValue.success(new ArrayList<>());
        }
        List<BaseWarehouse> list = this.baseWarehouseService.getByAgencyId(agencyId);
        if (list == null) return ResponseValue.error("查询失败!");
        List<BaseWarehouse> list = this.baseWarehouseService.getByAgencyId(agencyId, null, null);
        if (list == null) {
            return ResponseValue.error("查询失败!");
        }
        return ResponseValue.success("查询成功!", list);
    }
    @ApiOperation(value = "根据仓库id和型号id 查询库存", notes = "根据仓库id和型号id 查询库存")
    @ApiImplicitParams({@ApiImplicitParam(name = "warehouseQry", value = "仓库id和型号id", required = true,
        dataType = "WarehouseQry", paramType = "query")})
    @GetMapping("/select/number")
    public ResponseValue selectNumber() {
        WarehouseQry warehouseQry = CommonUtil.getObjFromReq(WarehouseQry.class);
        WarehouseQry param2 = new WarehouseQry();
        CommonUtil.copyProperties(warehouseQry, param2);
        warehouseQry = param2;
        Long warehouseId = warehouseQry.getWarehouseId();
        if (warehouseId == null) {
            Long agencyId = warehouseQry.getAgencyId();
            BaseWarehouse defaultWarehouseByAgencyId =
                this.baseWarehouseService.getDefaultWarehouseByAgencyId(agencyId);
            warehouseId = defaultWarehouseByAgencyId.getId();
        }
        Long baseGoodsModelsId = warehouseQry.getBaseGoodsModelsId();
        Integer warehouseType = warehouseQry.getWarehouseType();
        Integer states = warehouseQry.getStates();
        Integer buyType = warehouseQry.getBuyType();
        int num = this.lWhGoodsService.queryGoodsModelNum(warehouseType, warehouseId, baseGoodsModelsId, 1, buyType);
        return ResponseValue.success(num);
    }
}