index.vue
4.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
<template>
<!-- 登簿日志查询 -->
<div class="from-clues">
<!-- 头部搜索 -->
<div class="from-clues-header">
<el-form ref="ruleForm" :model="form" label-width="80px">
<!-- 判断进入监管还是上报系统 -->
<el-form-item v-if="BASE_API.THEME == 'jg'">
<Breadcrumb />
</el-form-item>
<el-row>
<el-col :span="6">
<el-form-item label="行政区">
<el-select
v-model="$store.state.user.userInfo.grade === 'county' ? form.areacode = $store.state.user.userInfo.areaCode : form.areacode"
class="width100" clearable placeholder="行政区" :disabled="$store.state.user.userInfo.grade === 'county'">
<el-option v-for="item in dicData['A20']" :key="item.DCODE" :label="item.DNAME" :value="item.DCODE">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="开始日期" prop="startTime">
<el-date-picker type="date" class="width100" placeholder="开始日期" :picker-options="pickerOptionsStart"
clearable v-model="form.startTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="结束日期" prop="endTime">
<el-date-picker type="date" class="width100" placeholder="结束日期" :picker-options="pickerOptionsEnd" clearable
v-model="form.endTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
<!-- 操作按钮 -->
<el-col :span="6" class="btnColRight">
<btn nativeType="cz" @click="resetForm">重置</btn>
<btn nativeType="cx" @click="handleSearch">查询</btn>
</el-col>
</el-row>
</el-form>
</div>
<!-- 列表区域 -->
<div class="from-clues-content">
<!-- table组件 -->
<lb-table ref="table" :page-size="pageData.size" :current-page.sync="pageData.current" :total="tableData.total"
@size-change="handleSizeChange" @p-current-change="handleCurrentChange" :column="tableData.columns"
:data="tableData.data">
</lb-table>
</div>
<!-- 详情弹框 -->
<editDialog ref="editLog" />
</div>
</template>
<script>
// 登簿日志查询
// 引入列表数据
import { datas, sendThis } from "./data"
// 引入表格混入方法
import tableMixin from "@/mixins/tableMixin.js";
import { getRecordLogPage } from "@/api/recordLog.js";
import { mapGetters } from 'vuex'
//引入日期处理方法
import { timeFormat } from "@/utils/operation";
// 引入弹框组件
import editDialog from '../components/editDialog.vue'
export default {
components: {
editDialog
},
name: "dbrzcx",
mixins: [tableMixin],
computed: {
...mapGetters(['dicData'])
},
data () {
return {
// 开始结束日期限制
pickerOptionsStart: {
disabledDate: (time) => {
if (this.form.endTime) {
return time.getTime() >= new Date(this.form.endTime).getTime()
}
}
},
// 结束日期限制
pickerOptionsEnd: {
disabledDate: (time) => {
if (this.form.startTime) {
return time.getTime() < new Date(this.form.startTime).getTime()
}
}
},
// 表单
form: {
areacode: '',
startTime: '',
endTime: '',
currentPage: 1
},
// 分页
pageData: {
total: 0,
pageSize: 10,
current: 1
},
// table数据
tableData: {
// 表头
columns: [
{
label: "序号",
type: "index",
width: "50",
index: this.indexMethod,
}
]
.concat(datas.columns()),
// 列表
data: [],
total: 0,
}
}
},
mounted () {
sendThis(this);
},
methods: {
//截止日期变化
endTimeChange (val) {
this.form.endTime = timeFormat(new Date(val), true)
},
featchData () {
getRecordLogPage({ ...this.form }).then(res => {
if (res.code === 200) {
let { records, total, current } = res.result
this.tableData.data = records ? records : []
this.tableData.total = total ? total : 0
this.pageData.current = current
}
})
},
// 重置
resetForm () {
this.$refs.ruleForm.resetFields();
this.form.currentPage = 1
this.featchData();
},
// 编辑
handleEdit (row) {
this.$refs.editLog.isShow(row);
this.$store.dispatch('business/setReportLogEdit')
}
},
destroyed () {
this.$store.dispatch('business/setEdit')
}
}
</script>
<style scoped lang="scss">
@import "./index.scss";
</style>