feat:接入质量评价表
Showing
6 changed files
with
451 additions
and
10 deletions
... | @@ -4,7 +4,7 @@ | ... | @@ -4,7 +4,7 @@ |
4 | * @param {All} [o] 需要检测的数据 | 4 | * @param {All} [o] 需要检测的数据 |
5 | * @returns {String} | 5 | * @returns {String} |
6 | */ | 6 | */ |
7 | export function getType(o) { | 7 | export function getType (o) { |
8 | return Object.prototype.toString.call(o).slice(8, -1); | 8 | return Object.prototype.toString.call(o).slice(8, -1); |
9 | } | 9 | } |
10 | /** | 10 | /** |
... | @@ -13,10 +13,10 @@ export function getType(o) { | ... | @@ -13,10 +13,10 @@ export function getType(o) { |
13 | * @param {String} [type] 数据类型 | 13 | * @param {String} [type] 数据类型 |
14 | * @returns {Boolean} | 14 | * @returns {Boolean} |
15 | */ | 15 | */ |
16 | export function isKeyType(o, type) { | 16 | export function isKeyType (o, type) { |
17 | return getType(o).toLowerCase() === type.toLowerCase(); | 17 | return getType(o).toLowerCase() === type.toLowerCase(); |
18 | } | 18 | } |
19 | export function deepCopy(sth) { | 19 | export function deepCopy (sth) { |
20 | let copy; | 20 | let copy; |
21 | if (null == sth || "object" != typeof sth) return sth; | 21 | if (null == sth || "object" != typeof sth) return sth; |
22 | if (isKeyType(sth, 'date')) { | 22 | if (isKeyType(sth, 'date')) { |
... | @@ -47,7 +47,7 @@ export function deepCopy(sth) { | ... | @@ -47,7 +47,7 @@ export function deepCopy(sth) { |
47 | * @param endLen 字符串后面保留位数 | 47 | * @param endLen 字符串后面保留位数 |
48 | * @returns {string} | 48 | * @returns {string} |
49 | */ | 49 | */ |
50 | export function hideCode(str, frontLen, endLen = 0) { | 50 | export function hideCode (str, frontLen, endLen = 0) { |
51 | var len = str.length - frontLen - endLen; | 51 | var len = str.length - frontLen - endLen; |
52 | var xing = ''; | 52 | var xing = ''; |
53 | for (var i = 0; i < len; i++) { | 53 | for (var i = 0; i < len; i++) { |
... | @@ -57,7 +57,7 @@ export function hideCode(str, frontLen, endLen = 0) { | ... | @@ -57,7 +57,7 @@ export function hideCode(str, frontLen, endLen = 0) { |
57 | }; | 57 | }; |
58 | // 数组去重 | 58 | // 数组去重 |
59 | 59 | ||
60 | export function unique(arr) { | 60 | export function unique (arr) { |
61 | var obj = {}; | 61 | var obj = {}; |
62 | return arr.filter(function (item, index, arr) { | 62 | return arr.filter(function (item, index, arr) { |
63 | return obj.hasOwnProperty(typeof item + item) ? false : (obj[typeof item + item] = true) | 63 | return obj.hasOwnProperty(typeof item + item) ? false : (obj[typeof item + item] = true) |
... | @@ -65,7 +65,7 @@ export function unique(arr) { | ... | @@ -65,7 +65,7 @@ export function unique(arr) { |
65 | } | 65 | } |
66 | // 创造id | 66 | // 创造id |
67 | 67 | ||
68 | export function getUuid(len, radix) { | 68 | export function getUuid (len, radix) { |
69 | var chars = "0123456789abcdefghijklmnopqrstuvwxyz".split( | 69 | var chars = "0123456789abcdefghijklmnopqrstuvwxyz".split( |
70 | "" | 70 | "" |
71 | ); | 71 | ); |
... | @@ -89,7 +89,7 @@ export function getUuid(len, radix) { | ... | @@ -89,7 +89,7 @@ export function getUuid(len, radix) { |
89 | } | 89 | } |
90 | 90 | ||
91 | //js计算两个时间戳之间的时间差 (月) | 91 | //js计算两个时间戳之间的时间差 (月) |
92 | export function intervalTime(startTime, endTime) { | 92 | export function intervalTime (startTime, endTime) { |
93 | // var timestamp=new Date().getTime(); //计算当前时间戳 | 93 | // var timestamp=new Date().getTime(); //计算当前时间戳 |
94 | var timestamp = (Date.parse(new Date())) / 1000;//计算当前时间戳 (毫秒级) | 94 | var timestamp = (Date.parse(new Date())) / 1000;//计算当前时间戳 (毫秒级) |
95 | var date1 = ""; //开始时间 | 95 | var date1 = ""; //开始时间 |
... | @@ -107,16 +107,27 @@ export function intervalTime(startTime, endTime) { | ... | @@ -107,16 +107,27 @@ export function intervalTime(startTime, endTime) { |
107 | return mon | 107 | return mon |
108 | } | 108 | } |
109 | // 日期转时间戳 | 109 | // 日期转时间戳 |
110 | export function js_strto_time(str_time) { | 110 | export function js_strto_time (str_time) { |
111 | var str = str_time.replace(/-/g, '/') // 将-替换成/,因为下面这个构造函数只支持/分隔的日期字符串 | 111 | var str = str_time.replace(/-/g, '/') // 将-替换成/,因为下面这个构造函数只支持/分隔的日期字符串 |
112 | var date = new Date(str) // 构造一个日期型数据,值为传入的字符串 | 112 | var date = new Date(str) // 构造一个日期型数据,值为传入的字符串 |
113 | return date.getTime() | 113 | return date.getTime() |
114 | } | 114 | } |
115 | // 时间戳转日期 | 115 | // 时间戳转日期 |
116 | export function timestampToTime(timestamp) { | 116 | export function timestampToTime (timestamp) { |
117 | var date = new Date(timestamp)//时间戳为10位需*1000,时间戳为13位的话不需乘1000 | 117 | var date = new Date(timestamp)//时间戳为10位需*1000,时间戳为13位的话不需乘1000 |
118 | var Y = date.getFullYear() + '-' | 118 | var Y = date.getFullYear() + '-' |
119 | var M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-' | 119 | var M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-' |
120 | var D = date.getDate() > 10 ? date.getDate() : '0' + date.getDate() | 120 | var D = date.getDate() > 10 ? date.getDate() : '0' + date.getDate() |
121 | return Y + M + D | 121 | return Y + M + D |
122 | } | ||
123 | export function getCurrentDate (date = 'firstDay') { | ||
124 | var now = new Date() // 当前日期 | ||
125 | var nowYear = now.getFullYear() //当前年 | ||
126 | var nowMonth = now.getMonth() //当前月 (值为0~11) | ||
127 | var d = now.getDate() //当天 | ||
128 | if (date == 'firstDay') { | ||
129 | return new Date(nowYear, nowMonth, 1) // 本月开始时间 | ||
130 | } else { | ||
131 | return new Date(nowYear, nowMonth + 1, 0); // 本月结束时间 | ||
132 | } | ||
122 | } | 133 | } |
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
src/views/statistics/css/index.scss
0 → 100644
1 | import filter from '@/utils/filter.js' | ||
2 | class data extends filter { | ||
3 | constructor() { | ||
4 | super() | ||
5 | } | ||
6 | columns () { | ||
7 | return [ | ||
8 | { | ||
9 | prop: "xzq", | ||
10 | label: "行政区", | ||
11 | width: '90' | ||
12 | }, | ||
13 | { | ||
14 | label: '增量数据接入情况', | ||
15 | children: [ | ||
16 | { | ||
17 | prop: 'bqjrlb', | ||
18 | label: '本期接入业务量(笔)', | ||
19 | width: '120' | ||
20 | }, | ||
21 | { | ||
22 | prop: 'bqjrlc', | ||
23 | label: '本期接入业务量(次)', | ||
24 | width: '120' | ||
25 | }, | ||
26 | { | ||
27 | prop: 'xxx', | ||
28 | label: '本期登簿日志反映出的登簿量(条)', | ||
29 | width: '140' | ||
30 | }, | ||
31 | { | ||
32 | label: '本期接入质量评价', | ||
33 | children: [ | ||
34 | { | ||
35 | prop: 'xxx', | ||
36 | label: '未上报登簿日志县区数(个)', | ||
37 | width: '120' | ||
38 | }, | ||
39 | { | ||
40 | prop: 'xxx', | ||
41 | label: '未上报数据县区数(个)', | ||
42 | width: '120' | ||
43 | }, | ||
44 | { | ||
45 | label: '本期未成功接入登簿量及在登簿日志量中的占比', | ||
46 | children: [ | ||
47 | { | ||
48 | prop: 'xxx', | ||
49 | label: '未成功接入登簿量(条)', | ||
50 | width: '120' | ||
51 | }, | ||
52 | { | ||
53 | prop: 'xxx', | ||
54 | label: '占比', | ||
55 | width: '60' | ||
56 | } | ||
57 | ] | ||
58 | }, | ||
59 | { | ||
60 | label: '分时段接入登簿量及与本期接入登簿量的占比', | ||
61 | children: [ | ||
62 | { | ||
63 | prop: 'xxx', | ||
64 | label: '24小时内接入登簿量(占比%)', | ||
65 | width: '120' | ||
66 | }, | ||
67 | { | ||
68 | prop: 'xxx', | ||
69 | label: '48小时内接入登簿量(占比%)', | ||
70 | width: '120' | ||
71 | }, | ||
72 | { | ||
73 | prop: 'xxx', | ||
74 | label: '超过48小时接入登簿量(占比%)', | ||
75 | width: '120' | ||
76 | } | ||
77 | ] | ||
78 | }, | ||
79 | { | ||
80 | prop: 'xxx', | ||
81 | label: '网络环境异常情况', | ||
82 | }, | ||
83 | { | ||
84 | prop: 'xxx', | ||
85 | label: '非登簿环节接入的区县数', | ||
86 | }, | ||
87 | { | ||
88 | prop: 'xxx', | ||
89 | label: '非自动方式接入的区县数', | ||
90 | }, | ||
91 | { | ||
92 | prop: 'xxx', | ||
93 | label: '综合评分' | ||
94 | } | ||
95 | ] | ||
96 | } | ||
97 | ] | ||
98 | } | ||
99 | ] | ||
100 | } | ||
101 | } | ||
102 | export default new data() |
1 | <!-- 登簿日志查询 --> | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
1 | <!-- 接入质量评价表 --> | ||
2 | <template> | ||
3 | <div class="from-clues"> | ||
4 | <!-- 头部搜索 --> | ||
5 | <div class="from-clues-header"> | ||
6 | <el-form ref="ruleForm" :model="form" label-width="100px"> | ||
7 | <el-form-item> | ||
8 | <Breadcrumb /> | ||
9 | </el-form-item> | ||
10 | <el-row class="mb-5"> | ||
11 | <el-col :span="6"> | ||
12 | <el-form-item label="接收日期" prop="startTime"> | ||
13 | <el-date-picker type="date" class="width100" placeholder="开始日期" :picker-options="pickerOptionsStart" | ||
14 | clearable v-model="form.startTime" value-format="yyyy-MM-dd"></el-date-picker> | ||
15 | </el-form-item> | ||
16 | </el-col> | ||
17 | <el-col :span="6"> | ||
18 | <el-form-item label="至" prop="endTime" label-width="35px"> | ||
19 | <el-date-picker type="date" class="width100" placeholder="结束日期" :picker-options="pickerOptionsEnd" clearable | ||
20 | v-model="form.endTime" value-format="yyyy-MM-dd" @change="endTimeChange"></el-date-picker> | ||
21 | </el-form-item> | ||
22 | </el-col> | ||
23 | <!-- 按钮操作 --> | ||
24 | <el-col :span="12" class="btnColRight"> | ||
25 | <el-form-item> | ||
26 | <btn nativeType="cz" @click="resetForm">重置</btn> | ||
27 | <btn nativeType="cx" @click="handleSearch">查询</btn> | ||
28 | </el-form-item> | ||
29 | </el-col> | ||
30 | </el-row> | ||
31 | </el-form> | ||
32 | </div> | ||
33 | <!-- 列表区域 --> | ||
34 | <div class="from-clues-content"> | ||
35 | <lb-table ref="table" :page-size="pageData.size" border :current-page.sync="pageData.current" | ||
36 | :total="tableData.total" @size-change="handleSizeChange" @p-current-change="handleCurrentChange" | ||
37 | :column="tableData.columns" :data="tableData.data"> | ||
38 | </lb-table> | ||
39 | </div> | ||
40 | </div> | ||
41 | </template> | ||
42 | |||
43 | <script> | ||
44 | // 接入质量评价表 | ||
45 | // 引入表格头部数据 | ||
46 | import data from "./data"; | ||
47 | // 引入table混入方法 | ||
48 | import tableMixin from "@/mixins/tableMixin.js"; | ||
49 | //引入日期处理方法 | ||
50 | import { timeFormat } from "@/utils/operation"; | ||
51 | // 获取时间 | ||
52 | import { getCurrentDate } from "@/utils/tools"; | ||
53 | export default { | ||
54 | name: "jsbwcx", | ||
55 | mixins: [tableMixin], | ||
56 | data () { | ||
57 | return { | ||
58 | pickerOptionsStart: { | ||
59 | disabledDate: (time) => { | ||
60 | let endDateVal = this.form.endTime; | ||
61 | if (endDateVal) { | ||
62 | return ( | ||
63 | time.getTime() >= | ||
64 | new Date(endDateVal).getTime() | ||
65 | ); | ||
66 | } | ||
67 | }, | ||
68 | }, | ||
69 | pickerOptionsEnd: { | ||
70 | disabledDate: (time) => { | ||
71 | let beginDateVal = this.form.startTime; | ||
72 | if (beginDateVal) { | ||
73 | return ( | ||
74 | time.getTime() < | ||
75 | new Date(beginDateVal).getTime() | ||
76 | ); | ||
77 | } | ||
78 | }, | ||
79 | }, | ||
80 | // 表格数据 | ||
81 | form: { | ||
82 | startTime: "", // 开始日期 | ||
83 | endTime: "", // 结束日期 | ||
84 | currentPage: 1 | ||
85 | }, | ||
86 | // 校验规则 | ||
87 | rules: { | ||
88 | startTime: [ | ||
89 | { required: true, message: "请选择开始日期", trigger: "change" }, | ||
90 | ], | ||
91 | endTime: [ | ||
92 | { required: true, message: "请选择结束日期", trigger: "change" }, | ||
93 | ] | ||
94 | }, | ||
95 | // 表格数据 | ||
96 | tableData: { | ||
97 | // 表格头部 | ||
98 | columns: [ | ||
99 | { | ||
100 | label: "序号", | ||
101 | type: "index", | ||
102 | width: "50", | ||
103 | index: this.indexMethod, | ||
104 | } | ||
105 | ] | ||
106 | .concat(data.columns()), | ||
107 | data: [], | ||
108 | }, | ||
109 | // 分页 | ||
110 | pageData: { | ||
111 | total: 0, | ||
112 | pageSize: 10, | ||
113 | current: 1 | ||
114 | } | ||
115 | }; | ||
116 | }, | ||
117 | created() { | ||
118 | this.form.startTime = getCurrentDate() | ||
119 | this.form.endTime = getCurrentDate('time') | ||
120 | }, | ||
121 | methods: { | ||
122 | //截止日期变化 | ||
123 | endTimeChange (val) { | ||
124 | this.form.endTime = timeFormat(new Date(val), true) | ||
125 | }, | ||
126 | // 初始化数据 | ||
127 | featchData () { }, | ||
128 | // 重置 | ||
129 | resetForm () { | ||
130 | this.$refs.ruleForm.resetFields(); | ||
131 | this.form.currentPage = 1 | ||
132 | this.featchData(); | ||
133 | } | ||
134 | } | ||
135 | } | ||
136 | </script> | ||
137 | <style scoped lang="scss"> | ||
138 | // 引入表单整体样式 | ||
139 | @import "~@/styles/public.scss"; | ||
140 | @import "../css/index.scss"; | ||
141 | </style> | ||
142 | ... | ... |
1 | import filter from '@/utils/filter.js' | ||
2 | class data extends filter { | ||
3 | constructor() { | ||
4 | super() | ||
5 | } | ||
6 | columns () { | ||
7 | return [ | ||
8 | { | ||
9 | prop: 'jcjg', | ||
10 | label: '检查结果', | ||
11 | width: 90, | ||
12 | render: (h, scope) => { | ||
13 | return ( | ||
14 | <div> | ||
15 | <span class='adopt' v-show={scope.row.receiveState == 0}>未效验</span> | ||
16 | <span class='adopt' v-show={scope.row.receiveState == 1}>效验成功</span> | ||
17 | <span class='warehousing' v-show={scope.row.receiveState == 2}>效验失败</span> | ||
18 | </div> | ||
19 | ) | ||
20 | } | ||
21 | }, | ||
22 | { | ||
23 | prop: 'rkjg', | ||
24 | label: '入库结果', | ||
25 | width: 80, | ||
26 | render: (h, scope) => { | ||
27 | return ( | ||
28 | <div> | ||
29 | <span class='fail' v-show={scope.row.storageState == 0}>未入库</span> | ||
30 | <span class='success' v-show={scope.row.storageState == 1}>已入库</span> | ||
31 | <span class='fail' v-show={scope.row.storageState == 2}>入库失败</span> | ||
32 | </div> | ||
33 | ) | ||
34 | } | ||
35 | }, | ||
36 | { | ||
37 | prop: "areacode", | ||
38 | label: "行政区代码", | ||
39 | width: 90, | ||
40 | }, | ||
41 | { | ||
42 | prop: "areaName", | ||
43 | label: "行政区名称", | ||
44 | width: 90, | ||
45 | }, | ||
46 | { | ||
47 | prop: "bizMsgid", | ||
48 | label: "业务报文ID", | ||
49 | width: 90, | ||
50 | }, | ||
51 | { | ||
52 | prop: "createdate", | ||
53 | label: "创建时间", | ||
54 | width: 140, | ||
55 | }, | ||
56 | { | ||
57 | prop: "recflowid", | ||
58 | label: "业务流水号", | ||
59 | width: 95, | ||
60 | }, | ||
61 | { | ||
62 | prop: "estatenum", | ||
63 | label: "不动产单元号", | ||
64 | width: 240, | ||
65 | }, | ||
66 | { | ||
67 | prop: "rectype", | ||
68 | label: "业务编码", | ||
69 | width: 80, | ||
70 | }, | ||
71 | { | ||
72 | prop: "rectypeName", | ||
73 | label: "业务名称", | ||
74 | render: (h, scope) => { | ||
75 | return ( | ||
76 | <div> | ||
77 | {scope.row.rectypeName} | ||
78 | </div> | ||
79 | ) | ||
80 | } | ||
81 | }, | ||
82 | { | ||
83 | prop: "receiveDate", | ||
84 | label: "接收时间", | ||
85 | width: 140 | ||
86 | } | ||
87 | ] | ||
88 | } | ||
89 | } | ||
90 | export default new data() |
1 | import filter from '@/utils/filter.js' | ||
2 | class data extends filter { | ||
3 | constructor() { | ||
4 | super() | ||
5 | } | ||
6 | columns () { | ||
7 | return [ | ||
8 | { | ||
9 | prop: 'jcjg', | ||
10 | label: '检查结果', | ||
11 | width: 90, | ||
12 | render: (h, scope) => { | ||
13 | return ( | ||
14 | <div> | ||
15 | <span class='adopt' v-show={scope.row.receiveState == 0}>未效验</span> | ||
16 | <span class='adopt' v-show={scope.row.receiveState == 1}>效验成功</span> | ||
17 | <span class='warehousing' v-show={scope.row.receiveState == 2}>效验失败</span> | ||
18 | </div> | ||
19 | ) | ||
20 | } | ||
21 | }, | ||
22 | { | ||
23 | prop: 'rkjg', | ||
24 | label: '入库结果', | ||
25 | width: 80, | ||
26 | render: (h, scope) => { | ||
27 | return ( | ||
28 | <div> | ||
29 | <span class='fail' v-show={scope.row.storageState == 0}>未入库</span> | ||
30 | <span class='success' v-show={scope.row.storageState == 1}>已入库</span> | ||
31 | <span class='fail' v-show={scope.row.storageState == 2}>入库失败</span> | ||
32 | </div> | ||
33 | ) | ||
34 | } | ||
35 | }, | ||
36 | { | ||
37 | prop: "areacode", | ||
38 | label: "行政区代码", | ||
39 | width: 90, | ||
40 | }, | ||
41 | { | ||
42 | prop: "areaName", | ||
43 | label: "行政区名称", | ||
44 | width: 90, | ||
45 | }, | ||
46 | { | ||
47 | prop: "bizMsgid", | ||
48 | label: "业务报文ID", | ||
49 | width: 90, | ||
50 | }, | ||
51 | { | ||
52 | prop: "createdate", | ||
53 | label: "创建时间", | ||
54 | width: 140, | ||
55 | }, | ||
56 | { | ||
57 | prop: "recflowid", | ||
58 | label: "业务流水号", | ||
59 | width: 95, | ||
60 | }, | ||
61 | { | ||
62 | prop: "estatenum", | ||
63 | label: "不动产单元号", | ||
64 | width: 240, | ||
65 | }, | ||
66 | { | ||
67 | prop: "rectype", | ||
68 | label: "业务编码", | ||
69 | width: 80, | ||
70 | }, | ||
71 | { | ||
72 | prop: "rectypeName", | ||
73 | label: "业务名称", | ||
74 | render: (h, scope) => { | ||
75 | return ( | ||
76 | <div> | ||
77 | {scope.row.rectypeName} | ||
78 | </div> | ||
79 | ) | ||
80 | } | ||
81 | }, | ||
82 | { | ||
83 | prop: "receiveDate", | ||
84 | label: "接收时间", | ||
85 | width: 140 | ||
86 | } | ||
87 | ] | ||
88 | } | ||
89 | } | ||
90 | export default new data() |
-
Please register or sign in to post a comment