package com.huaheng.pc.config.zoneCapacity.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 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.PageDomain; import com.huaheng.framework.web.page.TableDataInfo; import com.huaheng.framework.web.page.TableSupport; import com.huaheng.pc.config.zoneCapacity.domain.ZoneCapacity; import com.huaheng.pc.config.zoneCapacity.service.ZoneCapacityService; 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.Date; import java.util.List; /** * 库区容量 信息操作处理 * * @author ricard * @date 2019-08-12 */ @Controller @RequestMapping("/config/zoneCapacity") public class ZoneCapacityController extends BaseController { private String prefix = "config/zoneCapacity"; @Autowired private ZoneCapacityService zoneCapacityService; @RequiresPermissions("config:zoneCapacity:view") @GetMapping() public String zoneCapacity() { return prefix + "/zoneCapacity"; } /** * 查询库区容量列表 */ @RequiresPermissions("config:zoneCapacity:list") @Log(title = "配置-库区容量", operating = "查看库区容量列表", action = BusinessType.GRANT) @PostMapping("/list") @ResponseBody public TableDataInfo list(ZoneCapacity zoneCapacity,String createdBegin, String createdEnd) { LambdaQueryWrapper<ZoneCapacity> lambdaQueryWrapper = Wrappers.lambdaQuery(); PageDomain pageDomain = TableSupport.buildPageRequest(); Integer pageNum = pageDomain.getPageNum(); Integer pageSize = pageDomain.getPageSize() >> 1; //除2 lambdaQueryWrapper.ge(StringUtils.isNotEmpty(createdBegin),ZoneCapacity::getCreated, createdBegin) .le(StringUtils.isNotEmpty(createdEnd), ZoneCapacity::getCreated, createdEnd) .eq(ZoneCapacity::getWarehouseCode,ShiroUtils.getWarehouseCode()) .eq(StringUtils.isNotEmpty(zoneCapacity.getMaterialCode()), ZoneCapacity::getMaterialCode, zoneCapacity.getMaterialCode()) .like(StringUtils.isNotEmpty(zoneCapacity.getMaterialName()), ZoneCapacity::getMaterialName, zoneCapacity.getMaterialName()) .orderByAsc(ZoneCapacity::getId); if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){ /** * 使用分页查询 */ Page<ZoneCapacity> page = new Page<>(pageNum, pageSize); IPage<ZoneCapacity> iPage = zoneCapacityService.page(page, lambdaQueryWrapper); return getMpDataTable(iPage.getRecords(),iPage.getTotal()); } else { List<ZoneCapacity> list = zoneCapacityService.list(lambdaQueryWrapper); return getDataTable(list); } } /** * 新增库区容量 */ @GetMapping("/add") public String add() { return prefix + "/add"; } /** * 新增保存库区容量 */ @RequiresPermissions("config:zoneCapacity:add") @Log(title = "配置-库区容量", operating = "新增库区容量", action = BusinessType.INSERT) @PostMapping("/add") @ResponseBody public AjaxResult addSave(ZoneCapacity zoneCapacity) { AjaxResult ajaxResult=zoneCapacityService.insertModel(zoneCapacity); return ajaxResult; } /** * 修改库区容量 */ @GetMapping("/edit/{id}") public String edit(@PathVariable("id") Integer id, ModelMap mmap) { ZoneCapacity zoneCapacity = zoneCapacityService.getById(id); mmap.put("zoneCapacity", zoneCapacity); return prefix + "/edit"; } /** * 修改保存库区容量 */ @RequiresPermissions("config:zoneCapacity:edit") @Log(title = "配置-库区容量", operating = "修改库区容量", action = BusinessType.UPDATE) @PostMapping("/edit") @ResponseBody public AjaxResult editSave(ZoneCapacity zoneCapacity) { zoneCapacity.setLastUpdatedBy(ShiroUtils.getLoginName()); zoneCapacity.setLastUpdated(new Date()); return toAjax(zoneCapacityService.saveOrUpdate(zoneCapacity)); } /** * 删除库区容量 */ @RequiresPermissions("config:zoneCapacity:remove") @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)) { zoneCapacityService.removeById(id); } return AjaxResult.success("删除成功!"); } }