自动化立体仓库 - WMS系统
#
lsh
2024-10-26 ce697013e8b5d43bffafc3f3e4500c62316917b5
#
3个文件已修改
2个文件已添加
214 ■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/MatController.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/result/OrderGiftProofreadingVo.java 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/common/entity/OrderGiftProofreadingExcel.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/orderGift/orderGift.js 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/orderGift/orderGift.html 50 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/MatController.java
@@ -22,6 +22,7 @@
import com.zy.common.CodeRes;
import com.zy.common.config.AdminInterceptor;
import com.zy.common.entity.MatExcel;
import com.zy.common.entity.OrderGiftProofreadingExcel;
import com.zy.common.entity.OutLocBoxExcel;
import com.zy.common.entity.pandianExcel;
import com.zy.common.utils.BarcodeUtils;
@@ -394,4 +395,32 @@
    /*************************************** xm-select ***********************************************/
    /*********************************************核对导入导出****************************************************************/
    /**
     * excel导入模板下载
     */
    @RequestMapping(value = "/out/order/gift/excel/import/mould")
    public void outLocBoxExcelImportMould2(HttpServletResponse response) throws IOException {
        List<OrderGiftProofreadingExcel> excels = new ArrayList<>();
        response.setContentType("application/vnd.ms-excel");
        response.setCharacterEncoding("utf-8");
        String fileName = URLEncoder.encode("导入校对模板", "UTF-8");
        response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
        EasyExcel.write(response.getOutputStream(), OrderGiftProofreadingExcel.class)
                .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
                .sheet("校对模板")
                .doWrite(excels);
    }
    // excel导入
    @PostMapping(value = "/out/order/gift/excel/import/auth")
    @ManagerAuth(memo = "导入校对订单")
    @Transactional
    public R outLocBoxExcelImport2(MultipartFile file) throws IOException {
        OutpandianBoxExeclListener listener = new OutpandianBoxExeclListener(getUserId());
        EasyExcel.read(file.getInputStream(), OrderGiftProofreadingExcel.class, listener).sheet().doRead();
        return R.ok("成功导入"+listener.getTotal()+"条校对订单明细");
    }
    /*************************************** xm-select ***********************************************/
}
src/main/java/com/zy/asrs/entity/result/OrderGiftProofreadingVo.java
New file
@@ -0,0 +1,42 @@
package com.zy.asrs.entity.result;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
/**
 * Created by vincent on 2021/4/13
 */
@Data
public class OrderGiftProofreadingVo {
    @ExcelProperty(value = "订单号")
    private String orderNo;
    @ExcelProperty(value = "规格")
    private String matnr;
    @ExcelProperty(value = "箱号")
    private String batch;
    @ExcelProperty(value = "卷号")
    private String model="";
    @ExcelProperty(value = "长度")
    private String price="";
    @ExcelProperty(value = "净重")
    private String weight="";
    @ExcelProperty(value = "毛重")
    private String volume="";
    @ExcelProperty(value = "备注")
    private String memo="";
    public OrderGiftProofreadingVo() {
    }
    public OrderGiftProofreadingVo(String orderNo, String matnr, String batch, String model, String price, String weight, String volume, String memo) {
        this.orderNo = orderNo;
        this.matnr = matnr;
        this.batch = batch;
        this.model = model;
        this.price = price;
        this.weight = weight;
        this.volume = volume;
        this.memo = memo;
    }
}
src/main/java/com/zy/common/entity/OrderGiftProofreadingExcel.java
New file
@@ -0,0 +1,26 @@
package com.zy.common.entity;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.zy.asrs.entity.result.OrderGiftProofreadingVo;
import lombok.Data;
/**
 * 0.A 1.B 2.C 3.D 4.E 5.F 6.G 7.H 8.I
 * 9.J 10.K 11.L 12.M 13.N 14.O 15.P 16.Q 17.R 18.S
 * 19.T 20.U 21.V 22.W 23.X 24.Y 25.Z
 */
