cycleCountHeader.html 12.5 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 select-table">
            <ul id="myTab" class="nav nav-tabs">
                <li class="active"><a href="#tabHeader" data-toggle="tab">主表</a></li>
                <li><a href="#tabDetail" data-toggle="tab">明细</a></li>
            </ul>
            <div id="myTabContent" class="tab-content">
                <div class="tab-pane fade in active" id="tabHeader">
                    <div class="col-sm-12 select-table">
                        <form id="cycleHeader-form" autocomplete="off">
                            <div class="select-list">
                                <ul>
                                    <!--<li>
                                        <label>盘点主单ID:</label>
                                        <input type="text" name="id"/>
                                    </li>
                                    <li>
                                        <label>源盘点单号:</label>
                                        <input type="text" name="sourceCode"/>
                                    </li>-->
                                    <li>
                                        <label>盘点单编码:</label>
                                        <input name="code" placeholder="请输入盘点单编码" type="text"/>
                                    </li>
                                    <!--<li>
                                        <label>原始盘点ID:</label>
                                        <input type="text" name="countOrderId"/>
                                    </li>-->
                                    <li>
                                        <label>盘点单类型:</label>
                                        <select name="countType"
                                                th:with="firstStatus=${@dict.getType('cycleCountType')}">
                                            <option value="">所有</option>
                                            <option th:each="e : ${firstStatus}" th:text="${e['dictLabel']}"
                                                    th:value="${e['dictValue']}">
                                            </option>
                                        </select>
                                    </li>
                                    <li>
                                        <label>盘点单状态:</label>
                                        <select name="statusCyc"
                                                th:with="lastStatus=${@dict.getType('cycleCountStatus')}">
                                            <option value="">所有</option>
                                            <option th:each="e : ${lastStatus}" th:text="${e['dictLabel']}"
                                                    th:value="${e['dictValue']}">
                                            </option>
                                        </select>
                                    </li>
                                    <li class="select-time">
                                        <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 style="float: right; margin-right: 45px">
                                        <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()">
                                            <i class="fa fa-search"></i>&nbsp;搜索
                                        </a>
                                        <a class="btn btn-warning btn-rounded btn-sm"
                                           onclick="$.form.reset('cycleHeader-form')">
                                            <i class="fa fa-refresh"></i>&nbsp;重置
                                        </a>
                                    </li>
                                </ul>
                            </div>
                        </form>
                    </div>
                    <div class="btn-group hidden-xs" id="toolbar" role="group">
                        <a class="btn btn-outline btn-success btn-rounded" onclick="$.operate.add()"
                           shiro:hasPermission="inventory:cycleCountHeader:add">
                            <i class="fa fa-plus"></i> 新增
                        </a>
                        <a class="btn btn-outline btn-danger btn-rounded" onclick="$.operate.batRemove()"
                           shiro:hasPermission="inventory:cycleCountHeader:remove">
                            <i class="fa fa-trash-o"></i> 删除
                        </a>
                    </div>
                    <div class="col-sm-12 select-table">
                        <table id="bootstrap-table" data-mobile-responsive="true"
                               class="table table-bordered table-hover text-nowrap"></table>
                    </div>
                </div>
                <div class="tab-pane fade" id="tabDetail"></div>
            </div>
        </div>
    </div>
