inventoryMaterialSummary.html 13.2 KB
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<meta charset="utf-8">
<head th:include="include :: header"></head>
<body class="gray-bg">
<div class="container-div">
    <div class="row">
        <div class="col-sm-12">
            <div class="col-sm-12 select-info">
                <form id="inventoryMaterialSummary-form">
                    <div class="select-list">
                        <ul>
                            <!--                    <li>-->
                            <!--                        仓库:<input  id="warehouseCode" type="text" name="warehouseCode" th:value="${warehouseCode}" readonly="readonly"  />-->
                            <!--                    </li>-->
                            <li>
                                库区:
                                <select id="zoneCode" name="zoneCode" th:with="list=${@zone.getCode()}">
                                    <option value="">所有</option>
                                    <option th:each="item : ${list}" th:text="${item['name']}" th:value="${item['code']}" th:attr = " code = ${item['code']}"></option>
                                </select>
                            </li>
                            <li>
                                货主:
                                <select id="companyCode" name="companyCode" th:with="list=${@companyService.getCode()}">
                                    <option value="">所有</option>
                                    <option th:each="item : ${list}" th:text="${item['name']}" th:value="${item['code']}" th:attr = " code = ${item['code']}"></option>
                                </select>
                            </li>
                            <li>
                                物料编码:<input id="materialCode" type="text" name="materialCode" />
                            </li>
                            <li>
                                物料名称:<input id="materialName" type="text" name="materialName" />
                            </li>
                            <li class="time2">
                                <label>创建时间:</label>
                                <input type="text" class="time-input" id="startTime" placeholder="开始时间"
                                       name="createdBegin"/>
                                <span>-</span>
                                <input type="text" class="time-input" id="endTime" placeholder="结束时间"
                                       name="createdEnd"/>
                            </li>
                            <li>
                                <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
                            </li>
                            <li>
                                <a class="btn btn-primary btn-rounded btn-sm" onclick="inventoryPrint()"><i class="fa fa-search"></i>&nbsp;打印</a>
                            </li>
                        </ul>
                    </div>
                </form>
            </div>
            <div class="btn-group hidden-xs" id="toolbar" role="group">
                <!--<a class="btn btn-outline btn-danger btn-rounded" onclick="batRemove()">
                    <i class="fa fa-trash-o"></i> 删除
                </a>-->
            </div>
            <div class="col-sm-12 select-info">
                <table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover"></table>
            </div>
        </div>
    </div>
