CartonsController.java 6.17 KB
package com.huaheng.api.mes.controller;

import java.util.Arrays;
import java.util.List;

import javax.annotation.Resource;

import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.*;

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.api.mes.domain.Cartons;
import com.huaheng.api.mes.service.CartonsService;
import com.huaheng.common.support.Convert;
import com.huaheng.common.utils.StringUtils;
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 io.swagger.annotations.ApiParam;

/**
 * mes纸箱数据 信息操作处理
 * @author huaheng
 * @date   2023-06-01
 */
@Controller
@RequestMapping("/mes/cartons")
public class CartonsController extends BaseController {
    private String prefix = "config/cartons";

    @Resource
    private CartonsService cartonsService;

    @RequiresPermissions("mes:cartons:view")
    @GetMapping()
    public String cartons() {
        return prefix + "/cartons";
    }

    /**
     * 查询mes纸箱数据列表
     */
    @PostMapping("/list")
    @ResponseBody
    public TableDataInfo list(Cartons cartons, @ApiParam(name = "createdBegin", value = "起止时间") String createdBegin,
        @ApiParam(name = "createdEnd", value = "结束时间") String createdEnd) {
        LambdaQueryWrapper<Cartons> lambdaQueryWrapper = Wrappers.lambdaQuery();
        lambdaQueryWrapper.eq(StringUtils.isNotNull(cartons.getQty()), Cartons::getQty, cartons.getQty())
            .eq(StringUtils.isNotEmpty(cartons.getCode()), Cartons::getCode, cartons.getCode())
            .eq(StringUtils.isNotEmpty(cartons.getCartonsSpec()), Cartons::getCartonsSpec, cartons.getCartonsSpec())
            .eq(StringUtils.isNotEmpty(cartons.getMachine()), Cartons::getMachine, cartons.getMachine())
            .eq(StringUtils.isNotEmpty(cartons.getCreatedBy()), Cartons::getCreatedBy, cartons.getCreatedBy())
            .gt(StringUtils.isNotEmpty(createdBegin), Cartons::getCreated, createdBegin).lt(StringUtils.isNotEmpty(createdEnd), Cartons::getCreated, createdEnd)
            .eq(StringUtils.isNotEmpty(cartons.getLastUpdatedBy()), Cartons::getLastUpdatedBy, cartons.getLastUpdatedBy())
            .eq(StringUtils.isNotEmpty(cartons.getOrderCode()), Cartons::getOrderCode, cartons.getOrderCode())
            .eq(StringUtils.isNotEmpty(cartons.getState()), Cartons::getState, cartons.getState())
            .eq(StringUtils.isNotEmpty(cartons.getStackingPort()), Cartons::getStackingPort, cartons.getStackingPort())
            .eq(StringUtils.isNotEmpty(cartons.getPalletizingPosition()), Cartons::getPalletizingPosition, cartons.getPalletizingPosition())
            .eq(StringUtils.isNotEmpty(cartons.getCartonSign()), Cartons::getCartonSign, cartons.getCartonSign())
            .eq(StringUtils.isNotEmpty(cartons.getMaterialCode()), Cartons::getMaterialCode, cartons.getMaterialCode())
            .eq(StringUtils.isNotEmpty(cartons.getContainerCode()), Cartons::getContainerCode, cartons.getContainerCode())
            .eq(StringUtils.isNotEmpty(cartons.getCartonsMaterialCode()), Cartons::getCartonsMaterialCode, cartons.getCartonsMaterialCode())
            .eq(StringUtils.isNotEmpty(cartons.getProductionOrderNumber()), Cartons::getProductionOrderNumber, cartons.getProductionOrderNumber())
            .eq(StringUtils.isNotEmpty(cartons.getBatch()), Cartons::getBatch, cartons.getBatch())
            .eq(StringUtils.isNotNull(cartons.getForcedReceipt()), Cartons::getForcedReceipt, cartons.getForcedReceipt()).orderByDesc(Cartons::getLastUpdated);
        PageDomain pageDomain = TableSupport.buildPageRequest();
        Integer pageNum = pageDomain.getPageNum();
        Integer pageSize = pageDomain.getPageSize();
        if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)) {
            /* 使用分页查询 */
            Page<Cartons> page = new Page<>(pageNum, pageSize);
            IPage<Cartons> iPage = cartonsService.page(page, lambdaQueryWrapper);
            return getMpDataTable(iPage.getRecords(), iPage.getTotal());
        } else {
            List<Cartons> list = cartonsService.list(lambdaQueryWrapper);
            return getDataTable(list);
        }
    }

    /**
     * 新增mes纸箱数据
     */
    @GetMapping("/add")
    public String add() {
        return prefix + "/add";
    }

//    /**
//     * 新增保存mes纸箱数据
//     */
//    @Log(title = "mes纸箱数据", action = BusinessType.INSERT)
//    @PostMapping("/add")
//    @ResponseBody
//    public AjaxResult addSave(Cartons cartons) {
//        return toAjax(cartonsService.save(cartons));
//    }

    /**
     * 修改mes纸箱数据
     */
    @GetMapping("/edit/{id}")
    public String edit(@PathVariable("id") Long id, ModelMap mmap) {
        Cartons cartons = cartonsService.getById(id);
        mmap.put("cartons", cartons);
        return prefix + "/edit";
    }

    /**
     * 修改保存mes纸箱数据
     */
    @RequiresPermissions("mes:cartons:edit")
    @Log(title = "mes纸箱数据", action = BusinessType.UPDATE)
    @PostMapping("/edit")
    @ResponseBody
    public AjaxResult editSave(Cartons cartons) {
        return toAjax(cartonsService.updateById(cartons));
    }

    /**
     * 删除mes纸箱数据
     */
    @RequiresPermissions("mes:cartons:remove")
    @Log(title = "mes纸箱数据", action = BusinessType.DELETE)
    @PostMapping("/remove")
    @ResponseBody
    public AjaxResult remove(String ids) {
        if (StringUtils.isEmpty(ids)) {
            return AjaxResult.error("id不能为空");
        }
        return toAjax(cartonsService.removeByIds(Arrays.asList(Convert.toIntArray(ids))));
    }

}