import gridFooter from "./SellOrder2/SellOrder2GridFooter.vue" //自定义从表选择数据源页面 import modelBody from "./SellOrder2/SellOrder2ModelBody.vue" import { h, resolveComponent } from 'vue'; let extension = { components: {//动态扩充组件或组件路径 //表单header、content、footer对应位置扩充的组件 gridHeader: '',//{ template: "
扩展组xx件
" }, gridBody: { render() { return [ h(resolveComponent('el-alert'), { style: { 'margin-bottom': '12px' }, 'show-icon': true, type: 'success', closable: false, title: '界面由代码生成器生成,只需几行代码即可实现点击主表行显示明细表数据(直接扩展gridFooter位置的代码,具体代码见此示例:SellOrder2.js)' }, ''), ] } }, gridFooter: gridFooter, //弹出框(修改、编辑、查看)header、content、footer对应位置扩充的组件 modelHeader: "", modelBody: modelBody,//自定义从表选择数据源页面 modelFooter: "", }, text: "点击主表行加载明细表数据,如果本地看不到此菜单,可以按照演示环境配置下此页面菜单", buttons: { //根据需要自行实现扩展按钮 },//扩展的按钮 methods: { mounted() { }, //方式1,通过select选择触发显示与隐藏 onInit() { //点击单元格编辑与结束编辑(默认是点击单元格编辑,鼠标离开结束编辑) this.detailOptions.clickEdit = true; //设置主表合计 this.summary = true; }, onInited() { //调整界面table高度 this.height = this.height - 310; //明细表选择数据源操作 //获取明细表备注列,给备注列添加选择数据操作 this.detailOptions.buttons.unshift({ 'name': '选择数据', icon: "el-icon-plus", onClick: () => { this.$refs.modelBody.open(); } }) // let _column = this.detailOptions.columns.find(x => { return x.field == "Remark" }); // _column.title="(备注)点击选择数据" // //移除编辑操作 // _column.edit = null; // //给备注列添加选择数据操作 // _column.render = (h, { row, column, index }) => { // return h("div", { style: {} }, // [ // h("i", { // class: ["el-icon-zoom-out"], // style: { // cursor: "pointer", // "margin-right": "8px", // color: "#409eff", // }, // onClick: (e) => { // e.stopPropagation(); // //弹出选择数据源 // this.$refs.modelBody.open(row); // }, // }), // ], row.Remark) // }; }, // rowDbClick({ row, column, event }){//双击事件 // }, rowClick({ row, column, event }) { //查询界面table点击行选中当前行 //取消其他行选中 this.$refs.table.$refs.table.clearSelection(); //设置选中当前行 this.$refs.table.$refs.table.toggleRowSelection(row); if (this.$refs.gridFooter && this.$refs.gridFooter.$refs.tableList) { //load方法可参照voltable组件api文档 this.$refs.gridFooter.$refs.tableList.load({ value: row.Order_Id, sort: "CreateDate" }) } }, searchAfter(rows) { //页面加载或者刷新数据后直接显示第一行的明细 if (rows.length) { // this.$nextTick(() => { this.$refs.gridFooter.$refs.tableList.load({ value: rows[0].Order_Id, sort: "CreateDate" }) // }) } else { //没有数据时,清空明细数据 this.$refs.gridFooter.$refs.tableList.rowData.splice(0) } return true; } } }; export default extension;