自动化立体仓库 - WMS系统
#
zjj
2024-09-23 539d9ffc477d28a23a923b41fdeabc8c37c99ce6
src/main/java/com/zy/asrs/controller/OrderCheckController.java
@@ -1,5 +1,8 @@
package com.zy.asrs.controller;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
@@ -8,10 +11,7 @@
import com.core.common.*;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
import com.zy.asrs.entity.param.CheckDTO;
import com.zy.asrs.entity.param.MatnrDto;
import com.zy.asrs.entity.param.OrderCheckParam;
import com.zy.asrs.entity.param.OrderDomainParam;
import com.zy.asrs.entity.param.*;
import com.zy.asrs.entity.result.KeyValueVo;
import com.zy.asrs.service.*;
import com.zy.common.CodeRes;
@@ -25,9 +25,11 @@
import org.springframework.web.bind.annotation.*;
import javax.imageio.ImageIO;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.net.URLEncoder;
import java.util.*;
@RestController
@@ -59,6 +61,18 @@
    @Autowired
    private LocCheckTrimService locCheckTrimService;
    @RequestMapping(value = "/orderCheck/examine")
    @ManagerAuth(memo = "审核盘点单")
    @Transactional
    public R examine(@RequestBody ExamineParam param){
        orderCheckService.examine(param);
        return R.ok("审核完成");
    }
    @RequestMapping(value = "/orderCheck/nav/list/auth")
    @ManagerAuth
@@ -132,9 +146,10 @@
        orderCheck.setOrderTime(DateUtils.convert(now));
        orderCheck.setStatus(1);
        orderCheck.setSettle(1L);
        orderCheck.setDocType(23L);
        orderCheck.setDocType(16L);
        orderCheck.setCreateTime(now);
        orderCheck.setUpdateTime(now);
        if (!orderCheckService.insert(orderCheck)) {
            throw new CoolException("保存盘点单主档失败");
        }
@@ -153,6 +168,7 @@
            locCheck.setCreateTime(now);
            locCheck.setUpdateTime(now);
            locCheck.setOrderNo(param.getOrderNo());
            locCheck.setBatch(manLocDetl.getBatch());
            if (!locCheckService.insert(locCheck)){
                return R.error("插入失败");
            }
@@ -509,5 +525,37 @@
    }
    @RequestMapping(value = "/orderCheck/printExport/auth")
 //   @ManagerAuth(memo = "盘点单导出")
    public void export(HttpServletResponse response,@RequestParam String orderNo) throws IOException {
        //从数据库查询数据
        EntityWrapper<LocCheck> locCheckEntityWrapper = new EntityWrapper<>();
        locCheckEntityWrapper.eq("order_no",orderNo);
        List<LocCheck> list = locCheckService.selectList(locCheckEntityWrapper);
        for (LocCheck locCheck:list){
            locCheck.setRealAnfme(null);
        }
        response.setContentType("application/vnd.ms-excel");
        response.setCharacterEncoding("utf-8");
        String fileName = URLEncoder.encode("盘点单", "UTF-8");
        response.setHeader("Content-disposition", "attachment;filename=" + fileName+ orderNo + ".xlsx");
        Set<String> includeColumnFiledNames = new HashSet<String>();
        includeColumnFiledNames.add("orderNo");
        includeColumnFiledNames.add("matnr");
        includeColumnFiledNames.add("maktx");
        includeColumnFiledNames.add("locNo");
        includeColumnFiledNames.add("anfme");
        includeColumnFiledNames.add("owner");
        includeColumnFiledNames.add("payment");
        includeColumnFiledNames.add("createTime");
        includeColumnFiledNames.add("realAnfme");
        EasyExcel.write(response.getOutputStream(), LocCheck.class)
                .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
                .includeColumnFiledNames(includeColumnFiledNames)
                .sheet("表1")
                .doWrite(list);
    }
}