| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354 |
- <template>
- <div class="dctb_sh">
- <el-container>
- <el-aside
- width="320px"
- style="border-right:2px solid #d5d5ff;float:left"
- :style="{'max-height':testHeight+'px','height':testHeight+'px'}"
- >
- <div
- class="tree"
- style="height: 100%"
- width="100%"
- overflow="auto"
- display="inline-flex;"
- >
- <el-tree
- :highlight-current="true"
- style="height:100%;"
- :data="treeData"
- node-key="id"
- show-checkbox
- :expand-on-click-node="false"
- @check-change="handleCheckChange"
- ref="jigou_tree"
- >
- <div class="custom-tree-node" slot-scope="{ node, data }">
- <span style="float:left;">{{data.name}}</span>
- </div>
- </el-tree>
- </div>
- </el-aside>
- <el-main id="dxdcListMain" style="padding:5px 20px;">
- <div style="line-height: 50px">
- <!-- <h3 style="text-align: center;">水毁修复项目暗访情况表 -->
- <!-- <el-button type="primary" @click="toAddMember('添加')" style="float: right;margin: 10px 0 10px;"><i class="el-icon-circle-plus"></i> 添加</el-button> -->
- <!-- </h3> -->
- </div>
- <!-- <div>
- <el-form :inline="true" class="demo-form-inline" size="mini">
- <el-form-item label="行政区">
- <el-select v-model="searchObj.locAd" clearable filterable placeholder="请选择">
- <el-option
- v-for="item in provList"
- :key="item.adCode"
- :label="item.adName"
- :value="item.adCode">
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="项目名称">
- <el-input style="width:160px;" v-model="searchObj.wtdstNm" clearable placeholder="输入项目名称"></el-input>
- </el-form-item>
- <el-form-item label="项目进度">
- <el-select v-model="searchObj.wkstate" clearable placeholder="请选择" >
- <el-option
- v-for="item in TrackProgress"
- :key="item.value"
- :label="item.label"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="督查状态">
- <el-select v-model="searchObj.state" clearable placeholder="督查状态">
- <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-item>
- <el-button type="primary" @click="onSubmit">查询</el-button>
- </el-form-item>
- </el-form>
- </div>-->
- <el-row :gutter="10" style="margin: 5px -5px 0px -5px ;">
- <el-col :span="24">
- <el-form
- :inline="true"
- size="mini"
- class="demo-form-inline"
- style="padding-left: 10px;"
- >
- <el-form-item label="督查状态">
- <el-select v-model="searchObj.state" clearable placeholder="督查状态">
- <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-item label="检查单位">
- <el-select
- v-model="searchObj.chkComId"
- clearable
- placeholder="检查单位"
- >
- <el-option
- v-for="item in lyjg1"
- :key="item.id"
- :label="item.pnm"
- :value="item.id"
- ></el-option>
- </el-select>
- </el-form-item> -->
- <!-- <el-form-item label="行政区名称"> -->
- <!-- <el-input v-model="searchObj.adNm" clearable placeholder="行政区名称" style="width:130px"></el-input> -->
- <!-- <addvSearch
- style="width:130px"
- v-model="searchObj.adNm"
- :maxHeight="300"
- :maxWidth="250"
- :rootAddCode='"000000000000"'
- :level='"3"'
- :nameOrCode="'name'"
- ></addvSearch>
- </el-form-item> -->
- <el-form-item label="水毁名称">
- <el-input
- v-model="searchObj.wtdstNm"
- clearable
- placeholder="请输入水毁名称"
- style="width:130px"
- ></el-input>
- </el-form-item>
- <el-form-item label="督查时间">
- <div style="display: flex;">
- <el-date-picker
- v-model="dateRange"
- type="daterange"
- value-format="yyyy-MM-dd"
- style="width:100%"
- range-separator="至"
- start-placeholder="开始日期"
- end-placeholder="结束日期"
- ></el-date-picker>
- </div>
- </el-form-item>
- <el-form-item>
- <el-button type="primary" @click="onSubmit" icon="el-icon-search">查询</el-button>
- </el-form-item>
- </el-form>
- </el-col>
- </el-row>
- <el-table
- :data="wtdsTrackList"
- :height="dxdcMainHeight+'px'"
- style="width: 100%"
- border
- tooltip-effect="dark"
- >
- <el-table-column align="center" type="index" label="序号" min-width="45">
- <template
- slot-scope="scope"
- >{{ (pageIndex - 1) * pageSize + (scope.$index + 1) }}</template>
- </el-table-column>
- <el-table-column
- align="center"
- prop="province"
- label="省" v-if="isXj"
- show-overflow-tooltip
- min-width="120"
- ></el-table-column>
- <el-table-column
- align="center"
- prop="city"
- :label="ownAdName"
- show-overflow-tooltip
- min-width="120"
- ></el-table-column>
- <el-table-column
- align="center"
- show-overflow-tooltip
- prop="county"
- label="县(区)"
- min-width="120"
- ></el-table-column>
- <!-- <el-table-column
- align="center"
- show-overflow-tooltip
- prop="chkCom"
- label="检查单位"
- min-width="120"
- ></el-table-column> -->
- <!-- <el-table-column
- align="center"
- show-overflow-tooltip
- prop="groupNm"
- label="所在组"
- min-width="100"
- ></el-table-column> -->
- <el-table-column
- align="center"
- sortable
- show-overflow-tooltip
- prop="intm"
- label="暗访日期"
- min-width="110"
- ></el-table-column>
- <el-table-column
- prop="wtdstNm"
- align="center"
- label="项目名称"
- show-overflow-tooltip
- min-width="200"
- ></el-table-column>
- <el-table-column prop="state" label="督查状态" align="center" min-width="130">
- <template slot-scope="scope">
- <span
- style="padding: 3px 10px;background:#FBB56D;border-radius:15px;color:rgba(255,255,255,1)"
- v-if="scope.row.state == 1"
- >督查中</span>
- <span
- style="padding: 3px 10px;background:#63C25E;border-radius:15px;color:rgba(255,255,255,1)"
- v-else-if="scope.row.state == 2"
- >已督查</span>
- <span
- style="padding: 3px 10px;background:#F56C6C;border-radius:15px;color:rgba(255,255,255,1)"
- v-else
- >未督查</span>
- </template>
- </el-table-column>
- <el-table-column
- align="center"
- prop="wtdstType"
- label="项目类别"
- min-width="150"
- show-overflow-tooltip
- ></el-table-column>
- <!-- <el-table-column
- prop="engScal"
- label="县(市、区)" v-if="isXj"
- width="180">
- </el-table-column>-->
- <el-table-column
- align="center"
- prop="mangNm"
- label="主管单位"
- show-overflow-tooltip
- min-width="150"
- ></el-table-column>
- <el-table-column
- align="center"
- prop="loac"
- label="位置"
- show-overflow-tooltip
- min-width="150"
- ></el-table-column>
- <el-table-column
- align="center"
- prop="disContent"
- label="水毁情况"
- show-overflow-tooltip
- min-width="500"
- ></el-table-column>
- <el-table-column align="center" prop="wkstate" label="项目进度" min-width="90">
- <template slot-scope="scope">
- <span>{{scope.row.wkstate == '2' ? '待开工' : scope.row.wkstate == '1' ? '正修复' : scope.row.wkstate == '0' ? '已修复' : scope.row.wkstate}}</span>
- </template>
- </el-table-column>
- <el-table-column align="center" prop="planTm" label="计划完成日期" min-width="160"></el-table-column>
- <el-table-column align="center" prop="problmNum" label="问题数量" min-width="90"></el-table-column>
- <el-table-column
- align="center"
- prop="adNm"
- label="建议措施"
- show-overflow-tooltip
- min-width="160"
- ></el-table-column>
- <el-table-column
- align="center"
- prop="note"
- label="备注"
- show-overflow-tooltip
- min-width="160"
- ></el-table-column>
- <el-table-column align="center" label="操作" min-width="160" fixed="right">
- <template slot-scope="scope">
- <el-button
- size="mini"
- type="success"
- plain
- @click="sHInfo(scope.row,'dcInfo')"
- >查看</el-button>
- </template>
- </el-table-column>
- </el-table>
- <el-footer id="dxdcFooter" style="margin-top: 10px">
- <el-pagination
- background
- @current-change="handleCurrentChange"
- @size-change="handleSizeChange"
- :pager-count="5"
- :current-page.sync="pageIndex"
- :page-size="pageSize"
- :page-sizes="[10, 20, 30, 40, 50, 100]"
- layout="sizes, total, prev, pager, next"
- :total="total"
- ></el-pagination>
- </el-footer>
- </el-main>
- </el-container>
- <!-- 添加/编辑人员弹窗 -->
- <el-dialog :title="this.editObj.wtdstNm + ' 督查填报'" :visible.sync="dialogFormVisible">
- <el-container style="height:660px;">
- <el-main style="border:1px solid #d5d5ff;margin-left:5px;padding:0px;">
- <p style="font-weight:bolder;background-color:#d5d5ff;padding:3px;">信息填报</p>
- <el-form :model="addObj" :label-width="formLabelWidth">
- <p style=";margin-top:10px;margin-bottom: 10px">
- <i class="el-icon-caret-right"></i>
- <span style="width:120px;padding-left: 10px">基本信息</span>
- <el-button
- type="danger"
- plain
- style="float: right;margin-right: 20px"
- @click="dialogFormVisible2 = true"
- >纠错</el-button>
- <el-button
- type="warning"
- style="float: right;margin-right: 10px"
- @click="recentAppearance"
- >近期面貌</el-button>
- <el-button type="warning" style="float: right;" @click="imageClick">影像</el-button>
- </p>
- <el-form-item label="项目名称" :rules="{required: true}">
- <el-input
- v-model="editObj.wtdstNm"
- autocomplete="off"
- disabled
- style="width:70%;"
- ></el-input>
- </el-form-item>
- <el-form-item label="项目类别" :rules="{required: true}">
- <el-input
- v-model="editObj.wtdstType"
- autocomplete="off"
- disabled
- style="width:70%;"
- ></el-input>
- </el-form-item>
- <el-form-item label="所在地点" :rules="{required: true}">
- <el-input
- v-model="editObj.locNm"
- autocomplete="off"
- disabled
- style="width:70%;"
- ></el-input>
- </el-form-item>
- <p style=";margin-top:10px;margin-bottom: 10px">
- <i class="el-icon-caret-right"></i>
- <span style="width:120px;padding-left: 10px">调研信息</span>
- <span class="hrs"></span>
- </p>
- <el-form-item label="主管单位" :rules="{required: true}">
- <el-input v-model="addObj.mangNm" autocomplete="off" style="width:70%;"></el-input>
- </el-form-item>
- <el-form-item label="位置" :rules="{required: true}">
- <el-input v-model="addObj.loac" autocomplete="off" style="width:70%;"></el-input>
- </el-form-item>
- <el-form-item label="水毁情况" :rules="{required: true}">
- <el-input
- v-model="addObj.disContent"
- :rows="3"
- type="textarea"
- autocomplete="off"
- style="width:70%;"
- :readonly="isReadonly"
- ></el-input>
- </el-form-item>
- <el-form-item label="项目进度" :rules="{required: true}">
- <el-select
- v-model="addObj.wkstate"
- placeholder="请选择"
- style="width:70%;"
- >
- <el-option
- v-for="item in TrackProgress"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- ></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="计划完成日期" :rules="{required: true}">
- <el-date-picker
- v-model="addObj.planTm"
- type="date"
- placeholder="选择日期"
- value-format="yyyy-MM-dd"
- style="width:70%;"
- ></el-date-picker>
- </el-form-item>
- <el-form-item label="上报问题">
- <!-- <el-tag type="warning" style="cursor:pointer;" ><p @click="dialogFormVisible4 = true;">问题数:{{addObj.problmNum}}</p></el-tag> -->
- <i
- class="el-icon-circle-plus"
- @click="dialogFormVisible3 = true;"
- style="color: #ff6100;cursor: pointer;"
- ></i>
- <!-- <el-input v-model="addObj.problmNum" autocomplete="off" style="width:70%;"></el-input> -->
- </el-form-item>
- <el-form-item label="建议措施">
- <el-input
- type="textarea"
- :rows="2"
- v-model="addObj.adNm"
- autocomplete="off"
- style="width:70%;"
- ></el-input>
- </el-form-item>
- <el-form-item label="备注">
- <el-input
- type="textarea"
- :rows="2"
- v-model="addObj.note"
- autocomplete="off"
- style="width:70%;"
- ></el-input>
- </el-form-item>
- <!-- <el-form-item label="记录人员">
- <el-input v-model="addObj.recPers2" autocomplete="off" style="width:70%;"></el-input>
- </el-form-item>-->
- </el-form>
- </el-main>
- </el-container>
- <div slot="footer" class="dialog-footer">
- <el-button @click="dialogFormVisible = false">取 消</el-button>
- <el-button type="primary" @click="addMember">确 定</el-button>
- </div>
- </el-dialog>
- <el-dialog :title="''" :visible.sync="dialogFormVisible2">
- <el-container style="height:200px;">
- <el-main style="border:1px solid #d5d5ff;margin-left:5px;padding:0px;">
- <el-form :model="addObj" :label-width="formLabelWidth">
- <p style=";margin-top:10px;margin-bottom: 10px">
- <i class="el-icon-caret-right"></i>
- <span style="width:120px;padding-left: 10px">基本信息</span>
- <span class="hrs"></span>
- </p>
- <el-form-item label="项目名称" :rules="{required: true}">
- <el-input
- v-model="editObj.wtdstNm"
- autocomplete="off"
- style="width:70%;"
- ></el-input>
- </el-form-item>
- <el-form-item label="项目类别" :rules="{required: true}">
- <el-input
- v-model="editObj.wtdstType"
- autocomplete="off"
- style="width:70%;"
- ></el-input>
- </el-form-item>
- <el-form-item label="所在地点" :rules="{required: true}">
- <el-input v-model="editObj.locNm" autocomplete="off" style="width:70%;"></el-input>
- </el-form-item>
- </el-form>
- </el-main>
- </el-container>
- <div slot="footer" class="dialog-footer">
- <el-button @click="dialogFormVisible2 = false">取 消</el-button>
- <el-button type="primary" @click="addBaseinfo">确 定</el-button>
- </div>
- </el-dialog>
- <el-dialog :title="''" :visible.sync="dialogFormVisible3">
- <el-container style="height:400px;">
- <el-main style="border:1px solid #d5d5ff;margin-left:5px;padding:0px;">
- <el-form :model="addObj" :label-width="formLabelWidth">
- <p style=";margin-top:10px;margin-bottom: 10px">
- <i class="el-icon-caret-right"></i>
- <span style="width:120px;padding-left: 10px">新增问题</span>
- <span class="hrs"></span>
- </p>
- <el-form-item label="问题类型" :rules="{required: true}">
- <el-select v-model="pblmTypeId" placeholder="请选择">
- <el-option
- v-for="item in options"
- :key="item.guid"
- :label="item.inspPblmsName"
- :value="item.guid"
- ></el-option>
- </el-select>
- </el-form-item>
- <!-- <el-form-item label="严重程度" >
- <el-radio v-model="problemForm.inspPblmCate" label="0">一般</el-radio>
- <el-radio v-model="problemForm.inspPblmCate" label="1">较重</el-radio>
- <el-radio v-model="problemForm.inspPblmCate" label="2">严重</el-radio>
- </el-form-item>-->
- <el-form-item label="典型问题">
- <el-radio v-model="problemForm.ifCasePblm" label="1">是</el-radio>
- <el-radio v-model="problemForm.ifCasePblm" label="0">否</el-radio>
- </el-form-item>
- <el-form-item label="发现问题" :rules="{required: true}">
- <el-select v-model="pblmsTypeId" placeholder="请选择">
- <el-option
- v-for="item in options1"
- :key="item.guid"
- :label="item.inspPblmsName"
- :value="item.guid"
- ></el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="问题描述" :rules="{required: false}">
- <el-input
- type="textarea"
- v-model="problemForm.inspPblmDesc"
- autocomplete="off"
- style="width:70%;"
- ></el-input>
- </el-form-item>
- <el-form-item label="建议措施" :rules="{required: false}">
- <el-input
- type="textarea"
- v-model="problemForm.note"
- autocomplete="off"
- style="width:70%;"
- ></el-input>
- </el-form-item>
- <el-form-item label="相关文件" :rules="{required: false}">
- <upload
- ref="uploadFile"
- :url="`/pdcApi/file/insert?bizId=`"
- @uploadOver="removeNewSupervision"
- ></upload>
- </el-form-item>
- </el-form>
- </el-main>
- </el-container>
- <div slot="footer" class="dialog-footer">
- <el-button @click="dialogFormVisible3 = false">取 消</el-button>
- <el-button type="primary" @click="addProblem">确 定</el-button>
- </div>
- </el-dialog>
- <el-dialog :title="''" :visible.sync="dialogFormVisible4">
- <el-container style="height:400px;">
- <el-main style="border:1px solid #d5d5ff;margin-left:5px;padding:0px;">
- <el-table
- :data="tableData"
- style="width: 100%;max-height:92%;overflow:auto;"
- height="500"
- >
- <el-table-column
- align="center"
- show-overflow-tooltip
- prop="index"
- label="序号"
- min-width="70"
- ></el-table-column>
- <el-table-column
- align="center"
- show-overflow-tooltip
- prop="persName"
- label="问题来源"
- min-width="80"
- ></el-table-column>
- <el-table-column
- align="center"
- show-overflow-tooltip
- prop="sex1"
- label="问题类别"
- width="80"
- ></el-table-column>
- <el-table-column
- align="center"
- show-overflow-tooltip
- prop="persCode"
- label="发现问题"
- ></el-table-column>
- <el-table-column
- align="center"
- show-overflow-tooltip
- prop="mobilenumb"
- label="问题描述"
- min-width="100"
- ></el-table-column>
- <el-table-column
- align="center"
- show-overflow-tooltip
- prop="orgName"
- label="上报人员"
- min-width="80"
- ></el-table-column>
- <el-table-column
- align="center"
- show-overflow-tooltip
- prop="personType"
- label="上报时间"
- min-width="80"
- ></el-table-column>
- <el-table-column
- align="center"
- show-overflow-tooltip
- prop="admDuty"
- label="建议措施"
- min-width="80"
- ></el-table-column>
- <el-table-column
- align="center"
- show-overflow-tooltip
- prop="admDuty"
- label="附件"
- min-width="80"
- ></el-table-column>
- </el-table>
- </el-main>
- </el-container>
- </el-dialog>
- <!--近期面貌-->
- <theRecentAppearance
- v-if="jqmmShow"
- @jqmmDialogClose="jqmmDialog"
- :jqmmShow="jqmmShow"
- :jqmmEngId="editObj.wtdstId"
- :dialogTitle="editObj.wtdstNm + '近期面貌'"
- ></theRecentAppearance>
- <!--影像弹窗-->
- <el-dialog
- :title="editObj.wtdstNm + '影像'"
- :visible.sync="imageShow"
- append-to-body
- :close-on-click-modal="false"
- width="60%"
- >
- <div style="height: 60vh;">
- <mapLocation ref="mapRef" v-if="imageShow" :gdX="centerX" :gdY="centerY"></mapLocation>
- </div>
- </el-dialog>
- <!--水毁工程-->
- <WaterloggingProject
- ref="shRef"
- v-if="shInfoDialog"
- :shInfoCon="shInfoContent"
- @cancelHandler="shCancelHandler"
- ></WaterloggingProject>
- </div>
- </template>
- <script>
- import request from "../../../utils/gw_ajax_request.js";
- import { formatDateTimeD } from "../../../utils/gw_date.js";
- import provTreeList from "../../../widgets/provTreeList.vue";
- import theRecentAppearance from "../../duChaDuiXiang/theRecentAppearance";
- import mapLocation from "../../../views/duChaTianBao/mapLocation";
- import addvSearch from "../../../widgets/addvSearch.vue";
- import WaterloggingProject from "../../zongHeXinXiOl/components/popupWindow/sh/main.vue";
- export default {
- components: {
- provTreeList: provTreeList,
- theRecentAppearance: theRecentAppearance,
- mapLocation: mapLocation,
- addvSearch,
- WaterloggingProject,
- upload: resolve => {
- require(["../../../widgets/uploadFile.vue"], resolve);
- }
- },
- props: [],
- data() {
- return {
- testHeight: window.innerHeight - 111,
- dateRange: [],
- groups: [],
- groupId: "",
- lyjg1: [],
- groupName: "",
- sttm: "",
- ettm: "",
- tableData: [],
- formData: "",
- fileList: [],
- options: [],
- value: "",
- options1: [],
- value1: "",
- problemForm: {
- objId: "",
- objType: "3",
- villType: "4",
- inspPblmName: "",
- inspPblmsName: "",
- pblmsTypeId: "",
- inspPblmCate: "",
- inspPblmDesc: "",
- pblmStat: "",
- dataStat: "",
- nm: "",
- recPers: "",
- note: "",
- gwComFiles: [
- {
- id: "",
- filePath: "",
- bizId: ""
- }
- ]
- },
- pblmsTypeId: "",
- pblmTypeId: "",
- smallTypeList: [],
- dxdcMainHeight: window.innerHeight - 260,
- dxdcAsideHeight: window.innerHeight - 90,
- formLabelWidth: "120px",
- wtdsTrackList: [],
- addObj: {
- wtdstNm: "",
- wtdstType: "",
- locNm: "",
- mangNm: "",
- disContent: "",
- wkstate: "",
- planTm: "",
- adNm: "",
- note: "",
- inspPblmDesc: ""
- },
- editObj: {
- wtdstNm: "",
- wtdstType: "",
- locNm: "",
- wtdstId: ""
- },
- curOperate: "",
- isReadonly: false,
- TrackProgress: [
- {
- label: "待开工",
- value: "2"
- },
- {
- label: "正修复",
- value: "1"
- },
- {
- label: "已修复",
- value: "0"
- }
- ],
- searchObj: {
- state: "",
- wtdstNm: "",
- locAd: "",
- wkstate: "",
- pageNum: "",
- persGuid: "",
- pageSize: this.pageSize,
- chkComId: "",
- chkCom: "",
- groupNm: "",
- groupId: "",
- startDate: "",
- endDate: ""
- },
- pageIndex: 1,
- pageSize: 20,
- total: 1,
- loading: false,
- dialogFormVisible: false,
- dialogFormVisible2: false,
- dialogFormVisible3: false,
- dialogFormVisible4: false,
- provList: [],
- objId: "",
- objName: "",
- objType: "",
- pblmStat: "",
- pblmId: "",
- gwComFiles: [],
- trackId: "",
- trackFrom: {},
- treeData: [],
- currentNodeId: "",
- jqmmShow: false,
- jqmmEngId: "",
- xxzName: "",
- imageShow: false,
- centerX: 0,
- centerY: 0,
- shInfoDialog: false,
- shInfoContent: "",
- adCodes: [],
- name: ''
- };
- },
- computed: {
- persId() {
- return localStorage.getItem("userid")
- ? localStorage.getItem("userid")
- : "1098101939614724096";
- }
- },
- mounted() {
- this.getAllGroup();
- this.getLeftTreeData();
- // this.getTrackList();
- this.getprovList("000000000000");
- this.getType();
- },
- activated() {
- // this.getTrackList();
- this.getLeftTreeData();
- },
- watch: {
- // currentNodeId(n, o) {
- // this.getTrackList();
- // },
- groupName(n, o) {
- if (n == "") {
- this.groupId = "";
- }
- },
- pblmTypeId() {
- request
- .get("/dc/insp/pblms/getPblmType", {
- params: { type: 3, pguid: this.pblmTypeId }
- })
- .then(res => {
- if (res.success) {
- this.options1 = res.data;
- }
- });
- this.options.forEach(ele => {
- if (this.pblmTypeId == ele.guid) {
- this.problemForm.inspPblmName = ele.inspPblmsName;
- }
- });
- },
- pblmsTypeId(newVal, oldVal) {
- this.options1.forEach(ele => {
- if (this.pblmsTypeId == ele.guid) {
- this.problemForm.inspPblmsName = ele.inspPblmsName;
- }
- });
- },
- adCodes(val) {
- if(val.length){
- this.getTrackList();
- }
- }
- },
- methods: {
- //工程列表
- getLeftTreeData() {
- var _self = this;
- _self.lyjg1 = [];
- request
- .get(
- `/bis/insp/BisInspConfigOrgAd/getAdByPersId/${
- this.persId
- }/3`
- )
- .then(res => {
- let data = res.data;
- data.forEach(ele => {
- if(ele.id.length == 6){
- _self.lyjg1.push(ele);
- }
- });
- console.log(1, data)
- data = _self.getTrees(data);
- _self.treeData = data;
- });
- },
- treeNodeClickHandler: function(data, node, tree) {
- this.currentNodeId = data.id;
- },
- //格式化树形数据
- getTrees(list) {
- //@wxcwater重写方法 适应多个树
- let highLevelLength = 99; //预设最大节点id长度,目前最大应该为12,所以设置为99保证正常
- let _self = this;
- list.forEach((item, index) => {
- item["pidLength"] =
- item.pid && item.pid != "" ? item.pid.length : 0;
- if (highLevelLength > item.pidLength) {
- highLevelLength = item.pidLength;
- }
- });
- let heightLevelNode = [];
- list.forEach((item, index) => {
- if (highLevelLength >= item.pidLength) {
- heightLevelNode.push(item);
- }
- });
- list.forEach((item, index) => {
- heightLevelNode.forEach(pItem => {
- _self.addTreeNode(pItem, item);
- });
- });
- return heightLevelNode;
- },
- addTreeNode: function(treeNode, leafNode) {
- let _self = this;
- if (!treeNode.hasOwnProperty("children")) {
- treeNode["children"] = [];
- }
- if (leafNode.pid == treeNode.id) {
- treeNode.children.push(leafNode);
- return;
- }
- treeNode.children.forEach(item => {
- _self.addTreeNode(item, leafNode);
- });
- },
- handleCheckChange() {
- this.adCodes = [];
- let nodes = this.$refs.jigou_tree.getCheckedNodes();
- nodes.forEach(item => {
- this.adCodes.push(item.id);
- });
- },
- //获取所有的组
- getAllGroup() {
- var _self = this;
- request
- .get("/dc/user/getGroupByPersidNew", {
- params: { persid: this.persId, ptype: "3" }
- })
- .then(res => {
- if (res.success) {
- _self.groups = res.data;
- }
- });
- },
- querySearchAsync(queryString, cb) {
- var restaurants = this.groups;
- var results = queryString
- ? restaurants.filter(this.createStateFilter(queryString))
- : restaurants;
- clearTimeout(this.timeout);
- this.timeout = setTimeout(() => {
- cb(results);
- }, 1500 * Math.random());
- },
- createStateFilter(queryString) {
- return state => {
- return (
- state.pnm
- .toLowerCase()
- .indexOf(queryString.toLowerCase()) != -1
- );
- };
- },
- handleSelect(item) {
- console.log(item);
- this.groupId = item.id;
- },
- getType() {
- request
- .get("/dc/insp/pblms/getPblmType", { params: { type: 3 } })
- .then(res => {
- if (res.success) {
- this.options = res.data;
- }
- });
- },
- getTrackList() {
- if (
- this.dateRange &&
- this.dateRange.length > 1 &&
- this.dateRange[0] != "" &&
- this.dateRange[1] != ""
- ) {
- this.searchObj.startDate = this.dateRange[0];
- this.searchObj.endDate = this.dateRange[1];
- } else {
- delete this.searchObj["startDate"];
- delete this.searchObj["endDate"];
- }
- this.searchObj.pageSize = this.pageSize; //添加每页条目数
- this.searchObj.pageNum = this.pageIndex;
- this.searchObj.persGuid = this.persId;
- this.searchObj.groupId = this.groupId;
- // this.searchObj["nodeId"] = this.currentNodeId;
- this.searchObj["adCodes"] = this.adCodes.toString();
- let paramsObj = this.searchObj;
- request
- .post("/dc/insp/bisInspWtdst/queryListWithPblm", paramsObj)
- .then(res => {
- if (res.success) {
- this.wtdsTrackList = res.data.list;
- this.total = res.data.total;
- this.loading = false;
- }
- });
- },
- addProblem() {
- this.problemForm.recPers = this.persGuid;
- this.problemForm.objId = this.objId;
- this.problemForm.nm = this.objName;
- this.problemForm.pblmsTypeId = this.pblmsTypeId;
- this.problemForm.pblmStat = "0";
- this.problemForm["regid"] = this.editObj.wtdstId;
- request.post("/dc/insp/pblm", this.problemForm).then(res => {
- if (res.success) {
- this.dialogFormVisible3 = false;
- this.pblmId = res.data.pblmId;
- this.gwComFiles = [];
- this.pblmStat = res.data.pblmStat;
- if (this.$refs.uploadFile.submitUpload(res.data.pblmId)) {
- this.removeNewSupervision();
- }
- this.problemForm = {
- objId: "",
- objType: "3",
- villType: "4",
- inspPblmName: "",
- inspPblmsName: "",
- pblmsTypeId: "",
- inspPblmCate: "",
- inspPblmDesc: "",
- pblmStat: "",
- dataStat: "",
- nm: "",
- recPers: "",
- note: "",
- gwComFiles: [
- {
- id: "",
- filePath: "",
- bizId: ""
- }
- ]
- };
- }
- });
- },
- // 文件上传
- submitUpload() {
- this.$refs.upload.submit();
- },
- updatefilelist(arg) {
- request
- .post("/dc/insp/pblm/update", {
- pblmId: this.pblmId,
- gwComFiles: arg,
- pblmStat: this.pblmStat
- })
- .then(res => {
- this.removeNewSupervision();
- });
- },
- removeNewSupervision(arg) {
- if (arg) {
- console.log(arg);
- var args = this.gwComFiles.concat(arg);
- this.updatefilelist(args);
- }
- this.gwComFiles = [];
- this.$refs.uploadFile.init();
- },
- //分页
- handleCurrentChange(val) {
- this.searchObj.pageNum = val;
- this.getTrackList();
- },
- handleSizeChange(val) {
- this.searchObj.pageSize = val;
- this.pageSize = val;
- this.getTrackList();
- },
- toAddMember(type, row) {
- let _self = this;
- request
- .get("/dc/insp/wtdstTrack/getByObjId", {
- params: { objId: row.objId }
- })
- .then(res => {
- if (res.data && Object.keys(res.data).length) {
- _self.trackId = res.data.trackId;
- this.curOperate = type;
- this.objId = row.objId;
- this.objName = row.objName;
- this.objType = row.objType;
- this.centerX = row.wtdstLgtd;
- this.centerY = row.wtdstLttd;
- let rowObj = {};
- Object.assign(rowObj, res.data);
- this.addObj = rowObj;
- this.addObj["trackId"] = this.trackId;
- this.addObj["wtdstId"] = row.wtdstId;
- if (!this.addObj["disContent"]) {
- this.addObj["disContent"] = row.disContent;
- }
- this.editObj.wtdstNm = row.wtdstNm;
- this.editObj.wtdstType = row.wtdstType;
- this.editObj.locNm = row.locNm;
- this.editObj.wtdstId = row.wtdstId;
- console.log(this.editObj);
- this.isReadonly = false;
- this.dialogFormVisible = true;
- } else {
- request
- .post("/dc/insp/wtdstTrack/insert", {
- objId: row.objId,
- recPersId: this.persGuid,
- wtdstId: row.wtdstId
- })
- .then(res => {
- if (res.data) {
- _self.trackId = res.data.id;
- this.curOperate = type;
- this.objId = row.objId;
- this.objName = row.objName;
- this.objType = row.objType;
- let rowObj = {};
- Object.assign(rowObj, res.data);
- this.addObj["inspPblmDesc"] = "";
- this.addObj["note"] = "";
- this.addObj["trackId"] = this.trackId;
- this.addObj["wtdstId"] = row.wtdstId;
- this.addObj["objId"] = row.objId;
- this.addObj["objName"] = row.objName;
- if (!this.addObj["disContent"]) {
- this.addObj["disContent"] =
- row.disContent;
- }
- this.editObj.wtdstNm = row.wtdstNm;
- this.editObj.wtdstType = row.wtdstType;
- this.editObj.locNm = row.locNm;
- this.editObj.wtdstId = row.wtdstId;
- console.log(this.editObj);
- this.isReadonly = false;
- this.dialogFormVisible = true;
- } else {
- console.log("添加水毁登记表错误");
- }
- });
- }
- });
- },
- submitHandler(rowData) {
- var _self = this;
- if (rowData == "0") {
- this.$message({
- message: "填报未完成,无法提交!",
- type: "warning"
- });
- return;
- }
- this.$confirm("请确认所有信息填报完毕?", "提示", {
- confirmButtonText: "确定",
- cancelButtonText: "取消",
- type: "warning"
- })
- .then(() => {
- let formObj = {
- objId: rowData.objId,
- trackId: rowData.trackId,
- state: "2"
- };
- request
- .post("/dc/insp/wtdstTrack/update", formObj)
- .then(res => {
- if (res.success) {
- _self.getTrackList();
- _self.$message.success("提交成功");
- } else {
- }
- });
- })
- .catch(() => {});
- },
- addMember() {
- // this.addObj.engId = this.engId
- this.addObj.recPersId = this.persGuid;
- this.addObj["state"] = "1";
- // if(!this.addObj.adnm){
- // this.$message.info('请选择行政村')
- // return
- // }
- if (this.curOperate == "添加") {
- request
- .post("/dc/insp/wtdstTrack/insert", this.addObj)
- .then(res => {
- if (res.success) {
- this.getTrackList();
- this.dialogFormVisible = false;
- this.$message.success("添加成功");
- } else {
- this.$message.error(res.message);
- }
- });
- } else if (this.curOperate == "编辑") {
- request
- .post("/dc/insp/wtdstTrack/update", this.addObj)
- .then(res => {
- if (res.success) {
- this.getTrackList();
- this.dialogFormVisible = false;
- this.$message.success("修改成功");
- } else {
- this.$message.error(res.message);
- }
- });
- }
- },
- addBaseinfo() {
- request
- .post("/dc/insp/bisInspWtdst/update", this.editObj)
- .then(res => {
- if (res.success) {
- this.$message.success("修改成功");
- this.dialogFormVisible2 = false;
- this.getTrackList();
- } else {
- this.$message.success(res.message);
- }
- });
- },
- onSubmit() {
- if(this.adCodes.length){
- this.getTrackList();
- }
- },
- deleteMember(row) {
- this.$confirm("确定删除该工程吗?", "提示", {
- confirmButtonText: "确定",
- cancelButtonText: "取消",
- type: "warning"
- })
- .then(() => {
- request
- .post(`/dc/insp/wtdstTrack/${row.trackId}`)
- .then(res => {
- if (res.success) {
- this.getTrackList();
- this.dialogFormVisible = false;
- this.$message({
- type: "success",
- message: "删除成功!"
- });
- }
- });
- })
- .catch(() => {
- this.$message({
- type: "info",
- message: "已取消删除"
- });
- });
- },
- provTreeSelectChangeHandler() {},
- getprovList(adCode) {
- request
- .get("/dc/ad/base/getAdData", { params: { adCode: adCode } })
- .then(res => {
- if (res.success) {
- this.provList = res.data;
- } else {
- this.$message.info(res.message);
- }
- });
- },
- handleRemove() {},
- fileChange() {},
- fileSuccess(item) {
- this.fileUpData.push(item.data);
- console.log("上传成功", item);
- },
- fileUpErr(item) {
- console.log(item + "wenjian");
- if (item.status == 413) {
- this.$message({
- message: "文件大小超出500K!",
- type: "warning"
- });
- }
- },
- // 近期面貌
- recentAppearance() {
- this.jqmmShow = true;
- // this.jqmmShow += 1;
- },
- jqmmDialog() {
- this.jqmmShow = false;
- },
- // 影像
- imageClick() {
- console.log(this.centerX, this.centerY);
- if (!this.centerX && !this.centerY) {
- this.$message.warning("暂无经纬度信息!");
- return false;
- }
- this.imageShow = true;
- },
- shCancelHandler() {
- this.shInfoDialog = false;
- },
- sHInfo(row, info) {
- // this.currentDuchaTpe = true;
- this.shInfoDialog = true;
- this.shInfoContent = row;
- // this.currentDuchaTpe = true;
- // this.showSzDuChaInfo = true;
- // this.currentObjectRgstrId = row.rgstrId;
- // this.currentResCode = row.code;
- // this.currentGroupId = row.groupId;
- // this.currentObjectId = row.objId;
- // this.currentResName = row.nm
- },
- getSHList() {
- let data = {
- // type: "rsvr",
- presId: this.persId,
- pType: "6",
- pageSize: this.pageSize,
- pageNum: this.pageIndex,
- rsName: this.nm,
- state: this.dcType,
- adName: this.adName,
- sttm: this.dateRange && this.dateRange.length > 1 ? this.dateRange[0]: null,
- entm: this.dateRange && this.dateRange.length > 1 ? this.dateRange[1]: null,
- riverId: this.orgName,
- engScal: this.engScale,
- groupId: this.groupId,
- adCodes: this.adCodes.toString()
- };
- request
- .post(this.baseurl + "/att/waga/rgstr/list/page", data)
- .then(res => {
- res.data.list.forEach(item => {
- if (item.intm) {
- item.intm1 = dateFormat(item.intm, "yyyy-MM-dd");
- }
- });
- this.skDataList = res.data.list;
- this.total = res.data.total;
- });
- },
- }
- };
- </script>
- <style>
- .dctb_sh .el-table .warning-row {
- background: oldlace;
- }
- .dctb_sh .el-table .success-row {
- background: #f0f9eb;
- }
- </style>
|