Merge branch 'dev'
Showing
8 changed files
with
109 additions
and
283 deletions
... | @@ -34,7 +34,9 @@ | ... | @@ -34,7 +34,9 @@ |
34 | "vue-router": "3.0.2", | 34 | "vue-router": "3.0.2", |
35 | "vue-seamless-scroll": "^1.1.23", | 35 | "vue-seamless-scroll": "^1.1.23", |
36 | "vuex": "3.1.0", | 36 | "vuex": "3.1.0", |
37 | "x2js": "^3.4.4" | 37 | "x2js": "^3.4.4", |
38 | "xlsx": "^0.17.0", | ||
39 | "xlsx-style": "^0.8.13" | ||
38 | }, | 40 | }, |
39 | "devDependencies": { | 41 | "devDependencies": { |
40 | "@vue/cli-plugin-babel": "4.4.4", | 42 | "@vue/cli-plugin-babel": "4.4.4", | ... | ... |
src/image/duijie.png
0 → 100644

415 KB
... | @@ -126,6 +126,13 @@ export const asyncRoutes = [ | ... | @@ -126,6 +126,13 @@ export const asyncRoutes = [ |
126 | component: () => import('@/views/ywbl/ybx/ybx.vue'), | 126 | component: () => import('@/views/ywbl/ybx/ybx.vue'), |
127 | name: 'ybx', | 127 | name: 'ybx', |
128 | meta: { title: '已办箱' } | 128 | meta: { title: '已办箱' } |
129 | }, { | ||
130 | path: 'ycsl', | ||
131 | id: '24', | ||
132 | parentId: '2', | ||
133 | component: () => import('@/views/ywbl/ycsl/ycsl.vue'), | ||
134 | name: 'ycsl', | ||
135 | meta: { title: '一窗受理' } | ||
129 | }, | 136 | }, |
130 | ] | 137 | ] |
131 | }, | 138 | }, | ... | ... |
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-07-19 15:04:26 | ||
5 | --> | ||
6 | <template> | 1 | <template> |
7 | <div class="from-clues"> | 2 | <div class="duijie"> |
8 | <!-- 表单部分 --> | 3 | <img src="../../../image/duijie.png" alt=""> |
9 | <div class="from-clues-header"> | ||
10 | <el-form :model="queryForm" ref="queryForm" label-width="70px"> | ||
11 | <el-row> | ||
12 | <el-col :span="5"> | ||
13 | <el-form-item label="接口类型"> | ||
14 | <el-input | ||
15 | placeholder="请输入编号" | ||
16 | v-model="queryForm.jklx" | ||
17 | class="width200px" | ||
18 | clearable></el-input> | ||
19 | </el-form-item> | ||
20 | </el-col> | ||
21 | <el-col :span="5"> | ||
22 | <el-form-item label="调用状态"> | ||
23 | <el-input | ||
24 | placeholder="请输入编号" | ||
25 | v-model="queryForm.dyzt" | ||
26 | class="width200px" | ||
27 | clearable></el-input> | ||
28 | </el-form-item> | ||
29 | </el-col> | ||
30 | </el-row> | ||
31 | <el-row> | ||
32 | <el-col :span="5"> | ||
33 | <el-form-item label="访问IP"> | ||
34 | |||
35 | <el-input | ||
36 | placeholder="请输入IP" | ||
37 | v-model="queryForm.fwip" | ||
38 | class="width200px" | ||
39 | clearable></el-input> | ||
40 | |||
41 | </el-form-item> | ||
42 | </el-col> | ||
43 | <el-col :span="5"> | ||
44 | <el-form-item label="访问时间"> | ||
45 | <el-input placeholder="请输入业务号" v-model="queryForm.fwsj" clearable class="width200px"> | ||
46 | </el-input> | ||
47 | </el-form-item> | ||
48 | </el-col> | ||
49 | </el-row> | ||
50 | <el-row> | ||
51 | <el-col :span="10"> | ||
52 | <el-form-item label="请求地址"> | ||
53 | |||
54 | <el-input | ||
55 | placeholder="请输入url" | ||
56 | v-model="queryForm.qqdz" | ||
57 | class="width500px" | ||
58 | clearable></el-input> | ||
59 | |||
60 | </el-form-item> | ||
61 | </el-col> | ||
62 | </el-row> | ||
63 | |||
64 | </el-row> | ||
65 | <el-row> | ||
66 | <el-col :span="20"> | ||
67 | <el-form-item label="请求头数据"> | ||
68 | |||
69 | <el-input | ||
70 | placeholder="请输入请求头数据" | ||
71 | v-model="queryForm.qqtsj" | ||
72 | class="width500px" | ||
73 | clearable></el-input> | ||
74 | |||
75 | </el-form-item> | ||
76 | </el-col> | ||
77 | </el-row> | ||
78 | <el-row> | ||
79 | <el-col :span="20"> | ||
80 | <el-form-item label="入参数据"> | ||
81 | |||
82 | <el-input | ||
83 | placeholder="请输入参数" | ||
84 | v-model="queryForm.rcsj" | ||
85 | class="width500px" | ||
86 | clearable></el-input> | ||
87 | |||
88 | </el-form-item> | ||
89 | </el-col> | ||
90 | </el-row> | ||
91 | |||
92 | <el-row> | ||
93 | <el-col :span="5"> | ||
94 | <el-form-item label="调用描述"> | ||
95 | |||
96 | <el-input | ||
97 | placeholder="调用描述" | ||
98 | v-model="queryForm.dyms" | ||
99 | class="width200px" | ||
100 | clearable></el-input> | ||
101 | |||
102 | </el-form-item> | ||
103 | </el-col> | ||
104 | </el-row> | ||
105 | |||
106 | <el-row> | ||
107 | <el-col :span="5"> | ||
108 | <el-form-item label="返回数据"> | ||
109 | |||
110 | <el-input | ||
111 | placeholder="返回数据" | ||
112 | v-model="queryForm.fhsj" | ||
113 | class="width200px" | ||
114 | clearable></el-input> | ||
115 | |||
116 | </el-form-item> | ||
117 | </el-col> | ||
118 | </el-row> | ||
119 | |||
120 | <el-row> | ||
121 | <el-col :span="4" class="btnColRight"> | ||
122 | <el-form-item> | ||
123 | <el-button type="primary" @click="queryClick()">发送</el-button> | ||
124 | |||
125 | </el-form-item> | ||
126 | </el-col> | ||
127 | </el-row> | ||
128 | </el-form> | ||
129 | </div> | ||
130 | <!-- 表格 --> | ||
131 | |||
132 | </div> | 4 | </div> |
133 | </template> | 5 | </template> |
6 | |||
134 | <script> | 7 | <script> |
135 | 8 | ||
9 | export default { | ||
136 | 10 | ||
137 | export default { | 11 | } |
12 | </script> | ||
138 | 13 | ||
139 | data () { | 14 | <style lang="scss" scoped> |
140 | return { | 15 | .duijie{ |
141 | queryForm: { | 16 | width: 100%; |
142 | jklx: "", | 17 | height: 100%; |
143 | dyzt: "", | 18 | margin: auto; |
144 | fwip: "", | 19 | text-align: center |
145 | fwsj: "", | ||
146 | qqdz: "", | ||
147 | qqtsj: "", | ||
148 | rcsj: "", | ||
149 | dyms: "", | ||
150 | fhsj: "", | ||
151 | }, | ||
152 | } | ||
153 | }, | ||
154 | 20 | ||
155 | } | ||
156 | </script> | ||
157 | <style scoped lang="scss"> | ||
158 | @import "~@/styles/public.scss"; | ||
159 | </style> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
21 | } | ||
22 | |||
23 | </style> | ... | ... |
... | @@ -34,10 +34,7 @@ | ... | @@ -34,10 +34,7 @@ |
34 | 34 | ||
35 | <el-col :span="5" class="btnColRight"> | 35 | <el-col :span="5" class="btnColRight"> |
36 | <el-form-item> | 36 | <el-form-item> |
37 | <el-button | 37 | <el-button type="primary" native-type="submit" @click="chchch" |
38 | type="primary" | ||
39 | native-type="submit" | ||
40 | @click="handleSearch" | ||
41 | >查询</el-button | 38 | >查询</el-button |
42 | > | 39 | > |
43 | <el-button type="primary" native-type="submit" @click="derive" | 40 | <el-button type="primary" native-type="submit" @click="derive" |
... | @@ -53,6 +50,7 @@ | ... | @@ -53,6 +50,7 @@ |
53 | </template> | 50 | </template> |
54 | <script> | 51 | <script> |
55 | import * as echarts from "echarts"; | 52 | import * as echarts from "echarts"; |
53 | import XLSX from "xlsx"; | ||
56 | export default { | 54 | export default { |
57 | components: {}, | 55 | components: {}, |
58 | data() { | 56 | data() { |
... | @@ -76,23 +74,21 @@ export default { | ... | @@ -76,23 +74,21 @@ export default { |
76 | data3: [], | 74 | data3: [], |
77 | xAxisData: [ | 75 | xAxisData: [ |
78 | "赵龙龙", | 76 | "赵龙龙", |
79 | "刘龙龙", | 77 | "刘刚", |
80 | "田龙龙", | 78 | "任启亮", |
81 | "任龙龙", | 79 | "梁亚博", |
82 | "孙龙龙", | 80 | "李含", |
83 | "李龙龙", | 81 | "周路", |
84 | "周龙龙", | ||
85 | ], | 82 | ], |
86 | }; | 83 | }; |
87 | }, | 84 | }, |
88 | mounted() { | 85 | mounted() { |
89 | this.setdata(); | 86 | this.setdata(); |
90 | // 创建一个 ECharts 实例 | 87 | // 创建一个 ECharts 实例 |
91 | this.chart = echarts.init(this.$refs.chart); | 88 | this.chart = echarts.init(this.$refs.chart); |
92 | // 在 ECharts 实例中配置图表 | 89 | // 在 ECharts 实例中配置图表 |
93 | this.chart.setOption(this.getOption()); | 90 | this.chart.setOption(this.getOption()); |
94 | this.chooseDateQuick(0); | 91 | this.chooseDateQuick(0); |
95 | |||
96 | }, | 92 | }, |
97 | methods: { | 93 | methods: { |
98 | setdata() { | 94 | setdata() { |
... | @@ -102,9 +98,24 @@ export default { | ... | @@ -102,9 +98,24 @@ export default { |
102 | } | 98 | } |
103 | }, | 99 | }, |
104 | // 导出 | 100 | // 导出 |
105 | derive() {}, | 101 | derive() { |
102 | this.exdata = [["受理人员", "收件数", "退件数", "推荐率"]]; | ||
103 | this.xAxisData.forEach((item, index) => { | ||
104 | console.log("this.exdata[index+1]", this.exdata[index + 1]); | ||
105 | this.exdata.push([]); | ||
106 | this.exdata[index + 1].push(item); | ||
107 | this.exdata[index + 1].push(this.data1[index]); | ||
108 | this.exdata[index + 1].push(this.data2[index]); | ||
109 | this.exdata[index + 1].push(this.data3[index]); | ||
110 | }); | ||
111 | console.log("this.exdata", this.exdata); | ||
112 | const ws = XLSX.utils.aoa_to_sheet(this.exdata); | ||
113 | const wb = XLSX.utils.book_new(); | ||
114 | XLSX.utils.book_append_sheet(wb, ws, "Sheet1"); | ||
115 | XLSX.writeFile(wb, "收件与超时统计情况.xlsx"); | ||
116 | }, | ||
106 | // 查询 | 117 | // 查询 |
107 | handleSearch() { | 118 | chchch() { |
108 | console.log("dateRange", this.dateRange); | 119 | console.log("dateRange", this.dateRange); |
109 | }, | 120 | }, |
110 | getOption() { | 121 | getOption() { |
... | @@ -289,10 +300,16 @@ export default { | ... | @@ -289,10 +300,16 @@ export default { |
289 | return `${year}-${month}-${day}`; | 300 | return `${year}-${month}-${day}`; |
290 | }, | 301 | }, |
291 | // 某日期向前/向后num天 | 302 | // 某日期向前/向后num天 |
292 | jumpNumDay(date, num, linkStr = '-') { | 303 | jumpNumDay(date, num, linkStr = "-") { |
293 | date = new Date(date.getTime() + (num * 24 * 60 * 60 * 1000)) | 304 | date = new Date(date.getTime() + num * 24 * 60 * 60 * 1000); |
294 | return date.getFullYear() + linkStr + this.changeNum(date.getMonth() + 1) + linkStr + this.changeNum(date.getDate()) | 305 | return ( |
295 | }, | 306 | date.getFullYear() + |
307 | linkStr + | ||
308 | this.changeNum(date.getMonth() + 1) + | ||
309 | linkStr + | ||
310 | this.changeNum(date.getDate()) | ||
311 | ); | ||
312 | }, | ||
296 | }, | 313 | }, |
297 | }; | 314 | }; |
298 | </script> | 315 | </script> |
... | @@ -306,8 +323,6 @@ jumpNumDay(date, num, linkStr = '-') { | ... | @@ -306,8 +323,6 @@ jumpNumDay(date, num, linkStr = '-') { |
306 | padding-top: 3px; | 323 | padding-top: 3px; |
307 | background-color: #ffffff; | 324 | background-color: #ffffff; |
308 | margin-bottom: 10px; | 325 | margin-bottom: 10px; |
309 | |||
310 | |||
311 | } | 326 | } |
312 | .rowAc { | 327 | .rowAc { |
313 | margin-left: 10px; | 328 | margin-left: 10px; | ... | ... |
... | @@ -37,7 +37,7 @@ | ... | @@ -37,7 +37,7 @@ |
37 | <el-button | 37 | <el-button |
38 | type="primary" | 38 | type="primary" |
39 | native-type="submit" | 39 | native-type="submit" |
40 | @click="handleSearch" | 40 | @click="chchch" |
41 | >查询</el-button | 41 | >查询</el-button |
42 | > | 42 | > |
43 | <el-button type="primary" native-type="submit" @click="derive" | 43 | <el-button type="primary" native-type="submit" @click="derive" |
... | @@ -53,6 +53,7 @@ | ... | @@ -53,6 +53,7 @@ |
53 | </template> | 53 | </template> |
54 | <script> | 54 | <script> |
55 | import * as echarts from "echarts"; | 55 | import * as echarts from "echarts"; |
56 | import XLSX from 'xlsx'; | ||
56 | export default { | 57 | export default { |
57 | components: {}, | 58 | components: {}, |
58 | data() { | 59 | data() { |
... | @@ -75,13 +76,13 @@ export default { | ... | @@ -75,13 +76,13 @@ export default { |
75 | data2: [1, 4, 1, 3, 2, 3, 4], | 76 | data2: [1, 4, 1, 3, 2, 3, 4], |
76 | data3: [], | 77 | data3: [], |
77 | xAxisData: [ | 78 | xAxisData: [ |
78 | "赵红红", | 79 | "任超", |
79 | "刘红红", | 80 | "杨威", |
80 | "田红红", | 81 | "魏娜", |
81 | "任红红", | 82 | "张祎旋", |
82 | "孙红红", | 83 | "苗菁", |
83 | "李红红", | 84 | "王文刚", |
84 | "周红红", | 85 | "单帅旗", |
85 | ], | 86 | ], |
86 | }; | 87 | }; |
87 | }, | 88 | }, |
... | @@ -102,9 +103,27 @@ export default { | ... | @@ -102,9 +103,27 @@ export default { |
102 | } | 103 | } |
103 | }, | 104 | }, |
104 | // 导出 | 105 | // 导出 |
105 | derive() {}, | 106 | // 导出 |
107 | derive() { | ||
108 | this.exdata = [ | ||
109 | ['受理人员', '收件数','退件数','推荐率'] | ||
110 | ]; | ||
111 | this.xAxisData.forEach((item,index) => { | ||
112 | console.log("this.exdata[index+1]",this.exdata[index+1]); | ||
113 | this.exdata.push([]) | ||
114 | this.exdata[index+1].push(item) | ||
115 | this.exdata[index+1].push(this.data1[index]) | ||
116 | this.exdata[index+1].push(this.data2[index]) | ||
117 | this.exdata[index+1].push(this.data3[index]) | ||
118 | }) | ||
119 | console.log("this.exdata",this.exdata); | ||
120 | const ws = XLSX.utils.aoa_to_sheet(this.exdata); | ||
121 | const wb = XLSX.utils.book_new(); | ||
122 | XLSX.utils.book_append_sheet(wb, ws, 'Sheet1'); | ||
123 | XLSX.writeFile(wb, '收件与退件统计情况.xlsx'); | ||
124 | }, | ||
106 | // 查询 | 125 | // 查询 |
107 | handleSearch() { | 126 | chchch() { |
108 | console.log("dateRange", this.dateRange); | 127 | console.log("dateRange", this.dateRange); |
109 | }, | 128 | }, |
110 | getOption() { | 129 | getOption() { |
... | @@ -135,8 +154,6 @@ export default { | ... | @@ -135,8 +154,6 @@ export default { |
135 | <span font-size: 16px; font-weight: 600;"> ${params.name}: ${ | 154 | <span font-size: 16px; font-weight: 600;"> ${params.name}: ${ |
136 | Number(params.value).toFixed(2) + "%" | 155 | Number(params.value).toFixed(2) + "%" |
137 | } </span> | 156 | } </span> |
138 | |||
139 | |||
140 | </div>`; | 157 | </div>`; |
141 | }, | 158 | }, |
142 | }, | 159 | }, | ... | ... |
1 | <!-- | ||
2 | * @Description: | ||
3 | * @Autor: renchao | ||
4 | * @LastEditTime: 2023-11-15 09:41:55 | ||
5 | --> | ||
6 | <template> | 1 | <template> |
7 | <div class="from-clues"> | 2 | <div class="duijie"> |
8 | <!-- 家庭房产 --> | 3 | <img src="../../../image/duijie.png" alt=""> |
9 | <div class="from-clues-header"> | ||
10 | <el-form :model="queryForm" @submit.native.prevent ref="queryForm" label-width="70px"> | ||
11 | <el-row> | ||
12 | <el-col :span="5"> | ||
13 | <el-form-item label="申请编号"> | ||
14 | <el-input placeholder="申请编号" v-model="queryForm.sqbh" clearable class="width100"> | ||
15 | </el-input> | ||
16 | </el-form-item> | ||
17 | </el-col> | ||
18 | <el-col :span="9" class="flex"> | ||
19 | <el-form-item label="申请时间"> | ||
20 | <el-date-picker v-model="queryForm.date1" type="date" placeholder="开始日期" value-format="yyyy-MM-dd" clearable> | ||
21 | </el-date-picker> 至 | ||
22 | <el-date-picker v-model="queryForm.date2" type="date" placeholder="结束日期" value-format="yyyy-MM-dd" clearable> | ||
23 | </el-date-picker> | ||
24 | </el-form-item> | ||
25 | </el-col> | ||
26 | <el-col :span="5"> | ||
27 | <el-form-item label="权利人"> | ||
28 | <el-input placeholder="权利人" v-model="queryForm.qlr" clearable class="width100"> | ||
29 | </el-input> | ||
30 | </el-form-item> | ||
31 | </el-col> | ||
32 | <el-col :span="5"> | ||
33 | <el-form-item label="义务人"> | ||
34 | <el-input placeholder="义务人" v-model="queryForm.ywr" clearable class="width100"> | ||
35 | </el-input> | ||
36 | </el-form-item> | ||
37 | </el-col> | ||
38 | <el-col :span="5"> | ||
39 | <el-form-item label="办理状态"> | ||
40 | <el-input placeholder="办理状态" v-model="queryForm.blzt" clearable class="width100"> | ||
41 | </el-input> | ||
42 | </el-form-item> | ||
43 | </el-col> | ||
44 | <el-col :span="19" class="btnColRight"> | ||
45 | <el-button type="primary" native-type="submit" @click="handleSearch">查询</el-button> | ||
46 | </el-col> | ||
47 | </el-row> | ||
48 | </el-form> | ||
49 | </div> | ||
50 | <!-- 表格 --> | ||
51 | <div class="from-clues-content"> | ||
52 | <lb-table :page-size="pageData.size" class="loadingtext" :current-page.sync="pageData.current" | ||
53 | :total="tableData.total" @size-change="handleSizeChange" @p-current-change="handleCurrentChange" | ||
54 | :column="tableData.columns" :data="tableData.data"> | ||
55 | </lb-table> | ||
56 | </div> | ||
57 | </div> | 4 | </div> |
58 | </template> | 5 | </template> |
6 | |||
59 | <script> | 7 | <script> |
60 | import table from "@/utils/mixin/table"; | 8 | |
61 | import { datas, sendThis } from "./data"; | 9 | export default { |
62 | export default { | 10 | |
63 | name: "jtfc", | 11 | } |
64 | mixins: [table], | ||
65 | mounted () { | ||
66 | sendThis(this); | ||
67 | this.queryClick(); | ||
68 | }, | ||
69 | data () { | ||
70 | return { | ||
71 | sqcxBsm: "", | ||
72 | queryForm: { | ||
73 | sqbh: "", | ||
74 | date1: "", | ||
75 | date2: "", | ||
76 | qlr: "", | ||
77 | ywr: "", | ||
78 | blzt: "" | ||
79 | }, | ||
80 | tableData: { | ||
81 | columns: datas.columns(), | ||
82 | data: [{}] | ||
83 | } | ||
84 | } | ||
85 | }, | ||
86 | activated () { | ||
87 | this.queryClick() | ||
88 | }, | ||
89 | methods: { | ||
90 | /** | ||
91 | * @description: 初始化数据 | ||
92 | * @author: renchao | ||
93 | */ | ||
94 | queryClick () { | ||
95 | // this.$startLoading() | ||
96 | }, | ||
97 | handleViewClick () { | ||
98 | this.$popupDialog("查看详情", "ywbl/ycsl/components/detail", {}, "75%") | ||
99 | } | ||
100 | } | ||
101 | } | ||
102 | </script> | 12 | </script> |
103 | <style scoped lang="scss"> | 13 | |
104 | @import "~@/styles/public.scss"; | 14 | <style lang="scss" scoped> |
15 | .duijie{ | ||
16 | width: 100%; | ||
17 | height: 100%; | ||
18 | margin: auto; | ||
19 | text-align: center | ||
20 | |||
21 | } | ||
22 | |||
105 | </style> | 23 | </style> | ... | ... |
... | @@ -63,6 +63,9 @@ module.exports = { | ... | @@ -63,6 +63,9 @@ module.exports = { |
63 | entry: { | 63 | entry: { |
64 | app: './src/main.js' | 64 | app: './src/main.js' |
65 | }, | 65 | }, |
66 | externals: [{ | ||
67 | './cptable': 'var cptable' | ||
68 | }], | ||
66 | resolve: { | 69 | resolve: { |
67 | alias: { | 70 | alias: { |
68 | '@': resolve('src') | 71 | '@': resolve('src') | ... | ... |
-
Please register or sign in to post a comment