7f8fb505 by 任超

feat:接入质量评价表

1 parent 7fb11b31
...@@ -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
......
1 /deep/.el-table--border th.el-table__cell {
2 border-bottom: 1px solid #458ACF !important;
3 }
4
5 /deep/.el-table--border .el-table__cell {
6 border-right: 1px solid #458ACF !important;
7 }
...\ No newline at end of file ...\ No newline at end of file
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()