|
@@ -103,7 +103,20 @@
|
|
|
</a-form>
|
|
|
</div>
|
|
|
<div class="query-index-table">
|
|
|
- <DisplayTable ref="display" :bases="formState.bases" :measures="formState.measures" @displayChange="onDisplayChange"></DisplayTable>
|
|
|
+ <a-tabs v-model:activeKey="activeTab" class="query-index-tabs" @change="tabChange">
|
|
|
+ <a-tab-pane key="1" tab="列表视图">
|
|
|
+ <DisplayTable ref="display" :bases="formState.bases" :measures="formState.measures" @displayChange="onDisplayChange"></DisplayTable>
|
|
|
+ </a-tab-pane>
|
|
|
+ <a-tab-pane key="2" tab="柱状图" forceRender="true" style="width: 100%;">
|
|
|
+ <DisplayChartBar ref="displayChartBar" :bases="formState.bases" :measures="formState.measures"></DisplayChartBar>
|
|
|
+ </a-tab-pane>
|
|
|
+ <a-tab-pane key="3" tab="曲线图" forceRender="true" style="width: 100%;">
|
|
|
+ <DisplayChartLine ref="displayChartLine" :bases="formState.bases" :measures="formState.measures"></DisplayChartLine>
|
|
|
+ </a-tab-pane>
|
|
|
+ <a-tab-pane key="4" tab="条形图" forceRender="true" style="width: 100%;">
|
|
|
+ <DisplayChartYbar ref="displayChartYbar" :bases="formState.bases" :measures="formState.measures"></DisplayChartYbar>
|
|
|
+ </a-tab-pane>
|
|
|
+ </a-tabs>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -123,12 +136,16 @@ import DragWhere from '@/components/basic/query/drag-where.vue'
|
|
|
import DragBase from '@/components/basic/query/drag-base.vue'
|
|
|
import DragMeasure from '@/components/basic/query/drag-measure.vue'
|
|
|
import DisplayTable from '@/components/basic/query/display-table.vue'
|
|
|
+import DisplayChartBar from '@/components/basic/query/display-chart-bar.vue'
|
|
|
+import DisplayChartYbar from '@/components/basic/query/display-chart-ybar.vue'
|
|
|
+import DisplayChartLine from '@/components/basic/query/display-chart-line.vue'
|
|
|
import {save, get} from "@/api/common";
|
|
|
import type { TreeProps } from 'ant-design-vue';
|
|
|
|
|
|
export default defineComponent({
|
|
|
name: 'queryindex',
|
|
|
- components: {DragWhere, DragBase, DragMeasure, DisplayTable},
|
|
|
+ components: {DragWhere, DragBase, DragMeasure,DisplayTable,
|
|
|
+ DisplayChartBar, DisplayChartLine, DisplayChartYbar},
|
|
|
setup() {
|
|
|
const route = useRoute();
|
|
|
const expand = ref(false);
|
|
@@ -137,7 +154,11 @@ export default defineComponent({
|
|
|
const base = ref<typeof DragBase>();
|
|
|
const where = ref<typeof DragWhere>();
|
|
|
const display = ref<typeof DisplayTable>();
|
|
|
+ const displayChartBar = ref<typeof DisplayChartBar>();
|
|
|
+ const displayChartLine = ref<typeof DisplayChartLine>();
|
|
|
+ const displayChartYbar = ref<typeof DisplayChartYbar>();
|
|
|
|
|
|
+ const activeTab = ref('1');
|
|
|
const subjectTrees = ref({
|
|
|
data :[] as TreeProps['treeData'],
|
|
|
expandedKeys : [''],
|
|
@@ -167,6 +188,25 @@ export default defineComponent({
|
|
|
sqlString : null
|
|
|
});
|
|
|
|
|
|
+ const tabChange = (key) => {
|
|
|
+ console.log("tabChange", key);
|
|
|
+ if(key=="2") {
|
|
|
+ setTimeout(function (){
|
|
|
+ (displayChartBar.value as any).resize();
|
|
|
+ }, 100);
|
|
|
+ }
|
|
|
+ if(key=="3") {
|
|
|
+ setTimeout(function (){
|
|
|
+ (displayChartLine.value as any).resize();
|
|
|
+ }, 100);
|
|
|
+ }
|
|
|
+ if(key=="4") {
|
|
|
+ setTimeout(function (){
|
|
|
+ (displayChartYbar.value as any).resize();
|
|
|
+ }, 100);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
const onFinish = () => {
|
|
|
if(formRef.value == undefined){
|
|
|
return;
|
|
@@ -198,6 +238,9 @@ export default defineComponent({
|
|
|
}
|
|
|
//将数据给视图,视图组装并显示
|
|
|
(display.value as any).setData(result);
|
|
|
+ (displayChartBar.value as any).setData(result);
|
|
|
+ (displayChartLine.value as any).setData(result);
|
|
|
+ (displayChartYbar.value as any).setData(result);
|
|
|
});
|
|
|
}
|
|
|
|
|
@@ -266,8 +309,11 @@ export default defineComponent({
|
|
|
|
|
|
function displayReader(){
|
|
|
//初始化视图显示
|
|
|
- console.log("displayReader",display.value);
|
|
|
+ console.log("displayReader",display.value, displayChartBar.value);
|
|
|
(display.value as any).reader();
|
|
|
+ (displayChartBar.value as any).reader();
|
|
|
+ (displayChartLine.value as any).reader();
|
|
|
+ (displayChartYbar.value as any).reader();
|
|
|
}
|
|
|
|
|
|
const checkSubjectId = (obj)=>{
|
|
@@ -295,7 +341,12 @@ export default defineComponent({
|
|
|
measure,
|
|
|
where,
|
|
|
base,
|
|
|
+ activeTab,
|
|
|
display,
|
|
|
+ displayChartBar,
|
|
|
+ displayChartLine,
|
|
|
+ displayChartYbar,
|
|
|
+ tabChange,
|
|
|
onChangeMeasure,
|
|
|
onChangeWhere,
|
|
|
onChangeBase,
|
|
@@ -355,6 +406,11 @@ export default defineComponent({
|
|
|
.query-index-table{
|
|
|
flex-grow: 1;
|
|
|
}
|
|
|
+ .query-index-tabs{
|
|
|
+ margin-left: 10px;
|
|
|
+ margin-right: 10px;
|
|
|
+ height: 100%;
|
|
|
+ }
|
|
|
.tabs-view-content{
|
|
|
padding: 0px;
|
|
|
}
|