ShipmentHeaderHistory.js 6.96 KB
layui.config({
    base: "/js/"
}).use(['form', 'element', 'vue', 'layer', 'laydate', 'jquery', 'table', 'hhweb', 'utils', 'Universal'], function () {
    var form = layui.form,
        layer = layui.layer,
        element = layui.element,
        laydate = layui.laydate,
        $ = layui.jquery,
        table = layui.table,
        Universal = layui.Universal;

    var AreaName = 'shipment';
    var TableName = 'ShipmentHeaderHistory';

    var vm = new Vue({
        el: '#modifyForm'
    });

    var vmq = new Vue({
        el: '#panelSearch',
        data: {
        }
    });

    var mainList = {
        NoData: function () {
            return "<div id='background' style='width:100%;height:100%;background-image:url(../../images/NoData.png);background-repeat:no-repeat;background-size:cover;'>.</div>"
        },
        mainList: function () {
            table.reload('mainList', {
                url: "/" + AreaName + "/" + TableName + "/Load"
                , method: "post"
                , text: { none: this.NoData() }
            });
        }
    };

    //编辑
    var EditInfo = function (tabledata) {
        data = tabledata;
        vm.$set('$data', data);
        //表单修改时填充需修改的数据
        var list = {};
        $('.ClearSelector_' + TableName).each(function () {
            var selDom = ($(this));
            if ($(selDom)[0].name.search("q") == -1) {
                list[$(selDom)[0].name] = data[$(selDom)[0].name] + "";
            }
        });
        //表单修改时填充需修改的数据
        form.val('modifyForm', list);
    };

    var selfbtn = {
        //自定义按钮
    };

    var selector = {
        'WarehouseType': {
            SelType: "FromDict",
            SelFrom: "warehouseType",
            SelModel: "WarehouseType",
            SelLabel: "DictLabel",
            SelValue: "DictValue",
            Dom: [$("[name='WarehouseType']"), $("[name='qWarehouseType']")]
        },
        'Type': {
            SelType: "FromDict",
            SelFrom: "shipmentType",
            SelModel: "Type",
            SelLabel: "DictLabel",
            SelValue: "DictValue",
            Dom: [$("[name='Type']"), $("[name='qType']")]
        },
        'FirstStatus': {
            SelType: "FromDict",
            SelFrom: "shipmentHeaderStatus",
            SelModel: "FirstStatus",
            SelLabel: "DictLabel",
            SelValue: "DictValue",
            Dom: [$("[name='FirstStatus']"), $("[name='qFirstStatus']")]
        },
        'LastStatus': {
            SelType: "FromDict",
            SelFrom: "shipmentHeaderStatus",
            SelModel: "LastStatus",
            SelLabel: "DictLabel",
            SelValue: "DictValue",
            Dom: [$("[name='LastStatus']"), $("[name='qLastStatus']")]
        },
        'UploadStatus': {
            SelType: "FromDict",
            SelFrom: "uploadStatus",
            SelModel: "UploadStatus",
            SelLabel: "DictLabel",
            SelValue: "DictValue",
            Dom: [$("[name='UploadStatus']"), $("[name='qUploadStatus']")]
        },
        'InventoryStatus': {
            SelType: "FromDict",
            SelFrom: "inventoryStatus",
            SelModel: "InventoryStatus",
            SelLabel: "DictLabel",
            SelValue: "DictValue",
            Dom: [$("[name='InventoryStatus']"), $("[name='qInventoryStatus']")]
        },
        'Status': {
            SelType: "FromDict",
            SelFrom: "shipmentHeaderStatus",
            SelModel: "Status",
            SelLabel: "DictLabel",
            SelValue: "DictValue"
        },
        'ShipTo': {
            SelType: "FromUrl",
            SelFrom: "/general/Customer/Load",
            SelModel: "ShipTo",
            SelLabel: "Name",
            SelValue: "Code",
            Dom: [$("[name='ShipTo']"), $("[name='qShipTo']")]
        },
        'Priority': {
            SelType: "FromDict",
            SelFrom: "priority",
            SelModel: "Priority",
            SelLabel: "DictLabel",
            SelValue: "DictValue",
            Dom: [$("[name='Priority']"), $("[name='qPriority']")]
        }
    };


    //子表逻辑
    var All = new Array();
    var AreaNameDtlShipmentDetailHistory = 'shipment';
    var TableNameDtlShipmentDetailHistory = 'ShipmentDetailHistory';
    //{子表字段:主表字段}
    var NameDtlShipmentDetailHistory = { ShipmentCode: 'Code', ShipmentId: 'Id', LastStatus: 'LastStatus' };
    var vmDtlShipmentDetailHistory = new Vue({
        el: '#modifyFormDtl_' + TableNameDtlShipmentDetailHistory
    });
    var vmqDtlShipmentDetailHistory = new Vue({
        data: { ShipmentCode: '' }//, LastStatus: 'LastStatus' }
    });
    //编辑
    var EditInfoDtlShipmentDetailHistory = function (tabledata) {
        data = tabledata;
        vmDtlShipmentDetailHistory.$set('$data', tabledata);
        var list = {};
        $('.ClearSelector_' + TableNameDtlShipmentDetailHistory).each(function () {
            var selDom = ($(this));
            if ($(selDom)[0].name.search("q") == -1) {
                list[$(selDom)[0].name] = data[$(selDom)[0].name] + "";
            }
        });
        //表单修改时填充需修改的数据
        form.val('modifyFormDtl_' + TableNameDtlShipmentDetailHistory, list);
    };
    All.push({ AreaNameDtl: AreaNameDtlShipmentDetailHistory, TableNameDtl: TableNameDtlShipmentDetailHistory, vmqDtl: vmqDtlShipmentDetailHistory, vmDtl: vmDtlShipmentDetailHistory, EditInfoDtl: EditInfoDtlShipmentDetailHistory, NameDtl: NameDtlShipmentDetailHistory });


    //子表逻辑
    var AreaNameDtlCustomer = 'general';
    var TableNameDtlCustomer = 'Customer';
    //{子表字段:主表字段}
    var NameDtlCustomer = { Code: 'ShipTo' };
    var vmDtlCustomer = new Vue({
        el: '#modifyFormDtl_' + TableNameDtlCustomer
    });
    var vmqDtlSupplier = new Vue({
        data: { SourceCode: '', ReceiptCode: '' }
    });
    //编辑
    var EditInfoDtlSupplier = function (tabledata) {
        data = tabledata;
        vmDtlCustomer.$set('$data', tabledata);
        var list = {};
        $('.ClearSelector_' + TableNameDtlCustomer).each(function () {
            var selDom = ($(this));
            if ($(selDom)[0].name.search("q") == -1) {
                list[$(selDom)[0].name] = data[$(selDom)[0].name] + "";
            }
        });
        //表单修改时填充需修改的数据
        form.val('modifyFormDtl_' + TableNameDtlCustomer, list);
    };

    var vml = new Array({
        vm: vm,
        vmq: vmq,
        vmDtlShipmentDetailHistory: vmDtlShipmentDetailHistory,
        vmDtlCustomer: vmDtlCustomer
    });

    Universal.BindSelector($, form, vml, selector);
    Universal.mmain(AreaName, TableName, table, layer, element, laydate, $, vm, vmq, EditInfo, selfbtn, mainList, form);
    All.push({ AreaNameDtl: AreaNameDtlCustomer, TableNameDtl: TableNameDtlCustomer, vmqDtl: vmqDtlSupplier, vmDtl: vmDtlCustomer, EditInfoDtl: EditInfoDtlSupplier, NameDtl: NameDtlCustomer });
    Universal.mainDtl(table, layer, element, $, selfbtn, All, form);
});