safetyExamineWorkbench.vue 60 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010
  1. <!-- 安全检查-工作台 -->
  2. <template>
  3. <view class="examine">
  4. <scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
  5. <view class="tabTitle_identity" v-if="tabTextIdentity.length>1">
  6. <view class="tabTitle_identity_li" @tap="tabClickIdentity(item,index)" :key="index" v-for="(item,index) in tabTextIdentity">
  7. <view :class="{on:curTabIdentity==index}" class="tabTitle_identity_text">{{item.name}}</view>
  8. <view :class="{on:curTabIdentity==index}" class="tabTitle_identity_across"></view>
  9. </view>
  10. </view>
  11. <view>
  12. <view class="statistics" v-if="pageType==1 || pageType==2">
  13. <view class="statistics_li" v-for="(item,index) in statisticsList" :key="index">
  14. <text>{{item.name}}</text>
  15. <text>{{item.value}}</text>
  16. </view>
  17. </view>
  18. <viwe class="inspect_btn" v-if="pageType==1 || pageType==2">
  19. <view class="inspect_btn_li" @click="handleClick('','patrolPlan')" v-if="!collegeGentle">
  20. <img src="@/pages_safetyExamine/images/icon_xyxc_xyxc.png"/>
  21. <text>校院巡查</text>
  22. </view>
  23. <text class="line" v-if="!collegeGentle"></text>
  24. <view class="inspect_btn_li" @click="handleClick('','selfPlan')">
  25. <img src="@/pages_safetyExamine/images/icon_xyxc_syszc.png"/>
  26. <text>实验室自查</text>
  27. </view>
  28. <text class="line"></text>
  29. <view class="inspect_btn_li" @click="handleClick('','dangerPlan')">
  30. <img src="@/pages_safetyExamine/images/icon_xyxc_aqyh.png"/>
  31. <text>安全隐患</text>
  32. </view>
  33. <text class="line"></text>
  34. <view class="inspect_btn_li" @click="handleClick('','snapshot')">
  35. <img src="@/pages_safetyExamine/images/icon_aqjc_ssp.png"/>
  36. <text>随手拍</text>
  37. </view>
  38. </viwe>
  39. <!--管理员------------- -->
  40. <view class="tabTitle" v-if="pageType==1">
  41. <view class="tabTitle_li" @tap="tabClick(index)" :key="index" v-for="(item,index) in tabText">
  42. <view :class="{on:curTab==index}" class="tabTitle_text">{{item.name}}<text>{{item.num}}</text></view>
  43. <view :class="{on:curTab==index}" class="tabTitle_across"></view>
  44. </view>
  45. </view>
  46. <view class="list" v-if="pageType==1">
  47. <view class="list_li" v-for="(item,index) in dataList" :key="index" @click="handleClick(item,'edit')">
  48. <view class="list_li_t">
  49. <view class="list_li_t_l">
  50. <img v-if="item.checkRange==1" src="@/pages_safetyExamine/images/icon_xyxc_qx.png"/>
  51. <img v-if="item.checkRange==2" src="@/pages_safetyExamine/images/icon_xyxc_xy.png"/>
  52. <img v-if="item.checkRange==3" src="@/pages_safetyExamine/images/icon_xyxc_sys.png"/>
  53. <text></text>
  54. </view>
  55. <view class="list_li_t_c">{{item.title}}</view>
  56. <view class="list_li_t_r"></view>
  57. </view>
  58. <view class="list_li_m">
  59. <view class="list_li_m_t">计划周期:{{item.cycleStartTime}}至{{item.cycleEndTime}}</view>
  60. <view class="list_li_m_b">
  61. <text class="blue_color" v-if="item.checkStatus==1">未开始</text>
  62. <text class="red_color" v-if="item.checkStatus==2">进行中</text>
  63. <text>{{item.checkType==1?'校院巡查':'实验室自查'}}-{{item.checkCategory==1?'综合检查':'专项检查'}}</text>
  64. </view>
  65. </view>
  66. <view class="list_li_b">
  67. <img src="@/pages_safetyExamine/images/icon_djcsys.png"/>
  68. <text v-if="item.checkStatus==1">待检查实验室:</text>
  69. <text v-if="item.checkStatus==1">{{item.subjectNum}}间</text>
  70. <text v-if="item.checkStatus==2">检查进度:</text>
  71. <text v-if="item.checkStatus==2">{{item.checkSchedule}}间</text>
  72. </view>
  73. </view>
  74. </view>
  75. <!--检查者------------- -->
  76. <view class="tabTitle_tow" v-if="pageType==2">
  77. <view class="tabTitle_tow_li" @tap="tabClickTow(index)" :key="index" v-for="(item,index) in tabTextTow">
  78. <view :class="{on:curTabTow==index}" class="tabTitle_tow_text">{{item.name}}<text>{{item.num}}</text></view>
  79. <view :class="{on:curTabTow==index}" class="tabTitle_tow_across"></view>
  80. </view>
  81. </view>
  82. <view class="list_tow" v-if="pageType==2">
  83. <view class="list_tow_li" v-for="(item,index) in dataList2" :key="index">
  84. <view class="list_tow_li_t">
  85. <view class="list_tow_li_t_l">
  86. <img v-if="item.checkRange==1" src="@/pages_safetyExamine/images/icon_xyxc_qx.png"/>
  87. <img v-if="item.checkRange==2" src="@/pages_safetyExamine/images/icon_xyxc_xy.png"/>
  88. <img v-if="item.checkRange==3" src="@/pages_safetyExamine/images/icon_xyxc_sys.png"/>
  89. <text></text>
  90. </view>
  91. <view class="list_tow_li_t_c" v-if="curTabTow==0 || curTabTow==1">{{item.subjectName}}-{{item.roomNumber}}</view>
  92. <view class="list_tow_li_t_c" v-if="curTabTow==2 && item.rectifyStatus==3">{{item.subRoom}}</view>
  93. <view class="list_tow_li_t_c2" v-if="(curTabTow==0 || curTabTow==1) && item.isOverdue==1">已逾期</view>
  94. <view class="list_tow_li_t_c2" v-if="curTabTow==2 && item.overdueStatus==3">已逾期</view>
  95. <view class="list_tow_li_t_r"></view>
  96. </view>
  97. <view class="list_tow_li_m">
  98. <view class="list_tow_li_m_t">{{item.title}}</view>
  99. <view class="list_tow_li_m_b">
  100. <text class="blue_color" v-if="item.manageStatus==0">待检查</text>
  101. <text class="red_color" v-if="item.manageStatus==1">检查中</text>
  102. <text class="green_color" v-if="item.manageStatus==2">已检查</text>
  103. <text class="orange_color" v-if="curTabTow==2 && item.rectifyStatus==3">待审核</text>
  104. <text v-if="item.manageStatus==0 || item.manageStatus==1 || item.manageStatus==2">{{item.checkType==1?'校院巡查':'实验室自查'}}-{{item.checkCategory==1?'综合检查':'专项检查'}}</text>
  105. <text v-if="curTabTow==2 && item.rectifyStatus==3">{{item.hazardType==1?'校院巡查':'实验室自查'}}-{{item.checkCategory==1?'综合检查':'专项检查'}}</text>
  106. <text>{{item.collegeName}}</text>
  107. </view>
  108. </view>
  109. <!-- 开始检查 -->
  110. <view v-if="curTabTow==2 && item.rectifyStatus==3" class="list_tow_li_b" @click="handleTowClick(item,'check')">{{item.applyGentle?'复核':'详情'}}</view>
  111. <view v-if="item.buttonHide && item.isSelfData==1">
  112. <view v-if="(curTabTow==0 || curTabTow==1) && item.manageStatus==0 && item.notStarted" class="list_tow_li_b" @click="handleTowClick(item,'add')">开始检查</view>
  113. <view v-if="(curTabTow==0 || curTabTow==1) &&item.manageStatus==1 && item.notStarted" class="list_tow_li_b" @click="handleTowClick(item,'edit')">编辑</view>
  114. <view v-if="(curTabTow==0 || curTabTow==1) &&!item.notStarted" class="list_tow_li_b_tow"><img src="@/pages_safetyExamine/images/icon_xyxcgl_jhwks.png"/>计划未开始</view>
  115. <view v-if="(curTabTow==0 || curTabTow==1) &&item.manageStatus==2 && item.notStarted" class="list_tow_li_b_three">
  116. <img src="@/pages_safetyExamine/images/icon_djcsys.png"/>
  117. <text>整改进度:</text>
  118. <text>{{item.rectifySchedule}}</text>
  119. <text class="report">整改报告</text>
  120. </view>
  121. </view>
  122. </view>
  123. </view>
  124. <!-- 整改人----------- -->
  125. <view class="statistics_three" v-if="pageType==3">
  126. <view class="statistics_three_li" v-for="(item,index) in statisticsListThree" :key="index">
  127. <text>{{item.name}}</text>
  128. <text>{{item.value}}</text>
  129. </view>
  130. </view>
  131. <viwe class="inspect_btn_three" v-if="pageType==3">
  132. <view class="inspect_btn_three_li" @click="handleClick('','schoolDanger')">
  133. <img src="@/pages_safetyExamine/images/icon_xyxc_xyxc.png"/>
  134. <text>校院巡查隐患</text>
  135. </view>
  136. <text class="line"></text>
  137. <view class="inspect_btn_three_li" @click="handleClick('','labDanger')">
  138. <img src="@/pages_safetyExamine/images/icon_xyxc_syszc.png"/>
  139. <text>实验室自查隐患</text>
  140. </view>
  141. <text class="line"></text>
  142. <view class="inspect_btn_three_li" @click="handleClick('','snapshot')">
  143. <img src="@/pages_safetyExamine/images/icon_aqjc_ssp.png"/>
  144. <text>随手拍</text>
  145. </view>
  146. </viwe>
  147. <view class="tabTitle_three" v-if="pageType==3">
  148. <view class="tabTitle_three_li" @tap="tabClickThree(index)" :key="index" v-for="(item,index) in tabTextThree">
  149. <view :class="{on:curTabThree==index}" class="tabTitle_three_text">{{item.name}}<text>{{item.num}}</text></view>
  150. <view :class="{on:curTabThree==index}" class="tabTitle_three_across"></view>
  151. </view>
  152. </view>
  153. <view class="list_three" v-if="pageType==3">
  154. <view class="list_three_li" v-for="(item,index) in dataList3" :key="index" @click="handleThreeClick(item,'detail')">
  155. <view class="list_three_li_t">
  156. <view class="list_three_li_t_l">
  157. <img v-if="item.checkRange==1" src="@/pages_safetyExamine/images/icon_xyxc_qx.png"/>
  158. <img v-if="item.checkRange==2" src="@/pages_safetyExamine/images/icon_xyxc_xy.png"/>
  159. <img v-if="item.checkRange==3" src="@/pages_safetyExamine/images/icon_xyxc_sys.png"/>
  160. <text></text>
  161. </view>
  162. <!-- 隐患 -->
  163. <view class="list_three_li_t_c" v-if="curTabThree==0">{{item.subRoom}}</view>
  164. <!-- 随手拍 -->
  165. <view class="list_three_li_t_c" v-if="curTabThree==1">{{item.subName}}</view>
  166. <view class="list_three_li_t_c2" v-if="item.overdueStatus==1">已逾期</view>
  167. <view class="list_three_li_t_r"></view>
  168. </view>
  169. <view class="list_three_li_m">
  170. <!-- 隐患 -->
  171. <view class="list_three_li_m_t" v-if="curTabThree==0">{{item.hazardDescribe}}</view>
  172. <!-- 随手拍 -->
  173. <view class="list_three_li_m_t" v-if="curTabThree==1">{{item.hazardDescribe}}</view>
  174. <view class="list_three_li_m_b">
  175. <!-- 隐患 -->
  176. <text class="green_color" v-if="curTabThree==0 && item.rectifyStatus==1">已完成</text>
  177. <text class="blue_color" v-if="curTabThree==0 && item.rectifyStatus==2">待整改</text>
  178. <text class="orange_color" v-if="curTabThree==0 && curTabThree==0 && item.rectifyStatus==3">待复核</text>
  179. <text class="gray_color" v-if="curTabThree==0 && item.rectifyStatus==4">暂无法整改</text>
  180. <text class="type" v-if="curTabThree==0">{{item.hazardType==1?'校院巡查':'实验室自查'}}-{{item.checkCategory==1?'综合检查':'专项检查'}}</text>
  181. <text class="college" v-if="curTabThree==0">{{item.collegeName}}</text>
  182. <!-- 随手拍 -->
  183. <text class="blue_color" v-if="curTabThree==1 && item.rectifyStatus==0">待整改</text>
  184. <text class="green_color" v-if="curTabThree==1 && item.rectifyStatus==1">已整改</text>
  185. <text class="orange_color" v-if="curTabThree==1 && item.rectifyStatus==2">暂无法整改</text>
  186. <text class="college" v-if="curTabThree==1">{{item.deptName}}</text>
  187. </view>
  188. </view>
  189. <!-- 隐患 -->
  190. <view class="list_three_li_b" v-if="curTabThree==0">
  191. <text >整改期限:{{item.rectifyDeadline}}</text>
  192. </view>
  193. <!-- 随手拍 -->
  194. <view class="list_three_li_b2" v-if="curTabThree==1">
  195. <view class="list_three_li_b_l">
  196. <img src="@/pages_safetyExamine/images/icon_ssp_ry.png"/>
  197. <text>上报人:{{item.createName}}</text>
  198. </view>
  199. <view class="list_three_li_b_r">{{item.timeFlag}}</view>
  200. </view>
  201. </view>
  202. </view>
  203. </view>
  204. </scroll-view>
  205. <!-- <view class="bottom_btn" v-if="pageType==1" @click="handleClick('','start')">开展检查</view> -->
  206. <img class="scan_btn" @click.stop="saoCode" src="@/pages_safetyExamine/images/icon_xyxc_sm.png"/>
  207. <!-- 选择学院-->
  208. <view class="shade" v-if="dialogVisible">
  209. <view class="null-box" @click="dialogClose()"></view>
  210. <view class="shade_n">
  211. <view class="shade_n_title"><text>选择该实验室隐患项</text><text @click="hiddenConfirm">确定</text></view>
  212. <view class="shade_n_b">
  213. <view class="shade_n_b_li" v-for="(item,index) in hiddenList" :key="index" @click="hiddenSelete(index)">
  214. <text :class="item.type?'color_B':'color_A'">{{item.hazardDescribe}}</text>
  215. <img v-if="item.type" src="@/pages_safetyExamine/images/icon_xzwt_xz.png">
  216. </view>
  217. </view>
  218. </view>
  219. </view>
  220. <tab-bar></tab-bar>
  221. </view>
  222. </template>
  223. <script>
  224. import { config } from '@/api/request/config.js'
  225. import { tabBar } from '@/component/tabBar.vue'
  226. import {checkPlanList,getCheckStatusCount,getManageStatusCount,dataStatistics,checkManageList,checkHazardAppList,checkClapList,getCheckPlanBySubId} from '@/api/apiDemo/index.js'
  227. export default {
  228. name: "rectifyList",
  229. components: {
  230. tabBar
  231. },
  232. data() {
  233. return {
  234. pageType:1,//人员类型 3整改人 2检查人 1管理员
  235. //列表请求参数
  236. getData:{
  237. pageNum:1,
  238. pageSize:20,
  239. checkStatus:1,
  240. },
  241. getData2:{
  242. pageNum:1,
  243. pageSize:20,
  244. isSelf: 0,//是否本人查询
  245. checkType:0,
  246. manageStatus:0,//管理状态(-1全部 0待检查,1检查中,2已检查)
  247. rectifyStatus:'',
  248. },
  249. getData3:{
  250. pageNum:1,
  251. pageSize:20,
  252. hazardType:'',//1是院校巡查,2是实验室自查
  253. rectifyStatus:'',//1已完成 2待整改 3待复核 4 暂无法整改
  254. },
  255. userType:1,//人员类型 3整改人 2检查人 1管理员
  256. statisticsList:[
  257. {name:'本月已检查',value:'0'},
  258. {name:'本月检查隐患',value:'0'},
  259. {name:'本月已整改',value:'0'},
  260. {name:'本月检查合格率',value:'0%'},
  261. {name:'本月已检查',value:'0'},
  262. {name:'本月复核通过率',value:'0%'},
  263. ],
  264. statisticsListThree:[
  265. {name:'本月已检查',value:'0'},
  266. {name:'本月已整改',value:'0%'},
  267. {name:'本月复核通过率',value:'0%'},
  268. ],
  269. tabTextIdentity:uni.getStorageSync('gentleIdentifier'),
  270. curTabIdentity:0,
  271. tabText:[{name:'未开始',num:0,},{name:'进行中',num:0}],
  272. curTab:0,
  273. tabTextTow:[{name:'待检查',num:0,},{name:'检查中',num:0,},{name:'待复核',num:0,}],
  274. curTabTow:0,
  275. tabTextThree:[{name:'隐患待整改',num:0,},{name:'随手拍整改',num:0,}],
  276. curTabThree:0,
  277. total:0,
  278. dataList:[],//管理员
  279. total2:0,
  280. dataList2:[],//检查者
  281. total3:0,
  282. dataList3:[],//整改者
  283. currentDate:'',
  284. dangerAllNum:0,
  285. snapshotAllNum:0,
  286. isSubPlan:false,//判断管理员和检查者扫码的实验室是否有检查计划
  287. dialogVisible:false,
  288. hiddenList:[],
  289. myApplyGentle:'',//自查身份 校院巡查管理 里操作按钮隐藏
  290. applyGentle:'',//检查组身份 实验室自查管理 里操作按钮隐藏
  291. collegeGentle:'',//院级管理员身份 如果是院级管理员隐藏校院巡查
  292. buttonHide:false,//判断按钮显示隐藏
  293. }
  294. },
  295. onLoad() {
  296. },
  297. onShow() {
  298. },
  299. beforeCreate() {
  300. },
  301. mounted(){
  302. if(uni.getStorageSync('gentleIdentifier')[0]){
  303. this.pageType=uni.getStorageSync('gentleIdentifier')[0].pageType
  304. }
  305. this.myApplyGentle=uni.getStorageSync('gentleIdentifierData').myApplyGentle
  306. this.applyGentle=uni.getStorageSync('gentleIdentifierData').applyGentle
  307. this.collegeGentle=uni.getStorageSync('gentleIdentifierData').collegeGentle
  308. //获取当前日期
  309. this.currentDate=this.getNowFormatDate()
  310. //this.getCheckStatusCount();
  311. //this.getManageStatusCount();
  312. this.dataStatistics(this.pageType);
  313. this.checkClapListAllNum();//随手拍待整改总数
  314. if(this.pageType==1){//管理员
  315. this.getList();
  316. this.checkPlanListAllNum();//管理员-未开始
  317. this.checkPlanListAllNum2();//管理员-进行中
  318. }else if(this.pageType==2){//检查者
  319. this.getList2();
  320. this.checkManageListAllNum();//检查者-待检查总数
  321. this.checkManageListAllNum2();//检查者-待整改总数
  322. this.checkHazardAppListAllNum();//检查者-待复核-总数
  323. }else if(this.pageType==3){//整改者
  324. this.checkHazardAppList();
  325. }
  326. },
  327. methods: {
  328. //滚动事件
  329. scrollGet(){
  330. let self=this;
  331. if(this.pageType==1){//管理员
  332. if(self.total/self.getData.pageSize<=self.getData.pageNum){
  333. console.log('没有更多数据!')
  334. }else{
  335. setTimeout(function(){
  336. self.getData.pageNum += 1;
  337. self.getList();
  338. },1000)
  339. }
  340. }else if(this.pageType==2){//检查者
  341. if(self.total2/self.getData2.pageSize<=self.getData2.pageNum){
  342. console.log('没有更多数据!')
  343. }else{
  344. setTimeout(function(){
  345. self.getData2.pageNum += 1;
  346. if(self.curTabTow==2){//待复核
  347. self.checkHazardAppList()
  348. }else {
  349. self.getList2();
  350. }
  351. },1000)
  352. }
  353. }else if(this.pageType==3){//整改者
  354. if(self.total3/self.getData3.pageSize<=self.getData3.pageNum){
  355. console.log('没有更多数据!')
  356. }else{
  357. setTimeout(function(){
  358. self.getData3.pageNum += 1;
  359. if(self.curTabThree==0){//隐患
  360. self.checkHazardAppList()
  361. }else {//随手拍
  362. self.checkClapList()
  363. }
  364. },1000)
  365. }
  366. }
  367. },
  368. //登录人员身份
  369. tabClickIdentity(item,index) {
  370. this.curTabIdentity = index;
  371. this.pageType=item.pageType;
  372. this.dataStatistics(this.pageType);
  373. if(this.pageType==1){//管理员
  374. this.getList();
  375. this.checkPlanListAllNum();//管理员-未开始
  376. this.checkPlanListAllNum2();//管理员-进行中
  377. }else if(this.pageType==2){//检查者
  378. this.getList2();
  379. this.checkManageListAllNum();//检查者-待检查总数
  380. this.checkManageListAllNum2();//检查者-待整改总数
  381. this.checkHazardAppListAllNum();//检查者-待复核-总数
  382. }else if(this.pageType==3){//整改者
  383. this.checkHazardAppList();
  384. }
  385. },
  386. //管理员
  387. tabClick(index) {
  388. this.curTab = index;
  389. this.getData.pageNum=1;
  390. this.dataList=[];
  391. if(index==0){//未开始
  392. this.getData.checkStatus=1
  393. this.getList()
  394. }else if(index==1){//进行中
  395. this.getData.checkStatus=2
  396. this.getList()
  397. }
  398. },
  399. tabClickTow(index) {
  400. this.curTabTow = index;
  401. this.getData2.pageNum=1;
  402. this.dataList2=[];
  403. if(index==0){//未开始
  404. this.getData2.manageStatus=0
  405. this.getList2()
  406. }else if(index==1){//进行中
  407. this.getData2.manageStatus=1
  408. this.getList2()
  409. }else if(index==2){//待复核
  410. this.getData2.rectifyStatus=3
  411. this.checkHazardAppList()
  412. }
  413. },
  414. tabClickThree(index) {//整改者
  415. this.curTabThree = index;
  416. this.getData3.pageNum=1;
  417. this.dataList3=[];
  418. if(index==0){//隐患待整改
  419. this.getData3.rectifyStatus=2
  420. this.checkHazardAppList()
  421. }else if(index==1){//随手拍待整改
  422. this.checkClapList();
  423. }
  424. },
  425. handleClick(row,doType){
  426. let self=this;
  427. if(self.pageType==1 && doType=='patrolPlan'){//校院巡查-计划
  428. uni.navigateTo({
  429. url: '/pages_safetyExamine/patrolPlan/patrolPlanList?pageType=1'
  430. });
  431. }else if(self.pageType==1 && doType=='selfPlan'){//实验室自查-计划
  432. uni.navigateTo({
  433. url: '/pages_safetyExamine/patrolPlan/patrolPlanList?pageType=2'
  434. });
  435. }else if(self.pageType==1 && doType=='dangerPlan'){//安全隐患-计划
  436. uni.navigateTo({
  437. url: '/pages_safetyExamine/dangerManage/dangerManage?pageType=1'
  438. });
  439. }else if(self.pageType==2 && doType=='patrolPlan'){//校院巡查-检查
  440. uni.navigateTo({
  441. url: '/pages_safetyExamine/examineManage/examineList?pageType=1'
  442. });
  443. }else if(self.pageType==2 && doType=='selfPlan'){//实验室自查-检查
  444. uni.navigateTo({
  445. url: '/pages_safetyExamine/examineManage/examineList?pageType=2'
  446. });
  447. }else if(self.pageType==2 && doType=='dangerPlan'){//安全隐患-检查
  448. uni.navigateTo({
  449. url: '/pages_safetyExamine/dangerManage/dangerManage?pageType=2'
  450. });
  451. }else if(self.pageType==3 && doType=='schoolDanger'){//校院巡查隐患
  452. uni.navigateTo({
  453. url: '/pages_safetyExamine/dangerManage/dangerList?pageType=1'
  454. });
  455. }else if(self.pageType==3 && doType=='labDanger'){//实验室自查隐患
  456. uni.navigateTo({
  457. url: '/pages_safetyExamine/dangerManage/dangerList?pageType=2'
  458. });
  459. }else if(doType=='edit'){//编辑
  460. uni.navigateTo({
  461. url: '/pages_safetyExamine/patrolPlan/patrolPlanEdit?pageType='+row.checkType+'&id='+row.id
  462. });
  463. }else if(doType=='snapshot'){//随手拍
  464. uni.navigateTo({
  465. url: '/pages_safetyExamine/snapshotManage/snapshotAdd'
  466. });
  467. }else if(doType=='start'){//开展检查
  468. uni.navigateTo({
  469. url: '/pages_safetyExamine/examineManage/examineAdd'
  470. });
  471. }
  472. },
  473. //检查者
  474. handleTowClick(row,doType){
  475. if(doType=='add'){//开始检查
  476. uni.navigateTo({
  477. url: '/pages_safetyExamine/examineManage/examineAdd?id='+row.id
  478. });
  479. }else if(doType=='edit'){//编辑
  480. uni.navigateTo({
  481. url: '/pages_safetyExamine/examineManage/examineAdd?id='+row.id
  482. });
  483. }else if(doType=='check'){//复核
  484. uni.navigateTo({
  485. url: '/pages_safetyExamine/dangerManage/dangerDetail?item='+encodeURIComponent(JSON.stringify(row))
  486. })
  487. }
  488. },
  489. //整改者
  490. handleThreeClick(row,doType){
  491. if(doType=='detail'){
  492. if(this.curTabThree==0){//隐患待整改详情
  493. uni.navigateTo({
  494. url: '/pages_safetyExamine/dangerManage/dangerDetail?item='+encodeURIComponent(JSON.stringify(row))
  495. })
  496. }else if(this.curTabThree==1){
  497. uni.navigateTo({
  498. url: '/pages_safetyExamine/snapshotManage/snapshotDetail?id='+row.id+'&rectifyStatus='+row.rectifyStatus
  499. })
  500. }
  501. }
  502. },
  503. /* 扫一扫*/
  504. saoCode(){
  505. let self = this;
  506. uni.scanCode({
  507. onlyFromCamera: true,
  508. success: function (res) {
  509. if(res.result.indexOf("code") != -1 && res.result.indexOf("-") != -1 && res.result.indexOf("&") != -1){
  510. let subId = "";
  511. let newList = res.result.split("?")[1].split("&")
  512. let list = newList[0].split("=")[1].split("-")
  513. subId = list[0];
  514. if(subId){
  515. uni.setStorageSync('saoCodeId',subId);
  516. if(self.pageType==1 || self.pageType==2){//管理员和检查者
  517. self.getCheckPlanBySubId(subId)
  518. }else if(self.pageType==3){//整改者
  519. let obj={
  520. pageNum:1,
  521. pageSize:100,
  522. subId:subId,
  523. }
  524. self.checkHazardAppList2(obj);
  525. }
  526. }else{
  527. uni.showToast({
  528. title: '请扫描正确的二维码',
  529. icon:"none",
  530. mask:true,
  531. duration: 2000
  532. });
  533. }
  534. }else{
  535. uni.showToast({
  536. title: '请扫描正确的二维码',
  537. icon:"none",
  538. mask:true,
  539. duration: 2000
  540. });
  541. }
  542. }
  543. });
  544. },
  545. //根据实验室id查询该实验室有关计划
  546. async getCheckPlanBySubId(subId){
  547. let _this = this;
  548. let id=subId;
  549. const {data} = await getCheckPlanBySubId({'subId':id});
  550. if(data.code == 200){
  551. if(data.data){
  552. uni.navigateTo({
  553. url: '/pages_safetyExamine/examineManage/examineAdd?subId='+id
  554. });
  555. }else{
  556. uni.redirectTo({
  557. url: '/pages_safetyExamine/inforSign'
  558. })
  559. }
  560. }
  561. },
  562. //根据实验室id查询隐患
  563. async checkHazardAppList2(obj){
  564. let self = this;
  565. this.hiddenList=[];
  566. const {data} = await checkHazardAppList(obj);
  567. if(data.code==200){
  568. if(data.data.records.length>0){
  569. for(let i=0;i<data.data.records.length;i++){
  570. data.data.records[i].type=false;
  571. if(data.data.records[i].rectifyStatus==2 || data.data.records[i].rectifyStatus==3){
  572. this.hiddenList.push(data.data.records[i])
  573. }
  574. }
  575. this.dialogVisible=true;
  576. }else{
  577. uni.redirectTo({
  578. url: '/pages_safetyExamine/inforSign'
  579. })
  580. }
  581. }
  582. },
  583. //选择学院弹窗关闭
  584. dialogClose(){
  585. this.dialogVisible=false;
  586. },
  587. //学院选择
  588. hiddenSelete(index){
  589. let _this=this;
  590. this.hiddenList[index].type = !this.hiddenList[index].type
  591. if (_this.hiddenList[index].type == true) {
  592. _this.hiddenList.forEach(function(item2) {
  593. if (item2.id == _this.hiddenList[index].id) {
  594. item2.type = true
  595. } else {
  596. item2.type = false
  597. }
  598. })
  599. }
  600. },
  601. hiddenConfirm(){
  602. let _this=this;
  603. _this.hiddenList.forEach(function(item){
  604. if(item.type==true){
  605. uni.redirectTo({
  606. url: '/pages_safetyExamine/dangerManage/dangerDetail?item='+encodeURIComponent(JSON.stringify(item))
  607. })
  608. }
  609. })
  610. },
  611. //数据统计
  612. async dataStatistics(flg){
  613. let self = this;
  614. if(this.collegeGentle){//管理员是院级-传参11
  615. flg=11
  616. }
  617. const {data} = await dataStatistics({flg:flg});
  618. if(data.code==200){
  619. if(data.data.userType==1 || data.data.userType==2 || data.data.userType==11){//管理员和检查者
  620. this.statisticsList=[
  621. {name:'本月已检查',value:data.data.checkTotal},
  622. {name:'本月检查隐患',value:data.data.hazardTotal},
  623. {name:'本月已整改',value:data.data.rectifyTotal},
  624. {name:'本月检查合格率',value:data.data.qualifyRate},
  625. {name:'本月整改率',value:data.data.rectificationRate},
  626. {name:'本月复核通过率',value:data.data.passRate},
  627. ]
  628. }else if(data.data.userType==3){//整改者
  629. this.statisticsListThree=[
  630. {name:'本月已整改',value:data.data.rectifyTotal},
  631. {name:'本月整改率',value:data.data.rectificationRate},
  632. {name:'本月复核通过率',value:data.data.passRate},
  633. ]
  634. }
  635. }
  636. },
  637. //获取当前日期函数
  638. getNowFormatDate() {
  639. let date = new Date(),
  640. year = date.getFullYear(), //获取完整的年份(4位)
  641. month = date.getMonth() + 1, //获取当前月份(0-11,0代表1月)
  642. strDate = date.getDate() // 获取当前日(1-31)
  643. if (month < 10) month = `0${month}` // 如果月份是个位数,在前面补0
  644. if (strDate < 10) strDate = `0${strDate}` // 如果日是个位数,在前面补0
  645. return `${year}-${month}-${strDate}`
  646. },
  647. //是否可以开始检查
  648. compareTime(date1){
  649. if(!date1){
  650. return false
  651. } else {
  652. const oDate1 = new Date(date1);
  653. const oDate2 = new Date(this.currentDate)
  654. if(oDate1.getTime() <= oDate2.getTime()){
  655. return true; //可以开始
  656. } else {
  657. return false; //不能开始
  658. }
  659. }
  660. },
  661. //检查计划各检查状态数据数量
  662. // async getCheckStatusCount(){
  663. // let self = this;
  664. // const {data} = await getCheckStatusCount();
  665. // if(data.code==200){
  666. // this.tabText[0].num=data.data.noStart;
  667. // this.tabText[1].num=data.data.start;
  668. // }
  669. // },
  670. //检查各检查状态数据数量
  671. // async getManageStatusCount(){
  672. // let self = this;
  673. // const {data} = await getManageStatusCount();
  674. // if(data.code==200){
  675. // this.tabTextTow[0].num=data.data.noCheck;
  676. // this.tabTextTow[1].num=data.data.checking;
  677. // this.tabTextTow[2].num=data.data.applyNum;
  678. // }
  679. // },
  680. //管理员
  681. async getList(){
  682. let self = this;
  683. const {data} = await checkPlanList(this.getData);
  684. if(data.code==200){
  685. this.dataList=[...this.dataList,...data.data.records]
  686. this.total=data.data.total;
  687. }
  688. },
  689. async checkPlanListAllNum(){
  690. let self = this;
  691. let obj={
  692. pageNum:1,
  693. pageSize:20,
  694. checkStatus:1,
  695. }
  696. const {data} = await checkPlanList(obj);
  697. if(data.code==200){
  698. this.tabText[0].num=data.data.total;
  699. }
  700. },
  701. async checkPlanListAllNum2(){
  702. let self = this;
  703. let obj={
  704. pageNum:1,
  705. pageSize:20,
  706. checkStatus:2,
  707. }
  708. const {data} = await checkPlanList(obj);
  709. if(data.code==200){
  710. this.tabText[1].num=data.data.total;
  711. }
  712. },
  713. //检查者
  714. async getList2(){
  715. let self = this;
  716. const {data} = await checkManageList(this.getData2);
  717. if(data.code==200){
  718. //判断计划是否开始
  719. self.buttonHide=false;
  720. for(let i=0;i<data.data.records.length;i++){
  721. if(data.data.records[i].checkType==1){
  722. if(self.myApplyGentle && !self.applyGentle){
  723. data.data.records[i].buttonHide=false
  724. }if(!self.myApplyGentle && !self.applyGentle){
  725. data.data.records[i].buttonHide=false
  726. }else{
  727. data.data.records[i].buttonHide=true;
  728. }
  729. }else if(data.data.records[i].checkType==2){
  730. if(!self.myApplyGentle && self.applyGentle){
  731. data.data.records[i].buttonHide=false
  732. }if(!self.myApplyGentle && !self.applyGentle){
  733. data.data.records[i].buttonHide=false
  734. }else{
  735. data.data.records[i].buttonHide=true;
  736. }
  737. }
  738. data.data.records[i].notStarted=self.compareTime(data.data.records[i].cycleStartTime)
  739. }
  740. self.dataList2=[...self.dataList2,...data.data.records]
  741. self.total2=data.data.total;
  742. }
  743. },
  744. //待复核列表
  745. async checkHazardAppList(){
  746. let self = this;
  747. let obj={};
  748. if(this.pageType==2){//检查者
  749. obj={
  750. pageNum:this.getData2.pageNum,
  751. pageSize:this.getData2.pageSize,
  752. hazardType:'',
  753. rectifyStatus:'3',
  754. };
  755. }else if(this.pageType==3){//整改者
  756. obj={
  757. pageNum:this.getData3.pageNum,
  758. pageSize:this.getData3.pageSize,
  759. hazardType:'',
  760. rectifyStatus:'2',
  761. };
  762. }
  763. const {data} = await checkHazardAppList(obj);
  764. if(data.code==200){
  765. if(self.pageType==2){//检查者
  766. this.dataList2=[...this.dataList2,...data.data.records]
  767. this.total2=data.data.total;
  768. }else if(self.pageType==3){
  769. this.dataList3=[...this.dataList3,...data.data.records]
  770. this.total3=data.data.total;
  771. this.tabTextThree[0].num=data.data.total;
  772. }
  773. }
  774. },
  775. //随手拍待整改
  776. async checkClapList(){
  777. let self = this;
  778. let obj={
  779. pageNum:this.getData3.pageNum,
  780. pageSize:this.getData3.pageSize,
  781. rectifyStatus:0,
  782. };
  783. const {data} = await checkClapList(obj);
  784. if(data.code==200){
  785. this.dataList3=[...this.dataList3,...data.data.records]
  786. this.total3=data.data.total;
  787. }
  788. },
  789. //整改者-随手拍待整改总数
  790. async checkClapListAllNum(){
  791. let self = this;
  792. let obj={
  793. pageNum:this.getData3.pageNum,
  794. pageSize:this.getData3.pageSize,
  795. rectifyStatus:0,
  796. };
  797. const {data} = await checkClapList(obj);
  798. if(data.code==200){
  799. this.tabTextThree[1].num=data.data.total;
  800. }
  801. },
  802. //检查者 总数---------------------------------
  803. //待检查
  804. async checkManageListAllNum(){
  805. let self = this;
  806. let obj={
  807. pageNum:this.getData2.pageNum,
  808. pageSize:this.getData2.pageSize,
  809. isSelf: 0,//是否本人查询
  810. manageStatus:0,
  811. checkType:0,
  812. };
  813. const {data} = await checkManageList(obj);
  814. if(data.code==200){
  815. this.tabTextTow[0].num=data.data.total;
  816. }
  817. },
  818. //待检查
  819. async checkManageListAllNum2(){
  820. let self = this;
  821. let obj={
  822. pageNum:this.getData2.pageNum,
  823. pageSize:this.getData2.pageSize,
  824. isSelf: 0,//是否本人查询
  825. manageStatus:1,
  826. checkType:0,
  827. };
  828. const {data} = await checkManageList(obj);
  829. if(data.code==200){
  830. this.tabTextTow[1].num=data.data.total;
  831. }
  832. },
  833. //待复核
  834. async checkHazardAppListAllNum(){
  835. let self = this;
  836. let obj={
  837. pageNum:this.getData2.pageNum,
  838. pageSize:this.getData2.pageSize,
  839. rectifyStatus:3,
  840. hazardType:'',
  841. };
  842. const {data} = await checkHazardAppList(obj);
  843. if(data.code==200){
  844. this.tabTextTow[2].num=data.data.total;
  845. }
  846. },
  847. }
  848. }
  849. </script>
  850. <style lang="stylus" scoped>
  851. .examine{
  852. height:100%;
  853. display flex;
  854. .info-max-box{
  855. flex: 1;
  856. overflow: scroll;
  857. padding-bottom: 128rpx;
  858. }
  859. .blue_color{
  860. color: #0183FA;
  861. border: 1rpx solid #0183FA;
  862. }
  863. .red_color{
  864. color: #FF4545;
  865. border: 1rpx solid #FF4545;
  866. }
  867. .green_color{
  868. color: #1FA50D;
  869. border: 1rpx solid #1FA50D;
  870. }
  871. .orange_color{
  872. color: #FA8E1B;
  873. border: 1rpx solid #FA8E1B;
  874. }
  875. .gray_color{
  876. color: #A2A2A2;
  877. border: 1rpx solid #A2A2A2;
  878. }
  879. .statistics{
  880. background: #fff;
  881. display: flex;
  882. justify-content: flex-start;
  883. flex-wrap: wrap;
  884. padding: 38rpx 26rpx;
  885. box-sizing: border-box;
  886. .statistics_li{
  887. width: 230rpx;
  888. border-right: 1rpx solid #D8D8D8;
  889. border-bottom: 1rpx solid #D8D8D8;
  890. >text{
  891. display: block;
  892. text-align: center;
  893. }
  894. >text:nth-of-type(1){
  895. font-size: 26rpx;
  896. font-family: PingFang SC-Medium, PingFang SC;
  897. font-weight: 400;
  898. color: #666666;
  899. line-height: 26rpx;
  900. margin-top: 24rpx;
  901. }
  902. >text:nth-of-type(2){
  903. font-size: 34rpx;
  904. font-family: PingFang SC-Heavy, PingFang SC;
  905. font-weight: 400;
  906. color: #1FA50D;
  907. line-height: 34rpx;
  908. margin-top: 28rpx;
  909. }
  910. }
  911. >view:nth-of-type(1){
  912. >text:nth-of-type(1){
  913. margin-top: 4rpx;
  914. }
  915. >text:nth-of-type(2){
  916. margin-bottom: 18rpx;
  917. color: #1FA50D;
  918. }
  919. }
  920. >view:nth-of-type(2){
  921. >text:nth-of-type(1){
  922. margin-top: 4rpx;
  923. }
  924. >text:nth-of-type(2){
  925. margin-bottom: 18rpx;
  926. color: #FA8201;
  927. }
  928. }
  929. >view:nth-of-type(3){
  930. border-right:none;
  931. >text:nth-of-type(1){
  932. margin-top: 4rpx;
  933. }
  934. >text:nth-of-type(2){
  935. margin-bottom: 18rpx;
  936. color: #0183FA;
  937. }
  938. }
  939. >view:nth-of-type(4){
  940. border-bottom:none;
  941. >text:nth-of-type(2){
  942. color: #1FA50D;
  943. }
  944. }
  945. >view:nth-of-type(5){
  946. border-bottom:none;
  947. >text:nth-of-type(2){
  948. color: #FA8201;
  949. }
  950. }
  951. >view:nth-of-type(6){
  952. border-right:none;border-bottom:none;
  953. >text:nth-of-type(2){
  954. color: #0183FA;
  955. }
  956. }
  957. }
  958. .inspect_btn{
  959. height: 150rpx;
  960. background: #fff;
  961. display: flex;
  962. justify-content: space-between;
  963. align-items: center;
  964. margin-top: 20rpx;
  965. padding: 0 30rpx;
  966. box-sizing: border-box;
  967. .inspect_btn_li{
  968. >img{
  969. width: 60rpx;
  970. height: 60rpx;
  971. margin:0 auto;
  972. }
  973. >text{
  974. font-size: 28rpx;
  975. font-family: PingFang SC-Medium, PingFang SC;
  976. font-weight: 400;
  977. color: #333333;
  978. line-height: 28rpx;
  979. margin-top: 14rpx;
  980. }
  981. }
  982. .line{
  983. display: inline-block;
  984. height: 60rpx;
  985. width: 1rpx;
  986. background: #E0E0E0;
  987. }
  988. }
  989. /* 检查者 */
  990. .tabTitle_identity{
  991. width:100%;
  992. height: 100rpx;
  993. background: #fff;
  994. display flex;
  995. justify-content: flex-start;
  996. align-items: center;
  997. position: relative;
  998. top: 0;
  999. z-index: 100;
  1000. box-shadow: 0rpx 3rpx 8rpx 0rpx rgba(0,0,0,0.16);
  1001. .tabTitle_identity_li{
  1002. position: relative;
  1003. width:162rpx;
  1004. text-align center;
  1005. .tabTitle_identity_text{
  1006. display: inline-block;
  1007. font-size: 30rpx;
  1008. font-family: PingFang SC;
  1009. font-weight: 500;
  1010. color: #333333;
  1011. line-height: 46rpx;
  1012. position: relative;
  1013. >text{
  1014. position:absolute;
  1015. min-width: 30rpx;
  1016. min-height: 30rpx;
  1017. border-radius:54%;
  1018. background: #E80000;
  1019. font-size: 18rpx;
  1020. font-family: PingFang SC-Medium, PingFang SC;
  1021. font-weight: 400;
  1022. color: #FFFFFF;
  1023. text-align: center;
  1024. line-height: 30rpx;
  1025. margin-left: 6rpx;
  1026. padding:2rpx;
  1027. box-sizing: border-box;
  1028. }
  1029. &.on{
  1030. color:#0183FA;
  1031. }
  1032. }
  1033. .tabTitle_identity_across{
  1034. width: 50rpx;
  1035. height: 4rpx;
  1036. background: #0183FA;
  1037. border-radius: 2rpx;
  1038. margin-left 56rpx;
  1039. display none;
  1040. &.on{
  1041. display block;
  1042. }
  1043. }
  1044. }
  1045. }
  1046. /* 切换按钮 */
  1047. .tabTitle{
  1048. width:100%;
  1049. height: 100rpx;
  1050. background: #fff;
  1051. display flex;
  1052. justify-content: center;
  1053. align-items: center;
  1054. margin-top: 20rpx;
  1055. position: sticky;
  1056. top: 0;
  1057. z-index: 100;
  1058. box-shadow: 0rpx 3rpx 8rpx 0rpx rgba(0,0,0,0.16);
  1059. .tabTitle_li{
  1060. position: relative;
  1061. width:372rpx;
  1062. text-align center;
  1063. .tabTitle_text{
  1064. display: inline-block;
  1065. font-size: 30rpx;
  1066. font-family: PingFang SC;
  1067. font-weight: 500;
  1068. color: #333333;
  1069. line-height: 46rpx;
  1070. position: relative;
  1071. >text{
  1072. position:absolute;
  1073. min-width: 30rpx;
  1074. min-height: 30rpx;
  1075. border-radius:54%;
  1076. background: #E80000;
  1077. font-size: 18rpx;
  1078. font-family: PingFang SC-Medium, PingFang SC;
  1079. font-weight: 400;
  1080. color: #FFFFFF;
  1081. text-align: center;
  1082. line-height: 30rpx;
  1083. margin-left: 6rpx;
  1084. padding:2rpx;
  1085. box-sizing: border-box;
  1086. }
  1087. &.on{
  1088. color:#0183FA;
  1089. }
  1090. }
  1091. .tabTitle_across{
  1092. width: 50rpx;
  1093. height: 4rpx;
  1094. background: #0183FA;
  1095. border-radius: 2rpx;
  1096. margin-left 162rpx;
  1097. display none;
  1098. &.on{
  1099. display block;
  1100. }
  1101. }
  1102. }
  1103. .tabTitle_li:nth-of-type(1)::after{
  1104. content: '';
  1105. position: absolute;
  1106. top: 0rpx;
  1107. right: 0rpx;
  1108. width: 1rpx;
  1109. height: 50rpx;
  1110. background: #E0E0E0;
  1111. }
  1112. }
  1113. .list{
  1114. padding: 0 30rpx;
  1115. box-sizing: border-box;
  1116. margin-top: 20rpx;
  1117. .list_li{
  1118. position: relative;
  1119. width: 690rpx;
  1120. height: 360rpx;
  1121. background: #fff;
  1122. border-radius: 10rpx;
  1123. overflow: hidden;
  1124. margin-bottom: 20rpx;
  1125. .list_li_t{
  1126. width: 100%;
  1127. position: absolute;
  1128. left: 0;
  1129. top: 0;
  1130. .list_li_t_l{
  1131. >img{
  1132. width: 70rpx;
  1133. height: 70rpx;
  1134. }
  1135. >text{
  1136. position: absolute;
  1137. left: -15rpx;
  1138. top: 76rpx;
  1139. display: inline-block;
  1140. width: 30rpx;
  1141. height: 30rpx;
  1142. background: #F5F5F5;
  1143. border-radius: 15rpx;
  1144. }
  1145. }
  1146. .list_li_t_c{
  1147. width: 630rpx;
  1148. height: 110rpx;
  1149. position: absolute;
  1150. left: 30rpx;
  1151. top: 0;
  1152. font-size: 30rpx;
  1153. font-family: PingFang SC-Medium, PingFang SC;
  1154. font-weight: 400;
  1155. color: #333333;
  1156. line-height: 110rpx;
  1157. border-bottom: 1rpx dashed #D8D8D8;
  1158. overflow: hidden;
  1159. text-overflow:ellipsis;
  1160. white-space: nowrap;
  1161. }
  1162. .list_li_t_r{
  1163. position: absolute;
  1164. right:-15rpx;
  1165. top: 76rpx;
  1166. width: 30rpx;
  1167. height: 30rpx;
  1168. background:#F5F5F5;
  1169. border-radius: 15rpx;
  1170. }
  1171. }
  1172. .list_li_m{
  1173. position: absolute;
  1174. top: 110rpx;
  1175. left: 0;
  1176. width: 690rpx;
  1177. height: 168rpx;
  1178. border-bottom: 1rpx solid #E0E0E0;
  1179. padding-left: 30rpx;
  1180. box-sizing: border-box;
  1181. .list_li_m_t{
  1182. font-size: 28rpx;
  1183. font-family: PingFang SC-Medium, PingFang SC;
  1184. font-weight: 400;
  1185. color: #666666;
  1186. line-height: 40rpx;
  1187. margin-top:22rpx;
  1188. }
  1189. .list_li_m_b{
  1190. margin-top:26rpx;
  1191. >text:nth-of-type(1){
  1192. font-size: 26rpx;
  1193. font-family: PingFang SC-Medium, PingFang SC;
  1194. font-weight: 400;
  1195. line-height: 40rpx;
  1196. border-radius: 6rpx;
  1197. padding: 0 20rpx;
  1198. margin-right: 14rpx;
  1199. }
  1200. >text:nth-of-type(2){
  1201. font-size: 26rpx;
  1202. font-family: PingFang SC-Medium, PingFang SC;
  1203. font-weight: 400;
  1204. color: #0183FA;
  1205. line-height: 40rpx;
  1206. padding: 0 8rpx;
  1207. border-radius: 6rpx;
  1208. background: rgba(1,131,250,0.1);
  1209. }
  1210. }
  1211. }
  1212. .list_li_b{
  1213. height: 80rpx;
  1214. position: absolute;
  1215. top: 278rpx;
  1216. left: 0;
  1217. display: flex;
  1218. justify-content: flex-start;
  1219. align-items: center;
  1220. >img{
  1221. width: 24rpx;
  1222. height: 30rpx;
  1223. margin-right: 26rpx;
  1224. margin-left: 30rpx;
  1225. }
  1226. >text:nth-of-type(1){
  1227. font-size: 28rpx;
  1228. font-family: PingFang SC-Medium, PingFang SC;
  1229. font-weight: 400;
  1230. color: #333333;
  1231. line-height: 28rpx;
  1232. }
  1233. >text:nth-of-type(2){
  1234. font-size: 28rpx;
  1235. font-family: PingFang SC-Medium, PingFang SC;
  1236. font-weight: 400;
  1237. color: #0183FA;
  1238. line-height: 28rpx;
  1239. }
  1240. }
  1241. }
  1242. }
  1243. /* 检查者 */
  1244. .tabTitle_tow{
  1245. width:100%;
  1246. height: 100rpx;
  1247. background: #fff;
  1248. display flex;
  1249. justify-content: flex-start;
  1250. align-items: center;
  1251. margin-top: 20rpx;
  1252. position: sticky;
  1253. top: 0;
  1254. z-index: 100;
  1255. box-shadow: 0rpx 3rpx 8rpx 0rpx rgba(0,0,0,0.16);
  1256. .tabTitle_tow_li{
  1257. position: relative;
  1258. width:162rpx;
  1259. text-align center;
  1260. .tabTitle_tow_text{
  1261. display: inline-block;
  1262. font-size: 30rpx;
  1263. font-family: PingFang SC;
  1264. font-weight: 500;
  1265. color: #333333;
  1266. line-height: 46rpx;
  1267. position: relative;
  1268. >text{
  1269. position:absolute;
  1270. min-width: 30rpx;
  1271. min-height: 30rpx;
  1272. border-radius:54%;
  1273. background: #E80000;
  1274. font-size: 18rpx;
  1275. font-family: PingFang SC-Medium, PingFang SC;
  1276. font-weight: 400;
  1277. color: #FFFFFF;
  1278. text-align: center;
  1279. line-height: 30rpx;
  1280. margin-left: 6rpx;
  1281. padding:2rpx;
  1282. box-sizing: border-box;
  1283. }
  1284. &.on{
  1285. color:#0183FA;
  1286. }
  1287. }
  1288. .tabTitle_tow_across{
  1289. width: 50rpx;
  1290. height: 4rpx;
  1291. background: #0183FA;
  1292. border-radius: 2rpx;
  1293. margin-left 56rpx;
  1294. display none;
  1295. &.on{
  1296. display block;
  1297. }
  1298. }
  1299. }
  1300. }
  1301. .list_tow{
  1302. padding: 0 30rpx;
  1303. box-sizing: border-box;
  1304. margin-top: 20rpx;
  1305. .list_tow_li{
  1306. position: relative;
  1307. width: 690rpx;
  1308. height: auto;
  1309. background: #fff;
  1310. border-radius: 10rpx;
  1311. overflow: hidden;
  1312. margin-bottom: 20rpx;
  1313. .list_tow_li_t{
  1314. width: 100%;
  1315. height: 110rpx;
  1316. position: relative;
  1317. left: 0;
  1318. top: 0;
  1319. .list_tow_li_t_l{
  1320. >img{
  1321. width: 70rpx;
  1322. height: 70rpx;
  1323. }
  1324. >text{
  1325. position: absolute;
  1326. left: -15rpx;
  1327. top: 76rpx;
  1328. display: inline-block;
  1329. width: 30rpx;
  1330. height: 30rpx;
  1331. background: #F5F5F5;
  1332. border-radius: 15rpx;
  1333. }
  1334. }
  1335. .list_tow_li_t_c{
  1336. width: 630rpx;
  1337. height: 110rpx;
  1338. position: absolute;
  1339. left: 30rpx;
  1340. top: 0;
  1341. font-size: 30rpx;
  1342. font-family: PingFang SC-Medium, PingFang SC;
  1343. font-weight: 400;
  1344. color: #333333;
  1345. line-height: 110rpx;
  1346. border-bottom: 1rpx dashed #D8D8D8;
  1347. overflow: hidden;
  1348. text-overflow:ellipsis;
  1349. white-space: nowrap;
  1350. padding-right: 120rpx;
  1351. box-sizing: border-box;
  1352. }
  1353. .list_tow_li_t_c2{
  1354. position: absolute;
  1355. right: 20rpx;
  1356. top: 38rpx;
  1357. width: 120rpx;
  1358. height: 40rpx;
  1359. font-size: 28rpx;
  1360. font-family: PingFang SC-Medium, PingFang SC;
  1361. font-weight: 400;
  1362. color: #FF5757;
  1363. line-height: 40rpx;
  1364. border: 1rpx solid #FF5757;
  1365. border-radius: 6rpx;
  1366. text-align: center;
  1367. }
  1368. .list_tow_li_t_r{
  1369. position: absolute;
  1370. right:-15rpx;
  1371. top: 76rpx;
  1372. width: 30rpx;
  1373. height: 30rpx;
  1374. background:#F5F5F5;
  1375. border-radius: 15rpx;
  1376. }
  1377. }
  1378. .list_tow_li_m{
  1379. // position: absolute;
  1380. // top: 110rpx;
  1381. // left: 0;
  1382. width: 690rpx;
  1383. height: 168rpx;
  1384. padding-left: 30rpx;
  1385. box-sizing: border-box;
  1386. .list_tow_li_m_t{
  1387. font-size: 28rpx;
  1388. font-family: PingFang SC-Medium, PingFang SC;
  1389. font-weight: 400;
  1390. color: #666666;
  1391. line-height: 40rpx;
  1392. margin-top:22rpx;
  1393. overflow: hidden;
  1394. text-overflow:ellipsis;
  1395. white-space: nowrap;
  1396. }
  1397. .list_tow_li_m_b{
  1398. margin-top:26rpx;
  1399. >text:nth-of-type(1){
  1400. font-size: 26rpx;
  1401. font-family: PingFang SC-Medium, PingFang SC;
  1402. font-weight: 400;
  1403. line-height: 40rpx;
  1404. border-radius: 6rpx;
  1405. padding: 0 20rpx;
  1406. margin-right: 14rpx;
  1407. }
  1408. >text:nth-of-type(2){
  1409. font-size: 26rpx;
  1410. font-family: PingFang SC-Medium, PingFang SC;
  1411. font-weight: 400;
  1412. color: #0183FA;
  1413. line-height: 40rpx;
  1414. padding: 0 8rpx;
  1415. border-radius: 6rpx;
  1416. background: rgba(1,131,250,0.1);
  1417. margin-right: 24rpx;
  1418. }
  1419. >text:nth-of-type(3){
  1420. display: inline-block;
  1421. width: 200rpx;
  1422. font-size: 26rpx;
  1423. font-family: PingFang SC-Medium, PingFang SC;
  1424. font-weight: 400;
  1425. color: #333333;
  1426. line-height: 26rpx;
  1427. overflow: hidden;
  1428. text-overflow:ellipsis;
  1429. white-space: nowrap;
  1430. }
  1431. }
  1432. }
  1433. .list_tow_li_b{
  1434. height: 80rpx;
  1435. width: 100%;
  1436. // position: absolute;
  1437. // top: 278rpx;
  1438. // left: 0;
  1439. border-top: 1rpx solid #E0E0E0;
  1440. font-size: 28rpx;
  1441. font-family: PingFang SC-Medium, PingFang SC;
  1442. font-weight: 400;
  1443. color: #0183FA;
  1444. line-height: 80rpx;
  1445. text-align: center;
  1446. }
  1447. .list_tow_li_b_tow{
  1448. height: 80rpx;
  1449. width: 100%;
  1450. // position: absolute;
  1451. // top: 278rpx;
  1452. // left: 0;
  1453. border-top: 1rpx solid #E0E0E0;
  1454. font-size: 28rpx;
  1455. font-family: PingFang SC-Medium, PingFang SC;
  1456. font-weight: 400;
  1457. color: #0183FA;
  1458. line-height: 80rpx;
  1459. display: flex;
  1460. justify-content: center;
  1461. align-items: center;
  1462. >img{
  1463. width: 28rpx;
  1464. height: 30rpx;
  1465. margin-right: 12rpx;
  1466. }
  1467. }
  1468. .list_tow_li_b_three{
  1469. height: 80rpx;
  1470. // position: absolute;
  1471. // top: 278rpx;
  1472. // left: 0;
  1473. display: flex;
  1474. justify-content: flex-start;
  1475. align-items: center;
  1476. width: 100%;
  1477. border-top: 1rpx solid #E0E0E0;
  1478. >img{
  1479. width: 24rpx;
  1480. height: 30rpx;
  1481. margin-right: 26rpx;
  1482. margin-left: 30rpx;
  1483. }
  1484. >text:nth-of-type(1){
  1485. font-size: 28rpx;
  1486. font-family: PingFang SC-Medium, PingFang SC;
  1487. font-weight: 400;
  1488. color: #333333;
  1489. line-height: 28rpx;
  1490. }
  1491. >text:nth-of-type(2){
  1492. flex:1;
  1493. font-size: 28rpx;
  1494. font-family: PingFang SC-Medium, PingFang SC;
  1495. font-weight: 400;
  1496. color: #0183FA;
  1497. line-height: 28rpx;
  1498. white-space: nowrap;
  1499. overflow: hidden;
  1500. text-overflow: ellipsis;
  1501. }
  1502. .report{
  1503. font-size: 28rpx;
  1504. font-family: PingFang SC-Medium, PingFang SC;
  1505. font-weight: 400;
  1506. color: #0183FA;
  1507. line-height: 28rpx;
  1508. margin-right: 40rpx;
  1509. }
  1510. }
  1511. }
  1512. }
  1513. /* 整改人 */
  1514. .statistics_three{
  1515. background: #fff;
  1516. display: flex;
  1517. justify-content: flex-start;
  1518. flex-wrap: wrap;
  1519. padding: 38rpx 30rpx;
  1520. box-sizing: border-box;
  1521. .statistics_three_li{
  1522. width: 230rpx;
  1523. position: relative;
  1524. >text{
  1525. display: block;
  1526. text-align: center;
  1527. }
  1528. >text:nth-of-type(1){
  1529. font-size: 26rpx;
  1530. font-family: PingFang SC-Medium, PingFang SC;
  1531. font-weight: 400;
  1532. color: #666666;
  1533. line-height: 26rpx;
  1534. }
  1535. >text:nth-of-type(2){
  1536. font-size: 34rpx;
  1537. font-family: PingFang SC-Heavy, PingFang SC;
  1538. font-weight: 400;
  1539. color: #1FA50D;
  1540. line-height: 34rpx;
  1541. margin-top: 28rpx;
  1542. }
  1543. }
  1544. .statistics_three_li::after{
  1545. content:'';
  1546. position: absolute;
  1547. top: 20rpx;
  1548. right:0rpx;
  1549. width: 1rpx;
  1550. height: 60rpx;
  1551. background: #D8D8D8;
  1552. }
  1553. .statistics_three_li:nth-of-type(3)::after{
  1554. display: none;
  1555. }
  1556. >view:nth-of-type(1){
  1557. >text:nth-of-type(2){
  1558. color: #1FA50D;
  1559. }
  1560. }
  1561. >view:nth-of-type(2){
  1562. >text:nth-of-type(2){
  1563. color: #FA8201;
  1564. }
  1565. }
  1566. >view:nth-of-type(3){
  1567. >text:nth-of-type(2){
  1568. color: #0183FA;
  1569. }
  1570. }
  1571. }
  1572. .inspect_btn_three{
  1573. height: 150rpx;
  1574. background: #fff;
  1575. display: flex;
  1576. justify-content: space-between;
  1577. align-items: center;
  1578. margin-top: 20rpx;
  1579. padding: 0 74rpx;
  1580. box-sizing: border-box;
  1581. .inspect_btn_three_li{
  1582. >img{
  1583. width: 60rpx;
  1584. height: 60rpx;
  1585. margin:0 auto;
  1586. }
  1587. >text{
  1588. font-size: 28rpx;
  1589. font-family: PingFang SC-Medium, PingFang SC;
  1590. font-weight: 400;
  1591. color: #333333;
  1592. line-height: 28rpx;
  1593. margin-top: 14rpx;
  1594. }
  1595. }
  1596. .line{
  1597. display: inline-block;
  1598. height: 60rpx;
  1599. width: 1rpx;
  1600. background: #E0E0E0;
  1601. }
  1602. }
  1603. /* 切换按钮 */
  1604. .tabTitle_three{
  1605. width:100%;
  1606. height: 100rpx;
  1607. background: #fff;
  1608. display flex;
  1609. justify-content: center;
  1610. align-items: center;
  1611. margin-top: 20rpx;
  1612. position: sticky;
  1613. top: 0;
  1614. z-index: 100;
  1615. box-shadow: 0rpx 3rpx 8rpx 0rpx rgba(0,0,0,0.16);
  1616. .tabTitle_three_li{
  1617. position: relative;
  1618. width:372rpx;
  1619. text-align center;
  1620. .tabTitle_three_text{
  1621. display: inline-block;
  1622. font-size: 30rpx;
  1623. font-family: PingFang SC;
  1624. font-weight: 500;
  1625. color: #333333;
  1626. line-height: 46rpx;
  1627. position: relative;
  1628. >text{
  1629. position:absolute;
  1630. min-width: 30rpx;
  1631. min-height: 30rpx;
  1632. border-radius:54%;
  1633. background: #E80000;
  1634. font-size: 18rpx;
  1635. font-family: PingFang SC-Medium, PingFang SC;
  1636. font-weight: 400;
  1637. color: #FFFFFF;
  1638. text-align: center;
  1639. line-height: 30rpx;
  1640. margin-left: 6rpx;
  1641. padding:2rpx;
  1642. box-sizing: border-box;
  1643. }
  1644. &.on{
  1645. color:#0183FA;
  1646. }
  1647. }
  1648. .tabTitle_three_across{
  1649. width: 50rpx;
  1650. height: 4rpx;
  1651. background: #0183FA;
  1652. border-radius: 2rpx;
  1653. margin-left 162rpx;
  1654. display none;
  1655. &.on{
  1656. display block;
  1657. }
  1658. }
  1659. }
  1660. .tabTitle_three_li:nth-of-type(1)::after{
  1661. content: '';
  1662. position: absolute;
  1663. top: 0rpx;
  1664. right: 0rpx;
  1665. width: 1rpx;
  1666. height: 50rpx;
  1667. background: #E0E0E0;
  1668. }
  1669. }
  1670. .list_three{
  1671. padding: 0 30rpx;
  1672. box-sizing: border-box;
  1673. margin-top: 20rpx;
  1674. .list_three_li{
  1675. position: relative;
  1676. width: 690rpx;
  1677. height: 348rpx;
  1678. background: #fff;
  1679. border-radius: 10rpx;
  1680. overflow: hidden;
  1681. margin-bottom: 20rpx;
  1682. .list_three_li_t{
  1683. width: 100%;
  1684. position: absolute;
  1685. left: 0;
  1686. top: 0;
  1687. .list_three_li_t_l{
  1688. >img{
  1689. width: 70rpx;
  1690. height: 70rpx;
  1691. }
  1692. >text{
  1693. position: absolute;
  1694. left: -15rpx;
  1695. top: 76rpx;
  1696. display: inline-block;
  1697. width: 30rpx;
  1698. height: 30rpx;
  1699. background: #F5F5F5;
  1700. border-radius: 15rpx;
  1701. }
  1702. }
  1703. .list_three_li_t_c{
  1704. width: 576rpx;
  1705. height: 110rpx;
  1706. position: absolute;
  1707. left: 30rpx;
  1708. top: 0;
  1709. font-size: 30rpx;
  1710. font-family: PingFang SC-Medium, PingFang SC;
  1711. font-weight: 400;
  1712. color: #333333;
  1713. line-height: 110rpx;
  1714. border-bottom: 1rpx dashed #D8D8D8;
  1715. overflow: hidden;
  1716. text-overflow:ellipsis;
  1717. white-space: nowrap;
  1718. padding-right: 60rpx;
  1719. box-sizing: border-box;
  1720. }
  1721. .list_three_li_t_c2{
  1722. position: absolute;
  1723. right: 20rpx;
  1724. top: 38rpx;
  1725. width: 120rpx;
  1726. height: 40rpx;
  1727. font-size: 28rpx;
  1728. font-family: PingFang SC-Medium, PingFang SC;
  1729. font-weight: 400;
  1730. color: #FF5757;
  1731. line-height: 40rpx;
  1732. border: 1rpx solid #FF5757;
  1733. border-radius: 6rpx;
  1734. text-align: center;
  1735. }
  1736. .list_three_li_t_r{
  1737. position: absolute;
  1738. right:-15rpx;
  1739. top: 76rpx;
  1740. width: 30rpx;
  1741. height: 30rpx;
  1742. background:#F5F5F5;
  1743. border-radius: 15rpx;
  1744. }
  1745. }
  1746. .list_three_li_m{
  1747. position: absolute;
  1748. top: 110rpx;
  1749. left: 0;
  1750. width: 690rpx;
  1751. height: 158rpx;
  1752. padding-left: 30rpx;
  1753. box-sizing: border-box;
  1754. .list_three_li_m_t{
  1755. font-size: 28rpx;
  1756. font-family: PingFang SC-Medium, PingFang SC;
  1757. font-weight: 400;
  1758. color: #666666;
  1759. line-height: 40rpx;
  1760. margin-top:22rpx;
  1761. overflow: hidden;
  1762. text-overflow:ellipsis;
  1763. white-space: nowrap;
  1764. }
  1765. .list_three_li_m_b{
  1766. margin-top:26rpx;
  1767. >text:nth-of-type(1){
  1768. font-size: 26rpx;
  1769. font-family: PingFang SC-Medium, PingFang SC;
  1770. font-weight: 400;
  1771. line-height: 40rpx;
  1772. border-radius: 6rpx;
  1773. padding: 0 20rpx;
  1774. margin-right: 14rpx;
  1775. }
  1776. .type{
  1777. font-size: 26rpx;
  1778. font-family: PingFang SC-Medium, PingFang SC;
  1779. font-weight: 400;
  1780. color: #0183FA;
  1781. line-height: 40rpx;
  1782. padding: 0 8rpx;
  1783. border-radius: 6rpx;
  1784. background: rgba(1,131,250,0.1);
  1785. margin-right: 24rpx;
  1786. }
  1787. .college{
  1788. display: inline-block;
  1789. width: 180rpx;
  1790. font-size: 26rpx;
  1791. font-family: PingFang SC-Medium, PingFang SC;
  1792. font-weight: 400;
  1793. color: #333333;
  1794. line-height: 26rpx;
  1795. overflow: hidden;
  1796. text-overflow:ellipsis;
  1797. white-space: nowrap;
  1798. }
  1799. }
  1800. }
  1801. .list_three_li_b{
  1802. height: 80rpx;
  1803. width: 100%;
  1804. position: absolute;
  1805. top: 268rpx;
  1806. left: 0;
  1807. padding-left: 30rpx;
  1808. box-sizing: border-box;
  1809. >text:nth-of-type(1){
  1810. font-size: 26rpx;
  1811. font-family: PingFang SC-Medium, PingFang SC;
  1812. font-weight: 400;
  1813. color: #333333;
  1814. line-height: 26rpx;
  1815. }
  1816. }
  1817. .list_three_li_b2{
  1818. height: 76rpx;
  1819. width: 100%;
  1820. position: absolute;
  1821. top: 258rpx;
  1822. left: 0;
  1823. padding:0 30rpx;
  1824. box-sizing: border-box;
  1825. display: flex;
  1826. justify-content: space-between;
  1827. align-items: center;
  1828. .list_three_li_b_l{
  1829. display: flex;
  1830. justify-content: space-between;
  1831. align-items: center;
  1832. >img{
  1833. width: 28rpx;
  1834. height: 30rpx;
  1835. margin-right: 14rpx;
  1836. }
  1837. >text{
  1838. font-size: 28rpx;
  1839. font-family: PingFang SC-Medium, PingFang SC;
  1840. font-weight: 400;
  1841. color: #666666;
  1842. line-height: 76rpx;
  1843. }
  1844. }
  1845. .list_three_li_b_r{
  1846. font-size: 24rpx;
  1847. font-family: PingFang SC-Medium, PingFang SC;
  1848. font-weight: 400;
  1849. color: #999999;
  1850. line-height: 76rpx;
  1851. }
  1852. }
  1853. }
  1854. }
  1855. .bottom_btn{
  1856. position: fixed;
  1857. bottom: 20rpx;
  1858. left: 30rpx;
  1859. font-size: 30rpx;
  1860. font-family: PingFang SC-Medium, PingFang SC;
  1861. font-weight: 400;
  1862. color: #FFFFFF;
  1863. line-height: 90rpx;
  1864. width: 690rpx;
  1865. height: 90rpx;
  1866. background: #0183FA;
  1867. border-radius: 20rpx;
  1868. text-align: center;
  1869. }
  1870. .scan_btn{
  1871. position: fixed;
  1872. bottom: 210rpx;
  1873. right: 0rpx;
  1874. width: 130rpx;
  1875. height: 130rpx;
  1876. }
  1877. /* 根据实验室id查询隐患列表 */
  1878. .shade {
  1879. height: 100%;
  1880. width: 100%;
  1881. position: fixed;
  1882. display: flex;
  1883. flex-direction: column;
  1884. z-index: 100;
  1885. background: rgba(0, 0, 0, 0.2);
  1886. .null-box {
  1887. flex: 1;
  1888. }
  1889. .shade_n {
  1890. position: absolute;
  1891. bottom: 0;
  1892. left: 0;
  1893. width: 750rpx;
  1894. height: 560rpx;
  1895. background: #FFFFFF;
  1896. border-radius: 20rpx 20rpx 0rpx 0rpx;
  1897. .shade_n_title{
  1898. height: 100rpx;
  1899. padding: 0 30rpx;
  1900. box-sizing: border-box;
  1901. display: flex;
  1902. justify-content:space-between;
  1903. border-bottom: 1rpx solid #E0E0E0;
  1904. >text:nth-of-type(1){
  1905. font-size: 30rpx;
  1906. font-family: PingFang SC-Medium, PingFang SC;
  1907. font-weight: 400;
  1908. color: #333333;
  1909. line-height: 100rpx;
  1910. }
  1911. >text:nth-of-type(2){
  1912. font-size: 30rpx;
  1913. font-family: PingFang SC-Medium, PingFang SC;
  1914. font-weight: 400;
  1915. color: #0183FA;
  1916. line-height: 100rpx;
  1917. }
  1918. }
  1919. .shade_n_b{
  1920. height: 460rpx;
  1921. padding: 0 30rpx;
  1922. box-sizing: border-box;
  1923. overflow-y: auto;
  1924. .shade_n_b_li{
  1925. display: flex;
  1926. justify-content:space-between;
  1927. align-items: center;
  1928. height: 80rpx;
  1929. border-bottom: 1rpx solid #E0E0E0;
  1930. >text{
  1931. font-size: 28rpx;
  1932. font-family: PingFang SC-Medium, PingFang SC;
  1933. font-weight: 400;
  1934. line-height: 80rpx;
  1935. overflow: hidden;
  1936. text-overflow:ellipsis;
  1937. white-space: nowrap;
  1938. }
  1939. >img{
  1940. width: 24rpx;
  1941. height: 16rpx;
  1942. margin-right: 14rpx;
  1943. }
  1944. }
  1945. .color_A{
  1946. color: #333333;
  1947. }
  1948. .color_B{
  1949. color: #0183FA;
  1950. }
  1951. }
  1952. }
  1953. }
  1954. }
  1955. </style>