package com.huaheng.pc.config.materialArea.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.huaheng.common.utils.Wrappers; import com.huaheng.common.support.Convert; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.security.ShiroUtils; import com.huaheng.framework.aspectj.lang.annotation.Log; import com.huaheng.framework.aspectj.lang.constant.BusinessType; import com.huaheng.framework.web.controller.BaseController; import com.huaheng.framework.web.domain.AjaxResult; import com.huaheng.framework.web.page.TableDataInfo; import com.huaheng.pc.config.locationHigh.domain.LocationHigh; import com.huaheng.pc.config.locationHigh.service.LocationHighService; import com.huaheng.pc.config.materialArea.domain.MaterialArea; import com.huaheng.pc.config.materialArea.service.MaterialAreaService; import io.swagger.annotations.Api; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.*; import java.util.List; /** * 物料分区 * * @author youjie * @date 2021-08-24 */ @Api(tags = "物料分区") @Controller @RequestMapping("/config/materialArea") public class MaterialAreaController extends BaseController { private String prefix = "config/materialArea"; @Autowired private MaterialAreaService materialAreaService; @GetMapping() public String materialArea() { return prefix + "/materialArea"; } /** * 查询物料分区列表 */ @Log(title = "基础数据-物料分区", operating = "物料分区", action = BusinessType.GRANT) @PostMapping("/list") @ResponseBody public TableDataInfo list(MaterialArea materialArea, String createdBegin, String createdEnd) { LambdaQueryWrapper<MaterialArea> lambdaQueryWrapper = Wrappers.lambdaQuery(); startPage(); lambdaQueryWrapper.ge(StringUtils.isNotEmpty(createdBegin), MaterialArea::getCreated, createdBegin) .le(StringUtils.isNotEmpty(createdEnd), MaterialArea::getCreated, createdEnd) .eq(MaterialArea::getWarehouseCode, ShiroUtils.getWarehouseCode()) .eq(StringUtils.isNotEmpty(materialArea.getCode()), MaterialArea::getCode, materialArea.getCode()) .orderByAsc(MaterialArea::getId); List<MaterialArea> list = materialAreaService.list(lambdaQueryWrapper); return getDataTable(list); } /** * 新增库位类型 */ @GetMapping("/add") public String add() { return prefix + "/add"; } /** * 新增物料分区 */ @Log(title = "基础数据-物料分区", operating = "新增物料分区", action = BusinessType.INSERT) @PostMapping("/add") @ResponseBody public AjaxResult addSave(MaterialArea materialArea) { if(StringUtils.isEmpty(materialArea.getCode())) { return AjaxResult.error("物料分区编码为空"); } materialArea.setWarehouseCode(ShiroUtils.getWarehouseCode()); return toAjax(materialAreaService.save(materialArea)); } /** * 修改物料分区 */ @GetMapping("/edit/{id}") public String edit(@PathVariable("id") Integer id, ModelMap mmap) { MaterialArea materialArea = materialAreaService.getById(id); mmap.put("materialArea", materialArea); return prefix + "/edit"; } /** * 修改物料分区 */ @Log(title = "基础数据-物料分区", operating = "修改物料分区", action = BusinessType.UPDATE) @PostMapping("/edit") @ResponseBody public AjaxResult editSave(MaterialArea materialArea) { return toAjax(materialAreaService.saveOrUpdate(materialArea)); } /** * 删除物料分区 */ @Log(title = "基础数据-物料分区", operating = "修改物料分区", action = BusinessType.DELETE) @PostMapping( "/remove") @ResponseBody public AjaxResult remove(String ids) { if (StringUtils.isEmpty(ids)) { return AjaxResult.error("id不能为空"); } for (Integer id : Convert.toIntArray(ids)) { materialAreaService.removeById(id); } return AjaxResult.success("删除成功!"); } }