@Data
@ExcelIgnoreUnannotated
public class OrderGiftProofreadingExcel extends OrderGiftProofreadingVo {
    private String orderNo;
    private String matnr;
    private String batch;
    private String model;
    private String price;
    private String weight;
    private String volume;
    private String memo;
}
src/main/webapp/static/js/orderGift/orderGift.js
@@ -160,6 +160,17 @@
        showEditModel();
    });
    // 导入模板
    $("#orderAddExcel").click(function () {
        importExcel();
    });
    // 导入模板下载
    $("#orderAddExcelDownload").click(function () {
        excelMouldDownload();
    });
    // 工具条点击事件
    table.on('tool(order)', function (obj) {
        var data = obj.data;
@@ -869,3 +880,59 @@
        });
    }
});
// excel导入模板下载
function excelMouldDownload(){
    layer.load(1, {shade: [0.1,'#fff']});
    location.href = baseUrl + "/out/order/gift/excel/import/mould";
    layer.closeAll('loading');
}
// excel导入
function importExcel() {
    console.log("导入")
    $("#importExcel").trigger("click");
}
function upload(obj){
    if(!obj.files) {
        return;
    }
    var file = obj.files[0];
    admin.confirm('确认同步 [' + file.name +'] 文件吗?', function (index) {
        layer.load(1, {shade: [0.1,'#fff']});
        var url = baseUrl + "/out/order/gift/excel/import/auth";
        var form = new FormData();
        form.append("file", file);
        xhr = new XMLHttpRequest();
        xhr.open("post", url, true); //post方式,url为服务器请求地址,true 该参数规定请求是否异步处理。
        xhr.setRequestHeader('token', localStorage.getItem('token'));
        xhr.onload = uploadComplete; //请求完成
        xhr.onerror =  uploadFailed; //请求失败
        xhr.onloadend = function () { // // 上传完成重置文件流
            layer.closeAll('loading');
            $("#importExcel").val("");
        };
        // xhr.upload.onprogress = progressFunction;//【上传进度调用方法实现】
        xhr.upload.onloadstart = function(){//上传开始执行方法
            ot = new Date().getTime();   //设置上传开始时间
            oloaded = 0;//设置上传开始时,以上传的文件大小为0
        };
        xhr.send(form);
    }, function(index){
        $("#importExcel").val("");
    });
}
function uploadComplete(evt) {
    var res = JSON.parse(evt.target.responseText);
    if(res.code === 200) {
        layer.msg(res.msg, {icon: 1});
        loadTree("");
    } else {
        layer.msg(res.msg, {icon: 2});
    }
}
function uploadFailed(evt) {
    var res = JSON.parse(evt.target.responseText);
    layer.msg(res.msg, {icon: 2});
}
src/main/webapp/views/orderGift/orderGift.html
@@ -54,34 +54,36 @@
                            <input name="order_no" class="layui-input" type="text" placeholder="输入单据编号"/>
                        </div>
                    </div>
                    <div class="layui-inline" style="width: 300px">
                        <div class="layui-input-inline">
                            <input class="layui-input layui-laydate-range" name="create_time" type="text" placeholder="起始时间 - 终止时间" autocomplete="off" style="width: 300px">
                        </div>
                    </div>
                    <div class="layui-inline">
                        <div class="layui-input-inline">
                            <select name="doc_type" id="docType-query">
                            </select>
                        </div>
                    </div>
                    <div class="layui-inline">
                        <div class="layui-input-inline">
                            <select name="settle">
                                <option value="">选择状态</option>
                                <option value="1">待处理</option>
                                <option value="2">作业中</option>
                                <option value="4">已完成</option>
                                <option value="6">上报完成</option>
                            </select>
                        </div>
                    </div>
<!--                    <div class="layui-inline" style="width: 300px">-->
<!--                        <div class="layui-input-inline">-->
<!--                            <input class="layui-input layui-laydate-range" name="create_time" type="text" placeholder="起始时间 - 终止时间" autocomplete="off" style="width: 300px">-->
<!--                        </div>-->
<!--                    </div>-->
<!--                    <div class="layui-inline">-->
<!--                        <div class="layui-input-inline">-->
<!--                            <select name="doc_type" id="docType-query">-->
<!--                            </select>-->
<!--                        </div>-->
<!--                    </div>-->
<!--                    <div class="layui-inline">-->
<!--                        <div class="layui-input-inline">-->
<!--                            <select name="settle">-->
<!--                                <option value="">选择状态</option>-->
<!--                                <option value="1">待处理</option>-->
<!--                                <option value="2">作业中</option>-->
<!--                                <option value="4">已完成</option>-->
<!--                                <option value="6">上报完成</option>-->
<!--                            </select>-->
<!--                        </div>-->
<!--                    </div>-->
                    <div class="layui-inline">
                        <button class="layui-btn icon-btn" lay-filter="tbSearch" lay-submit>
                            <i class="layui-icon">&#xe615;</i>搜索
                        </button>
<!--                        <button id="orderAddBtn" class="layui-btn icon-btn btn-add"><i class="layui-icon">&#xe654;</i>添加-->
<!--                        </button>-->
                        <button id="orderAddExcel" class="layui-btn icon-btn btn-add"><i class="layui-icon">&#xe654;</i>导入数据
                        </button>
                        <button id="orderAddExcelDownload" class="layui-btn icon-btn btn-add"><i class="layui-icon">&#xe654;</i>导入模板下载
                        </button>
                    </div>
                </div>
            </div>