|
@@ -1,9 +1,9 @@
|
|
<template>
|
|
<template>
|
|
<div class="query-index">
|
|
<div class="query-index">
|
|
- <div class="query-index-tree" v-if="showTree">
|
|
|
|
|
|
+ <div class="query-index-tree" v-if="showTree" data-v-step="1">
|
|
<div class="query-index-tree-search">
|
|
<div class="query-index-tree-search">
|
|
<a-tabs v-model:activeKey="activeTab" @change="tabChange" style="width:97%;">
|
|
<a-tabs v-model:activeKey="activeTab" @change="tabChange" style="width:97%;">
|
|
- <a-tab-pane key="1" tab="组织架构目录">
|
|
|
|
|
|
+ <a-tab-pane key="1" tab="组织架构目录" >
|
|
</a-tab-pane>
|
|
</a-tab-pane>
|
|
<a-tab-pane key="2" tab="地质单元目录" forceRender="true">
|
|
<a-tab-pane key="2" tab="地质单元目录" forceRender="true">
|
|
</a-tab-pane>
|
|
</a-tab-pane>
|
|
@@ -40,11 +40,12 @@
|
|
</template>
|
|
</template>
|
|
</a-tree>
|
|
</a-tree>
|
|
</div>
|
|
</div>
|
|
- </div>
|
|
|
|
|
|
+ </div >
|
|
<div class="query-index-close" v-else>
|
|
<div class="query-index-close" v-else>
|
|
<DoubleRightOutlined @click="showTree=true;colspan=8;"/>
|
|
<DoubleRightOutlined @click="showTree=true;colspan=8;"/>
|
|
</div>
|
|
</div>
|
|
- <div class="query-index-content">
|
|
|
|
|
|
+ <v-tour name="testTour" style="z-index: 100;" :steps="steps" :options="myOptions" :callbacks="myCallbacks"></v-tour>
|
|
|
|
+ <div class="query-index-content" style="z-index: 1;">
|
|
<div class="query-index-form">
|
|
<div class="query-index-form">
|
|
<a-form ref="formRef" name="fromQuery"
|
|
<a-form ref="formRef" name="fromQuery"
|
|
class="ant-advanced-search-form"
|
|
class="ant-advanced-search-form"
|
|
@@ -80,8 +81,8 @@
|
|
</a-tree-select>
|
|
</a-tree-select>
|
|
</a-form-item>
|
|
</a-form-item>
|
|
</a-col>
|
|
</a-col>
|
|
- <a-col :span="6" style="text-align: left">
|
|
|
|
- <MenuOutlined @click="showQuery=true" v-if="!showQuery"/>
|
|
|
|
|
|
+ <a-col :span="6" style="text-align: left" >
|
|
|
|
+ <MenuOutlined @click="showQuery=true" v-if="!showQuery" data-v-step="2" />
|
|
<LineOutlined @click="showQuery=false" v-else/>
|
|
<LineOutlined @click="showQuery=false" v-else/>
|
|
<a-button type="primary" html-type="submit" @click="onQuery" style="margin-left: 10px;">查询</a-button>
|
|
<a-button type="primary" html-type="submit" @click="onQuery" style="margin-left: 10px;">查询</a-button>
|
|
<a-button html-type="submit"
|
|
<a-button html-type="submit"
|
|
@@ -143,7 +144,7 @@
|
|
</a-form-item>
|
|
</a-form-item>
|
|
</a-col>
|
|
</a-col>
|
|
</a-row>
|
|
</a-row>
|
|
- <a-row class="edit-operation">
|
|
|
|
|
|
+ <a-row class="edit-operation" style="width: 500px;float:right;" data-v-step="3">
|
|
<a-col :span="24" style="text-align: right">
|
|
<a-col :span="24" style="text-align: right">
|
|
<a-checkbox-group v-model:value="showColumnType" @change="onCheckboxChange">
|
|
<a-checkbox-group v-model:value="showColumnType" @change="onCheckboxChange">
|
|
<a-row>
|
|
<a-row>
|
|
@@ -172,9 +173,9 @@
|
|
</a-row>
|
|
</a-row>
|
|
</a-form>
|
|
</a-form>
|
|
</div>
|
|
</div>
|
|
- <div style="flex-grow: 1;overflow: auto;height: 500px;">
|
|
|
|
- <a-spin :spinning="loading">
|
|
|
|
- <div class="query-index-table" v-if="viewModel=='list'">
|
|
|
|
|
|
+ <div style="flex-grow: 1;overflow: auto;height: 500px;" >
|
|
|
|
+ <a-spin :spinning="loading" data-v-step="4">
|
|
|
|
+ <div class="query-index-table" v-if="viewModel=='list'" >
|
|
<a-table :columns="filterColumns" :data-source="data" :scroll="{ x:'100%', y: '100%' }"
|
|
<a-table :columns="filterColumns" :data-source="data" :scroll="{ x:'100%', y: '100%' }"
|
|
:row-key="record=>record.tempId" :pagination="false" @resizeColumn="handleResizeColumn"
|
|
:row-key="record=>record.tempId" :pagination="false" @resizeColumn="handleResizeColumn"
|
|
bordered>
|
|
bordered>
|
|
@@ -206,7 +207,7 @@
|
|
</template>
|
|
</template>
|
|
</a-table>
|
|
</a-table>
|
|
</div>
|
|
</div>
|
|
- <div class="query-index-table" v-else>
|
|
|
|
|
|
+ <div class="query-index-table" v-else >
|
|
<a-row :gutter="[24,8]">
|
|
<a-row :gutter="[24,8]">
|
|
<a-col :span="colspan" v-for="item in data">
|
|
<a-col :span="colspan" v-for="item in data">
|
|
<a-card :title="'井名:'+item.well_common_name" class="ant-card-index" bodyStyle="padding: 10px;">
|
|
<a-card :title="'井名:'+item.well_common_name" class="ant-card-index" bodyStyle="padding: 10px;">
|
|
@@ -214,7 +215,7 @@
|
|
<a-button type="link" @click="detail(item.well_id)">查看详情</a-button>
|
|
<a-button type="link" @click="detail(item.well_id)">查看详情</a-button>
|
|
<a-button type="link" @click="showDoc(item.well_id)">相关文档</a-button>
|
|
<a-button type="link" @click="showDoc(item.well_id)">相关文档</a-button>
|
|
</template>
|
|
</template>
|
|
- <table class="well-card-table">
|
|
|
|
|
|
+ <table class="well-card-table" >
|
|
<tr>
|
|
<tr>
|
|
<th>井型:</th>
|
|
<th>井型:</th>
|
|
<td>{{ item.well_type }}</td>
|
|
<td>{{ item.well_type }}</td>
|
|
@@ -300,7 +301,7 @@
|
|
@change="(current)=>handleTableChange({ current: current,pageSize: pagination.pageSize })"
|
|
@change="(current)=>handleTableChange({ current: current,pageSize: pagination.pageSize })"
|
|
@showSizeChange="(current,pageSize)=>handleTableChange({ current: current,pageSize: pageSize })"/>
|
|
@showSizeChange="(current,pageSize)=>handleTableChange({ current: current,pageSize: pageSize })"/>
|
|
</a-spin>
|
|
</a-spin>
|
|
- <div style="width:100%;height: 500px;margin-top:15px">
|
|
|
|
|
|
+ <div style="width:100%;height: 500px;margin-top:15px" data-v-step="5">
|
|
<ChartMap :datas="data" :isSearch="(true)"></ChartMap>
|
|
<ChartMap :datas="data" :isSearch="(true)"></ChartMap>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@@ -351,7 +352,7 @@
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script lang="ts">
|
|
<script lang="ts">
|
|
-import {ref, defineComponent, computed, watch, reactive} from 'vue';
|
|
|
|
|
|
+import {ref, defineComponent, computed, watch, reactive, getCurrentInstance} from 'vue';
|
|
import type {FormInstance} from 'ant-design-vue';
|
|
import type {FormInstance} from 'ant-design-vue';
|
|
import {useRoute} from 'vue-router';
|
|
import {useRoute} from 'vue-router';
|
|
import {get, postData} from "@/api/common";
|
|
import {get, postData} from "@/api/common";
|
|
@@ -371,6 +372,7 @@ export default defineComponent({
|
|
components: {ChartCell, ChartMap, filePreview},
|
|
components: {ChartCell, ChartMap, filePreview},
|
|
setup() {
|
|
setup() {
|
|
|
|
|
|
|
|
+ const curTour = ref(null);
|
|
const route = useRoute();
|
|
const route = useRoute();
|
|
const expand = ref(false);
|
|
const expand = ref(false);
|
|
const formRef = ref<FormInstance>();
|
|
const formRef = ref<FormInstance>();
|
|
@@ -389,6 +391,108 @@ export default defineComponent({
|
|
const docList = ref<any>([]);
|
|
const docList = ref<any>([]);
|
|
const wellTypeList = ref([{label: "直井", value: "直井"}, {label: "定向井", value: "定向井"}, {label: "分支井", value: "分支井"}]);
|
|
const wellTypeList = ref([{label: "直井", value: "直井"}, {label: "定向井", value: "定向井"}, {label: "分支井", value: "分支井"}]);
|
|
const wellPurposeList = ref([{label: "探井", value: "探井"}, {label: "开发井", value: "开发井"}, {label: "水井", value: "水井"}]);
|
|
const wellPurposeList = ref([{label: "探井", value: "探井"}, {label: "开发井", value: "开发井"}, {label: "水井", value: "水井"}]);
|
|
|
|
+
|
|
|
|
+ const steps = reactive([
|
|
|
|
+ {
|
|
|
|
+ target:'[data-v-step="1"]',
|
|
|
|
+ header:{
|
|
|
|
+ title:'<div style="color: white;background: #4c8dff;display: inline;font-size: 15px;' +
|
|
|
|
+ 'border-radius:10px 10px 0 0;padding:5px 20px 0 10px;font-weight:bolder;">' +
|
|
|
|
+ '| 可以切换目录查询<span style="padding-left: 250px;">1/5</span></div>'
|
|
|
|
+ },
|
|
|
|
+ content:'<div></div>',
|
|
|
|
+ params:{
|
|
|
|
+ placement:'right'
|
|
|
|
+ }
|
|
|
|
+ },{
|
|
|
|
+ target:'[data-v-step="2"]',
|
|
|
|
+ header:{
|
|
|
|
+ title:'<div style="color: white;background: #4c8dff;display: inline;font-size: 15px;' +
|
|
|
|
+ 'border-radius:10px 10px 0 0;padding:5px 20px 0 10px;font-weight:bolder;">' +
|
|
|
|
+ '| 点击展开更多查询<span style="padding-left: 250px;">2/5</span></div>',
|
|
|
|
+ },
|
|
|
|
+ content:'<div></div>',
|
|
|
|
+ params:{
|
|
|
|
+ placement:'top'
|
|
|
|
+ }
|
|
|
|
+ },{
|
|
|
|
+ target:'[data-v-step="3"]',
|
|
|
|
+ header:{
|
|
|
|
+ title:'<div style="color: white;background: #4c8dff;display: inline;font-size: 15px;' +
|
|
|
|
+ 'border-radius:10px 10px 0 0;padding:5px 20px 0 10px;font-weight:bolder;">' +
|
|
|
|
+ '| 切换不同视图,也可勾选需要显示的列<span style="padding-left: 170px;">3/5</span></div>',
|
|
|
|
+ },
|
|
|
|
+ content:'<div></div>',
|
|
|
|
+ params:{
|
|
|
|
+ placement:'left'
|
|
|
|
+ }
|
|
|
|
+ },{
|
|
|
|
+ target:'[data-v-step="4"]',
|
|
|
|
+ header:{
|
|
|
|
+ title:'<div style="color: white;background: #4c8dff;display: inline;font-size: 15px;' +
|
|
|
|
+ 'border-radius:10px 10px 0 0;padding:5px 20px 0 10px;font-weight:bolder;">' +
|
|
|
|
+ '| 可移动列的顺序<span style="padding-left: 250px;">4/5</span></div>'
|
|
|
|
+ },
|
|
|
|
+ content:'<div></div>',
|
|
|
|
+ params:{
|
|
|
|
+ placement:'bottom'
|
|
|
|
+ }
|
|
|
|
+ },{
|
|
|
|
+ target:'[data-v-step="5"]',
|
|
|
|
+ header:{
|
|
|
|
+ title:'<div style="color: white;background: #4c8dff;display: inline;font-size: 15px;' +
|
|
|
|
+ 'border-radius:10px 10px 0 0;padding:5px 20px 0 10px;font-weight:bolder;">' +
|
|
|
|
+ '| 地图显示当前列表的井所在位置<span style="padding-left: 250px;">5/5</span></div>'
|
|
|
|
+ },
|
|
|
|
+ content:'<div></div>',
|
|
|
|
+ params:{
|
|
|
|
+ placement:'bottom'
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ ]);
|
|
|
|
+
|
|
|
|
+ const myOptions = reactive({
|
|
|
|
+ dialogVisible:false,
|
|
|
|
+ useKeyboardNavigation:false,
|
|
|
|
+ labels:{
|
|
|
|
+ buttonSkip:' 跳过引导 ',
|
|
|
|
+ buttonPrevious:' 上一步 ',
|
|
|
|
+ buttonNext:'下一步 ',
|
|
|
|
+ buttonStop:' 明白了 '
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ const showOverlay = ref(true);
|
|
|
|
+
|
|
|
|
+ const myCallbacks = ref({
|
|
|
|
+ onPreviousStep(){
|
|
|
|
+ showOverlay.value = true;
|
|
|
|
+ loadStyle();
|
|
|
|
+ },
|
|
|
|
+ onNextStep(){
|
|
|
|
+ showOverlay.value = true;
|
|
|
|
+ loadStyle();
|
|
|
|
+ },onStop:async function(){
|
|
|
|
+ showOverlay.value = false;
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+
|
|
|
|
+ function loadStyle(){
|
|
|
|
+ setTimeout(()=>{
|
|
|
|
+ const $divs = document.getElementsByClassName("v-step__buttons");
|
|
|
|
+ for(let i=0;i < $divs.length;i++) {
|
|
|
|
+ const div = $divs[i];
|
|
|
|
+ div.setAttribute("style","background-color:#4c8dff;color:white;height:30px;width:100%;" +
|
|
|
|
+ "position: relative;top:-2px;padding-top:4px;border-radius:0 0 10px 10px;");
|
|
|
|
+ }
|
|
|
|
+ const $buttons = document.getElementsByClassName("v-step__button");
|
|
|
|
+ for(let i=0;i < $buttons.length;i++) {
|
|
|
|
+ const button = $buttons[i];
|
|
|
|
+ button.setAttribute("style","border:1px solid white;margin:0 10px 0 20px;" +
|
|
|
|
+ "padding:0 4px 0 4px;border-radius:5px;");
|
|
|
|
+ }
|
|
|
|
+ },1);
|
|
|
|
+ }
|
|
|
|
+
|
|
const replaceFields = {
|
|
const replaceFields = {
|
|
children: 'children',
|
|
children: 'children',
|
|
title: 'label',
|
|
title: 'label',
|
|
@@ -822,14 +926,26 @@ export default defineComponent({
|
|
onAddCart,
|
|
onAddCart,
|
|
handleResizeColumn: (w, col) => {
|
|
handleResizeColumn: (w, col) => {
|
|
col.width = w;
|
|
col.width = w;
|
|
- }
|
|
|
|
|
|
+ },
|
|
|
|
+ steps,myOptions,curTour,showOverlay,loadStyle,myCallbacks
|
|
};
|
|
};
|
|
|
|
+
|
|
|
|
+ },beforeMount() {
|
|
|
|
+ this.loadStyle();
|
|
|
|
+ },
|
|
|
|
+ mounted(){
|
|
|
|
+ const internalInstance = getCurrentInstance();
|
|
|
|
+ this.curTour = internalInstance?.appContext.config.globalProperties.$tours;
|
|
|
|
+ console.log("ssf1",this.curTour);
|
|
|
|
+ if(this.curTour && this.curTour['testTour']){
|
|
|
|
+ (this.curTour['testTour'] as any).start();
|
|
|
|
+ }
|
|
|
|
+
|
|
},
|
|
},
|
|
created() {
|
|
created() {
|
|
this.getSettingColumns();
|
|
this.getSettingColumns();
|
|
//this.loadData();
|
|
//this.loadData();
|
|
- }
|
|
|
|
- ,
|
|
|
|
|
|
+ },
|
|
activated() {
|
|
activated() {
|
|
}
|
|
}
|
|
});
|
|
});
|