package com.consum.base.controller;
|
|
import com.consum.base.BaseController;
|
import com.consum.base.pojo.BaseWarehouseParam;
|
import com.consum.base.pojo.query.WarehouseQry;
|
import com.consum.base.service.BaseWarehouseServiceImpl;
|
import com.consum.base.service.LWhGoodsService;
|
import com.consum.model.po.BaseWarehouse;
|
import com.consum.model.po.FinSysTenantUser;
|
import com.walker.db.page.GenericPager;
|
import com.walker.infrastructure.utils.StringUtils;
|
import com.walker.web.ResponseValue;
|
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiOperation;
|
import java.util.List;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.validation.annotation.Validated;
|
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.RequestBody;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
/**
|
* @Description 仓库管理
|
* @Author 卢庆阳
|
* @Date 2023/10/26
|
*/
|
@RestController
|
@RequestMapping("/pc/base/warehouse")
|
public class BaseWarehouseController extends BaseController {
|
|
@Autowired
|
private BaseWarehouseServiceImpl baseWarehouseService;
|
@Autowired
|
private LWhGoodsService lWhGoodsService;
|
|
|
/**
|
* @Description 新增
|
* @Author 卢庆阳
|
* @Date 2023/10/26
|
*/
|
@PostMapping("/add")
|
public ResponseValue add(@RequestBody BaseWarehouseParam param) {
|
if (StringUtils.isEmpty(param.getWarehouseName())) {
|
return ResponseValue.error("仓库名称为空");
|
}
|
//TODO 加权限 省级管理员录入所有仓库信息
|
|
int result = this.baseWarehouseService.add(param);
|
if (result > 0) {
|
return ResponseValue.success(1);
|
}
|
return ResponseValue.error("新增失败!");
|
}
|
|
/**
|
* @Description 仓库列表查询
|
* @Author 卢庆阳
|
* @Date 2023/10/26
|
*/
|
@GetMapping("/list")
|
public ResponseValue queryList(BaseWarehouseParam param) {
|
FinSysTenantUser sysInfo = this.getSysInfo();
|
if (sysInfo == null) {
|
return ResponseValue.error("登录用户信息不存在");
|
}
|
param.setAgencyId(Long.valueOf(sysInfo.getTenantId()));
|
GenericPager<BaseWarehouse> pager = this.baseWarehouseService.queryList(param);
|
return ResponseValue.success(pager);
|
}
|
|
/**
|
* @Description 编辑(修改状态)
|
* @Author 卢庆阳
|
* @Date 2023/10/26
|
*/
|
@PostMapping("/edit")
|
public ResponseValue edit(@RequestBody BaseWarehouse baseWarehouse) {
|
Long id = baseWarehouse.getId();
|
if (id == null || id <= 0) {
|
return ResponseValue.error("编辑的仓库不存在");
|
}
|
if (StringUtils.isEmpty(baseWarehouse.getWarehouseName())) {
|
return ResponseValue.error("仓库名称为空");
|
}
|
|
int num = this.baseWarehouseService.updateBaseWarehouse(baseWarehouse);
|
return num > 0 ? ResponseValue.success(1) : ResponseValue.error("编辑失败!");
|
}
|
|
/**
|
* 根据仓库id查询仓库详情
|
*
|
* @author 卢庆阳
|
* @Date 2023/10/26
|
*/
|
@GetMapping("/detail")
|
public ResponseValue getById(Long id) {
|
if (id == null) {
|
return ResponseValue.error("仓库id为空");
|
}
|
BaseWarehouse baseWarehouse = this.baseWarehouseService.getById(id);
|
if (baseWarehouse == null) {
|
return ResponseValue.error("查询失败!");
|
}
|
return ResponseValue.success("查询成功!", baseWarehouse);
|
}
|
|
/**
|
* @Description 根据id删除仓库
|
* @Author 卢庆阳
|
* @Date 2023/10/26
|
*/
|
@DeleteMapping("/del")
|
public ResponseValue updateById(@RequestBody BaseWarehouse baseWarehouse) {
|
if (baseWarehouse.getId() == null) {
|
return ResponseValue.error("仓库id为空");
|
}
|
int num = this.baseWarehouseService.updateById(baseWarehouse);
|
|
return num > 0 ? ResponseValue.success(1) : ResponseValue.error("删除失败!");
|
}
|
|
/**
|
* @Description 根据仓库id获取机构用户信息
|
* @Author 卢庆阳
|
* @Date 2023/10/26
|
*/
|
@GetMapping("/select/userList")
|
public ResponseValue queryList(Long baseWarehouseId) {
|
if (baseWarehouseId == null) {
|
return ResponseValue.error("仓库id为空");
|
}
|
this.baseWarehouseService.queryUserList(baseWarehouseId);
|
return ResponseValue.success();
|
}
|
|
/**
|
* @Description 根据机构id查询机构仓库
|
* @Author 卢庆阳
|
* @Date 2023/10/27
|
*/
|
@GetMapping("/select/tenant_warehouse")
|
public ResponseValue getByAgencyId(Long agencyId) {
|
// TODO 暂无机构
|
// if (agencyId == null) {
|
// return ResponseValue.error("机构id为空");
|
// }
|
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(@Validated WarehouseQry warehouseQry) {
|
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);
|
}
|
|
|
}
|