<!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 ListVue({ el: "#vbody", data: { dataname: "md_sku", title: "产å“列表", orderby: "id", pageAttr: { heightType: "popuppage" }, default_filterFields: [ {isshow: "T", field: "code", name: "产å“ç¼–ç ", filterfield:"", filteroperator: "like", type: ""}, ], default_tableFields: [ {field: "code", name: "产å“ç¼–ç ", isshow: "T", align: "center",width: "150"}, {field: "name", name: "产å“", isshow: "T", align: "center",width: "200"}, {field: "line", name: "产å“线", isshow: "T", align: "center"}, ], default_tableData: [ {"code":"478389", "name":"康莱软胶囊", "line": "康莱特"}, {"code":"444443", "name":"æ¿è“æ ¹é¢—ç²’", "line": "æŸè¥¿"}, ], filterfieldClick: {}, tablefieldClick: {}, formfieldClick: {}, }, created() { this.popupParames = clone(Root.popupParames); // this.title = this.popupParames.title || this.popupParames.text if (this.popupParames.filter) { this.filterTxt = this.popupParames.filter } if (this.popupParames.sceneCode) { if (this.popupParames.sceneCode == "add") {//新增 this.isedit = true; } } }, mounted() { //èŽ·å–æ•°æ® this.initData(); // 以æœåŠ¡çš„æ–¹å¼è°ƒç”¨çš„ Loading 需è¦å¼‚æ¥å…³é— this.$nextTick(() => { hideLoading(); //釿–°è®¾ç½®å¼¹çª—宽高 this.$nextTick(function(){ //let w_ = this.$refs.popup_body.offsetWidth + "px"; let w_ = "1000px"; let h_ = "650px"; Root.setPopupWH(w_, h_); }) }); }, methods:{ //å…³é—弹窗 closeDialog() { this.docloseDialog(true); }, //å…³é—å‰è°ƒå›žè°ƒ saveAfter() { var me = this; me.docloseDialog(); if(this.popupParames.callback) { let obj = { row: clone(this.selectedrow) } this.popupParames.callback(obj, function() { me.docloseDialog(); }); } else { me.docloseDialog(); } }, initData() { var me = this; 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) { filterFields_.push(clone(f)); } else { var filter_f = clone(f); filter_f.isshow = "F"; filterFields_.push(filter_f); } if (f.field == "cpid" || f.field == "is_active") { } else { 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(); } }); }, tableFieldClick() { var me = this; //ç›é€‰å—段事件设置 this.filterfieldClick = { product_code: {//å—æ®µäº‹ä»¶è®¾ç½® popup: { onclick: function(obj) {//弹窗点击事件 Root.message({ type: 'success', message: '弹窗点击事件' }); } }, visible: { onchange: function(obj) {//下拉展开事件 Root.message({ type: 'success', message: '下拉展开事件' }); } }, select: { onchange: function(obj) {//下拉展开事件 Root.message({ type: 'success', message: '下拉更改事件' }); } }, input: { onchange: function(obj) {//下拉展开事件 Root.message({ type: 'success', message: '下拉更改事件' }); } }, }, }; //è¡¨æ ¼å—æ®µäº‹ä»¶è®¾ç½® this.tablefieldClick = { product_code: {//å—æ®µäº‹ä»¶è®¾ç½® val: {//有值时的点击事件 notclick_val: "",//ä¸å¯ç‚¹å‡»çš„值,1ã€æ˜¯æ•°ç»„["11","22"]ï¼›2ã€ä»¥â€œ;â€åˆ†éš”çš„å—符串"111;222" notclick_bindfield: [],//å½“è¯¥å—æ®µå€¼ç‰äºŽæŒ‡å®šå—段值时ä¸å¯ç‚¹å‡»["filterfield": "111"] onclick: function(obj) {//æ•°æ®å€¼ç‚¹å‡»äº‹ä»¶ Root.message({ type: 'success', message: obj.val + '点击事件' }); }, }, defaultval: { val: "查看",//空值时的显示值 onclick: function(obj) {//默认值点击事件,æ¤äº‹ä»¶éœ€è¦è®¾ç½®valæ‰æœ‰æ•ˆ Root.message({ type: 'success', message: '默认值点击事件' }); } }, suffixval: { // val: "详情",//有值时的åŽç¼€ï¼Œæ¤åŽç¼€å’Œå•ä½åŽç¼€ä¸åŒï¼Œå¦‚ï¼šè¯¦æƒ…ï¼Œæ›´å¤šï¼ŒæŸ¥çœ‹ç‰ // onclick: function(obj) {//有值时的åŽç¼€ç‚¹å‡»äº‹ä»¶,æ¤äº‹ä»¶éœ€è¦è®¾ç½®valæ‰æœ‰æ•ˆ // //打开 // me.opentest() // } }, popup: { onclick: function(obj) {//弹窗点击事件 Root.message({ type: 'success', message: '弹窗点击事件' }); } }, visible: { onchange: function(obj) {//下拉展开事件 Root.message({ type: 'success', message: '下拉展开事件' }); } }, select: { onchange: function(obj) {//下拉展开事件 Root.message({ type: 'success', message: '下拉更改事件' }); } }, input: { onchange: function(obj) {//下拉展开事件 Root.message({ type: 'success', message: '下拉更改事件' }); } }, }, }; //表å•å—æ®µäº‹ä»¶è®¾ç½® this.formfieldClick = { product_code: {//å—æ®µäº‹ä»¶è®¾ç½® val: {//有值时的点击事件 onclick: function(obj) {//æ•°æ®å€¼ç‚¹å‡»äº‹ä»¶ Root.message({ type: 'success', message: obj.val + '点击事件' }); }, onchange: function(obj) {//æ•°æ®ä¿®æ”¹äº‹ä»¶ Root.message({ type: 'success', message: 'æ•°æ®ä¿®æ”¹äº‹ä»¶' }); } }, popup: { onclick: function(obj) {//弹窗点击事件 Root.message({ type: 'success', message: '弹窗点击事件' }); } }, visible: { onchange: function(fieldObj, row, callback) {//下拉展开事件 Root.message({ type: 'success', message: '下拉展开事件' }); //釿–°è®¾ç½®é€‰æ‹©é¡¹ if (callback) { var obj_ = { options: [] }; callback(obj_); } } }, select: { onchange: function(obj) {//下拉展开事件 Root.message({ type: 'success', message: '下拉更改事件' }); } }, input: { onchange: function(obj) {//下拉展开事件 Root.message({ type: 'success', message: '下拉更改事件' }); } }, button: { onclick: function(obj) {//按键点击事件 Root.message({ type: 'success', message: '按键点击事件' }); } }, buttonarray: { onclick: function(obj) {//æŒ‰é”®ç»„ç‚¹å‡»äº‹ä»¶ï¼Œéœ€è¦æ ¹æ®æŒ‰é”®çš„codeæ¥åˆ¤æ–具体事件 Root.message({ type: 'success', message: '按键组点击事件' }); } }, }, }; }, opentest() { var me = this; Root.message({ type: 'success', message: 'åŽç¼€ç‚¹å‡»äº‹ä»¶' }); var config = { totab: false, //true: 以Tabå¯¼èˆªçš„æ–¹å¼æ‰“å¼€ width: "900px", height: "900px", icon: "icon-product", text: "è¡¨å•æ ·ä¾‹é¡µé¢", id: "test_page",//totab: trueæ—¶éœ€è®¾ç½®ï¼Œç”¨äºŽåˆ¤æ–æ˜¯å¦å·²æ‰“å¼€æ¤é¡µé¢ //url: "module/system/page/coming.html", url: "module/system/page/sample/sample_form.html", data: {}, delta: {}, sceneCode: "edit", //"add"//"browse", callback: function(obj, callback) { me.onQuery(); if (callback) { callback(); } } }; me.doPopupByPublic(config); }, onRowDblClick() { if (this.isedit) { this.saveAfter(); } }, } }); }; 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="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" 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="isedit" type="primary" @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> </html>