addDialog.vue 49 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391
  1. <template>
  2. <el-dialog class="inspectionPlan-dialog-box"
  3. :title="addDialogTitle" :visible.sync="addDialogType" v-if="addDialogType"
  4. @close="addDialogAllOff" width="1303px" append-to-body>
  5. <div class="inspectionPlan-dialog-add-box" v-show="addDialogBoxType==1">
  6. <div class="left-max-box" v-if="!lookInfoType">
  7. <div class="left-max-title-box">
  8. <img src="@/assets/ZDimages/safetyCheck/icon_jhbt.png">
  9. <p>计划标题快选</p>
  10. </div>
  11. <div class="left-max-list-box scrollbar-box">
  12. <p v-for="(item,index) in quickSelectionList" :key="index" @click="checkTitle(item)">{{item}}</p>
  13. </div>
  14. </div>
  15. <div class="right-max-box scrollbar-box">
  16. <el-form :model="dialogForm" :rules="rules" label-width="140px">
  17. <el-form-item label="计划标题:" prop="data1">
  18. <el-input :disabled="lookInfoType" v-model="dialogForm.data1" placeholder="请输入计划标题" maxLength="30" style="width:450px;"/>
  19. </el-form-item>
  20. <el-form-item label="检查类型:" prop="data2">
  21. <el-input v-model="dialogForm.data2" placeholder="请选择检查类型" maxLength="10" disabled style="width:450px;"/>
  22. </el-form-item>
  23. <el-form-item label="检查周期:" prop="data3">
  24. <div class="date-range-box">
  25. <div class="date-range-left-box">
  26. <el-date-picker
  27. :disabled="lookInfoType"
  28. :clearable="false"
  29. v-model="dialogForm.data3"
  30. style="width:450px;"
  31. value-format="yyyy-MM-dd"
  32. type="daterange"
  33. range-separator="-"
  34. :picker-options="pickerOptions"
  35. start-placeholder="开始日期"
  36. end-placeholder="结束日期"
  37. ></el-date-picker>
  38. </div>
  39. <div class="date-range-right-box" v-if="!lookInfoType">
  40. <p @click="checkTime(1)">本月</p>
  41. <p @click="checkTime(2)">本季度</p>
  42. <p @click="checkTime(3)">全年</p>
  43. </div>
  44. </div>
  45. </el-form-item>
  46. <el-form-item label="检查范围:" prop="data4">
  47. <div class="dialog-range-max-box">
  48. <div class="dialog-range-select-box">
  49. <el-select :disabled="lookInfoType" v-model="dialogForm.data4" placeholder="请选择检查范围" style="width:450px;">
  50. <el-option
  51. v-for="item in dialogRangeOptions"
  52. :key="item.value"
  53. :label="item.label"
  54. :value="item.value">
  55. </el-option>
  56. </el-select>
  57. </div>
  58. <div class="dialog-range-text-box">
  59. <p class="inquire-button-one button-p" v-if="dialogForm.data4 == 2" @click="dialogClickType(2)">{{lookInfoType?'查看':'选择学院'}}</p>
  60. <p class="inquire-button-one button-p" v-if="dialogForm.data4 == 3" @click="dialogClickType(3)">{{lookInfoType?'查看':'选择实验室'}}</p>
  61. <p class="text-p" v-if="dialogForm.data4 == 2">已选择{{deptCheckNum}}个学院,共{{subCheckNum}}间实验室</p>
  62. <p class="text-p" v-if="dialogForm.data4 != 2">已选择{{subCheckNum}}间实验室</p>
  63. </div>
  64. </div>
  65. </el-form-item>
  66. <el-form-item label="检查要求:" prop="data5">
  67. <el-input
  68. :disabled="lookInfoType"
  69. type="textarea"
  70. :autosize="{ minRows: 4, maxRows: 4}"
  71. :placeholder="lookInfoType?'未输入':'请输入检查检查要点:'"
  72. v-model="dialogForm.data5"
  73. maxlength="100"
  74. resize="none"
  75. show-word-limit
  76. style="width:450px;">
  77. </el-input>
  78. </el-form-item>
  79. <el-form-item label="检查材料:" prop="data6">
  80. <div class="dialog-material-max-box">
  81. <div class="dialog-material-button-box" v-if="!lookInfoType">
  82. <el-upload
  83. class="avatar-uploader"
  84. :action="uploadImgUrl"
  85. :show-file-list="false"
  86. :on-success="(res)=>handleAvatarSuccess(res)"
  87. :headers="headers"
  88. :before-upload="beforeAvatarUpload">
  89. <p class="add-button-one-120">+ 选择文件</p>
  90. </el-upload>
  91. <p class="dialog-material-text">支持doc/docx/xls/xlsx/pdf格式文件</p>
  92. </div>
  93. <div class="dialog-material-list-box">
  94. <div v-for="(item,index) in dialogUpList" :key="index">
  95. <img src="@/assets/ZDimages/safetyCheck/icon_dr_wj.png">
  96. <p>{{item.name}}</p>
  97. <p @click="dialogClickType(5,item)">查看</p>
  98. <p @click="delUpData(index)" v-if="!lookInfoType">删除</p>
  99. <p v-if="lookInfoType">下载</p>
  100. </div>
  101. <p class="dialog-material-list-null" v-if="!dialogUpList[0]">暂无数据</p>
  102. </div>
  103. </div>
  104. </el-form-item>
  105. <el-form-item label="巡察组:" prop="data6">
  106. <div class="dialog-table-max-box">
  107. <div v-if="!lookInfoType">
  108. <el-select v-model="dialogForm.data6" placeholder="请选择" @change="groupChange">
  109. <el-option
  110. v-for="item in dialogOptions"
  111. :key="item.id"
  112. :label="item.groupName"
  113. :value="item.id">
  114. </el-option>
  115. </el-select>
  116. </div>
  117. <div class="dialog-table-box">
  118. <div class="dialog-table-title-box">
  119. <img src="@/assets/ZDimages/safetyCheck/icon_xyxc_cy.png">
  120. <p class="dialog-table-title-p">巡查成员</p>
  121. <p v-if="!lookInfoType" class="inquire-button-one dialog-table-title-button" @click="dialogClickType(4)">+ 添加</p>
  122. </div>
  123. <el-table border :data="dialogTableList">
  124. <el-table-column label="序号" align="center" type="index" width="140"/>
  125. <el-table-column label="工号" align="center" prop="deptName" show-overflow-tooltip/>
  126. <el-table-column label="姓名" align="center" prop="deptName" show-overflow-tooltip width="150"/>
  127. <el-table-column label="所在部门" align="center" prop="deptName" show-overflow-tooltip width="150"/>
  128. <el-table-column label="操作" align="center" prop="deptName" width="150" v-if="!lookInfoType">
  129. <template slot-scope="scope">
  130. <div class="table-button-box">
  131. <p class="table-button-null"></p>
  132. <p class="table-button-p" @click="delTable(scope.row)">删除</p>
  133. <p class="table-button-null"></p>
  134. </div>
  135. </template>
  136. </el-table-column>
  137. </el-table>
  138. </div>
  139. </div>
  140. </el-form-item>
  141. </el-form>
  142. </div>
  143. </div>
  144. <div class="inspectionPlan-dialog-dept-box" v-show="addDialogBoxType==2">
  145. <div class="left-max-box">
  146. <div class="dept-table-title-box">
  147. <p>已选学院</p>
  148. <p v-if="!lookInfoType">{{deptNumLeft}}/{{deptTotalLeft}}</p>
  149. <p v-if="lookInfoType">{{deptNumLeft}}</p>
  150. </div>
  151. <div class="dept-table-max-box">
  152. <el-form v-if="!lookInfoType" :model="deptQueryParamsLeft" class="form-box" ref="queryForm" :inline="true" label-width="50px">
  153. <el-form-item label="" prop="searchValue" class="form-index">
  154. <el-input
  155. maxLength="30"
  156. v-model="deptQueryParamsLeft.searchValue"
  157. placeholder="搜索学院"
  158. clearable
  159. style="width: 240px">
  160. <p class="el-icon-search" slot="append" @click="deptGetListLeft"></p>
  161. </el-input>
  162. </el-form-item>
  163. <el-form-item style="margin-right:0;">
  164. <p class="inquire-button-one" @click="deptResetQueryLeft" style="width:60px;margin-right:0;">重置</p>
  165. </el-form-item>
  166. </el-form>
  167. <el-table border :data="deptTableListLeft" @selection-change="deptChange" :row-key="getRowKeys">
  168. <el-table-column v-if="!lookInfoType" type="selection" width="50" :reserve-selection="true" align="center"/>
  169. <el-table-column label="学院" align="center" prop="deptName" show-overflow-tooltip/>
  170. </el-table>
  171. </div>
  172. </div>
  173. <div class="right-max-box">
  174. <div class="dept-table-title-box">
  175. <p>已选实验室15间</p>
  176. <p></p>
  177. </div>
  178. <div class="dept-table-max-box">
  179. <el-form v-if="!lookInfoType" :model="deptQueryParamsRight" class="form-box" ref="queryForm" :inline="true" label-width="50px">
  180. <el-form-item label="" prop="classType">
  181. <el-select v-model="deptQueryParamsRight.classType" clearable placeholder="选择分类" style="width: 120px">
  182. <el-option
  183. v-for="item in classTypeList"
  184. :key="item.key"
  185. :label="item.label"
  186. :value="item.key">
  187. </el-option>
  188. </el-select>
  189. </el-form-item>
  190. <el-form-item label="" prop="classified">
  191. <el-select v-model="deptQueryParamsRight.classified" clearable placeholder="选择分级" style="width: 120px">
  192. <el-option
  193. v-for="item in classifiedList"
  194. :key="item.key"
  195. :label="item.label"
  196. :value="item.key">
  197. </el-option>
  198. </el-select>
  199. </el-form-item>
  200. <el-form-item label="" prop="deptId">
  201. <el-select v-model="deptQueryParamsRight.deptId" clearable placeholder="选择学院" style="width: 120px">
  202. <el-option
  203. v-for="item in deptSelectList"
  204. :key="item.key"
  205. :label="item.label"
  206. :value="item.key">
  207. </el-option>
  208. </el-select>
  209. </el-form-item>
  210. <el-form-item label="" prop="searchValue" class="form-index">
  211. <el-input
  212. maxLength="30"
  213. v-model="deptQueryParamsRight.searchValue"
  214. placeholder="实验室/房间号"
  215. clearable
  216. style="width: 190px">
  217. <p class="el-icon-search" slot="append" @click="deptHandleQueryRight"></p>
  218. </el-input>
  219. </el-form-item>
  220. <el-form-item style="margin-right:0;">
  221. <p class="inquire-button-one" @click="deptResetQueryRight" style="width:60px;margin-right:0;">重置</p>
  222. </el-form-item>
  223. </el-form>
  224. <el-table border :data="deptTableListRight">
  225. <el-table-column label="序号" align="center" type="index" width="60"/>
  226. <el-table-column label="实验室" align="center" prop="deptName" show-overflow-tooltip/>
  227. <el-table-column label="楼东楼层" align="center" prop="deptName" show-overflow-tooltip width="150"/>
  228. <el-table-column label="分类分级" align="center" prop="deptName" show-overflow-tooltip width="150"/>
  229. <el-table-column label="学院" align="center" prop="deptName" show-overflow-tooltip width="140"/>
  230. </el-table>
  231. <pagination :page-sizes="[20, 30, 40, 50]"
  232. v-show="deptTotalRight>0"
  233. :total="deptTotalRight"
  234. :page.sync="deptTableListRight.pageNum"
  235. :limit.sync="deptTableListRight.pageSize"
  236. @pagination="deptGetListRight"
  237. />
  238. </div>
  239. </div>
  240. </div>
  241. <div class="inspectionPlan-dialog-sub-box" v-show="addDialogBoxType==3">
  242. <div v-if="!lookInfoType" class="left-max-box">
  243. <div class="dept-table-title-box">
  244. <p>待选实验室</p>
  245. <p>{{subNumLeft}}/{{subTotalLeft}}</p>
  246. </div>
  247. <div class="dept-table-max-box">
  248. <el-form :model="subQueryParamsLeft" class="form-box" ref="queryForm" :inline="true" label-width="50px">
  249. <el-form-item label="" prop="classType">
  250. <el-select v-model="subQueryParamsLeft.classType" clearable placeholder="选择分类" style="width: 110px">
  251. <el-option
  252. v-for="item in classTypeList"
  253. :key="item.key"
  254. :label="item.label"
  255. :value="item.key">
  256. </el-option>
  257. </el-select>
  258. </el-form-item>
  259. <el-form-item label="" prop="classified">
  260. <el-select v-model="subQueryParamsLeft.classified" clearable placeholder="选择分级" style="width: 110px">
  261. <el-option
  262. v-for="item in classifiedList"
  263. :key="item.key"
  264. :label="item.label"
  265. :value="item.key">
  266. </el-option>
  267. </el-select>
  268. </el-form-item>
  269. <el-form-item label="" prop="deptId">
  270. <el-select v-model="subQueryParamsLeft.deptId" clearable placeholder="学院" style="width: 80px">
  271. <el-option
  272. v-for="item in deptSelectList"
  273. :key="item.key"
  274. :label="item.label"
  275. :value="item.key">
  276. </el-option>
  277. </el-select>
  278. </el-form-item>
  279. <el-form-item label="" prop="searchValue" class="form-index">
  280. <el-input
  281. maxLength="30"
  282. v-model="subQueryParamsLeft.searchValue"
  283. placeholder="实验室/房间号"
  284. clearable
  285. style="width: 140px">
  286. <p class="el-icon-search" slot="append" @click="subHandleQueryLeft"></p>
  287. </el-input>
  288. </el-form-item>
  289. <el-form-item style="margin-right:0;">
  290. <p class="inquire-button-one" @click="subResetQueryLeft" style="width:60px;margin-right:0;">重置</p>
  291. </el-form-item>
  292. </el-form>
  293. <el-table border :data="subTableListLeft" @selection-change="subChangeLeft" :row-key="getRowKeys">
  294. <el-table-column type="selection" width="50" :reserve-selection="true" align="center"/>
  295. <el-table-column label="实验室" align="center" prop="deptName" show-overflow-tooltip/>
  296. <el-table-column label="分类分级" align="center" prop="deptName" show-overflow-tooltip width="120"/>
  297. <el-table-column label="学院" align="center" prop="deptName" show-overflow-tooltip width="150"/>
  298. </el-table>
  299. <pagination :page-sizes="[20, 30, 40, 50]"
  300. v-show="subTotalLeft>0"
  301. :total="subTotalLeft"
  302. :page.sync="subQueryParamsLeft.pageNum"
  303. :limit.sync="subQueryParamsLeft.pageSize"
  304. @pagination="subGetListLeft"/>
  305. </div>
  306. </div>
  307. <div v-if="!lookInfoType" class="center-box">
  308. <p class="el-icon-arrow-left" @click="subArrowButton(1)"></p>
  309. <p class="el-icon-arrow-right" @click="subArrowButton(2)"></p>
  310. </div>
  311. <div class="right-max-box">
  312. <div class="dept-table-title-box">
  313. <p>已选实验室</p>
  314. <p v-if="!lookInfoType">{{subNumRight}}/{{subTotalRight}}</p>
  315. <p v-if="lookInfoType">{{subNumRight}}</p>
  316. </div>
  317. <div class="dept-table-max-box">
  318. <el-form v-if="!lookInfoType" :model="subQueryParamsRight" class="form-box" ref="queryForm" :inline="true" label-width="50px">
  319. <el-form-item label="" prop="classType">
  320. <el-select v-model="subQueryParamsRight.classType" clearable placeholder="选择分类" style="width: 110px">
  321. <el-option
  322. v-for="item in classTypeList"
  323. :key="item.key"
  324. :label="item.label"
  325. :value="item.key">
  326. </el-option>
  327. </el-select>
  328. </el-form-item>
  329. <el-form-item label="" prop="classified">
  330. <el-select v-model="subQueryParamsRight.classified" clearable placeholder="选择分级" style="width: 110px">
  331. <el-option
  332. v-for="item in classifiedList"
  333. :key="item.key"
  334. :label="item.label"
  335. :value="item.key">
  336. </el-option>
  337. </el-select>
  338. </el-form-item>
  339. <el-form-item label="" prop="deptId">
  340. <el-select v-model="subQueryParamsRight.deptId" clearable placeholder="学院" style="width: 80px">
  341. <el-option
  342. v-for="item in deptSelectList"
  343. :key="item.key"
  344. :label="item.label"
  345. :value="item.key">
  346. </el-option>
  347. </el-select>
  348. </el-form-item>
  349. <el-form-item label="" prop="searchValue" class="form-index">
  350. <el-input
  351. maxLength="30"
  352. v-model="subQueryParamsRight.searchValue"
  353. placeholder="实验室/房间号"
  354. clearable
  355. style="width: 140px">
  356. <p class="el-icon-search" slot="append" @click="subHandleQueryRight"></p>
  357. </el-input>
  358. </el-form-item>
  359. <el-form-item style="margin-right:0;">
  360. <p class="inquire-button-one" @click="subResetQueryRight" style="width:60px;margin-right:0;">重置</p>
  361. </el-form-item>
  362. </el-form>
  363. <el-table border :data="subTableListRight" @selection-change="subChangeRight" :row-key="getRowKeys">
  364. <el-table-column v-if="!lookInfoType" type="selection" width="50" :reserve-selection="true" align="center"/>
  365. <el-table-column label="实验室" align="center" prop="deptName" show-overflow-tooltip/>
  366. <el-table-column label="分类分级" align="center" prop="deptName" show-overflow-tooltip width="120"/>
  367. <el-table-column label="学院" align="center" prop="deptName" show-overflow-tooltip width="150"/>
  368. </el-table>
  369. <pagination :page-sizes="[20, 30, 40, 50]"
  370. v-show="subTotalRight>0"
  371. :total="subTotalRight"
  372. :page.sync="subQueryParamsRight.pageNum"
  373. :limit.sync="subQueryParamsRight.pageSize"
  374. @pagination="subGetListRight"/>
  375. </div>
  376. </div>
  377. </div>
  378. <div class="inspectionPlan-dialog-user-box" v-show="addDialogBoxType==4">
  379. <div class="left-max-box">
  380. <div class="dept-table-title-box">
  381. <p>待选人员</p>
  382. <p>{{userNumLeft}}/{{userTotalLeft}}</p>
  383. </div>
  384. <div class="dept-table-max-box">
  385. <el-form :model="userQueryParamsLeft" class="form-box" ref="queryForm" :inline="true" label-width="50px">
  386. <el-form-item label="" prop="deptId">
  387. <el-select v-model="userQueryParamsLeft.deptId" clearable placeholder="选择部门" style="width: 110px">
  388. <el-option
  389. v-for="item in classTypeList"
  390. :key="item.key"
  391. :label="item.label"
  392. :value="item.key">
  393. </el-option>
  394. </el-select>
  395. </el-form-item>
  396. <el-form-item label="" prop="searchValue" class="form-index">
  397. <el-input
  398. maxLength="30"
  399. v-model="userQueryParamsLeft.searchValue"
  400. placeholder="搜索姓名/工号"
  401. clearable
  402. style="width: 240px">
  403. <p class="el-icon-search" slot="append" @click="userHandleQueryLeft"></p>
  404. </el-input>
  405. </el-form-item>
  406. <el-form-item style="margin-right:0;">
  407. <p class="inquire-button-one" @click="userResetQueryLeft" style="width:60px;margin-right:0;">重置</p>
  408. </el-form-item>
  409. </el-form>
  410. <el-table border :data="userTableListLeft" @selection-change="userChangeLeft" :row-key="getRowKeys">
  411. <el-table-column type="selection" width="50" :reserve-selection="true" align="center"/>
  412. <el-table-column label="姓名" align="center" prop="deptName" show-overflow-tooltip/>
  413. <el-table-column label="工号" align="center" prop="deptName" show-overflow-tooltip width="150"/>
  414. <el-table-column label="所在部门" align="center" prop="deptName" show-overflow-tooltip width="168"/>
  415. </el-table>
  416. <pagination :page-sizes="[20, 30, 40, 50]"
  417. v-show="userTotalLeft>0"
  418. :total="userTotalLeft"
  419. :page.sync="userTableListLeft.pageNum"
  420. :limit.sync="userTableListLeft.pageSize"
  421. @pagination="userGetListLeft"/>
  422. </div>
  423. </div>
  424. <div class="center-box">
  425. <p class="el-icon-arrow-left" @click="userArrowButton(1)"></p>
  426. <p class="el-icon-arrow-right" @click="userArrowButton(2)"></p>
  427. </div>
  428. <div class="right-max-box">
  429. <div class="dept-table-title-box">
  430. <p>已选成员</p>
  431. <p>{{userNumRight}}/{{userTotalRight}}</p>
  432. </div>
  433. <div class="dept-table-max-box">
  434. <el-form :model="userQueryParamsRight" class="form-box" ref="queryForm" :inline="true" label-width="50px">
  435. <el-form-item label="" prop="deptId">
  436. <el-select v-model="userQueryParamsRight.deptId" clearable placeholder="选择部门" style="width: 110px">
  437. <el-option
  438. v-for="item in deptSelectList"
  439. :key="item.key"
  440. :label="item.label"
  441. :value="item.key">
  442. </el-option>
  443. </el-select>
  444. </el-form-item>
  445. <el-form-item label="" prop="searchValue" class="form-index">
  446. <el-input
  447. maxLength="30"
  448. v-model="userQueryParamsRight.searchValue"
  449. placeholder="搜索姓名/工号"
  450. clearable
  451. style="width: 240px">
  452. <p class="el-icon-search" slot="append" @click="userHandleQueryRight"></p>
  453. </el-input>
  454. </el-form-item>
  455. <el-form-item style="margin-right:0;">
  456. <p class="inquire-button-one" @click="userResetQueryRight" style="width:60px;margin-right:0;">重置</p>
  457. </el-form-item>
  458. </el-form>
  459. <el-table border :data="userTableListRight" @selection-change="userChangeRight" :row-key="getRowKeys">
  460. <el-table-column type="selection" width="50" :reserve-selection="true" align="center"/>
  461. <el-table-column label="姓名" align="center" prop="deptName" show-overflow-tooltip/>
  462. <el-table-column label="工号" align="center" prop="deptName" show-overflow-tooltip width="150"/>
  463. <el-table-column label="所在部门" align="center" prop="deptName" show-overflow-tooltip width="168"/>
  464. </el-table>
  465. <pagination :page-sizes="[20, 30, 40, 50]"
  466. v-show="userTotalRight>0"
  467. :total="userTotalRight"
  468. :page.sync="userTableListRight.pageNum"
  469. :limit.sync="userTableListRight.pageSize"
  470. @pagination="userGetListRight"/>
  471. </div>
  472. </div>
  473. </div>
  474. <div class="inspectionPlan-dialog-look-box" v-show="addDialogBoxType==5">
  475. <iframe
  476. class="iframe-box"
  477. :src="iframeSrc" scrolling="auto" frameborder="0">
  478. </iframe>
  479. </div>
  480. <div slot="footer" class="dialog-footer dialog-footer-box" style="display: flex">
  481. <p class="dialog-footer-button-null"></p>
  482. <p class="dialog-footer-button-info" @click="addDialogOff">{{addDialogBoxType==1?'取消':'返回'}}</p>
  483. <p class="dialog-footer-button-primary" v-if="!lookInfoType">确定</p>
  484. <p class="dialog-footer-button-null"></p>
  485. </div>
  486. </el-dialog>
  487. </template>
  488. <script>
  489. import { getToken } from "@/utils/auth";
  490. import { getHistoryPlanTitles,findGroupList,checkGroupFind } from '@/api/safetyCheck/index'
  491. export default {
  492. name: 'addDialog',
  493. props:{
  494. addDialogData:{},
  495. },
  496. data(){
  497. return{
  498. uploadImgUrl: this.uploadUrl(), // 上传的图片服务器地址
  499. headers: {
  500. Authorization: "Bearer " + getToken(),
  501. },
  502. addDialogTitle:"",
  503. addDialogType:true,
  504. //弹窗内容状态
  505. addDialogBoxType:1,
  506. // 设置只能选择当前日期及之后的日期
  507. pickerOptions: {
  508. disabledDate(time) {
  509. return time.getTime() < Date.now() - 8.64e7;//如果没有后面的-8.64e7就是不可以选择今天的
  510. }
  511. },
  512. //标题快选数据
  513. quickSelectionList:[],
  514. //巡察组列表
  515. dialogOptions:[],
  516. //上传文件名称暂存
  517. upDataName:"",
  518. //上传文件列表
  519. dialogUpList:[
  520. {
  521. name:"我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容",
  522. url:"statics/bigFile/2023022011/f23a32c8-bf8e-40b5-9e52-04cf73fc6037.docx",
  523. },
  524. {
  525. name:"我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容我是内容",
  526. url:"statics/bigFile/2023022011/f23a32c8-bf8e-40b5-9e52-04cf73fc6037.docx",
  527. }
  528. ],
  529. //选中巡查人员列表
  530. dialogTableList:[],
  531. //巡查范围列表
  532. dialogRangeOptions:[{label:"全校",value:"1"},{label:"学院",value:"2"},{label:"实验室",value:"3"}],
  533. //巡查院系数量
  534. deptCheckNum:0,
  535. //巡查院系列表
  536. deptList:[],
  537. //巡查实验室数量
  538. subCheckNum:0,
  539. //巡查实验室列表
  540. subList:[],
  541. //提交数据
  542. dialogForm:{
  543. data1:"",
  544. data2:"",
  545. data3:[],
  546. data4:"1",
  547. data5:"",
  548. data6:"",
  549. },
  550. // 表单校验
  551. rules: {
  552. data1: [
  553. { required: true, message: "请输入计划标题", trigger: "change" },
  554. { required: true, message: "请输入计划标题", validator: this.spaceJudgment, trigger: "change" },
  555. ],
  556. data3: [
  557. { required: true, message: "请选择检查周期", trigger: "change" },
  558. ],
  559. data4: [
  560. { required: true, message: "请选择检查范围", trigger: "change" },
  561. ],
  562. },
  563. classTypeList:[],
  564. classifiedList:[],
  565. deptSelectList:[],
  566. //查看状态
  567. lookInfoType:false,
  568. /*===================================学院选择相关===================================*/
  569. deptQueryParamsLeft:{
  570. searchValue:"",
  571. },
  572. deptTableListLeft:[{}],
  573. deptTotalLeft:0,
  574. deptNumLeft:0,
  575. deptIdsLeft:[],
  576. deptQueryParamsRight:{},
  577. deptTableListRight:[{}],
  578. deptTotalRight:0,
  579. /*===================================实验室选择相关===================================*/
  580. subQueryParamsLeft:{
  581. classType:"",
  582. classified:"",
  583. deptId:"",
  584. searchValue:"",
  585. },
  586. subTableListLeft:[{}],
  587. subTotalLeft:0,
  588. subNumLeft:0,
  589. subIdsLeft:[],
  590. subQueryParamsRight:{
  591. classType:"",
  592. classified:"",
  593. deptId:"",
  594. searchValue:"",
  595. },
  596. subTableListRight:[{}],
  597. subTotalRight:0,
  598. subNumRight:0,
  599. subIdsRight:[],
  600. /*===================================人员选择相关===================================*/
  601. userQueryParamsLeft:{
  602. deptId:"",
  603. searchValue:"",
  604. },
  605. userTableListLeft:[{}],
  606. userTotalLeft:0,
  607. userNumLeft:0,
  608. userIdsLeft:[],
  609. userQueryParamsRight:{
  610. deptId:"",
  611. searchValue:"",
  612. },
  613. userTableListRight:[{}],
  614. userTotalRight:0,
  615. userNumRight:0,
  616. userIdsRight:[],
  617. /*===================================文档预览===================================*/
  618. iframeSrc:"",
  619. /*===================================弹窗相关结束===================================*/
  620. }
  621. },
  622. created(){
  623. this.$set(this,'addDialogTitle',this.addDialogData.title);
  624. this.$set(this,'lookInfoType',this.addDialogData.lookInfoType);
  625. if(!this.addDialogData.addType){
  626. //编辑
  627. }else{
  628. //新增
  629. }
  630. },
  631. mounted(){
  632. this.initializationInterface();
  633. },
  634. methods:{
  635. //初始化接口
  636. initializationInterface(){
  637. //获取历史标题
  638. getHistoryPlanTitles().then(response => {
  639. let list = ['校级开学检查', '院级开学检查', '月度安全检查', '季度安全检查', '年度安全检查', '专项检查', '紧急检查'];
  640. for(let i=0;i<response.data.length;i++){
  641. list.push(response.data[i].title);
  642. }
  643. this.$set(this,'quickSelectionList',list);
  644. });
  645. //获取巡察组
  646. findGroupList({checkLevel:0}).then(response => {
  647. this.$set(this,'dialogOptions',response.data);
  648. });
  649. },
  650. //选中巡察组
  651. groupChange(val){
  652. checkGroupFind({id:val}).then(response => {
  653. this.$set(this,'dialogTableList',response.data.checkGroupMemberList);
  654. });
  655. },
  656. /*===================================弹窗相关===================================*/
  657. //弹窗关闭
  658. addDialogAllOff(){
  659. this.$parent.addDialogOpen(4)
  660. },
  661. addDialogOff(){
  662. if(this.addDialogBoxType == 1){
  663. this.$parent.addDialogOpen(4)
  664. }else{
  665. this.dialogClickType(1);
  666. }
  667. },
  668. //弹窗状态切换
  669. dialogClickType(type,item){
  670. if(type == 5){
  671. this.$set(this,'iframeSrc',this.urlJudge(item.url));
  672. this.$set(this,'addDialogBoxType',type);
  673. }else{
  674. this.$set(this,'addDialogBoxType',type);
  675. }
  676. },
  677. //选中对应周期
  678. checkTime(type){
  679. let myDate = new Date();
  680. let year = myDate.getFullYear();
  681. let month = myDate.getMonth()+1;
  682. let day = myDate.getDate();
  683. let minTime = year + '-' + month + '-' + day
  684. if(type==1){
  685. let maxTime = this.getMonthFinalDay(year,month);
  686. this.$set(this.dialogForm,'data3',[minTime,maxTime]);
  687. }else if(type==2){
  688. if(month>0 && month<4){
  689. let maxTime = this.getMonthFinalDay(year,3);
  690. this.$set(this.dialogForm,'data3',[minTime,maxTime]);
  691. }else if(month>3 && month<7){
  692. let maxTime = this.getMonthFinalDay(year,6);
  693. this.$set(this.dialogForm,'data3',[minTime,maxTime]);
  694. }else if(month>6 && month<10){
  695. let maxTime = this.getMonthFinalDay(year,9);
  696. this.$set(this.dialogForm,'data3',[minTime,maxTime]);
  697. }else if(month>9 && month<13){
  698. let maxTime = this.getMonthFinalDay(year,12);
  699. this.$set(this.dialogForm,'data3',[minTime,maxTime]);
  700. }
  701. }else if(type==3){
  702. let maxTime = this.getMonthFinalDay(year,12);
  703. this.$set(this.dialogForm,'data3',[minTime,maxTime]);
  704. }
  705. },
  706. //返回指定月份最后一天
  707. getMonthFinalDay(year,month){
  708. var day='';
  709. if(year==null || year==undefined || year==''){
  710. year = new Date().getFullYear();
  711. }
  712. if(month==null || month==undefined || month==''){
  713. month = new Date().getMonth()+1;
  714. }
  715. day = new Date(new Date(year,month).setDate(0)).getDate();
  716. return year+"-"+month+"-"+day;
  717. },
  718. //删除弹窗上传文件
  719. delUpData(index){
  720. this.dialogUpList.splice(index,1)
  721. },
  722. //删除弹窗列表
  723. delTable(row){
  724. let self = this;
  725. for(let i=0;i<self.dialogTableList.length;i++){
  726. if(row.userId == self.dialogTableList[i].userId){
  727. this.dialogTableList.splice(i,1)
  728. }
  729. }
  730. },
  731. //快捷选中标题
  732. checkTitle(val){
  733. this.$set(this.dialogForm,'data1',val);
  734. },
  735. /*===================================学院选择相关===================================*/
  736. //重置
  737. deptResetQueryLeft(){
  738. this.$set(this,'deptQueryParamsLeft',{ searchValue:"", });
  739. this.deptGetListLeft();
  740. },
  741. //查询接口
  742. deptGetListLeft(){
  743. },
  744. //查询
  745. deptHandleQueryRight(){
  746. this.$set(this.deptQueryParamsRight,'pageNum',1);
  747. this.deptGetListRight();
  748. },
  749. //重置
  750. deptResetQueryRight(){
  751. this.$set(this,'deptQueryParamsRight',{
  752. pageNum:1,
  753. pageSize:20,
  754. classType:"",
  755. classified:"",
  756. deptId:"",
  757. searchValue:"",
  758. });
  759. this.deptHandleQueryRight();
  760. },
  761. //查询接口
  762. deptGetListRight(){
  763. },
  764. /*===================================实验室选择相关===================================*/
  765. //查询
  766. subHandleQueryLeft(){
  767. this.$set(this.subQueryParamsLeft,'pageNum',1);
  768. this.subGetListLeft();
  769. },
  770. //重置
  771. subResetQueryLeft(){
  772. this.$set(this,'subQueryParamsLeft',{ searchValue:"", });
  773. this.subHandleQueryLeft();
  774. },
  775. //查询接口
  776. subGetListLeft(){
  777. },
  778. //查询
  779. subHandleQueryRight(){
  780. this.$set(this.subQueryParamsRight,'pageNum',1);
  781. this.subGetListRight();
  782. },
  783. //重置
  784. subResetQueryRight(){
  785. this.$set(this,'subQueryParamsRight',{
  786. pageNum:1,
  787. pageSize:20,
  788. classType:"",
  789. classified:"",
  790. deptId:"",
  791. searchValue:"",
  792. });
  793. this.subHandleQueryRight();
  794. },
  795. //查询接口
  796. subGetListRight(){
  797. },
  798. subArrowButton(type){
  799. if(type == 1){
  800. if(this.subIdsRight[0]){
  801. }
  802. }else if(type == 2){
  803. if(this.subIdsLeft[0]){
  804. }
  805. }
  806. },
  807. /*===================================人员选择相关===================================*/
  808. //查询
  809. userHandleQueryLeft(){
  810. this.$set(this.userQueryParamsLeft,'pageNum',1);
  811. this.userGetListLeft();
  812. },
  813. //重置
  814. userResetQueryLeft(){
  815. this.$set(this,'userQueryParamsLeft',{ searchValue:"", });
  816. this.userHandleQueryLeft();
  817. },
  818. //查询接口
  819. userGetListLeft(){
  820. },
  821. //查询
  822. userHandleQueryRight(){
  823. this.$set(this.userQueryParamsRight,'pageNum',1);
  824. this.userGetListRight();
  825. },
  826. //重置
  827. userResetQueryRight(){
  828. this.$set(this,'userQueryParamsRight',{
  829. pageNum:1,
  830. pageSize:20,
  831. classType:"",
  832. classified:"",
  833. deptId:"",
  834. searchValue:"",
  835. });
  836. this.userHandleQueryRight();
  837. },
  838. //查询接口
  839. userGetListRight(){
  840. },
  841. userArrowButton(type){
  842. if(type == 1){
  843. if(this.userIdsRight[0]){
  844. }
  845. }else if(type == 2){
  846. if(this.userIdsLeft[0]){
  847. }
  848. }
  849. },
  850. /*===================================弹窗相关结束===================================*/
  851. /*==========上传相关==========*/
  852. handleAvatarSuccess(res) {
  853. if(this.dialogUpList.length>9){
  854. this.msgError('已到达上传数量上限')
  855. return
  856. }
  857. let suffixName= this.upDataName.split('.')[this.upDataName.split('.').length - 2]
  858. //判断文件名中是否有逗号和分号
  859. if(suffixName.indexOf(',')==-1 && suffixName.indexOf(';')==-1){
  860. }else{
  861. this.$message.info('文件名里包含逗号或分号,请修改后重新上传!')
  862. return
  863. }
  864. let obj ={
  865. name:this.upDataName,
  866. url:res.data.url,
  867. };
  868. this.dialogUpList.push(obj);
  869. this.$forceUpdate()
  870. },
  871. beforeAvatarUpload(file) {
  872. console.log('file',file)
  873. let type = false;
  874. if (file.type == 'application/pdf' || file.type == 'application/msword' || file.type == 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'|| file.type == 'application/vnd.ms-excel' || file.type == 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') {
  875. this.upDataName = file.name;
  876. type = true;
  877. }else{
  878. this.$message.error('只能上传doc/docx/xls/xlsx/pdf格式');
  879. type = false;
  880. }
  881. return type;
  882. },
  883. /*===记录勾选数据===
  884. 需要再el-table 添加 :row-key="getRowKeys"
  885. 需要在selection 添加 :reserve-selection="true"
  886. */
  887. getRowKeys(row) {
  888. return row.userId
  889. },
  890. deptChange(selection){
  891. this.deptNumLeft = selection.length;
  892. this.deptIdsLeft = selection.map(item => item.userId);
  893. },
  894. subChangeLeft(selection){
  895. this.subNumLeft = selection.length;
  896. this.subIdsLeft = selection.map(item => item.userId);
  897. },
  898. subChangeRight(selection){
  899. this.subNumRight = selection.length;
  900. this.subIdsRight = selection.map(item => item.userId);
  901. },
  902. userChangeLeft(selection){
  903. this.userNumLeft = selection.length;
  904. this.userIdsLeft = selection.map(item => item.userId);
  905. },
  906. userChangeRight(selection){
  907. this.userNumRight = selection.length;
  908. this.userIdsRight = selection.map(item => item.userId);
  909. },
  910. }
  911. }
  912. </script>
  913. <style lang="scss">
  914. .inspectionPlan-dialog-box{
  915. .el-dialog__body{
  916. padding:20px 0 20px 30px;
  917. }
  918. .is-disabled{
  919. background-color: #f5f5f5;
  920. color: #333;
  921. border-color: #f5f5f5;
  922. cursor:auto;
  923. border-radius: 4px;
  924. .el-input__icon{
  925. display: none;
  926. }
  927. .el-input__inner{
  928. background-color: #f5f5f5;
  929. color: #333;
  930. border-color: #f5f5f5;
  931. cursor:auto!important;
  932. border-radius: 4px;
  933. }
  934. .el-range-input{
  935. background-color: #f5f5f5;
  936. color: #333;
  937. border-color: #f5f5f5;
  938. cursor:auto;
  939. border-radius: 4px;
  940. }
  941. .el-textarea__inner{
  942. background-color: #f5f5f5;
  943. color: #333;
  944. border-color: #f5f5f5;
  945. cursor:auto;
  946. border-radius: 4px;
  947. }
  948. }
  949. .inspectionPlan-dialog-add-box{
  950. display: flex;
  951. overflow: hidden;
  952. height:610px;
  953. .left-max-box{
  954. width:270px;
  955. border-right:1px dashed #D8D8D8;
  956. display: flex;
  957. flex-direction: column;
  958. .left-max-title-box{
  959. width:230px;
  960. display: flex;
  961. border-bottom:1px solid #E0E0E0;
  962. img{
  963. width:14px;
  964. height:11px;
  965. margin:33px 18px 33px 0;
  966. }
  967. p{
  968. line-height:78px;
  969. color:#0183FA;
  970. font-size:16px;
  971. }
  972. }
  973. .left-max-list-box{
  974. flex:1;
  975. width:230px;
  976. overflow-x: hidden;
  977. p{
  978. width:230px;
  979. height:40px;
  980. line-height:40px;
  981. padding-left:32px;
  982. margin-top: 10px;
  983. cursor: pointer;
  984. font-size:16px;
  985. color:#333333;
  986. }
  987. p:hover{
  988. background: rgba(1,131,250,0.2);
  989. color:#0183FA;
  990. display:block;
  991. overflow:hidden;
  992. text-overflow:ellipsis;
  993. white-space:nowrap;
  994. }
  995. }
  996. }
  997. .right-max-box{
  998. flex:1;
  999. padding-right:10px;
  1000. .date-range-box{
  1001. display: flex;
  1002. .date-range-left-box{
  1003. margin-right:15px;
  1004. }
  1005. .date-range-right-box{
  1006. display: flex;
  1007. border-radius:4px;
  1008. overflow: hidden;
  1009. border:1px solid #E0E0E0;
  1010. p{
  1011. width: 70px;
  1012. height:34px;
  1013. line-height:34px;
  1014. color:#333;
  1015. font-size:14px;
  1016. text-align: center;
  1017. cursor: pointer;
  1018. }
  1019. p:hover{
  1020. color:#fff;
  1021. background: #0045AF;
  1022. }
  1023. p:nth-child(2){
  1024. border-left:1px solid #E0E0E0;
  1025. border-right:1px solid #E0E0E0;
  1026. }
  1027. }
  1028. }
  1029. .dialog-range-max-box{
  1030. display: flex;
  1031. .dialog-range-select-box{
  1032. }
  1033. .dialog-range-text-box{
  1034. display: flex;
  1035. .button-p{
  1036. margin-left:15px;
  1037. width:100px;
  1038. margin-right:0;
  1039. }
  1040. .text-p{
  1041. line-height:40px;
  1042. color:#0183FA;
  1043. font-size:14px;
  1044. margin-left:15px;
  1045. }
  1046. }
  1047. }
  1048. .dialog-material-max-box{
  1049. .dialog-material-button-box{
  1050. display: flex;
  1051. .dialog-material-text{
  1052. margin-left:20px;
  1053. color:#333333;
  1054. font-size:14px;
  1055. line-height:40px;
  1056. }
  1057. }
  1058. .dialog-material-list-box{
  1059. margin-top:20px;
  1060. div{
  1061. height:40px;
  1062. width:550px;
  1063. display: flex;
  1064. img{
  1065. width:16px;
  1066. height:14px;
  1067. margin:11px 23px 13px 0;
  1068. }
  1069. p:nth-child(2){
  1070. flex:1;
  1071. display:block;
  1072. overflow:hidden;
  1073. text-overflow:ellipsis;
  1074. white-space:nowrap;
  1075. }
  1076. p:nth-child(3){
  1077. color:#0183FA;
  1078. font-size:14px;
  1079. cursor: pointer;
  1080. margin-left:40px;
  1081. }
  1082. p:nth-child(4){
  1083. color:#0183FA;
  1084. font-size:14px;
  1085. cursor: pointer;
  1086. margin-left:40px;
  1087. }
  1088. }
  1089. .dialog-material-list-null{
  1090. text-align: center;
  1091. color:#999;
  1092. font-size:14px;
  1093. }
  1094. }
  1095. }
  1096. .dialog-table-max-box{
  1097. width:747px;
  1098. height:357px;
  1099. display: flex;
  1100. flex-direction: column;
  1101. flex:1;
  1102. /*background: #A11DDF;*/
  1103. overflow: hidden;
  1104. .dialog-table-box{
  1105. margin-top:20px;
  1106. display: flex;
  1107. flex-direction: column;
  1108. flex:1;
  1109. overflow: hidden;
  1110. .dialog-table-title-box{
  1111. display: flex;
  1112. border:1px solid #e0e0e0;
  1113. border-bottom:none;
  1114. img{
  1115. width:14px;
  1116. height:14px;
  1117. margin:18px 12px 18px 12px;
  1118. }
  1119. .dialog-table-title-p{
  1120. line-height:50px;
  1121. flex:1;
  1122. font-size:16px;
  1123. }
  1124. .dialog-table-title-button{
  1125. width:70px;
  1126. height:30px;
  1127. line-height:28px;
  1128. margin:10px 26px;
  1129. }
  1130. }
  1131. }
  1132. }
  1133. }
  1134. }
  1135. .inspectionPlan-dialog-dept-box{
  1136. display: flex;
  1137. overflow: hidden;
  1138. height:610px;
  1139. margin-right:30px;
  1140. .dept-table-title-box{
  1141. display: flex;
  1142. padding:0 20px;
  1143. background: rgba(1,131,250,0.1);
  1144. p{
  1145. flex:1;
  1146. color:#0183FA;
  1147. font-size:16px;
  1148. line-height:40px;
  1149. }
  1150. p:nth-child(1){
  1151. text-align: left;
  1152. }
  1153. p:nth-child(2){
  1154. text-align: right;
  1155. }
  1156. }
  1157. .dept-table-max-box{
  1158. border: 1px solid #e0e0e0;
  1159. flex:1;
  1160. display: flex;
  1161. flex-direction: column;
  1162. overflow: hidden;
  1163. padding:20px;
  1164. .form-index{
  1165. .el-input__inner{
  1166. border-right:none;
  1167. padding-right:0;
  1168. }
  1169. .el-input-group__append{
  1170. background: #fff;
  1171. cursor: pointer;
  1172. padding:0 10px;
  1173. }
  1174. }
  1175. input{
  1176. border: 1px solid #DCDFE6;
  1177. }
  1178. }
  1179. .left-max-box{
  1180. height:610px;
  1181. display: flex;
  1182. flex-direction: column;
  1183. overflow: hidden;
  1184. width:475px;
  1185. margin-right:20px;
  1186. }
  1187. .right-max-box{
  1188. height:610px;
  1189. display: flex;
  1190. flex-direction: column;
  1191. overflow: hidden;
  1192. width:755px;
  1193. }
  1194. }
  1195. .inspectionPlan-dialog-sub-box{
  1196. display: flex;
  1197. overflow: hidden;
  1198. height:610px;
  1199. margin-right:30px;
  1200. .dept-table-title-box{
  1201. display: flex;
  1202. padding:0 20px;
  1203. background: rgba(1,131,250,0.1);
  1204. p{
  1205. flex:1;
  1206. color:#0183FA;
  1207. font-size:16px;
  1208. line-height:40px;
  1209. }
  1210. p:nth-child(1){
  1211. text-align: left;
  1212. }
  1213. p:nth-child(2){
  1214. text-align: right;
  1215. }
  1216. }
  1217. .dept-table-max-box{
  1218. border: 1px solid #e0e0e0;
  1219. flex:1;
  1220. display: flex;
  1221. flex-direction: column;
  1222. overflow: hidden;
  1223. padding:20px;
  1224. .form-index{
  1225. .el-input__inner{
  1226. border-right:none;
  1227. padding-right:0;
  1228. }
  1229. .el-input-group__append{
  1230. background: #fff;
  1231. cursor: pointer;
  1232. padding:0 10px;
  1233. }
  1234. }
  1235. input{
  1236. border: 1px solid #DCDFE6;
  1237. }
  1238. }
  1239. .left-max-box{
  1240. height:610px;
  1241. display: flex;
  1242. flex-direction: column;
  1243. overflow: hidden;
  1244. width:588px;
  1245. }
  1246. .right-max-box{
  1247. height:610px;
  1248. display: flex;
  1249. flex-direction: column;
  1250. overflow: hidden;
  1251. width:588px;
  1252. flex:1;
  1253. }
  1254. .center-box{
  1255. width:68px;
  1256. p{
  1257. display: block;
  1258. border-radius:50%;
  1259. width:30px;
  1260. height:30px;
  1261. line-height:30px;
  1262. text-align: center;
  1263. background: rgba(245,245,245,1);
  1264. color:rgba(62,62,62,1);
  1265. cursor: pointer;
  1266. font-size:16px;
  1267. }
  1268. p:nth-child(1){
  1269. margin:270px 19px 0;
  1270. }
  1271. p:nth-child(2){
  1272. margin:14px 19px 0;
  1273. }
  1274. p:hover{
  1275. color:#fff;
  1276. background: #0183fa;
  1277. }
  1278. }
  1279. }
  1280. .inspectionPlan-dialog-user-box{
  1281. display: flex;
  1282. overflow: hidden;
  1283. height:610px;
  1284. margin-right:30px;
  1285. .dept-table-title-box{
  1286. display: flex;
  1287. padding:0 20px;
  1288. background: rgba(1,131,250,0.1);
  1289. p{
  1290. flex:1;
  1291. color:#0183FA;
  1292. font-size:16px;
  1293. line-height:40px;
  1294. }
  1295. p:nth-child(1){
  1296. text-align: left;
  1297. }
  1298. p:nth-child(2){
  1299. text-align: right;
  1300. }
  1301. }
  1302. .dept-table-max-box{
  1303. border: 1px solid #e0e0e0;
  1304. flex:1;
  1305. display: flex;
  1306. flex-direction: column;
  1307. overflow: hidden;
  1308. padding:20px;
  1309. .form-index{
  1310. .el-input__inner{
  1311. border-right:none;
  1312. padding-right:0;
  1313. }
  1314. .el-input-group__append{
  1315. background: #fff;
  1316. cursor: pointer;
  1317. padding:0 10px;
  1318. }
  1319. }
  1320. input{
  1321. border: 1px solid #DCDFE6;
  1322. }
  1323. }
  1324. .left-max-box{
  1325. height:610px;
  1326. display: flex;
  1327. flex-direction: column;
  1328. overflow: hidden;
  1329. width:588px;
  1330. }
  1331. .right-max-box{
  1332. height:610px;
  1333. display: flex;
  1334. flex-direction: column;
  1335. overflow: hidden;
  1336. width:588px;
  1337. flex:1;
  1338. }
  1339. .center-box{
  1340. width:68px;
  1341. p{
  1342. display: block;
  1343. border-radius:50%;
  1344. width:30px;
  1345. height:30px;
  1346. line-height:30px;
  1347. text-align: center;
  1348. background: rgba(245,245,245,1);
  1349. color:rgba(62,62,62,1);
  1350. cursor: pointer;
  1351. font-size:16px;
  1352. }
  1353. p:nth-child(1){
  1354. margin:270px 19px 0;
  1355. }
  1356. p:nth-child(2){
  1357. margin:14px 19px 0;
  1358. }
  1359. p:hover{
  1360. color:#fff;
  1361. background: #0183fa;
  1362. }
  1363. }
  1364. }
  1365. .inspectionPlan-dialog-look-box{
  1366. display: flex;
  1367. overflow: hidden;
  1368. height:610px;
  1369. margin-right:30px;
  1370. .iframe-box{
  1371. flex:1;
  1372. }
  1373. }
  1374. }
  1375. </style>