| | |
| | | <el-input v-model="queryParams.pointId" placeholder="点位" clearable @keyup.enter.native="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="报备类型" prop="reportType"> |
| | | <el-select v-model="queryParams.reportType" placeholder="报备类型" clearable> |
| | | <el-select v-model="queryParams.reportType" @change="handleQuery" placeholder="报备类型" clearable> |
| | | <el-option label="事前报备" value="事前报备" /> |
| | | <el-option label="事后报备" value="事后报备" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="报备时间"> |
| | | <el-date-picker v-model="daterangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd" type="daterange" |
| | | range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker> |
| | | <el-form-item label="审核状态"> |
| | | <el-select v-model="queryParams.status" @change="handleQuery" placeholder="审核状态" clearable> |
| | | <el-option label="全部" value="" /> |
| | | <el-option label="审核中" :value="0" /> |
| | | <el-option label="审核未通过" :value="2" /> |
| | | <el-option label="审核通过" :value="1" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button type="primary" icon="el-icon-search" size="small" @click="handleQuery">搜索</el-button> |
| | |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column type="selection" width="55" align="center" /> |
| | | <el-table-column label="运维单位" align="center" prop="unitName" /> |
| | | <el-table-column label="运维单位" width="200" align="center" prop="unitName" /> |
| | | <el-table-column label="报备人员" align="center" prop="peopleName" /> |
| | | <el-table-column label="点位" align="center" prop="pointName" /> |
| | | <el-table-column label="点位" width="250" align="center" prop="pointName" /> |
| | | <el-table-column label="报备类型" align="center" prop="reportType" /> |
| | | <!-- <el-table-column label="报备内容" align="center" prop="reportContent" show-overflow-tooltip="true" /> |
| | | <el-table-column label="上报材料" align="center" prop="reportMaterials" show-overflow-tooltip="true"> |
| | | <template slot-scope="scope"> |
| | | <div v-for="(item, index) in scope.row.reportMaterials.split(',')" :key="index">{{ |
| | | item.substring(item.lastIndexOf("/") + 1) }}</div> |
| | | </template> |
| | | </el-table-column> --> |
| | | <el-table-column label="上报时间" width="200" align="center" prop="createTime" /> |
| | | <el-table-column label="故障类型" align="center" prop="errorType" /> |
| | | <el-table-column label="审核结果" align="center" prop="status" :formatter="formatStatus"/> |
| | | <el-table-column label="审核时间" align="center" prop="auditingTime" width="180"> |
| | | <el-table-column label="操作" fixed="right" width="250" align="center" class-name="small-padding fixed-width"> |
| | | <template slot-scope="scope"> |
| | | <span>{{ parseTime(scope.row.auditingTime, '{y}-{m}-{d}') }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-button--> |
| | | <!-- size="mini"--> |
| | | <!-- type="text"--> |
| | | <!-- icon="el-icon-edit"--> |
| | | <!-- @click="handleUpdate(scope.row)"--> |
| | | <!-- v-hasPermi="['system:report:edit']"--> |
| | | <!-- >修改</el-button>--> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-edit" |
| | | @click="handleUpdate(scope.row)" |
| | | v-hasPermi="['system:report:edit']" |
| | | v-if="scope.row.status === 2 || scope.row.status === 0" |
| | | >修改</el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleAuditing(scope.row)" |
| | | v-hasPermi="['system:report:edit']" v-if="scope.row.status === 0">审核</el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-s-check" @click="handleAuditingRecord(scope.row.id)" |
| | |
| | | <el-option label="设备遗失" value="设备遗失" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="报备时间" prop="expirTime"> |
| | | <el-date-picker v-model="form.expirTime" style="width: 240px" value-format="yyyy-MM-dd" type="daterange" |
| | | <el-form-item label="报备时间"> |
| | | <el-date-picker v-model="daterangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd" type="daterange" |
| | | range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" |
| | | @change="handleExpirTimeChange"></el-date-picker> |
| | | </el-form-item> |
| | |
| | | </el-form-item> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="submitForm">确 定</el-button> |
| | | <el-button type="primary" @click="submitForm">提交审核</el-button> |
| | | <el-button @click="cancel">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <!-- 查看审核记录 --> |
| | | <el-dialog title="报备审核记录" :visible.sync="recordOpen" width="900px"> |
| | | <div slot="footer" class="dialog-footer" style="max-height: 500px;overflow-y: auto;"> |
| | | <el-timeline v-for="record in auditingRecordList" :key="record.id"> |
| | | <el-timeline-item :timestamp="record.createTime" placement="top"> |
| | | <el-card> |
| | | <el-descriptions title="提交数据" :column="3" border> |
| | | <el-descriptions-item label="点位" label-class-name="my-label" content-class-name="my-content">{{record.pointName}}</el-descriptions-item> |
| | | <el-descriptions-item label="报备类型">{{record.reportType}}</el-descriptions-item> |
| | | <el-descriptions-item label="故障类型">{{record.errorType}}</el-descriptions-item> |
| | | <el-descriptions-item label="审核结果">{{formatStatus(record)}}</el-descriptions-item> |
| | | <el-descriptions-item label="审核意见">{{record.auditOpinion}}</el-descriptions-item> |
| | | <el-descriptions-item label="审核时间">{{record.auditingTime}}</el-descriptions-item> |
| | | <el-descriptions-item label="报备内容"> |
| | | <div class="content" v-html="getHtmlContent(record.reportContent)"></div> |
| | | </el-descriptions-item> |
| | | <el-descriptions-item label="上报材料"> |
| | | <el-link |
| | | v-for="item in record.reportMaterials != null ? record.reportMaterials.split(',') : record.reportMaterials" |
| | | :underline="false" type="primary" :key="item" @click="handleDownload(item)">{{ item.substring(item.lastIndexOf("/") + 1) |
| | | }}</el-link> |
| | | </el-descriptions-item> |
| | | </el-descriptions> |
| | | </el-card> |
| | | </el-timeline-item> |
| | | </el-timeline> |
| | | <el-button type="primary" @click="recordOpen = false">关闭</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <!-- 审核报备 --> |
| | | <el-dialog title="报备审核" :visible.sync="auditingOpen" width="500px" append-to-body> |
| | |
| | | <el-form-item label="上报材料"> |
| | | <el-link |
| | | v-for="item in auditingForm.reportMaterials != null ? auditingForm.reportMaterials.split(',') : auditingForm.reportMaterials" |
| | | :underline="false" :key="item" @click="handleDownload(item)">{{ item.substring(item.lastIndexOf("/") + 1) |
| | | :underline="false" type="primary" :key="item" @click="handleDownload(item)">{{ item.substring(item.lastIndexOf("/") + 1) |
| | | }}</el-link> |
| | | </el-form-item> |
| | | <el-form-item label="审核结果"> |
| | |
| | | data() { |
| | | return { |
| | | fileType: ["doc", "xls", "xlsx", "ppt", "txt", "pdf", "png", "jpg"], |
| | | |
| | | auditingRecordList: [], |
| | | // 点位list |
| | | pointList: [], |
| | | // 遮罩层 |
| | |
| | | title: "", |
| | | // 是否显示弹出层 |
| | | open: false, |
| | | recordOpen: false, |
| | | // 报备时间范围 |
| | | daterangeCreateTime: [], |
| | | expirTime: [], |
| | |
| | | pointId: null, |
| | | createTime: null, |
| | | auditingTime: null, |
| | | errorType: null |
| | | errorType: null, |
| | | status: 0 |
| | | }, |
| | | // 表单参数 |
| | | form: {}, |
| | |
| | | this.getList(); |
| | | }, |
| | | methods: { |
| | | getHtmlContent(content) { |
| | | if (content) { |
| | | return content |
| | | } else { |
| | | return "无" |
| | | } |
| | | }, |
| | | formatStatus(item) { |
| | | if (item.status === 0) { |
| | | return '待审核' |
| | | return '审核中' |
| | | } else if (item.status === 1) { |
| | | return '审核通过' |
| | | } else if (item.status === 2) { |
| | | return '未通过审核' |
| | | return '审核未通过' |
| | | } |
| | | }, |
| | | auditingCancel() { |
| | |
| | | }, |
| | | // 获取审核记录 |
| | | handleAuditingRecord(reportId) { |
| | | |
| | | auditing(reportId).then(res => { |
| | | this.auditingRecordList = res.data; |
| | | this.recordOpen = true |
| | | }) |
| | | }, |
| | | handleAuditing(row) { |
| | | this.auditingOpen = true; |
| | |
| | | this.reset(); |
| | | const id = row.id || this.ids |
| | | getReport(id).then(response => { |
| | | this.daterangeCreateTime = [response.data.beginCreateTime, response.data.endCreateTime] |
| | | this.form = response.data; |
| | | this.open = true; |
| | | this.title = "修改报备"; |
| | |
| | | }, |
| | | /** 提交按钮 */ |
| | | submitForm() { |
| | | |
| | | // todo 判断是事前报备 |
| | | |
| | | this.$refs["form"].validate(valid => { |
| | | if (valid) { |
| | | this.form.beginCreateTime = this.daterangeCreateTime[0] |
| | | this.form.endCreateTime = this.daterangeCreateTime[1] |
| | | if (this.form.id != null) { |
| | | updateReport(this.form).then(response => { |
| | | this.$modal.msgSuccess("修改成功"); |
| | |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .content { |
| | | height: 100px; |
| | | max-height: 300px; |
| | | overflow-y: auto; |
| | | } |
| | | .info-container { |
| | | width: 100%; |
| | | max-height: 400px; |