bdb11d53 by xiaomiao

查询功能调整

1 parent 5846b42b
1 export default { 1 export default {
2 data () { 2 data() {
3 return { 3 return {
4 isSearch: false, 4 isSearch: false,
5 searchList: [], 5 searchList: [],
...@@ -7,18 +7,44 @@ export default { ...@@ -7,18 +7,44 @@ export default {
7 } 7 }
8 }, 8 },
9 methods: { 9 methods: {
10 moreQueryClick () { 10 // 点击高级查询弹出查询弹框
11
12 moreQueryClick() {
11 this.isSearch = true 13 this.isSearch = true
14
12 }, 15 },
13 handleSelect (bs, mc, code) { 16 // 查询事件
14 let that = this 17 handleSelect(bs, mc, code) {
15 this.dictData[bs].forEach(item => { 18 this.dictData[bs].forEach(item => {
16 if (item.dcode == this.queryForm[code]) { 19 if (item.dcode == this.queryForm[code]) {
17 this.searchForm[mc] = item.dname 20 this.searchForm[mc] = item.dname
18 } 21 }
19 }) 22 })
20 }, 23 },
21 handelItem (item, index) { 24 // 清空单个表单
25 handleEmpty(el) {
26 for (var i = 0; i < this.searchList.length; i++) {
27 if (el == this.searchList[i].zdm) {
28 this.searchList.splice(i, 1)
29 }
30 }
31 let obj = {
32 ywlymc: 'ywly',
33 qllxmc: 'qllx',
34 djlxmc: 'djlx'
35 }
36 if (obj[el]) {
37 this.queryForm[obj[el]] = ''
38 } else if (this.otherForm[[el]]) {
39 this.otherForm[[el]] = ''
40 } else {
41 this.queryForm[el] = ''
42 }
43 this.searchForm[el] = ''
44 },
45 // 删除单个查询条件
46
47 handelItem(item, index) {
22 let obj = { 48 let obj = {
23 ywlymc: 'ywly', 49 ywlymc: 'ywly',
24 qllxmc: 'qllx', 50 qllxmc: 'qllx',
...@@ -33,10 +59,8 @@ export default { ...@@ -33,10 +59,8 @@ export default {
33 this.queryForm[item.zdm] = '' 59 this.queryForm[item.zdm] = ''
34 } 60 }
35 this.searchForm[item.zdm] = '' 61 this.searchForm[item.zdm] = ''
36 this.iterationData()
37 this.queryClick()
38 }, 62 },
39 iterationData () { 63 iterationData() {
40 let obj = { 64 let obj = {
41 ywlymc: '业务来源', qllxmc: '权利类型', djlxmc: '登记类型', ywh: '业务号', sqywmc: '申请业务名称', 65 ywlymc: '业务来源', qllxmc: '权利类型', djlxmc: '登记类型', ywh: '业务号', sqywmc: '申请业务名称',
42 qlrmc: '权利人', ywrmc: '义务人', slsj: '受理时间' 66 qlrmc: '权利人', ywrmc: '义务人', slsj: '受理时间'
...@@ -46,12 +70,13 @@ export default { ...@@ -46,12 +70,13 @@ export default {
46 if (value) return { name: obj[name], value, zdm: name } 70 if (value) return { name: obj[name], value, zdm: name }
47 }).filter(Boolean) 71 }).filter(Boolean)
48 }, 72 },
49 getSearch (val) { 73 getSearch(val) {
50 this.otherForm = val 74 this.otherForm = val
51 this.iterationData() 75 this.iterationData()
52 this.queryClick() 76 this.queryClick()
53 }, 77 },
54 hanldeCleanAll () { 78 // 清空查询条件
79 hanldeCleanAll() {
55 this.searchForm = {} 80 this.searchForm = {}
56 this.queryForm = { 81 this.queryForm = {
57 ywly: "", 82 ywly: "",
...@@ -59,6 +84,7 @@ export default { ...@@ -59,6 +84,7 @@ export default {
59 djlx: "", 84 djlx: "",
60 ywh: "" 85 ywh: ""
61 } 86 }
87 this.otherForm = {}
62 this.searchList = [] 88 this.searchList = []
63 this.queryClick() 89 this.queryClick()
64 } 90 }
......
...@@ -9,17 +9,17 @@ ...@@ -9,17 +9,17 @@
9 <el-row> 9 <el-row>
10 <el-col :span="8"> 10 <el-col :span="8">
11 <el-form-item label="申请业务名称" prop="sqywmc"> 11 <el-form-item label="申请业务名称" prop="sqywmc">
12 <el-input v-model="ruleForm.sqywmc"></el-input> 12 <el-input v-model="ruleForm.sqywmc" placeholder="请输入申请业务名称"></el-input>
13 </el-form-item> 13 </el-form-item>
14 </el-col> 14 </el-col>
15 <el-col :span="8"> 15 <el-col :span="8">
16 <el-form-item label="权利人" prop="qlrmc"> 16 <el-form-item label="权利人" prop="qlrmc">
17 <el-input v-model="ruleForm.qlrmc"></el-input> 17 <el-input v-model="ruleForm.qlrmc" placeholder="请输入权利人"></el-input>
18 </el-form-item> 18 </el-form-item>
19 </el-col> 19 </el-col>
20 <el-col :span="8"> 20 <el-col :span="8">
21 <el-form-item label="义务人" prop="ywrmc"> 21 <el-form-item label="义务人" prop="ywrmc">
22 <el-input v-model="ruleForm.ywrmc"></el-input> 22 <el-input v-model="ruleForm.ywrmc" placeholder="请输入义务人"></el-input>
23 </el-form-item> 23 </el-form-item>
24 </el-col> 24 </el-col>
25 </el-row> 25 </el-row>
...@@ -45,6 +45,7 @@ ...@@ -45,6 +45,7 @@
45 export default { 45 export default {
46 props: { 46 props: {
47 value: { type: Boolean, default: false }, 47 value: { type: Boolean, default: false },
48 advancedForm:{type: Object, default: "" }
48 }, 49 },
49 data () { 50 data () {
50 return { 51 return {
...@@ -60,19 +61,31 @@ export default { ...@@ -60,19 +61,31 @@ export default {
60 watch: { 61 watch: {
61 value (val) { 62 value (val) {
62 this.myValue = val 63 this.myValue = val
64 },
65 advancedForm(){
66 this.ruleForm={...this.advancedForm}
63 } 67 }
64 }, 68 },
69
70
65 methods: { 71 methods: {
66 closeDialog () { 72 closeDialog () {
67 this.$emit('input', false) 73 this.$emit('input', false)
68 }, 74 },
69 resetForm () { 75 resetForm () {
70 this.$refs['ruleForm'].resetFields() 76 this.$refs['ruleForm'].resetFields()
77 this.ruleForm={
78 sqywmc: '',
79 qlrmc: '',
80 ywrmc: '',
81 slsj: ''
82 }
71 }, 83 },
72 submitForm () { 84 submitForm () {
73 this.$emit('getSearch', _.cloneDeep(this.ruleForm)) 85 this.$emit('getSearch', _.cloneDeep(this.ruleForm))
74 this.$emit('input', false) 86 this.$emit('input', false)
75 this.$refs['ruleForm'].resetFields() 87 this.$refs['ruleForm'].resetFields()
88
76 } 89 }
77 } 90 }
78 } 91 }
...@@ -88,4 +101,4 @@ export default { ...@@ -88,4 +101,4 @@ export default {
88 /deep/.el-icon-date { 101 /deep/.el-icon-date {
89 display: none; 102 display: none;
90 } 103 }
91 </style>
...\ No newline at end of file ...\ No newline at end of file
104 </style>
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
15 class="width100" 15 class="width100"
16 filterable 16 filterable
17 @change="handleSelect('ywly', 'ywlymc', 'ywly')" 17 @change="handleSelect('ywly', 'ywlymc', 'ywly')"
18 @clear="handleEmpty('ywlymc')"
18 clearable 19 clearable
19 placeholder="请选择业务来源" 20 placeholder="请选择业务来源"
20 > 21 >
...@@ -34,6 +35,7 @@ ...@@ -34,6 +35,7 @@
34 v-model="queryForm.qllx" 35 v-model="queryForm.qllx"
35 class="width100" 36 class="width100"
36 @change="handleSelect('A8', 'qllxmc', 'qllx')" 37 @change="handleSelect('A8', 'qllxmc', 'qllx')"
38 @clear="handleEmpty('qllxmc')"
37 filterable 39 filterable
38 clearable 40 clearable
39 placeholder="请选择权利类型" 41 placeholder="请选择权利类型"
...@@ -54,6 +56,7 @@ ...@@ -54,6 +56,7 @@
54 v-model="queryForm.djlx" 56 v-model="queryForm.djlx"
55 class="width100" 57 class="width100"
56 @change="handleSelect('A21', 'djlxmc', 'djlx')" 58 @change="handleSelect('A21', 'djlxmc', 'djlx')"
59 @clear="handleEmpty('djlxmc')"
57 filterable 60 filterable
58 clearable 61 clearable
59 placeholder="请选择登记类型" 62 placeholder="请选择登记类型"
...@@ -126,7 +129,11 @@ ...@@ -126,7 +129,11 @@
126 > 129 >
127 </lb-table> 130 </lb-table>
128 </div> 131 </div>
129 <searchBox v-model="isSearch" @getSearch="getSearch" /> 132 <searchBox
133 v-model="isSearch"
134 @getSearch="getSearch"
135 :advancedForm="otherForm"
136 />
130 </div> 137 </div>
131 </template> 138 </template>
132 <script> 139 <script>
...@@ -172,6 +179,7 @@ export default { ...@@ -172,6 +179,7 @@ export default {
172 this.queryClick(); 179 this.queryClick();
173 }; 180 };
174 }, 181 },
182
175 watch: { 183 watch: {
176 queryForm: { 184 queryForm: {
177 handler(newName, oldName) {}, 185 handler(newName, oldName) {},
...@@ -205,7 +213,6 @@ export default { ...@@ -205,7 +213,6 @@ export default {
205 } 213 }
206 }); 214 });
207 }, 215 },
208
209 handleSort(val) { 216 handleSort(val) {
210 this.queryForm.sortField = val.prop; 217 this.queryForm.sortField = val.prop;
211 this.queryForm.sortOrder = val.order == "ascending" ? "asc" : "desc"; 218 this.queryForm.sortOrder = val.order == "ascending" ? "asc" : "desc";
......
...@@ -2,45 +2,94 @@ ...@@ -2,45 +2,94 @@
2 <div class="from-clues"> 2 <div class="from-clues">
3 <!-- 表单部分 --> 3 <!-- 表单部分 -->
4 <div class="from-clues-header"> 4 <div class="from-clues-header">
5 <el-form :model="queryForm" ref="queryForm" @submit.native.prevent label-width="80px"> 5 <el-form
6 :model="queryForm"
7 ref="queryForm"
8 @submit.native.prevent
9 label-width="80px"
10 >
6 <el-row> 11 <el-row>
7 <el-col :span="5"> 12 <el-col :span="5">
8 <el-form-item label="业务来源" label-width="70px"> 13 <el-form-item label="业务来源" label-width="70px">
9 <el-select v-model="queryForm.ywly" @change="handleSelect('ywly', 'ywlymc', 'ywly')" class="width100" 14 <el-select
10 filterable clearable placeholder="请选择业务来源"> 15 v-model="queryForm.ywly"
11 <el-option v-for="item in dictData['ywly']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 16 @change="handleSelect('ywly', 'ywlymc', 'ywly')"
17 @clear="handleEmpty('ywlymc')"
18 class="width100"
19 filterable
20 clearable
21 placeholder="请选择业务来源"
22 >
23 <el-option
24 v-for="item in dictData['ywly']"
25 :key="item.dcode"
26 :label="item.dname"
27 :value="item.dcode"
28 >
12 </el-option> 29 </el-option>
13 </el-select> 30 </el-select>
14 </el-form-item> 31 </el-form-item>
15 </el-col> 32 </el-col>
16 <el-col :span="5"> 33 <el-col :span="5">
17 <el-form-item label="权利类型"> 34 <el-form-item label="权利类型">
18 <el-select v-model="queryForm.qllx" @change="handleSelect('A8', 'qllxmc', 'qllx')" class="width100" 35 <el-select
19 filterable clearable placeholder="请选择权利类型"> 36 v-model="queryForm.qllx"
20 <el-option v-for="item in dictData['A8']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 37 @change="handleSelect('A8', 'qllxmc', 'qllx')"
38 @clear="handleEmpty('qllxmc')"
39 class="width100"
40 filterable
41 clearable
42 placeholder="请选择权利类型"
43 >
44 <el-option
45 v-for="item in dictData['A8']"
46 :key="item.dcode"
47 :label="item.dname"
48 :value="item.dcode"
49 >
21 </el-option> 50 </el-option>
22 </el-select> 51 </el-select>
23 </el-form-item> 52 </el-form-item>
24 </el-col> 53 </el-col>
25 <el-col :span="5"> 54 <el-col :span="5">
26 <el-form-item label="登记类型"> 55 <el-form-item label="登记类型">
27 <el-select v-model="queryForm.djlx" @change="handleSelect('A21', 'djlxmc', 'djlx')" class="width100" 56 <el-select
28 filterable clearable placeholder="请选择登记类型"> 57 v-model="queryForm.djlx"
29 <el-option v-for="item in dictData['A21']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 58 @change="handleSelect('A21', 'djlxmc', 'djlx')"
59 @clear="handleEmpty('djlxmc')"
60 class="width100"
61 filterable
62 clearable
63 placeholder="请选择登记类型"
64 >
65 <el-option
66 v-for="item in dictData['A21']"
67 :key="item.dcode"
68 :label="item.dname"
69 :value="item.dcode"
70 >
30 </el-option> 71 </el-option>
31 </el-select> 72 </el-select>
32 </el-form-item> 73 </el-form-item>
33 </el-col> 74 </el-col>
34 <el-col :span="5"> 75 <el-col :span="5">
35 <el-form-item label="业务号"> 76 <el-form-item label="业务号">
36 <el-input placeholder="请输入业务号" v-model="queryForm.ywh" @clear="queryClick" clearable class="width200px"> 77 <el-input
78 placeholder="请输入业务号"
79 v-model="queryForm.ywh"
80 @clear="queryClick"
81 clearable
82 class="width200px"
83 >
37 </el-input> 84 </el-input>
38 </el-form-item> 85 </el-form-item>
39 </el-col> 86 </el-col>
40 87
41 <el-col :span="4" class="btnColRight"> 88 <el-col :span="4" class="btnColRight">
42 <el-form-item> 89 <el-form-item>
43 <el-button type="primary" native-type="submit" @click="queryClick">查询</el-button> 90 <el-button type="primary" native-type="submit" @click="queryClick"
91 >查询</el-button
92 >
44 <el-button @click="moreQueryClick">高级查询</el-button> 93 <el-button @click="moreQueryClick">高级查询</el-button>
45 </el-form-item> 94 </el-form-item>
46 </el-col> 95 </el-col>
...@@ -50,43 +99,62 @@ ...@@ -50,43 +99,62 @@
50 <ul> 99 <ul>
51 <li v-for="(item, index) in searchList" :key="index"> 100 <li v-for="(item, index) in searchList" :key="index">
52 {{ item.name }}:{{ item.value }} 101 {{ item.name }}:{{ item.value }}
53 <i class="el-icon-circle-close" @click="handelItem(item, index)"></i> 102 <i
103 class="el-icon-circle-close"
104 @click="handelItem(item, index)"
105 ></i>
54 </li> 106 </li>
55 </ul> 107 </ul>
56 <el-button class="clean-btn" type="text" v-if="searchList.length > 0" @click.native="hanldeCleanAll">清除全部 108 <el-button
109 class="clean-btn"
110 type="text"
111 v-if="searchList.length > 0"
112 @click.native="hanldeCleanAll"
113 >清除全部
57 </el-button> 114 </el-button>
58 </el-row> 115 </el-row>
59 </el-form> 116 </el-form>
60 </div> 117 </div>
61 <!-- 表格 --> 118 <!-- 表格 -->
62 <div class="from-clues-content"> 119 <div class="from-clues-content">
63 <lb-table :page-size="pageData.size" class="loadingtext" @sort-change="handleSort" 120 <lb-table
64 :current-page.sync="pageData.currentPage" :heightNum="295" :total="tableData.total" 121 :page-size="pageData.size"
65 @size-change="handleSizeChange" @p-current-change="handleCurrentChange" :column="tableData.columns" 122 class="loadingtext"
66 :data="tableData.data"> 123 @sort-change="handleSort"
124 :current-page.sync="pageData.currentPage"
125 :heightNum="295"
126 :total="tableData.total"
127 @size-change="handleSizeChange"
128 @p-current-change="handleCurrentChange"
129 :column="tableData.columns"
130 :data="tableData.data"
131 >
67 </lb-table> 132 </lb-table>
68 </div> 133 </div>
69 <searchBox v-model="isSearch" @getSearch="getSearch" /> 134 <searchBox v-model="isSearch" @getSearch="getSearch" :advancedForm="otherForm" />
70 </div> 135 </div>
71 </template> 136 </template>
72 <script> 137 <script>
73 import { mapGetters } from 'vuex' 138 import { mapGetters } from "vuex";
74 import searchMin from "../components/mixin/index" 139 import searchMin from "../components/mixin/index";
75 import table from "@/utils/mixin/table" 140 import table from "@/utils/mixin/table";
76 import { datas, sendThis } from "./ybxdata" 141 import { datas, sendThis } from "./ybxdata";
77 import { searchTaskDone } from "@/api/ywbl" 142 import { searchTaskDone } from "@/api/ywbl";
78 import searchBox from '../components/search.vue' 143 import searchBox from "../components/search.vue";
79 export default { 144 export default {
80 name: "ybx", 145 name: "ybx",
81 components: { searchBox }, 146 components: { searchBox },
82 mixins: [table, searchMin], 147 mixins: [table, searchMin],
83 mounted () { 148 mounted() {
149 window["getBpageList"] = () => {
150 this.queryClick();
151 };
84 sendThis(this); 152 sendThis(this);
85 }, 153 },
86 computed: { 154 computed: {
87 ...mapGetters(['dictData']) 155 ...mapGetters(["dictData"]),
88 }, 156 },
89 data () { 157 data() {
90 return { 158 return {
91 queryForm: { 159 queryForm: {
92 ywly: "", 160 ywly: "",
...@@ -95,10 +163,10 @@ export default { ...@@ -95,10 +163,10 @@ export default {
95 ywh: "", 163 ywh: "",
96 }, 164 },
97 searchForm: { 165 searchForm: {
98 ywlymc: '', 166 ywlymc: "",
99 qllxmc: '', 167 qllxmc: "",
100 djlxmc: '', 168 djlxmc: "",
101 ywh: '' 169 ywh: "",
102 }, 170 },
103 tableData: { 171 tableData: {
104 total: 0, 172 total: 0,
...@@ -109,35 +177,46 @@ export default { ...@@ -109,35 +177,46 @@ export default {
109 }, 177 },
110 methods: { 178 methods: {
111 // 列表渲染接口 179 // 列表渲染接口
112 queryClick () { 180 queryClick() {
113 this.$startLoading() 181 this.$startLoading();
114 this.searchForm.ywh = this.queryForm.ywh 182 this.searchForm.ywh = this.queryForm.ywh;
115 this.iterationData() 183 this.iterationData();
116 searchTaskDone({ ...this.queryForm,...this.otherForm, ...this.pageData }).then(res => { 184 searchTaskDone({
117 this.$endLoading() 185 ...this.queryForm,
186 ...this.otherForm,
187 ...this.pageData,
188 }).then((res) => {
189 this.$endLoading();
118 if (res.code === 200) { 190 if (res.code === 200) {
119 let { total, records } = res.result 191 let { total, records } = res.result;
120 records.forEach(item => { 192 records.forEach((item) => {
121 item.qlrmc = item.qlrmc.join(',') 193 item.qlrmc = item.qlrmc.join(",");
122 item.ywh = item.ywh.join(',') 194 item.ywh = item.ywh.join(",");
123 item.zl = item.zl.join(',') 195 item.zl = item.zl.join(",");
124 item.outstepdate = item.outstepdate[0] 196 item.outstepdate = item.outstepdate[0];
125 }) 197 });
126 this.tableData.total = total ? total : 0 198 this.tableData.total = total ? total : 0;
127 this.tableData.data = records ? records : [] 199 this.tableData.data = records ? records : [];
128 } 200 }
129 }) 201 });
130 }, 202 },
131 handleSort (val) { 203 handleSort(val) {
132 this.queryForm.sortField = val.prop 204 this.queryForm.sortField = val.prop;
133 this.queryForm.sortOrder = val.order == "ascending" ? 'asc' : 'desc' 205 this.queryForm.sortOrder = val.order == "ascending" ? "asc" : "desc";
134 this.queryClick() 206 this.queryClick();
135 }, 207 },
136 ywhClick (item) { 208 ywhClick(item) {
137 const { href } = this.$router.resolve('/workFrameView?bsmSlsq=' + item.bsmSlsq + '&bestepid=' + item.bestepid + '&bsmBusiness=' + '&viewtype=1'); 209 const { href } = this.$router.resolve(
138 window.open(href, '_blank'); 210 "/workFrameView?bsmSlsq=" +
139 } 211 item.bsmSlsq +
140 } 212 "&bestepid=" +
213 item.bestepid +
214 "&bsmBusiness=" +
215 "&viewtype=1"
216 );
217 window.open(href, `urlname${item.bsmSlsq}`);
218 },
219 },
141 }; 220 };
142 </script> 221 </script>
143 <style scoped lang="scss"> 222 <style scoped lang="scss">
......
...@@ -121,7 +121,8 @@ export default { ...@@ -121,7 +121,8 @@ export default {
121 }, 121 },
122 openDialog (item) { 122 openDialog (item) {
123 const { href } = this.$router.resolve('/workFrameView?bsmSlsq=' + item.bsmSlsq + '&bestepid=' + item.bestepid + '&bsmBusiness=' + item.bsmBusiness + '&viewtype=3') 123 const { href } = this.$router.resolve('/workFrameView?bsmSlsq=' + item.bsmSlsq + '&bestepid=' + item.bestepid + '&bsmBusiness=' + item.bsmBusiness + '&viewtype=3')
124 window.open(href, '_blank'); 124 // window.open(href, '_blank');
125 window.open(href, `urlname${item.bsmSlsq}`);
125 } 126 }
126 } 127 }
127 } 128 }
......