<!doctype html>
<html>
    <head>
        <meta charset="utf-8"><meta http-equiv="Expires" content="0"><meta http-equiv="Pragma" content="no-cache"><meta http-equiv="Cache-control" content="no-cache"><meta http-equiv="Cache" content="no-cache">
        <title>授权医院</title>
        
        <script type="text/javascript">
            var pageVue = null;
			function loadJsCss(callback) {
                var jscss_urls = [];
                window.top.initJsCss(document, jscss_urls, callback);
            };
            
            function initVue() {
                new FormVue({
                    el: "#vbody",
                    data: {
                        dataname: "md_org_hospital",
                        title: "授权医院",
                        formAttr: {
                            istitle: false,
                            title: "表单名称",
                            columnnumber: 2,
                            labelwidth: "140px",
                            labelposition: "left",//"left",// right//top
                            size: "mini",
                            border: "10px solid #c6c6c600"
                        },
                        
                        default_formFields: [
                            {isshow: "T", field: "authorization_type", name: "授权类型", type: "select", options:[
                                {code:"long-term",value:"长期授权"},
                                {code:"temp-term",value:"临时授权"},
                            ]},
                        ],
                        formFields: [],
                        
                        newformData: {
                            //id: uuid_short(),
                            // code: createCode("BA"),
                            create_time: createDatetime(),
                        },
                        formData: {},
						
						dataRequest: [
						    {
						        name: "product_group",
						        dataname: "md_product_authorize",
						        // url: "root/data/newEntity",
						        // paramsobj: {dataname: "md_org_data", type_code:"Distributor"},
						        isnotoption: false, //true:不是选项
						        code:"id",//是下拉选项时设置
						        label:"name",//是下拉选项时设置
						        filter: "",
								orderby: "order_no"
						    }
						],
						product_group_all: [],
                        product_group_map_all: [],
						
                        product_group: [],
                        product_group_map: {},
                        old_org_product: [],
                        
                        //按键权限设置
                        isedit: false,//提交前编辑,保存/提交
                        isrefuseedit: false,//拒绝后编辑,保存/再次提交
                        isapproval: false,//审批,同意/拒绝/转办/退回
                        
                        iscommit: false,//提交标记
                        
                        //弹窗参数
                        popupParames: {},
                        //字段设置
                        tablefieldClick: {},
                        formfieldClick: {},

                        isConnect : false,
                        connectCode : "",
                        filterList : [],
						state_code: "",
                        //关联经销商的授权医院开始/截止日期
                        connectOpenDate: "",
                        connectEndDate: "",

                        //一级经销商保存原授权日期范围,以限制变更范围只能扩大
                        oldOpenDate: null,
                        oldEndDate: null,

                        t_height: null,

                        isAdmin: false,
                        filterH: null,
						tableFields: [
							{isshow: "T", field: "field1", name: "医院编码",width:"120"},
							{isshow: "T", field: "field2", name: "医院名称",width:"120"},
							{isshow: "T", field: "field3", name: "医院等级",width:"120"},
							{isshow: "T", field: "field4", name: "省份"},
							{isshow: "T", field: "field5", name: "城市"},
							{isshow: "T", field: "field6", name: "区县"},
						],
						tableData: [],
						tableHeight: 200,
						
                    },
                    created() {
                        this.popupParames = clone(Root.popupParames);
                        this.title = this.popupParames.title || this.popupParames.text
                        if (this.popupParames.data) {
                            this.formData = clone(this.popupParames.data);
                        }
                        if (this.popupParames.delta) {
                            console.log(this.popupParames.delta);
                            this.product_group = clone(this.popupParames.delta.product_group);
                            this.product_group_map = clone(this.popupParames.delta.product_group_map);
                            this.isConnect = clone(this.popupParames.delta.isConnect);
                            this.connectCode = clone(this.popupParames.delta.connectCode);
                            this.state_code = clone(this.popupParames.delta.state_code);
                            this.oldOpenDate = this.formData.begin_date;
                            this.oldEndDate = this.formData.end_date;
							
                            if(this.popupParames.delta.idList) {
                                this.filterList = clone(this.popupParames.delta.idList);
                            }

                            //Brooke
                            if(this.popupParames.delta.isAdmin) {
                                this.isAdmin = true;
                            }
                            if(this.popupParames.delta.filter) {
                                this.filterH = clone(this.popupParames.delta.filter);
                                console.log(this.filterH);
                            }
                        }
                        
                        if (this.popupParames.sceneCode) {
                            if (this.popupParames.sceneCode == "add") {//新增
                                if (this.newformData) {
                                    let formData_ = clone(this.formData);
                                    
                                    for (var k in this.newformData) {
                                        formData_[k] = this.newformData[k];
                                    }
                                    this.formData = formData_;
                                }
                                this.isedit = true;
                            }
                            else if (this.popupParames.sceneCode == "browse") {//只读
                                this.formAttr.disabled = true;
                            }
                            else if (this.popupParames.sceneCode == "edit") {//编辑
                                this.isedit = true;
                            }
                        }
                    },
                    
                    mounted() {
                        var me = this;
                        me.t_height = 352;
                        //预加载数据
                        if (this.dataRequest && this.dataRequest.length) {
                            var result = {};
                            this.loadRequestData(this.dataRequest, result, function(data) {
                                me.dataRequestObj = data;
                                //预加载数据后给哪些字段设置options或formatterjson
                                
								if (me.dataRequestObj.product_group) {
								    console.log(me.dataRequestObj);
								    me.product_group_all = me.dataRequestObj.product_group;
								    me.product_group_map_all = me.dataRequestObj.map.product_group;
									
									if (!me.product_group) {
										me.product_group = me.dataRequestObj.product_group
									}
									
									if (me.product_group.length) {
										var product_group_f_ = [];
										me.product_group_all.map(p=>{
											// if (me.product_group_map[p.code]) {
												product_group_f_.push(p);
											// }
										})
										me.product_group = clone(product_group_f_);
									}
								}
                                me.initData();
                            });
                        }
                        else {
                            this.initData();
                        }
                        
                        // 以服务的方式调用的 Loading 需要异步关闭
                        this.$nextTick(() => { 
                            hideLoading();
                            //重新设置弹窗宽高
                            this.$nextTick(function(){
                                // let w_ = this.$refs.popup_body.offsetWidth + "px";
                                let w_ = "1000px";
                                let h_ = this.$refs.popup_body.offsetHeight + "px";
                                Root.setPopupWH(w_, h_);
                            })
                        });
                    },
                    
                    methods:{
                        //关闭弹窗
                        closeDialog() {
                            var me = this;
                            if (me.popupParames.totab){
                                Root.tab.removeItem(Root.tab.selected);
                                Root.tab.open(me.popupParames.parentOption, false); 
                            }
                            else {
                                Root.hidePopup();
                            }
                        },
                        //关闭前调回调
                        saveAfter() {
                            var me = this;
                            if(me.popupParames.callback) {
                                let obj = {
                                    row: me.formData
                                }
                                me.popupParames.callback(obj, function() {
                                    me.closeDialog();
                                });
                            }
                            else {
                                me.closeDialog();
                            }
                        },
                        
                        initData() {
                            let me = this;
                            var id_ = null;
                            if (this.formData.id) {
                                id_ = this.formData.id;
                            }
                            this.getRowDataById(id_, function(result) {//查询后的回调,用于获取字段的
                                if (result.meta && result.meta[me.dataname] && result.meta[me.dataname].fields) {
                                    var metas = clone(result.meta[me.dataname].fields);
                                    var formFields_ = [];

                                    console.log(metas);
                                    console.log(me.isConnect);
                                    
                                    metas.map(f=>{
                                        f.isshow = "T";

                                        if (f.field == "category_name") {
											 f.isshow = "F";
                                            f.options = me.product_group
                                        }

                                        if (f.field == "certificate_material_code" || f.field == "certificate_material_name") {
                                            f.isshow = "F";
                                        }
                                        
                                        formFields_.push(clone(f));
                                    })
									var f1_ = {isshow: "T", field: "field_cpx", name: "产品线", type: "checkboxobj", options: [
										{code: "RESTORE", value: "RESTORE"},
										{code: "APERTO", value: "APERTO"},
									], colspan: 4, required: true};
									
									var f2_ = {isshow: "T", field: "field_cp", name: "产品", type: "checkboxobj", options: [
										{code: "P001-001", value: "紫杉醇释放冠脉球囊扩张导管"},
										{code: "P002-001", value: "紫杉醇释放高压分流球囊扩张导管"},
									], colspan: 4, required: true};
									
									formFields_.push(clone(f1_));
									formFields_.push(clone(f2_));
									
									var ftcompany_ = {isshow: "T", field: "company_name", name: "公司", type: "select", 
									options:[
										{code: "凯德诺", value: "凯德诺"},
									]};
									var ftbu_ = {isshow: "T", field: "bu", name: "BU", type: "select",options:[
										{code: "冠脉", value: "冠脉"},
									]};
									formFields_.unshift(ftbu_);
									formFields_.unshift(ftcompany_);
									
									me.$set(me.formData, "company_name", "凯德诺	");//冠脉
									me.$set(me.formData, "bu", "冠脉");//冠脉
                                    if (me.rowData.md_org_hospital_category) {
                                        me.old_org_product = clone(me.rowData.md_org_hospital_category);
                                        var md_org_hospital_category_ = [];
                                        me.rowData.md_org_hospital_category.map(p=>{
                                            md_org_hospital_category_.push(p.category_id);
                                        })
                                        me.$set(me.formData, "category_name", md_org_hospital_category_);
                                        
                                    }
                                    else {
                                        me.$set(me.formData, "category_name", []);
                                    }

                                    console.log(me.formData);
                                    
                                    if (!me.formFields || (me.formFields && me.formFields.length == 0)) {
                                        // me.formFields = clone(me.default_formFields);
                                        me.formFields = clone(formFields_);
                                        
                                        //字段数组转字段obj,目的为了筛选时获取字段属性
                                        me.fieldsToFieldsObj();
                                        
                                        //设置字段事件
                                        me.tableFieldClick();
                                    }
                                }
                            })
                        },
                        
                        tableFieldClick() {
                            var me = this;
                            //表格字段事件设置
                            this.tablefieldClick = {
                                
                            };
                        
                            //表单字段事件设置
                            this.formfieldClick = {
                                name: {
                                    popup: {
                                        onclick: function(obj) {//弹窗点击事件

                                            if(me.isConnect) {
                                                me.openConnectHospital(me.connectCode);
                                            }

                                            else {
                                                me.openHospitalList();
                                            }
                                        }
                                    },
                                },

                                begin_date: {//开始日期
									val: {
										onchange: function(obj) {
                                            //已开户经销商—管理员修改(变更)—授权医院的授权时间范围只能扩大不能缩小
                                            if(me.oldOpenDate && obj.data.begin_date &&  me.isAdmin &&  (me.state_code == 'Open' || me.state_code == 'open')) {
                                                if(new Date(obj.data.begin_date.replace(/-/g, '/')) > new Date (me.oldOpenDate)) {
                                                    Root.message({
														type: 'warning',
														message: '开始日期不能延后'
													});  
													obj.data.begin_date = me.oldOpenDate;
                                                }
                                            }
                                            //开始日期要早于截止日期
											if (obj.data.begin_date && obj.data.end_date) {
												if (new Date(obj.data.begin_date) > new Date(obj.data.end_date)) {
													Root.message({
														type: 'warning',
														message: '开始日期不能晚于截止日期'
													});  
													obj.data.begin_date = null;
												}
											}
                                            //关联经销商授权日期限制
                                            if (me.connectOpenDate && obj.data.begin_date) {
                                                if (new Date(obj.data.begin_date.replace(/-/g, '/')) < new Date(me.connectOpenDate)) {
													Root.message({
														type: 'warning',
														message: '开始日期不能早于所关联的一级经销商开始日期'
													});  
													obj.data.begin_date = me.connectOpenDate;
												}
                                            }
										}
									}
								},

                                end_date: {//截止日期
									val: {
										onchange: function(obj) {
                                            //已开户经销商—管理员修改(变更)—授权医院的授权时间范围只能扩大不能缩小
                                            if(me.oldEndDate && obj.data.end_date && me.isAdmin && (me.state_code == 'Open' || me.state_code == 'open')) {
                                                if(new Date(obj.data.end_date.replace(/-/g, '/')) < new Date (me.oldEndDate)) {
                                                    Root.message({
														type: 'warning',
														message: '截止日期不能提前'
													});  
													obj.data.end_date = me.oldEndDate;
                                                }
                                            }
                                            //截止日期要晚于开始日期
											if (obj.data.begin_date && obj.data.end_date) {
												if (new Date(obj.data.begin_date) > new Date(obj.data.end_date)) {
													Root.message({
														type: 'warning',
														message: '截止日期不能早于开始日期'
													});  
													obj.data.end_date = null;
												}
											}
                                            //关联经销商授权日期限制
                                            if (me.connectEndDate && obj.data.end_date) {
                                                if (new Date(obj.data.end_date.replace(/-/g, '/')) > new Date(me.connectEndDate)) {
													Root.message({
														type: 'warning',
														message: '截止日期不能晚于所关联的一级经销商截止日期'
													});  
													obj.data.end_date = me.connectEndDate;
												}
                                            }
										}
									}
								},
                            };
                        },

                        openConnectHospital(code) {
                            var me = this;
                            var filter_ = "org_code ='" + code + "'";

                            if(me.filterH) {
                                filter_ += "and " + me.filterH;
                            }
                            console.log(me.filterH);

                            var config = {
                                totab: false, //true: 以Tab导航的方式打开
                                width: "950px",
                                height: "500px",
                                icon: "icon-product",
                                text: "关联授权医院选择",
                                id: "connect_org_hospital_list" + "add",//totab: true时需设置,用于判断是否已打开此页面
                                url: "module/md/page/customer/page/popup/connect_org_hospital_list.html",
                                filter: filter_,
                                sceneCode: "add",//"edit", //"add"//"browse",
                                callback: function(obj, callback) {
                                    var formData = clone(me.formData);
                                    console.log(obj);

                                    formData.category_name = [];
                                    formData.category_id = [];

                                    formData.authorization_type = clone(obj.row.authorization_type);
                                    formData.begin_date = me.connectOpenDate = clone(obj.row.begin_date);
                                    formData.end_date = me.connectEndDate = clone(obj.row.end_date);

                                    formData.hospital_id = obj.row.hospital_id;
                                    formData.code = obj.row.code;
                                    formData.name = obj.row.name;
                                    formData.province = obj.row.province;
                                    formData.city = obj.row.city;
                                    formData.county = obj.row.county;
                                    formData.level = obj.row.level;
                                    formData.grade = obj.row.grade;

                                    let param = {
                                        dataname: "md_org_hospital",
                                        id: obj.row.id,
                                    }

                                    Server.call("root/data/getEntity", param, function(result) {
                                        if(result && result.data && result.data.md_org_hospital_category) {
                                            // console.log(((result.data.md_org_hospital_category).map(e => e.category_id)));
                                            var selections = (result.data.md_org_hospital_category).map(e => e.category_id);

                                            var formFields = clone(me.formFields);

                                            var selection_limit;
                                            formFields.map(f => {
                                                if(f.field == "category_name") {
                                                    selection_limit = clone(f.options.map(o => o.code));
                                                    console.log(selection_limit);
                                                }
                                            })

                                            // formData.category_name = clone((result.data.md_org_hospital_category).map(e => e.category_id));

                                            // formData.category_name.map(s => {
                                            //     if(selection_limit.includes(s)) {
                                            //         var option = {
                                            //             code: s,
                                            //             value: me.product_group_map[s]
                                            //         }
                                            //         options_.push(s);
                                            //     }
                                            // })

                                            let intersection = selection_limit.filter(function (val) { return (selections.indexOf(val) > -1) });

                                            var options_ = [];

                                            intersection.map(o => {
                                                var option = {
                                                    code: o,
                                                    value: me.product_group_map[o],
                                                }
                                                options_.push(option);
                                            })

                                            formFields.map(f => {
                                                if(f.field == "category_name") {
                                                    f.options = options_;
                                                    console.log(f.options);
                                                    if(f.options.length < 1) {
                                                        Root.message({
                                                            type: 'warning',
                                                            message: '无可选授权产品,请更换授权医院或关联的开户经销商'
                                                        }); 
                                                    }
                                                }
                                            })
                                        }
                                        me.formFields = clone(formFields);
                                        me.formData = clone(formData);

                                        if (callback) {
                                            callback();
                                        }
                                    }) 
                                }
                            };
                            me.doPopupByPublic(config);
                        },

                        openHospitalList() {
                            var me = this;
                            if(me.filterH) {
                                var filter_ = me.filterH;
                            }
                            console.log(me.filterH);

                            var config = {
                                totab: false, //true: 以Tab导航的方式打开
                                width: "950px",
                                height: "500px",
                                icon: "icon-product",
                                text: "医院选择",
                                filter: filter_,
                                id: "terminal_list",//totab: true时需设置,用于判断是否已打开此页面
                                // url: "module/md/page/customer/page/popup/terminal_list.html",
                                url: "module/md/page/customer/page/popup/hospital_grant_list.html",
                                data: {},
                                delta: {},
                                // filter: "state_code!='UnderApproval'",
                                sceneCode: "add",//"edit", //"add"//"browse",
                                callback: function(obj, callback) {
                                    var formData = clone(me.formData);

                                    // if(formData.hospital_id != obj.row.id){
                                    formData.authorization_type = '';
                                    formData.category_name = [];
                                    formData.begin_date = null;
                                    formData.end_date = null;
                                    // }

                                    formData.hospital_id = obj.row.id;
                                    formData.code = obj.row.code;
                                    formData.name = obj.row.name;
                                    formData.province = obj.row.province;
                                    formData.city = obj.row.city;
                                    formData.county = obj.row.county;
                                    formData.level = obj.row.level;
                                    formData.grade = obj.row.grade;
                                    
                                    me.formData = formData;
                                    if (callback) {
                                        callback();
                                    }
                                }
                            };
                            me.doPopupByPublic(config);
                        },
                        
                        saveRowTable() {
                            var me = this;
                            me.loading_save = true;
                            var operator_ = "saveEntity";//保存

                            var bo = me.$refs.form1.checkForm();
							
							if(!bo) {
								Root.message({
									type: 'warning',
									message: '请填写必填项'
								});
                                me.loading_save = false;
								return;
							}

                            if(me.iscommit) {
                                operator_ = "commit";//提交
                            }
                            
                            var entity_ = me.formData;

                            var entity = {};
                            var product_category_ = [];
                            for (var r in entity_) {
                                if (r == "category_name") {
                                    product_category_ = entity_[r];
                                }
                                else if (entity_[r] || entity_[r] ==  "" || entity_[r] == false || entity_[r] == 0) {
                                    entity[r] = entity_[r];
                                }
                            }

                            //Brooke—保存时传sceneCode
                            if(me.popupParames.sceneCode == "add") {
                                entity.operate_type = 'insert';
                            }else if (me.popupParames.sceneCode == "edit") {
                                entity.operate_type = 'update';
                            }
                            
                            //子表授权产品
                            var product_group_ = [];
                            product_category_.map(pcid=>{
                                var pcobj_name = me.product_group_map[pcid];
                                var row_pcobj = {
                                    category_id: pcid,
                                    category_name: pcobj_name
                                }                                
                                product_group_.push(row_pcobj);
                                
                            })
                            me.old_org_product.map(old_p=>{
                                var del_row_pcobj = {
                                    id: old_p.id,
                                    _operator: "delete"
                                }
                                product_group_.push(del_row_pcobj);
                            })
                            
                            let param = {
                                dataname: this.dataname,
                                data: {},
                            }
                            param.data[this.dataname] = entity;
                            param.data["md_org_hospital_category"] = product_group_;

                            console.log(param);

                            //Brooke - admin修改,弹出提示及修改接口
                            if(me.isAdmin && (me.state_code == "Open" || me.state_code == "open") ) {
                                Root.confirm('将修改客户授权信息,并更新授权书', '修改提示', {
                                    confirmButtonText: '确定',
                                    cancelButtonText: '取消',
                                    type: 'warning'
                                }).then(() => {
                                    me.adminSaveRowTable(param, me.popupParames.sceneCode);//等待接口完善
                                    // console.log("test admin")
                                }).catch(() => {
                                    Root.message({
                                        type: 'info',
                                        message: '已取消修改'
                                    });
                                    me.loading_save = false;
                                });
                            }
                            else {
								Server.call("root/data/" + operator_, param, function(result) {
								    me.loading_save = false;
								    console.log(result);
								    if (result.success) {
								        if(me.iscommit){
								            me.iscommit = false;
								            Root.message({
								                type: 'success',
								                message: '提交成功'
								            }); 
								            me.saveAfter();
								        }
								        else {
								            Root.message({
								                type: 'success',
								                message: '保存成功'
								            }); 
								            me.saveAfter();
								        }
								    }
								}, function(error) {
								    me.loading_save = false;
								    Root.message({
								        type: 'error',
								        message: '保存失败'
								    }); 
								});
								
								// Root.confirm('将修改客户授权信息', '修改提示', {
								//     confirmButtonText: '确定',
								//     cancelButtonText: '取消',
								//     type: 'warning'
								// }).then(() => {
								//     Server.call("root/data/" + operator_, param, function(result) {
								//         me.loading_save = false;
								//         console.log(result);
								//         if (result.success) {
								//             if(me.iscommit){
								//                 me.iscommit = false;
								//                 Root.message({
								//                     type: 'success',
								//                     message: '提交成功'
								//                 }); 
								//                 me.saveAfter();
								//             }
								//             else {
								//                 Root.message({
								//                     type: 'success',
								//                     message: '保存成功'
								//                 }); 
								//                 me.saveAfter();
								//             }
								//         }
								//     }, function(error) {
								//         me.loading_save = false;
								//         Root.message({
								//             type: 'error',
								//             message: '保存失败'
								//         }); 
								//     });
								// }).catch(() => {
								//     Root.message({
								//         type: 'info',
								//         message: '已取消修改'
								//     });
								//     me.loading_save = false;
								// });
                            }
                        },

                        //Brooke,等待接口完善
                        adminSaveRowTable(param, sceneCode) {
                            var me = this;
                            
                            let param_admin = clone(param);

                            if(sceneCode == "add") {
                                param_admin.data[me.dataname].operate_type = 'insert';
                            }else if (sceneCode == "edit") {
                                param_admin.data[me.dataname].operate_type = 'update';
                            }

                            Server.call("root/data/saveEntity", param, function(result) {
                                if (result.success) {
                                    // console.log("admin saved!");
                                    //等待接口接入
                                    Server.call("root/orgBizLogic/authorizationBook", param_admin, function(result) {
                                        if(result.success) {
                                            me.loading_save = false;
                                            Root.message({
                                                type: 'success',
                                                message: '客户授权信息及授权书更新成功'
                                            });
                                            me.saveAfter();
                                        }
                                    }, function(error) {
                                        me.loading_save = false;
                                        Root.message({
                                            type: 'error',
                                            message: '授权书更新失败'
                                        }); 
                                    });
                                }
                            }, function(error) {
                                me.loading_save = false;
                                Root.message({
                                    type: 'error',
                                    message: '客户授权信息保存失败'
                                }); 
                            });
                        },
                    }
                });
            };
            
            loadJsCss(function () {
                initVue();
            });
        </script>
        <style>
            /*  在vue.js中 v-cloak 这个指令是防止页面加载时出现 vuejs 的变量名而设计的 */
            [v-cloak] {
                display: none !important;
            }
        </style>
        
    </head>
    
    <body style="margin: 0px;">
        <div v-cloak id="vbody">
            <div id="page_root">
                <div ref="popup_body" style="padding: 0 20px;">
                    <div class="popup_el-dialog__header">
                        <div class="dialog-title">
                          <i class="iconfont icon-customermanagement"></i>
                          <span> {{title}}</span>
                        </div>
                    </div>   
					<div :style="{height: t_height +'px', 'overflow-y': 'auto'}">
                    <!-- <div style="overflow-y: auto;"> -->
                        <div class="el-dialog__body">
                            <h-form
                                ref="form1"
                                :form-attr="formAttr"
                                :table-fields="formFields"
                                :form-data="formData"
                                :table-field-click="formfieldClick"
                            >
                            </h-form>
							
							<div style="text-align: right; width: 100%;">
								<el-button @click="" :icon="buttonsconfig.add.icon">{{buttonsconfig.add.name}}</el-button>
							</div>
							
							<h-table
								v-if="tableFields"
								ref="table4"
								:table-fields="tableFields" 
								:table-data="tableData" 
								:table-height="tableHeight"
								:is-pagination="false"
							>
							</h-table>
							
                        </div>
                    </div>
                    <div class="el-dialog__footer">
                        <el-button size="small" type="default" @click="closeDialog">取 消</el-button>
                        <el-button size="small" v-if="isedit || isrefuseedit" type="primary" :loading="loading_save" @click="saveRowTable">保 存</el-button>
                    </div>
                </div>
            </div>
        </div>
        
        <div id="page_loading" style="position: absolute; top:0px; width: 100vw; height: 50vh;">
            <div class="spinner">
              <div class="cube1"></div>
              <div class="cube2"></div>
            </div>
        </div>
    </body>
</html>