From c1df656dee7e75d109d2bee05f0c129e13e9367a Mon Sep 17 00:00:00 2001 From: panzy <225@qq.com> Date: 星期六, 21 五月 2022 06:49:26 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/shf' into shf --- src/permission.js | 2 src/views/summaryPotentialSafetyHzards/index.vue | 554 +++++-- src/views/oneFromanotherN/index.vue | 6 src/views/safetyHazardAccount/index.vue | 114 + src/views/hiddenDangerTroubleshootingList/index.vue | 143 + src/api/sgyhpczl/hiddenDangerTroubleshootingList.js | 37 src/api/sgyhpczl/safetyHazardAccount.js | 12 src/views/hiddenDangerTroubleshootingList/preview.vue | 178 +- src/api/sgyhpczl/troubleshooting.js | 63 src/views/summaryPotentialSafetyHzards/summaryList.vue | 343 ++-- src/router/index.js | 17 src/views/Issuedbysuperiors/superiorsSend.vue | 531 +++++++ src/views/careabout/managementConcerns.vue | 240 +++ src/api/sgyhpczl/Issuedbysuperiors.js | 15 src/views/Issuedbysuperiors/index.vue | 366 ++-- src/views/troubleshooting/index.vue | 444 ++--- src/views/chartAnalysis/index.vue | 794 +++++++++- src/views/careabout/index.vue | 136 + src/api/sgyhpczl/careabout.js | 107 + src/api/sgyhpczl/summaryPotentialSafetyHzards.js | 17 20 files changed, 3,026 insertions(+), 1,093 deletions(-) diff --git a/src/api/sgyhpczl/Issuedbysuperiors.js b/src/api/sgyhpczl/Issuedbysuperiors.js index 71c140b..b71217a 100644 --- a/src/api/sgyhpczl/Issuedbysuperiors.js +++ b/src/api/sgyhpczl/Issuedbysuperiors.js @@ -86,3 +86,18 @@ }); } + +//保存延期申请 +export function company_next_step_do(data) { + return request({ + headers:{ + 'token': getTokenAndVerify().token, + 'verify':getTokenAndVerify().verify + }, + url: "/taboi/danger/company_next_step_do", + contentType: "application/json", + method: 'POST', + data, + }); +} + diff --git a/src/api/sgyhpczl/careabout.js b/src/api/sgyhpczl/careabout.js new file mode 100644 index 0000000..88113d5 --- /dev/null +++ b/src/api/sgyhpczl/careabout.js @@ -0,0 +1,107 @@ +import request from '@/utils/request'; +import {getTokenAndVerify} from "@/api/sgyhpczl/auth"; + + +export function getPageList(data) { + var arr=[] + /*编号*/ + if(data.form.number!=null && data.form.number!=''){ + arr.push({field:"number",value:data.form.number,type:'TXT'}) + } + /*检查单位*/ + if(data.form.check_main_branch!=null && data.form.check_main_branch!=''){ + arr.push({field:"check_main_branch",value:data.form.check_main_branch,type:'OPT'}) + } + /*检查部门*/ + if(data.form.check_branch!=null && data.form.check_branch!=''){ + arr.push({field:"check_branch",value:data.form.check_branch,type:'OPT'}) + } + /*检查人*/ + if(data.form.check_man!=null && data.form.check_man!=''){ + arr.push({field:"check_man",value:data.form.check_man,type:'TXT'}) + } + /*隐患单位*/ + if(data.form.ht_community!=null && data.form.ht_community!=''){ + arr.push({field:"ht_community",value:data.form.ht_community,type:'OPT'}) + } + /*隐患部门*/ + if(data.form.ht_branch!=null && data.form.ht_branch!=''){ + arr.push({field:"ht_branch",value:data.form.ht_branch,type:'OPT'}) + } + /*隐患类别*/ + if(data.form.ht_typesub!=null && data.form.ht_typesub!=''){ + arr.push({field:"ht_typesub",value:data.form.ht_typesub,type:'OPT'}) + } + /*隐患级别*/ + if(data.form.ht_level!=null && data.form.ht_level!=''){ + arr.push({field:"ht_level",value:data.form.ht_level,type:'OPT'}) + } + /*检查类别*/ + if(data.form.checktype!=null && data.form.checktype!=''){ + arr.push({field:"checktype",value:data.form.checktype,type:'OPT'}) + } + /*隐患地点*/ + if(data.form.address!=null && data.form.address!=''){ + arr.push({field:"address",value:data.form.address,type:'TXT'}) + } + /*隐患内容*/ + if(data.form.ht_content!=null && data.form.ht_content!=''){ + arr.push({field:"ht_content",value:data.form.ht_content,type:'TXT'}) + } + /*班次*/ + if(data.form.check_class!=null && data.form.check_class!=''){ + arr.push({field:"check_class",value:data.form.check_class,type:'OPT'}) + } + /*深入现场情况*/ + if(data.form.class_situation!=null && data.form.class_situation!=''){ + arr.push({field:"class_situation",value:data.form.class_situation,type:'OPT'}) + } + /*检查时间*/ + if(data.form.check_dateStart!=null && data.form.check_dateStart!='' && data.form.check_dateEnd!=null && data.form.check_dateEnd!=''){ + arr.push({field:"check_date",value:data.form.check_dateStart+"至"+data.form.check_dateEnd,type:'DAT'}) + } + /*限改时间*/ + if(data.form.alter_timeStart!=null && data.form.alter_timeStart!='' && data.form.alter_timeEnd!=null && data.form.alter_timeEnd!=''){ + arr.push({field:"alter_time",value:data.form.alter_timeStart+"至"+data.form.alter_timeEnd,type:'DAT'}) + } + data.query_condition=arr + return request({ + headers:{ + 'token': getTokenAndVerify().token, + 'verify':getTokenAndVerify().verify + }, + url: "/taboi/danger/focus_list", + contentType: "application/json", + method: 'POST', + data + }); +} +//导出 +export function analogy_export_do(data) { + return request({ + headers: { + 'token': getTokenAndVerify().token, + 'verify': getTokenAndVerify().verify + }, + url: '/taboi/excel/analogy_export_do', + method: 'POST', + responseType: 'arraybuffer', + data + }); +} + +//添加/取消关注 +export function focus_do(data) { + return request({ + headers: { + 'token': getTokenAndVerify().token, + 'verify': getTokenAndVerify().verify + }, + url: '/taboi/danger/focus_do', + method: 'POST', + contentType: "application/json", + data + }); +} + + diff --git a/src/api/sgyhpczl/hiddenDangerTroubleshootingList.js b/src/api/sgyhpczl/hiddenDangerTroubleshootingList.js new file mode 100644 index 0000000..96d3f96 --- /dev/null +++ b/src/api/sgyhpczl/hiddenDangerTroubleshootingList.js @@ -0,0 +1,37 @@ +import request from '@/utils/request'; +import {getTokenAndVerify} from "@/api/sgyhpczl/auth"; + +export function standard_template() { + return request({ + headers: { + 'token': getTokenAndVerify().token, + 'verify': getTokenAndVerify().verify + }, + url: '/taboi/download/standard_template', + method: 'get', + responseType: 'arraybuffer', + }); +} + +export function standard_import_do(data) { + return request({ + headers: { + 'token': getTokenAndVerify().token, + 'verify': getTokenAndVerify().verify + }, + url: '/taboi/excel/standard_import_do', + method: 'post', + data + }) +} + +export function stand_list(data) { + return request({ + headers: { + 'token': getTokenAndVerify().token, + 'verify': getTokenAndVerify().verify + }, + url: '/taboi/danger/stand_list?standardType=' + data, + method: 'GET', + }) +} diff --git a/src/api/sgyhpczl/safetyHazardAccount.js b/src/api/sgyhpczl/safetyHazardAccount.js index f73fcbc..253d442 100644 --- a/src/api/sgyhpczl/safetyHazardAccount.js +++ b/src/api/sgyhpczl/safetyHazardAccount.js @@ -47,14 +47,24 @@ if(data.form.ht_content!=null && data.form.ht_content!=''){ arr.push({field:"ht_content",value:data.form.ht_content,type:'TXT'}) } + + /*复查单位*/ + if(data.form.callback_branch!=null && data.form.callback_branch!=''){ + arr.push({field:"callback_branch",value:data.form.callback_branch,type:'TXT'}) + } /*班次*/ if(data.form.check_class!=null && data.form.check_class!=''){ arr.push({field:"check_class",value:data.form.check_class,type:'OPT'}) } + /*风险等级*/ + if(data.form.DTRisk_level!=null && data.form.DTRisk_level!=''){ + arr.push({field:"DTRisk_level",value:data.form.DTRisk_level,type:'OPT'}) + } /*是否关联*/ - if(data.form.DTRisk_bankId!=null && data.form.DTRisk_bankId!=''){ + if(data.form.DTRisk_bankId!=null){ arr.push({field:"DTRisk_bankId",value:data.form.DTRisk_bankId,type:'OPT'}) } + /*录入人*/ if(data.form.createBy!=null && data.form.createBy!=''){ arr.push({field:"Created_by",value:data.form.createBy,type:'OPT'}) diff --git a/src/api/sgyhpczl/summaryPotentialSafetyHzards.js b/src/api/sgyhpczl/summaryPotentialSafetyHzards.js new file mode 100644 index 0000000..accc5a3 --- /dev/null +++ b/src/api/sgyhpczl/summaryPotentialSafetyHzards.js @@ -0,0 +1,17 @@ + +import request from '@/utils/request'; +import {getTokenAndVerify} from "@/api/sgyhpczl/auth"; + +//汇总查询 +export function danger_summary(data) { + return request({ + headers:{ + 'token': getTokenAndVerify().token, + 'verify':getTokenAndVerify().verify + }, + url: "/taboi/danger/danger_summary", + contentType: "application/json", + method: 'POST', + data, + }); +} diff --git a/src/api/sgyhpczl/troubleshooting.js b/src/api/sgyhpczl/troubleshooting.js new file mode 100644 index 0000000..7d26f49 --- /dev/null +++ b/src/api/sgyhpczl/troubleshooting.js @@ -0,0 +1,63 @@ +import request from '@/utils/request'; +import {getTokenAndVerify} from "@/api/sgyhpczl/auth"; + + +export function getPageList(data) { + var arr=[] + /*地点*/ + if(data.form.ADDRESS!=null && data.form.ADDRESS!=''){ + arr.push({field:"ADDRESS",value:data.form.ADDRESS,type:'TXT'}) + } + /*主持人*/ + if(data.form.HOST!=null && data.form.HOST!=''){ + arr.push({field:"HOST",value:data.form.HOST,type:'TXT'}) + } + /*会议专业*/ + if(data.form.CONFERENCE_PROFESSIONAL!=null && data.form.CONFERENCE_PROFESSIONAL!='' && data.form.CONFERENCE_PROFESSIONAL!='0'){ + arr.push({field:"CONFERENCE_PROFESSIONAL",value:data.form.CONFERENCE_PROFESSIONAL,type:'OPT'}) + } + /*召开时间*/ + if(data.form.Conference_TimeStart!=null && data.form.Conference_TimeStart!='' && data.form.Conference_TimeEnd!=null && data.form.Conference_TimeEnd!=''){ + arr.push({field:"Conference_Time",value:data.form.Conference_TimeStart+"至"+data.form.Conference_TimeEnd,type:'DAT'}) + } + data.query_condition=arr + return request({ + headers:{ + 'token': getTokenAndVerify().token, + 'verify':getTokenAndVerify().verify + }, + url: "/taboi/conference/conference_list", + contentType: "application/json", + method: 'POST', + data + }); +} +//导出 +export function analogy_export_do(data) { + return request({ + headers: { + 'token': getTokenAndVerify().token, + 'verify': getTokenAndVerify().verify + }, + url: '/taboi/excel/analogy_export_do', + method: 'POST', + responseType: 'arraybuffer', + data + }); +} + +//添加/取消关注 +export function dowloand_do(params) { + return request({ + headers: { + 'token': getTokenAndVerify().token, + 'verify': getTokenAndVerify().verify + }, + url: '/taboi/file/dowloand_do', + method: 'GET', + contentType: "multipart/form-data", + params:params?params:{} + }); +} + + diff --git a/src/permission.js b/src/permission.js index 2fd8899..c46a1f0 100644 --- a/src/permission.js +++ b/src/permission.js @@ -16,7 +16,7 @@ if (!permissionRoles) return true return roles.some(role => permissionRoles.indexOf(role) >= 0) } -const whiteList = ['/login', '/auth-redirect','/agreement','/register','/productionEquipment','/instrumentData','/oneFromanother','/hiddenDangerTroubleshootingList','/preview','/inspectionNotExist','/send','/Issuedbysuperiors','/oneFromanotherN','/summaryPotentialSafetyHzards','/safetyHazardAccount','/superiorsSend','/accountSend','/existN','/exist','/hazardSource','/safetyedit','/Dualbase','/supervision','/inferOtherThings','/DualbaseLost','/summaryList','/summaryForm','/chartAnalysis','/careabout','/troubleshooting']// no redirect whitelist +const whiteList = ['/login', '/auth-redirect','/agreement','/register','/productionEquipment','/instrumentData','/oneFromanother','/hiddenDangerTroubleshootingList','/preview','/inspectionNotExist','/send','/Issuedbysuperiors','/oneFromanotherN','/summaryPotentialSafetyHzards','/safetyHazardAccount','/superiorsSend','/accountSend','/existN','/exist','/hazardSource','/safetyedit','/Dualbase','/supervision','/inferOtherThings','/DualbaseLost','/summaryList','/summaryForm','/chartAnalysis','/careabout','/troubleshooting','/managementConcerns']// no redirect whitelist router.beforeEach((to, from, next) => { NProgress.start() // start progress bar diff --git a/src/router/index.js b/src/router/index.js index eb457d4..1ea7f6d 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -54,7 +54,8 @@ { path: '/', component: Layout, - redirect: '/workPlan/workPlan/reserve', + redirect: "/accidentHidden", + // redirect: '/workPlan/workPlan/reserve', children: [ { path: 'dashboard', @@ -379,6 +380,13 @@ component: () => import('@/views/Issuedbysuperiors'), meta: { title: '上级下达隐患', icon: '' } }, + { + path: '/superiorsSend', + // name: '上级下达隐患-点击发送', + component: () => import('@/views/Issuedbysuperiors/superiorsSend'), + // meta: { title: '上级下达隐患-点击发送', icon: '' } + hidden: true + }, { id: 10, parentId: 0, @@ -494,6 +502,13 @@ component: () => import('@/views/careabout'), meta: { title: '您关注的隐患', icon: '' } }, + { + path: '/managementConcerns', + // name: '您关注的隐患-管理关注', + component: () => import('@/views/careabout/managementConcerns'), + // meta: { title: '您关注的隐患-管理关注', icon: '' } + hidden: true + }, { id: 14, parentId: 0, diff --git a/src/views/Issuedbysuperiors/index.vue b/src/views/Issuedbysuperiors/index.vue index 0622140..6b37333 100644 --- a/src/views/Issuedbysuperiors/index.vue +++ b/src/views/Issuedbysuperiors/index.vue @@ -5,7 +5,7 @@ <el-input v-model="listQuery.form.number" style="width:202px" placeholder="请输入内容"></el-input> </el-form-item> <el-form-item label="检查单位"> - <el-select v-model="listQuery.form.check_main_branch" placeholder="请选择" @change="changeJCDW"> + <el-select v-model="listQuery.form.check_main_branch" placeholder="请选择" @change="changeJCDW"> <el-option v-for="item in JCDWList" :key="item.value" @@ -117,39 +117,45 @@ </el-form-item> <el-form-item label="检查时间"> <el-col :span="11"> - <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.check_dateStart" style="width: 100%;" value-format="yyyy-MM-dd"></el-date-picker> + <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.check_dateStart" + style="width: 100%;" value-format="yyyy-MM-dd"></el-date-picker> </el-col> <el-col style="text-align:center" :span="2">-</el-col> <el-col :span="11"> - <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.check_dateEnd" style="width: 100%;" value-format="yyyy-MM-dd"></el-date-picker> + <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.check_dateEnd" + style="width: 100%;" value-format="yyyy-MM-dd"></el-date-picker> </el-col> </el-form-item> <el-form-item label="限改时间"> <el-col :span="11"> - <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.alter_timeStart" value-format="yyyy-MM-dd" style="width: 100%;"></el-date-picker> + <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.alter_timeStart" + value-format="yyyy-MM-dd" style="width: 100%;"></el-date-picker> </el-col> <el-col style="text-align:center" :span="2">-</el-col> <el-col :span="11"> - <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.alter_timeEnd" value-format="yyyy-MM-dd" style="width: 100%;"></el-date-picker> + <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.alter_timeEnd" + value-format="yyyy-MM-dd" style="width: 100%;"></el-date-picker> </el-col> </el-form-item> <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" 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" @click="exportData">导出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-row class="title-center"> <el-col :span="10"> - <el-radio-group v-model="YHType"> - <el-radio-button label="1">待发送</el-radio-button> - <el-radio-button label="2">整改中</el-radio-button> - <el-radio-button label="3">待复查</el-radio-button> - <el-radio-button label="end">整改完成</el-radio-button> - </el-radio-group> + <el-radio-group v-model="YHType"> + <el-radio-button label="1">待发送</el-radio-button> + <el-radio-button label="2">整改中</el-radio-button> + <el-radio-button label="3">待复查</el-radio-button> + <el-radio-button label="end">整改完成</el-radio-button> + </el-radio-group> </el-col> </el-row> - <el-table :data="tableData" style="width: 100%" @selection-change="changeBox"> + <el-table :data="tableData" style="width: 100%" @selection-change="changeBox"> <el-table-column type="selection" width="55" align="center"></el-table-column> <el-table-column prop="number" label="编号" align="center" width="120"></el-table-column> <el-table-column prop="check_branch" label="检查部门" align="center" width="120"></el-table-column> @@ -157,25 +163,25 @@ <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="address" label="地点" align="center"> </el-table-column> - <el-table-column prop="ht_content" label="内容" align="center"> </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 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_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="ht_branch" label="隐患部门" align="center"> </el-table-column> - <el-table-column prop="duty_officer" label="责任人" align="center"> </el-table-column> + <el-table-column prop="measure" label="整改措施" align="center"></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="ht_level" 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="ACCOMPLISHTIME" label="完成时间" width="110px" align="center"> </el-table-column> - <el-table-column prop="CALLBACKRESULT" label="复查结果" align="center"> </el-table-column> - <el-table-column prop="CALLBACKPERSON" label="复查人" align="center"> </el-table-column> - <el-table-column prop="CALLBACKTIME" label="复查时间" width="120" align="center"></el-table-column> + <el-table-column prop="ACCOMPLISHTIME" label="完成时间" width="110px" align="center"></el-table-column> + <el-table-column prop="CALLBACKRESULT" label="复查结果" align="center"></el-table-column> + <el-table-column prop="CALLBACKPERSON" label="复查人" align="center"></el-table-column> + <el-table-column prop="CALLBACKTIME" label="复查时间" width="120" align="center"></el-table-column> </el-table-column> - <el-table-column label="隐患处理状态" align="center"> + <el-table-column label="隐患处理状态" align="center"> <template slot-scope="scope"> <span v-if="scope.row.step =='1'">初始状态</span> <span v-if="scope.row.step =='2'">整改中</span> @@ -185,14 +191,15 @@ </el-table-column> <el-table-column prop="DTRisk_bankId" label="是否关联" align="center"> <template slot-scope="scope"> - <span v-if="scope.row.DTRisk_bankId==0 || scope.row.DTRisk_bankId=='' || scope.row.DTRisk_bankId==null">未关联</span> + <span + v-if="scope.row.DTRisk_bankId==0 || scope.row.DTRisk_bankId=='' || scope.row.DTRisk_bankId==null">未关联</span> <span v-else>已关联</span> </template> </el-table-column> - <el-table-column prop="DTRisk_level" label="风险等级" align="center"> </el-table-column> - <el-table-column prop="warningLevel" label="初始警情" align="center"> </el-table-column> - <el-table-column prop="curWarningLevel" label="当前警情" align="center"> </el-table-column> - <el-table-column prop="date" label="流程操作" v-if="YHType=='1'" align="center" fixed="right"> + <el-table-column prop="DTRisk_level" label="风险等级" align="center"></el-table-column> + <el-table-column prop="warningLevel" label="初始警情" align="center"></el-table-column> + <el-table-column prop="curWarningLevel" label="当前警情" align="center"></el-table-column> + <el-table-column prop="date" label="流程操作" v-if="YHType==1" align="center" fixed="right"> <template slot-scope="scope"> <el-button @click="handleClick(scope.row)" type="text" size="small">点击发送</el-button> </template> @@ -222,31 +229,40 @@ <script> import {getPageList} from "@/api/sgyhpczl/Issuedbysuperiors"; import {danger_export_do} from "@/api/sgyhpczl/hiddenDangerRectification"; -import {initJCBM ,initYHLX, initBC ,initJCLB ,initYHBM ,initYHJB,initLlr,initReformStatus} from "@/api/sgyhpczl/initSelect"; +import { + initJCBM, + initYHLX, + initBC, + initJCLB, + initYHBM, + initYHJB, + initLlr, + initReformStatus +} from "@/api/sgyhpczl/initSelect"; + export default { data() { return { - YHType:'1', - selectedList:[], - reList:[{label:"未关联",value:0}], - llrList:[], + YHType: '1', + selectedList: [], + reList: [{label: "未关联", value: 0}], + llrList: [], options: [], - form:{}, - - JCDWList:[{label:"众泰煤焦化",value:0},{label:"上级单位",value:1}], - JCBMList:[], - YHLXList:[], - BCList:[], - JCLBList:[], - YHBMList:[], - YHJBList:[], - YHZTList:[], + form: {}, + JCDWList: [{label: "众泰煤焦化", value: 0}, {label: "上级单位", value: 1}], + JCBMList: [], + YHLXList: [], + BCList: [], + JCLBList: [], + YHBMList: [], + YHJBList: [], + YHZTList: [], tableData: [], - listQuery:{ - page:1, - limit:10, - form:{ - ht_community:"众泰煤焦化" + listQuery: { + page: 1, + limit: 10, + form: { + ht_community: "众泰煤焦化" }, }, currentPage: 1, @@ -254,7 +270,7 @@ recordTotal: 0, }; }, - mounted(){ + mounted() { this.getPageList() this.initYHLX() this.initYHJB() @@ -264,26 +280,26 @@ this.initYHBM() this.initYHZT() }, - watch:{ - "YHType":function (newVal,oldVal){ + watch: { + "YHType": function (newVal, oldVal) { this.getPageList() } }, - methods:{ - deleteBatch(){ - if(this.selectedList==null ||this.selectedList.length==0 ){ - this.$message({type:'warning', message:'至少选中一条数据', duration:3000}) + methods: { + deleteBatch() { + if (this.selectedList == null || this.selectedList.length == 0) { + this.$message({type: 'warning', message: '至少选中一条数据', duration: 3000}) return } - var ids=this.selectedList.map((obj) => { + var ids = this.selectedList.map((obj) => { return obj.id }).join(",") - this.$confirm('确认删除吗','提示', { + this.$confirm('确认删除吗', '提示', { confirmButtonText: '确认', cancelButtonText: '取消', type: 'warning' }) - .then(()=>{ + .then(() => { delDanger(ids).then(() => { this.getPageList() this.$notify({ @@ -294,179 +310,179 @@ }); }); }) - .catch(error =>{ + .catch(error => { }); }, - changeBox(val){ + changeBox(val) { this.selectedList = [] val.forEach((item) => { this.selectedList.push(item) }) }, - initLlr(){ - initLlr().then(res=>{ - if (res.data.ok==1){ - this.llrList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + initLlr() { + initLlr().then(res => { + if (res.data.ok == 1) { + this.llrList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - initYHBM(){ - initYHBM().then(res=>{ - if (res.data.ok==1){ - this.YHBMList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + initYHBM() { + initYHBM().then(res => { + if (res.data.ok == 1) { + this.YHBMList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - changeJCDW(val){ - initJCBM(val).then(res=>{ - if (res.data.ok==1){ - this.JCBMList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + changeJCDW(val) { + initJCBM(val).then(res => { + if (res.data.ok == 1) { + this.JCBMList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - checkTime(){ - if(this.listQuery.form.check_dateStart!=null && this.listQuery.form.check_dateStart!=''){ - if(this.listQuery.form.check_dateEnd!=null && this.listQuery.form.check_dateEnd!=''){ - }else { - this.$message({type:'error', message:"请选择检查结束时间", duration:3000}) + checkTime() { + if (this.listQuery.form.check_dateStart != null && this.listQuery.form.check_dateStart != '') { + if (this.listQuery.form.check_dateEnd != null && this.listQuery.form.check_dateEnd != '') { + } else { + this.$message({type: 'error', message: "请选择检查结束时间", duration: 3000}) return } } - if(this.listQuery.form.check_dateEnd!=null && this.listQuery.form.check_dateEnd!=''){ - if(this.listQuery.form.check_dateStart!=null && this.listQuery.form.check_dateStart!=''){ - }else { - this.$message({type:'error', message:"请选择检查开始时间", duration:3000}) + if (this.listQuery.form.check_dateEnd != null && this.listQuery.form.check_dateEnd != '') { + if (this.listQuery.form.check_dateStart != null && this.listQuery.form.check_dateStart != '') { + } else { + this.$message({type: 'error', message: "请选择检查开始时间", duration: 3000}) return } } - if(this.listQuery.form.alter_timeStart!=null && this.listQuery.form.alter_timeStart!=''){ - if(this.listQuery.form.alter_timeEnd!=null && this.listQuery.form.alter_timeEnd!=''){ - }else { - this.$message({type:'error', message:"请选择限改结束时间", duration:3000}) + if (this.listQuery.form.alter_timeStart != null && this.listQuery.form.alter_timeStart != '') { + if (this.listQuery.form.alter_timeEnd != null && this.listQuery.form.alter_timeEnd != '') { + } else { + this.$message({type: 'error', message: "请选择限改结束时间", duration: 3000}) return } } - if(this.listQuery.form.alter_timeEnd!=null && this.listQuery.form.alter_timeEnd!=''){ - if(this.listQuery.form.alter_timeStart!=null && this.listQuery.form.alter_timeStart!=''){ - }else { - this.$message({type:'error', message:"请选择改开始时间", duration:3000}) + if (this.listQuery.form.alter_timeEnd != null && this.listQuery.form.alter_timeEnd != '') { + if (this.listQuery.form.alter_timeStart != null && this.listQuery.form.alter_timeStart != '') { + } else { + this.$message({type: 'error', message: "请选择改开始时间", duration: 3000}) return } } }, - getPageList(){ - this.listQuery.page=1 + getPageList() { + this.listQuery.page = 1 this.listQuery.form.step = this.YHType; this.checkTime() - getPageList(this.listQuery).then(res=>{ - if (res.data.ok==1) { + getPageList(this.listQuery).then(res => { + if (res.data.ok == 1) { this.tableData = res.data.data.items - this.recordTotal=res.data.data.total - }else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + this.recordTotal = res.data.data.total + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - reset(){ - this.listQuery.form={ht_community:"众泰煤焦化"} + reset() { + this.listQuery.form = {ht_community: "众泰煤焦化"} this.getPageList() }, - handleSizeChange(val){ + handleSizeChange(val) { this.listQuery.limit = val this.getPageListForPagination(); }, - handleCurrentChange(val){ + handleCurrentChange(val) { this.listQuery.page = val this.getPageListForPagination(); }, - getPageListForPagination(){ + getPageListForPagination() { this.checkTime() - getPageList(this.listQuery).then(res=>{ - if (res.data.ok==1) { + getPageList(this.listQuery).then(res => { + if (res.data.ok == 1) { this.tableData = res.data.data.items - this.recordTotal=res.data.data.total - }else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + this.recordTotal = res.data.data.total + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - initYHLX(){ - initYHLX().then(res=>{ - if (res.data.ok==1){ - this.YHLXList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + initYHLX() { + initYHLX().then(res => { + if (res.data.ok == 1) { + this.YHLXList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - initYHJB(){ - initYHJB().then(res=>{ - if (res.data.ok==1){ - this.YHJBList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + initYHJB() { + initYHJB().then(res => { + if (res.data.ok == 1) { + this.YHJBList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - initYHZT(){ - initReformStatus().then(res=>{ - if (res.data.ok==1){ - this.YHZTList=res.data.data + initYHZT() { + initReformStatus().then(res => { + if (res.data.ok == 1) { + this.YHZTList = res.data.data console.log(this.YHZTList) - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - initBC(){ - initBC().then(res=>{ - if (res.data.ok==1){ - this.BCList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + initBC() { + initBC().then(res => { + if (res.data.ok == 1) { + this.BCList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - initJCLB(){ - initJCLB().then(res=>{ - if (res.data.ok==1){ - this.JCLBList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + initJCLB() { + initJCLB().then(res => { + if (res.data.ok == 1) { + this.JCLBList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - updateClick(row){ + updateClick(row) { this.$router.push({ - path:"/hiddenDangerAdd?id="+row.id + path: "/hiddenDangerAdd?id=" + row.id }) }, - jump(){ + jump() { this.$router.push({ - path:"/hiddenDangerAdd" + path: "/hiddenDangerAdd" }) }, // 发送隐患单跳转 - handleClick(row){ + handleClick(row) { this.$router.push({ - path:"/hiddenDangerList?id="+row.id, + path: "/superiorsSend?id=" + row.id, }) }, - deleteClick(row){ - this.$confirm('确认删除吗','提示', { + deleteClick(row) { + this.$confirm('确认删除吗', '提示', { confirmButtonText: '确认', cancelButtonText: '取消', type: 'warning' }) - .then(()=>{ + .then(() => { delDanger(row.id).then(() => { this.getPageList() this.$notify({ @@ -477,7 +493,7 @@ }); }); }) - .catch(error =>{ + .catch(error => { }); }, exportData() { @@ -504,22 +520,26 @@ }; </script> <style scoped> - .inquire { - display: flex; - justify-content: left; - flex-wrap: wrap; - } - .inquire .el-form-item { - padding: 0 46px; - } - .title-center { - padding: 20px 0; - } - .btns { - background-color: #034ea2; - border: 1px solid #034ea2; - } - .title-center /deep/ .el-radio-button:first-child .el-radio-button__inner { +.inquire { + display: flex; + justify-content: left; + flex-wrap: wrap; +} + +.inquire .el-form-item { + padding: 0 46px; +} + +.title-center { + padding: 20px 0; +} + +.btns { + background-color: #034ea2; + border: 1px solid #034ea2; +} + +.title-center /deep/ .el-radio-button:first-child .el-radio-button__inner { border: none; } diff --git a/src/views/Issuedbysuperiors/superiorsSend.vue b/src/views/Issuedbysuperiors/superiorsSend.vue index 3da5aed..964cfc5 100644 --- a/src/views/Issuedbysuperiors/superiorsSend.vue +++ b/src/views/Issuedbysuperiors/superiorsSend.vue @@ -1,13 +1,542 @@ <template> + <div class="app-container"> + <div style=""> + <Titlename title="发送隐患单"></Titlename> + <div class="whole-form"> + <el-form :model="ruleForm" ref="ruleForm" label-width="150px" class="demo-ruleForm" + style="margin: 0 14% 0 16%;"> + <el-row> + <el-col :span="9"> + <el-form-item label="隐患编号" prop="name"> + <el-input v-model="ruleForm.number" :disabled="true"></el-input> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="检查单位" prop="elementAName"> + <el-select + v-model="ruleForm.check_main_branch" + :disabled="true" + style="width: 100%" + > + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="检查人" prop="region"> + <el-input v-model="ruleForm.check_man" :disabled="true"></el-input> + <!-- <el-select--> + <!-- v-model="ruleForm.elementAName"--> + <!-- :disabled="true"--> + <!-- style="width: 100%"--> + <!-- >--> + <!-- </el-select>--> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="陪检人员" prop="name"> + <el-input v-model="ruleForm.acc_man" :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="检查时间" prop="name"> + <el-date-picker + v-model="ruleForm.check_date" + type="date" + :disabled="true" + placeholder="选择日期" + style="width: 100%"> + </el-date-picker> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <!-- <el-form-item label="班次" prop="name">--> + <!-- <el-input v-model="ruleForm.name"></el-input>--> + <!-- </el-form-item>--> + <el-form-item label="班次" prop="elementAName"> + <el-select + v-model="ruleForm.check_class" + :disabled="true" + style="width: 100%" + > + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="跟班、带班情况" prop="name"> + <el-input v-model="ruleForm.class_situation" :disabled="true"></el-input> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="跟班、带班人员" prop="name"> + <el-input v-model="ruleForm.class_man" :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="22"> + <el-form-item label="行走路线" prop="name"> + <el-input type="textarea" v-model="ruleForm.route" class="multiline" + :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="隐患单位" prop="name"> + <!--<el-input v-model="ruleForm.name"></el-input>--> + <el-select + v-model="ruleForm.ht_community" + :disabled="true" + style="width: 100%" + > + </el-select> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="隐患部门" prop="name"> + <!-- <el-input v-model="ruleForm.name"></el-input>--> + <el-select + v-model="ruleForm.ht_branch" + :disabled="true" + style="width: 100%" + > + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="22"> + <el-form-item label="隐患地点" prop="name"> + <el-input type="textarea" v-model="ruleForm.address" class="multiline" + :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="22"> + <el-form-item label="隐患内容" prop="name"> + <el-input type="textarea" v-model="ruleForm.ht_content" class="multiline" + :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="隐患类别" prop="name"> + <!--<el-input v-model="ruleForm.name"></el-input>--> + <el-select + v-model="ruleForm.ht_typesub" + :disabled="true" + style="width: 100%" + > + </el-select> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="隐患级别" prop="name"> + <!--<el-input v-model="ruleForm.name"></el-input>--> + <el-select + v-model="ruleForm.ht_level" + :disabled="true" + style="width: 100%" + > + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="整改措施" prop="name"> + <el-input v-model="ruleForm.measure" :disabled="true"></el-input> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="所需资金" prop="name"> + <el-input v-model="ruleForm.name" :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="限改时间" prop="name"> + <!--<el-input v-model="ruleForm.name"></el-input>--> + <el-date-picker + v-model="ruleForm.alter_time" + type="date" + :disabled="true" + placeholder="选择日期" + style="width: 100%"> + </el-date-picker> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="责任人" prop="name"> + <el-input v-model="ruleForm.duty_officer" :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="完成时间" prop="name"> + <!--<el-input v-model="ruleForm.name"></el-input>--> + <el-date-picker + v-model="ruleForm.ACCOMPLISHTIME" + type="date" + :disabled="true" + placeholder="选择日期" + style="width: 100%"> + </el-date-picker> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="整改完成情况" prop="name"> + <el-input v-model="ruleForm.name" :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="复查时间" prop="name"> + <!--<el-input v-model="ruleForm.name"></el-input>--> + <el-date-picker + v-model="ruleForm.CALLBACKTIME" + type="date" + :disabled="true" + placeholder="选择日期" + style="width: 100%"> + </el-date-picker> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="复查人" prop="name"> + <el-input v-model="ruleForm.CALLBACKPERSON" :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="复查结果" prop="name"> + <el-input v-model="ruleForm.CALLBACKRESULT" :disabled="true"></el-input> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="整改次数" prop="name"> + <el-input v-model="ruleForm.amendnum" :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="22"> + <el-form-item label="危险源" prop="name"> + <el-input type="textarea" v-model="ruleForm.dangerousSource" class="multiline" + :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="风险等级" prop="name"> + <!-- <el-input v-model="ruleForm.name" :disabled="true"></el-input>--> + <el-select + v-model="ruleForm.DTRisk_level" + :disabled="true" + style="width: 100%" + > + </el-select> + </el-form-item> + </el-col> + <el-col :span="9" :offset="4"> + <el-form-item label="业务科室" prop="name"> + <!-- <el-input v-model="ruleForm.name" :disabled="true"></el-input>--> + <el-select + v-model="ruleForm.Review" + :disabled="true" + style="width: 100%" + > + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="22"> + <el-form-item label="流程信息" prop="name"> + <!-- <el-input v-model="ruleForm.name" class="multiline" :disabled="true"></el-input>--> + <el-table + :data="tableData" + border + style="width: 100%"> + <el-table-column + type="index" + label="步骤" + align="center" + width="60"> + </el-table-column> + <el-table-column + prop="realname" + label="操作人" + align="center" + width="138"> + </el-table-column> + <el-table-column + prop="create_time" + label="处理时间" + align="center" + width="200"> + </el-table-column> + <el-table-column + prop="content" + label="审批意见" + align="center" + width="260"> + <template slot-scope="scope"> + <span size="medium">{{ scope.row.content }}</span> + <a v-for="item in scope.row.realFileName" + :href="scope.row.url+'/'+item"> + {{ item.split("fileName=")[1] }} + </a> + </template> + </el-table-column> + <el-table-column + prop="ispass" + label="流程信息" + align="center" + width="170"> + </el-table-column> + </el-table> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="22"> + <el-form-item label="发送流程:" prop="name"> + <!-- <el-input type="textarea" v-model="ruleForm.name" class="multiline"--> + <!-- :disabled="true"></el-input>--> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="22"> + <el-form-item label="下一步:" prop="name"> + <span>隐患下达责任部门</span> + <!-- <el-input type="textarea" v-model="ruleForm.name" class="multiline"--> + <!-- :disabled="true"></el-input>--> + </el-form-item> + </el-col> + </el-row> + </el-form> + <el-form :model="sendDataForm" :rules="rules" ref="sendDataForm" label-width="150px" + class="demo-ruleForm" + style="margin: 0 14% 0 16%;"> + <div> + <el-row> + <el-col :span="9"> + <el-form-item label="隐患部门" prop="ht_branch"> + <el-input v-model="sendDataForm.ht_branch" clearable></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="责任人" prop="duty_officer"> + <el-input v-model="sendDataForm.duty_officer" clearable></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="9"> + <el-form-item label="业务科室" prop="Review"> + <el-input v-model="sendDataForm.Review" clearable></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="22"> + <el-form-item label="备注" prop="dealContent"> + <el-input class="textarea" type="textarea" + v-model="sendDataForm.dealContent"></el-input> + </el-form-item> + </el-col> + </el-row> + </div> + <el-row> + <el-col :span="22"> + <el-form-item style="text-align: center;"> + <el-button class="btn" size="small" type="primary" @click="submitForm('sendDataForm')"> + 保存 + </el-button> + <el-button size="small" @click="close()">关闭</el-button> + </el-form-item> + </el-col> + </el-row> + </el-form> + </div> + </div> + + </div> </template> <script> +import Titlename from "../../components/Titlename/index.vue"; +import {getDangerDetails, getWfRecordList} from "@/api/sgyhpczl/recheckCancellationNumber"; +import {company_next_step_do} from "@/api/sgyhpczl/Issuedbysuperiors"; +import {getUserInfo} from "@/api/sgyhpczl/hiddenDangerManagement"; + + export default { - name: "superiorsSend" + components: {Titlename}, + name: "recheckHiddenDangerList", + data() { + return { + ruleForm: { + id: "", + step: "3", + ispass: "", + CALLBACKTIME: "", + CALLBACKPERSON: "", + CALLBACKRESULT: "", + dealContent: "", + }, + sendDataForm: { + id: "", + duty_officer: "", + ht_branch: "", + Review: "", + dealContent: "", + }, + rules: { + // duty_officer: {required: true, message: '请填写复查时间', trigger: 'blur'}, + ht_branch: {required: true, message: '隐患部门不能为空', trigger: 'blur'}, + Review: {required: true, message: '业务科室不能为空', trigger: 'blur'}, + }, + tableData: [], + fileList: [], + // safetyInspectionItemResult:'0', + }; + }, + mounted() { + this.getDangerDetails(); + this.getWfRecordList(); + }, + methods: { + getUserInfo() { + getUserInfo().then(res => { + if (res.data.code == 200) { + this.sendDataForm.Review = res.data.result.department; + } else { + this.$message({type: 'error', message: "用户信息获取失败!请重试", duration: 3000}) + } + }) + }, + getDangerDetails() { + getDangerDetails(this.$route.query.id).then(res => { + var data = res.data; + if (data.ok) { + this.ruleForm = data.data; + this.ruleForm.url = process.env.BASE_API; + this.sendDataForm.id = this.ruleForm.id + } else { + this.$message({type: 'error', message: "数据查询失败,请重试!", duration: 3000}) + } + }) + }, + getWfRecordList() { + getWfRecordList(this.$route.query.id).then(res => { + var data = res.data; + if (data.ok) { + this.tableData = data.data; + } else { + this.$message({type: 'error', message: "数据查询失败,请重试!", duration: 3000}) + } + }) + }, + submitForm(formName) { + this.$refs[formName].validate((valid) => { + if (valid) { + company_next_step_do(this.sendDataForm).then(res => { + var msg = res.data.msg; + if (res.data.ok) { + this.$router.push({ + path: "/recheckCancellationNumber", + }) + this.$message({type: 'success', message: msg, duration: 3000}) + } else { + this.$message({type: 'error', message: msg, duration: 3000}) + } + }) + // alert('submit!'); + } else { + console.log('error submit!!'); + return false; + } + }); + }, + handleRemove(file, fileList) { + console.log(file, fileList); + }, + handlePreview(file) { + console.log(file); + }, + beforeUpload(file) { + var FileExt = file.name.replace(/.+\./, ""); + if (['jpg', 'png', 'bmp', 'gif', 'jpeg'].indexOf(FileExt.toLowerCase()) === -1) { + this.$message({ + type: 'warning', + message: '请上传后缀名为jpg、png、bmp、gif、jpeg的图片!' + }); + return false; + } + }, + close() { + this.$router.push({ + path: "/recheckCancellationNumber" + }) + } + } } </script> <style scoped> +.app-container { + padding: 20px; + height: 850px; + overflow-y: auto; +} +/deep/ .box { + padding-top: 0; +} + +/deep/ .multiline .el-input__inner { + height: 62px; +} + +/deep/ .textarea .el-textarea__inner { + height: 80px; + max-height: 80px; + overflow-y: auto +} + +/deep/ .textarea2 .el-textarea__inner { + height: 100px; + max-height: 100px; + overflow-y: auto +} + +.btn { + background-color: #034ea2; + border: 1px solid #034ea2; +} + +/*.el-button:hover {*/ +/* background: #66b1ff;*/ +/* border-color: #66b1ff;*/ +/* color: #FFF;*/ +/*}*/ </style> diff --git a/src/views/careabout/index.vue b/src/views/careabout/index.vue index 2cdb1e8..36f9185 100644 --- a/src/views/careabout/index.vue +++ b/src/views/careabout/index.vue @@ -1,6 +1,6 @@ <template> <div class="app-container"> - <el-form ref="form" :inline="true" class="inquire" :model="form" label-width="100px"> + <el-form ref="form" :inline="true" class="inquire" :model="listQuery.form" label-width="100px"> <el-form-item label="编号"> <el-input v-model="listQuery.form.number" style="width:202px" placeholder="请输入内容"></el-input> </el-form-item> @@ -96,7 +96,7 @@ </el-select> </el-form-item> <el-form-item label="深入现场情况"> - <el-select v-model="listQuery.form.DTRisk_bankId" placeholder="请选择"> + <el-select v-model="listQuery.form.class_situation" placeholder="请选择"> <el-option v-for="item in reList" :key="item.value" @@ -135,9 +135,8 @@ </el-form-item> <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" icon=" -el-icon-refresh-right" @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-refresh-right" @click="reset()">重置</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"> @@ -150,19 +149,19 @@ </el-col> <div v-if="table1"> <el-col :span="14" style="text-align:right;"> - <el-button class="btns" type="primary" size="small" >特别关注</el-button> + <el-button class="btns" type="primary" size="small" @click="specialFocus()">{{focusDesc}}</el-button> <el-button class="btns" type="primary" size="small" @click="sendBath()">管理关注</el-button> </el-col> </div> </el-row> - <el-table :data="tableData" style="width: 100%" @selection-change="changeBox"> + <el-table :data="tableData" style="width: 100%" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="55" align="center"></el-table-column> <el-table-column prop="number" label="编号" align="center" width="120"></el-table-column> <el-table-column prop="check_branch" label="检查部门" align="center" width="120"></el-table-column> <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="检查时间" :formatter="formatColumnDate" width="120" align="center"></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_typesub" label="类别" align="center"> </el-table-column> @@ -172,21 +171,21 @@ <el-table-column prop="measure" label="整改措施" align="center"> </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="限改时间" :formatter="formatColumnDate" width="120" 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="ACCOMPLISHTIME" label="完成时间" width="110px" align="center"> </el-table-column> + <el-table-column prop="ACCOMPLISHTIME" label="完成时间" :formatter="formatColumnDate" width="110px" align="center"> </el-table-column> <el-table-column prop="CALLBACKRESULT" label="复查结果" align="center"> </el-table-column> <el-table-column prop="CALLBACKPERSON" label="复查人" align="center"> </el-table-column> - <el-table-column prop="CALLBACKTIME" label="复查时间" width="120" align="center"></el-table-column> + <el-table-column prop="CALLBACKTIME" label="复查时间" :formatter="formatColumnDate" width="120" align="center"></el-table-column> </el-table-column> <el-table-column label="隐患处理状态" align="center"> <template slot-scope="scope"> <span v-if="scope.row.step =='1'">初始状态</span> <span v-if="scope.row.step =='2'">整改中</span> <span v-if="scope.row.step =='3'">复查中</span> - <span v-if="scope.row.step =='end'">处理结束</span> + <span v-if="scope.row.step =='END'">处理结束</span> </template> </el-table-column> <el-table-column prop="DTRisk_bankId" label="是否关联" align="center"> @@ -227,8 +226,8 @@ </div> </template> <script> - import { getPageList, analogy_export_do} from "@/api/sgyhpczl/oneFromanotherN" - import {initJCBM, initYHLX, initJCLB, initYHJB} from "@/api/sgyhpczl/initSelect"; +import { getPageList, analogy_export_do, focus_do} from "@/api/sgyhpczl/careabout" +import {initJCBM ,initYHLX, initBC ,initJCLB ,initYHBM ,initYHJB,initLlr} from "@/api/sgyhpczl/initSelect"; export default{ data(){ @@ -237,21 +236,26 @@ page:1, limit:10, type: 0, - form:{}, + form:{ + ht_community:'众泰煤焦化' + }, }, radio1:'待发送', table1:true, table2:false, - - + focusDesc: '特别关注', currentPage: 1, pageSize: 10, recordTotal: 0, - XFDWList:[], - YHLBList:[], - YHJBList:[], + JCDWList:[{label:"众泰煤焦化",value:0},{label:"上级单位",value:1}], + JCBMList:[], + YHLXList:[], + BCList:[], + reList:[{label:"值班",value:"值班"},{label:"带班",value:"带班"}], JCLBList:[], + YHBMList:[], + YHJBList:[], tableData:[], selectedList:[], listLoading: false, @@ -271,15 +275,17 @@ }, mounted() { this.getPageList(); - this.initJCLB(); - this.initXFDW(); + this.initYHLX(); this.initYHJB(); - this.initYHLB(); + this.initBC(); + this.initJCLB(); + this.initLlr(); + this.initYHBM(); }, methods:{ sendBath(){ this.$router.push({ - path:'/existN' + path:'/managementConcerns' }) }, handleClick(data,val){ @@ -301,19 +307,10 @@ this.table2=false } }, - initXFDW(){ - initJCBM(1).then(res=>{ - if (res.data.ok==1){ - this.XFDWList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) - } - }) - }, - initYHLB(){ + initYHLX(){ initYHLX().then(res=>{ if (res.data.ok==1){ - this.YHLBList=res.data.data + this.YHLXList=res.data.data } else{ this.$message({type:'error', message:res.data.msg, duration:3000}) } @@ -328,10 +325,46 @@ } }) }, + initBC(){ + initBC().then(res=>{ + if (res.data.ok==1){ + this.BCList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, initJCLB(){ initJCLB().then(res=>{ if (res.data.ok==1){ this.JCLBList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + initYHBM(){ + initYHBM().then(res=>{ + if (res.data.ok==1){ + this.YHBMList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + initLlr(){ + initLlr().then(res=>{ + if (res.data.ok==1){ + this.llrList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + changeJCDW(val){ + initJCBM(val).then(res=>{ + if (res.data.ok==1){ + this.JCBMList=res.data.data } else{ this.$message({type:'error', message:res.data.msg, duration:3000}) } @@ -369,7 +402,7 @@ }, //重置 reset(){ - this.listQuery.form={}; + this.listQuery.form = {ht_community: "众泰煤焦化"} this.getPageList() }, handleSizeChange(val){ @@ -393,6 +426,11 @@ }, typeChange(val){ this.listQuery.type = val; + if (val == 1){ + this.focusDesc = '取消关注' + }else { + this.focusDesc = '特别关注' + } this.getPageList() }, handleSelectionChange(val){ @@ -411,7 +449,7 @@ var downloadElement = document.createElement('a') var href = window.URL.createObjectURL(blob) //创建下载的链接 downloadElement.href = href - downloadElement.download = '内部举一反三.xlsx' //下载后文件名 + downloadElement.download = '关注的隐患.xlsx' //下载后文件名 document.body.appendChild(downloadElement) downloadElement.click() //点击下载 document.body.removeChild(downloadElement) //下载完成移除元素 @@ -420,6 +458,30 @@ console.log(err) }) }, + //特别关注/取消关注 + specialFocus(){ + if (this.selectedList == null || this.selectedList.length == 0) { + this.$message({type: 'warning', message: '至少选中一条数据', duration: 3000}) + return + } + var ids = this.selectedList.map((obj) => { + return obj.id + }).join(",") + var type = this.listQuery.type == '1' ? 'del' : 'add' + let data = { + type: type, + ids: ids, + } + focus_do(data).then(() => { + this.getPageList() + this.$notify({ + title: "成功", + message: "操作成功", + type: "success", + duration: 2000, + }); + }); + }, //日期格式转换 formatColumnDate(row, column) { // 获取单元格数据 diff --git a/src/views/careabout/managementConcerns.vue b/src/views/careabout/managementConcerns.vue new file mode 100644 index 0000000..98c14f3 --- /dev/null +++ b/src/views/careabout/managementConcerns.vue @@ -0,0 +1,240 @@ +<template> + <div class="app-container"> + <div> + <Titlename title="设置页面"></Titlename> + <div class="whole-form"> + <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="80px" class="demo-ruleForm" + style="margin: 0 5% 0 5%;"> + <el-row> + <el-col :span="6"> + <el-form-item label="名称" prop="number"> + <el-input v-model="ruleForm.number" :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-checkbox-group v-model="checkList"> + <el-checkbox label="复选框 A"> + <el-form-item label="检查时间" prop="check_man"> + <el-radio-group v-model="ruleForm.radio"> + <el-radio :label="1">一个月</el-radio> + <el-radio :label="2">两个月</el-radio> + <el-radio :label="3">三个月</el-radio> + </el-radio-group> + </el-form-item> + </el-checkbox> + <el-checkbox> + <el-form-item class="select" label="检查单位" prop="acc_man"> + <el-select v-model="ruleForm.region" placeholder="请选择"> + <el-option label="众泰煤焦化" value="shanghai"></el-option> + <el-option label="上级单位" value="beijing"></el-option> + </el-select> + <el-select v-model="ruleForm.region" placeholder="请选择"> + <el-option label="安全环保部" value="shanghai"></el-option> + <el-option label="机电部" value="beijing"></el-option> + </el-select> + </el-form-item> + </el-checkbox> + <el-checkbox> + <el-form-item label="检查人" prop="number"> + <el-input v-model="ruleForm.number" :disabled="true"></el-input> + </el-form-item> + </el-checkbox> + <el-checkbox> + <el-form-item label="隐患类别" prop="acc_man"> + <el-select v-model="ruleForm.region" placeholder="请选择"> + <el-option label="生产" value="shanghai"></el-option> + <el-option label="设备" value="beijing"></el-option> + <el-option label="电气" value="shanghai"></el-option> + <el-option label="仪表" value="beijing"></el-option> + <el-option label="安全管理" value="shanghai"></el-option> + <el-option label="其他" value="beijing"></el-option> + </el-select> + </el-form-item> + </el-checkbox> + <el-checkbox label="复选框 A"> + <el-form-item label="隐患级别" prop="acc_man"> + <el-select v-model="ruleForm.region" placeholder="请选择"> + <el-option label="一般隐患D" value="shanghai"></el-option> + <el-option label="一般隐患C" value="beijing"></el-option> + <el-option label="重大隐患B" value="shanghai"></el-option> + <el-option label="重大隐患A" value="beijing"></el-option> + </el-select> + </el-form-item> + </el-checkbox> + <el-checkbox> + <el-form-item class="select" label="检查类别" prop="acc_man"> + <el-select v-model="ruleForm.region" placeholder="请选择"> + <el-option label="众泰煤焦化" value="shanghai"></el-option> + <el-option label="上级单位" value="beijing"></el-option> + </el-select> + </el-form-item> + </el-checkbox> + <el-checkbox label="重复隐患" class="checkbox"> + </el-checkbox> + </el-checkbox-group> + <el-checkbox-group v-model="checkList1"> + <el-checkbox> + <el-form-item label="限改时间" prop="check_man"> + <el-radio-group v-model="ruleForm.radio"> + <el-radio :label="4">即将到期</el-radio> + <el-radio :label="5">到期未整改</el-radio> + <el-radio :label="6">超期整改</el-radio> + </el-radio-group> + </el-form-item> + </el-checkbox> + </el-checkbox-group> + <el-row> + <el-col :span="22"> + <el-form-item label="备注" prop="address"> + <el-input type="textarea" v-model="ruleForm.address" class="multiline" :disabled="true"></el-input> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="22"> + <el-form-item style="text-align: center;"> + <el-button class="btn" size="small" type="primary" @click="close()" + >保存</el-button> + <el-button class="btn" size="small" type="primary" @click="close()" + >关闭</el-button> + </el-form-item> + </el-col> + </el-row> + </el-form> + </div> + </div> + + </div> +</template> + +<script> +import Titlename from "../../components/Titlename/index.vue"; +import {getDangerInfo,next_step_do} from '@/api/sgyhpczl/hiddenDangerRegistration' +import {deepClone} from '@/utils' + +export default { + name: "managementConcerns", + components: {Titlename}, + data() { + return { + id:'', + ruleForm: { + radio:3 + }, + rules: { + reviewTime: { required: true, message: '请填写复查时间', trigger: 'blur' }, + rechecker: { required: true, message: '请填写复查人', trigger: 'blur' }, + reviewResults: { required: true, message: '请填写复查结果', trigger: 'blur' }, + desc1: { required: true, message: '复查不通过时请在备注说明原因!', trigger: 'blur' }, + }, + fileList: [], + checkList: [], + checkList1:[] + }; + }, + mounted(){ + this.id = this.$route.query.id; + if( this.id!=null && this.id!=''){ + this.initInfo(); + } + }, + methods: { + async initInfo(){ + var res=await getDangerInfo(this.id) + if (res.data.ok==1){ + this.ruleForm=res.data.data + this.ruleForm.next='发送到'+res.data.data.ht_community+res.data.data.ht_branch + + } + }, + handleRemove(file, fileList) { + console.log(file, fileList); + }, + handlePreview(file) { + console.log(file); + }, + beforeUpload(file) { + var FileExt = file.name.replace(/.+\./, ""); + if (['jpg','png','bmp','gif','jpeg'].indexOf(FileExt.toLowerCase()) === -1){ + this.$message({ + type: 'warning', + message: '请上传后缀名为jpg、png、bmp、gif、jpeg的图片!' + }); + return false; + } + }, + close(){ + this.$router.push({ + path:"/hiddenDangerRegistration" + }) + } + } +} +</script> + +<style scoped> +.app-container { + padding: 20px; + height: 850px; + overflow-y: auto; +} + +/deep/ .box { + padding-top: 0; +} + +/deep/ .multiline .el-input__inner { + height: 62px; +} +/deep/ .textarea .el-textarea__inner{ + height: 80px; + max-height: 80px; + overflow-y: auto +} +/deep/ .textarea2 .el-textarea__inner{ + height: 100px; + max-height: 100px; + overflow-y: auto +} +/deep/ .el-checkbox-group{ + display: flex; + flex-direction: row; + flex-wrap: wrap; + align-items: center; + justify-content: flex-start; +} +/deep/ .el-checkbox{ + width: 25%; + margin-right: 0; + padding-right: 10px; +} +/deep/ .el-checkbox__label{ + padding-left: 0; +} +/deep/ .el-checkbox__input{ + top: 11px; + left: -5px; + position: absolute; +} +.checkbox{ + margin-bottom: 22px; +} +.checkbox /deep/ .el-checkbox__input{ + top: 2px; + left: -5px; + position: absolute; +} +.checkbox /deep/ .el-checkbox__label{ + padding-left: 25px; +} + /deep/ .el-input__inner{ + width: 130px; +} +/deep/.el-radio{ + margin-right: 20px; +} +.btn{ + background-color: #034ea2; + border: 1px solid #034ea2; +} +</style> diff --git a/src/views/chartAnalysis/index.vue b/src/views/chartAnalysis/index.vue index bf6f6da..103dab2 100644 --- a/src/views/chartAnalysis/index.vue +++ b/src/views/chartAnalysis/index.vue @@ -1,25 +1,101 @@ <template> <div> <div class="whole_top"> - <el-form ref="form" :inline="true" :model="form" label-width="100px"> + <el-form ref="form" :inline="true" :model="form"> <div class="top"> - <el-form-item> - <el-checkbox-group v-model="checkList"> - <el-checkbox label="复选框 A"></el-checkbox> - <el-checkbox label="复选框 B"></el-checkbox> - <el-checkbox label="复选框 C"></el-checkbox> + <el-form-item label="类别:"> + <el-checkbox-group v-model="categoryList"> + <el-checkbox label="生产"></el-checkbox> + <el-checkbox label="设备"></el-checkbox> + <el-checkbox label="电气"></el-checkbox> + <el-checkbox label="仪表"></el-checkbox> + <el-checkbox label="安全管理"></el-checkbox> + <el-checkbox label="其他"></el-checkbox> </el-checkbox-group> </el-form-item> - <el-form-item> - <el-checkbox-group v-model="checkList"> - <el-checkbox label="复选框 A"></el-checkbox> - <el-checkbox label="复选框 B"></el-checkbox> - <el-checkbox label="复选框 C"></el-checkbox> - </el-checkbox-group> + <el-form-item label="级别:"> + <el-checkbox-group v-model="levelList"> + <el-checkbox label="一般隐患D"></el-checkbox> + <el-checkbox label="一般隐患C"></el-checkbox> + <el-checkbox label="重大隐患B"></el-checkbox> + <el-checkbox label="重大隐患A"></el-checkbox> + </el-checkbox-group> + </el-form-item> + <el-form-item label="上级单位:"> + <el-checkbox-group v-model="superiorUnitList"> + <el-checkbox label="新疆能源"></el-checkbox> + <el-checkbox label="河南能源"></el-checkbox> + <el-checkbox label="新疆能源小分队"></el-checkbox> + <el-checkbox label="河南能源小分队"></el-checkbox> + <el-checkbox label="新疆能源救护大队"></el-checkbox> + <el-checkbox label="河南省应急管理厅"></el-checkbox> + <el-checkbox label="河南省工信厅"></el-checkbox> + <el-checkbox label="所属县市安监部门"></el-checkbox> + </el-checkbox-group> + </el-form-item> + <el-form-item label="检查类别:" class="checkbox"> + <el-checkbox-group v-model="inspectionCategoryList"> + <el-checkbox label="日常检查"></el-checkbox> + <el-checkbox label="领导深入现场"></el-checkbox> + <el-checkbox label="安全大检查"></el-checkbox> + <el-checkbox label="生产系统专业检查"></el-checkbox> + <el-checkbox label="设备系统专业检查"></el-checkbox> + <el-checkbox label="电气系统专业检查"></el-checkbox> + <el-checkbox label="仪表系统专业检查"></el-checkbox> + <el-checkbox label="安全管理专业检查"></el-checkbox> + <el-checkbox label="其他专项检查"></el-checkbox> + <el-checkbox label="双击建设考核"></el-checkbox> + <el-checkbox label="安全标准化验收"></el-checkbox> + <el-checkbox label="职业卫生健康"></el-checkbox> + <el-checkbox label="举一反三"></el-checkbox> + <el-checkbox label="安全督察小分队"></el-checkbox> + </el-checkbox-group> + </el-form-item> + <el-form-item label="当前警情:"> + <el-checkbox-group v-model="policeSituationList"> + <el-checkbox label="轻警"></el-checkbox> + <el-checkbox label="低警"></el-checkbox> + <el-checkbox label="中警"></el-checkbox> + <el-checkbox label="重警"></el-checkbox> + </el-checkbox-group> + </el-form-item> + <el-form-item style="margin-left: 30px;"> + <el-radio-group v-model="radio"> + <el-radio :label="1">按隐患单位</el-radio> + <el-radio :label="2">按类别</el-radio> + <el-radio :label="3">按级别</el-radio> + <el-radio :label="4">按检查单位</el-radio> + <el-radio :label="5">按录入单位</el-radio> + <el-radio :label="6">按检查类别</el-radio> + <el-radio :label="7">按当前警情</el-radio> + </el-radio-group> + <el-radio-group v-model="radio2" style="margin-left: 50px;"> + <el-radio :label="1">曲线图</el-radio> + <el-radio :label="2">饼状图</el-radio> + <el-radio :label="3">柱形图</el-radio> + </el-radio-group> </el-form-item> </div> - <div class="center" style="text-align: center;padding-top: 10px;"> - <el-form-item label="检查时间:"> + <div class="center"> + <el-form-item label="已选单位:"> + <el-input v-model="form.name"></el-input> + </el-form-item> + <el-form-item label="已选类别:"> + <el-input v-model="form.category"></el-input> + </el-form-item> + <el-form-item label="已选级别:"> + <el-input v-model="form.level"></el-input> + </el-form-item> + <el-form-item label="已选上级单位:"> + <el-input v-model="form.superiorUnit"></el-input> + </el-form-item> + <el-form-item label="已选检查类别:"> + <el-input v-model="form.inspectionCategory"></el-input> + </el-form-item> + <el-form-item label="已选当前警情:"> + <el-input v-model="form.policeSituation"></el-input> + </el-form-item> + <el-form-item label="检查时间:" class="time"> <el-date-picker v-model="form.time" type="daterange" @@ -32,85 +108,540 @@ <el-button class="btn" size="small" type="primary" @click="close()" >汇总</el-button> <el-button class="btn" size="small" type="primary" @click="close()" - >导出Excel</el-button> + >同比环比</el-button> </el-form-item> </div> </el-form> -<!-- <el-table--> -<!-- :data="tableData"--> -<!-- style="width: 100%">--> -<!-- <el-table-column align="center" label="众泰煤焦化-安全隐患台帐">--> -<!-- <el-table-column--> -<!-- prop="name"--> -<!-- label="隐患部门\隐患专业"--> -<!-- align="center">--> -<!-- </el-table-column>--> -<!-- <el-table-column--> -<!-- prop="province"--> -<!-- label="采掘"--> -<!-- align="center">--> -<!-- </el-table-column>--> -<!-- <el-table-column--> -<!-- prop="city"--> -<!-- label="生产"--> -<!-- width="120"--> -<!-- align="center">--> -<!-- </el-table-column>--> -<!-- <el-table-column--> -<!-- prop="address"--> -<!-- label="合计"--> -<!-- width="300"--> -<!-- align="center">--> -<!-- </el-table-column>--> -<!-- </el-table-column>--> -<!-- </el-table>--> - <div style="color: #c5021a;margin-top: 20px;"> - <div>温馨提示:</div> - <div>点选可查询隐患详情。</div> - </div> + </div> + <div class="whole_bottom"> +<!-- <div id="myChart" style="width: 100%;height: 550px;"></div>--> +<!-- <div id="circular" style="width: 100%;height: 550px;"></div>--> + <div id="cylindrical" style="width: 100%;height: 650px;"></div> </div> </div> </template> - <script> +import {echarts} from "../../global"; + export default { name: "index", data() { return { form: { + name:'众泰煤焦化', time: '', - region: '', - date1: '', - date2: '', - delivery: false, - type: [], - resource: '', - desc: '' + category: '生产', + level: '一般隐患D', + superiorUnit: '新疆能源', + inspectionCategory: '日常检查', + policeSituation: '轻警', }, - checkList: ['复选框 A'], - tableData: [{ - name: '财务部', - province: '1', - city: '4', - address: '1' - }, { - name: '党委副书记', - province: '0', - city: '2', - address: '0' - }, { - name: '众泰煤焦化', - province: '2', - city: '3', - address: '1' - }, { - name: '王小虎', - province: '3', - city: '9', - address: '2' - }] + categoryList: ['生产'], + levelList:['一般隐患D'], + superiorUnitList: ['新疆能源'], + inspectionCategoryList:['日常检查'], + policeSituationList: ['轻警'], + radio: 1, + radio2: 1, + } + }, + mounted() { + this.initChart() + }, + methods: { + initChart() { + // 折线图 + // var chartDom = document.getElementById('myChart'); + // var myChart = echarts.init(chartDom); + // var option = { + // title: { + // text: '众泰煤焦化各隐患单位隐患走势分析', + // left: 'center' + // }, + // legend:{ + // bottom: 0, + // // textStyle: { + // // color: '#ffffff' + // // }, + // }, + // grid: { + // left: '3%', + // right: '4%', + // bottom: '5%', + // containLabel: true + // }, + // xAxis: { + // type: 'category', + // boundaryGap: false, + // data: ['2022-05-01', '', '2022-05-03', '', '2022-05-05', '', '2022-05-07', '', '2022-05-09', '', '2022-05-11'] + // }, + // yAxis: { + // type: 'value' + // }, + // color: ['#9a0202', '#02cccc', '#0202ff', '#ff9a02', '#02ff02', '#CC02CCFF', '#35FF02FF', '#CCFF67FF', '#35CC67FF', '#9A0202FF'], + // series: [ + // { + // name: '电仪车间', + // data: [50, 35, 63, 64, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '原料二车间', + // data: [50, 65, 84, 93, 52, 78, 10,58,78,20,55], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '化产二车间', + // data: [ 95, 104,50, 35, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '烧焦二车间', + // data: [50, 35, 63, 64, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '化产一车间', + // data: [50, 35, 63, 64, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '炼焦一车间', + // data: [50, 35, 63, 64, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '原料一车间', + // data: [50, 35, 63, 64, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '众和机电', + // data: [95, 104,50, 35, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '生产技术部', + // data: [50, 35, 63, 95, 104,50, 35, 63,35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '选煤厂', + // data: [5, 35, 67, 64, 45, 95, 23,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '工程部', + // data: [50, 35, 63, 16, 79, 95, 45,50, 24, 7, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '机电部', + // data: [50, 35, 63, 64, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // } + // ] + // } + // // 使用刚指定的配置项和数据显示图表。 + // myChart.setOption(option) + + // 饼图 + // var chartDom = document.getElementById('myChart'); + // var myChart = echarts.init(chartDom); + // var option = { + // title: { + // text: '众泰煤焦化各隐患单位隐患走势分析', + // left: 'center' + // }, + // legend:{ + // bottom: 0, + // // textStyle: { + // // color: '#ffffff' + // // }, + // }, + // grid: { + // left: '3%', + // right: '4%', + // bottom: '5%', + // containLabel: true + // }, + // xAxis: { + // type: 'category', + // boundaryGap: false, + // data: ['2022-05-01', '', '2022-05-03', '', '2022-05-05', '', '2022-05-07', '', '2022-05-09', '', '2022-05-11'] + // }, + // yAxis: { + // type: 'value' + // }, + // color: ['#9a0202', '#02cccc', '#0202ff', '#ff9a02', '#02ff02', '#CC02CCFF', '#35FF02FF', '#CCFF67FF', '#35CC67FF', '#9A0202FF'], + // series: [ + // { + // name: '电仪车间', + // data: [50, 35, 63, 64, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '原料二车间', + // data: [50, 65, 84, 93, 52, 78, 10,58,78,20,55], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '化产二车间', + // data: [ 95, 104,50, 35, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '烧焦二车间', + // data: [50, 35, 63, 64, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '化产一车间', + // data: [50, 35, 63, 64, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '炼焦一车间', + // data: [50, 35, 63, 64, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '原料一车间', + // data: [50, 35, 63, 64, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '众和机电', + // data: [95, 104,50, 35, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '生产技术部', + // data: [50, 35, 63, 95, 104,50, 35, 63,35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '选煤厂', + // data: [5, 35, 67, 64, 45, 95, 23,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '工程部', + // data: [50, 35, 63, 16, 79, 95, 45,50, 24, 7, 64], + // type: 'line', + // areaStyle: {} + // }, + // { + // name: '机电部', + // data: [50, 35, 63, 64, 79, 95, 104,50, 35, 63, 64], + // type: 'line', + // areaStyle: {} + // } + // ] + // } + // // 使用刚指定的配置项和数据显示图表。 + // myChart.setOption(option) + + // 柱形图 + var chartDom = document.getElementById('cylindrical'); + var myChart = echarts.init(chartDom); + var option; + const posList = [ + 'left', + 'right', + 'top', + 'bottom', + 'inside', + 'insideTop', + 'insideLeft', + 'insideRight', + 'insideBottom', + 'insideTopLeft', + 'insideTopRight', + 'insideBottomLeft', + 'insideBottomRight' + ]; + app.configParameters = { + rotate: { + min: -90, + max: 90 + }, + align: { + options: { + left: 'left', + center: 'center', + right: 'right' + } + }, + verticalAlign: { + options: { + top: 'top', + middle: 'middle', + bottom: 'bottom' + } + }, + position: { + options: posList.reduce(function (map, pos) { + map[pos] = pos; + return map; + }, {}) + }, + distance: { + min: 0, + max: 100 + } + }; + app.config = { + rotate: 90, + align: 'left', + verticalAlign: 'middle', + position: 'insideBottom', + distance: 15, + onChange: function () { + const labelOption = { + rotate: app.config.rotate, + align: app.config.align, + verticalAlign: app.config.verticalAlign, + position: app.config.position, + distance: app.config.distance + }; + myChart.setOption({ + series: [ + { + label: labelOption + }, + { + label: labelOption + }, + { + label: labelOption + }, + { + label: labelOption + } + ] + }); + } + }; + const labelOption = { + show: false, + position: app.config.position, + distance: app.config.distance, + align: app.config.align, + verticalAlign: app.config.verticalAlign, + rotate: app.config.rotate, + formatter: '{c} {name|{a}}', + fontSize: 16, + rich: { + name: {} + } + }; + option = { + tooltip: { + trigger: 'axis', + axisPointer: { + type: 'shadow' + } + }, + legend: { + bottom: 0, + data: ['安全环保部', '电仪车间', '干熄焦', '工程部','化产二车间', '化产一车间', '机电部', '炼焦二车间','炼焦一车间', '生产技术部', '消防保卫部', '选煤厂', '原料二车间', '原料一车间', '众和机电'] + }, + grid: { + left: '3%', + right: '4%', + containLabel: true + }, + // toolbox: { + // show: true, + // orient: 'vertical', + // left: 'right', + // top: 'center', + // feature: { + // mark: { show: true }, + // dataView: { show: true, readOnly: false }, + // magicType: { show: true, type: ['line', 'bar', 'stack'] }, + // restore: { show: true }, + // saveAsImage: { show: true } + // } + // }, + xAxis: [ + { + type: 'category', + axisTick: { show: false }, + // data: ['2012', '2013', '2014', '2015', '2016'] + } + ], + yAxis: [ + { + type: 'value' + } + ], + series: [ + { + name: '安全环保部', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [320] + }, + { + name: '电仪车间', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [332] + }, + { + name: '干熄焦', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [150] + }, + { + name: '工程部', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [541] + }, + { + name: '化产二车间', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [256] + }, + { + name: '化产一车间', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [351] + }, + { + name: '机电部', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [122] + }, + { + name: '炼焦二车间', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [220] + }, + { + name: '炼焦一车间', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [255] + }, + { + name: '生产技术部', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [122] + }, + { + name: '消防保卫部', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [220] + }, + { + name: '选煤厂', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [255] + }, + { + name: '原料二车间', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [255] + }, + { + name: '原料一车间', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [255] + }, + { + name: '众和机电', + type: 'bar', + label: labelOption, + emphasis: { + focus: 'series' + }, + data: [255] + }, + ] + }; + // 使用刚指定的配置项和数据显示图表。 + myChart.setOption(option) } } + } </script> @@ -118,50 +649,83 @@ .top{ padding: 10px 5px; background: #e4edf4; + display: flex; + flex-direction: column; } -/*下拉框图标隐藏*/ -.whole_top .select /deep/ .el-input__suffix-inner .is-reverse{ +.top /deep/ .el-form-item__label{ + width: 110px; +} +.top /deep/ .el-form-item{ + margin-bottom: 5px; +} +/*多选框间距*/ +.checkbox /deep/ .el-checkbox-group{ + display: flex; + flex-direction: row; + flex-wrap: wrap; + justify-content: space-between; +} +.center{ + text-align: center; + padding: 10px; + background: #ffffff; + margin: 10px 0; +} +.center /deep/ .el-form-item__label{ + width: auto; + padding-right: 0; +} +.checkbox { + display: flex; +} +/deep/ .el-checkbox{ + margin-right: 7px; +} +.checkbox /deep/ .el-checkbox{ + margin-right: 0px; +} +/deep/ .el-checkbox__label{ + padding-left: 3px; +} +.checkbox /deep/ .el-checkbox__label{ + padding-left: 3px; +} +/deep/ .el-radio{ + margin-right: 7px; +} +.center{ + display: flex; + align-items: center; + justify-content: start; +} +.center /deep/ .el-form-item--medium{ + margin-bottom: 0px; + display: flex; +} +.center /deep/ .el-input__inner{ + border: transparent; + width: 85px; + padding: 0 5px; +} +.center .time /deep/ .el-form-item__content{ + width: 70%; +} +.center .time /deep/ .el-input__inner{ + width: 218px; +} +.center .time /deep/ .el-range-input { + width: 90px; + border: 1px solid #DCDFE6; + border-radius: 4px; + padding: 0 5px; +} +/deep/ .el-icon-date{ display: none; -} -.whole_top .select /deep/ .el-input__suffix-inner .el-icon-arrow-up{ - display: none; -} -/*设下拉框颜色*/ -.select /deep/.el-input__inner { - border: 1px solid #c5dbec; - font-weight: bold; - background: #dfeffc; - /*.el-icon-circle-close*/ -} -.whole_top .select /deep/.el-select .el-input__inner:focus { - color: #e6860b; -} -.select /deep/ .is-focus .el-select__tags-text{ - color: #000000; -} -/*下拉框选值之后的样式*/ -.select /deep/ .el-tag.el-tag--info { - background-color: transparent;; - border-color: transparent; - font-weight: bold; - color: #e6860b; -} -/*placeholder颜色修改*/ -.whole_top ::-webkit-input-placeholder { - color: #000000; -} -.whole_top :-moz-placeholder { - color: #000000; -} -.whole_top ::-moz-placeholder{ - color: #000000; -} -.whole_top :-ms-input-placeholder { - color: #000000; } /*日期*/ /deep/ .el-date-editor .el-range-separator{ width: auto; + line-height: 36px; } .btn{ background-color: #034ea2; diff --git a/src/views/hiddenDangerTroubleshootingList/index.vue b/src/views/hiddenDangerTroubleshootingList/index.vue index 0ebb761..3208d2d 100644 --- a/src/views/hiddenDangerTroubleshootingList/index.vue +++ b/src/views/hiddenDangerTroubleshootingList/index.vue @@ -1,10 +1,11 @@ <template xmlns="http://www.w3.org/1999/html"> - <div class="whole"> + <div class="whole" v-loading="fullscreenLoading"> <div class="left-tree"> <el-tree :data="data" node-key="id" default-expand-all + @node-click="clickType" @node-drag-start="handleDragStart" @node-drag-enter="handleDragEnter" @node-drag-leave="handleDragLeave" @@ -24,31 +25,34 @@ }" style="color: #409eff;" /> - <i v-else class="el-icon-folder-add" style="color: #EC933A;" /> + <i v-else class="el-icon-folder-add" style="color: #EC933A;"/> <span>{{ node.label }}</span> </template> </span> </el-tree> </div> - <div class="right-table"> + <div class="right-table" v-show="templateName!=null && templateName !=''"> <table border="1" style="background: #FFFFFF;width: 100%;"> <tr> <td class="table_td" style="text-align: right;">模板名称:</td> <td> - <input class="input" style="line-height: 24px;height: 24px;"> + <input class="input" style="line-height: 24px;height: 24px;" + v-model="templateName"> </td> </tr> <tr> <td class="table_td" style="text-align: right;">模板导入:</td> <td style="line-height: 24px;height: 24px;"> - <input class="input" type="file" style="color: red;"> - <button class="btn" style="margin-left: 120px;">导入</button> - <button class="btn">下载模板</button> + <input class="input" type="file" @change="changeFile" accept=".xlsx,.xls" style="color: red;"> + <button class="btn" style="margin-left: 120px;" @click="importData" + >导入 + </button> + <button class="btn" @click="downTemplate">下载模板</button> </td> </tr> <tr class="table_tr"> <td colspan="4" align="center"> - <button class="btn">预览</button> + <button class="btn" @click="preview">预览</button> </td> </tr> </table> @@ -57,32 +61,43 @@ </template> <script> + + +import {standard_template, standard_import_do,stand_list} from "@/api/sgyhpczl/hiddenDangerTroubleshootingList"; + + export default { - name: "index" , + name: "index", data() { return { data: [{ id: 1, label: '隐患排查清单', - icon:'el-icon-folder', + icon: 'el-icon-folder', + click: true, children: [{ id: 4, label: '现场管理清单', - icon:'el-icon-folder', + icon: 'el-icon-folder', + click: true }, - { - id: 5, - label: '基础管理清单', - icon:'el-icon-success', - }] + { + id: 5, + label: '基础管理清单', + icon: 'el-icon-success', + click: true + }] }], defaultProps: { children: 'children', label: 'label' }, + templateName: "", + file: null, + fullscreenLoading:false }; }, - mounted(){ + mounted() { this.getAllColumns() }, methods: { @@ -120,59 +135,127 @@ }, handleChange(file, fileList) { this.fileList = fileList.slice(-3); + }, + clickType(item) { + if (item.click) { + this.templateName = item.label; + } + }, + downTemplate() { + //删除分页参数 + standard_template().then(res => { + 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) + }) + }, + importData() { + if (this.file == null) { + this.$message({type: 'warning', message: "请添加Excel附件", duration: 3000}) + return; + } + console.log(this.file) + this.fullscreenLoading = true; + this.uploadByJsqd(this.file); + }, + changeFile(file) { + this.file = event.target.files[0] + }, + //文件发生改变就会触发的事件 导入 + uploadByJsqd(file) { + //判断是否符合beforeAvatarUpload方法中的条件 + var formdata = new FormData() + formdata.append('file', file) + formdata.append('standardType', this.templateName); + + //importDevice:请求接口 formdata:传递参数 + standard_import_do(formdata).then((res) => { + this.fullscreenLoading = false; + if (res.data.ok) { + this.$message({type: 'success', message: res.data.msg, duration: 3000}) + this.getPageList()//调用表格方法,刷新页面 + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) + } + }) + }, + preview(){ + this.$router.push({ + path: "/preview", + query:{"templateName":this.templateName} + }) } } } </script> <style scoped> -.whole{ +.whole { display: flex; } -.left-tree{ + +.left-tree { width: 15%; } -.left-tree .el-tree{ + +.left-tree .el-tree { background: #f0f6e4; height: 400px; overflow-y: scroll; border: 1px solid #000; } -/deep/ .is-leaf{ + +/deep/ .is-leaf { background: transparent !important; width: 5px; height: 5px; background-size: 100%; margin-right: 5px; } -/deep/ .el-icon-caret-right:before{ + +/deep/ .el-icon-caret-right:before { content: ''; } -.right-table{ + +.right-table { width: 85%; } -table,table tr th, table tr td { - border:1px solid #ccc; + +table, table tr th, table tr td { + border: 1px solid #ccc; } -.table_td{ + +.table_td { background: #e4edf4; } -.table_tr{ + +.table_tr { background: #e4edf4; line-height: 40px; height: 40px; } -table{ + +table { width: 100%; border-collapse: collapse; font-size: 14px; } -.input{ + +.input { background: #f9f9f9; border-width: 1px; margin: 5px 0; } -.btn{ + +.btn { background: url(../../assets/btn.gif) no-repeat; width: 76px; height: 26px; diff --git a/src/views/hiddenDangerTroubleshootingList/preview.vue b/src/views/hiddenDangerTroubleshootingList/preview.vue index f41ca01..629a168 100644 --- a/src/views/hiddenDangerTroubleshootingList/preview.vue +++ b/src/views/hiddenDangerTroubleshootingList/preview.vue @@ -1,122 +1,90 @@ <template> -<div class="whole"> - <h3 style="text-align: center">隐患排查标准清单(基础管理清单)</h3> - <el-table - :data="tableData" - style="width: 100%"> - <el-table-column label="排查内容" align="center"> - <el-table-column - prop="province" - label="Ⅰ级要素" - width="120"> + <div class="whole"> + <h3 style="text-align: center">隐患排查标准清单(基础管理清单)</h3> + <el-table + :data="tableData" + style="width: 100%"> + <el-table-column label="排查内容" align="center"> + <el-table-column + prop="factor_1" + label="Ⅰ级要素" + width="120"> + </el-table-column> + <el-table-column + prop="factor_2" + label="Ⅱ级要素" + width="120"> + </el-table-column> + <el-table-column + prop="factor_3" + label="Ⅲ级要素" + width="120"> + </el-table-column> + <el-table-column + prop="factor_4" + label="Ⅳ级要素" + width="120"> + </el-table-column> + </el-table-column> + <el-table-column label="排查标准" align="center"> + <el-table-column + prop="Standard" + label="标准项具体描述" + width="300"> + </el-table-column> + <el-table-column + prop="reference" + width="200" + label="参考依据"> + </el-table-column> </el-table-column> <el-table-column - prop="city" - label="Ⅱ级要素" - width="120"> + prop="method" + label="排查方法" + width="150"> </el-table-column> <el-table-column - prop="address" - label="Ⅲ级要素" - width="120"> + prop="period" + label="排查周期" + width="150"> </el-table-column> - <el-table-column - prop="zip" - label="Ⅳ级要素" - width="120"> + <el-table-column label="排查责任" align="center"> + <el-table-column + prop="level" + label="排查级别"> + </el-table-column> + <el-table-column + prop="branch" + label="责任单位"> + </el-table-column> </el-table-column> - </el-table-column> - <el-table-column label="排查标准" align="center"> - <el-table-column - prop="province" - label="标准项具体描述" - width="300"> - </el-table-column> - <el-table-column - prop="city" - width="200" - label="参考依据"> - </el-table-column> - </el-table-column> - <el-table-column - prop="date" - label="排查方法" - width="150"> - </el-table-column> - <el-table-column - prop="date" - label="排查周期" - width="150"> - </el-table-column> - <el-table-column label="排查责任" align="center"> - <el-table-column - prop="province" - label="排查级别"> - </el-table-column> - <el-table-column - prop="city" - label="责任单位"> - </el-table-column> - </el-table-column> - </el-table> -</div> + </el-table> + </div> </template> <script> +import {stand_list} from "@/api/sgyhpczl/hiddenDangerTroubleshootingList"; + export default { name: "preview", data() { return { - tableData: [{ - date: '2016-05-03', - name: '王小虎', - province: '上海', - city: '普陀区', - address: '上海市普陀区金沙江路 1518 弄', - zip: 200333 - }, { - date: '2016-05-02', - name: '王小虎', - province: '上海', - city: '普陀区', - address: '上海市普陀区金沙江路 1518 弄', - zip: 200333 - }, { - date: '2016-05-04', - name: '王小虎', - province: '上海', - city: '普陀区', - address: '上海市普陀区金沙江路 1518 弄', - zip: 200333 - }, { - date: '2016-05-01', - name: '王小虎', - province: '上海', - city: '普陀区', - address: '上海市普陀区金沙江路 1518 弄', - zip: 200333 - }, { - date: '2016-05-08', - name: '王小虎', - province: '上海', - city: '普陀区', - address: '上海市普陀区金沙江路 1518 弄', - zip: 200333 - }, { - date: '2016-05-06', - name: '王小虎', - province: '上海', - city: '普陀区', - address: '上海市普陀区金沙江路 1518 弄', - zip: 200333 - }, { - date: '2016-05-07', - name: '王小虎', - province: '上海', - city: '普陀区', - address: '上海市普陀区金沙江路 1518 弄', - zip: 200333 - }] + tableData: [] + } + }, + mounted() { + this.getTableData() + }, + methods: { + getTableData() { + stand_list(this.$route.query.templateName).then((res) => { + if (res.data.ok) { + console.log(res); + this.tableData = res.data.data; + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) + } + }) } } } diff --git a/src/views/oneFromanotherN/index.vue b/src/views/oneFromanotherN/index.vue index ed13ff7..6e81886 100644 --- a/src/views/oneFromanotherN/index.vue +++ b/src/views/oneFromanotherN/index.vue @@ -281,7 +281,11 @@ width="40%"> <el-form> <el-row> - <el-checkbox style="width: 80px;height: 30px" v-for="item in YHBMList" v-model="checked" :label="item.branch_id"> + <el-checkbox style="width: 80px;height: 30px" + v-for="item in YHBMList" + v-model="checked" + :label="item.branch_id" + :key="item.branch_id"> {{item.branch_name}} </el-checkbox> </el-row> diff --git a/src/views/safetyHazardAccount/index.vue b/src/views/safetyHazardAccount/index.vue index e15ac5a..66ae526 100644 --- a/src/views/safetyHazardAccount/index.vue +++ b/src/views/safetyHazardAccount/index.vue @@ -43,9 +43,9 @@ <el-select v-model="listQuery.form.ht_branch" placeholder="请选择"> <el-option v-for="item in YHBMList" - :key="item.branch_id" + :key="item.branch_name" :label="item.branch_name" - :value="item.branch_id"> + :value="item.branch_name"> </el-option> </el-select> </el-form-item> @@ -96,12 +96,12 @@ </el-select> </el-form-item> <el-form-item label="风险等级"> - <el-select v-model="listQuery.form.DTRisk_bankId" placeholder="请选择"> + <el-select v-model="listQuery.form.DTRisk_level" placeholder="请选择"> <el-option - v-for="item in reList" - :key="item.value" - :label="item.label" - :value="item.value"> + v-for="item in levelList" + :key="item.name" + :label="item.name" + :value="item.name"> </el-option> </el-select> </el-form-item> @@ -116,7 +116,7 @@ </el-select> </el-form-item> <el-form-item label="深入现场情况"> - <el-select v-model="listQuery.form.createBy" placeholder="请选择"> + <el-select v-model="listQuery.form.class_situation" placeholder="请选择"> <el-option v-for="item in llrList" :key="item.id" @@ -126,22 +126,22 @@ </el-select> </el-form-item> <el-form-item label="是否关联"> - <el-select v-model="listQuery.form.createBy" placeholder="请选择"> + <el-select v-model="listQuery.form.DTRisk_bankId" placeholder="请选择"> <el-option - v-for="item in llrList" - :key="item.id" - :label="item.realName" - :value="item.id"> + v-for="item in reList" + :key="item.value" + :label="item.label" + :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="复查单位"> - <el-select v-model="listQuery.form.createBy" placeholder="请选择"> + <el-select v-model="listQuery.form.callback_branch" placeholder="请选择"> <el-option - v-for="item in llrList" - :key="item.id" - :label="item.realName" - :value="item.id"> + v-for="item in YHBMList" + :key="item.branch_id" + :label="item.branch_name" + :value="item.branch_id"> </el-option> </el-select> </el-form-item> @@ -189,7 +189,7 @@ <el-col :span="12" style="text-align:right;" v-if="YHType=='0'"> <el-button type="primary" class="btns" size="small" @click="supervision('1')">督查督办</el-button> <el-button type="primary" class="btns" size="small" @click="supervision('2')">举一反三</el-button> - <el-button type="primary" class="btns" size="small" @click="base()">双基考核</el-button> + <!-- <el-button type="primary" class="btns" size="small" @click="base()">双基考核</el-button>--> <el-button type="primary" class="btns" size="small" @click='deleteBatch'>删除</el-button> </el-col> </el-row> @@ -200,24 +200,59 @@ <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="address" label="地点" align="center"></el-table-column> - <el-table-column prop="ht_content" label="内容" 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"> + <template slot-scope="scope"> + <el-popover trigger="hover" placement="top"> + <p>{{ scope.row.address }}</p> + <div slot="reference" class="name-wrapper">{{ + scope.row.address != null && scope.row.address.length > 10 ? scope.row.address.substring(0, 8) + "...." : scope.row.address + }} + </div> + </el-popover> + </template> + </el-table-column> + <el-table-column prop="ht_content" label="内容" width="150" 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="整改措施" width="150" 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"> - <el-table-column prop="ACCOMPLISHTIME" label="完成时间" width="110px" align="center"></el-table-column> + <el-table-column prop="ACCOMPLISHTIME" label="完成时间" width="110px" :formatter="formatColumnDate" align="center"></el-table-column> <el-table-column prop="CALLBACKRESULT" label="复查结果" align="center"></el-table-column> <el-table-column prop="CALLBACKPERSON" label="复查人" align="center"></el-table-column> - <el-table-column prop="CALLBACKTIME" label="复查时间" width="120" align="center"></el-table-column> + <el-table-column prop="CALLBACKTIME" label="复查时间" width="120" :formatter="formatColumnDate" align="center"></el-table-column> </el-table-column> <el-table-column label="隐患处理状态" align="center"> <template slot-scope="scope"> @@ -229,7 +264,7 @@ </el-table-column> <el-table-column prop="DTRisk_bankId" label="是否关联" align="center"> <template slot-scope="scope"> - <span + <span style ="color: red" v-if="scope.row.DTRisk_bankId==0 || scope.row.DTRisk_bankId=='' || scope.row.DTRisk_bankId==null">未关联</span> <span v-else>已关联</span> </template> @@ -272,7 +307,8 @@ > <el-form> <el-row> - <el-checkbox style="width: 80px;height: 30px" v-for="item in YHBMList" v-model="checked" + <el-checkbox style="width: 80px;height: 30px" :key="item.branch_id" v-for="item in YHBMList" + v-model="checked" :label="item.branch_id">{{ item.branch_name }} @@ -321,6 +357,7 @@ YHJBList: [], tableData: [], requestData: {}, + levelList:[{id:1,name:'低风险'},{id:2,name:'一般风险'},{id:3,name:'较大风险'},{id:4,name:'重大风险'}], listQuery: { page: 1, limit: 10, @@ -522,7 +559,7 @@ }, updateClick(row) { this.$router.push({ - path: "/hiddenDangerAdd?id=" + row.id +"&route=safetyHazardAccount" + path: "/hiddenDangerAdd?id=" + row.id + "&route=safetyHazardAccount" }) }, jump() { @@ -536,6 +573,25 @@ path: "/hiddenDangerList?id=" + row.id, }) }, + //方法区 + 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() + ' ' + }, deleteClick(row) { this.$confirm('确认删除吗', '提示', { confirmButtonText: '确认', diff --git a/src/views/summaryPotentialSafetyHzards/index.vue b/src/views/summaryPotentialSafetyHzards/index.vue index 31747b9..4f953f9 100644 --- a/src/views/summaryPotentialSafetyHzards/index.vue +++ b/src/views/summaryPotentialSafetyHzards/index.vue @@ -1,144 +1,158 @@ <template> -<div> - <div class="whole_top"> - <el-form ref="form" :inline="true" :model="form" label-width="100px"> - <div class="top"> - <div class="select"> - <el-form-item> - <el-select v-model="value1" multiple placeholder="请选择" style="color: red"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> - </el-form-item> - <el-form-item> - <el-select v-model="value2" multiple placeholder="请选择" style="color: red"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> - </el-form-item> - <el-form-item> - <el-select v-model="value3" multiple placeholder="请选择" style="color: red"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> - </el-form-item> - <el-form-item> - <el-select v-model="value4" multiple placeholder="请选择" style="color: red"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> - </el-form-item> - <el-form-item> - <el-select v-model="value5" multiple placeholder="请选择" style="color: red"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> - </el-form-item> - <el-form-item> - <el-select v-model="value6" multiple placeholder="请选择" style="color: red"> - <el-option - v-for="item in options" - :key="item.value" - :label="item.label" - :value="item.value"> - </el-option> - </el-select> - </el-form-item> - </div> - <el-form-item> - <el-radio-group v-model="radio" style="padding: 20px 0;"> - <el-radio :label="1">按隐患部门</el-radio> - <el-radio :label="2">按专业</el-radio> - <el-radio :label="3">按级别</el-radio> - <el-radio :label="4">按检查类别</el-radio> - <el-radio :label="5">按检查单位(上级单位)</el-radio> - <el-radio :label="6">按检查单位(本部单位)</el-radio> - </el-radio-group> - </el-form-item> - <el-radio-group v-model="radio"> - <el-radio :label="1">按隐患部门</el-radio> - <el-radio :label="2">按专业</el-radio> - <el-radio :label="3">按级别</el-radio> - <el-radio :label="4">按检查类别</el-radio> - <el-radio :label="5">按检查单位(上级单位)</el-radio> - <el-radio :label="6">按检查单位(本部单位)</el-radio> - </el-radio-group> - </div> - <div class="center" style="text-align: center;padding-top: 10px;"> - <el-form-item label="检查时间:"> - <el-date-picker - v-model="time" - type="daterange" - range-separator="至" - start-placeholder="开始日期" - end-placeholder="结束日期"> - </el-date-picker> - </el-form-item> - <el-form-item> - <el-button class="btn" size="small" type="primary" @click="close()" - >汇总</el-button> - <el-button class="btn" size="small" type="primary" @click="close()" - >导出Excel</el-button> - </el-form-item> + <div> + <div class="whole_top"> + <el-form ref="form" :inline="true" :model="form" label-width="100px"> + <div class="top"> + <div class="select"> + <el-form-item> + <el-select v-model="form.ht_branch" multiple placeholder="请选择隐患部门" style="color: red"> + <el-option + v-for="item in YHBMList" + :key="item.branch_name" + :label="item.branch_name" + :value="item.branch_name"> + </el-option> + </el-select> + </el-form-item> + <el-form-item> + <el-select v-model="form.ht_typesub" multiple placeholder="请选择隐患专业" style="color: red"> + <el-option + v-for="item in YHLXList" + :key="item.value" + :label="item.value" + :value="item.value"> + </el-option> + </el-select> + </el-form-item> + <el-form-item> + <el-select v-model="form.ht_level" multiple placeholder="请选择隐患级别" style="color: red"> + <el-option + v-for="item in YHJBList" + :key="item.value" + :label="item.value" + :value="item.value"> + </el-option> + </el-select> + </el-form-item> + <el-form-item> + <el-select v-model="form.checktype" multiple placeholder="请选择检查类型" style="color: red"> + <el-option + v-for="item in JCLBList" + :key="item.value" + :label="item.label" + :value="item.value"> + </el-option> + </el-select> + </el-form-item> + <el-form-item> + <el-select v-model="form.ht_community" multiple placeholder="请选择上级检查单位" + style="color: red"> + <el-option + v-for="item in SJLBList" + :key="item.value" + :label="item.value" + :value="item.value"> + </el-option> + </el-select> + </el-form-item> + <el-form-item> + <el-select v-model="form.check_branch" multiple placeholder="请选择本部检查单位" + style="color: red"> + <el-option + v-for="item in JCBMList" + :key="item.value" + :label="item.value" + :value="item.value"> + </el-option> + </el-select> + </el-form-item> + </div> + <el-form-item label="统计类别"> + <el-radio-group v-model="form.x_axis" style="padding: 0px 0;"> + <el-radio label="ht_branch">按隐患部门</el-radio> + <el-radio label="ht_typesub">按专业</el-radio> + <el-radio label="ht_level">按级别</el-radio> + <el-radio label="checktype">按检查类别</el-radio> + <el-radio label="ht_community">按检查单位(上级单位)</el-radio> + <el-radio label="check_branch">按检查单位(本部单位)</el-radio> + </el-radio-group> + </el-form-item> + <el-form-item label="汇总类别"> + <el-radio-group v-model="form.y_axis"> + <el-radio label="ht_branch">按隐患部门</el-radio> + <el-radio label="ht_typesub">按专业</el-radio> + <el-radio label="ht_level">按级别</el-radio> + <el-radio label="checktype">按检查类别</el-radio> + <el-radio label="ht_community">按检查单位(上级单位)</el-radio> + <el-radio label="check_branch">按检查单位(本部单位)</el-radio> + </el-radio-group> + </el-form-item> + </div> + <div class="center" style="text-align: center;padding-top: 10px;"> + <el-form-item label="检查时间:"> + <el-date-picker + v-model="time" + type="daterange" + range-separator="至" + start-placeholder="开始日期" + end-placeholder="结束日期"> + </el-date-picker> + </el-form-item> + <el-form-item> + <el-button class="btn" size="small" type="primary" @click="queryData" + >汇总 + </el-button> + <el-button class="btn" size="small" type="primary" @click="close()" + >导出Excel + </el-button> + </el-form-item> + </div> + </el-form> + <el-table + :data="tableData" + style="width: 100%"> + <el-table-column align="center" label="众泰煤焦化-安全隐患台帐"> + <el-table-column + prop="y_label" + label="隐患部门\隐患专业" + + align="center"> + </el-table-column> + <el-table-column + v-for="item in tableData[0].items" + :label="item.x_label" + align="center"> + <template slot-scope="scope"> + <span @click="showYHList(scope.row,item)" class="clickSpan"> + {{ getRowNum(scope.row, item.x_label) }} + </span> + </template> + </el-table-column> + </el-table-column> + </el-table> + <div style="color: #c5021a;margin-top: 20px;"> + <div>温馨提示:</div> + <div>点选可查询隐患详情。</div> </div> - </el-form> - <el-table - :data="tableData" - style="width: 100%"> - <el-table-column align="center" label="众泰煤焦化-安全隐患台帐"> - <el-table-column - prop="name" - label="隐患部门\隐患专业" - align="center"> - </el-table-column> - <el-table-column - prop="province" - label="采掘" - align="center"> - </el-table-column> - <el-table-column - prop="city" - label="生产" - width="120" - align="center"> - </el-table-column> - <el-table-column - prop="address" - label="合计" - width="300" - align="center"> - </el-table-column> - </el-table-column> - </el-table> - <div style="color: #c5021a;margin-top: 20px;"> - <div>温馨提示:</div> - <div>点选可查询隐患详情。</div> </div> </div> -</div> </template> <script> + +import { + initJCBM, + initYHLX, + initBC, + initJCLB, + initYHBM, + initYHJB, + initLlr, + initReformStatus +} from "@/api/sgyhpczl/initSelect"; + +import {danger_summary} from "@/api/sgyhpczl/summaryPotentialSafetyHzards"; + export default { name: "index", data() { @@ -166,58 +180,257 @@ value5: [], value6: [], radio: 3, - time: '', - tableData: [{ - name: '财务部', - province: '1', - city: '4', - address: '1' - }, { - name: '党委副书记', - province: '0', - city: '2', - address: '0' - }, { - name: '众泰煤焦化', - province: '2', - city: '3', - address: '1' - }, { - name: '王小虎', - province: '3', - city: '9', - address: '2' - }] + TJType: "ht_typesub", + HZType: "ht_branch", + time: [], + tableData: [ + {} + ], + form: { + x_axis: "ht_typesub", + y_axis: "ht_branch" + }, + JCDWList: [{label: "众泰煤焦化", value: 0}, {label: "上级单位", value: 1}], + JCBMList: [], + YHLXList: [], + BCList: [], + JCLBList: [], + SJLBList: [], + YHBMList: [], + YHJBList: [], + YHZTList: [], + startDate: "", + endDate: "", } + }, + mounted() { + this.initYHLX() + this.initYHJB() + this.initBC() + this.initJCLB() + this.initLlr() + this.initYHBM() + this.initYHZT() + this.initJCBM() + this.initSJJCBM() + let startDate = this.getCurrentMonthFirst(); + let endDate = this.getCurrentMonthLast(); + this.time.push(startDate, endDate); + this.queryData(); + + }, + methods: { + initYHLX() { + initYHLX().then(res => { + if (res.data.ok == 1) { + this.YHLXList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) + } + }) + }, + initYHJB() { + initYHJB().then(res => { + if (res.data.ok == 1) { + this.YHJBList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) + } + }) + }, + initYHZT() { + initReformStatus().then(res => { + if (res.data.ok == 1) { + this.YHZTList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) + } + }) + }, + initBC() { + initBC().then(res => { + if (res.data.ok == 1) { + this.BCList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) + } + }) + }, + initJCLB() { + initJCLB().then(res => { + if (res.data.ok == 1) { + this.JCLBList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) + } + }) + }, + initLlr() { + initLlr().then(res => { + if (res.data.ok == 1) { + this.llrList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) + } + }) + }, + initYHBM() { + initYHBM().then(res => { + if (res.data.ok == 1) { + this.YHBMList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) + } + }) + }, + initJCBM() { + initJCBM(0).then(res => { + if (res.data.ok == 1) { + this.JCBMList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) + } + }) + }, + initSJJCBM() { + initJCBM(1).then(res => { + if (res.data.ok == 1) { + this.SJLBList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) + } + }) + }, + queryData() { + let requestData = {}; + let selectData = [] + for (const queryElement in this.form) { + if (queryElement != "x_axis" && queryElement != "y_axis") { + if (this.form[queryElement] != null && this.form[queryElement] != '') { + let searchCloumn = { + "field": queryElement, + "value": this.form[queryElement].join(','), + "type": "IN" + } + selectData.push(searchCloumn); + } + } else { + requestData[queryElement] = this.form[queryElement]; + } + } + let timeSearchCloumn = { + "field": "check_date", + "value": this.time[0] + "至" + this.time[1], + "type": "DAT" + } + selectData.push(timeSearchCloumn) + requestData.query_condition = selectData; + danger_summary(requestData).then(res => { + if (res.data.ok == 1) { + this.tableData = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) + } + }) + }, + getCurrentMonthFirst() { + var date = new Date(); + date.setDate(1); + var month = parseInt(date.getMonth() + 1); + var day = date.getDate(); + if (month < 10) { + month = '0' + month + } + if (day < 10) { + day = '0' + day + } + + return date.getFullYear() + '-' + month + '-' + day; + }, + getCurrentMonthLast() { + var date = new Date(); + var currentMonth = date.getMonth(); + var nextMonth = ++currentMonth; + var nextMonthFirstDay = new Date(date.getFullYear(), nextMonth, 1); + var oneDay = 1000 * 60 * 60 * 24; + var lastTime = new Date(nextMonthFirstDay - oneDay); + var month = parseInt(lastTime.getMonth() + 1); + var day = lastTime.getDate(); + if (month < 10) { + month = '0' + month + } + if (day < 10) { + day = '0' + day + } + return date.getFullYear() + '-' + month + '-' + day; + }, + getRowNum(row, str) { + var data = row.items.find(n => n.x_label == str); + return data.value + }, + + showYHList(row,item){ + var searchData = {}; + searchData[this.form.x_axis] = item.x_label; + searchData[this.form.y_axis] = row.y_label; + let requestData = {}; + let selectData = [] + for (const queryElement in this.form) { + if (queryElement != "x_axis" && queryElement != "y_axis") { + if (this.form[queryElement] != null && this.form[queryElement] != '') { + let searchCloumn = { + "field": queryElement, + "value": this.form[queryElement].join(','), + "type": "IN" + } + selectData.push(searchCloumn); + } + } else { + requestData[queryElement] = this.form[queryElement]; + } + } + searchData.query_condition = selectData; + this.$router.push({ + path: "/summaryList", + query: {"searchData": searchData} + }) + } + } } </script> <style scoped> -.top{ +.top { padding: 10px 5px; background: #e4edf4; } + /*下拉框图标隐藏*/ -.whole_top .select /deep/ .el-input__suffix-inner .is-reverse{ +.whole_top .select /deep/ .el-input__suffix-inner .is-reverse { display: none; } -.whole_top .select /deep/ .el-input__suffix-inner .el-icon-arrow-up{ + +.whole_top .select /deep/ .el-input__suffix-inner .el-icon-arrow-up { display: none; } + /*设下拉框颜色*/ -.select /deep/.el-input__inner { +.select /deep/ .el-input__inner { border: 1px solid #c5dbec; font-weight: bold; background: #dfeffc; -/*.el-icon-circle-close*/ + /*.el-icon-circle-close*/ } -.whole_top .select /deep/.el-select .el-input__inner:focus { + +.whole_top .select /deep/ .el-select .el-input__inner:focus { color: #e6860b; } -.select /deep/ .is-focus .el-select__tags-text{ + +.select /deep/ .is-focus .el-select__tags-text { color: #000000; } + /*下拉框选值之后的样式*/ .select /deep/ .el-tag.el-tag--info { background-color: transparent;; @@ -225,24 +438,33 @@ font-weight: bold; color: #e6860b; } + /*placeholder颜色修改*/ .whole_top ::-webkit-input-placeholder { color: #000000; } + .whole_top :-moz-placeholder { color: #000000; } -.whole_top ::-moz-placeholder{ + +.whole_top ::-moz-placeholder { color: #000000; } + .whole_top :-ms-input-placeholder { color: #000000; } + /*日期*/ -/deep/ .el-date-editor .el-range-separator{ +/deep/ .el-date-editor .el-range-separator { width: auto; } -.btn{ +.clickSpan:hover{ + cursor: pointer; +} + +.btn { background-color: #034ea2; border: 1px solid #034ea2; } diff --git a/src/views/summaryPotentialSafetyHzards/summaryList.vue b/src/views/summaryPotentialSafetyHzards/summaryList.vue index d2de2de..9bab331 100644 --- a/src/views/summaryPotentialSafetyHzards/summaryList.vue +++ b/src/views/summaryPotentialSafetyHzards/summaryList.vue @@ -1,34 +1,34 @@ <template> <div class="app-container"> - - <el-table :data="tableData" style="width: 100%" @selection-change="changeBox"> + + <el-table :data="tableData" style="width: 100%" @selection-change="changeBox"> <el-table-column type="selection" width="55" align="center"></el-table-column> - <el-table-column prop="number" label="单位" align="center" width="120"></el-table-column> + <el-table-column prop="number" label="单位" align="center" width="120"></el-table-column> <el-table-column prop="number" label="编号" align="center" width="120"></el-table-column> <el-table-column prop="check_branch" label="检查部门" align="center" width="120"></el-table-column> <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="address" label="地点" align="center"> </el-table-column> - <el-table-column prop="ht_content" label="内容" align="center"> </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 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_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="ht_branch" label="责任单位" align="center"> </el-table-column> - <el-table-column prop="duty_officer" label="责任人" align="center"> </el-table-column> + <el-table-column prop="measure" label="整改措施" align="center"></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="ht_level" label="级别" align="center"> </el-table-column> --> </el-table-column> <el-table-column label="整改情况" align="center"> - <el-table-column prop="ACCOMPLISHTIME" label="完成时间" width="110px" align="center"> </el-table-column> - <el-table-column prop="CALLBACKRESULT" label="复查结果" align="center"> </el-table-column> - <el-table-column prop="CALLBACKPERSON" label="复查人" align="center"> </el-table-column> - <el-table-column prop="CALLBACKTIME" label="复查时间" width="120" align="center"></el-table-column> + <el-table-column prop="ACCOMPLISHTIME" label="完成时间" width="110px" align="center"></el-table-column> + <el-table-column prop="CALLBACKRESULT" label="复查结果" align="center"></el-table-column> + <el-table-column prop="CALLBACKPERSON" label="复查人" align="center"></el-table-column> + <el-table-column prop="CALLBACKTIME" label="复查时间" width="120" align="center"></el-table-column> </el-table-column> - <el-table-column label="隐患处理状态" align="center"> + <el-table-column label="隐患处理状态" align="center"> <template slot-scope="scope"> <span v-if="scope.row.step =='1'">初始状态</span> <span v-if="scope.row.step =='2'">整改中</span> @@ -38,13 +38,14 @@ </el-table-column> <el-table-column prop="DTRisk_bankId" label="是否关联" align="center"> <template slot-scope="scope"> - <span v-if="scope.row.DTRisk_bankId==0 || scope.row.DTRisk_bankId=='' || scope.row.DTRisk_bankId==null">未关联</span> + <span + v-if="scope.row.DTRisk_bankId==0 || scope.row.DTRisk_bankId=='' || scope.row.DTRisk_bankId==null">未关联</span> <span v-else>已关联</span> </template> </el-table-column> - <el-table-column prop="DTRisk_level" label="风险等级" align="center"> </el-table-column> - <el-table-column prop="warningLevel" label="初始警情" align="center"> </el-table-column> - <el-table-column prop="curWarningLevel" label="当前警情" align="center"> </el-table-column> + <el-table-column prop="DTRisk_level" label="风险等级" align="center"></el-table-column> + <el-table-column prop="warningLevel" label="初始警情" align="center"></el-table-column> + <el-table-column prop="curWarningLevel" label="当前警情" align="center"></el-table-column> <!-- <el-table-column prop="date" label="流程操作" align="center" fixed="right"> <template slot-scope="scope"> <el-button @click="handleClick(scope.row)" type="text" size="small">点击发送</el-button> @@ -70,34 +71,41 @@ > </el-pagination> </div> + <div class="btn"> + <el-button size="small" @click="close()">关闭</el-button> + </div> </div> </template> <script> -import {getPageList,delDanger} from "@/api/sgyhpczl/hiddenDangerRegistration"; -import {initJCBM ,initYHLX, initBC ,initJCLB ,initYHBM ,initYHJB,initLlr} from "@/api/sgyhpczl/initSelect"; +import {getPageList} from "@/api/sgyhpczl/safetyHazardAccount"; +import {initJCBM, initYHLX, initBC, initJCLB, initYHBM, initYHJB, initLlr} from "@/api/sgyhpczl/initSelect"; + export default { data() { return { - radio1:'超期整改', - selectedList:[], - reList:[{label:"未关联",value:0}], - llrList:[], + radio1: '超期整改', + selectedList: [], + reList: [{label: "未关联", value: 0}], + llrList: [], options: [], - form:{}, + form: {}, - JCDWList:[{label:"众泰煤焦化",value:0},{label:"上级单位",value:1}], - JCBMList:[], - YHLXList:[], - BCList:[], - JCLBList:[], - YHBMList:[], - YHJBList:[], + JCDWList: [{label: "众泰煤焦化", value: 0}, {label: "上级单位", value: 1}], + JCBMList: [], + YHLXList: [], + BCList: [], + JCLBList: [], + YHBMList: [], + YHJBList: [], tableData: [], - listQuery:{ - page:1, - limit:10, - form:{ - ht_community:"众泰煤焦化" + listQuery: { + + + page: 1, + limit: 10, + type: 0, + form: { + // ht_community:"众泰煤焦化" }, }, currentPage: 1, @@ -105,7 +113,13 @@ recordTotal: 0, }; }, - mounted(){ + mounted() { + console.log(this.$route.query.searchData); + var searchData = this.$route.query.searchData; + for (const argumentsKey in searchData) { + this.listQuery.form[argumentsKey] = searchData[argumentsKey]; + } + console.log(this.listQuery) this.getPageList() this.initYHLX() this.initYHJB() @@ -113,22 +127,23 @@ this.initJCLB() this.initLlr() this.initYHBM() + }, - methods:{ - deleteBatch(){ - if(this.selectedList==null ||this.selectedList.length==0 ){ - this.$message({type:'warning', message:'至少选中一条数据', duration:3000}) + methods: { + deleteBatch() { + if (this.selectedList == null || this.selectedList.length == 0) { + this.$message({type: 'warning', message: '至少选中一条数据', duration: 3000}) return } - var ids=this.selectedList.map((obj) => { + var ids = this.selectedList.map((obj) => { return obj.id }).join(",") - this.$confirm('确认删除吗','提示', { + this.$confirm('确认删除吗', '提示', { confirmButtonText: '确认', cancelButtonText: '取消', type: 'warning' }) - .then(()=>{ + .then(() => { delDanger(ids).then(() => { this.getPageList() this.$notify({ @@ -139,206 +154,186 @@ }); }); }) - .catch(error =>{ + .catch(error => { }); }, - changeBox(val){ + changeBox(val) { this.selectedList = [] val.forEach((item) => { this.selectedList.push(item) }) }, - initLlr(){ - initLlr().then(res=>{ - if (res.data.ok==1){ - this.llrList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + initLlr() { + initLlr().then(res => { + if (res.data.ok == 1) { + this.llrList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - initYHBM(){ - initYHBM().then(res=>{ - if (res.data.ok==1){ - this.YHBMList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + initYHBM() { + initYHBM().then(res => { + if (res.data.ok == 1) { + this.YHBMList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - changeJCDW(val){ - initJCBM(val).then(res=>{ - if (res.data.ok==1){ - this.JCBMList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + changeJCDW(val) { + initJCBM(val).then(res => { + if (res.data.ok == 1) { + this.JCBMList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - checkTime(){ - if(this.listQuery.form.check_dateStart!=null && this.listQuery.form.check_dateStart!=''){ - if(this.listQuery.form.check_dateEnd!=null && this.listQuery.form.check_dateEnd!=''){ - }else { - this.$message({type:'error', message:"请选择检查结束时间", duration:3000}) + checkTime() { + if (this.listQuery.form.check_dateStart != null && this.listQuery.form.check_dateStart != '') { + if (this.listQuery.form.check_dateEnd != null && this.listQuery.form.check_dateEnd != '') { + } else { + this.$message({type: 'error', message: "请选择检查结束时间", duration: 3000}) return } } - if(this.listQuery.form.check_dateEnd!=null && this.listQuery.form.check_dateEnd!=''){ - if(this.listQuery.form.check_dateStart!=null && this.listQuery.form.check_dateStart!=''){ - }else { - this.$message({type:'error', message:"请选择检查开始时间", duration:3000}) + if (this.listQuery.form.check_dateEnd != null && this.listQuery.form.check_dateEnd != '') { + if (this.listQuery.form.check_dateStart != null && this.listQuery.form.check_dateStart != '') { + } else { + this.$message({type: 'error', message: "请选择检查开始时间", duration: 3000}) return } } - if(this.listQuery.form.alter_timeStart!=null && this.listQuery.form.alter_timeStart!=''){ - if(this.listQuery.form.alter_timeEnd!=null && this.listQuery.form.alter_timeEnd!=''){ - }else { - this.$message({type:'error', message:"请选择限改结束时间", duration:3000}) + if (this.listQuery.form.alter_timeStart != null && this.listQuery.form.alter_timeStart != '') { + if (this.listQuery.form.alter_timeEnd != null && this.listQuery.form.alter_timeEnd != '') { + } else { + this.$message({type: 'error', message: "请选择限改结束时间", duration: 3000}) return } } - if(this.listQuery.form.alter_timeEnd!=null && this.listQuery.form.alter_timeEnd!=''){ - if(this.listQuery.form.alter_timeStart!=null && this.listQuery.form.alter_timeStart!=''){ - }else { - this.$message({type:'error', message:"请选择改开始时间", duration:3000}) + if (this.listQuery.form.alter_timeEnd != null && this.listQuery.form.alter_timeEnd != '') { + if (this.listQuery.form.alter_timeStart != null && this.listQuery.form.alter_timeStart != '') { + } else { + this.$message({type: 'error', message: "请选择改开始时间", duration: 3000}) return } } }, - getPageList(){ - this.listQuery.page=1 + getPageList() { + this.listQuery.page = 1 this.checkTime() - getPageList(this.listQuery).then(res=>{ - if (res.data.ok==1) { + getPageList(this.listQuery).then(res => { + if (res.data.ok == 1) { this.tableData = res.data.data.items - this.recordTotal=res.data.data.total - }else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + this.recordTotal = res.data.data.total + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - reset(){ - this.listQuery.form={ht_community:"众泰煤焦化"} + reset() { + this.listQuery.form = {ht_community: "众泰煤焦化"} this.getPageList() }, - handleSizeChange(val){ + handleSizeChange(val) { this.listQuery.limit = val this.getPageListForPagination(); }, - handleCurrentChange(val){ + handleCurrentChange(val) { this.listQuery.page = val this.getPageListForPagination(); }, - getPageListForPagination(){ + getPageListForPagination() { this.checkTime() - getPageList(this.listQuery).then(res=>{ - if (res.data.ok==1) { + getPageList(this.listQuery).then(res => { + if (res.data.ok == 1) { this.tableData = res.data.data.items - this.recordTotal=res.data.data.total - }else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + this.recordTotal = res.data.data.total + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - initYHLX(){ - initYHLX().then(res=>{ - if (res.data.ok==1){ - this.YHLXList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + initYHLX() { + initYHLX().then(res => { + if (res.data.ok == 1) { + this.YHLXList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - initYHJB(){ - initYHJB().then(res=>{ - if (res.data.ok==1){ - this.YHJBList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + initYHJB() { + initYHJB().then(res => { + if (res.data.ok == 1) { + this.YHJBList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - initBC(){ - initBC().then(res=>{ - if (res.data.ok==1){ - this.BCList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + initBC() { + initBC().then(res => { + if (res.data.ok == 1) { + this.BCList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - initJCLB(){ - initJCLB().then(res=>{ - if (res.data.ok==1){ - this.JCLBList=res.data.data - } else{ - this.$message({type:'error', message:res.data.msg, duration:3000}) + initJCLB() { + initJCLB().then(res => { + if (res.data.ok == 1) { + this.JCLBList = res.data.data + } else { + this.$message({type: 'error', message: res.data.msg, duration: 3000}) } }) }, - updateClick(row){ + updateClick(row) { this.$router.push({ - path:"/safetyedit" + path: "/safetyedit" }) }, - jump(){ + jump() { this.$router.push({ - path:"/hiddenDangerAdd" + path: "/hiddenDangerAdd" }) }, + // 发送隐患单跳转 - handleClick(row){ + base() { this.$router.push({ - path:"/hiddenDangerList?id="+row.id, - }) - }, - deleteClick(row){ - this.$confirm('确认删除吗','提示', { - confirmButtonText: '确认', - cancelButtonText: '取消', - type: 'warning' - }) - .then(()=>{ - delDanger(row.id).then(() => { - this.getPageList() - this.$notify({ - title: "成功", - message: "删除成功", - type: "success", - duration: 2000, - }); - }); - }) - .catch(error =>{ - }); - }, - base(){ - this.$router.push({ - path:"/Dualbase" + path: "/Dualbase" }) } } }; </script> <style scoped> - .inquire { - display: flex; - justify-content: left; - flex-wrap: wrap; - } - .inquire .el-form-item { - padding: 0 30px; - } - .title-center { - padding: 20px 0; - } - .btns { - background-color: #034ea2; - border: 1px solid #034ea2; - } - .title-center /deep/ .el-radio-button:first-child .el-radio-button__inner { +.inquire { + display: flex; + justify-content: left; + flex-wrap: wrap; +} + +.inquire .el-form-item { + padding: 0 30px; +} + +.title-center { + padding: 20px 0; +} + +.btns { + background-color: #034ea2; + border: 1px solid #034ea2; +} + +.title-center /deep/ .el-radio-button:first-child .el-radio-button__inner { border: none; } @@ -351,4 +346,8 @@ background-color: #034ea2; background-color: #034ea2; } -</style> \ No newline at end of file +.btn{ + text-align: center; + margin-top: 20px; +} +</style> diff --git a/src/views/troubleshooting/index.vue b/src/views/troubleshooting/index.vue index 8879d09..8bd210f 100644 --- a/src/views/troubleshooting/index.vue +++ b/src/views/troubleshooting/index.vue @@ -4,61 +4,27 @@ ref="form" :inline="true" class="inquire" - :model="form" + :model="listQuery.form" label-width="100px" > <el-form-item label="地点"> - <el-input - v-model="listQuery.form.address" - style="width: 202px" - placeholder="请输入内容" - ></el-input> + <el-input v-model="listQuery.form.ADDRESS" style="width: 202px" placeholder="请输入内容"></el-input> </el-form-item> <el-form-item label="主持人"> - <el-input - v-model="listQuery.form.ht_content" - style="width: 202px" - placeholder="请输入内容" - ></el-input> + <el-input v-model="listQuery.form.HOST" style="width: 202px" placeholder="请输入内容"></el-input> </el-form-item> <el-form-item label="召开时间"> <el-col :span="11"> - <el-date-picker - type="date" - placeholder="选择日期" - v-model="listQuery.form.check_dateStart" - style="width: 100%" - value-format="yyyy-MM-dd" - ></el-date-picker> + <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.Conference_TimeStart" style="width: 100%" value-format="yyyy-MM-dd"></el-date-picker> </el-col> <el-col style="text-align: center" :span="2">-</el-col> <el-col :span="11"> - <el-date-picker - type="date" - placeholder="选择日期" - v-model="listQuery.form.check_dateEnd" - style="width: 100%" - value-format="yyyy-MM-dd" - ></el-date-picker> + <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.Conference_TimeEnd" style="width: 100%" value-format="yyyy-MM-dd"></el-date-picker> </el-col> </el-form-item> <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" - icon="el-icon-refresh-right" - @click="reset()" - >重置</el-button - > + <el-button type="primary" class="btns" size="small" icon="el-icon-search" @click="getPageList()">查询</el-button> + <el-button type="primary" class="btns" size="small" icon="el-icon-refresh-right" @click="reset()">重置</el-button> </el-form-item> </el-form> <el-row class="title-center"> @@ -72,47 +38,30 @@ <div v-if="listQuery.type==0"> <el-col :span="10"> <el-row> - <el-col :span="7" :offset="7" style="text-align: right;" - ><span style="line-height: 36px; font-size: 14px; color: #606266;margin-right:10px;font-weight: bold;" - >请选择上报方式</span - ></el-col - > + <el-col :span="7" :offset="7" style="text-align: right;"> + <span style="line-height: 36px; font-size: 14px; color: #606266;margin-right:10px;font-weight: bold;">请选择上报方式</span> + </el-col> <el-col :span="10"> - <el-select - v-model="listQuery.form.check_main_branch" - placeholder="请选择" - @change="changeJCDW" - > - <el-option - v-for="item in JCDWList" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> - <el-button type="primary" class="btns" size="small" - >上报</el-button - > + <el-select v-model="listQuery.form.check_main_branch" placeholder="请选择" @change="changeUpType"> + <el-option v-for="item in upTypeList" :key="item.value" :label="item.label" :value="item.value"> + </el-option> + </el-select> + </el-col> + <el-col :span="6"> + <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.Conference_TimeStart" style="width: 100%" value-format="yyyy-MM-dd"></el-date-picker> + </el-col> + <el-col style="text-align: center" :span="2">至</el-col> + <el-col :span="6"> + <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.Conference_TimeEnd" style="width: 100%" value-format="yyyy-MM-dd"></el-date-picker> + </el-col> + <el-col :span="10"> + <el-button type="primary" class="btns" size="small">上报</el-button> </el-col> </el-row> </el-col> <el-col :span="4" style="text-align: right"> - <el-button - class="btns" - type="primary" - size="small" - icon="el-icon-plus" - >添加</el-button - > - <el-button - class="btns" - type="primary" - size="small" - icon="el-icon-close" - @click="sendBath()" - >批量删除</el-button - > + <el-button class="btns" type="primary" size="small" icon="el-icon-plus">添加</el-button> + <el-button class="btns" type="primary" size="small" icon="el-icon-close" @click="sendBath()">批量删除</el-button> </el-col> </div> <div v-if="listQuery.type==1"> @@ -128,73 +77,56 @@ </el-row> <el-row class="title-center"> <el-col :span="10"> - <el-radio-group v-model="radio1"> + <el-radio-group v-model="listQuery.form.CONFERENCE_PROFESSIONAL" @change="changeType2"> <el-radio-button label="0">全部</el-radio-button> - <el-radio-button label="1">综合</el-radio-button> - <el-radio-button label="2">生产</el-radio-button> - <el-radio-button label="3">设备</el-radio-button> - <el-radio-button label="4">电器</el-radio-button> - <el-radio-button label="5">仪表</el-radio-button> - <el-radio-button label="6">消防</el-radio-button> - <el-radio-button label="7">安全管理</el-radio-button> - <el-radio-button label="8">其他</el-radio-button> + <el-radio-button label="综合">综合</el-radio-button> + <el-radio-button label="生产">生产</el-radio-button> + <el-radio-button label="设备">设备</el-radio-button> + <el-radio-button label="电器">电器</el-radio-button> + <el-radio-button label="仪表">仪表</el-radio-button> + <el-radio-button label="消防">消防</el-radio-button> + <el-radio-button label="安全管理">安全管理</el-radio-button> + <el-radio-button label="其他">其他</el-radio-button> </el-radio-group> </el-col> </el-row> - <el-table - :data="tableData" - style="width: 100%" - @selection-change="changeBox" - > - <el-table-column - type="selection" - width="55" - align="center" - ></el-table-column> - <el-table-column - v-if="listQuery.type==2" - prop="number" - label="会议单位" - align="center" - width="120" - ></el-table-column> - <el-table-column - prop="number" - label="召开时间" - align="center" - width="120" - ></el-table-column> - <el-table-column - prop="check_branch" - label="地点" - align="center" - width="120" - ></el-table-column> - <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 - prop="checktype" - label="会议摘要" - align="center" - ></el-table-column> - <el-table-column prop="DTRisk_level" label="会议纪要" align="center"> - </el-table-column> - <el-table-column prop="date" v-if="listQuery.type==0" label="基本操作" align="center"> - <template slot-scope="scope"> - <el-button @click="updateClick(scope.row)" type="text" size="small">编辑</el-button> - <el-button @click="updateClick(scope.row)" type="text" size="small">保存</el-button> - <el-button @click="deleteClick(scope.row)" type="text" size="small">删除</el-button> - </template> - </el-table-column> + <el-table :data="tableData" style="width: 100%" @selection-change="handleSelectionChange"> + <el-table-column type="selection" width="55" align="center"></el-table-column> + <el-table-column v-if="listQuery.type==2" prop="communityname" label="会议单位" align="center" width="120"></el-table-column> + <el-table-column prop="CONFERENCE_TIME" label="召开时间" :formatter="formatColumnDate" align="center" width="120"></el-table-column> + <el-table-column prop="ADDRESS" label="地点" align="center" width="120"></el-table-column> + <el-table-column prop="HOST" label="主持人" align="center" width="120"></el-table-column> + <el-table-column prop="CONFERENCE_PROFESSIONAL" label="会议专业" align="center" width="120"></el-table-column> + <el-table-column prop="meeting_content" label="会议摘要" align="center"></el-table-column> + <el-table-column prop="realFileName" label="会议纪要" align="center"> + <template slot-scope="scope" > + <el-upload + class="upload-demo" + ref="upload" + v-if="listQuery.type==0" + :http-request="uploadSectionFile" + :on-preview="handlePreview" + :on-remove="handleRemove" + :file-list="fileList" + :before-upload="beforeUpload" + :auto-upload="true"> + <el-button slot="trigger" size="small" type="primary" class="btns">上传附件</el-button> + </el-upload> + <div v-else + v-for="item in scope.row.realFileName"> + <el-link type="primary" @click="downloadFile(subFile(item))"> + {{subFile(item)}} + </el-link> + </div> + </template> + </el-table-column> + <el-table-column prop="date" v-if="listQuery.type==0" label="基本操作" align="center"> + <template slot-scope="scope"> + <el-button @click="updateClick(scope.row)" type="text" size="small">编辑</el-button> + <el-button @click="updateClick(scope.row)" type="text" size="small">保存</el-button> + <el-button @click="deleteClick(scope.row)" type="text" size="small">删除</el-button> + </template> + </el-table-column> </el-table> <div style="text-align: right"> <el-pagination @@ -212,61 +144,43 @@ </div> </template> <script> -import { getPageList, analogy_export_do } from "@/api/sgyhpczl/oneFromanotherN"; +import {getPageList, dowloand_do} from "@/api/sgyhpczl/troubleshooting"; +import {uploadFile} from "@/api/sgyhpczl/hiddenDangerRectification"; + import { - initJCBM, initYHLX, - initJCLB, - initYHJB, } from "@/api/sgyhpczl/initSelect"; export default { - data() { - return { - listQuery: { - page: 1, - limit: 10, - type: 0, - form: {}, - }, - radio1: 0, - table1: true, - table2: false, + data() { + return { + listQuery: { + page: 1, + limit: 10, + type: 0,//type=0 待上报 type=1 已上报 type=2 上级公司会议 + form: { + CONFERENCE_PROFESSIONAL: '0' + }, + }, + table1: true, + table2: false, - currentPage: 1, - pageSize: 10, - recordTotal: 0, - XFDWList: [], - YHLBList: [], - YHJBList: [], - JCLBList: [], - tableData: [], - selectedList: [], - listLoading: false, - selfInspectVisible: false, - selfInspectForm: { - id: "", - markUserName: "", - markDate: "", - remark: "", - }, - selfInspectFormRules: { - markUserName: [ - { required: true, message: "自查人不能为空", trigger: "blur" }, - ], - markDate: [ - { required: true, message: "自查时间不能为空", trigger: "blur" }, - ], - }, - }; + currentPage: 1, + pageSize: 10, + recordTotal: 0, + YHLXList:[], + tableData: [], + selectedList: [], + listLoading: false, + fileList:[], + upTypeList:[{label:"按勾选上报",value:0},{label:"按时间上报",value:1}], + upTimeShow: false, + }; }, - mounted() { - this.getPageList(); - this.initJCLB(); - this.initXFDW(); - this.initYHJB(); - this.initYHLB(); - }, + mounted() { + this.getPageList(); + this.initYHLX(); + }, methods: { sendBath() { this.$router.push({ @@ -292,58 +206,20 @@ this.table2 = false; } }, - initXFDW() { - initJCBM(1).then((res) => { - if (res.data.ok == 1) { - this.XFDWList = res.data.data; - } else { - this.$message({ - type: "error", - message: res.data.msg, - duration: 3000, - }); - } - }); - }, - initYHLB() { - initYHLX().then((res) => { - if (res.data.ok == 1) { - this.YHLBList = res.data.data; - } else { - this.$message({ - type: "error", - message: res.data.msg, - duration: 3000, - }); - } - }); - }, - initYHJB() { - initYHJB().then((res) => { - if (res.data.ok == 1) { - this.YHJBList = res.data.data; - } else { - this.$message({ - type: "error", - message: res.data.msg, - duration: 3000, - }); - } - }); - }, - initJCLB() { - initJCLB().then((res) => { - if (res.data.ok == 1) { - this.JCLBList = res.data.data; - } else { - this.$message({ - type: "error", - message: res.data.msg, - duration: 3000, - }); - } - }); - }, + initYHLX(){ + initYHLX().then(res=>{ + if (res.data.ok==1){ + this.YHLXList=res.data.data + } else{ + this.$message({type:'error', message:res.data.msg, duration:3000}) + } + }) + }, + changeUpType(val){ + if (val == 1){ + this.upTimeShow = true + } + }, checkTime() { if ( this.listQuery.form.check_dateStart != null && @@ -429,33 +305,79 @@ this.listQuery.type = val; this.getPageList(); }, + changeType2(val){ + this.listQuery.form.CONFERENCE_PROFESSIONAL = val; + this.getPageList(); + }, handleSelectionChange(val) { this.selectedList = []; val.forEach((item) => { this.selectedList.push(item); }); }, - exportData() { - var requestData = this.listQuery; - //删除分页参数 - this.$delete(requestData, "page"); - this.$delete(requestData, "limit"); - analogy_export_do(requestData) - .then((res) => { - 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); - }); - }, + uploadSectionFile(param) { + let form = new FormData(); + var that = this; + form.append('file', param.file); + //隐患延期申请附件 + form.append('type', "0"); + uploadFile(form).then(res => { + var data = res.data; + if (data.ok) { + var fileName = data.data.fileName[0]; + if (!fileName.endsWith("a62b")) { + fileName = fileName + param.file.realFileName; + } + that.ruleForm.realFileName = that.ruleForm.realFileName + "," + fileName; + } + }).error(res => { + this.$message({ + type: 'error', + message: '附件上传失败,请重试!' + }); + }) + }, + downloadFile(path){ + let params = { + type: 1, + fileName: path, + }; + dowloand_do(params).then((res) => { + if (res.data.ok == 1) { + this.$notify({ + title: "成功", + message: res.data, + type: "success", + duration: 2000, + }); + } else { + this.$message({ + type: "error", + message: res.data.msg, + duration: 3000, + }); + } + }); + }, + subFile(fileName){ + return fileName.substring(fileName.indexOf("fileName=")+9) + }, + handleRemove(file, fileList) { + console.log(file, fileList) + }, + handlePreview(file) { + console.log(file) + }, + beforeUpload(file) { + var FileExt = file.name.replace(/.+\./, ""); + if (['jpg', 'png', 'bmp', 'gif', 'jpeg'].indexOf(FileExt.toLowerCase()) === -1) { + this.$message({ + type: 'warning', + message: '请上传后缀名为jpg、png、bmp、gif、jpeg的图片!' + }); + return false; + } + }, //日期格式转换 formatColumnDate(row, column) { // 获取单元格数据 -- Gitblit v1.9.2