</div>
<div th:include="include :: footer"></div>
<script th:inline="javascript">
    var prefix = ctx + "inventory/inventoryMaterialSummary";
    var zone =[[${@zone.getCode()}]];
    var company =[[${@companyService.getCode()}]];

    $(function () {
        let options = {
            url: prefix + "/list",
            contentType: "application/x-www-form-urlencoded",   // 编码类型
            method: 'post',                                     // 请求方式(*)
            modalName: "库存汇总",
            sortStable: true,
            sortName: "materialCode",
            sortOrder: "asc",
            search: false,
            showSearch: false,
            showRefresh: true,
            refresh:true,
            showToggle: false,
            showColumns: false,
            showExport: true,                                   //导出
            exportDataType: "all",                              //导出类型basic', 'all', 'selected'.当前页、所有数据、选中数据
            detailView: true,
            pagination: true,
            sidePagination: "client",                          //前端分页
            queryParams : queryParams,
            onExpandRow : function(index, row, $detail) {
                detailChildTable(index, row, $detail);
            },
            responseHandler: function (res) {
                return res;
            },
            columns: [
                {
                    radio: true
                },
                {
                    field: 'warehouseCode',
                    title: '仓库 ',
                    visible: false
                },
                {
                    field: 'zoneCode',
                    title: '库区',
                    align: 'center',
                    formatter: function(value, row, index) {
                        var actions = [];
                        $.each(zone, function(index, dict) {
                            if (dict.code == value) {
                                actions.push("<span class='badge badge-info'>" + dict.name + "</span>");
                                return false;
                            }
                        });
                        return actions.join('');
                    }
                },
                {
                    field: 'companyCode',
                    title: '货主',
                    align: 'center',
                    formatter: function(value, row, index) {
                        var actions = [];
                        $.each(company, function(index, dict) {
                            if (dict.code == value) {
                                actions.push("<span class='badge badge-info'>" + dict.name + "</span>");
                                return false;
                            }
                        });
                        return actions.join('');
                    }
                },
                {
                    field: 'materialCode',
                    title: '物料编码'
                },
                {
                    field: 'materialName',
                    title: '物料名称'
                },
                {
                    field: 'qty',
                    title: '库存总数'
                },
                {
                    field: 'materialSpec',
                    title: '物料规格'
                },
                {
                    field: 'materialUnit',
                    title: '物料单位'
                },
                /*{
                    field: 'weight',
                    title: '总重量'
                },*/
                // {
                //     title: '操作',
                //     align: 'center',
                //     formatter: function (value, row, index) {
                //         var actions = [];
                //           //actions.push('<a class="btn btn-primary btn-xs ' + createTaskFalg + '" href="#" onclick="outcheck(\'' + row.id + '\')"><i class="fa fa-gbp"></i>生成盘点单</a> ');
                //         return actions.join('');
                //     }
                // }
            ]
        };
        $("#bootstrap-table").bootstrapTable(options);
    });

    //子表
    detailChildTable = function(index, row, $detail) {
        let childTable = $detail.html('<table style="table-layout:fixed"></table>').find('table');
        $(childTable).bootstrapTable({
            url: prefix + "/inventoryMaterialSummaryChild",
            method: 'post',
            sortName: "id",
            sortOrder: "desc",
            sidePagination: "server",
            contentType: "application/x-www-form-urlencoded",
            //页面渲染
            responseHandler: responseHandler,
            queryParams : {
                //传值
                warehouseCode : $('#warehouseCode').val(),
                materialCode: row.materialCode,
                companyCode: row.companyCode,
                zoneCode: row.zoneCode,
            },
            columns: [
                {
                    field: 'id',
                    title: '库存明细ID',
                    sortable: true,
                    width: 80
                },
                {
                    field: 'locationCode',
                    title: '库位编码',
                    visible: true,
                    width: 120
                },
                {
                    field: 'containerCode',
                    title: '容器编码',
                    visible: true,
                    width: 100
                },
                {
                    field: 'companyCode',
                    title: '货主编码',
                    visible: false,
                    width: 80
                },
                {
                    field: 'materialCode',
                    title: '物料编码',
                    width: 120
                },
                {
                    field: 'materialName',
                    title: '物料名称',
                    width: 150
                },
                {
                    field: 'materialSpec',
                    title: '物料规格',
                    visible: false
                },
                {
                    field: 'qty',
                    title: '库存数量',
                    width: 70
                },
                {
                    field: 'materialUnit',
                    title: '单位',
                    visible: true,
                    width: 50

                },
                {
                    field: 'projectNo',
                    title: '项目号',
                    visible: true,
                    sortable: true
                },
                {
                    field: 'batch',
                    title: '批次',
                    sortable: true,
                    visible: true
                },
                {
                    field: 'lot',
                    title: '批号',
                    sortable: true,
                    visible: false
                },
                {
                    field: 'receiptCode',
                    title: '入库单编码',
                    visible: true,
                    width: 140
                },
                {
                    field: 'created',
                    title: '入库日期',
                    visible: true,
                    sortable: true,
                    width: 90
                },{
                    field: 'weight',
                    title: '重量',
                    visible: true,
                    width: 50
                },
                /*{
                    title: '操作',
                    align: 'center',
                    width: 200,
                    formatter: function (value, row, index) {
                        var actions = [];
                            actions.push('<a class="btn btn-success btn-xs ' + confirmFlag + '" href="#" onclick="confirmGapQty(\'' + row.id + '\')"><i class="fa fa-comment"></i>实盘登记</a> ');
                        return actions.join('');
                    }
                }*/

            ]
        });
    };

    /*__________*/

    function open(title, url, width, height){
        if (navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)) {
            width = 'auto';
            height = 'auto';
        }
        if (title==null){
            title = false;
        }
        if (url==null){
            url="404.html";
        }
        if ($.common.isEmpty(width)) {
            width = 800;
            // width = ($(window).width() - 100);
        }
        if ($.common.isEmpty(height)) {
            height = ($(window).height() - 50);
        }
        layer.open({
            type: 2,
            area: [width + 'px', height + 'px'],
            fix: false,
            //不固定
            maxmin: true,
            shade: 0.3,
            title: title,
            content: url
            // shadeClose: true, //点击遮罩关闭层
        })
    }

    function responseHandler(res) {
        if (res.code == 200) {
            return { rows: res.data, total: res.total, code: 0};
        } else {
            $.modal.alertWarning(res.msg);
            return { rows: [], total: 0 };
        }
    }

    /* 打印 */
    function inventoryPrint() {
        var company = $('#companyCode').val();
        var url = prefix + "/report/" + company;
        $.modal.open("库存打印", url);
    }

    function queryParams (params) {
        var curParams = {
            // 传递参数查询参数
            warehouseCode:  $('#warehouseCode').val(),
        };
        return curParams;
    }

</script>
</body>
</html>