c72bfe4b9f963fcced27140f1076dffb98f36691.svn-base 94 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502
  1. <template>
  2. <el-container class="sddc_sendnotice">
  3. <el-main>
  4. <el-tabs v-model="activeName" type="card" @tab-click="handleClick" v-if="isType=='county'">
  5. <el-tab-pane label="自查数据问题" name="county"></el-tab-pane>
  6. <el-tab-pane label="市级下发问题" name="city"></el-tab-pane>
  7. </el-tabs>
  8. <el-card class="box-card" :style="{'height': cardHeight + 'px','overflow-y':'auto'}">
  9. <el-row :gutter="20" type="flex" justify="start" class="notice_title">
  10. <el-col :span="24">
  11. <el-form :inline="true" size="mini" label-width="75px">
  12. <el-form-item label="数据来源">
  13. <el-select v-model="search.impSource" style="width: 160px" clearable>
  14. <el-option
  15. v-for="item in sourceList"
  16. :key="item.value"
  17. :label="item.name"
  18. :value="item.value">
  19. </el-option>
  20. </el-select>
  21. </el-form-item>
  22. <el-form-item label="年度">
  23. <el-date-picker
  24. clearable
  25. v-model="search.year"
  26. type="year"
  27. style="width: 160px"
  28. format="yyyy"
  29. value-format="yyyy"
  30. placeholder="选择年">
  31. </el-date-picker>
  32. </el-form-item>
  33. <el-form-item label="行政区划">
  34. <addvSearch
  35. clearable
  36. style="width: 140px"
  37. v-model="adName"
  38. :maxHeight='300'
  39. :maxWidth='250'
  40. :rootAddCode='curAdcode_long'
  41. :level='"3"'
  42. :nameOrCode="'name'"
  43. @addvTreeNodeClick = "addvCodeChange"
  44. ></addvSearch>
  45. </el-form-item>
  46. <el-form-item label="督查类型" style="margin-left:20px;">
  47. <el-input
  48. style="width: 160px"
  49. placeholder="请输入督查类型"
  50. v-model="search.pblmClassify"
  51. clearable>
  52. </el-input>
  53. </el-form-item>
  54. <el-form-item label="流程状态">
  55. <el-select v-model="search.selfInspProcessState" style="width: 160px" clearable>
  56. <el-option
  57. v-for="item in crtStateList"
  58. :key="item.value"
  59. :label="item.name"
  60. :value="item.value">
  61. </el-option>
  62. </el-select>
  63. </el-form-item>
  64. <!-- <el-form-item label="是否下发">-->
  65. <!-- <el-select v-model="search.isStart" style="width: 160px" clearable>-->
  66. <!-- <el-option label="是" value="1"></el-option>-->
  67. <!-- <el-option label="否" value="0"></el-option>-->
  68. <!-- </el-select>-->
  69. <!-- </el-form-item>-->
  70. <el-form-item label="是否销号">
  71. <el-select v-model="search.pblmOut" style="width: 160px" clearable>
  72. <el-option label="是" value="1"></el-option>
  73. <el-option label="否" value="0"></el-option>
  74. </el-select>
  75. </el-form-item>
  76. <el-form-item label="对象名称">
  77. <el-input
  78. style="width: 160px"
  79. placeholder="请输入对象名称"
  80. v-model="search.objName"
  81. clearable>
  82. </el-input>
  83. </el-form-item>
  84. <el-form-item label="问题类别:">
  85. <el-input
  86. style="width: 160px"
  87. placeholder="请输入问题类别"
  88. v-model="search.pblmNameBz"
  89. clearable>
  90. </el-input>
  91. </el-form-item>
  92. <el-form-item label="印发文号">
  93. <el-input
  94. style="width: 160px"
  95. placeholder="印发文号(编号)"
  96. v-model="search.pblmNub"
  97. clearable>
  98. </el-input>
  99. </el-form-item>
  100. <el-form-item label=" ">
  101. <el-button type="primary" size="mini" @click="searchBtn">查询</el-button>
  102. <el-button type="primary" size="mini" @click="showPlbmList" v-if="ownPriv('manage') && ((activeName=='county' && isType=='county') || isType=='city')">添加问题</el-button>
  103. <el-button type="primary" size="mini" @click="batchStart" v-if="ownPriv('manage') && isType=='city'">批量下发</el-button>
  104. <!-- <el-button type="primary" size="mini" @click="allStart" v-if="ownPriv('manage')">下发</el-button>-->
  105. <!-- <el-button type="primary" size="mini" @click="allStart" v-if="ownPriv('manage')">审核</el-button>-->
  106. <!-- <el-button type="primary" size="mini" @click="allStart" v-if="ownPriv('manage')">整改反馈</el-button>-->
  107. <el-button type="primary" size="mini" @click="showDownload">导出整改结果</el-button>
  108. <el-button type="success" size="mini" @click="importFile" v-if="ownPriv('manage') && ((activeName=='county' && isType=='county') || isType=='city')">导入整改问题</el-button>
  109. <el-button type="success" size="mini" @click="settingName" v-if="ownPriv('manage') && ((activeName=='county' && isType=='county') || isType=='city')">批量设置印发文号(编号)</el-button>
  110. <el-button type="success" size="mini" @click="settingDate" v-if="ownPriv('manage') && (isType=='city' || (isType=='county' && activeName=='county'))">批量设置整改时限</el-button>
  111. <!-- <el-button type="danger" size="mini" icon="el-icon-delete" @click="batchDelete" v-if="ownPriv('manage')">批量删除(已启动的问题不会删除)</el-button>-->
  112. </el-form-item>
  113. </el-form>
  114. </el-col>
  115. </el-row>
  116. <div>
  117. <span style="float:right;color:red;font-size:12px;">(<i class="el-icon-warning"></i>提示:黄色行代表当前日期已经超过整改时限)</span>
  118. <el-table
  119. border
  120. ref="zgTable"
  121. :height="tableHeight"
  122. :data="tableData"
  123. tooltip-effect="dark"
  124. style="width: 100%"
  125. :row-style="rowClass"
  126. @selection-change="handleSelectionSend"
  127. >
  128. <el-table-column
  129. type="selection"
  130. width="55">
  131. </el-table-column>
  132. <el-table-column
  133. header-align="center"
  134. align="center"
  135. min-width="80"
  136. prop="province"
  137. label="省" v-if="isXj"
  138. show-overflow-tooltip
  139. ></el-table-column>
  140. <el-table-column
  141. header-align="center"
  142. align="center"
  143. min-width="80"
  144. prop="city"
  145. :label="ownAdName"
  146. show-overflow-tooltip
  147. ></el-table-column>
  148. <el-table-column
  149. header-align="center"
  150. align="center"
  151. min-width="80"
  152. prop="county"
  153. label="县"
  154. v-if="isXj"
  155. show-overflow-tooltip
  156. ></el-table-column>
  157. <el-table-column
  158. header-align="center"
  159. align="center"
  160. min-width="100"
  161. prop="impSource"
  162. label="数据来源"
  163. show-overflow-tooltip
  164. ></el-table-column>
  165. <el-table-column
  166. header-align="center"
  167. align="center"
  168. min-width="100"
  169. prop="year"
  170. :formatter="formatYear"
  171. label="检查年度"
  172. show-overflow-tooltip
  173. ></el-table-column>
  174. <el-table-column
  175. header-align="center"
  176. align="center"
  177. min-width="200"
  178. prop="pblmNub"
  179. label="印发文号(编号)"
  180. show-overflow-tooltip
  181. ></el-table-column>
  182. <el-table-column
  183. header-align="center"
  184. align="center"
  185. min-width="160"
  186. prop="pblmNubName"
  187. label="印发文号(编号)文件名"
  188. show-overflow-tooltip
  189. ></el-table-column>
  190. <el-table-column
  191. header-align="center"
  192. align="center"
  193. min-width="100"
  194. prop="dutyName"
  195. label="责任处室"
  196. show-overflow-tooltip
  197. ></el-table-column>
  198. <el-table-column
  199. header-align="center"
  200. align="center"
  201. min-width="100"
  202. prop="pblmClassify"
  203. label="督查类型"
  204. show-overflow-tooltip
  205. ></el-table-column>
  206. <el-table-column
  207. header-align="center"
  208. align="center"
  209. min-width="100"
  210. prop="objName"
  211. label="对象名称"
  212. show-overflow-tooltip
  213. ></el-table-column>
  214. <el-table-column
  215. header-align="center"
  216. align="center"
  217. min-width="100"
  218. prop="pblmNameBz"
  219. label="问题类别"
  220. show-overflow-tooltip
  221. ></el-table-column>
  222. <el-table-column
  223. header-align="center"
  224. align="center"
  225. min-width="100"
  226. prop="checkPointBz"
  227. label="检查项目"
  228. show-overflow-tooltip
  229. ></el-table-column>
  230. <el-table-column
  231. header-align="center"
  232. align="center"
  233. min-width="100"
  234. prop="pblmDescBz"
  235. label="问题描述"
  236. show-overflow-tooltip
  237. ></el-table-column>
  238. <el-table-column
  239. header-align="center"
  240. align="center"
  241. min-width="100"
  242. prop="inspPblmDesc"
  243. label="详细描述"
  244. show-overflow-tooltip
  245. ></el-table-column>
  246. <el-table-column
  247. header-align="center"
  248. align="center"
  249. min-width="100"
  250. prop="inspPblmCate"
  251. label="严重程度"
  252. show-overflow-tooltip
  253. >
  254. <template slot-scope="scope">
  255. <span v-if="scope.row.inspPblmCate=='0'" class="info">一般</span>
  256. <span v-if="scope.row.inspPblmCate=='1'" class="warning">较重</span>
  257. <span v-if="scope.row.inspPblmCate=='2'" class="fatal">严重</span>
  258. <span v-if="scope.row.inspPblmCate=='3'" class="error">特别严重</span>
  259. </template>
  260. </el-table-column>
  261. <el-table-column
  262. header-align="center"
  263. align="center"
  264. min-width="100"
  265. prop="pblmTm"
  266. label="上报时间"
  267. :formatter="formatDate"
  268. show-overflow-tooltip
  269. ></el-table-column>
  270. <el-table-column
  271. header-align="center"
  272. align="center"
  273. min-width="100"
  274. prop="pblmCrtm"
  275. label="整改时限"
  276. :formatter="formatDate"
  277. show-overflow-tooltip
  278. ></el-table-column>
  279. <el-table-column
  280. header-align="center"
  281. align="center"
  282. min-width="100"
  283. prop="pblmReason"
  284. label="整改建议"
  285. show-overflow-tooltip
  286. ></el-table-column>
  287. <!-- <el-table-column-->
  288. <!-- header-align="center"-->
  289. <!-- align="center"-->
  290. <!-- min-width="100"-->
  291. <!-- prop="isRect"-->
  292. <!-- label="是否反馈"-->
  293. <!-- show-overflow-tooltip-->
  294. <!-- >-->
  295. <!-- <template slot-scope="scope">-->
  296. <!-- <span v-if="scope.row.isRect=='0'">否</span>-->
  297. <!-- <span v-if="scope.row.isRect=='1'">是</span>-->
  298. <!-- </template>-->
  299. <!-- </el-table-column>-->
  300. <el-table-column
  301. header-align="center"
  302. align="center"
  303. min-width="120"
  304. prop="pblmPltm"
  305. label="计划完成时间"
  306. :formatter="formatDate"
  307. show-overflow-tooltip
  308. ></el-table-column>
  309. <el-table-column
  310. header-align="center"
  311. align="center"
  312. min-width="150"
  313. prop="pblmActm"
  314. :formatter="formatDate"
  315. label="实际完成整改日期"
  316. show-overflow-tooltip
  317. ></el-table-column>
  318. <el-table-column
  319. header-align="center"
  320. align="center"
  321. min-width="150"
  322. prop="crtInfo"
  323. label="整改措施"
  324. show-overflow-tooltip
  325. ></el-table-column>
  326. <el-table-column
  327. header-align="center"
  328. align="center"
  329. min-width="120"
  330. prop="crtNote"
  331. label="问题整改备注"
  332. show-overflow-tooltip
  333. ></el-table-column>
  334. <el-table-column
  335. header-align="center"
  336. align="center"
  337. min-width="120"
  338. prop="selfInspProcessState"
  339. label="流程状态"
  340. show-overflow-tooltip
  341. >
  342. <template slot-scope="scope">
  343. {{scope.row.selfInspProcessState | formStatus(that)}}
  344. </template>
  345. </el-table-column>
  346. <el-table-column
  347. header-align="center"
  348. align="center"
  349. min-width="80"
  350. prop="pblmOut"
  351. label="是否销号"
  352. show-overflow-tooltip
  353. >
  354. <template slot-scope="scope">
  355. <span v-if="scope.row.pblmOut=='0'">否</span>
  356. <span v-if="scope.row.pblmOut=='1'" style="color:#18ff06;font-weight: bold;">是</span>
  357. </template>
  358. </el-table-column>
  359. <el-table-column
  360. align="center"
  361. min-width="200"
  362. label="操作"
  363. fixed="right"
  364. >
  365. <template slot-scope="scope">
  366. <span>
  367. <!-- <el-button type="primary" size="mini" @click="showProvImgList(scope.row,0)" v-if="scope.row.impSource=='水利厅'">问题材料</el-button>-->
  368. <!-- <el-button type="primary" size="mini" @click="showProvImgList(scope.row,1)">整改佐证材料</el-button>-->
  369. <!-- <el-button type="primary" size="mini" @click="showProvImgList(scope.row,2)" v-if="isType=='city'">现场复核材料</el-button>-->
  370. <!-- <el-button type="primary" size="mini" @click="showFllow(scope.row)">查看流程</el-button>-->
  371. <el-button type="primary" size="mini" @click="showAllFllow(scope.row)">查看</el-button>
  372. <!-- <el-button type="primary" size="mini" @click="editorRow(scope.row)" v-if="ownPriv('manage') && (isType=='city' || (isType=='county' && activeName=='county'))">编辑</el-button>-->
  373. <!-- <el-button type="primary" size="mini" @click="nextCounty(scope.row)" v-if="ownPriv('manage') && isType=='city' && scope.row.selfInspProcessState=='1'">下发</el-button>-->
  374. <!-- <el-button type="primary" size="mini" @click="nextStep(scope.row)" v-if="ownPriv('manage') && isType=='city' && scope.row.selfInspProcessState=='3'">审核</el-button>-->
  375. <!-- <el-button type="primary" size="mini" @click="checkInfo(scope.row)" v-if="ownPriv('manage') && isType=='county' && (scope.row.selfInspProcessState=='2' || scope.row.selfInspProcessState=='4')">整改反馈</el-button>-->
  376. <!-- <el-button type="primary" size="mini" @click="submitRow(scope.row)" :disabled="scope.row.isStart=='1'" v-if="ownPriv('manage')">启动</el-button>-->
  377. <!-- <el-button type="primary" size="mini" @click="showMendDetail(scope.row)" :disabled="scope.row.isStart!='1'">查看</el-button>-->
  378. <!-- <el-button type="primary" size="mini" @click="showImgList(scope.row.objName,scope.row.pblmId)">问题图片</el-button>-->
  379. <!-- <el-button type="primary" size="mini" @click="showProvImgList(scope.row.id)">佐证图片</el-button>-->
  380. <!-- <el-button type="warning" size="mini" @click="nextStep(scope.row.id)" >审核通过</el-button>-->
  381. <el-button type="danger" size="mini" @click="deleteRow(scope.row.id)" v-if="ownPriv('manage') && ((isType=='city' && scope.row.selfInspProcessState=='1') || (isType=='county' && scope.row.selfInspProcessState=='2' && activeName=='county'))">删除</el-button>
  382. </span>
  383. </template>
  384. </el-table-column>
  385. </el-table>
  386. <el-row>
  387. <el-col :span="12">
  388. <el-pagination
  389. background
  390. :pager-count="3"
  391. :current-page="search.pageNum"
  392. :page-size="search.pageSize"
  393. :page-sizes="[20, 100, 200, 300, 400, 500]"
  394. layout="sizes, total, prev, pager, next"
  395. :total="total"
  396. @current-change="handleCurrentChange"
  397. @size-change="handleSizeChange"
  398. ></el-pagination>
  399. </el-col>
  400. <!-- <el-col :span="12" style="font-size: 14px;display: flex;align-items: center;">-->
  401. <!-- <span style="width: 50px;"v-if="search.pblmState=='0' || search.pblmState=='2' || search.pblmState=='4'">备注:</span>-->
  402. <!-- <el-input v-if="search.pblmState=='0' || search.pblmState=='2' || search.pblmState=='4'" v-model="remark" placeholder="请输入提交或驳回备注"></el-input>-->
  403. <!-- <el-button v-if="search.pblmState=='0' || search.pblmState=='2'" type="primary" size="mini" @click.stop="batchSend()">批量提交</el-button>-->
  404. <!-- <el-button v-if="search.pblmState=='4'" type="primary" size="mini" @click.stop="batchBack()">批量驳回</el-button>-->
  405. <!-- <el-button v-if="search.pblmState=='4'" type="primary" size="mini" @click.stop="check()">审核</el-button>-->
  406. <!-- </el-col>-->
  407. </el-row>
  408. </div>
  409. </el-card>
  410. </el-main>
  411. <taskHandle v-if="isMendVisible" :taskInstId="taskInstId" :procInstId="procInstId" :procTypeName="procTypeName" :isShow="isShow" @closeDialog="closeMendDialog" :isOp="false"></taskHandle>
  412. <el-dialog title="编辑整改问题项" :visible.sync="dialogZgPlbmVisible" :close-on-click-modal="false" width="60%" @close="closeZgDialog">
  413. <el-form size="mini" label-width="180px">
  414. <el-row>
  415. <el-col :span="12">
  416. <el-form-item label="请输入印发文号(编号)">
  417. <el-input
  418. placeholder="请输入印发文号(编号)"
  419. v-model="updateObj.pblmNub"
  420. clearable>
  421. </el-input>
  422. </el-form-item>
  423. </el-col>
  424. <el-col :span="12">
  425. <el-form-item label="请输入印发文号(编号)名称">
  426. <el-input
  427. placeholder="请输入印发文号(编号)名称"
  428. v-model="updateObj.pblmNubName"
  429. clearable>
  430. </el-input>
  431. </el-form-item>
  432. </el-col>
  433. </el-row>
  434. <el-row>
  435. <el-col :span="12">
  436. <el-form-item label="请输入责任处室">
  437. <el-input
  438. placeholder="请输入责任处室"
  439. v-model="updateObj.dutyName"
  440. clearable>
  441. </el-input>
  442. </el-form-item>
  443. </el-col>
  444. <el-col :span="12">
  445. <el-form-item label="请选择整改时限">
  446. <el-date-picker
  447. style="width: 100%;"
  448. v-model="updateObj.pblmCrtm"
  449. type="date"
  450. format="yyyy-MM-dd"
  451. value-format="yyyy-MM-dd"
  452. placeholder="请选择整改时限">
  453. </el-date-picker>
  454. </el-form-item>
  455. </el-col>
  456. </el-row>
  457. <el-row>
  458. <el-col :span="12">
  459. <el-form-item label="请选择督查类型">
  460. <el-select v-model="updateObj.objType" disabled placeholder="请选择督查类型" clearable style="width: 100%;">
  461. <el-option
  462. v-for="item in dcTypeList"
  463. :key="parseInt(item.inspType)+''"
  464. :label="item.inspName"
  465. :value="parseInt(item.inspType)+''">
  466. </el-option>
  467. </el-select>
  468. </el-form-item>
  469. </el-col>
  470. <el-col :span="12">
  471. <el-form-item label="请输入督查对象">
  472. <el-input
  473. readonly="readonly"
  474. placeholder="请输入督查对象"
  475. v-model="updateObj.objName"
  476. clearable>
  477. </el-input>
  478. </el-form-item>
  479. </el-col>
  480. </el-row>
  481. <el-row>
  482. <el-col :span="12">
  483. <el-form-item label="问题类别">
  484. <el-input
  485. readonly="readonly"
  486. placeholder="请输入问题类别"
  487. v-model="updateObj.pblmNameBz"
  488. clearable>
  489. </el-input>
  490. </el-form-item>
  491. </el-col>
  492. <el-col :span="12">
  493. <el-form-item label="检查项目">
  494. <el-input
  495. readonly="readonly"
  496. placeholder="请输入检查项目"
  497. v-model="updateObj.checkPointBz"
  498. clearable>
  499. </el-input>
  500. </el-form-item>
  501. </el-col>
  502. </el-row>
  503. <el-row>
  504. <el-col :span="12">
  505. <el-form-item label="问题描述">
  506. <el-input
  507. readonly="readonly"
  508. placeholder="请输入问题描述"
  509. v-model="updateObj.pblmDescBz"
  510. clearable>
  511. </el-input>
  512. </el-form-item>
  513. </el-col>
  514. <el-col :span="12">
  515. <el-form-item label="详细描述">
  516. <el-input
  517. readonly="readonly"
  518. placeholder="请输入详细描述"
  519. v-model="updateObj.inspPblmDesc"
  520. clearable>
  521. </el-input>
  522. </el-form-item>
  523. </el-col>
  524. </el-row>
  525. <el-row>
  526. <el-col :span="12">
  527. <el-form-item label="严重程度">
  528. <el-select v-model="updateObj.inspPblmCate" disabled placeholder="请选择严重程度" clearable style="width: 100%;">
  529. <el-option
  530. readonly="readonly"
  531. v-for="item in inspPblmCateList"
  532. :label="item.name"
  533. :value="item.value">
  534. </el-option>
  535. </el-select>
  536. </el-form-item>
  537. </el-col>
  538. <el-col :span="12">
  539. <el-form-item label="上报时间">
  540. <el-date-picker
  541. style="width: 100%;"
  542. disabled
  543. v-model="updateObj.pblmTm"
  544. type="date"
  545. format="yyyy-MM-dd"
  546. value-format="yyyy-MM-dd"
  547. placeholder="请选择上报时间">
  548. </el-date-picker>
  549. </el-form-item>
  550. </el-col>
  551. </el-row>
  552. <!-- <el-row>-->
  553. <!-- <el-col :span="12">-->
  554. <!-- <el-form-item label="整改状态">-->
  555. <!-- <el-select v-model="updateObj.crtState" disabled placeholder="请选择整改状态" clearable style="width: 100%;">-->
  556. <!-- <el-option-->
  557. <!-- v-for="item in crtStateList"-->
  558. <!-- :label="item.name"-->
  559. <!-- :value="item.value">-->
  560. <!-- </el-option>-->
  561. <!-- </el-select>-->
  562. <!-- </el-form-item>-->
  563. <!-- </el-col>-->
  564. <!-- <el-col :span="12">-->
  565. <!-- <el-form-item label="是否反馈">-->
  566. <!-- <el-select v-model="updateObj.isRect" placeholder="请选择是否反馈" clearable style="width: 100%;">-->
  567. <!-- <el-option-->
  568. <!-- v-for="item in isRectList"-->
  569. <!-- :label="item.name"-->
  570. <!-- :value="item.value">-->
  571. <!-- </el-option>-->
  572. <!-- </el-select>-->
  573. <!-- </el-form-item>-->
  574. <!-- </el-col>-->
  575. <!-- </el-row>-->
  576. <el-row>
  577. <el-col :span="12">
  578. <el-form-item label="计划完成时间">
  579. <el-date-picker
  580. style="width: 100%;"
  581. v-model="updateObj.pblmPltm"
  582. type="date"
  583. format="yyyy-MM-dd"
  584. value-format="yyyy-MM-dd"
  585. placeholder="请选择计划完成时间">
  586. </el-date-picker>
  587. </el-form-item>
  588. </el-col>
  589. <el-col :span="12">
  590. <el-form-item label="实际完成时间">
  591. <el-date-picker
  592. style="width: 100%;"
  593. v-model="updateObj.pblmActm"
  594. type="date"
  595. format="yyyy-MM-dd"
  596. value-format="yyyy-MM-dd"
  597. placeholder="实际完成时间">
  598. </el-date-picker>
  599. </el-form-item>
  600. </el-col>
  601. </el-row>
  602. <el-row>
  603. <el-col :span="24">
  604. <el-form-item label="整改建议">
  605. <el-input type="textarea" v-model="updateObj.pblmReason" readonly="readonly" placeholder="请输入整改建议"></el-input>
  606. </el-form-item>
  607. </el-col>
  608. </el-row>
  609. <el-row>
  610. <el-col :span="24">
  611. <el-form-item label="整改措施">
  612. <el-input type="textarea" v-model="updateObj.crtInfo" readonly="readonly"></el-input>
  613. </el-form-item>
  614. </el-col>
  615. </el-row>
  616. <div style="width: 100%;display: flex;align-items: center;padding-top: 10px;justify-content: center">
  617. <el-button type="primary" @click="submitEdit" style="margin-bottom: 10px;" v-if="hasPriv('manage')">保存基本信息</el-button>
  618. </div>
  619. </el-form>
  620. </el-dialog>
  621. <el-dialog title="选取问题" :visible.sync="dialogSelectPlbm" :close-on-click-modal="false" width="80%" @close="closeDialog">
  622. <el-form :inline="true" size="mini" class="demo-form-inline" label-width="120px">
  623. <el-form-item label="年度">
  624. <el-date-picker
  625. clearable
  626. v-model="search1.year"
  627. type="year"
  628. format="yyyy"
  629. value-format="yyyy"
  630. placeholder="选择年">
  631. </el-date-picker>
  632. </el-form-item>
  633. <el-form-item label="行政区划">
  634. <addvSearch
  635. clearable
  636. v-model="adName1"
  637. :maxHeight='300'
  638. :rootAddCode='curAdcode_long'
  639. :level='"3"'
  640. :nameOrCode="'name'"
  641. @addvTreeNodeClick = "addvCodeChange1"
  642. ></addvSearch>
  643. </el-form-item>
  644. <el-form-item label="督查类型">
  645. <el-select v-model="search1.objType" placeholder="请选择督查类型" clearable>
  646. <el-option
  647. v-for="item in dcTypeList"
  648. :key="item.code"
  649. :label="item.inspName"
  650. :value="item.inspType">
  651. </el-option>
  652. </el-select>
  653. </el-form-item>
  654. <el-form-item label="对象名称">
  655. <el-input
  656. placeholder="请输入对象名称"
  657. v-model="search1.objName"
  658. clearable>
  659. </el-input>
  660. </el-form-item>
  661. <br/>
  662. <el-form-item label="问题类别:">
  663. <el-input
  664. style="width: 160px"
  665. placeholder="请输入问题类别"
  666. v-model="search1.inspPblmName"
  667. clearable>
  668. </el-input>
  669. </el-form-item>
  670. <el-form-item label="是否加入过整改:">
  671. <el-select v-model="search1.isJoinRec" clearable placeholder="请选择">
  672. <el-option label="未加入过" value="0"></el-option>
  673. <el-option label="加入过" value="1"></el-option>
  674. </el-select>
  675. </el-form-item>
  676. <el-button type="primary" @click="searchBtn1">查询</el-button>
  677. </el-form>
  678. <div>
  679. <el-table
  680. border
  681. ref="plbmTable"
  682. :height="tableHeight1"
  683. :data="tableData1"
  684. tooltip-effect="dark"
  685. style="width: 100%"
  686. v-loading="loading1"
  687. @selection-change="handleSelectionChange">
  688. >
  689. <el-table-column
  690. type="selection"
  691. width="55">
  692. </el-table-column>
  693. <el-table-column
  694. header-align="center"
  695. align="center"
  696. min-width="60"
  697. prop="province"
  698. label="省" v-if="isXj"
  699. show-overflow-tooltip
  700. ></el-table-column>
  701. <el-table-column
  702. header-align="center"
  703. align="center"
  704. min-width="60"
  705. prop="city"
  706. :label="ownAdName"
  707. show-overflow-tooltip
  708. ></el-table-column>
  709. <el-table-column
  710. header-align="center"
  711. align="center"
  712. min-width="60"
  713. prop="country"
  714. label="县"
  715. v-if="isXj"
  716. show-overflow-tooltip
  717. ></el-table-column>
  718. <el-table-column
  719. header-align="center"
  720. align="center"
  721. min-width="60"
  722. prop="objType"
  723. label="督查类型"
  724. :formatter="objTypeDict"
  725. show-overflow-tooltip
  726. ></el-table-column>
  727. <el-table-column
  728. header-align="center"
  729. align="center"
  730. min-width="60"
  731. prop="name"
  732. label="对象名称"
  733. show-overflow-tooltip
  734. ></el-table-column>
  735. <el-table-column
  736. header-align="center"
  737. align="center"
  738. min-width="60"
  739. prop="pblmNameBz"
  740. label="问题类别"
  741. show-overflow-tooltip
  742. ></el-table-column>
  743. <el-table-column
  744. header-align="center"
  745. align="center"
  746. min-width="60"
  747. prop="checkPointBz"
  748. label="检查项目"
  749. show-overflow-tooltip
  750. ></el-table-column>
  751. <el-table-column
  752. header-align="center"
  753. align="center"
  754. min-width="60"
  755. prop="pblmDescBz"
  756. label="问题描述"
  757. show-overflow-tooltip
  758. ></el-table-column>
  759. <el-table-column
  760. header-align="center"
  761. align="center"
  762. min-width="60"
  763. prop="inspPblmDesc"
  764. label="详细描述"
  765. show-overflow-tooltip
  766. ></el-table-column>
  767. <el-table-column
  768. header-align="center"
  769. align="center"
  770. min-width="60"
  771. prop="inspPblmCate"
  772. label="严重程度"
  773. show-overflow-tooltip
  774. >
  775. <template slot-scope="scope">
  776. <span v-if="scope.row.inspPblmCate=='0'" class="info">一般</span>
  777. <span v-if="scope.row.inspPblmCate=='1'" class="warning">较重</span>
  778. <span v-if="scope.row.inspPblmCate=='2'" class="fatal">严重</span>
  779. <span v-if="scope.row.inspPblmCate=='3'" class="error">特别严重</span>
  780. </template>
  781. </el-table-column>
  782. <el-table-column
  783. header-align="center"
  784. align="center"
  785. min-width="60"
  786. prop="inspPblmTm"
  787. label="上报时间"
  788. show-overflow-tooltip
  789. ></el-table-column>
  790. <el-table-column
  791. fixed="right"
  792. label="操作"
  793. min-width="50"
  794. >
  795. <template slot-scope="scope">
  796. <el-button icon="el-icon-view" title="查看详情"type="text" @click="showDetails(scope.row.name,scope.row.pblmId)"></el-button>
  797. </template>
  798. </el-table-column>
  799. </el-table>
  800. <div style="display: flex;align-items: center;margin-top: 10px;">
  801. <el-pagination
  802. background
  803. :pager-count="3"
  804. :current-page="search1.pageNum"
  805. :page-size="search1.pageSize"
  806. :page-sizes="[10, 20, 50]"
  807. layout="sizes, total, prev, pager, next"
  808. :total="total1"
  809. @current-change="handleCurrentChange1"
  810. @size-change="handleSizeChange1"
  811. ></el-pagination>
  812. </div>
  813. <div style="width: 100%;text-align: center;"><el-button style="margin-bottom: 15px;" type="primary" @click="submitDepBtn">添加到整改</el-button></div>
  814. </div>
  815. </el-dialog>
  816. <el-dialog title="查看整改流程" :visible.sync="dialogFllow" :close-on-click-modal="false" width="60%">
  817. <el-table
  818. border
  819. ref="fllowTable"
  820. :height="tableHeight1"
  821. :data="tableData2"
  822. tooltip-effect="dark"
  823. style="width: 100%"
  824. v-loading="loading2">
  825. <el-table-column
  826. header-align="center"
  827. align="center"
  828. min-width="60"
  829. prop="stateNote"
  830. label="节点名称"
  831. show-overflow-tooltip
  832. ></el-table-column>
  833. <el-table-column
  834. header-align="center"
  835. align="center"
  836. min-width="60"
  837. prop="auditResult"
  838. label="审核结果"
  839. show-overflow-tooltip
  840. ></el-table-column>
  841. <el-table-column
  842. header-align="center"
  843. align="center"
  844. min-width="60"
  845. prop="persName"
  846. label="操作人"
  847. show-overflow-tooltip
  848. ></el-table-column>
  849. <el-table-column
  850. header-align="center"
  851. align="center"
  852. min-width="60"
  853. prop="orgNm"
  854. label="操作人机构名称"
  855. show-overflow-tooltip
  856. ></el-table-column>
  857. <el-table-column
  858. header-align="center"
  859. align="center"
  860. min-width="60"
  861. prop="intm"
  862. :formatter="formatDateFllow"
  863. label="创建时间"
  864. show-overflow-tooltip
  865. ></el-table-column>
  866. <el-table-column
  867. header-align="center"
  868. align="center"
  869. min-width="60"
  870. prop="note"
  871. label="备注或驳回原因"
  872. show-overflow-tooltip
  873. ></el-table-column>
  874. </el-table>
  875. </el-dialog>
  876. <add-pic-com v-if="jqmmDialogShow" :dialogTitle="'附件'" :pblmId="jqmmEngId" :type="zgType" :step="step" @jqmmDialogClose="jqmmDialogClose"></add-pic-com>
  877. <!-- 详情弹框 -->
  878. <el-dialog
  879. class="outerDialog custom_dialog"
  880. :title="currentPblmNm"
  881. width="60%"
  882. :visible.sync="PblmDetailsVisible"
  883. >
  884. <pblmsDetailsImgs :problemId="currentProblemId"></pblmsDetailsImgs>
  885. <span slot="footer">
  886. <el-button style="margin-top:5px;" @click="PblmDetailsVisible = false">返回</el-button>
  887. </span>
  888. </el-dialog>
  889. <el-dialog
  890. class="outerDialog custom_dialog"
  891. title="整改成果导入"
  892. width="400"
  893. :visible.sync="importVisible">
  894. <p>请先选择“下载模板”,下载完成后,按照模板格式导入问题成果数据,再选择“直接导入”,完成数据录入。</p>
  895. <span slot="footer">
  896. <el-button @click="downloadTemplate">下载模板</el-button>
  897. <span style="padding-left: 10px;">
  898. <PblmMendUploadAutoSimple
  899. ref="ImportPlan"
  900. :limit=1
  901. :data="uploadParam"
  902. :url="`/pdcApi/bis/insp/pblm/plist/impExl`"
  903. @uploadOver="uploadOver"
  904. :accept="'.xls'"
  905. style="margin:auto;"
  906. comment=".xls格式,不超过50MB(自动上传)"
  907. fileDesc="直接导入"
  908. ></PblmMendUploadAutoSimple>
  909. </span>
  910. </span>
  911. </el-dialog>
  912. <el-dialog
  913. class="outerDialog custom_dialog"
  914. title="印发文号(编号)设置"
  915. width="20%"
  916. :visible.sync="isSettingNameVisible">
  917. <span style="display: flex;align-items: center;justify-content: center">
  918. <span style="width: 150px;font-weight: bold;">印发文号(编号)</span><el-input type="text" v-model="fileNumber" placeHolder="请输入印发文号(编号)" clearable></el-input>
  919. </span>
  920. <span slot="footer">
  921. <el-button type="primary" @click="fileNumberOk">提交</el-button>
  922. <el-button @click="isSettingNameVisible=false">取消</el-button>
  923. </span>
  924. </el-dialog>
  925. <el-dialog
  926. class="outerDialog custom_dialog"
  927. title="整改时限设置"
  928. width="20%"
  929. :visible.sync="isSettingDateVisible">
  930. <span style="display: flex;align-items: center;justify-content: center">
  931. <span style="width: 80px;font-weight: bold;">整改时限</span>
  932. <el-date-picker
  933. v-model="zgDate"
  934. type="date"
  935. placeholder="选择日期">
  936. </el-date-picker>
  937. </span>
  938. <span slot="footer">
  939. <el-button type="primary" @click="zgDateOk">提交</el-button>
  940. <el-button @click="isSettingDateVisible=false">取消</el-button>
  941. </span>
  942. </el-dialog>
  943. <el-dialog
  944. class="outerDialog custom_dialog"
  945. title="类型"
  946. width="20%"
  947. :visible.sync="isToFormVisible">
  948. <span>
  949. <p style="display: flex;align-items: center;">
  950. 类型 <el-select v-model="oneForm" placeHolder="请选择一表一单类型" style="width:calc(100% - 60px);padding-left: 10px;">
  951. <!-- <el-option label="问题(现场)确认单" value="wtxcqrd-1"></el-option>-->
  952. <!-- <el-option label="问题提交单(流域机构督查办)" value="wttjd-2"></el-option>-->
  953. <el-option label="整改通知单(厅机关处室)" value="zgtzd-3"></el-option>
  954. <el-option label="整改通知单(市级水行政主管部门)" value="zgtzd-4"></el-option>
  955. <el-option label="问题整改反馈单(县级)" value="wtzgfkd-5"></el-option>
  956. <el-option label="问题整改反馈单(市级)" value="wtzgfkd-6"></el-option>
  957. <el-option label="问题整改催办单(省机关处室)" value="wtzgcbd-7"></el-option>
  958. <el-option label="整改催办通知单(市级水行政主管部门)" value="zgcbtzd-8"></el-option>
  959. <el-option label="问题整改报告单(省级)" value="wtzgbgd-9"></el-option>
  960. </el-select>
  961. </p>
  962. <!-- <div :style="{'width': '100%','height':tableHeight+'px','margin-top': '10px','overflow':'auto'}">-->
  963. <!-- <iframe :src="'/pageoffice/mend/pblm/word?ids='+ids+'&filename='+oneForm"-->
  964. <!-- frameborder="0" width="100%" height="100%" style="overflow: auto"></iframe>-->
  965. <!-- </div>-->
  966. </span>
  967. <span slot="footer">
  968. <el-button type="primary" @click="toFormOk">确定</el-button>
  969. </span>
  970. </el-dialog>
  971. <el-dialog title="问题审核" :visible.sync="dialogCheckInfo" width="40%">
  972. <el-form size="mini" label-width="130px">
  973. <el-form-item label="是否到现场复核" :required="true">
  974. <el-select v-model="isSite" placeholder="是否到现场复核" style="width: 100%;">
  975. <el-option value="1" label="是"></el-option>
  976. <el-option value="0" label="否"></el-option>
  977. </el-select>
  978. </el-form-item>
  979. <el-form-item label="审核说明" :required="isAgree=='2'">
  980. <el-input type="textarea" :rows="3" placeholder="请输入同意备注或不同意原因" v-model="comment" clearable></el-input>
  981. </el-form-item>
  982. <el-form-item label="">
  983. <el-upload
  984. class="upload-demo"
  985. multiple
  986. ref="reviewUpload"
  987. :auto-upload="false"
  988. :show-file-list="true"
  989. :on-success="uploadSuccess"
  990. :on-change="changeFileList"
  991. :on-remove="removeFileList"
  992. :on-error="upError"
  993. :headers="header"
  994. :action="`/pdcApi/file/insert?bizId=${this.bizId}&bizType=review`">
  995. <el-button size="small" type="primary">点击上传现场复核佐证材料</el-button>
  996. </el-upload>
  997. </el-form-item>
  998. </el-form>
  999. <span slot="footer">
  1000. <el-button type="danger" @click="nextStepBtn(2)">不同意</el-button>
  1001. <el-button type="primary" @click="nextStepBtn(1)">同意</el-button>
  1002. </span>
  1003. </el-dialog>
  1004. <el-dialog title="整改反馈" :visible.sync="dialogMend" width="40%">
  1005. <el-form size="mini" label-width="130px">
  1006. <el-form-item label="整改状态" :required="true">
  1007. <el-select v-model="mendInfo.crtState" placeholder="请选择整改状态" style="width:100%;">
  1008. <el-option value="0" label="未整改"></el-option>
  1009. <el-option value="1" label="整改中"></el-option>
  1010. <el-option value="2" label="已整改"></el-option>
  1011. <el-option value="3" label="不具备整改条件"></el-option>
  1012. </el-select>
  1013. </el-form-item>
  1014. <el-form-item label="整改完成时间" v-if="mendInfo.crtState=='2'" :required="mendInfo.crtState=='2'" style="width: 100%;">
  1015. <el-date-picker
  1016. v-model="mendInfo.pblmCrtm"
  1017. type="date"
  1018. format="yyyy-MM-dd"
  1019. value-format="yyyy-MM-dd"
  1020. placeholder="整改完成时间">
  1021. </el-date-picker>
  1022. </el-form-item>
  1023. <el-form-item label="计划完成时间" v-if="mendInfo.crtState=='1'" :required="mendInfo.crtState=='1'" style="width: 100%;">
  1024. <el-date-picker
  1025. v-model="mendInfo.pblmPltm"
  1026. type="date"
  1027. format="yyyy-MM-dd"
  1028. value-format="yyyy-MM-dd"
  1029. placeholder="计划完成时间">
  1030. </el-date-picker>
  1031. </el-form-item>
  1032. <el-form-item label="整改措施" :required="true">
  1033. <el-input type="textarea" v-model="mendInfo.crtInfo" :rows="3" placeholder="请输入整改措施"></el-input>
  1034. </el-form-item>
  1035. <el-form-item label="备注:">
  1036. <el-input type="textarea" v-model.trim="mendInfo.crtNote" :rows="3" placeholder="请输入备注">
  1037. </el-input>
  1038. </el-form-item>
  1039. <el-form-item label="">
  1040. <el-upload
  1041. class="upload-demo"
  1042. multiple
  1043. ref="addUpload"
  1044. :auto-upload="false"
  1045. :show-file-list="true"
  1046. :on-success="uploadSuccess"
  1047. :on-change="changeFileList"
  1048. :on-remove="removeFileList"
  1049. :on-error="upError"
  1050. :headers="header"
  1051. :action="`/pdcApi/file/insert?bizId=${this.bizId}`">
  1052. <el-button size="small" type="primary">点击上传整改佐证材料</el-button>
  1053. </el-upload>
  1054. </el-form-item>
  1055. </el-form>
  1056. <span slot="footer">
  1057. <el-button type="danger" @click="dialogMend=false">取消</el-button>
  1058. <el-button type="primary" @click="mendBtn">提交</el-button>
  1059. </span>
  1060. </el-dialog>
  1061. <el-dialog
  1062. title="导出整改结果"
  1063. width="20%"
  1064. :visible.sync="exportVisible">
  1065. <span slot="footer">
  1066. <el-button type="primary" @click="downloadExcel">导出excel</el-button>
  1067. <el-button type="primary" @click="downloadZip">导出excel和附件</el-button>
  1068. </span>
  1069. </el-dialog>
  1070. <el-dialog
  1071. title="查看和操作任务"
  1072. width="50%"
  1073. :visible.sync="isShowAllFllow">
  1074. <div style="width: 100%;height:600px;">
  1075. <el-tabs v-model="tabName" type="card" @tab-click="handleClickFile">
  1076. <el-tab-pane label="基本信息" name="baseinfo">
  1077. <baseInfo :row="currow"></baseInfo>
  1078. </el-tab-pane>
  1079. <el-tab-pane label="审核流程" name="fllow">
  1080. <span style="padding: 10px;font-size: 14px;font-weight: bold;display: block;letter-spacing: 2px;height:500px;overflow: auto;">
  1081. <el-timeline>
  1082. <el-timeline-item
  1083. v-for="(activity, index) in tableData2"
  1084. :key="index"
  1085. color="#0bbd87"
  1086. size="large"
  1087. :timestamp="activity.intm">
  1088. <el-card>
  1089. <p>节点名称:{{activity.stateNote}}</p>
  1090. <p>审核结果:{{activity.auditResult}}</p>
  1091. <p>操作人:{{activity.persName}}</p>
  1092. <p>备注或驳回原因:{{activity.note}}</p>
  1093. </el-card>
  1094. </el-timeline-item>
  1095. </el-timeline>
  1096. </span>
  1097. </el-tab-pane>
  1098. <el-tab-pane label="问题材料" v-if="currow.impSource=='水利厅'" name="0">
  1099. <fllowFile :pblmId="jqmmEngId" :type="zgType" :step="step" ref="fileFllow" key="0" v-if="tabName=='0'"></fllowFile>
  1100. </el-tab-pane>
  1101. <el-tab-pane label="整改佐证材料" name="1">
  1102. <fllowFile :pblmId="jqmmEngId" :type="zgType" :step="step" ref="fileFllow" key="1" v-if="tabName=='1'"></fllowFile>
  1103. </el-tab-pane>
  1104. <el-tab-pane label="现场复核佐证材料" name="2" v-if="isType=='city'">
  1105. <fllowFile :pblmId="jqmmEngId" :type="zgType" :step="step" ref="fileFllow" key="2" v-if="tabName=='2'"></fllowFile>
  1106. </el-tab-pane>
  1107. </el-tabs>
  1108. </div>
  1109. <span style="width: 100%;display: block;text-align: center;padding: 10px">
  1110. <el-button type="primary" size="mini" @click="editorRow(currow)" v-if="ownPriv('manage') && (isType=='city' || (isType=='county' && activeName=='county'))">编辑</el-button>
  1111. <el-button type="primary" size="mini" @click="nextCounty(currow)" v-if="ownPriv('manage') && isType=='city' && currow.selfInspProcessState=='1'">下发</el-button>
  1112. <el-button type="primary" size="mini" @click="nextStep(currow)" v-if="ownPriv('manage') && isType=='city' && currow.selfInspProcessState=='3'">审核</el-button>
  1113. <el-button type="primary" size="mini" @click="checkInfo(currow)" v-if="ownPriv('manage') && isType=='county' && (currow.selfInspProcessState=='2' || currow.selfInspProcessState=='4')">整改反馈</el-button>
  1114. </span>
  1115. </el-dialog>
  1116. </el-container>
  1117. </template>
  1118. <script>
  1119. import axios from 'axios';
  1120. import request from '@util/gw_ajax_request'
  1121. import addvSearch from "@widget/addvSearch.vue"
  1122. import receiver from "./receiver"
  1123. import addPicCom from "./selfpblmConnect.vue"
  1124. import fllowFile from "./fllowFile.vue"
  1125. import baseInfo from "./baseInfo.vue"
  1126. import {curAdcode_long} from '@util/global_variable.js'
  1127. import {dateFormat} from '@util/gw_date.js'
  1128. import { exportModelZip,exportModel} from "@util/gw_exportModel"
  1129. import uploadPblmExcel from "./uploadPblmExcel";
  1130. import PblmMendUploadAutoSimple from "../../widgets/pblm-mend-upload-auto-simple";
  1131. import {hostUrl} from '@util/global_variable.js'
  1132. export default {
  1133. name: "rectificationNotice",
  1134. props: [],
  1135. data() {
  1136. return {
  1137. isType:this.$route.params.type,
  1138. that:this,
  1139. uploadParam:{
  1140. orgType:this.$route.params.type
  1141. },
  1142. oneForm:"zgtzd-3",
  1143. ids:"",
  1144. zgDate:"",
  1145. isToFormVisible:false,
  1146. isSettingNameVisible:false,
  1147. isSettingDateVisible:false,
  1148. fileNumber:"",
  1149. importVisible:false,
  1150. cardHeight: window.innerHeight - 140,
  1151. tableData: [],
  1152. tableHeight: window.innerHeight - 350,
  1153. loading: false,
  1154. pageSize: 20,
  1155. pageNum: 1,
  1156. total:0,
  1157. adName:"",
  1158. dialogZgPlbmVisible:false,
  1159. search:{
  1160. impSource:"",
  1161. isStart:"",
  1162. pblmOut:"",
  1163. pageSize: 20,
  1164. pageNum: 1,
  1165. year:"",
  1166. objAdCode:"",
  1167. pblmClassify:"",
  1168. objName:"",
  1169. selfInspProcessState:"",
  1170. pblmState:"",
  1171. pblmNameBz:"",
  1172. pblmNub:"",
  1173. orgType:""
  1174. },
  1175. updateObj:{
  1176. pblmId:"",
  1177. pblmNub:"",
  1178. pblmNubName:"",
  1179. dutyName:"",
  1180. objType:"",
  1181. objName:"",
  1182. pblmNameBz:"",
  1183. checkPointBz:"",
  1184. pblmDescBz:"",
  1185. inspPblmDesc:"",
  1186. inspPblmCate:"",
  1187. pblmTm:"",
  1188. pblmCrtm:"",
  1189. pblmPltm:"",
  1190. pblmActm:"",
  1191. crtState:"",
  1192. crtInfo:"",
  1193. crtNote:"",
  1194. pblmOut:"",
  1195. recvOrgName:""
  1196. },
  1197. dcTypeList:[],
  1198. inspPblmCateList:[
  1199. {
  1200. name:"一般",
  1201. value:"0"
  1202. },
  1203. {
  1204. name:"较重",
  1205. value:"1"
  1206. },
  1207. {
  1208. name:"严重",
  1209. value:"2"
  1210. },
  1211. {
  1212. name:"特别严重",
  1213. value:"3"
  1214. }
  1215. ],
  1216. isRectList:[
  1217. {
  1218. name:"否",
  1219. value:"0"
  1220. },
  1221. {
  1222. name:"是",
  1223. value:"1"
  1224. }
  1225. ],
  1226. pblmOutList:[
  1227. {
  1228. name:"否",
  1229. value:"0"
  1230. },
  1231. {
  1232. name:"是",
  1233. value:"1"
  1234. }
  1235. ],
  1236. crtStateList:[
  1237. {
  1238. name:"未下发",
  1239. value:"1"
  1240. },
  1241. {
  1242. name:"待整改反馈",
  1243. value:"2"
  1244. },
  1245. {
  1246. name:"待审核",
  1247. value:"3"
  1248. },
  1249. {
  1250. name:"驳回待再次反馈",
  1251. value:"4"
  1252. },
  1253. {
  1254. name:"审核通过销号",
  1255. value:"5"
  1256. }
  1257. ],
  1258. sourceList:[
  1259. {
  1260. name:"水利部",
  1261. value:"水利部"
  1262. },
  1263. {
  1264. name:"水利厅",
  1265. value:"水利厅"
  1266. },
  1267. {
  1268. name:"非系统",
  1269. value:"非系统"
  1270. }
  1271. ],
  1272. problemList:[],
  1273. //弹框选择问题
  1274. dialogSelectPlbm:false,
  1275. dialogFllow:false,
  1276. tableData1: [],
  1277. tableData2: [],
  1278. tableHeight1: 600,
  1279. loading1: false,
  1280. loading2: false,
  1281. pageSize1: 20,
  1282. pageNum1: 1,
  1283. total1:0,
  1284. total2:0,
  1285. adName1:"",
  1286. rectOrgName:"",
  1287. search1:{
  1288. pageSize: 20,
  1289. pageNum: 1,
  1290. year:"",
  1291. objAdCode:"",
  1292. objType:"",
  1293. objName:"",
  1294. inspPblmName:"",
  1295. isJoinRec:"0"
  1296. },
  1297. search2:{
  1298. stateNote:""
  1299. },
  1300. PblmDetailsVisible:false,
  1301. currentProblemId:"",
  1302. currentPblmNm:"",
  1303. mulSelectCollection:[],
  1304. recvOrgName:"",
  1305. recvOrgId:"",
  1306. tableDataLog:[],
  1307. remark:"",
  1308. isCurrentStep:false,
  1309. mulSelectionSend:[],
  1310. jqmmDialogShow:"",
  1311. jqmmEngId:"",
  1312. zgType:"",
  1313. step:"",
  1314. orgIdDefault:"",
  1315. isMendVisible:false,
  1316. taskInstId:"",
  1317. procInstId:"",
  1318. procTypeName:"",
  1319. isShow:false,
  1320. activeName:"county",
  1321. dialogCheckInfo:false,
  1322. comment:"",
  1323. isSite:"",
  1324. isAgree:"",
  1325. currow:{},
  1326. dialogMend:false,
  1327. mendInfo:{
  1328. crtState:"",
  1329. pblmCrtm:"",
  1330. pblmPltm:"",
  1331. crtInfo:"",
  1332. crtNote:""
  1333. },
  1334. fileCount:0,
  1335. fileList: [],
  1336. header: {
  1337. 'persId': localStorage.getItem('userid'),
  1338. 'accessToken' : localStorage.getItem('accessToken')
  1339. },
  1340. bizId:"",
  1341. exportVisible:false,
  1342. isShowAllFllow:false,
  1343. tabName:"baseinfo"
  1344. }
  1345. },
  1346. components: {
  1347. taskHandle: resolve=>{require(['../toDoTask/toDoTaskCom/taskHandle.vue'],resolve)},
  1348. addvSearch:addvSearch,
  1349. receiver:receiver,
  1350. uploadPblmExcel,
  1351. PblmMendUploadAutoSimple,
  1352. pblmsDetailsImgs: resolve => {
  1353. require(["../duChaWenTi/PblmDetailsImgs.vue"], resolve);
  1354. },
  1355. addPicCom:addPicCom,
  1356. fllowFile:fllowFile,
  1357. baseInfo:baseInfo
  1358. },
  1359. computed: {
  1360. curAdcode_long(){
  1361. return curAdcode_long
  1362. },
  1363. orgId() {
  1364. return localStorage.getItem('currentOrgId') ? localStorage.getItem("currentOrgId") : "";
  1365. },
  1366. hasPriv() {
  1367. return this.ownPriv
  1368. },
  1369. isGd(){
  1370. if(localStorage.getItem('currentRlcode').substring(0,2)=="44"){
  1371. return true;
  1372. }else{
  1373. return false;
  1374. }
  1375. }
  1376. },
  1377. activated() {
  1378. },
  1379. filters:{
  1380. formStatus(v,that) {
  1381. var name = "";
  1382. that.crtStateList.forEach((item)=>{
  1383. if(item.value==v){
  1384. name = item.name;
  1385. }
  1386. })
  1387. return name;
  1388. }
  1389. },
  1390. created(){
  1391. this.getTypes();
  1392. },
  1393. mounted(){
  1394. this.getNoticeList();
  1395. },
  1396. methods: {
  1397. handleClickFile(tab,event){
  1398. this.step = tab.name;
  1399. this.jqmmEngId = tab.name==0?this.currow.pblmId:this.currow.id;
  1400. this.zgType = "";
  1401. if(tab.name==2){
  1402. this.zgType = "review";
  1403. }
  1404. this.$refs.fileFllow.showFileList(this.jqmmEngId,this.zgType,this.step);
  1405. },
  1406. showAllFllow(row){
  1407. this.tabName = "baseinfo";
  1408. this.isShowAllFllow = true;
  1409. this.currow = row;
  1410. this.getMendFllowList(row);
  1411. },
  1412. showDownload(){
  1413. this.exportVisible = true;
  1414. },
  1415. showFllow(row){
  1416. this.dialogFllow = true;
  1417. this.getMendFllowList(row);
  1418. },
  1419. getMendFllowList(row) {
  1420. this.tableData2 = [];
  1421. var _self = this;
  1422. request.get(`/bis/insp/pblm/plist/log/getPblmById/${row.id}`)
  1423. .then(res => {
  1424. if (res.success) {
  1425. _self.loading2 = false;
  1426. if(res.data && res.data.length>0){
  1427. res.data.forEach((item)=>{
  1428. item.intm = this.formatDateFllow(item);
  1429. _self.tableData2.push(item);
  1430. })
  1431. }
  1432. }
  1433. }).catch(err => {
  1434. })
  1435. },
  1436. mendBtn(){
  1437. if(!this.mendInfo.crtState){
  1438. this.$message.warning("请选择整改状态");
  1439. return false;
  1440. }
  1441. if(this.mendInfo.crtState=="2" && !this.mendInfo.pblmCrtm){
  1442. this.$message.warning("请选择整改完成时间");
  1443. return false;
  1444. }
  1445. if(this.mendInfo.crtState=="1" && !this.mendInfo.pblmPltm){
  1446. this.$message.warning("请选择计划完成时间");
  1447. return false;
  1448. }
  1449. if(!this.mendInfo.crtInfo){
  1450. this.$message.warning("请输入整改措施");
  1451. return false;
  1452. }
  1453. if(!this.mendInfo.crtInfo){
  1454. this.$message.warning("请输入整改措施");
  1455. return false;
  1456. }
  1457. if(!this.fileList || this.fileList.length==0){
  1458. this.$message.warning("请选择整改佐证材料");
  1459. return false;
  1460. }
  1461. if(this.mendInfo.crtState=="2"){
  1462. this.mendInfo.pblmPltm = "";
  1463. }
  1464. if(this.mendInfo.crtState=="1"){
  1465. this.mendInfo.pblmCrtm = "";
  1466. }
  1467. if(this.mendInfo.crtState!="2" && this.mendInfo.crtState!="1"){
  1468. this.mendInfo.pblmPltm = "";
  1469. this.mendInfo.pblmCrtm = "";
  1470. }
  1471. var _self = this;
  1472. this.$confirm('确定要提交反馈吗?, 是否继续?', '提示', {
  1473. confirmButtonText: '确定',
  1474. cancelButtonText: '取消',
  1475. type: 'warning'
  1476. }).then(() => {
  1477. var params = {
  1478. id:_self.currow.id,
  1479. crtState:_self.mendInfo.crtState,
  1480. pblmCrtm:_self.mendInfo.pblmCrtm,
  1481. crtInfo:_self.mendInfo.crtInfo,
  1482. crtNote:_self.mendInfo.crtNote,
  1483. }
  1484. this.bizId = _self.currow.id;
  1485. request.post(`/bis/insp/pblm/plist/option`, params)
  1486. .then(res => {
  1487. if (res.success) {
  1488. _self.$nextTick(() => {
  1489. _self.$refs.addUpload.submit();
  1490. });
  1491. _self.dialogMend = false;
  1492. _self.isShowAllFllow = false;
  1493. }else{
  1494. _self.$message.error(res.message);
  1495. }
  1496. })
  1497. .catch(err => {
  1498. console.log(err);
  1499. })
  1500. }).catch(() => {
  1501. });
  1502. },
  1503. changeFileList(file, fileList) {
  1504. this.fileList = fileList;
  1505. },
  1506. removeFileList(file, fileList) {
  1507. this.fileList = fileList;
  1508. },
  1509. init() {
  1510. this.bizId = ""
  1511. this.fileCount = 0;
  1512. this.fileList = [];
  1513. if(this.$refs.addUpload){
  1514. this.$refs.addUpload.clearFiles();
  1515. }
  1516. if(this.$refs.reviewUpload){
  1517. this.$refs.reviewUpload.clearFiles();
  1518. }
  1519. },
  1520. uploadSuccess(response, file, fileList){
  1521. this.fileCount++;
  1522. if(this.fileCount==this.fileList.length){
  1523. this.getNoticeList();
  1524. this.init();
  1525. }
  1526. },
  1527. upError(err, file, fileList){
  1528. this.$message.error("上传出错,请修改文件!");
  1529. this.init();
  1530. this.getNoticeList();
  1531. },
  1532. nextCounty(row){
  1533. var _self = this;
  1534. this.$confirm('确定要下发到县吗?, 是否继续?', '提示', {
  1535. confirmButtonText: '确定',
  1536. cancelButtonText: '取消',
  1537. type: 'warning'
  1538. }).then(() => {
  1539. request.post(`/bis/insp/pblm/plist/option`, row)
  1540. .then(res => {
  1541. if (res.success) {
  1542. _self.$message.success('下发成功')
  1543. _self.getNoticeList();
  1544. _self.isShowAllFllow = false;
  1545. }else{
  1546. _self.$message.error(res.message);
  1547. }
  1548. })
  1549. .catch(err => {
  1550. console.log(err);
  1551. })
  1552. }).catch(() => {
  1553. });
  1554. },
  1555. nextStep(row){
  1556. this.currow = row;
  1557. this.dialogCheckInfo = true;
  1558. this.comment = "";
  1559. this.isAgree = "";
  1560. this.isSite = "";
  1561. this.init();
  1562. },
  1563. nextStepBtn(agree){
  1564. this.isAgree = agree;
  1565. this.currow.isAgree = agree;
  1566. if(!this.isSite){
  1567. this.$message.warning("请选择是否到现场复核");
  1568. return false;
  1569. }
  1570. if(agree=="2" && !this.comment){
  1571. this.$message.warning("请输入审核说明");
  1572. return false;
  1573. }
  1574. if(this.isSite=="1" && (!this.fileList || this.fileList.length==0)){
  1575. this.$message.warning("请选择现场复核佐证材料");
  1576. return false;
  1577. }
  1578. var _self = this;
  1579. this.$confirm(`确定${agree=="1"?'通过':'不通过'}审核吗?, 是否继续?`, '提示', {
  1580. confirmButtonText: '确定',
  1581. cancelButtonText: '取消',
  1582. type: 'warning'
  1583. }).then(() => {
  1584. var params = {
  1585. id:_self.currow.id,
  1586. isAgree:agree,
  1587. isSite:this.isSite,
  1588. comment:this.comment
  1589. }
  1590. this.bizId = _self.currow.id;
  1591. request.post(`/bis/insp/pblm/plist/option`, params)
  1592. .then(res => {
  1593. if (res.success) {
  1594. _self.$nextTick(() => {
  1595. _self.$refs.reviewUpload.submit();
  1596. });
  1597. _self.dialogCheckInfo = false;
  1598. _self.isShowAllFllow = false;
  1599. }else{
  1600. _self.$message.error(res.message);
  1601. }
  1602. })
  1603. .catch(err => {
  1604. console.log(err);
  1605. })
  1606. }).catch(() => {
  1607. });
  1608. },
  1609. checkInfo(row){
  1610. this.init();
  1611. this.currow = row;
  1612. this.bizId = row.id;
  1613. this.mendInfo = {};
  1614. this.dialogMend = true;
  1615. },
  1616. handleClick(tab, event){
  1617. this.getNoticeList();
  1618. },
  1619. batchDelete(){
  1620. var _self = this;
  1621. var list = [];
  1622. if(this.mulSelectionSend && this.mulSelectionSend.length>0){
  1623. this.mulSelectionSend.forEach((item)=>{
  1624. if(item.isStart!="1"){
  1625. list.push(item);
  1626. }
  1627. })
  1628. this.$confirm('确定删除选择的问题吗?(已经启动的问题不会删除,会自动过滤)', '提示', {
  1629. confirmButtonText: '确定',
  1630. cancelButtonText: '取消',
  1631. type: 'warning'
  1632. }).then(() => {
  1633. request.post(`/bis/insp/pblm/plist/batch/delete`,list).then(res => {
  1634. if(res.success) {
  1635. this.mulSelectionSend = [];
  1636. _self.$refs.zgTable.clearSelection();
  1637. _self.getNoticeList();
  1638. }else{
  1639. this.mulSelectionSend = [];
  1640. _self.$refs.zgTable.clearSelection();
  1641. _self.getNoticeList();
  1642. }
  1643. })
  1644. })
  1645. }else{
  1646. this.$message.warning("请选择问题");
  1647. }
  1648. },
  1649. toFormOk(){
  1650. let host = hostUrl;
  1651. let nginx = '/pageofficePath/';
  1652. var params = {
  1653. ids:this.ids
  1654. }
  1655. axios.post('/pageofficePath/pageoffice/mend/pblm/sendIds',params).then((res)=> {
  1656. if(res.status==200){
  1657. let href = 'pageoffice://|' + host + nginx + '/pageoffice/mend/pblm/word?filename='+this.oneForm+'|width=1100px;height=800px;ismodal=false;||91A4EE66EC1921F376873E85D6C74FFA|A890649B44577C32CE1930797E1299F9';
  1658. let a = document.createElement('a'); // 创建a标签
  1659. a.setAttribute('href', href);// href链接
  1660. a.click();// 自执行点击事件
  1661. }
  1662. })
  1663. },
  1664. toForm(){
  1665. var idArr = [];
  1666. if(this.mulSelectionSend && this.mulSelectionSend.length==0){
  1667. this.$message.warning("请选择数据");
  1668. return false;
  1669. }else{
  1670. this.mulSelectionSend.forEach((item)=>{
  1671. idArr.push(item.id);
  1672. })
  1673. }
  1674. this.ids = idArr.join(",");
  1675. this.isToFormVisible = true;
  1676. },
  1677. fileNumberOk(){
  1678. var _self = this;
  1679. if(this.mulSelectionSend.length>0){
  1680. var list = [];
  1681. for(var i = 0;i<this.mulSelectionSend.length;i++){
  1682. list.push({id: this.mulSelectionSend[i].id,pblmNub:this.fileNumber})
  1683. }
  1684. this.$confirm('确定要批量修改印发文号(编号), 是否继续?', '提示', {
  1685. confirmButtonText: '确定',
  1686. cancelButtonText: '取消',
  1687. type: 'warning'
  1688. }).then(() => {
  1689. request.post(`/bis/insp/pblm/plist/updateList`, list)
  1690. .then(res => {
  1691. if (res.success) {
  1692. _self.$message.success('修改成功');
  1693. _self.isSettingNameVisible = false;
  1694. _self.getNoticeList();
  1695. }else{
  1696. _self.$message.error(res.message);
  1697. }
  1698. })
  1699. })
  1700. }else{
  1701. this.$message.warning("请选择数据");
  1702. }
  1703. },
  1704. zgDateOk(){
  1705. var _self = this;
  1706. if(this.mulSelectionSend.length>0){
  1707. var list = [];
  1708. for(var i = 0;i<this.mulSelectionSend.length;i++){
  1709. list.push({id: this.mulSelectionSend[i].id,pblmCrtm:this.zgDate})
  1710. }
  1711. this.$confirm('确定要批量修改整改时限, 是否继续?', '提示', {
  1712. confirmButtonText: '确定',
  1713. cancelButtonText: '取消',
  1714. type: 'warning'
  1715. }).then(() => {
  1716. request.post(`/bis/insp/pblm/plist/updateList`, list)
  1717. .then(res => {
  1718. if (res.success) {
  1719. _self.$message.success('修改成功');
  1720. _self.isSettingDateVisible = false;
  1721. _self.getNoticeList();
  1722. }else{
  1723. _self.$message.error(res.message);
  1724. }
  1725. })
  1726. })
  1727. }else{
  1728. this.$message.warning("请选择数据");
  1729. }
  1730. },
  1731. getRandom(){
  1732. var num="";
  1733. for(var i=0;i<6;i++)
  1734. {
  1735. num+=Math.floor(Math.random()*10);
  1736. }
  1737. return num;
  1738. },
  1739. settingName(){
  1740. this.fileNumber = new Date().getFullYear()+((new Date().getMonth()+1)>9?(new Date().getMonth()+1):"0"+(new Date().getMonth()+1))+(new Date().getDate()>9?new Date().getDate():"0"+(new Date().getDate()))+new Date().getHours()+new Date().getMinutes()+new Date().getSeconds()+this.getRandom()
  1741. if(this.mulSelectionSend && this.mulSelectionSend.length==0){
  1742. this.$message.warning("请选择数据");
  1743. return false;
  1744. }
  1745. this.isSettingNameVisible = true;
  1746. },
  1747. settingDate(){
  1748. if(this.mulSelectionSend && this.mulSelectionSend.length==0){
  1749. this.$message.warning("请选择数据");
  1750. return false;
  1751. }
  1752. this.isSettingDateVisible = true;
  1753. },
  1754. uploadOver(){
  1755. this.importVisible = false;
  1756. this.getNoticeList();
  1757. },
  1758. async downloadTemplate() {
  1759. let url = `/pdcApi/bis/insp/pblm/plist/getExl?orgType=${this.isType}`;
  1760. let type = "get";
  1761. let exportName = "整改问题模板.xls"
  1762. let result = await exportModel(type, url, exportName, null);
  1763. },
  1764. importFile(){
  1765. this.importVisible = true;
  1766. },
  1767. rowClass({row, index}) {
  1768. if(row.pblmCrtm) {
  1769. if(row.pblmCrtm<new Date().getTime() && row.pblmOut!='1'){
  1770. return { "background-color": "#ffda21" }
  1771. }
  1772. }
  1773. },
  1774. closeMendDialog(){
  1775. this.isMendVisible = false;
  1776. },
  1777. showMendDetail(row){
  1778. this.isMendVisible = true;
  1779. this.taskInstId = row.taskInstId;
  1780. this.procInstId = row.procInstId;
  1781. this.procTypeName = row.procTypeName;
  1782. this.isShow = false;
  1783. },
  1784. allStart(){
  1785. var _self = this;
  1786. this.$confirm('确定要一键下发整改, 是否继续?', '提示', {
  1787. confirmButtonText: '确定',
  1788. cancelButtonText: '取消',
  1789. type: 'warning'
  1790. }).then(() => {
  1791. request.post(`/bis/insp/pblm/plist/form/allStartup`, _self.search)
  1792. .then(res => {
  1793. if (res.success) {
  1794. _self.$message.success('一键下发成功')
  1795. _self.getNoticeList();
  1796. }else{
  1797. _self.$message.error(res.message);
  1798. }
  1799. })
  1800. .catch(err => {
  1801. console.log(err);
  1802. })
  1803. }).catch(() => {
  1804. });
  1805. },
  1806. batchStart(){
  1807. if(this.mulSelectionSend && this.mulSelectionSend.length>0){
  1808. var paramList = [];
  1809. for(var i = 0;i<this.mulSelectionSend.length;i++){
  1810. if(this.mulSelectionSend[i].selfInspProcessState=="1"){
  1811. paramList.push(this.mulSelectionSend[i]);
  1812. }
  1813. }
  1814. var _self = this;
  1815. this.$confirm('确定要批量下发吗?已经下发的问题会自动过滤, 是否继续?', '提示', {
  1816. confirmButtonText: '确定',
  1817. cancelButtonText: '取消',
  1818. type: 'warning'
  1819. }).then(() => {
  1820. request.post(`/bis/insp/pblm/plist/option/batch/send`, paramList)
  1821. .then(res => {
  1822. if (res.success) {
  1823. _self.$message.success('批量下发成功');
  1824. _self.getNoticeList();
  1825. this.$refs.zgTable.clearSelection();
  1826. }else{
  1827. _self.$message.error(res.message);
  1828. }
  1829. })
  1830. .catch(err => {
  1831. console.log(err);
  1832. })
  1833. }).catch(() => {
  1834. });
  1835. }else{
  1836. this.$message({
  1837. message: '请选择数据!',
  1838. type: 'warning'
  1839. });
  1840. return
  1841. }
  1842. },
  1843. batchA(){
  1844. if(this.mulSelectionSend.length>0){
  1845. this.$confirm('确定审核通过吗?, 是否继续?', '提示', {
  1846. confirmButtonText: '确定',
  1847. cancelButtonText: '取消',
  1848. type: 'warning'
  1849. }).then(() => {
  1850. }).catch(() => {
  1851. });
  1852. }else{
  1853. this.$message({
  1854. message: '请选择数据!',
  1855. type: 'warning'
  1856. });
  1857. return
  1858. }
  1859. },
  1860. // nextStep(){
  1861. // var _self = this;
  1862. // this.$confirm('确定审核通过吗?, 是否继续?', '提示', {
  1863. // confirmButtonText: '确定',
  1864. // cancelButtonText: '取消',
  1865. // type: 'warning'
  1866. // }).then(() => {
  1867. // request.post(`/bis/insp/pblm/plist/option`, row)
  1868. // .then(res => {
  1869. // if (res.success) {
  1870. // _self.$message.success('审核成功')
  1871. // _self.getNoticeList();
  1872. // }else{
  1873. // _self.$message.error(res.message);
  1874. // }
  1875. // })
  1876. // .catch(err => {
  1877. // console.log(err);
  1878. // })
  1879. // }).catch(() => {
  1880. // });
  1881. // },
  1882. downPblmListTemplate(){
  1883. let url = "/pdcApi/bis/insp/pblm/plist/download";
  1884. let downloadName = "整改问题列表模板.xls"
  1885. let type = "get"
  1886. exportModel(type, url, downloadName)
  1887. },
  1888. downloadZip(){
  1889. let url = "/pdcApi/bis/insp/pblm/plist/export";
  1890. let downloadName = "整改结果.zip"
  1891. let type = "post"
  1892. exportModelZip(type, url, downloadName,JSON.stringify(this.search))
  1893. this.exportVisible = false;
  1894. },
  1895. downloadExcel(){
  1896. let url = "/pdcApi/bis/insp/pblm/plist/exportExcel";
  1897. let downloadName = "整改问题列表.xls"
  1898. let type = "post"
  1899. exportModel(type, url, downloadName,JSON.stringify(this.search))
  1900. this.exportVisible = false;
  1901. },
  1902. jqmmDialogClose() {
  1903. this.jqmmDialogShow = false;
  1904. },
  1905. showImgList(nm,id){
  1906. this.PblmDetailsVisible = true;
  1907. this.currentPblmNm = nm;
  1908. this.currentProblemId = id;
  1909. },
  1910. showProvImgList(row,type){
  1911. this.step = type;
  1912. this.jqmmDialogShow = true;
  1913. this.jqmmEngId = type==0?row.pblmId:row.id;
  1914. this.zgType = "";
  1915. if(type==2){
  1916. this.zgType = "review";
  1917. }
  1918. },
  1919. pblmStateChange(){
  1920. this.getNoticeList();
  1921. this.mulSelectionSend = [];
  1922. },
  1923. batchSend(){
  1924. if(this.mulSelectionSend!=null && this.mulSelectionSend.length>0){
  1925. for(var i = 0;i<this.mulSelectionSend.length;i++){
  1926. this.mulSelectionSend[i].pblmState = "1";
  1927. }
  1928. var _self = this;
  1929. this.$confirm('确定要提交到监督处, 是否继续?', '提示', {
  1930. confirmButtonText: '确定',
  1931. cancelButtonText: '取消',
  1932. type: 'warning'
  1933. }).then(() => {
  1934. request.post(`/bis/insp/pblm/plist/updateList`,_self.mulSelectionSend)
  1935. .then(res => {
  1936. if (res.success) {
  1937. _self.getNoticeList();
  1938. _self.mulSelectionSend = [];
  1939. _self.search.pblmState = "";
  1940. _self.remark = "";
  1941. }
  1942. })
  1943. .catch(err => {
  1944. console.log(err);
  1945. })
  1946. }).catch(() => {
  1947. });
  1948. }else{
  1949. this.$message({
  1950. message: '请选择数据!',
  1951. type: 'warning'
  1952. });
  1953. return
  1954. }
  1955. },
  1956. batchBack(){
  1957. if(this.remark==null || this.remark==""){
  1958. this.$message({
  1959. message: '请输入驳回备注!',
  1960. type: 'warning'
  1961. });
  1962. return
  1963. }
  1964. if(this.mulSelectionSend!=null && this.mulSelectionSend.length>0){
  1965. for(var i = 0;i<this.mulSelectionSend.length;i++){
  1966. this.mulSelectionSend[i].pblmState = "8";
  1967. }
  1968. var _self = this;
  1969. this.$confirm('确定要驳回到地市?, 是否继续?', '提示', {
  1970. confirmButtonText: '确定',
  1971. cancelButtonText: '取消',
  1972. type: 'warning'
  1973. }).then(() => {
  1974. request.post(`/bis/insp/pblm/plist/updateList`,_self.mulSelectionSend)
  1975. .then(res => {
  1976. if (res.success) {
  1977. _self.getNoticeList();
  1978. _self.mulSelectionSend = [];
  1979. _self.search.pblmState = "";
  1980. _self.remark = "";
  1981. }
  1982. })
  1983. .catch(err => {
  1984. console.log(err);
  1985. })
  1986. }).catch(() => {
  1987. });
  1988. }else{
  1989. this.$message({
  1990. message: '请选择数据!',
  1991. type: 'warning'
  1992. });
  1993. return
  1994. }
  1995. },
  1996. check(){
  1997. if(this.mulSelectionSend!=null && this.mulSelectionSend.length>0){
  1998. for(var i = 0;i<this.mulSelectionSend.length;i++){
  1999. this.mulSelectionSend[i].pblmState = "9";
  2000. }
  2001. var _self = this;
  2002. this.$confirm('确定要审核通过吗?, 是否继续?', '提示', {
  2003. confirmButtonText: '确定',
  2004. cancelButtonText: '取消',
  2005. type: 'warning'
  2006. }).then(() => {
  2007. request.post(`/bis/insp/pblm/plist/updateList`,_self.mulSelectionSend)
  2008. .then(res => {
  2009. if (res.success) {
  2010. _self.getNoticeList();
  2011. _self.mulSelectionSend = [];
  2012. _self.search.pblmState = "";
  2013. _self.remark = "";
  2014. }
  2015. })
  2016. .catch(err => {
  2017. console.log(err);
  2018. })
  2019. }).catch(() => {
  2020. });
  2021. }else{
  2022. this.$message({
  2023. message: '请选择数据!',
  2024. type: 'warning'
  2025. });
  2026. return
  2027. }
  2028. },
  2029. handleSelectionSend(val){
  2030. this.mulSelectionSend = val;
  2031. },
  2032. submitRow(row){
  2033. var _self = this;
  2034. let paramsObj = [{
  2035. pblmPlist: row
  2036. }]
  2037. this.$confirm('确定要启动问题整改, 是否继续?', '提示', {
  2038. confirmButtonText: '确定',
  2039. cancelButtonText: '取消',
  2040. type: 'warning'
  2041. }).then(() => {
  2042. request.post(`/bis/insp/pblm/plist/form/`, paramsObj)
  2043. .then(res => {
  2044. if (res.success) {
  2045. _self.$message.success('提交成功')
  2046. _self.getNoticeList();
  2047. _self.dialogZgPlbmVisible = false;
  2048. _self.updateObj = {};
  2049. }else{
  2050. _self.$message.error(res.message);
  2051. }
  2052. })
  2053. .catch(err => {
  2054. console.log(err);
  2055. })
  2056. }).catch(() => {
  2057. });
  2058. },
  2059. returnBtn(){
  2060. var _self = this;
  2061. _self.updateObj.pblmState = "8";
  2062. this.$confirm('确定要驳回到地市, 是否继续?', '提示', {
  2063. confirmButtonText: '确定',
  2064. cancelButtonText: '取消',
  2065. type: 'warning'
  2066. }).then(() => {
  2067. request.post(`/bis/insp/pblm/plist/`,_self.updateObj)
  2068. .then(res => {
  2069. if (res.success) {
  2070. _self.getNoticeList();
  2071. _self.dialogZgPlbmVisible = false;
  2072. _self.updateObj = {};
  2073. }
  2074. })
  2075. .catch(err => {
  2076. console.log(err);
  2077. })
  2078. }).catch(() => {
  2079. });
  2080. },
  2081. checkBtn(){
  2082. var _self = this;
  2083. _self.updateObj.pblmState = "9";
  2084. this.$confirm('确定要审核通过吗, 是否继续?', '提示', {
  2085. confirmButtonText: '确定',
  2086. cancelButtonText: '取消',
  2087. type: 'warning'
  2088. }).then(() => {
  2089. request.post(`/bis/insp/pblm/plist/`,_self.updateObj)
  2090. .then(res => {
  2091. if (res.success) {
  2092. _self.getNoticeList();
  2093. _self.dialogZgPlbmVisible = false;
  2094. _self.updateObj = {};
  2095. }
  2096. })
  2097. .catch(err => {
  2098. console.log(err);
  2099. })
  2100. }).catch(() => {
  2101. });
  2102. },
  2103. formatDateFllow(row){
  2104. if(row.intm && typeof(row.intm) == 'number'){
  2105. return dateFormat(row.intm, 'yyyy-MM-dd HH:mm:ss')
  2106. }else{
  2107. return row.intm
  2108. }
  2109. },
  2110. formatDate(row, column){
  2111. var d = row[column.property];
  2112. if(d==null || d==""){
  2113. return "";
  2114. }
  2115. var date = new Date(d);
  2116. return date.getFullYear()+"-"+(date.getMonth()+1)+"-"+date.getDate();
  2117. },
  2118. formatYear(row, column){
  2119. var d = row[column.property];
  2120. if(d==null || d==""){
  2121. return "";
  2122. }
  2123. return d+"年"
  2124. },
  2125. submitEdit(){
  2126. var _self = this;
  2127. this.$confirm('确定要提交修改的数据, 是否继续?', '提示', {
  2128. confirmButtonText: '确定',
  2129. cancelButtonText: '取消',
  2130. type: 'warning'
  2131. }).then(() => {
  2132. request.post(`/bis/insp/pblm/plist/`,_self.updateObj)
  2133. .then(res => {
  2134. if (res.success) {
  2135. _self.getNoticeList();
  2136. _self.dialogZgPlbmVisible = false;
  2137. _self.isShowAllFllow = false;
  2138. _self.updateObj = {};
  2139. // _self.search = {};
  2140. }
  2141. })
  2142. .catch(err => {
  2143. console.log(err);
  2144. })
  2145. }).catch(() => {
  2146. _self.loading = false;
  2147. });
  2148. },
  2149. editorRow(row){
  2150. var _self = this;
  2151. _self.updateObj = JSON.parse(JSON.stringify(row));
  2152. _self.updateObj.pblmCrtm = dateFormat(_self.updateObj.pblmCrtm, 'yyyy-MM-dd');
  2153. _self.updateObj.pblmTm = dateFormat(_self.updateObj.pblmTm, 'yyyy-MM-dd');
  2154. _self.updateObj.pblmPltm = dateFormat(_self.updateObj.pblmPltm, 'yyyy-MM-dd');
  2155. _self.updateObj.pblmActm = dateFormat(_self.updateObj.pblmActm, 'yyyy-MM-dd');
  2156. _self.tableDataLog = row.bisInspPblmPlistLogs;
  2157. _self.dialogZgPlbmVisible = true;
  2158. },
  2159. deleteRow(id){
  2160. var _self = this;
  2161. this.$confirm('确定要删除当前数据, 是否继续?', '提示', {
  2162. confirmButtonText: '确定',
  2163. cancelButtonText: '取消',
  2164. type: 'warning'
  2165. }).then(() => {
  2166. request.post(`/bis/insp/pblm/plist/delete/`+id)
  2167. .then(res => {
  2168. if (res.success) {
  2169. _self.getNoticeList();
  2170. }
  2171. })
  2172. .catch(err => {
  2173. console.log(err);
  2174. })
  2175. }).catch(() => {
  2176. });
  2177. },
  2178. formatPblmState(val){
  2179. var name = "";
  2180. for(var i = 0;i<this.rectificationStatus.length;i++){
  2181. if(val==this.rectificationStatus[i].value){
  2182. name = this.rectificationStatus[i].name;
  2183. }
  2184. }
  2185. return name;
  2186. },
  2187. submitDepBtn(){
  2188. if(this.mulSelectCollection!=null && this.mulSelectCollection.length>0){
  2189. // if(this.recvOrgName==null || this.recvOrgName=="" || this.recvOrgId==null || this.recvOrgId==""){
  2190. // this.$message({
  2191. // message: '请选择接收单位!',
  2192. // type: 'warning'
  2193. // });
  2194. // return
  2195. // }else{
  2196. var _self = this;
  2197. for(var i = 0;i<_self.mulSelectCollection.length;i++){
  2198. // _self.mulSelectCollection[i].recvOrgName = this.recvOrgName;
  2199. // _self.mulSelectCollection[i].recvOrgId = this.recvOrgId;
  2200. for(var j = 0;j<_self.dcTypeList.length;j++){
  2201. if(parseInt(_self.dcTypeList[j].inspType)==parseInt(_self.mulSelectCollection[i].objType)){
  2202. _self.mulSelectCollection[i].pblmClassify = _self.dcTypeList[j].inspName;
  2203. }
  2204. }
  2205. }
  2206. _self.loading = true;
  2207. this.$confirm('确定要提交选择的数据, 是否继续?', '提示', {
  2208. confirmButtonText: '确定',
  2209. cancelButtonText: '取消',
  2210. type: 'warning'
  2211. }).then(() => {
  2212. request.post(`/bis/insp/pblm/plist/insertList`,_self.mulSelectCollection)
  2213. .then(res => {
  2214. if (res.success) {
  2215. _self.getNoticeList();
  2216. _self.getPlbmList();
  2217. _self.mulSelectCollection = [];
  2218. _self.dialogSelectPlbm = false;
  2219. _self.loading = false;
  2220. }
  2221. })
  2222. .catch(err => {
  2223. _self.loading = false;
  2224. console.log(err);
  2225. })
  2226. }).catch(() => {
  2227. _self.loading = false;
  2228. });
  2229. // }
  2230. }else{
  2231. this.$message({
  2232. message: '请选择数据!',
  2233. type: 'warning'
  2234. });
  2235. return
  2236. }
  2237. },
  2238. handleSelectionChange(val){
  2239. this.mulSelectCollection = [];
  2240. if(val!=null && val.length>0){
  2241. for(var i = 0;i<val.length;i++){
  2242. this.mulSelectCollection.push({
  2243. pblmId:val[i].pblmId,
  2244. province:val[i].province,
  2245. city:val[i].city,
  2246. country:val[i].country,
  2247. objType:val[i].objType,
  2248. objName:val[i].name,
  2249. pblmNameBz:val[i].pblmNameBz,
  2250. checkPointBz:val[i].checkPointBz,
  2251. pblmDescBz:val[i].pblmDescBz,
  2252. inspPblmDesc:val[i].inspPblmDesc,
  2253. inspPblmCate:val[i].inspPblmCate,
  2254. pblmTm:val[i].inspPblmTm,
  2255. })
  2256. }
  2257. }
  2258. },
  2259. showDetails(nm,id){
  2260. this.PblmDetailsVisible = true;
  2261. this.currentPblmNm = nm;
  2262. this.currentProblemId = id;
  2263. },
  2264. objTypeDict(d){
  2265. var name = "";
  2266. for(var i = 0;i<this.dcTypeList.length;i++){
  2267. if(parseInt(this.dcTypeList[i].inspType)==d.objType){
  2268. name = this.dcTypeList[i].inspName;
  2269. }
  2270. }
  2271. d.pblmClassify = name;
  2272. return name;
  2273. },
  2274. objTypeDict_if(d){
  2275. var name = "";
  2276. for(var i = 0;i<this.dcTypeList.length;i++){
  2277. if(parseInt(this.dcTypeList[i].inspType)==d.objType){
  2278. name = this.dcTypeList[i].inspName;
  2279. }
  2280. }
  2281. return name;
  2282. },
  2283. //通知List
  2284. getNoticeList() {
  2285. this.tableData = [];
  2286. this.loading = true;
  2287. this.search.orgType = this.isType=="city"?"city":this.activeName;
  2288. var _self = this;
  2289. request.post(`/bis/insp/pblm/plist/sendOrgGetList`, _self.search)
  2290. .then(res => {
  2291. if (res.success) {
  2292. _self.tableData = res.data.list;
  2293. _self.total = res.data.total;
  2294. _self.loading = false;
  2295. }
  2296. })
  2297. .catch(err => {
  2298. _self.loading = false;
  2299. })
  2300. },
  2301. addvCodeChange(data){
  2302. this.search.objAdCode = data.id;
  2303. },
  2304. addvCodeChange1(data){
  2305. this.search1.objAdCode = data.id;
  2306. },
  2307. searchBtn(){
  2308. this.loading = true;
  2309. this.getNoticeList();
  2310. this.mulSelectionSend = [];
  2311. },
  2312. searchBtn1(){
  2313. this.loading1 = true;
  2314. if(this.search1.year == '' || this.search1.year == null){
  2315. this.$message({
  2316. message: '请选择年份!',
  2317. type: 'warning'
  2318. });
  2319. return
  2320. }
  2321. if(this.search1.objType =='' || this.search1.objType == null){
  2322. this.$message({
  2323. message: '请选择督查类型!',
  2324. type: 'warning'
  2325. });
  2326. return
  2327. }
  2328. this.getPlbmList();
  2329. },
  2330. getTypes() {
  2331. var _self = this;
  2332. request.get(`/bis/insp/rel/org/insp/type/getInspTypeByOrgId/${this.orgId}`)
  2333. .then(res => {
  2334. if (res.success) {
  2335. _self.dcTypeList = res.data;
  2336. _self.search1.objType = res.data[0].inspType;
  2337. }
  2338. })
  2339. },
  2340. getproblemSmallType() {
  2341. let result = [];
  2342. request.get('/dc/insp/pblms/getPblmType', {
  2343. params: {
  2344. type: ""
  2345. }
  2346. }).then(res => {
  2347. if (res.success) {
  2348. res.data.forEach((ele) => {
  2349. let haveinspPblmsName = false;
  2350. result.forEach((inspPblm) => {
  2351. if (inspPblm['inspPblmsName'] == ele.inspPblmsName) {
  2352. let havechekPoint = false;
  2353. inspPblm['checkPoints'].forEach((chekPoint) => {
  2354. if (chekPoint['checkPointName'] == ele.checkPoint) {
  2355. havechekPoint = true;
  2356. }
  2357. });
  2358. if (!havechekPoint) {
  2359. let newCheckPoint = {};
  2360. newCheckPoint['checkPointName'] = ele.checkPoint;
  2361. newCheckPoint['sort2'] = ele.sort2;
  2362. newCheckPoint['guid'] = ele.guid;
  2363. inspPblm['checkPoints'].push(newCheckPoint);
  2364. }
  2365. haveinspPblmsName = true;
  2366. }
  2367. });
  2368. if (!haveinspPblmsName) {
  2369. let haveinspPblmsObj = {};
  2370. haveinspPblmsObj['inspPblmsName'] = ele.inspPblmsName;
  2371. haveinspPblmsObj['sort1'] = ele.sort1;
  2372. haveinspPblmsObj['checkPoints'] = [{
  2373. checkPointName: ele.checkPoint,
  2374. sort2: ele.sort2,
  2375. guid: ele.guid
  2376. }];
  2377. result.push(haveinspPblmsObj);
  2378. }
  2379. })
  2380. this.problemList = result;
  2381. }
  2382. })
  2383. },
  2384. handleCurrentChange(val) {
  2385. this.search.pageNum = val;
  2386. this.getNoticeList();
  2387. },
  2388. handleSizeChange(val) {
  2389. this.search.pageSize = val;
  2390. this.getNoticeList();
  2391. },
  2392. handleCurrentChange1(val) {
  2393. this.search1.pageNum = val;
  2394. this.getPlbmList();
  2395. },
  2396. handleSizeChange1(val) {
  2397. this.search1.pageSize = val;
  2398. this.getPlbmList();
  2399. },
  2400. showPlbmList(){
  2401. this.dialogSelectPlbm = true;
  2402. var date = new Date();
  2403. this.search1.year = date.getFullYear()+'';
  2404. this.loading1 = true;
  2405. this.getPlbmList();
  2406. },
  2407. getPlbmList() {
  2408. this.loading1 = true;
  2409. this.search1.orgType = this.isType;
  2410. var _self = this;
  2411. request.post(`/dc/insp/pblm/chuzhi/pblmPage`, _self.search1)
  2412. .then(res => {
  2413. if (res.success) {
  2414. _self.tableData1 = res.data.list;
  2415. _self.total1 = res.data.total;
  2416. _self.loading1 = false;
  2417. }
  2418. })
  2419. .catch(err => {
  2420. _self.loading1 = false;
  2421. })
  2422. },
  2423. closeDialog(){
  2424. this.dialogSelectPlbm = false;
  2425. },
  2426. closeZgDialog(){
  2427. this.dialogZgPlbmVisible = false;
  2428. },
  2429. selectJigouCodeSingle(data){
  2430. this.recvOrgName = data.name;
  2431. this.recvOrgId = data.code;
  2432. },
  2433. clearRecv(){
  2434. this.recvOrgName = "";
  2435. this.recvOrgId = "";
  2436. }
  2437. },
  2438. watch: {
  2439. }
  2440. }
  2441. </script>
  2442. <style lang="scss">
  2443. .info{
  2444. padding: 15px;
  2445. background: #409eff;
  2446. color:white;
  2447. }
  2448. .warning{
  2449. padding: 15px;
  2450. background: #ff9800;
  2451. color:white;
  2452. }
  2453. .fatal{
  2454. padding: 15px;
  2455. background: #f56c6c;
  2456. color:white;
  2457. }
  2458. .error{
  2459. padding: 15px;
  2460. background: #f94c01;
  2461. color:white;
  2462. }
  2463. .sddc_sendnotice {
  2464. .inspPblmCate {
  2465. padding: 2px 10px;
  2466. color: #fff;
  2467. -webkit-border-radius: 10px;
  2468. -moz-border-radius: 10px;
  2469. border-radius: 10px;
  2470. }
  2471. .notice_title {
  2472. .el-input--mini .el-input__inner, .el-select-dropdown__list {
  2473. width: 8vw;
  2474. }
  2475. }
  2476. .rowClassP {
  2477. span {
  2478. color: #3399ff;
  2479. margin-left: 15px;
  2480. cursor: pointer;
  2481. }
  2482. }
  2483. }
  2484. </style>