</div>
<div th:include="include :: footer"></div>
<script th:inline="javascript">
    let removeFlag = [[${@permission.hasPermi('inventory:cycleCount:remove')}]];
    let prefix = ctx + "inventory/cycleCountHeader";
    let sysNormalDisable = [[${@dict.getType('sys_normal_disable')}]];
    let types = [[${@dict.getType('cycleCountType')}]];
    let preference = [[${@cycleCountPreferenceService.selectCycleCountPreferenceList()}]];
    let cycleCountStatus = [[${@dict.getType('cycleCountStatus')}]];
    $(function () {
        let options = {
            url: prefix + "/list",
            createUrl: prefix + "/add",
            updateUrl: prefix + "/edit/{id}",
            removeUrl: prefix + "/remove",
            modalName: "盘点单",
            sortName: "created",
            sortOrder: "desc",
            search: false,
            onDblClickRow: function (row) {
                detail(row.id, row.masterCode);
            },
            columns: [
                {
                    checkbox: true
                },
                {
                    field: 'code',
                    title: '盘点单编码'
                },
                {
                    field: 'totalLocs',
                    title: '总库位数'
                },
                {
                    field: 'totalItems',
                    title: '总物料数'
                },
                {
                    field: 'countType',
                    title: '盘点单类型',
                    align: 'center',
                    formatter: function (value, row, index) {
                        return $.table.selectDictLabel(types, value);
                    }
                },
                {
                    field: 'preferenceCode',
                    title: '盘点方式',
                    align: 'center',
                    formatter: function (value, row, index) {
                        let actions = [];
                        $.each(preference, function (index, dict) {
                            if (dict.code === value) {
                                if (dict.name === '暗盘') {
                                    actions.push("<span class='badge badge-success'>" + dict.name + "</span>");
                                }
                                if (dict.name === '明盘') {
                                    actions.push("<span class='badge badge-info'>" + dict.name + "</span>");
                                }
                                return false;
                            }
                        });
                        return actions.join('');
                    }
                },
                {
                    field: 'statusCyc',
                    title: '盘点单状态',
                    formatter: function (value, row, index) {
                        return $.table.selectDictLabel(cycleCountStatus, value);
                    }
                },
                /*{
                    field: 'verifyBy',
                    title: '审核人',
                },*/
                {
                    field: 'created',
                    title: '创建时间',
                    formatter: function (created, row, index) {  //去除时间中间的T
                        return created.replace("T", " ");
                    }
                },
                {
                    field: 'createdBy',
                    title: '创建用户'
                },
                {
                    field: 'lastUpdated',
                    title: '更新时间',
                    formatter: function (lastUpdated, row, index) {   //去除时间中间的T
                        return lastUpdated.replace("T", " ");
                    }
                },
                {
                    field: 'lastUpdatedBy',
                    title: '更新用户'
                },
                {
                    field: 'enable',

                    title: '是否有效',
                    align: 'center',
                    formatter: function (value, row, index) {
                        return $.table.selectDictLabel(sysNormalDisable, value);
                    }
                },
                {
                    field: 'remark',
                    title: '备注',
                    visible: true
                },
                {
                    title: '操作',
                    align: 'center',
                    formatter: function (value, row, index) {
                        let actions = [];
                        if (row.statusCyc === 105) {
                            actions.push('<a class="btn btn-warning btn-xs " href="#" onclick="goDifference(\'' + row.id + '\')"><i class="fa fa-plus"></i>生成调整单</a> ');
                        }
                        actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a> ');
                        return actions.join('');
                    }
                }
            ]
        };
        $.table.init(options);
        $("#myTab li:eq(1)").click(function () {
            detail();
        });
    });

    function detail(id, code) {
        let $tabDetail = $("#tabDetail");
        let url;
        if (code != null && code !== "" && code !== undefined) {
            url = ctx + "inventory/cycleCountDetail/cycleCountHead?cycleCountHeadCode=" + code;
        } else {
            url = ctx + "inventory/cycleCountDetail/cycleCountHead?cycleCountHeadCode=" + "";
        }
        $tabDetail.children().remove();
        $("#myTab li").removeClass("active");
        let height = $(document).height() - 100 + 'px';
        let str = '<iframe class="huaheng_iframe" name="iframe" width="100%" height="' + height + '" src="' + url + '" frameborder="0" data-id="' + url + '" seamless></iframe>';
        $tabDetail.empty();
        $tabDetail.append(str);
        $(".tab-pane").removeClass("in active");
        $("#myTab li:eq(1)").addClass("active");
        $tabDetail.addClass("in active");
    }

    //盘点单打印
    function cyclecountPrint(id) {
        let url = prefix + "/report/" + id;
        $.modal.open("盘点单打印", url);
    }

    //生成差异调整单
    function goDifference(id) {
        let url = prefix + "/goAdjust";
        let data = {"id": id};
        postInner(url, data);
    }

    function postInner(url, data) {
        $.modal.loading("正在处理中,请稍后...");
        $.ajax({
            url: url,
            type: "post",
            data: data,
            success: function (result) {
                if (result.code === web_status.SUCCESS) {
                    $.modal.msgSuccess(result.msg);
                    $("#bootstrap-table").bootstrapTable("refresh");
                } else {
                    $.modal.alertError(result.msg);
                }
                $.modal.closeLoading();
            }
        })
    }


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