| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261 |
- <template>
- <el-container class="rectify_reform">
- <el-main>
- <el-card class="box-card" :style="{'height': cardHeight + 'px','overflow-y':'auto'}">
- <!--20191226bytanghy-->
- <el-row :gutter="20" type="flex" justify="start" class="notice_title">
- <el-col :span="16">
- <el-form :inline="true" size="mini" class="demo-form-inline" label-width="80px">
- <el-form-item label="年度">
- <el-select
- v-model="addForm.year"
- clearable
- collapse-tags>
- <el-option
- v-for="item in yearList"
- :key="item.id"
- :label="item.year"
- :value="item.year">
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="接收单位">
- <!--<el-select v-model="addForm.rectOrgId" placeholder="请选择接收单位" ref="selectProvince" @change="select_handler_province">-->
- <!--<el-option-->
- <!--v-for="item in pidList"-->
- <!--:key="item.orgId"-->
- <!--:label="item.orgNm"-->
- <!--:value="item.orgId">-->
- <!--</el-option>-->
- <!--</el-select>-->
- <!--<el-form-item label="行政区名称">-->
- <addvSearch
- v-model="addForm.rectOrgId"
- :maxHeight='300'
- :maxWidth='250'
- :rootAddCode='curAdcode_long'
- :level='"3"'
- :nameOrCode="'name'"
- ></addvSearch>
- <!--</el-form-item>-->
- </el-form-item>
- <el-form-item label="督查类型">
- <el-select
- v-model="addForm.sndType "
- clearable
- collapse-tags>
- <el-option
- v-for="item in typesList"
- :key="item.code"
- :label="item.name"
- :value="item.code">
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="状态">
- <el-select
- v-model="addForm.state"
- clearable
- collapse-tags>
- <el-option label="已下发" value="1"></el-option>
- <el-option label="未下发" value="0"></el-option>
- <el-option label="已反馈" value="2"></el-option>
- <el-option label="审核通过" value="3"></el-option>
- <el-option label="驳回" value="4"></el-option>
- </el-select>
- </el-form-item>
- </el-form>
- </el-col>
- <el-col :span="8" style="text-align: end;">
- <el-button type="primary" @click="searchNotice">查询</el-button>
- </el-col>
- </el-row>
- <div>
- <el-table
- border
- ref="multipleTable"
- :height="tableHeight"
- :data="tableData"
- tooltip-effect="dark"
- style="width: 100%"
- v-loading="loading"
- >
- <el-table-column align="center" type="index" label="序号" min-width="25">
- <template slot-scope="scope">{{ (pageNum - 1) * pageSize + (scope.$index + 1) }}</template>
- </el-table-column>
- <el-table-column
- header-align="center"
- align="center"
- min-width="150"
- prop="sndTitle"
- label="通知标题"
- show-overflow-tooltip
- ></el-table-column>
- <el-table-column
- header-align="center"
- align="center"
- min-width="150"
- prop="sndType"
- label="督查类型"
- show-overflow-tooltip
- >
- <template slot-scope="scope">
- {{typesListFy(scope.row.sndType)}}
- </template>
- </el-table-column>
- <el-table-column
- header-align="center"
- align="center"
- min-width="200"
- prop="sndNub"
- label="文号"
- show-overflow-tooltip
- ></el-table-column>
- <el-table-column
- header-align="center"
- align="center"
- min-width="100"
- prop="rectOrgName"
- label="接收地区"
- show-overflow-tooltip
- ></el-table-column>
- <el-table-column
- header-align="center"
- align="center"
- min-width="100"
- prop="crrtTm"
- label="整改截止时间"
- show-overflow-tooltip
- >
- <template slot-scope="scope">
- <span>{{formatDate(scope.row.crrtTm)}}</span>
- </template>
- </el-table-column>
- <el-table-column
- header-align="center"
- align="center"
- min-width="100"
- prop="note"
- label="备注"
- show-overflow-tooltip
- ></el-table-column>
- <el-table-column
- header-align="center"
- align="center"
- min-width="160"
- prop="fileName"
- label="附件"
- show-overflow-tooltip
- >
- <template slot-scope="scope">
- <el-button type="text" size="mini" @click="previewAttachment(scope.row)">{{scope.row.fileName}}</el-button>
- </template>
- </el-table-column>
- <el-table-column
- header-align="center"
- align="center"
- min-width="100"
- prop="pjctSize"
- label="工程"
- ></el-table-column>
- <el-table-column
- header-align="center"
- align="center"
- min-width="100"
- prop="pblmSize"
- label="问题数"
- ></el-table-column>
- <el-table-column
- header-align="center"
- align="center"
- min-width="100"
- prop="state"
- label="状态"
- show-overflow-tooltip
- >
- <template slot-scope="scope">
- <p class="state_style">
- <span v-if="scope.row.state == 0" @click="stateClick(scope.row)">未下发</span>
- <span v-if="scope.row.state == 1" @click="stateClick(scope.row)">已下发</span>
- <span v-if="scope.row.state == 2" @click="stateClick(scope.row)">已反馈</span>
- <span v-if="scope.row.state == 3" @click="stateClick(scope.row)">审核通过</span>
- <span v-if="scope.row.state == 4" @click="stateClick(scope.row)">驳回</span>
- </p>
- </template>
- </el-table-column>
- <el-table-column
- align="center"
- min-width="300"
- label="操作"
- fixed="right"
- >
- <template slot-scope="scope">
- <span v-if="scope.row.state == '2'">
- <el-button type="primary" size="mini" @click.stop="lookOver(scope.row)">查看</el-button>
- <el-button type="success" size="mini" @click.stop="passRow(scope.row)">通过</el-button>
- <el-button type="warning" size="mini" @click.stop="rejectRow(scope.row)">驳回</el-button>
- </span>
- <span v-else>
- <el-button type="primary" size="mini" @click.stop="lookOver(scope.row)">查看</el-button>
- </span>
- </template>
- </el-table-column>
- </el-table>
- <!--<el-pagination-->
- <!--style="margin: 10px auto"-->
- <!--background-->
- <!--:pager-count="5"-->
- <!--:current-page="pageNum"-->
- <!--:page-size="pageSize"-->
- <!--:page-sizes="[10, 20, 30, 40, 50, 100]"-->
- <!--layout="sizes, total, prev, pager, next"-->
- <!--:total="tableData.length"-->
- <!--@current-change="handleCurrentChange"-->
- <!--@size-change="handleSizeChange"-->
- <!--></el-pagination>-->
- </div>
- </el-card>
- <el-dialog :title="titleText + '整改通知'" :visible.sync="dialogFormEditorVisible" :close-on-click-modal="false" width="55%" @close="closeDialog">
- <el-form :model="tongZhiForm" ref="tongZhiForm" :label-width="formLabelWidth">
- <el-row :gutter="20" type="flex" justify="start">
- <el-col :span="12">
- <el-form-item label="督查类型">
- <el-select v-model="tongZhiForm.sndType" placeholder="请选择督查类型"
- :disabled="zgButton" clearable>
- <el-option
- v-for="item in typesList"
- :key="item.code"
- :label="item.name"
- :value="item.code">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row :gutter="20" type="flex" justify="start">
- <el-col :span="12">
- <el-form-item label="通知标题">
- <el-input v-model="tongZhiForm.sndTitle" placeholder="请输入通知标题"
- :disabled="zgButton"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="整改截止时间" prop="planYr">
- <el-date-picker
- v-model="tongZhiForm.crrtTm"
- type="date"
- value-format="yyyy-MM-dd"
- placeholder="选择整改截止时间" :disabled="zgButton">
- </el-date-picker>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row :gutter="20" type="flex" justify="start">
- <el-col :span="12">
- <el-form-item label="文号">
- <el-input v-model="tongZhiForm.sndNub" placeholder="请输入文号"
- :disabled="zgButton"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="接收单位">
- <el-select
- v-model="tongZhiForm.rectOrgId" placeholder="请选择接收单位"
- :disabled="zgButton">
- <el-option
- v-for="item in pidList"
- :key="item.orgId"
- :label="item.orgNm"
- :value="item.orgId">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- </el-row>
- <el-form-item label="备注">
- <el-input type="textarea" rows="6" v-model="tongZhiForm.note" clearable
- placeholder="请输入备注" :disabled="zgButton"></el-input>
- </el-form-item>
- <el-form-item label="附件">
- <div v-show="ifFileList">
- <upload
- ref="uploadFile"
- :url="`/pdcApi/file/insert?bizId=`"
- accept=".doc,.docx,.pdf"
- @uploadOver="removeNewSupervision"
- ></upload>
- </div>
- <div v-show="!ifFileList">
- <el-table
- :data="fileListPiCi"
- style="width: 100%">
- <el-table-column
- prop="name"
- label="附件名称"
- min-width="200">
- </el-table-column>
- <el-table-column
- label="操作"
- min-width="150">
- <template slot-scope="scope">
- <el-button @click="deleteFiles(scope.row)" type="text" size="small" :disabled="zgButton">删除
- </el-button>
- <el-button type="text" size="small" @click="toPreview(scope.row)">预览</el-button>
- </template>
- </el-table-column>
- </el-table>
- </div>
- </el-form-item>
- </el-form>
- <div style="text-align: end;">
- <el-button type="primary" @click="tongZhiSave('tongZhiForm')" :disabled="zgButton">保 存</el-button>
- </div>
- <div v-if="titleText =='查看'">
- <el-divider></el-divider>
- <el-row :gutter="20" type="flex" style="margin-bottom: 10px;">
- <el-col :span="20">
- <el-form :inline="true" size="mini" class="demo-form-inline">
- <el-form-item label="工程">
- <el-input v-model="editorForm.name" clearable placeholder="请输入工程" style="width: 8vw"></el-input>
- </el-form-item>
- <el-form-item label="问题类别">
- <el-input v-model="editorForm.inspPblmName" clearable placeholder="请输入问题类别" style="width: 8vw"></el-input>
- </el-form-item>
- <el-form-item label="严重程度">
- <el-select v-model="editorForm.inspPblmCate" clearable placeholder="请选择">
- <el-option
- v-for="item in supervisionState"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- ></el-option>
- </el-select>
- </el-form-item>
- <!--<el-form-item label="是否典型">-->
- <!--<el-select v-model="editorForm.state" clearable style="width: 8vw">-->
- <!--<el-option label="未下发" value="0"></el-option>-->
- <!--<el-option label="已下发" value="1"></el-option>-->
- <!--<el-option label="已反馈" value="2"></el-option>-->
- <!--</el-select>-->
- <!--</el-form-item>-->
- </el-form>
- </el-col>
- <el-col :span="2" :offset=2 style="text-align: end;">
- <el-button @click="searchClick" type="success">查询</el-button>
- </el-col>
- </el-row>
- <div>
- <el-table
- :data="PblmList"
- :height="tableHeight1"
- style="width: 100%"
- border
- tooltip-effect="dark">
- <el-table-column
- prop="name"
- label="工程名称"
- min-width="50"
- show-overflow-tooltip>
- </el-table-column>
- <el-table-column
- prop="inspPblmName"
- label="问题类别"
- min-width="50"
- show-overflow-tooltip>
- </el-table-column>
- <el-table-column
- prop="inspPblmDesc"
- label="问题描述"
- min-width="50"
- show-overflow-tooltip>
- </el-table-column>
- <el-table-column
- label="严重程度"
- min-width="50">
- <template slot-scope="scope">
- <p v-if="scope.row.inspPblmCate == 0"><span class="inspPblmCate" style="background: #27C19F;">一般</span></p>
- <p v-if="scope.row.inspPblmCate == 1"><span class="inspPblmCate" style="background: #E6A23C;" >较重</span></p>
- <p v-if="scope.row.inspPblmCate == 2"><span class="inspPblmCate" style="background: #F56C6C;" >严重</span></p>
- <p v-if="scope.row.inspPblmCate == 3"><span class="inspPblmCate" style="background: #795548;">特别严重</span></p>
- </template>
- </el-table-column>
- <!--<el-table-column-->
- <!--label="是否典型"-->
- <!--min-width="50"-->
- <!--show-overflow-tooltip>-->
- <!--<template slot-scope="scope">-->
- <!--<p v-if="scope.row.ifCasePblm == 1">是</p>-->
- <!--<p v-if="scope.row.ifCasePblm == 0">否</p>-->
- <!--</template>-->
- <!--</el-table-column>-->
- <el-table-column
- prop="inspPblmTm"
- label="上报时间"
- min-width="50"
- show-overflow-tooltip>
- <template slot-scope="scope">
- <span v-if="scope.row.inspPblmTm">{{formatDate(scope.row.inspPblmTm)}}</span>
- </template>
- </el-table-column>
- <el-table-column
- prop="rectConc"
- label="整改情况"
- min-width="50"
- show-overflow-tooltip>
- <template slot-scope="scope">
- <span v-if="scope.row.rectConc == '1'">未整改</span>
- <span v-if="scope.row.rectConc == '2'">整改中</span>
- <span v-if="scope.row.rectConc == '3'">已整改</span>
- <span v-if="scope.row.rectConc == '4'">不具备整改条件</span>
- </template>
- </el-table-column>
- <el-table-column
- prop="chkState"
- label="审核状态"
- min-width="50"
- show-overflow-tooltip>
- <template slot-scope="scope">
- <span v-if="scope.row.chkState == '0'">未审核</span>
- <span v-if="scope.row.chkState == '1'">销号</span>
- <span v-if="scope.row.chkState == '2'">待复查</span>
- <span v-if="scope.row.chkState == '3'">驳回</span>
- </template>
- </el-table-column>
- <el-table-column
- label="操作"
- min-width="100">
- <template slot-scope="scope">
- <el-button type="text" size="small" @click="toViewRow(scope.row)">查看</el-button>
- <el-button type="text" size="small" @click="toCheckRow(scope.row)">审核</el-button>
- </template>
- </el-table-column>
- </el-table>
- </div>
- </div>
- </el-dialog>
- <!--一省一单上传文件-->
- <!--<el-dialog title="文件上传" :visible.sync="dialogFormVisible" :close-on-click-modal="false" width="40%">-->
- <!--<upload-->
- <!--ref="uploadFileRow"-->
- <!--:url="`/pdcApi/file/insert?bizId=`"-->
- <!--accept=".doc,.docx,.pdf"-->
- <!--@uploadOver="removeNewSupervision"-->
- <!--></upload>-->
- <!--<div slot="footer" class="dialog-footer">-->
- <!--<el-button @click="dialogFormVisible = false">取 消</el-button>-->
- <!--<el-button type="primary" @click="addFileSave">保 存</el-button>-->
- <!--</div>-->
- <!--</el-dialog>-->
- </el-main>
- <addPblm v-if="addPblmDialog" @closeDialog="closeDialogAddPblm" :RowId="RowId" :supervisionState="supervisionState" :objType="objType" :rectId="rectId"></addPblm>
- <!-- 详情弹框 -->
- <el-dialog
- class="outerDialog custom_dialog"
- title="问题详情"
- width="60%"
- :visible.sync="supervisionDetailsVisible"
- v-if="supervisionDetailsVisible"
- >
- <el-tabs v-model="activeName" type="card">
- <el-tab-pane label="问题详情" name="first">
- <supervisionDetailsXiangQing :problemId="rowPblId" :objType="objType"></supervisionDetailsXiangQing>
- </el-tab-pane>
- <el-tab-pane label="整改反馈" name="second">
- <supervision-details :listId="rowPblId" :rowId="rowId" :objType="objType"></supervision-details>
- </el-tab-pane>
- </el-tabs>
- <span slot="footer">
- <el-button style="margin-top:5px;" @click="supervisionDetailsVisible = false">返回</el-button>
- </span>
- </el-dialog>
- <!--审核弹窗-->
- <el-dialog
- title="整改审核"
- width="35%"
- :visible.sync="checkVisible"
- :close-on-click-modal="false">
- <el-form size="mini" label-width="120px" :model="checkForm">
- <el-form-item label="整改审核:">
- <el-select
- v-model="checkForm.chkState"
- clearable
- collapse-tags>
- <el-option label="未审核" value="0"></el-option>
- <el-option label="销号" value="1"></el-option>
- <el-option label="待复查" value="2"></el-option>
- <el-option label="驳回" value="3"></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="备注描述:">
- <el-input v-model="checkForm.note" type="textarea" :rows="5" autocomplete="off"></el-input>
- </el-form-item>
- </el-form>
- <span slot="footer">
- <el-button style="margin-top:5px;" @click="checkVisible = false">取消</el-button>
- <el-button type="primary" style="margin-top:5px;" @click="checkConfirm('checkForm')">确定</el-button>
- </span>
- </el-dialog>
- <!--通知状态步骤条-->
- <el-dialog
- title="通知状态"
- width="30%"
- :visible.sync="stateVisible"
- :close-on-click-modal="false">
- <steps :stateLogList="stateLogList"></steps>
- <span slot="footer">
- <el-button style="margin-top:5px;" @click="stateVisible = false">返回</el-button>
- </span>
- </el-dialog>
- </el-container>
- </template>
- <script>
- import request from '@util/gw_ajax_request'
- import {dateFormat} from '@util/gw_date';
- import {hostUrl} from '@util/global_variable.js'
- import addPblm from './addPblm'
- import steps from './steps'
- import addvSearch from "@widget/addvSearch.vue"
- export default {
- name: "rectificationNotice",
- props: [],
- data() {
- return {
- cardHeight: window.innerHeight - 120,
- currentPage: 1,
- tableData: [],
- tableHeight: window.innerHeight - 300,
- tableHeight1: window.innerHeight * .2,
- loading: false,
- pageSize: 20,
- pageNum: 1,
- dialogFaTitle: "",
- formLabelWidth: '120px',
- tongZhiForm:{
- "sndType": "",//发文类型 '1','小型水库', '2','人饮工程', '3','水毁工程', '4','工程建设', '5','地下水', '7','运行管理', '6','水闸', '9','特定飞检', '10','其他填报', '11','淤地坝', '12','取水口','13','重要水源地', '14','分水及管控', '15','节水管理与评价', '16','用水单位抽查'
- "sndTitle": "", //通知标题
- "sndNub": "", //通知文号
- "rectOrgId": "", //接收单位ID
- "rectOrgName": "", //接收单位名称
- "crrtTm": "", //整改截止时间
- "note": "", //备注
- "persId": "" //插入人ID
- },
- curStatus: '编辑',
- zgButton: false,
- zgfkDialog: false,
- ifMinistriesAgencies: false,
- groupId: '',
- addvcd: '',
- treeDataLists: [],
- defaultExpanded: [],
- defaultProps: {
- children: 'children',
- label: 'pnm'
- },
- distributeState: false, //false 未下发 true 已下发
- dialogFormVisible: false, //上传文件弹窗
- dialogFormEditorVisible: false,
- gwComFileList: [],
- yiShengyiDanList: [],
- PblmList:[],
- year: '',
- province: '',
- addForm: {
- "state":"",// 状态 0 未下发 1 已下发 2 已反馈 3审核通过 4 驳回 ,
- "sndOrgId":localStorage.getItem('currentOrgId'),// 单位 非必须
- "year":"",//年度
- "sndType": "",
- "rectOrgId": ""
- },
- editorForm: {
- "rectId":null,
- "name": null,
- "inspPblmName": null,//问题类别
- "inspPblmCate": null,//严重程度
- },
- yearList: [],
- pidList: [],
- sfType: [
- {
- label: '是',
- value: "1"
- },
- {
- label: '否',
- value: "2"
- }
- ],
- titleText: '新建',
- header: {
- 'persId': localStorage.getItem('userid'),
- 'accessToken': localStorage.getItem('accessToken')
- },
- fileList: [],
- provincesList: [],
- url: null,
- yiShengyiDanRowId: null,
- yearBatchSelect: false,
- ifFileList: true,
- fileListPiCi:[],
- PcData: null,
- typesList: [],
- tongZhiRowId: null,
- supervisionState: [
- {
- value: "0",
- label: "一般"
- },
- {
- value: "1",
- label: "较重"
- },
- {
- value: "2",
- label: "严重"
- },
- {
- value: "3",
- label: "特别严重"
- }
- ],
- supervision: [
- {
- value: "1",
- label: "是"
- },
- {
- value: "0",
- label: "否"
- }
- ],
- addPblmDialog: false,
- RowId: null,
- rectId: null,
- objType: null,
- supervisionDetailsVisible: false,
- currentProblemId: null,
- checkVisible: false,
- checkForm: {
- "id": "",
- "chkState": "",//审核状态 0 未审核 1 销号 2 待复查 3 驳回
- "note": ""
- },
- rowPblId: null,
- activeName: 'first',
- rowId: null,
- stateVisible: false,
- stateLogList: []
- }
- },
- components: {
- upload: resolve => {
- require(["@widget/uploadFile.vue"], resolve);
- },
- addPblm,
- //详情页
- supervisionDetails: resolve => {
- require(["./supervisionDetails_zgwt.vue"], resolve);
- },
- supervisionDetailsXiangQing: resolve => {
- require(["./supervisionDetails.vue"], resolve);
- },
- steps,
- addvSearch
- },
- computed: {
- persId() {
- return localStorage.getItem("userid")
- ? localStorage.getItem("userid")
- : "1098101939614724096";
- }
- },
- mounted() {
- this.$nextTick(() => {
- this.getYear();
- this.getByPid();
- this.getTypes();
- this.getNoticeList();
- })
- },
- methods: {
- getYear(){
- request.get(`/tac/pblm/rect/getYear/${this.persId}`)
- .then(res =>{
- if(res.success){
- this.yearList = res.data;
- }
- })
- .catch(err =>{
- console.log(err);
- })
- },
- getByPid(){
- request.get(`/dc/bis/insp/org/getByPid?pid=13`)
- .then(res =>{
- if(res.success){
- this.pidList = res.data;
- }
- })
- .catch(err =>{
- console.log(err);
- })
- },
- getTypes(){
- request.post(`/att/insp/type/getTypes`,{})
- .then(res =>{
- if(res.success){
- this.typesList = res.data;
- }
- })
- },
- //-----------------------------------
- formatDate(timestamp) {
- return timestamp ? dateFormat(timestamp, 'yyyy-MM-dd') : "";
- },
- changeYear(item) {
- let _self = this;
- request.get(`tac/pblm/rect/getBatchByYearPersId/${_self.persId}/${item}`)
- .then(res =>{
- _self.pcList = res.data;
- })
- .catch(err =>{
- console.log(err);
- })
- if (item == "" || item == undefined) {
- _self.pcList = null;
- _self.addForm.batch = "";
- }
- },
- lookOver(row) {
- this.titleText = "查看";
- this.ifFileList = false;
- this.RowId = row.id;
- this.objType = row.sndType;
- this.getPblmList();
- request.get(`/bis/insp/rect/${row.id}`)
- .then(res => {
- if (res.success) {
- this.tongZhiForm = res.data;
- this.tongZhiForm.crrtTm = dateFormat(res.data.crrtTm, "yyyy-MM-dd");
- this.dialogFormEditorVisible = true;
- if(res.data.fileName && res.data.filePath && res.data.id){
- this.ifFileList = false;
- this.fileListPiCi = [];
- this.fileListPiCi.push(
- Object.assign({},
- {'name':res.data.fileName},
- {'url':res.data.filePath},
- {'id':res.data.id},
- {'fileId':res.data.fileId}
- )
- );
- }
- this.zgButton = true;
- } else {
- this.$message.warning(res.message);
- }
- })
- .catch(err => {
- console.log(err);
- })
- },
- //通过
- passRow(row){
- let obj = {
- "id": row.id,//id
- "persId": this.persId,
- "state":"3"// 状态 0 未下发 1 已下发 2 已反馈 3审核通过 4驳回 ,
- };
- this.$confirm('(有问题整改未审核/被驳回)确定审核通过吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- request.post(`/bis/insp/rect/update`,obj)
- .then(res => {
- if (res.success) {
- this.$message.success("审核成功");
- this.getNoticeList();
- } else {
- this.$message.warning(res.message);
- }
- })
- .catch(err => {
- console.log(err);
- })
- }).catch(() => {
- this.$message({
- type: 'info',
- message: '已取消通过'
- });
- });
- },
- //驳回
- rejectRow(row){
- let obj = {
- "id": row.id,//id
- "persId": this.persId,
- "state":"4"// 状态 0 未下发 1 已下发 2 已反馈 3审核通过 4驳回 ,
- };
- this.$confirm('(问题已全部审核通过)确定驳回吗?, 是否继续?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- request.post(`/bis/insp/rect/update`,obj)
- .then(res => {
- if (res.success) {
- this.$message.success("驳回成功");
- this.getNoticeList();
- } else {
- this.$message.warning(res.message);
- }
- })
- .catch(err => {
- console.log(err);
- })
- }).catch(() => {
- this.$message({
- type: 'info',
- message: '已取消驳回',
- duration: 1000
- });
- });
- },
- uploadAfter(data){
- let obj = {
- "id": this.tongZhiRowId,//数据ID
- "fileId": data.id,//附件ID
- "fileName": data.fileName,//附件名称
- "filePath": data.filePath
- }
- request.post(`/bis/insp/rect/update`,obj)
- .then(res =>{
- if(res.success){
- this.dialogFormVisible = false;
- this.$message.success('上传成功');
- this.getNoticeList();
- }
- })
- .catch(err =>{
- })
- },
- //获取当前督查对象下问题List
- getPblmList() {
- let obj = {
- "rectId": this.RowId,//通知ID 必须
- "name": this.editorForm.name,//工程名称 非必传
- "inspPblmName": this.editorForm.inspPblmName,
- "inspPblmCate": this.editorForm.inspPblmCate
- }
- request.post(`/bis/insp/rect/pblm/findList`, obj)
- .then(res => {
- if (res.success) {
- this.$nextTick(() => {
- this.PblmList = res.data;
- this.provincesList = res.data;
- })
- } else {
- this.$message.warning(res.message);
- }
- })
- .catch(err => {
- console.log(err);
- })
- },
- addZgTz() {
- this.titleText = '新建';
- this.zgButton = false;
- this.yearBatchSelect = false;
- this.dialogFormEditorVisible = true;
- this.fileListPiCi = [];
- this.ifFileList = true;
- for (let obj in this.editorForm) {
- this.editorForm[obj] = '';
- }
- for (let obj in this.tongZhiForm) {
- this.tongZhiForm[obj] = '';
- }
- },
- editorRow(row) {
- this.PcData = row;
- this.titleText = '编辑';
- this.zgButton = false;
- this.fileListPiCi = [];
- this.ifFileList = true;
- request.get(`/bis/insp/rect/${row.id}`)
- .then(res => {
- if (res.success) {
- this.$nextTick(()=>{
- this.tongZhiForm = res.data;
- this.tongZhiForm.crrtTm = dateFormat(res.data.crrtTm, "yyyy-MM-dd");
- this.dialogFormEditorVisible = true;
- if(res.data.fileName && res.data.filePath && res.data.id){
- this.ifFileList = false;
- this.fileListPiCi.push(
- Object.assign({},
- {'name':res.data.fileName},
- {'url':res.data.filePath},
- {'id':res.data.id},
- {'fileId':res.data.fileId}
- )
- );
- }
- })
- } else {
- this.$message.warning(res.message);
- }
- })
- .catch(err => {
- console.log(err);
- })
- },
- //添加问题
- addPblmRow(row){
- this.RowId = row.id;
- this.rectId = row.rectOrgId;
- this.objType = row.sndType;
- this.addPblmDialog = true;
- },
- deleteRow(row) {
- this.$confirm('确定要删除该数据, 是否继续?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- request.post(`/bis/insp/rect/delete/${row.id}`)
- .then(res => {
- if (res.success) {
- this.$message.success("删除成功");
- this.getNoticeList();
- } else {
- this.$message.warning(res.message);
- }
- })
- .catch(err => {
- console.log(err);
- })
- }).catch(() => {
- this.$message({
- type: 'info',
- message: '已取消删除'
- });
- });
- },
- xiaFaClick(row) {
- this.$confirm('下发后通知内容无法更改?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- let obj = {
- "id": row.id,
- "persId": this.persId,
- "state": "1"
- }
- request.post(`/bis/insp/rect/update`, obj)
- .then(res => {
- if (res.success) {
- this.$message.success("下发成功");
- this.getNoticeList();
- } else {
- this.$message.warning(res.message);
- }
- })
- }).catch(() => {
- this.$message({
- type: 'info',
- message: '已取消下发'
- });
- });
- },
- //通知List
- getNoticeList() {
- this.loading = true;
- let obj = this.addForm;
- request.post(`/bis/insp/rect/province/findList`, obj)
- .then(res => {
- if (res.success) {
- this.loading = false;
- this.tableData = res.data;
- }
- })
- .catch(err => {
- console.log(err);
- })
- },
- // 通知保存
- tongZhiSave(formName) {
- if (this.titleText == '新建') {
- this.$refs[formName].validate((valid) => {
- if (valid) {
- let obj = this.tongZhiForm;
- obj.persId = localStorage.getItem("userid");
- request.post('/bis/insp/rect/add', obj).then((res) => {
- if (res.success) {
- this.tongZhiRowId = res.data.id;
- this.$nextTick(function () {
- if (this.$refs.uploadFile.submitUpload(res.data.id)) {
- this.removeNewSupervision();
- this.$message.success('新建通知成功');
- }
- })
- } else {
- this.$message.warning(res.message);
- }
- })
- } else {
- console.log('error submit!!');
- return false;
- }
- });
- } else if (this.titleText == '编辑') {
- this.$refs[formName].validate((valid) => {
- if (valid) {
- let obj = this.tongZhiForm;
- obj.persId = localStorage.getItem("userid");
- request.post('/bis/insp/rect/update', obj).then((res) => {
- if (res.success) {
- this.tongZhiRowId = res.data.id;
- this.$nextTick(() => {
- if (this.$refs.uploadFile.submitUpload(res.data.id)) {
- this.removeNewSupervision();
- this.$message.success('编辑通知成功');
- }
- })
- } else {
- this.$message.warning(res.message);
- }
- })
- } else {
- console.log('error submit!!');
- return false;
- }
- });
- }
- },
- searchClick() {
- this.$nextTick(() => {
- this.getPblmList();
- })
- },
- // dialog通知弹窗关闭
- closeDialog(){
- this.getNoticeList();
- },
- removeNewSupervision(arg) {
- if(arg){
- console.log(arg);
- let data = arg[arg.length - 1];
- this.uploadAfter(data);
- }
- },
- // 文件预览
- rowPreview(row){
- window.open(`${hostUrl}${row.filePath}`, "_blank");
- },
- //批次预览
- toPreview(row) {
- window.open(`${hostUrl}${row.url}`, "_blank");
- },
- //删除批次附件
- deleteFiles(row) {
- this.$confirm('确定删除该附件吗?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- request.post(`/bis/insp/rect/setFileNull/${row.fileId}`).then(res => {
- if (res.success) {
- this.fileListPiCi = [];
- this.ifFileList = true;
- this.$message.success('附件删除成功');
- }
- })
- }).catch(() => {
- })
- },
- //删除下发附件
- deleteFile(rowId){
- request.post(`/tac/pblm/rect/org/setFileNull/${rowId}`)
- .then(res =>{
- if(res.success){
- this.$message({
- type: 'success',
- message: '删除成功'
- })
- this.getYiShengYiDanList();
- }else{
- this.$message.warning(res.message);
- }
- })
- },
- //文件删除
- rowDelete(row){
- return this.$confirm(`确定移除 ${row.fileName}?`).then(() => {
- if(row.fileId){
- request.post(`/file/${row.fileId}`).then((res) => {
- if (res.success) {
- this.deleteFile(row.id);
- } else {
- this.$alert("删除失败!", '提示', {
- confirmButtonText: '确定',
- type: 'warning'
- })
- }
- })
- }else{
- this.$message.warning('fileId不能为空');
- }
- }).catch(() => {
- this.$message({
- type: 'info',
- message: '已取消删除'
- });
- });
- }
- ,
- //通知查询
- searchNotice(){
- this.getNoticeList();
- },
- select_handler_province() {
- this.$nextTick(() => {
- this.tongZhiForm.rectOrgName = this.$refs.selectProvince.selectedLabel;
- });
- },
- typesListFy(row){
- if(row){
- this.typesList.forEach(ele => {
- if (ele.code == row) {
- row = ele.name;
- }
- });
- return row;
- }else{
- return '';
- }
- },
- // 通知表格里附件预览
- previewAttachment(row){
- window.open(`${hostUrl}${row.filePath}`, "_blank");
- },
- closeDialogAddPblm(){
- this.addPblmDialog = false;
- },
- //问题查看
- toViewRow(row){
- this.rowId = row.id;
- this.rowPblId = row.pblmId;
- this.supervisionDetailsVisible = true;
- },
- // 审核
- toCheckRow(row){
- request.get(`/bis/insp/rect/pblm/${row.id}`)
- .then(res =>{
- if(res.success){
- this.checkForm.id = res.data.id;
- this.checkForm.chkState = res.data.chkState;
- this.checkForm.note = res.data.note;
- this.checkVisible = true;
- }else{
- this.$message.warning(res.message);
- }
- })
- .catch(err =>{
- console.log(err);
- })
- },
- // 审核确定
- checkConfirm(){
- request.post(`/bis/insp/rect/pblm/update`,this.checkForm)
- .then(res =>{
- if(res.success){
- this.checkVisible = false;
- this.$message.success("保存成功");
- this.getPblmList();
- }else{
- this.$message.warning(res.message);
- }
- })
- },
- stateClick(row){
- if(row.bisInspRectLogList.length){
- this.stateVisible = true;
- this.stateLogList = row.bisInspRectLogList;
- }else{
- this.$message.warning('暂无通知状态信息');
- }
- }
- },
- watch: {
- // 'addForm': {
- // deep: true,
- // handler: function () {
- // this.getNoticeList();
- // }
- // }
- }
- }
- </script>
- <style lang="scss">
- .rectify_reform{
- .inspPblmCate{
- padding: 2px 10px;
- color: #fff;
- -webkit-border-radius: 10px;
- -moz-border-radius: 10px;
- border-radius: 10px;
- }
- .notice_title{
- .el-input--mini .el-input__inner,.el-select-dropdown__list{
- width: 8vw;
- }
- }
- .rowClassP{
- span {
- color: #3399ff;
- margin-left: 15px;
- cursor: pointer;
- }
- span:first-child{
- cursor: default;
- margin-left: 0;
- color: rgb(51, 51, 51);
- }
- span:last-child{
- color: red;
- }
- }
- .state_style{
- span{
- color: blue;
- cursor: pointer;
- &:hover{
- border-bottom: 1px solid blue;
- }
- }
- }
- }
- </style>
|