<!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 src="../../../jsnew/elementDefault.js?v=20220425"></script>
        <script src="../../../jsnew/vue/vue.js"></script>
		<script src="../../../jsnew/vue/element-ui/element-ui_15/index.js"></script>
		<script src="../../../jsnew/myelement.js?v=20220425"></script>
		<script src="../../../jsnew/page.js?v=20220425"></script>
		<!-- <script src="../../../setting.js"></script> -->
		
		<link href="../../../jsnew/vue/element-ui/element-ui_15/theme-chalk/index.css" rel="stylesheet">
		<link href="../../../jsnew/myelement.css?v=20220426" rel="stylesheet">
		<link href="../../../jsnew/theme.css?v=20220426" rel="stylesheet">
		<link href="../../../css/iconfont.css" rel="stylesheet">
		<link href="../../../jsnew/page.css?v=20220425" rel="stylesheet">
		<link href="//at.alicdn.com/t/font_2374495_13ltsxm2eor.css" rel="stylesheet">
	</head>
	
	<body style="margin: 0px;">
		<div v-cloak id="vbody">
			<div id="page_root">
				<div ref="popup_body" style="padding: 0 20px;  ">
					<!-- 标题 -->
					<div class="el-dialog__header">
						<div class="dialog-title">
						  <i class="iconfont icon-customermanagement"></i>
						  <span>{{title}}</span>
						</div>
					</div>	
					<!-- 主体 -->
					<div class="topbar-line">
						<div class="query-bar">
							<h-form-filter ref="form1" 
								:form-attr="filterAttr" 
								:table-fields="filterFields" 
								:form-data="filterObj" 
								:table-field-click="filterfieldClick"
								
								v-on:on-query="onQuery"
								v-on:on-init-query="onInitFilter"
								>
							</h-form-filter>
						</div>
					</div>
				
					<div class="h_dialog__body">
						<h-table
							v-if="isRefresh"
							ref="table1"
							:table-fields="tableFields" 
							:table-data="tableData" 
							:pagesize="pagesize"
							:pagenum="pagenum"
							:total="total"
							:table-height="tableHeight"
							:table-field-click="tablefieldClick"
							:is-highlight-row="isedit"
                            :is-within-edit-table-data="false"
							:tableloading="tableloading"
							
							v-on:get-data="getData"
							v-on:row-click="rowClick"
							v-on:row-dblclick="rowDblclick"
						>
						</h-table>
					</div>
					
					<!-- 底部工具栏 -->
					<div class="el-dialog__footer">
						<el-button size="small" type="default" @click="closeDialog">取 消</el-button>
						<el-button size="small" v-if="" type="primary" :disabled = "!(selectedrow && selectedrow.id)" @click="saveAfter">确 定</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>

	<script type="text/javascript">
		function initVue() {
			new ListVue({
				el: "#vbody",
				data: {
					dataname: "md_org_data",
					dataurl: "rootjemin/data/getEntitySet",
					orderby: "ar.update_time desc",
					title: "商业政策",

					pageAttr: {
						heightType: "popuppage"
					},

					default_filterFields: [
                        {isshow: "T", field: "detail_code", name: "政策编码", width: "150", filteroperator: "like",},
					],

					default_tableFields: [
						{isshow: "T", field: "code", name: "流程号", width: "200", type: "span"},
						{isshow: "T", field: "detail_code", name: "政策编码", width: "200", type:"span", align: "left", isminwidth: true,},
						
					],
					tableData: [],

					filterfieldClick: {},
					tablefieldClick: {},
					formfieldClick: {},
					dataRequest: [
						{
							name: "md_province",
							url: "rootjemin/data/getEntitySet",
							paramsobj: {dataname: "md_division", filter: "level = '1'"},
							isnotoption: false,
						}
					],
				},
				
				created() {
					this.popupParames = clone(Root.popupParames);
					// Root.setPopupTitle(this.title);
					this.title = this.popupParames.title || this.popupParames.text;
					if (this.popupParames.filter) {
						this.filterTxt = this.popupParames.filter;
					}
					if (this.popupParames.dataname) {
						this.dataname = this.popupParames.dataname;
					}
					
					if (this.popupParames.sceneCode) {
						if (this.popupParames.sceneCode == "add") {//新增
							this.isedit = true;
						}
					}
				},
				
				mounted() {
					var me = this;
					//获取数据
					if(this.dataRequest && this.dataRequest.length) {
						var result = {};
						this.loadRequestData(this.dataRequest,result,function(data){
							me.dataRequestObj = data;
							me.initData();

						})
					}
                    else {
                        this.initData();
                    }

					// 以服务的方式调用的 Loading 需要异步关闭
					this.$nextTick(() => { 
						hideLoading();
						
						//重新设置弹窗宽高
						this.$nextTick(function(){
							//let w_ = this.$refs.popup_body.offsetWidth  "px";
							let w_ = "900px";
							// let h_ = "650px";
							let h_ = this.$refs.popup_body.offsetHeight + "px";
							Root.setPopupWH(w_, h_);
						})
					});
				},
				
				methods:{
					//关闭弹窗
					closeDialog() {
						this.docloseDialog(true);
					},
					
					//关闭前调回调
					saveAfter() {
						var me = this;
						if(this.popupParames.callback) {
							let obj = {
								row: clone(this.selectedrow)
							}
							this.popupParames.callback(obj, function() {
								me.docloseDialog();
							});
						}
						else {
							me.docloseDialog();
						}
					},
					
					initData() {
						var me = this;

						// if (!me.filterFields || (me.filterFields && me.filterFields.length == 0)) {
						// 	me.filterFields = clone(me.default_filterFields);
						// 	me.tableFields = clone(me.default_tableFields);
							
						// 	//字段数组转字段obj
						// 	me.fieldsToFieldsObj();
							
						// 	//设置字段事件
						// 	me.tableFieldClick();

						// 	//me.filterObj.province = "云南省";
						// 	//me.filterObj.code = "10010064";
						// }
						// this.onQuery()
						this.onQuery(function(result, callback) {//查询后的回调,用于获取字段的
							if (result.meta && result.meta[me.dataname] && result.meta[me.dataname].fields) {
								var metas = clone(result.meta[me.dataname].fields);
								var filterFields_ = [];
								var tableFields_ = [];
								
								metas.map(f=>{
									f.isshow = "T";
									
									if (f.isfilter) {
										if (f.field == 'province_name') {
											f.type = "select";
											me.dataRequestObj.md_province.data.entityset.map(e => {
													e.value = e.name
											})
											f.options = me.dataRequestObj.md_province.data.entityset
										}
										filterFields_.push(clone(f));
									}
									else {
										var filter_f = clone(f);
										filter_f.isshow = "F";
										filterFields_.push(filter_f);
									}

									
									tableFields_.push(clone(f));
								})
								if (!me.filterFields || (me.filterFields && me.filterFields.length == 0)) {
									me.filterFields = clone(filterFields_);
									me.tableFields = clone(tableFields_);
									
									//字段数组转字段obj
									me.fieldsToFieldsObj();
									
									//设置字段事件
									me.tableFieldClick();
								}
							}
							
							if (callback) {
								callback();
							}
						});
					},
					
					queryAfter() {
						let me = this
						if (me.tableData.length > 0) {
							let tableData = clone(me.tableData)
							tableData.map(s => {
								if (s.freeze && s.freeze == 'T') s.freeze = '是'
								else s.freeze = '否'
								
								if (s.has_sign) s.has_sign = '是'
								else s.has_sign = '否'
							})
							me.tableData = tableData
						}
					},

					tableFieldClick() {
						var me = this;
						//筛选字段事件设置
						this.filterfieldClick = {
							province: {//字段事件设置
								visible: {
									onchange: function(obj) {//下拉展开事件
										var formFields_ = clone(me.filterFields);
										let param_ = {
											isClientMode: false,
											"dataName": "md_division",
											"filter":"level = '1'",
										}
										Server.call("rootjemin/data/getEntitySet", param_, function(result) {
											if (result && result.data) {
												var options_ = result.data.entityset;
												for(var i=0; i<options_.length;i++) {
													options_[i].code = options_[i].code;
													options_[i].value = options_[i].name;
												}
												formFields_.map(e=>{
													if(e.field == "province") {
														e.options = options_;
													}
												})
											}
											me.filterFields = formFields_;
										});
									},
								},
							}
						};

						//表格字段事件设置
						this.tablefieldClick = {
							
						};
					
						//表单字段事件设置
						this.formfieldClick = {
							
						};
					},
					
					onRowDblClick() {
						if (this.isedit) {
							this.saveAfter();
						}
					},
				}
			});
		};
		
		initVue();
	</script>

	<style>
		/* 在vue.js中 v-cloak 这个指令是防止页面加载时出现 vuejs 的变量名而设计的 */
		[v-cloak] {
			display: none !important;
		}
	</style>
</html>