spec-detail.vue 63 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701
  1. <template>
  2. <el-dialog :close-on-click-modal="false"
  3. :title="!this.taskForm.taskId == '' ? $t('处理') : $t('详情')"
  4. :visible.sync="visible" append-to-body>
  5. <el-form :model="taskForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="" label-width="80px">
  6. <el-form-item :label="$t('设备')">
  7. <el-table
  8. v-show="dataForm.approveType == 8"
  9. :data="devList"
  10. border
  11. style="width: 100%;">
  12. <el-table-column :label="$t('装置名称')" align="center" prop="plantCode" :show-overflow-tooltip="true"/>
  13. <el-table-column :label="$t('检查年月')" align="center" prop="checkMonth" width="100">
  14. </el-table-column>
  15. <el-table-column header-align="center" align="center" :label="$t('压力容器')">
  16. <el-table-column :label="$t('容器单元')" align="center" prop="rqUnit" :show-overflow-tooltip="true"/>
  17. <el-table-column :label="$t('容器本体')" align="center" prop="rqSelf" :formatter="rqSelfFormat" />
  18. <el-table-column :label="$t('安全附件')" align="center" prop="rqSafe" :formatter="rqSafeFormat" />
  19. <el-table-column :label="$t('安全保护装置')" align="center" prop="rqProtect" :formatter="rqProtectFormat" />
  20. <el-table-column :label="$t('测量调控装置,紧急切断阀')" align="center" prop="rqControl" :formatter="rqControlFormat" />
  21. <el-table-column :label="$t('附属仪器仪表')" align="center" prop="rqIns" :formatter="rqInsFormat" />
  22. <el-table-column :label="$t('有无泄漏')" align="center" prop="rqOut" :formatter="rqOutFormat" />
  23. <el-table-column :label="$t('其它情况描述')" align="center" prop="rqOther" :show-overflow-tooltip="true"/>
  24. <el-table-column :label="$t('容器备注')" align="center" prop="rqRemark" :show-overflow-tooltip="true"/>
  25. </el-table-column>
  26. <el-table-column header-align="center" align="center" :label="$t('压力管道')">
  27. <el-table-column :label="$t('管道区域/单元')" align="center" prop="gdUnit" :show-overflow-tooltip="true"/>
  28. <el-table-column :label="$t('管道宏观')" align="center" prop="gdSelf" :formatter="gdSelfFormat" />
  29. <el-table-column :label="$t('安全附件')" align="center" prop="gdSafe" :formatter="gdSafeFormat" />
  30. <el-table-column :label="$t('测量调控装置')" align="center" prop="gdControl" :formatter="gdControlFormat" />
  31. <el-table-column :label="$t('附属仪器仪表')" align="center" prop="gdIns" :formatter="gdInsFormat" />
  32. <el-table-column :label="$t('有无泄漏')" align="center" prop="gdOut" :formatter="gdOutFormat" />
  33. <el-table-column :label="$t('其它情况描述')" align="center" prop="gdOther" :show-overflow-tooltip="true"/>
  34. <el-table-column :label="$t('管道备注')" align="center" prop="gdRemark" :show-overflow-tooltip="true"/>
  35. </el-table-column>
  36. <el-table-column header-align="center" align="center" :label="$t('锅炉')">
  37. <el-table-column :label="$t('锅炉区域/单元')" align="center" prop="glUnit" :show-overflow-tooltip="true"/>
  38. <el-table-column :label="$t('承压部件')" align="center" prop="glPressure" :formatter="glPressureFormat" />
  39. <el-table-column :label="$t('安全附件')" align="center" prop="glSafe" :formatter="glSafeFormat" />
  40. <el-table-column :label="$t('仪表及联锁保护装置')" align="center" prop="glIns" :formatter="glInsFormat" />
  41. <el-table-column :label="$t('燃烧器')" align="center" prop="glBurn" :formatter="glBurnFormat" />
  42. <el-table-column :label="$t('人员')+$t('证书')" align="center" prop="glCer" :formatter="glCerFormat" />
  43. <el-table-column :label="$t('水质化验')" align="center" prop="glWater" :formatter="glWaterFormat" />
  44. <el-table-column :label="$t('其它情况描述')" align="center" prop="glOther" :show-overflow-tooltip="true"/>
  45. <el-table-column :label="$t('锅炉')+$t('备注')" align="center" prop="glRemark" :show-overflow-tooltip="true"/>
  46. </el-table-column>
  47. </el-table>
  48. <el-table
  49. v-show="dataForm.approveType == 7 && dataForm.devType == 1"
  50. :data="devList"
  51. border
  52. style="width: 100%;">
  53. <el-table-column :label="$t('装置')" align="center" fixed="left" prop="plantCode" :show-overflow-tooltip="true"/>
  54. <el-table-column :label="$t('单元')" align="center" fixed="left" prop="unit" :show-overflow-tooltip="true"/>
  55. <el-table-column :label="$t('位号')" align="center" fixed="left" prop="devno" :show-overflow-tooltip="true"/>
  56. <el-table-column :label="$t('设备名称')" align="center" prop="devname" width="200" :show-overflow-tooltip="true"/>
  57. <el-table-column :label="$t('使用证号码')" align="center" prop="useno" :show-overflow-tooltip="true"/>
  58. <el-table-column :label="$t('注册编号')" align="center" prop="regno" :show-overflow-tooltip="true"/>
  59. <el-table-column :label="$t('介质')" align="center" prop="medium" :show-overflow-tooltip="true" :render-header="renderHeader">
  60. </el-table-column>
  61. <el-table-column :label="$t('设计压力')+'(MPa)'" align="center" prop="desPressure" :show-overflow-tooltip="true" :render-header="renderHeader">
  62. </el-table-column>
  63. <el-table-column :label="$t('设计温度')+'(℃)'" align="center" prop="desTemp" :show-overflow-tooltip="true" :render-header="renderHeader">
  64. </el-table-column>
  65. <el-table-column :label="$t('操作压力')+'(MPa)'" align="center" prop="optPressure" :show-overflow-tooltip="true" :render-header="renderHeader">
  66. </el-table-column>
  67. <el-table-column :label="$t('操作温度')+'(℃)'" align="center" prop="optTemp" :show-overflow-tooltip="true" :render-header="renderHeader">
  68. </el-table-column>
  69. <el-table-column :label="$t('安全状况等级')" align="center" prop="safeClass" :show-overflow-tooltip="true"/>
  70. <el-table-column :label="$t('下次定期检验日期')" align="center" prop="nextWarnDate" width="100">
  71. </el-table-column>
  72. <el-table-column :label="$t('容器管理')" header-align="center">
  73. <el-table-column
  74. prop="pj1"
  75. header-align="center"
  76. align="center"
  77. label="1">
  78. <template slot-scope="scope" slot="header">
  79. <el-tooltip effect="dark" :content="$t('管理制度、操作规程、运行记录')" placement="top">
  80. <span>1</span>
  81. </el-tooltip>
  82. </template>
  83. </el-table-column>
  84. <el-table-column
  85. prop="pj2"
  86. header-align="center"
  87. align="center"
  88. label="2">
  89. <template slot-scope="scope" slot="header">
  90. <el-tooltip effect="dark" :content="$t('设计文件、竣工图样、产品合格证、质量证明文件、安装使用说明')" placement="top">
  91. <span>2</span>
  92. </el-tooltip>
  93. </template>
  94. </el-table-column>
  95. <el-table-column
  96. prop="pj3"
  97. header-align="center"
  98. align="center"
  99. label="3">
  100. <template slot-scope="scope" slot="header">
  101. <el-tooltip effect="dark" :content="$t('监督检验证书以及安装、改造、修理等资料')" placement="top">
  102. <span>3</span>
  103. </el-tooltip>
  104. </template>
  105. </el-table-column>
  106. <el-table-column
  107. prop="pj4"
  108. header-align="center"
  109. align="center"
  110. label="4">
  111. <template slot-scope="scope" slot="header">
  112. <el-tooltip effect="dark" :content="$t('使用登记证,使用登记表是否与实际相符')" placement="top">
  113. <span>4</span>
  114. </el-tooltip>
  115. </template>
  116. </el-table-column>
  117. <el-table-column
  118. prop="pj5"
  119. header-align="center"
  120. align="center"
  121. label="5">
  122. <template slot-scope="scope" slot="header">
  123. <el-tooltip effect="dark" :content="$t('日常维护保养、定期安全检查记录')" placement="top">
  124. <span>5</span>
  125. </el-tooltip>
  126. </template>
  127. </el-table-column>
  128. <el-table-column
  129. prop="pj6"
  130. header-align="center"
  131. align="center"
  132. label="6">
  133. <template slot-scope="scope" slot="header">
  134. <el-tooltip effect="dark" :content="$t('年度检查、定期检验报告齐全,报告中问题解决')" placement="top">
  135. <span>6</span>
  136. </el-tooltip>
  137. </template>
  138. </el-table-column>
  139. <el-table-column
  140. prop="pj7"
  141. header-align="center"
  142. align="center"
  143. label="7">
  144. <template slot-scope="scope" slot="header">
  145. <el-tooltip effect="dark" :content="$t('作业人员定期培训情况')" placement="top">
  146. <span>7</span>
  147. </el-tooltip>
  148. </template>
  149. </el-table-column>
  150. </el-table-column>
  151. <el-table-column :label="$t('容器本体及运行情况')" header-align="center">
  152. <el-table-column
  153. prop="pj8"
  154. header-align="center"
  155. align="center"
  156. label="8">
  157. <template slot-scope="scope" slot="header">
  158. <el-tooltip effect="dark" :content="$t('设备铭牌、漆色、标志、使用证号码')" placement="top">
  159. <span>8</span>
  160. </el-tooltip>
  161. </template>
  162. </el-table-column>
  163. <el-table-column
  164. prop="pj9"
  165. header-align="center"
  166. align="center"
  167. label="9">
  168. <template slot-scope="scope" slot="header">
  169. <el-tooltip effect="dark" :content="$t('本体裂、过热、变形、泄漏、损伤情况')" placement="top">
  170. <span>9</span>
  171. </el-tooltip>
  172. </template>
  173. </el-table-column>
  174. <el-table-column
  175. prop="pj10"
  176. header-align="center"
  177. align="center"
  178. label="10">
  179. <template slot-scope="scope" slot="header">
  180. <el-tooltip effect="dark" :content="$t('接口部位、焊接接头等裂纹、泄漏、损伤情况')" placement="top">
  181. <span>10</span>
  182. </el-tooltip>
  183. </template>
  184. </el-table-column>
  185. <el-table-column
  186. prop="pj11"
  187. header-align="center"
  188. align="center"
  189. label="11">
  190. <template slot-scope="scope" slot="header">
  191. <el-tooltip effect="dark" :content="$t('外表面腐蚀、异常结霜、结露情况')" placement="top">
  192. <span>11</span>
  193. </el-tooltip>
  194. </template>
  195. </el-table-column>
  196. <el-table-column
  197. prop="pj12"
  198. header-align="center"
  199. align="center"
  200. label="12">
  201. <template slot-scope="scope" slot="header">
  202. <el-tooltip effect="dark" :content="$t('保温层、隔热层、衬里情况')" placement="top">
  203. <span>12</span>
  204. </el-tooltip>
  205. </template>
  206. </el-table-column>
  207. <el-table-column
  208. prop="pj13"
  209. header-align="center"
  210. align="center"
  211. label="13">
  212. <template slot-scope="scope" slot="header">
  213. <el-tooltip effect="dark" :content="$t('检漏孔、信号孔')" placement="top">
  214. <span>13</span>
  215. </el-tooltip>
  216. </template>
  217. </el-table-column>
  218. <el-table-column
  219. prop="pj14"
  220. header-align="center"
  221. align="center"
  222. label="14">
  223. <template slot-scope="scope" slot="header">
  224. <el-tooltip effect="dark" :content="$t('容器与相邻管道、构件间异常振动、响声、摩擦')" placement="top">
  225. <span>14</span>
  226. </el-tooltip>
  227. </template>
  228. </el-table-column>
  229. <el-table-column
  230. prop="pj15"
  231. header-align="center"
  232. align="center"
  233. label="15">
  234. <template slot-scope="scope" slot="header">
  235. <el-tooltip effect="dark" :content="$t('支承、支座、基础、紧固螺栓')" placement="top">
  236. <span>15</span>
  237. </el-tooltip>
  238. </template>
  239. </el-table-column>
  240. <el-table-column
  241. prop="pj16"
  242. header-align="center"
  243. align="center"
  244. label="16">
  245. <template slot-scope="scope" slot="header">
  246. <el-tooltip effect="dark" :content="$t('遮阳罩、操作台紧固')" placement="top">
  247. <span>16</span>
  248. </el-tooltip>
  249. </template>
  250. </el-table-column>
  251. <el-table-column
  252. prop="pj17"
  253. header-align="center"
  254. align="center"
  255. label="17">
  256. <template slot-scope="scope" slot="header">
  257. <el-tooltip effect="dark" :content="$t('罐体与底盘等连接')" placement="top">
  258. <span>17</span>
  259. </el-tooltip>
  260. </template>
  261. </el-table-column>
  262. <el-table-column
  263. prop="pj18"
  264. header-align="center"
  265. align="center"
  266. label="18">
  267. <template slot-scope="scope" slot="header">
  268. <el-tooltip effect="dark" :content="$t('波板、罐内扶梯与罐体连接')" placement="top">
  269. <span>18</span>
  270. </el-tooltip>
  271. </template>
  272. </el-table-column>
  273. <el-table-column
  274. prop="pj19"
  275. header-align="center"
  276. align="center"
  277. label="19">
  278. <template slot-scope="scope" slot="header">
  279. <el-tooltip effect="dark" :content="$t('罐车拉紧带、鞍座、中间支座')" placement="top">
  280. <span>19</span>
  281. </el-tooltip>
  282. </template>
  283. </el-table-column>
  284. <el-table-column
  285. prop="pj20"
  286. header-align="center"
  287. align="center"
  288. label="20">
  289. <template slot-scope="scope" slot="header">
  290. <el-tooltip effect="dark" :content="$t('气液相管及其它管路')" placement="top">
  291. <span>20</span>
  292. </el-tooltip>
  293. </template>
  294. </el-table-column>
  295. <el-table-column
  296. prop="pj21"
  297. header-align="center"
  298. align="center"
  299. label="21">
  300. <template slot-scope="scope" slot="header">
  301. <el-tooltip effect="dark" :content="$t('疏水、排放、排污装置')" placement="top">
  302. <span>21</span>
  303. </el-tooltip>
  304. </template>
  305. </el-table-column>
  306. <el-table-column
  307. prop="pj22"
  308. header-align="center"
  309. align="center"
  310. label="22">
  311. <template slot-scope="scope" slot="header">
  312. <el-tooltip effect="dark" :content="$t('设备运行稳定情况')" placement="top">
  313. <span>22</span>
  314. </el-tooltip>
  315. </template>
  316. </el-table-column>
  317. <el-table-column
  318. prop="pj23"
  319. header-align="center"
  320. align="center"
  321. label="23">
  322. <template slot-scope="scope" slot="header">
  323. <el-tooltip effect="dark" :content="$t('接地装置')" placement="top">
  324. <span>23</span>
  325. </el-tooltip>
  326. </template>
  327. </el-table-column>
  328. <el-table-column
  329. prop="pj24"
  330. header-align="center"
  331. align="center"
  332. label="24">
  333. <template slot-scope="scope" slot="header">
  334. <el-tooltip effect="dark" :content="$t('安全状况等级为4级的压力容器的监控措施')" placement="top">
  335. <span>24</span>
  336. </el-tooltip>
  337. </template>
  338. </el-table-column>
  339. </el-table-column>
  340. <el-table-column :label="$t('安全附件或设施')" header-align="center">
  341. <el-table-column
  342. prop="pj25"
  343. header-align="center"
  344. align="center"
  345. label="25">
  346. <template slot-scope="scope" slot="header">
  347. <el-tooltip effect="dark" :content="$t('安全阀')" placement="top">
  348. <span>25</span>
  349. </el-tooltip>
  350. </template>
  351. </el-table-column>
  352. <el-table-column
  353. prop="pj26"
  354. header-align="center"
  355. align="center"
  356. label="26">
  357. <template slot-scope="scope" slot="header">
  358. <el-tooltip effect="dark" :content="$t('压力表')" placement="top">
  359. <span>26</span>
  360. </el-tooltip>
  361. </template>
  362. </el-table-column>
  363. <el-table-column
  364. prop="pj27"
  365. header-align="center"
  366. align="center"
  367. label="27">
  368. <template slot-scope="scope" slot="header">
  369. <el-tooltip effect="dark" :content="$t('爆破片')" placement="top">
  370. <span>27</span>
  371. </el-tooltip>
  372. </template>
  373. </el-table-column>
  374. <el-table-column
  375. prop="pj28"
  376. header-align="center"
  377. align="center"
  378. label="28">
  379. <template slot-scope="scope" slot="header">
  380. <el-tooltip effect="dark" :content="$t('测温仪表')" placement="top">
  381. <span>28</span>
  382. </el-tooltip>
  383. </template>
  384. </el-table-column>
  385. <el-table-column
  386. prop="pj29"
  387. header-align="center"
  388. align="center"
  389. label="29">
  390. <template slot-scope="scope" slot="header">
  391. <el-tooltip effect="dark" :content="$t('液位计')" placement="top">
  392. <span>29</span>
  393. </el-tooltip>
  394. </template>
  395. </el-table-column>
  396. <el-table-column
  397. prop="pj30"
  398. header-align="center"
  399. align="center"
  400. label="30">
  401. <template slot-scope="scope" slot="header">
  402. <el-tooltip effect="dark" :content="$t('快开门安全联锁装置')" placement="top">
  403. <span>30</span>
  404. </el-tooltip>
  405. </template>
  406. </el-table-column>
  407. <el-table-column
  408. prop="pj31"
  409. header-align="center"
  410. align="center"
  411. label="31">
  412. <template slot-scope="scope" slot="header">
  413. <el-tooltip effect="dark" :content="$t('紧急切断装置')" placement="top">
  414. <span>31</span>
  415. </el-tooltip>
  416. </template>
  417. </el-table-column>
  418. </el-table-column>
  419. <el-table-column :label="$t('其他')" header-align="center">
  420. <el-table-column
  421. prop="pj32"
  422. header-align="center"
  423. align="center"
  424. label="32">
  425. <template slot-scope="scope" slot="header">
  426. <el-tooltip effect="dark" :content="$t('装卸软管、装卸阀门')" placement="top">
  427. <span>32</span>
  428. </el-tooltip>
  429. </template>
  430. </el-table-column>
  431. </el-table-column>
  432. <el-table-column
  433. prop="checkDate"
  434. header-align="center"
  435. align="center"
  436. :label="$t('检查日期')">
  437. </el-table-column>
  438. <el-table-column
  439. prop="problem"
  440. header-align="center"
  441. align="center"
  442. :label="$t('问题及处理')">
  443. </el-table-column>
  444. <el-table-column
  445. prop="con"
  446. header-align="center"
  447. align="center"
  448. :label="$t('结论')"
  449. :formatter="conFormat">
  450. </el-table-column>
  451. <el-table-column
  452. prop="yearReportNo"
  453. header-align="center"
  454. align="center"
  455. :label="$t('报告编号')">
  456. </el-table-column>
  457. <el-table-column
  458. prop="remarks"
  459. header-align="center"
  460. align="center"
  461. :label="$t('备注')">
  462. </el-table-column>
  463. </el-table>
  464. <el-table
  465. v-show="dataForm.approveType == 7 && dataForm.devType == 2"
  466. :data="devList"
  467. border
  468. style="width: 100%;">
  469. <el-table-column
  470. prop="devEntity.plantCode"
  471. header-align="center"
  472. align="center"
  473. :label="$t('装置名称')">
  474. </el-table-column>
  475. <el-table-column
  476. prop="devEntity.unit"
  477. header-align="center"
  478. align="center"
  479. :label="$t('单元')">
  480. </el-table-column>
  481. <el-table-column
  482. prop="devEntity.devname"
  483. header-align="center"
  484. align="center"
  485. :label="$t('管道名称')">
  486. </el-table-column>
  487. <el-table-column
  488. prop="devEntity.devno"
  489. header-align="center"
  490. align="center"
  491. :label="$t('管道编号')">
  492. </el-table-column>
  493. <el-table-column
  494. prop="devEntity.nextWarnDate"
  495. header-align="center"
  496. align="center"
  497. :label="$t('下次定期检验日期')">
  498. </el-table-column>
  499. <el-table-column
  500. prop="grade"
  501. header-align="center"
  502. align="center"
  503. :label="$t('管道级别')">
  504. </el-table-column>
  505. <el-table-column
  506. :label="$t('允许使用参数')"
  507. align="center">
  508. <el-table-column
  509. prop="medium"
  510. header-align="center"
  511. align="center"
  512. :label="$t('介质')">
  513. </el-table-column>
  514. <el-table-column
  515. prop="desPressure"
  516. header-align="center"
  517. align="center"
  518. :label="$t('设计压力')">
  519. </el-table-column>
  520. <el-table-column
  521. prop="desTemp"
  522. header-align="center"
  523. align="center"
  524. :label="$t('设计温度')">
  525. </el-table-column>
  526. <el-table-column
  527. prop="optPressure"
  528. header-align="center"
  529. align="center"
  530. :label="$t('操作压力')">
  531. </el-table-column>
  532. <el-table-column
  533. prop="optTemp"
  534. header-align="center"
  535. align="center"
  536. :label="$t('操作温度')">
  537. </el-table-column>
  538. </el-table-column>
  539. <el-table-column
  540. prop="checkUnit"
  541. header-align="center"
  542. align="center"
  543. :label="$t('检验单位')">
  544. </el-table-column>
  545. <el-table-column
  546. prop="safeClass"
  547. header-align="center"
  548. align="center"
  549. :label="$t('安全等级')">
  550. </el-table-column>
  551. <el-table-column
  552. prop="pj1"
  553. header-align="center"
  554. align="center"
  555. label="1">
  556. <template slot-scope="scope" slot="header">
  557. <el-tooltip effect="dark" :content="$t('安全管理情况')" placement="top">
  558. <span>1</span>
  559. </el-tooltip>
  560. </template>
  561. </el-table-column>
  562. <el-table-column
  563. prop="pj2"
  564. header-align="center"
  565. align="center"
  566. label="2">
  567. <template slot-scope="scope" slot="header">
  568. <el-tooltip effect="dark" :content="$t('设计图纸文档、维修记录、质量证明等资料')" placement="top">
  569. <span>2</span>
  570. </el-tooltip>
  571. </template>
  572. </el-table-column>
  573. <el-table-column
  574. prop="pj3"
  575. header-align="center"
  576. align="center"
  577. label="3">
  578. <template slot-scope="scope" slot="header">
  579. <el-tooltip effect="dark" :content="$t('作业人员定期培训情况')" placement="top">
  580. <span>3</span>
  581. </el-tooltip>
  582. </template>
  583. </el-table-column>
  584. <el-table-column
  585. prop="pj4"
  586. header-align="center"
  587. align="center"
  588. label="4">
  589. <template slot-scope="scope" slot="header">
  590. <el-tooltip effect="dark" :content="$t('管道本体及支架')" placement="top">
  591. <span>4</span>
  592. </el-tooltip>
  593. </template>
  594. </el-table-column>
  595. <el-table-column
  596. prop="pj5"
  597. header-align="center"
  598. align="center"
  599. label="5">
  600. <template slot-scope="scope" slot="header">
  601. <el-tooltip effect="dark" :content="$t('管道运行情况')" placement="top">
  602. <span>5</span>
  603. </el-tooltip>
  604. </template>
  605. </el-table-column>
  606. <el-table-column
  607. label="安全附件及仪表"
  608. align="center"
  609. >
  610. <el-table-column
  611. prop="pj6"
  612. header-align="center"
  613. align="center"
  614. label="6">
  615. <template slot-scope="scope" slot="header">
  616. <el-tooltip effect="dark" :content="$t('安全阀')" placement="top">
  617. <span>6</span>
  618. </el-tooltip>
  619. </template>
  620. </el-table-column>
  621. <el-table-column
  622. prop="pj7"
  623. header-align="center"
  624. align="center"
  625. label="7">
  626. <template slot-scope="scope" slot="header">
  627. <el-tooltip effect="dark" :content="$t('爆破片装置')" placement="top">
  628. <span>7</span>
  629. </el-tooltip>
  630. </template>
  631. </el-table-column>
  632. <el-table-column
  633. prop="pj8"
  634. header-align="center"
  635. align="center"
  636. label="8">
  637. <template slot-scope="scope" slot="header">
  638. <el-tooltip effect="dark" :content="$t('阻火器装置')" placement="top">
  639. <span>8</span>
  640. </el-tooltip>
  641. </template>
  642. </el-table-column>
  643. <el-table-column
  644. prop="pj9"
  645. header-align="center"
  646. align="center"
  647. label="9">
  648. <template slot-scope="scope" slot="header">
  649. <el-tooltip effect="dark" :content="$t('紧急切断阀')" placement="top">
  650. <span>9</span>
  651. </el-tooltip>
  652. </template>
  653. </el-table-column>
  654. <el-table-column
  655. prop="pj10"
  656. header-align="center"
  657. align="center"
  658. label="10">
  659. <template slot-scope="scope" slot="header">
  660. <el-tooltip effect="dark" :content="$t('压力表')" placement="top">
  661. <span>10</span>
  662. </el-tooltip>
  663. </template>
  664. </el-table-column>
  665. <el-table-column
  666. prop="pj11"
  667. header-align="center"
  668. align="center"
  669. label="11">
  670. <template slot-scope="scope" slot="header">
  671. <el-tooltip effect="dark" :content="$t('测温仪表')" placement="top">
  672. <span>11</span>
  673. </el-tooltip>
  674. </template>
  675. </el-table-column>
  676. </el-table-column>
  677. <el-table-column
  678. prop="pj12"
  679. header-align="center"
  680. align="center"
  681. label="12">
  682. <template slot-scope="scope" slot="header">
  683. <el-tooltip effect="dark" :content="$t('电阻值测量')" placement="top">
  684. <span>12</span>
  685. </el-tooltip>
  686. </template>
  687. </el-table-column>
  688. <el-table-column
  689. prop="pj13"
  690. header-align="center"
  691. align="center"
  692. label="13">
  693. <template slot-scope="scope" slot="header">
  694. <el-tooltip effect="dark" :content="$t('壁厚测定')" placement="top">
  695. <span>13</span>
  696. </el-tooltip>
  697. </template>
  698. </el-table-column>
  699. <el-table-column
  700. prop="checkDate"
  701. header-align="center"
  702. align="center"
  703. :label="$t('检查日期')">
  704. </el-table-column>
  705. <el-table-column
  706. prop="nextCheckDate"
  707. header-align="center"
  708. align="center"
  709. :label="$t('下次年检时间')">
  710. </el-table-column>
  711. <el-table-column
  712. prop="problem"
  713. header-align="center"
  714. align="center"
  715. :label="$t('问题及处理')">
  716. </el-table-column>
  717. <el-table-column
  718. prop="con"
  719. header-align="center"
  720. align="center"
  721. :label="$t('结论')"
  722. :formatter="conFormat">
  723. </el-table-column>
  724. <el-table-column
  725. prop="yearReportNo"
  726. header-align="center"
  727. align="center"
  728. :label="$t('报告编号')">
  729. </el-table-column>
  730. </el-table>
  731. <el-table
  732. v-show="dataForm.approveType != 7 && dataForm.devType == 1"
  733. :data="devList"
  734. border
  735. style="width: 100%; height: 95px">
  736. <el-table-column
  737. prop="plantCode"
  738. header-align="center"
  739. align="center"
  740. :label="$t('装置名称')">
  741. </el-table-column>
  742. <el-table-column
  743. prop="devno"
  744. header-align="center"
  745. align="center"
  746. :label="$t('位号')">
  747. </el-table-column>
  748. <el-table-column
  749. prop="devname"
  750. header-align="center"
  751. align="center"
  752. :show-overflow-tooltip="true"
  753. width="150"
  754. :label="$t('设备名称')">
  755. </el-table-column>
  756. <el-table-column
  757. prop="useno"
  758. header-align="center"
  759. align="center"
  760. :show-overflow-tooltip="true"
  761. :label="$t('使用证编号')">
  762. </el-table-column>
  763. <el-table-column
  764. prop="medium"
  765. header-align="center"
  766. align="center"
  767. :show-overflow-tooltip="true"
  768. :label="$t('介质')">
  769. </el-table-column>
  770. <el-table-column
  771. prop="desPressure"
  772. header-align="center"
  773. align="center"
  774. :show-overflow-tooltip="true"
  775. :label="$t('设计压力')+'(MPa)'">
  776. </el-table-column>
  777. <el-table-column
  778. prop="desTemp"
  779. header-align="center"
  780. align="center"
  781. :show-overflow-tooltip="true"
  782. :label="$t('设计温度')+'(℃)'">
  783. </el-table-column>
  784. </el-table>
  785. <el-table
  786. v-show="dataForm.approveType != 7 && dataForm.devType == 2"
  787. :data="devList"
  788. border
  789. style="width: 100%; height: 95px">
  790. <el-table-column
  791. prop="plantCode"
  792. header-align="center"
  793. align="center"
  794. width="100"
  795. :label="$t('装置名称')">
  796. </el-table-column>
  797. <el-table-column
  798. prop="devno"
  799. header-align="center"
  800. align="center"
  801. width="120"
  802. :label="$t('位号')">
  803. </el-table-column>
  804. <el-table-column
  805. prop="starting"
  806. header-align="center"
  807. align="center"
  808. width="100"
  809. :show-overflow-tooltip="true"
  810. :label="$t('起点')">
  811. </el-table-column>
  812. <el-table-column
  813. prop="ending"
  814. header-align="center"
  815. align="center"
  816. width="100"
  817. :show-overflow-tooltip="true"
  818. :label="$t('终点')">
  819. </el-table-column>
  820. <el-table-column
  821. prop="medium"
  822. header-align="center"
  823. align="center"
  824. width="100"
  825. :show-overflow-tooltip="true"
  826. :label="$t('介质')">
  827. </el-table-column>
  828. <el-table-column
  829. prop="desPressure"
  830. header-align="center"
  831. align="center"
  832. :label="$t('设计压力')">
  833. </el-table-column>
  834. <el-table-column
  835. prop="desTemp"
  836. header-align="center"
  837. align="center"
  838. :label="$t('设计温度')">
  839. </el-table-column>
  840. <el-table-column
  841. prop="optPressure"
  842. header-align="center"
  843. align="center"
  844. :label="$t('工作压力')">
  845. </el-table-column>
  846. <el-table-column
  847. prop="optTemp"
  848. header-align="center"
  849. align="center"
  850. width="100"
  851. :show-overflow-tooltip="true"
  852. :label="$t('工作温度')">
  853. </el-table-column>
  854. </el-table>
  855. <el-table
  856. v-show="dataForm.devType == 3"
  857. :data="devList"
  858. border
  859. style="width: 100%; height: 95px">
  860. <el-table-column
  861. prop="plantCode"
  862. header-align="center"
  863. align="center"
  864. :label="$t('装置名称')">
  865. </el-table-column>
  866. <el-table-column
  867. prop="docno"
  868. header-align="center"
  869. align="center"
  870. :show-overflow-tooltip="true"
  871. :label="$t('档案号')">
  872. </el-table-column>
  873. <el-table-column
  874. prop="devname"
  875. header-align="center"
  876. align="center"
  877. :show-overflow-tooltip="true"
  878. width="150"
  879. :label="$t('设备名称')">
  880. </el-table-column>
  881. <el-table-column
  882. prop="capacity"
  883. header-align="center"
  884. align="center"
  885. :show-overflow-tooltip="true"
  886. :label="$t('起吊重量')+'(ton)'">
  887. </el-table-column>
  888. <el-table-column
  889. prop="location"
  890. header-align="center"
  891. align="center"
  892. :show-overflow-tooltip="true"
  893. :label="$t('使用地点')">
  894. </el-table-column>
  895. </el-table>
  896. <el-table
  897. v-show="dataForm.devType == 4"
  898. :data="devList"
  899. border
  900. style="width: 100%; height: 95px">
  901. <el-table-column
  902. prop="plantCode"
  903. header-align="center"
  904. align="center"
  905. :show-overflow-tooltip="true"
  906. :label="$t('装置名称')">
  907. </el-table-column>
  908. <el-table-column
  909. prop="devno"
  910. header-align="center"
  911. align="center"
  912. :show-overflow-tooltip="true"
  913. :label="$t('位号')">
  914. </el-table-column>
  915. <el-table-column
  916. prop="devname"
  917. header-align="center"
  918. align="center"
  919. :show-overflow-tooltip="true"
  920. width="120"
  921. :label="$t('设备名称')">
  922. </el-table-column>
  923. <el-table-column
  924. prop="useno"
  925. header-align="center"
  926. align="center"
  927. :show-overflow-tooltip="true"
  928. :label="$t('使用证编号')">
  929. </el-table-column>
  930. <el-table-column
  931. prop="desTemp"
  932. header-align="center"
  933. align="center"
  934. :label="$t('设计温度')+'(℃)'">
  935. </el-table-column>
  936. <el-table-column
  937. prop="desPressure"
  938. header-align="center"
  939. align="center"
  940. :label="$t('设计压力')+'(MPa)'">
  941. </el-table-column>
  942. </el-table>
  943. <el-table
  944. v-show="dataForm.devType == 5"
  945. :data="devList"
  946. border
  947. style="width: 100%; height: 95px">
  948. <el-table-column
  949. prop="plantCode"
  950. header-align="center"
  951. align="center"
  952. :label="$t('装置名称')">
  953. </el-table-column>
  954. <el-table-column
  955. prop="docno"
  956. header-align="center"
  957. align="center"
  958. :label="$t('docNo')">
  959. </el-table-column>
  960. <el-table-column
  961. prop="devname"
  962. header-align="center"
  963. align="center"
  964. :show-overflow-tooltip="true"
  965. width="150"
  966. :label="$t('设备名称')">
  967. </el-table-column>
  968. <el-table-column
  969. prop="model"
  970. header-align="center"
  971. align="center"
  972. :show-overflow-tooltip="true"
  973. width="120"
  974. :label="$t('型号')">
  975. </el-table-column>
  976. <el-table-column
  977. prop="location"
  978. header-align="center"
  979. align="center"
  980. :show-overflow-tooltip="true"
  981. :label="$t('使用地点')">
  982. </el-table-column>
  983. </el-table>
  984. <el-table
  985. v-show="dataForm.devType == 6"
  986. :data="devList"
  987. border
  988. style="width: 100%; height: 95px">
  989. <el-table-column
  990. prop="plantCode"
  991. header-align="center"
  992. align="center"
  993. :label="$t('装置名称')">
  994. </el-table-column>
  995. <el-table-column
  996. prop="useDept"
  997. header-align="center"
  998. align="center"
  999. :label="$t('dept')">
  1000. </el-table-column>
  1001. <el-table-column
  1002. prop="carNo"
  1003. header-align="center"
  1004. align="center"
  1005. :label="$t('plateNo')">
  1006. </el-table-column>
  1007. <el-table-column
  1008. prop="docno"
  1009. header-align="center"
  1010. align="center"
  1011. :label="$t('docNo')">
  1012. </el-table-column>
  1013. <el-table-column
  1014. prop="model"
  1015. header-align="center"
  1016. align="center"
  1017. :show-overflow-tooltip="true"
  1018. width="120"
  1019. :label="$t('model')">
  1020. </el-table-column>
  1021. </el-table>
  1022. <el-table
  1023. v-show="dataForm.devType == 7"
  1024. :data="devList"
  1025. border
  1026. style="width: 100%; height: 95px">
  1027. <el-table-column
  1028. prop="plantCode"
  1029. header-align="center"
  1030. align="center"
  1031. :label="$t('装置名称')">
  1032. </el-table-column>
  1033. <el-table-column
  1034. prop="unit"
  1035. header-align="center"
  1036. align="center"
  1037. :label="$t('单元')">
  1038. </el-table-column>
  1039. <el-table-column
  1040. prop="devno"
  1041. header-align="center"
  1042. align="center"
  1043. :label="$t('位号')">
  1044. </el-table-column>
  1045. <el-table-column
  1046. prop="devname"
  1047. header-align="center"
  1048. align="center"
  1049. :label="$t('名称')">
  1050. </el-table-column>
  1051. <el-table-column
  1052. prop="createno"
  1053. header-align="center"
  1054. align="center"
  1055. :label="$t('制造编号')">
  1056. </el-table-column>
  1057. <el-table-column
  1058. prop="indiameter"
  1059. header-align="center"
  1060. align="center"
  1061. :show-overflow-tooltip="true"
  1062. width="120"
  1063. :label="$t('内径')+' mm'">
  1064. </el-table-column>
  1065. <el-table-column
  1066. prop="height"
  1067. header-align="center"
  1068. align="center"
  1069. :show-overflow-tooltip="true"
  1070. width="120"
  1071. :label="$t('高(长)')+' mm'">
  1072. </el-table-column>
  1073. <el-table-column
  1074. prop="chickness"
  1075. header-align="center"
  1076. align="center"
  1077. :show-overflow-tooltip="true"
  1078. width="120"
  1079. :label="$t('壁厚(mm)')">
  1080. </el-table-column>
  1081. <el-table-column
  1082. prop="volume"
  1083. header-align="center"
  1084. align="center"
  1085. :show-overflow-tooltip="true"
  1086. width="120"
  1087. :label="$t('容积mm³')">
  1088. </el-table-column>
  1089. <el-table-column
  1090. prop="medium"
  1091. header-align="center"
  1092. align="center"
  1093. :show-overflow-tooltip="true"
  1094. width="120"
  1095. :label="$t('介质')">
  1096. </el-table-column>
  1097. <el-table-column
  1098. prop="material"
  1099. header-align="center"
  1100. align="center"
  1101. :show-overflow-tooltip="true"
  1102. width="120"
  1103. :label="$t('材料')">
  1104. </el-table-column>
  1105. </el-table>
  1106. <el-button @click="recordHandle(devList,dataForm)" type="text" v-if="devList.length >1">{{$t('更多条目')}}</el-button>
  1107. </el-form-item>
  1108. <el-row>
  1109. <el-col :span="8" v-if="dataForm.approveType != 8">
  1110. <el-form-item :label="$t('设备类型')" prop="devType">
  1111. <el-select v-model="dataForm.devType" :placeholder="$t('message.select')" disabled>
  1112. <el-option
  1113. v-for="dict in devTypeOption"
  1114. :key="dict.dictValue"
  1115. :label="dict.dictLabel"
  1116. :value="parseInt(dict.dictValue)">
  1117. </el-option>
  1118. </el-select>
  1119. </el-form-item>
  1120. </el-col>
  1121. <el-col :span="8">
  1122. <el-form-item :label="$t('审批类型')" prop="approveType">
  1123. <el-select v-model="dataForm.approveType" :placeholder="$t('message.select')" disabled>
  1124. <el-option
  1125. v-for="dict in approveOption"
  1126. :key="dict.dictValue"
  1127. :label="dict.dictLabel"
  1128. :value="parseInt(dict.dictValue)">
  1129. </el-option>
  1130. </el-select>
  1131. </el-form-item>
  1132. </el-col>
  1133. </el-row>
  1134. <el-form-item :label="$t('申请时间')" prop="creattime">
  1135. <el-input v-model="dataForm.creattime" disabled></el-input>
  1136. </el-form-item>
  1137. <el-form-item v-if="[5,7].includes(dataForm.approveType)" :label="$t('原因描述')" prop="content">
  1138. <el-input type="textarea" :placeholder="$t('原因描述')"
  1139. v-model="dataForm.content"
  1140. maxlength="200"
  1141. :autosize="{ minRows: 2, maxRows: 10}" disabled></el-input>
  1142. </el-form-item>
  1143. <template v-if="dataForm.approveType == 5">
  1144. <el-form-item :label="$t('延期日期')" prop="delayDate">
  1145. <el-form-item prop="endTime">
  1146. <el-date-picker
  1147. v-model="dataForm.delayDate"
  1148. type="date"
  1149. value-format="yyyy-MM-dd"
  1150. :placeholder="$t('selectDate')" disabled>
  1151. </el-date-picker>
  1152. </el-form-item>
  1153. </el-form-item>
  1154. <el-form-item :label="$t('延期原因')" prop="delayReason">
  1155. <el-input type="textarea" :placeholder="$t('延期原因')"
  1156. v-model="dataForm.delayReason"
  1157. :autosize="{ minRows: 2, maxRows: 50}" disabled></el-input>
  1158. </el-form-item>
  1159. <el-form-item :label="$t('延期措施')" prop="delayMeasure">
  1160. <el-input type="textarea" :placeholder="$t('延期措施')"
  1161. v-model="dataForm.delayMeasure"
  1162. :autosize="{ minRows: 2, maxRows: 50}" disabled></el-input>
  1163. </el-form-item>
  1164. <el-form-item :label="$t('延期责任安全声明')" prop="delayNotice">
  1165. <el-input type="textarea" :placeholder="$t('延期责任安全声明')"
  1166. v-model="dataForm.delayNotice"
  1167. :autosize="{ minRows: 2, maxRows: 50}" disabled></el-input>
  1168. </el-form-item>
  1169. </template>
  1170. <el-form-item :label="$t('附件')" prop="fileUrls" v-if="[-1,1,2,3,4,5,6].includes(dataForm.approveType)">
  1171. <template v-for="item in this.dataForm.files">
  1172. <a style="margin-right: 40px" class='download' :href='getUrl(item.fileUrl)' download="" target="_blank" :title="$t('download')">{{item.fileName}}</a>
  1173. </template>
  1174. </el-form-item >
  1175. <el-form-item :label="$t('政府回执')" prop="fileUrls" v-if="[-1,1,2,3,4,5,6].includes(dataForm.approveType)">
  1176. <template v-for="item in this.dataForm.govFiles">
  1177. <a style="margin-right: 40px" class='download' :href='getUrl(item.fileUrl)' download="" target="_blank" :title="$t('download')">{{item.fileName}}</a>
  1178. </template>
  1179. </el-form-item >
  1180. <el-form-item :label="$t('回执日期')" v-if="[-1,1,2,3,4,5,6].includes(dataForm.approveType)" prop="govDate">
  1181. <el-input v-model="dataForm.govDate" disabled></el-input>
  1182. </el-form-item>
  1183. </el-form>
  1184. <span v-if="this.taskName == '政府回执'" slot="footer" class="dialog-footer">
  1185. <el-button v-if="this.dataForm.approveType == 5" type="text" size="small" @click="recordLetter()">{{$t('downloadLetter')}}</el-button>
  1186. <el-button v-if="!this.taskForm.taskId == ''" type="primary" @click="dataFormSubmit(1)" :disabled="submitDisabled">{{$t('submitReceipt')}}</el-button>
  1187. </span>
  1188. <span slot="footer" class="dialog-footer" v-else>
  1189. <el-button v-if="this.taskForm.taskId == ''" @click="visible = false">{{$t('message.return')}}</el-button>
  1190. <el-button v-if="!this.taskForm.taskId == ''" type="primary" @click="dataFormSubmit(1)" :disabled="submitDisabled">{{$t('通过')}}</el-button>
  1191. <el-button v-if="!this.taskForm.taskId == ''" type="danger" @click="dataFormSubmit(0)" :disabled="submitDisabled">{{$t('拒绝')}}</el-button>
  1192. </span>
  1193. <div>
  1194. <span>{{$t('流转详情')}}</span>
  1195. <el-table :data="historyList" border v-loading="historyLoading" style="width: 100%;">
  1196. <el-table-column prop="taskName" header-align="center" align="center" :label="$t('流程进度')"></el-table-column>
  1197. <el-table-column prop="userName" header-align="center" align="center" :label="$t('姓名')"></el-table-column>
  1198. <el-table-column prop="taskCreateTime" header-align="center" align="center" :label="$t('开始时间')"></el-table-column>
  1199. <el-table-column prop="taskEndTime" header-align="center" align="center" :label="$t('结束时间')"></el-table-column>
  1200. <el-table-column prop="comment" header-align="center" align="center" :label="$t('审批意见')"></el-table-column>
  1201. </el-table>
  1202. </div>
  1203. <record v-if="recordVisible" ref="recordDeal"></record>
  1204. </el-dialog>
  1205. </template>
  1206. <script>
  1207. import record from "./spec-itemDetail";
  1208. import {getToken} from "@/utils/auth";
  1209. import {getApprove, getApproveInfo, handleApprove} from "@/api/sems/approve";
  1210. import {getHistorylist} from "@/api/ehs/approvedanger";
  1211. export default {
  1212. name: "spec-deal",
  1213. components: {record},
  1214. data() {
  1215. return {
  1216. loading: true,
  1217. // 总条数
  1218. total: 0,
  1219. approvedangerList: [],
  1220. recordVisible: false,
  1221. // 遮罩层
  1222. historyLoading: false,
  1223. //流转列表
  1224. historyList: [],
  1225. visible: false,
  1226. devList: [],
  1227. dataList: [],
  1228. fileTips: '',
  1229. showDelay: false,
  1230. submitDisabled: false,
  1231. dataListLoading:true,
  1232. taskName: '',
  1233. dataForm: {
  1234. id: 0,
  1235. userId: '',
  1236. devId: '',
  1237. devType: '',
  1238. approveType: '',
  1239. content: '',
  1240. fileUrls: '',
  1241. reUrls: '',
  1242. status: '',
  1243. creattime: '',
  1244. plantCode: '',
  1245. unit: '',
  1246. devname: '',
  1247. devno: '',
  1248. files: [],
  1249. govFiles: [],
  1250. delayDate: '',
  1251. delayReason: '',
  1252. delayMeasure: '',
  1253. delayNotice: '',
  1254. govDate: '',
  1255. },
  1256. taskForm: {
  1257. comment: '',
  1258. taskId: '',
  1259. files: '',
  1260. govDate: '',
  1261. govFileList: []
  1262. },
  1263. // 查询参数
  1264. queryParams: {
  1265. processId: null,
  1266. },
  1267. doc: {
  1268. file: "",
  1269. // 是否显示弹出层(报告附件)
  1270. open: false,
  1271. // 弹出层标题(报告附件)
  1272. title: "",
  1273. // 是否禁用上传
  1274. isUploading: false,
  1275. // 是否更新已经存在的用户数据
  1276. updateSupport: 0,
  1277. // 报告附件上传位置编号
  1278. ids: 0,
  1279. // 设置上传的请求头部
  1280. headers: { Authorization: "Bearer " + getToken() },
  1281. // 上传的地址
  1282. url: process.env.VUE_APP_BASE_API + "/sems/specfile/uploadFile",
  1283. commonfileList: null,
  1284. pType: 'traning',
  1285. pId: null
  1286. },
  1287. dataRule: {
  1288. },
  1289. // 容器本体字典
  1290. rqSelfOptions: [],
  1291. // 安全附件字典
  1292. rqSafeOptions: [],
  1293. // 安全保护装置字典
  1294. rqProtectOptions: [],
  1295. // 测量调控装置,紧急切断阀字典
  1296. rqControlOptions: [],
  1297. // 附属仪器仪表字典
  1298. rqInsOptions: [],
  1299. // 有无泄漏字典
  1300. rqOutOptions: [],
  1301. // 管道宏观字典
  1302. gdSelfOptions: [],
  1303. // 安全附件字典
  1304. gdSafeOptions: [],
  1305. // 测量调控装置字典
  1306. gdControlOptions: [],
  1307. // 附属仪器仪表字典
  1308. gdInsOptions: [],
  1309. // 有无泄漏字典
  1310. gdOutOptions: [],
  1311. // 承压部件字典
  1312. glPressureOptions: [],
  1313. // 安全附件字典
  1314. glSafeOptions: [],
  1315. // 仪表及联锁保护装置字典
  1316. glInsOptions: [],
  1317. // 燃烧器字典
  1318. glBurnOptions: [],
  1319. // 人员证书字典
  1320. glCerOptions: [],
  1321. // 水质化验字典
  1322. glWaterOptions: [],
  1323. approveOption: [],
  1324. devTypeOption: [],
  1325. conOptions: [],
  1326. belong: '',
  1327. fileList: [],
  1328. };
  1329. },
  1330. watch: {
  1331. // 根据名称筛选部门树
  1332. deptName(val) {
  1333. this.$refs.tree.filter(val);
  1334. }
  1335. },
  1336. created() {
  1337. this.getDicts("REPORT_CON").then(response => {
  1338. this.conOptions = response.data;
  1339. });
  1340. this.getDicts("ABNORMALITY").then(response => {
  1341. this.rqSelfOptions = response.data;
  1342. });
  1343. this.getDicts("CONFORM").then(response => {
  1344. this.rqSafeOptions = response.data;
  1345. });
  1346. this.getDicts("CONFORM").then(response => {
  1347. this.rqProtectOptions = response.data;
  1348. });
  1349. this.getDicts("INTACT").then(response => {
  1350. this.rqControlOptions = response.data;
  1351. });
  1352. this.getDicts("INTACT").then(response => {
  1353. this.rqInsOptions = response.data;
  1354. });
  1355. this.getDicts("WITH_WITHOUT").then(response => {
  1356. this.rqOutOptions = response.data;
  1357. });
  1358. this.getDicts("ABNORMALITY").then(response => {
  1359. this.gdSelfOptions = response.data;
  1360. });
  1361. this.getDicts("CONFORM").then(response => {
  1362. this.gdSafeOptions = response.data;
  1363. });
  1364. this.getDicts("CONFORM").then(response => {
  1365. this.gdControlOptions = response.data;
  1366. });
  1367. this.getDicts("INTACT").then(response => {
  1368. this.gdInsOptions = response.data;
  1369. });
  1370. this.getDicts("WITH_WITHOUT").then(response => {
  1371. this.gdOutOptions = response.data;
  1372. });
  1373. this.getDicts("ABNORMALITY").then(response => {
  1374. this.glPressureOptions = response.data;
  1375. });
  1376. this.getDicts("CONFORM").then(response => {
  1377. this.glSafeOptions = response.data;
  1378. });
  1379. this.getDicts("CONFORM").then(response => {
  1380. this.glInsOptions = response.data;
  1381. });
  1382. this.getDicts("INTACT").then(response => {
  1383. this.glBurnOptions = response.data;
  1384. });
  1385. this.getDicts("CONFORM").then(response => {
  1386. this.glCerOptions = response.data;
  1387. });
  1388. this.getDicts("CONFORM").then(response => {
  1389. this.glWaterOptions = response.data;
  1390. });
  1391. },
  1392. methods: {
  1393. init (id, taskId, processId,taskName) {
  1394. this.taskForm.govFileList = []
  1395. this.getDicts("spec_approve_type").then(response => {
  1396. this.approveOption = response.data;
  1397. });
  1398. this.getDicts("spec_dev_type").then(response => {
  1399. this.devTypeOption = response.data;
  1400. });
  1401. this.dataForm.processId = processId
  1402. this.taskName = taskName
  1403. this.taskForm.taskId = taskId
  1404. this.dataForm.id = id || 0
  1405. this.visible = true
  1406. this.queryParams.processId = processId;
  1407. getHistorylist(this.queryParams).then(response => {
  1408. this.historyList = response.rows;
  1409. this.historyLoading = false
  1410. });
  1411. getApproveInfo(id).then(response => {
  1412. this.dataForm.userId = response.data.userId
  1413. this.dataForm.devId = response.data.devId
  1414. this.dataForm.devType = response.data.devType
  1415. this.dataForm.approveType = response.data.approveType
  1416. this.dataForm.content = response.data.content
  1417. this.dataForm.fileUrls = response.data.fileUrls
  1418. this.dataForm.reUrls = response.data.reUrls
  1419. this.dataForm.status = response.data.status
  1420. this.dataForm.creattime = response.data.creattime
  1421. this.dataForm.plantCode = response.data.plantCode
  1422. this.dataForm.unit = response.data.unit
  1423. this.dataForm.devname = response.data.devname
  1424. this.dataForm.devno = response.data.devno
  1425. this.dataForm.files = response.data.files
  1426. this.dataForm.govFiles = response.data.govFiles
  1427. this.devList = response.data.devList
  1428. this.dataForm.delayDate = response.data.delayDate
  1429. this.dataForm.delayReason = response.data.delayReason
  1430. this.dataForm.delayMeasure = response.data.delayMeasure
  1431. this.dataForm.delayNotice = response.data.delayNotice
  1432. this.dataForm.govDate = response.data.govDate
  1433. });
  1434. },
  1435. recordLetter(){
  1436. var name = row.fileName;
  1437. var url = row.fileUrl;
  1438. var suffix = url.substring(url.lastIndexOf("."), url.length);
  1439. const a = document.createElement('a')
  1440. a.setAttribute('download', name)
  1441. a.setAttribute('target', '_blank')
  1442. a.setAttribute('href', process.env.VUE_APP_BASE_API + url)
  1443. a.click()
  1444. },
  1445. // 设备类型:字典翻译
  1446. devTypeFormat(row, column) {
  1447. return this.selectDictLabel(this.devTypeOptions, row.devType);
  1448. },
  1449. // 审批类型字典翻译
  1450. approveTypeFormat(row, column) {
  1451. return this.selectDictLabel(this.approveTypeOptions, row.approveType);
  1452. },
  1453. // 检查结论字典翻译
  1454. conFormat(row, column) {
  1455. return this.selectDictLabel(this.conOptions, row.con);
  1456. },
  1457. // 容器本体字典翻译
  1458. rqSelfFormat(row, column) {
  1459. return this.selectDictLabel(this.rqSelfOptions, row.rqSelf);
  1460. },
  1461. // 安全附件字典翻译
  1462. rqSafeFormat(row, column) {
  1463. return this.selectDictLabel(this.rqSafeOptions, row.rqSafe);
  1464. },
  1465. // 安全保护装置字典翻译
  1466. rqProtectFormat(row, column) {
  1467. return this.selectDictLabel(this.rqProtectOptions, row.rqProtect);
  1468. },
  1469. // 测量调控装置,紧急切断阀字典翻译
  1470. rqControlFormat(row, column) {
  1471. return this.selectDictLabel(this.rqControlOptions, row.rqControl);
  1472. },
  1473. // 附属仪器仪表字典翻译
  1474. rqInsFormat(row, column) {
  1475. return this.selectDictLabel(this.rqInsOptions, row.rqIns);
  1476. },
  1477. // 有无泄漏字典翻译
  1478. rqOutFormat(row, column) {
  1479. return this.selectDictLabel(this.rqOutOptions, row.rqOut);
  1480. },
  1481. // 管道宏观字典翻译
  1482. gdSelfFormat(row, column) {
  1483. return this.selectDictLabel(this.gdSelfOptions, row.gdSelf);
  1484. },
  1485. // 安全附件字典翻译
  1486. gdSafeFormat(row, column) {
  1487. return this.selectDictLabel(this.gdSafeOptions, row.gdSafe);
  1488. },
  1489. // 测量调控装置字典翻译
  1490. gdControlFormat(row, column) {
  1491. return this.selectDictLabel(this.gdControlOptions, row.gdControl);
  1492. },
  1493. // 附属仪器仪表字典翻译
  1494. gdInsFormat(row, column) {
  1495. return this.selectDictLabel(this.gdInsOptions, row.gdIns);
  1496. },
  1497. // 有无泄漏字典翻译
  1498. gdOutFormat(row, column) {
  1499. return this.selectDictLabel(this.gdOutOptions, row.gdOut);
  1500. },
  1501. // 承压部件字典翻译
  1502. glPressureFormat(row, column) {
  1503. return this.selectDictLabel(this.glPressureOptions, row.glPressure);
  1504. },
  1505. // 安全附件字典翻译
  1506. glSafeFormat(row, column) {
  1507. return this.selectDictLabel(this.glSafeOptions, row.glSafe);
  1508. },
  1509. // 仪表及联锁保护装置字典翻译
  1510. glInsFormat(row, column) {
  1511. return this.selectDictLabel(this.glInsOptions, row.glIns);
  1512. },
  1513. // 燃烧器字典翻译
  1514. glBurnFormat(row, column) {
  1515. return this.selectDictLabel(this.glBurnOptions, row.glBurn);
  1516. },
  1517. // 人员证书字典翻译
  1518. glCerFormat(row, column) {
  1519. return this.selectDictLabel(this.glCerOptions, row.glCer);
  1520. },
  1521. // 水质化验字典翻译
  1522. glWaterFormat(row, column) {
  1523. return this.selectDictLabel(this.glWaterOptions, row.glWater);
  1524. },
  1525. // 取消按钮
  1526. cancel() {
  1527. this.visible = false;
  1528. this.reset();
  1529. },
  1530. // 表单重置
  1531. reset() {
  1532. this.form = {
  1533. id: null,
  1534. userId: null,
  1535. devId: null,
  1536. devType: null,
  1537. approveType: null,
  1538. content: null,
  1539. fileUrls: null,
  1540. reUrls: null,
  1541. status: 0,
  1542. creattime: null,
  1543. endtime: null,
  1544. processId: null,
  1545. govDate: null,
  1546. delayDate: null,
  1547. delayReason: null,
  1548. delayMeasure: null,
  1549. delayNotice: null,
  1550. apNo: null,
  1551. checkDate: null,
  1552. reportId: null,
  1553. monthId: null,
  1554. delFlag: null,
  1555. deptId: null
  1556. };
  1557. this.resetForm("form");
  1558. },
  1559. /** 搜索按钮操作 */
  1560. handleQuery() {
  1561. this.queryParams.pageNum = 1;
  1562. this.getList();
  1563. },
  1564. /** 重置按钮操作 */
  1565. resetQuery() {
  1566. this.resetForm("queryForm");
  1567. this.handleQuery();
  1568. },
  1569. // 多选框选中数据
  1570. handleSelectionChange(selection) {
  1571. this.ids = selection.map(item => item.id)
  1572. this.single = selection.length!==1
  1573. this.multiple = !selection.length
  1574. },
  1575. /** 新增按钮操作 */
  1576. handleAdd() {
  1577. this.reset();
  1578. this.open = true;
  1579. this.title = this.$t('添加特种设备申请');
  1580. },
  1581. /** 修改按钮操作 */
  1582. handleUpdate(row) {
  1583. this.reset();
  1584. const id = row.id || this.ids
  1585. getApprove(id).then(response => {
  1586. this.form = response.data;
  1587. this.open = true;
  1588. this.title = this.$t('修改特种设备申请');;
  1589. });
  1590. },
  1591. //附件上传中处理
  1592. handleFileDocProgress(event, file, fileList) {
  1593. },
  1594. handleRemove (file, fileList) {
  1595. this.taskForm.govFileList = fileList
  1596. },
  1597. //附件上传成功处理
  1598. handleFileDocSuccess(response, file, fileList) {
  1599. this.taskForm.govFileList = fileList
  1600. if (response.code == 200){
  1601. this.$alert(this.$t('导入成功'), this.$t('导入结果'), { dangerouslyUseHTMLString: true });
  1602. }else {
  1603. this.$alert(response.msg, this.$t('导入结果'), { dangerouslyUseHTMLString: true });
  1604. }
  1605. },
  1606. /** 提交按钮 */
  1607. // 表单提交
  1608. dataFormSubmit (val) {
  1609. this.submitDisabled = true
  1610. console.log(this.taskForm.govFileList)
  1611. this.dataForm.files = []
  1612. if (this.taskForm.govFileList.length > 0) {
  1613. for (let i = 0; i < this.taskForm.govFileList.length; i++) {
  1614. let obj = {}
  1615. obj.fileName = this.taskForm.govFileList[i].response.fileName
  1616. obj.fileUrl = this.taskForm.govFileList[i].response.url
  1617. this.dataForm.files.push(obj)
  1618. }
  1619. }
  1620. this.taskForm.condition = val
  1621. this.taskForm.govFiles = this.dataForm.files
  1622. handleApprove(this.taskForm).then(response => {
  1623. this.msgSuccess(this.$t('处理成功'));
  1624. this.visible = false;
  1625. this.getList();
  1626. });
  1627. this.$nextTick(function () {
  1628. this.comment = ''
  1629. })
  1630. },
  1631. handleChange(value) {
  1632. this.showDelay = false
  1633. if (value == -1) {
  1634. this.fileTips = '提示:请提供相关支持文件'
  1635. }else if (value == 1) {
  1636. this.fileTips = '提示:请提供启用前检查报告'
  1637. }else if (value == 2) {
  1638. this.fileTips = ''
  1639. }else if (value == 3) {
  1640. this.fileTips = '提示:请提供设备主体破坏后的照片,防止被其他单位买走重新使用'
  1641. }else if (value == 4) {
  1642. this.fileTips = '提示:请提供相关支持文件'
  1643. }else if (value == 5) {
  1644. this.showDelay = true
  1645. this.fileTips = '提示:延期发起的会议纪要等背景情况'
  1646. this.dataForm.delayReason=
  1647. '根据2015年压力管道检验报告,清单中的相关管道材质中度球化,安全等级定为3级,下次检验日期定为2018年5月。\n' +
  1648. '由于这些管道连接电厂蒸汽母管,无法单独隔绝,只有在2020年扬巴大修期间才有机会停车检验,因此提出延期申请。\n'
  1649. this.dataForm.delayMeasure=
  1650. '(生产部门,应该根据实际情况,组织机械,电仪各专业,制定具体的运行监控措施描述)\n' +
  1651. '\n' +
  1652. '工艺部门:\n' +
  1653. '维持相关管道操作稳定\n' +
  1654. '持续监控相关管道操作压力和温度\n' +
  1655. '按照法规要求,定期开展应急演练\n' +
  1656. '\n' +
  1657. '\n' +
  1658. '机修部门:\n' +
  1659. '每月对相关管道进行走线巡检,对管道支吊架,保温目视检查。如有问题,记录在巡检记录中\n' +
  1660. '及时报告管道使用情况及需要解决的问题\n' +
  1661. '发生事故及时组织调查处理,并配合写出事故报告书\n' +
  1662. '\n' +
  1663. '电仪部门:\n' +
  1664. 'XXXXXXXXXXX描述电仪方面的维护或监控措施\n'
  1665. this.dataForm.delayNotice=
  1666. '我单位/装置,已制定相应预防措施和应急预案,并保证落实安全管理责任、操作人员持证上岗、安全附件和安全保护装置在有效期内。在检验延期期间,将对以上设备加强巡查和实施有效安全监控,做好监控记录,对延期期间的设备安全负完全责任;在延期期满前,我单位将申报并安排以上设备实施定期检验。'
  1667. }else if (value == 6) {
  1668. this.fileTips = '提示:请提供安全评估报告'
  1669. }else {
  1670. this.fileTips = ''
  1671. }
  1672. },
  1673. recordHandle(devList,dataForm){
  1674. this.recordVisible = true
  1675. this.$nextTick(() => {
  1676. this.$refs.recordDeal.init(devList,dataForm);
  1677. })
  1678. },
  1679. getUrl(url) {
  1680. return process.env.VUE_APP_BASE_API + url
  1681. },
  1682. }
  1683. }
  1684. </script>
  1685. <style>
  1686. .el-textarea.is-disabled .el-textarea__inner {
  1687. color: #404040;
  1688. }
  1689. .el-input.is-disabled .el-input__inner {
  1690. color: #404040;
  1691. }
  1692. </style>