add.html 5.06 KB
<!DOCTYPE HTML>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<meta charset="utf-8">
<head>
    <th:block th:include="include :: header"/>
    <th:block th:include="include :: select2-css"/>
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
    <form class="form-horizontal m" id="form-receiptDetail-add">
        <div class="form-group" hidden="hidden">
            <label class="col-sm-3 control-label">入库单id:</label>
            <div class="col-sm-8">
                <input id="receiptId" name="receiptId" class="form-control" type="text" th:value="${receiptId}" readonly="readonly">
                <input id="companyCode" name="companyCode" type="hidden" th:value="${companyCode}">
            </div>
        </div>
        <div class="form-group">
            <label class="col-sm-3 control-label">物料编码:</label>
            <div class="col-sm-8">
                <select id="materialCode" name="materialCode" class="form-control"></select>
            </div>
        </div>
        <div class="form-group">
            <label class="col-sm-3 control-label">数量:</label>
            <div class="col-sm-8">
                <input id="qty" name="qty" class="form-control" type="text">
            </div>
        </div>
        <div class="form-group">
            <label class="col-sm-3 control-label">批次:</label>
            <div class="col-sm-8">
                <input id="batch" name="batch" class="form-control" type="text">
            </div>
        </div>
        <div class="form-group">
            <label class="col-sm-3 control-label">库存状态:</label>
            <div class="col-sm-8">
                <select id="inventorySts" name="inventorySts" class="form-control" th:with="inventoryStatus=${@dict.getType('inventorySts')}">
                    <option th:each="dict : ${inventoryStatus}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option>
                </select>
            </div>
        </div>
        <div class="form-group">
            <div class="form-control-static col-sm-offset-9">
                <button type="submit" class="btn btn-primary">提交</button>
                <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
            </div>
        </div>
    </form>
</div>
<th:block th:include="include :: footer"/>
<th:block th:include="include :: select2-js"/>
<script type="text/javascript">
    let prefix = ctx + "receipt/receiptDetail";
    $("#form-receiptDetail-add").validate({
        rules: {
            receiptId: {
                required: true
            },
            materialCode: {
                required: true
            },
            qty: {
                required: true,
                number: true
            }
        },
        submitHandler: function (form) {
            $.ajax({
                cache: true,
                type: "POST",
                url: prefix + "/add",
                data: $("#form-receiptDetail-add").serializeArray(),
                async: false,
                error: function (request) {
                    $.modal.msgError("请求失败!");
                },
                success: function (data) {
                    ajaxSuccess(data);
                }
            });
        }
    });

    function ajaxSuccess(result) {
        if (result.code === web_status.SUCCESS) {
            $.modal.msgSuccess(result.msg);
            let index = parent.layer.getFrameIndex(window.name);
            parent.layer.close(index);
            window.parent.loadDetail();
        } else {
            $.modal.msgError(result.msg);
        }
        $.modal.closeLoading();
    }

    $(function () {
        $('#materialCode').select2({
            placeholder: '请选择物料',
            allowClear: true,
            ajax: {
                url: ctx + 'config/material/getData',
                dataType: 'json',
                type: 'post',
                delay: 250,
                data: function (params) {
                    return {
                        materialName: params.term,
                        page: params.page || 1,
                        rows: 10
                    };
                },
                //数据集处理
                processResults: function (data, params) {
                    data.results.forEach(data => {
                        data.text = data.id + " " + data.text
                    })
                    params.page = params.page || 1;
                    return {
                        //这里是返回的数据:数据格式必须遵循select2格式 如:{ id: 1, text: 'aojian' }, { id: 2, text: 'dahuang' }];
                        results: data.results,
                        pagination: {
                            //more:表示下拉刷新,data.total表示总页数,这里的意思是当前页小于总页数的时候就显示下拉分页
                            more: (params.page) < data.total
                        }
                    };
                },
            }
        });
    });

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