infoDialog.vue 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065
  1. <template>
  2. <el-dialog class="safetyHazard-info-dialog-box" @close="outDialog"
  3. :title="infoDialogTitle" :visible.sync="infoDialogType" v-if="infoDialogType"
  4. width="1184px" append-to-body>
  5. <div class="info-dialog-title-box">
  6. <div class="info-dialog-for-title-box" @click="checkTitleButton('info')" :class="infoDialogCheckIndex == 'info'?'info-dialog-for-check':''">
  7. <p>隐患检查</p>
  8. <p></p>
  9. </div>
  10. <div class="info-dialog-for-title-box" :class="infoDialogCheckIndex == index?'info-dialog-for-check':''"
  11. @click="checkTitleButton(index)" v-for="(item,index) in infoDialogList" :key="index">
  12. <p>{{item.name}}</p>
  13. <p></p>
  14. </div>
  15. <div class="info-dialog-for-title-box" v-if="addFormType == 1 || addFormType == 2" @click="checkTitleButton('add')" :class="infoDialogCheckIndex == 'add'?'info-dialog-for-check':''">
  16. <p>{{addFormTitle}}</p>
  17. <p></p>
  18. </div>
  19. </div>
  20. <div class="info-dialog-content-box scrollbar-box">
  21. <div class="info-dialog-content-info" v-if="infoDialogCheckIndex == 'info' && imgDocumentType == 0">
  22. <div class="text-box-box">
  23. <p>计划标题</p>
  24. <p>{{infoDialogData.data1}}</p>
  25. </div>
  26. <div class="text-box-two-box">
  27. <div>
  28. <p>检查类型</p>
  29. <p>{{infoDialogData.data2}}</p>
  30. </div>
  31. <div>
  32. <p>任务周期</p>
  33. <p>{{infoDialogData.data3}}</p>
  34. </div>
  35. </div>
  36. <div class="text-box-two-box">
  37. <div>
  38. <p>学院</p>
  39. <p>{{infoDialogData.data4}}</p>
  40. </div>
  41. <div>
  42. <p>实验室</p>
  43. <p>{{infoDialogData.data5}}</p>
  44. </div>
  45. </div>
  46. <div class="text-box-two-box">
  47. <div>
  48. <p>楼栋</p>
  49. <p>{{infoDialogData.data6}}</p>
  50. </div>
  51. </div>
  52. <div class="text-box-box">
  53. <p>检查要求</p>
  54. <p>{{infoDialogData.data7}}</p>
  55. </div>
  56. <div class="text-box-two-box">
  57. <div>
  58. <p>检查结果</p>
  59. <p>{{infoDialogData.data8}}</p>
  60. </div>
  61. <div>
  62. <p>整改期限</p>
  63. <p>{{infoDialogData.data9}}</p>
  64. </div>
  65. </div>
  66. <div class="button-box">
  67. <p>整改通知书?整改告知书</p>
  68. <p class="inquire-button-one" @click="lookDocument">查看</p>
  69. <p class="add-button-one-90">下载</p>
  70. </div>
  71. <div class="text-box-two-box">
  72. <div>
  73. <p>检查者</p>
  74. <p>{{infoDialogData.data10}}</p>
  75. </div>
  76. <div>
  77. <p>创建时间</p>
  78. <p>{{infoDialogData.data11}}</p>
  79. </div>
  80. </div>
  81. <div class="table-box">
  82. <p class="table-title-p">第1隐患项</p>
  83. <div class="table-min">
  84. <div class="left-box">
  85. <p></p>
  86. <p>检查项目</p>
  87. <p></p>
  88. </div>
  89. <div class="right-box text-two-box">
  90. <p></p>
  91. <p>{{infoDialogData.data12}}</p>
  92. <p></p>
  93. <p>此检查项在当前实验室累计出现 <span>{{infoDialogData.data13}}</span> 次隐患</p>
  94. <p></p>
  95. </div>
  96. </div>
  97. <div class="table-min">
  98. <div class="left-box">
  99. <p></p>
  100. <p>隐患描述</p>
  101. <p></p>
  102. </div>
  103. <div class="right-box text-box">
  104. <p></p>
  105. <p>{{infoDialogData.data14}}</p>
  106. <p></p>
  107. </div>
  108. </div>
  109. <div class="table-min">
  110. <div class="left-box">
  111. <p></p>
  112. <p>隐患等级</p>
  113. <p></p>
  114. </div>
  115. <div class="right-box text-box">
  116. <p></p>
  117. <p>{{infoDialogData.data15}}</p>
  118. <p></p>
  119. </div>
  120. </div>
  121. <div class="table-min">
  122. <div class="left-box">
  123. <p></p>
  124. <p>检查要点</p>
  125. <p></p>
  126. </div>
  127. <div class="right-box text-box">
  128. <p></p>
  129. <p>{{infoDialogData.data16}}</p>
  130. <p></p>
  131. </div>
  132. </div>
  133. <div class="table-min">
  134. <div class="left-box">
  135. <p></p>
  136. <p>隐患照片</p>
  137. <p></p>
  138. </div>
  139. <div class="right-box img-box">
  140. <img src="" v-for="(imgItem,index) in infoDialogData.data17" :key="index" @click="lookImg(infoDialogData.data17,index)">
  141. </div>
  142. </div>
  143. </div>
  144. </div>
  145. <div class="info-dialog-content-type" v-if="infoDialogCheckIndex == index && imgDocumentType == 0"
  146. v-for="(item,index) in infoDialogList" :key="index">
  147. <!--已整改-->
  148. <div class="has-rectification" v-if="item.rectificationType == 1">
  149. <div class="button-box">
  150. <p>整改结果</p>
  151. <p>{{item.dataA}}</p>
  152. </div>
  153. <div class="text-box">
  154. <p>整改措施</p>
  155. <p>{{item.dataB}}</p>
  156. </div>
  157. <div class="img-box">
  158. <p>整改照片</p>
  159. <div>
  160. <img :src="imgItem.url" @click="lookImg(item.lookImgList,imgIndex)"
  161. v-for="(imgItem,imgIndex) in item.lookImgList" :key="imgIndex">
  162. </div>
  163. </div>
  164. <div class="text-box-two">
  165. <div>
  166. <p>整改人</p>
  167. <p>{{item.dataC}}</p>
  168. </div>
  169. <div style="margin-left:26px;">
  170. <p>整改时间</p>
  171. <p>{{item.dataD}}</p>
  172. </div>
  173. </div>
  174. </div>
  175. <!--已审核-->
  176. <div class="has-inspection" v-if="item.rectificationType == 2">
  177. <div class="type-box">
  178. <p>审核结果</p>
  179. <img v-if="item.dataE == 1" src="@/assets/ZDimages/safetyCheck/icon_zcgl_cg.png">
  180. <img v-else src="@/assets/ZDimages/safetyCheck/icon_zcgl_sb.png">
  181. </div>
  182. <div class="text-box">
  183. <p>审核意见</p>
  184. <p>{{item.dataF}}</p>
  185. </div>
  186. <div class="text-box-two">
  187. <div>
  188. <p>审核人</p>
  189. <p>{{item.dataG}}</p>
  190. </div>
  191. <div style="margin-left:26px;">
  192. <p>审核时间</p>
  193. <p>{{item.dataH}}</p>
  194. </div>
  195. </div>
  196. <div class="button-box">
  197. <p>整改报告书</p>
  198. <p class="inquire-button-one" @click="lookDocument">查看</p>
  199. <p class="add-button-one-90">下载</p>
  200. </div>
  201. </div>
  202. </div>
  203. <div class="info-dialog-content-add" v-if="infoDialogCheckIndex == 'add' && imgDocumentType == 0">
  204. <el-form :model="addForm" :rules="rules" label-width="90px">
  205. <!--待整改-->
  206. <div class="stay-rectification" v-if="addFormType == 1">
  207. <el-form-item label="整改结果" prop="dataZ">
  208. <el-radio-group v-model="addForm.dataZ">
  209. <el-radio :label="0">已整改</el-radio>
  210. <el-radio :label="1">暂无法整改</el-radio>
  211. </el-radio-group>
  212. </el-form-item>
  213. <el-form-item label="原因描述" prop="dataX">
  214. <el-input
  215. type="textarea"
  216. :autosize="{ minRows: 4, maxRows: 4}"
  217. placeholder="请输入原因描述"
  218. resize="none"
  219. maxlength="100"
  220. show-word-limit
  221. v-model="addForm.dataX">
  222. </el-input>
  223. </el-form-item>
  224. <el-form-item label="上传照片" prop="upImgList">
  225. <div class="for-img-box" v-for="(img,imgIndex) in addForm.upImgList" :key="imgIndex">
  226. <img class="for-img" :src="img.url" @click="lookImg(addForm.upImgList,imgIndex)">
  227. <p class="for-del-button el-icon-circle-close" @click="delImg(imgIndex)"></p>
  228. </div>
  229. <el-upload
  230. style="display: inline-block;overflow: hidden"
  231. class="avatar-uploader"
  232. :action="uploadImgUrl"
  233. :show-file-list="false"
  234. :on-success="(res)=>handleAvatarSuccess(res,addForm)"
  235. :headers="headers"
  236. :before-upload="(res)=>beforeAvatarUpload(res,addForm)">
  237. <p class="el-icon-plus up-img-p" style="display: inline-block"></p>
  238. </el-upload>
  239. </el-form-item>
  240. <p style="margin-left:80px;">支持jpg/png/bmp/gif格式,且不超过2M,最多上传5张</p>
  241. </div>
  242. <!--待审核-->
  243. <div class="stay-inspection" v-if="addFormType == 2">
  244. <el-form-item label="审核意见" prop="dataY">
  245. <el-input
  246. type="textarea"
  247. :autosize="{ minRows: 4, maxRows: 4}"
  248. placeholder="请输入审核意见"
  249. resize="none"
  250. maxlength="100"
  251. show-word-limit
  252. v-model="addForm.dataY">
  253. </el-input>
  254. </el-form-item>
  255. <div class="quick-selection-box">
  256. <p class="quick-selection-title">快捷输入</p>
  257. <p class="quick-selection-for" @click="stayInspectionClick(item)"
  258. v-for="(item,index) in quickSelection" :key="index">{{item}}</p>
  259. </div>
  260. </div>
  261. </el-form>
  262. </div>
  263. <div class="info-dialog-content-img" v-if="imgDocumentType == 1">
  264. <img :src="imgList[imgIndex].url">
  265. <p class="el-icon-arrow-left left-button-p" @click="infoLeftButton"></p>
  266. <p class="el-icon-arrow-right right-button-p" @click="infoRightButton"></p>
  267. <p class="bottom-num-text">{{imgIndex+1}} / {{imgList.length}}</p>
  268. <p class="out-button" @click="outLook">返回</p>
  269. </div>
  270. <div class="info-dialog-content-document" v-if="imgDocumentType == 2">
  271. <iframe
  272. class="iframe"
  273. :src="iframeSrc" scrolling="auto" frameborder="0">
  274. </iframe>
  275. <p class="out-button" @click="outLook">返回</p>
  276. </div>
  277. </div>
  278. <div class="bottom-button-box dialog-footer-box" v-if="infoDialogCheckIndex == 'add'">
  279. <p class="dialog-footer-button-null"></p>
  280. <p class="dialog-footer-button-info" @click="outDialog">取消</p>
  281. <p class="dialog-footer-button-primary" v-if="addFormType==1">提交</p>
  282. <p class="dialog-footer-button-border" v-if="addFormType==2">驳回</p>
  283. <p class="dialog-footer-button-primary" v-if="addFormType==2">通过</p>
  284. <p class="dialog-footer-button-null"></p>
  285. </div>
  286. </el-dialog>
  287. </template>
  288. <script>
  289. import { getToken } from "@/utils/auth";
  290. export default {
  291. name: 'infoDialog',
  292. data(){
  293. return{
  294. upDataName:"",
  295. uploadImgUrl: this.uploadUrl(), // 上传的图片服务器地址
  296. headers: {
  297. Authorization: "Bearer " + getToken(),
  298. },
  299. infoDialogTitle:"编辑",
  300. infoDialogType:true,
  301. //img 与 document 展示状态
  302. imgDocumentType:0,
  303. infoDialogCheckIndex:'info',
  304. infoDialogData:{
  305. data1:"2023年3月份校级督导检查",
  306. data2:"校园巡查",
  307. data3:"2023-01-01至2024-01-01",
  308. data4:"环境与测绘学院",
  309. data5:"管制类化学品暂存库 - A103",
  310. data6:"实验大楼",
  311. data7:"全部检查",
  312. data8:"不符合",
  313. data9:"2023-01-01",
  314. data10:"李小三",
  315. data11:"2023-01-01 13:00",
  316. data12:"1 检查项目名称 — 1.1 检查项目名称名称名称名称 — 1.1.1 检查项目名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称名称",
  317. data13:"9",
  318. data14:"现场隐患信息隐患信息现场隐患信息隐患信息现场隐患信息隐患信息现场隐患信息隐患信息场隐患信息隐患信息现场隐患信息隐患信息现场隐患信息隐患信息现场隐患信息隐患信息现场隐患信息隐患信息现场隐患信息隐患信息现场隐患信息隐患信息现场隐患信息隐患信息现场隐患信息隐患信息现场隐患",
  319. data15:"一般隐患",
  320. data16:"检查要点内容检查要点内容检查要点内容检查要点内容检查要点内容检查要点内容检查要检查要点内容检查要点内容检查要点内容检查要点内容检查要点内容检查要点内容检查要检查要点内容检查要点内容检查要点内容检查要点内容检查要点内容检查要点内容检查要检查要点内容检查要点内容检查要点内容检查要点内容检查要点内容检查要点内容检查要",
  321. data17:[
  322. {name:"1",url:'https://img2.baidu.com/it/u=3219906533,2982923681&fm=253&fmt=auto&app=138&f=JPEG?w=800&h=500'},
  323. {name:"2",url:'https://img1.baidu.com/it/u=567782244,1695500002&fm=253&fmt=auto&app=138&f=JPEG?w=753&h=500'},
  324. {name:"3",url:'https://img1.baidu.com/it/u=2995157981,91041597&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=750'},
  325. {name:"4",url:'https://img0.baidu.com/it/u=561734853,2461096286&fm=253&fmt=auto&app=138&f=JPEG?w=889&h=500'},
  326. {name:"5",url:'https://img2.baidu.com/it/u=567357414,4240886412&fm=253&fmt=auto&app=138&f=JPEG?w=800&h=500'},
  327. ],
  328. },
  329. infoDialogList:[
  330. {
  331. name:"隐患整改",
  332. rectificationType:1,
  333. dataA:"已整改",
  334. dataB:"已更换电源",
  335. dataC:"李腾腾",
  336. dataD:"2023-03-26 14:00",
  337. lookImgList:[
  338. {name:"1",url:'https://img2.baidu.com/it/u=3219906533,2982923681&fm=253&fmt=auto&app=138&f=JPEG?w=800&h=500'},
  339. {name:"2",url:'https://img1.baidu.com/it/u=567782244,1695500002&fm=253&fmt=auto&app=138&f=JPEG?w=753&h=500'},
  340. {name:"3",url:'https://img1.baidu.com/it/u=2995157981,91041597&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=750'},
  341. {name:"4",url:'https://img0.baidu.com/it/u=561734853,2461096286&fm=253&fmt=auto&app=138&f=JPEG?w=889&h=500'},
  342. {name:"5",url:'https://img2.baidu.com/it/u=567357414,4240886412&fm=253&fmt=auto&app=138&f=JPEG?w=800&h=500'},
  343. ],
  344. },
  345. {
  346. name:"整改复核",
  347. rectificationType:2,
  348. dataE:"1",
  349. dataF:"请补充照片",
  350. dataG:"李腾腾",
  351. dataH:"2023-03-26 14:00",
  352. },
  353. ],
  354. //图片
  355. imgList:[],
  356. imgIndex:0,
  357. saveIndex:0,
  358. //文档地址
  359. iframeSrc:"",
  360. // 提交数据
  361. addFormType:"2",//1整改 2审核
  362. addFormTitle:"二次整改",
  363. addForm:{
  364. dataZ:1,
  365. dataX:"已更换电源",
  366. dataY:"",
  367. upImgList:[],
  368. },
  369. rules: {
  370. dataZ: [
  371. { required: true, message: "请选择隐患等级", trigger: "change" },
  372. ],
  373. dataX: [
  374. { required: true, message: "请选择检查项目", trigger: "change" },
  375. { required: true, message: "请输入隐患描述", validator: this.spaceJudgment, trigger: "change" },
  376. ],
  377. dataY: [
  378. { required: true, message: "请输入隐患描述", trigger: "change" },
  379. ],
  380. },
  381. //快速选择
  382. quickSelection:['复核驳回','未解决','驳回再整改','请补充材料','请补充描述',],
  383. }
  384. },
  385. created(){
  386. },
  387. mounted(){
  388. },
  389. methods:{
  390. //标签切换
  391. checkTitleButton(index){
  392. if(this.infoDialogCheckIndex != index){
  393. this.$set(this,'imgDocumentType',0);
  394. this.$set(this,'infoDialogCheckIndex',index);
  395. }
  396. },
  397. //快速选择内容
  398. stayInspectionClick(val){
  399. this.$set(this.addForm,'dataY',val);
  400. },
  401. //点击查看文档
  402. lookDocument(url){
  403. url = 'http://192.168.1.43/labSystem/statics/bigFile/2023042514/96ca9fcb-bb8e-4e90-a74a-5e94abea3816.pdf'
  404. this.iframeSrc = this.urlJudge(url)
  405. this.$set(this,'imgDocumentType',2);
  406. },
  407. //点击查看图片
  408. lookImg(list,index){
  409. this.$set(this,'imgList',list)
  410. this.$set(this,'imgIndex',index)
  411. this.$set(this,'imgDocumentType',1);
  412. },
  413. outLook(){
  414. this.$set(this,'imgDocumentType',0);
  415. },
  416. //图片左右按键
  417. infoLeftButton(){
  418. if (this.imgIndex == 0){
  419. this.msgError('当前是第一张')
  420. }else{
  421. this.imgIndex--
  422. }
  423. },
  424. infoRightButton(){
  425. if (this.imgIndex == this.imgList.length-1){
  426. this.msgError('当前是最后一张')
  427. }else{
  428. this.imgIndex++
  429. }
  430. },
  431. /*==========上传相关==========*/
  432. handleAvatarSuccess(res,item) {
  433. if(item.upImgList.length>4){
  434. this.msgError('最多只可上传5张')
  435. return
  436. }
  437. let suffixName= this.upDataName.split('.')[this.upDataName.split('.').length - 2]
  438. //判断文件名中是否有逗号和分号
  439. if(suffixName.indexOf(',')==-1 && suffixName.indexOf(';')==-1){
  440. }else{
  441. this.msgError('文件名里包含逗号或分号,请修改后重新上传!')
  442. return
  443. }
  444. let obj ={
  445. name:this.upDataName,
  446. url:res.data.url,
  447. };
  448. item.upImgList.push(obj);
  449. this.$forceUpdate()
  450. },
  451. beforeAvatarUpload(file,item) {
  452. if(item.upImgList.length>4){
  453. this.msgError('最多只可上传5张')
  454. return false
  455. }
  456. let type = false;
  457. if (file.type == 'image/png' || file.type == 'image/jpeg' || file.type == 'image/gif') {
  458. if(file.size> 2000000){
  459. this.msgError('上传图片大小不能超过2M')
  460. return false
  461. }
  462. this.upDataName = file.name;
  463. type = true;
  464. }else{
  465. this.msgError('png/jpeg/gif格式')
  466. type = false;
  467. }
  468. return type;
  469. },
  470. // 删除图片
  471. delImg(imgIndex){
  472. this.addForm.upImgList.splice(imgIndex,1);
  473. },
  474. //退出
  475. outDialog(){
  476. this.$parent.addDialogOpen(false);
  477. },
  478. },
  479. }
  480. </script>
  481. <style scoped lang="scss">
  482. .safetyHazard-info-dialog-box{
  483. ::v-deep .el-dialog__body{
  484. padding:0 0 30px 0;
  485. }
  486. ::v-deep .el-form-item__label{
  487. font-size:16px;
  488. }
  489. .info-dialog-title-box{
  490. border-bottom:1px solid #E0E0E0;
  491. padding:0 30px;
  492. .info-dialog-for-title-box{
  493. height:80px;
  494. width: 80px;
  495. margin-right:44px;
  496. overflow: hidden;
  497. display: inline-block;
  498. p:nth-child(1){
  499. height:44px;
  500. line-height:44px;
  501. margin-top:18px;
  502. text-align: center;
  503. color:#333;
  504. font-size:16px;
  505. cursor: pointer;
  506. }
  507. p:nth-child(2){
  508. height:4px;
  509. width:40px;
  510. margin:0 auto;
  511. border-radius:4px;
  512. }
  513. }
  514. .info-dialog-for-check{
  515. p:nth-child(1){
  516. font-size:16px;
  517. color:#0045AF;
  518. }
  519. p:nth-child(2){
  520. background-color: #0045AF;
  521. }
  522. }
  523. }
  524. .info-dialog-content-box{
  525. padding:30px 70px 0;
  526. height:600px;
  527. .info-dialog-content-info{
  528. .text-box-box{
  529. display: flex;
  530. margin-top:20px;
  531. p{
  532. font-size:16px;
  533. color:#333;
  534. line-height:40px;
  535. }
  536. p:nth-child(1){
  537. width:95px;
  538. text-align: right;
  539. margin-right:16px;
  540. font-size:16px;
  541. }
  542. p:nth-child(2){
  543. width:933px;
  544. padding:0 20px;
  545. overflow: hidden;
  546. background: #F5F5F5;
  547. border-radius:4px;
  548. font-size:14px;
  549. }
  550. }
  551. .text-box-two-box{
  552. display: flex;
  553. margin-top:20px;
  554. div{
  555. display: flex;
  556. p{
  557. font-size:16px;
  558. color:#333;
  559. line-height:40px;
  560. }
  561. p:nth-child(1){
  562. text-align: right;
  563. margin-right:16px;
  564. font-size:16px;
  565. }
  566. p:nth-child(2){
  567. padding:0 20px;
  568. overflow: hidden;
  569. background: #F5F5F5;
  570. border-radius:4px;
  571. font-size:14px;
  572. }
  573. }
  574. div:nth-child(1){
  575. p:nth-child(1){
  576. width:95px;
  577. }
  578. p:nth-child(2){
  579. width:400px;
  580. }
  581. }
  582. div:nth-child(2){
  583. p:nth-child(1){
  584. width:117px;
  585. }
  586. p:nth-child(2){
  587. width:400px;
  588. }
  589. }
  590. }
  591. .button-box{
  592. display: flex;
  593. margin-top:20px;
  594. p{
  595. font-size:16px;
  596. line-height:40px;
  597. }
  598. p:nth-child(1){
  599. color:#333;
  600. width:95px;
  601. text-align: right;
  602. margin-right:16px;
  603. }
  604. p:nth-child(2){
  605. width:70px;
  606. height:30px;
  607. line-height:30px;
  608. margin-top:5px;
  609. margin-right:12px;
  610. font-size:14px;
  611. }
  612. p:nth-child(3){
  613. width:70px;
  614. height:30px;
  615. line-height:30px;
  616. margin-top:5px;
  617. font-size:14px;
  618. }
  619. }
  620. .table-box{
  621. margin-left:16px;
  622. margin-top:20px;
  623. border:1px solid #e0e0e0;
  624. border-bottom:none;
  625. .table-title-p{
  626. background-color: #F5F5F5;
  627. line-height:50px;
  628. padding-left:30px;
  629. border-bottom:1px solid #e0e0e0;
  630. }
  631. .table-min{
  632. display: flex;
  633. overflow: hidden;
  634. border-bottom:1px solid #e0e0e0;
  635. .left-box{
  636. width:120px;
  637. display: flex;
  638. flex-direction: column;
  639. overflow: hidden;
  640. background-color: #F5F5F5;
  641. border-right:1px solid #e0e0e0;
  642. p:nth-child(1){
  643. flex:1;
  644. }
  645. p:nth-child(2){
  646. text-align: center;
  647. height:14px;
  648. line-height:14px;
  649. }
  650. p:nth-child(3){
  651. flex:1;
  652. }
  653. }
  654. .right-box{
  655. flex:1;
  656. overflow: hidden;
  657. min-height:60px;
  658. font-size:14px;
  659. padding:0 16px;
  660. line-height:20px;
  661. }
  662. .text-box{
  663. display: flex;
  664. flex-direction: column;
  665. p:nth-child(1){
  666. flex:1;
  667. min-height:12px;
  668. }
  669. p:nth-child(2){
  670. }
  671. p:nth-child(3){
  672. flex:1;
  673. min-height:12px;
  674. }
  675. }
  676. .text-two-box{
  677. p:nth-child(1){
  678. flex:1;
  679. min-height:12px;
  680. }
  681. p:nth-child(2){
  682. }
  683. p:nth-child(3){
  684. flex:1;
  685. min-height:12px;
  686. }
  687. p:nth-child(4){
  688. span{
  689. color:#FF0000;
  690. }
  691. }
  692. p:nth-child(5){
  693. flex:1;
  694. min-height:12px;
  695. }
  696. }
  697. .img-box{
  698. padding:20px;
  699. img{
  700. cursor: pointer;
  701. height:80px;
  702. width:80px;
  703. margin-right:10px;
  704. border-radius:4px;
  705. }
  706. }
  707. }
  708. }
  709. }
  710. .info-dialog-content-type{
  711. .has-rectification{
  712. .button-box{
  713. display: flex;
  714. p:nth-child(1){
  715. height:40px;
  716. line-height:40px;
  717. width:80px;
  718. font-size:16px;
  719. color:#333;
  720. text-align: right;
  721. margin-right:15px;
  722. }
  723. p:nth-child(2){
  724. text-align: center;
  725. width:80px;
  726. height:30px;
  727. margin-top:5px;
  728. line-height:30px;
  729. font-size:14px;
  730. color:#0183FA;
  731. }
  732. }
  733. .text-box{
  734. margin-top:20px;
  735. display: flex;
  736. p:nth-child(1){
  737. height:40px;
  738. line-height:40px;
  739. width:80px;
  740. font-size:16px;
  741. color:#333;
  742. text-align: right;
  743. margin-right:15px;
  744. }
  745. p:nth-child(2){
  746. font-size:14px;
  747. line-height:20px;
  748. min-height: 70px;
  749. padding:15px 20px;
  750. flex:1;
  751. background-color: #F5F5F5;
  752. border-radius:4px;
  753. }
  754. }
  755. .img-box{
  756. margin-top:20px;
  757. display: flex;
  758. p{
  759. height:40px;
  760. line-height:40px;
  761. width:80px;
  762. font-size:16px;
  763. color:#333;
  764. text-align: right;
  765. margin-right:15px;
  766. }
  767. img{
  768. cursor: pointer;
  769. width:80px;
  770. height:80px;
  771. margin-right:10px;
  772. border-radius:4px;
  773. }
  774. }
  775. .text-box-two{
  776. margin-top:20px;
  777. display: flex;
  778. div{
  779. display: flex;
  780. p:nth-child(1){
  781. height:40px;
  782. line-height:40px;
  783. width:80px;
  784. font-size:16px;
  785. color:#333;
  786. text-align: right;
  787. margin-right:15px;
  788. }
  789. p:nth-child(2){
  790. width:412px;
  791. height:40px;
  792. font-size:14px;
  793. line-height:40px;
  794. padding:0 20px;
  795. background-color: #F5F5F5;
  796. border-radius:4px;
  797. }
  798. }
  799. }
  800. }
  801. .has-inspection{
  802. .type-box{
  803. display: flex;
  804. p:nth-child(1){
  805. height:40px;
  806. line-height:40px;
  807. width:80px;
  808. font-size:16px;
  809. color:#333;
  810. text-align: right;
  811. margin-right:15px;
  812. }
  813. img{
  814. width:60px;
  815. height:52px;
  816. }
  817. }
  818. .text-box{
  819. margin-top:20px;
  820. display: flex;
  821. p:nth-child(1){
  822. height:40px;
  823. line-height:40px;
  824. width:80px;
  825. font-size:16px;
  826. color:#333;
  827. text-align: right;
  828. margin-right:15px;
  829. }
  830. p:nth-child(2){
  831. font-size:14px;
  832. line-height:20px;
  833. min-height: 70px;
  834. padding:15px 20px;
  835. flex:1;
  836. background-color: #F5F5F5;
  837. border-radius:4px;
  838. }
  839. }
  840. .text-box-two{
  841. margin-top:20px;
  842. display: flex;
  843. div{
  844. display: flex;
  845. p:nth-child(1){
  846. height:40px;
  847. line-height:40px;
  848. width:80px;
  849. font-size:16px;
  850. color:#333;
  851. text-align: right;
  852. margin-right:15px;
  853. }
  854. p:nth-child(2){
  855. width:412px;
  856. height:40px;
  857. font-size:14px;
  858. line-height:40px;
  859. padding:0 20px;
  860. background-color: #F5F5F5;
  861. border-radius:4px;
  862. }
  863. }
  864. }
  865. .button-box{
  866. margin-top:20px;
  867. display: flex;
  868. p:nth-child(1){
  869. height:40px;
  870. line-height:40px;
  871. width:80px;
  872. font-size:16px;
  873. color:#333;
  874. text-align: right;
  875. margin-right:15px;
  876. }
  877. p:nth-child(2){
  878. width:70px;
  879. height:30px;
  880. line-height:30px;
  881. margin-top:5px;
  882. }
  883. p:nth-child(3){
  884. width:70px;
  885. height:30px;
  886. line-height:30px;
  887. margin-top:5px;
  888. }
  889. }
  890. }
  891. }
  892. .info-dialog-content-add{
  893. .stay-rectification{
  894. .up-img-p{
  895. height:80px;
  896. width:80px;
  897. line-height:80px;
  898. text-align: center;
  899. font-size:16px;
  900. border-radius:4px;
  901. border:1px dashed #E0E0E0;
  902. }
  903. .for-img-box{
  904. width:80px;
  905. height:80px;
  906. border-radius:4px;
  907. display: inline-block;
  908. overflow: hidden;
  909. margin-right:20px;
  910. position: relative;
  911. .for-img{
  912. width:80px;
  913. height:80px;
  914. display: inline-block;
  915. overflow: hidden;
  916. }
  917. .for-del-button{
  918. background: rgba(0,0,0,0.7);
  919. width:20px;
  920. height:20px;
  921. line-height: 20px;
  922. text-align: center;
  923. color:#fff;
  924. border-bottom-left-radius:4px;
  925. cursor: pointer;
  926. position: absolute;
  927. top:0;
  928. right:0;
  929. }
  930. }
  931. }
  932. .stay-inspection{
  933. .quick-selection-box{
  934. display: flex;
  935. margin-top:20px;
  936. .quick-selection-title{
  937. margin-left:90px;
  938. height:40px;
  939. line-height:40px;
  940. font-size:14px;
  941. margin-right:23px;
  942. }
  943. .quick-selection-for{
  944. width:100px;
  945. height:40px;
  946. font-size:14px;
  947. text-align: center;
  948. line-height:40px;
  949. margin-right:10px;
  950. color:#333;
  951. background-color: #F5F5F5;
  952. border-radius:4px;
  953. cursor: pointer;
  954. }
  955. .quick-selection-for:hover{
  956. background: rgba(1,131,250,0.2);
  957. color:#0183FA ;
  958. }
  959. }
  960. }
  961. }
  962. .info-dialog-content-img{
  963. img{
  964. width:1040px;
  965. }
  966. .left-button-p{
  967. cursor: pointer;
  968. text-align: center;
  969. line-height:30px;
  970. color:#fff;
  971. font-size:16px;
  972. top:440px;
  973. left:20px;
  974. position: absolute;
  975. width:30px;
  976. height:30px;
  977. background-color: #0045AF;
  978. border-radius:50%;
  979. }
  980. .right-button-p{
  981. cursor: pointer;
  982. text-align: center;
  983. line-height:30px;
  984. color:#fff;
  985. font-size:16px;
  986. position: absolute;
  987. top:440px;
  988. right:20px;
  989. width:30px;
  990. height:30px;
  991. background-color: #0045AF;
  992. border-radius:50%;
  993. }
  994. .left-button-p:hover{
  995. background-color: #0183fa;
  996. }
  997. .right-button-p:hover{
  998. background-color: #0183fa;
  999. }
  1000. .bottom-num-text{
  1001. text-align: center;
  1002. line-height: 30px;
  1003. font-size:16px;
  1004. position: absolute;
  1005. bottom:0;
  1006. width:1026px;
  1007. }
  1008. .out-button{
  1009. width:60px;
  1010. line-height:30px;
  1011. color:#999;
  1012. background-color: #dedede;
  1013. border-radius:4px;
  1014. text-align: center;
  1015. cursor: pointer;
  1016. position: absolute;
  1017. top:17px;
  1018. right:17px;
  1019. z-index:99999;
  1020. }
  1021. }
  1022. .info-dialog-content-document{
  1023. display: flex;
  1024. flex:1;
  1025. height:700px;
  1026. .iframe{
  1027. flex:1;
  1028. height:700px;
  1029. }
  1030. .out-button{
  1031. width:60px;
  1032. line-height:30px;
  1033. color:#999;
  1034. background-color: #dedede;
  1035. border-radius:4px;
  1036. text-align: center;
  1037. cursor: pointer;
  1038. position: absolute;
  1039. top:17px;
  1040. right:17px;
  1041. z-index:99999;
  1042. }
  1043. }
  1044. }
  1045. .bottom-button-box{
  1046. height:60px;
  1047. width:1184px;
  1048. position: absolute;
  1049. bottom:0;
  1050. padding-top:15px;
  1051. border-top:1px solid #D8D8D8;
  1052. display: flex;
  1053. }
  1054. }
  1055. </style>