From c562fa2e66f4972ae23fa57ef7412da6e18991ed Mon Sep 17 00:00:00 2001 From: lyfO_o <764716047@qq.com> Date: 星期二, 12 七月 2022 14:31:51 +0800 Subject: [PATCH] Merge remote-tracking branch 'remotes/origin/shf' into master --- src/views/hiddenDangerRegistration/index.vue | 194 +++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 167 insertions(+), 27 deletions(-) diff --git a/src/views/hiddenDangerRegistration/index.vue b/src/views/hiddenDangerRegistration/index.vue index de1a993..a1c768e 100644 --- a/src/views/hiddenDangerRegistration/index.vue +++ b/src/views/hiddenDangerRegistration/index.vue @@ -45,7 +45,7 @@ v-for="item in YHBMList" :key="item.branch_id" :label="item.branch_name" - :value="item.branch_id"> + :value="item.branch_name"> </el-option> </el-select> </el-form-item> @@ -136,36 +136,49 @@ <el-form-item style="text-align:center;padding:0 50px"> <el-button type="primary" class="btns" size="small" icon="el-icon-search" @click="getPageList()">查询</el-button> <el-button type="primary" class="btns" size="small" @click="reset()">重置</el-button> - <el-button type="primary" class="btns" size="small" icon="el-icon-upload2">导出excel</el-button> + <el-button type="primary" class="btns" size="small" icon="el-icon-upload2" @click="exportData">导出excel</el-button> </el-form-item> </el-form> <el-row class="title-center"> <el-col :span="14"> <el-form ref="form" :inline="true" :model="form" label-width="100px"> <el-form-item label="EXCEL导入"> - <el-input v-model="form.name" placeholder="未选择文件"></el-input> - </el-form-item> - <el-form-item> - <el-button type="primary" size="small" class="btns" - >选择文件</el-button +<!-- <el-input v-model="form.name" placeholder="未选择文件"></el-input>--> + <el-upload + class="upload-demo inline-block margin-right-10" + ref="upload" + action="" + :http-request="uploadSectionFile" + :on-preview="handlePreview" + :on-remove="handleRemove" + :file-list="fileList" + :before-upload="beforeUpload" + :auto-upload="false" > - <el-button - type="primary" - class="btns" - size="small" - icon="el-icon-bottom" - >导入</el-button - > - <el-button - type="primary" - class="btns" - size="small" - icon="el-icon-download" - >下载模板</el-button - > + <el-button slot="trigger" size="small" type="primary">选取文件</el-button> + <el-button + type="primary" + class="btns" + size="small" + icon="el-icon-bottom" + @click="dangerImport" + >导入</el-button + > + <el-button + type="primary" + class="btns" + size="small" + icon="el-icon-download" + @click="downloadTemplate" + >下载模板</el-button + > + </el-upload> </el-form-item> </el-form> </el-col> +<!-- <el-col :span="14-fileSpan">--> +<!-- --> +<!-- </el-col>--> <el-col :span="10" style="text-align: right"> <el-button class="btns" @@ -190,17 +203,42 @@ <el-table-column prop="check_man" label="检查人" align="center" width="120"></el-table-column> <el-table-column prop="checktype" label="检查类别" align="center"></el-table-column> <el-table-column label="隐患项目" align="center"> - <el-table-column prop="check_date" label="检查时间" width="120" align="center"></el-table-column> + <el-table-column prop="check_date" label="检查时间" width="120" align="center"> + <template slot-scope="scope"> + <label>{{ formatDate(scope.row.check_date) }}</label><br/> + <label>{{ scope.row.check_class }}</label> + </template> + </el-table-column> <el-table-column prop="address" label="地点" align="center"> </el-table-column> - <el-table-column prop="ht_content" label="内容" align="center"> </el-table-column> + <el-table-column prop="ht_content" label="内容" align="center"> + <template slot-scope="scope"> + <el-popover trigger="hover" placement="top"> + <p>{{ scope.row.ht_content }}</p> + <div slot="reference" class="name-wrapper">{{ + scope.row.ht_content != null && scope.row.ht_content.length > 10 ? scope.row.ht_content.substring(0, 8) + "...." : scope.row.ht_content + }} + </div> + </el-popover> + </template> + </el-table-column> <el-table-column prop="ht_typesub" label="类别" align="center"> </el-table-column> <el-table-column prop="ht_level" label="级别" align="center"> </el-table-column> </el-table-column> <el-table-column label="整改计划" align="center"> - <el-table-column prop="measure" label="整改措施" align="center"> </el-table-column> + <el-table-column prop="measure" label="整改措施" align="center"> + <template slot-scope="scope"> + <el-popover trigger="hover" placement="top"> + <p>{{ scope.row.measure }}</p> + <div slot="reference" class="name-wrapper">{{ + scope.row.measure != null && scope.row.measure.length > 10 ? scope.row.measure.substring(0, 8) + "...." : scope.row.measure + }} + </div> + </el-popover> + </template> + </el-table-column> <el-table-column prop="ht_branch" label="隐患部门" align="center"> </el-table-column> <el-table-column prop="duty_officer" label="责任人" align="center"> </el-table-column> - <el-table-column prop="alter_time" label="限改时间" width="120" align="center"></el-table-column> + <el-table-column prop="alter_time" label="限改时间" width="120" :formatter="formatColumnDate" align="center"></el-table-column> <el-table-column prop="ht_level" label="级别" align="center"> </el-table-column> </el-table-column> <el-table-column label="整改情况" align="center"> @@ -254,7 +292,7 @@ </div> </template> <script> -import {getPageList,delDanger} from "@/api/sgyhpczl/hiddenDangerRegistration"; +import {getPageList,delDanger,analogy_export_do,downloadFile,danger_import_do} from "@/api/sgyhpczl/hiddenDangerRegistration"; import {initJCBM ,initYHLX, initBC ,initJCLB ,initYHBM ,initYHJB,initLlr} from "@/api/sgyhpczl/initSelect"; export default { data() { @@ -264,7 +302,7 @@ llrList:[], options: [], form:{}, - + fileSpan:3, JCDWList:[{label:"众泰煤焦化",value:0},{label:"上级单位",value:1}], JCBMList:[], YHLXList:[], @@ -283,6 +321,7 @@ currentPage: 1, pageSize: 10, recordTotal: 0, + fileList: [], }; }, mounted(){ @@ -422,6 +461,104 @@ } }) }, + handleRemove(file, fileList) { + var fileUidList = []; + fileList.forEach(file => { + fileUidList.push(file.uid); + }) + this.fileNameList = this.fileNameList.filter(n => fileUidList.indexOf(n.uid) != -1); + }, + handlePreview(file) { + console.log(file) + }, + beforeUpload(file) { + var FileExt = file.name.replace(/.+\./, ""); + if (['xls','xlsx'].indexOf(FileExt.toLowerCase()) === -1) { + this.$message({ + type: 'warning', + message: '请上传后缀名为xls,xlsx的图片!' + }); + return false; + } + }, + //上传 + uploadSectionFile(param) { + console.log(param) + let form = new FormData(); + form.append('file', param.file); + danger_import_do(form).then(res=>{ + if (res.data.ok==1){ + console.log(res.data) + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }).catch(err => { + console.log(err) + }) + + }, + //导入 + dangerImport(){ + this.$refs.upload.submit(); + }, + //下载模板 + downloadTemplate(){ + downloadFile().then(res => { + this.listLoading = false + var blob = new Blob([res.data]) + var downloadElement = document.createElement('a') + var href = window.URL.createObjectURL(blob) //创建下载的链接 + downloadElement.href = href + downloadElement.download = '隐患整改通知单导入模板.xlsx' //下载后文件名 + document.body.appendChild(downloadElement) + downloadElement.click() //点击下载 + document.body.removeChild(downloadElement) //下载完成移除元素 + window.URL.revokeObjectURL(href) //释放掉blob对象 + }).catch(err => { + console.log(err) + }) + }, + exportData() { + this.listLoading = true + var requestData = JSON.parse(JSON.stringify(this.listQuery)); + requestData.export_type = 1; + //删除分页参数 + this.$delete(requestData, 'page') + this.$delete(requestData, 'limit') + analogy_export_do(requestData).then(res => { + this.listLoading = false + var blob = new Blob([res.data]) + var downloadElement = document.createElement('a') + var href = window.URL.createObjectURL(blob) //创建下载的链接 + downloadElement.href = href + downloadElement.download = '隐患登记下达.xlsx' //下载后文件名 + document.body.appendChild(downloadElement) + downloadElement.click() //点击下载 + document.body.removeChild(downloadElement) //下载完成移除元素 + window.URL.revokeObjectURL(href) //释放掉blob对象 + }).catch(err => { + console.log(err) + }) + }, + //方法区 + formatDate(data) { + // 获取单元格数据 + if (data == null) { + return null + } + let dt = new Date(data) + return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate() + }, + //日期格式转换 + formatColumnDate(row, column) { + // 获取单元格数据 + let data = row[column.property] + if (data == null) { + return null + } + let dt = new Date(data) + return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate() + ' ' + }, initYHLX(){ initYHLX().then(res=>{ if (res.data.ok==1){ @@ -498,6 +635,9 @@ }; </script> <style> + .inline-block { + display: inline-block; + } .inquire { display: flex; justify-content: left; -- Gitblit v1.9.2