examineAdd.vue 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392
  1. <!-- 安全检查-开展检查 -->
  2. <template>
  3. <view class="examine">
  4. <scroll-view scroll-y @scrolltolower="scrollGet" class="info-max-box">
  5. <view class="basics">
  6. <view class="basics_li">
  7. <view class="basics_li_l">实验室</view>
  8. <view class="basics_li_r lab_r" :class="addDisabledType?'addDisabled':''">
  9. <input class="picker-text" @click="popupClick(1)" type="text" disabled v-model="form.subjectName"
  10. placeholder="请选择实验室" placeholder-style="font-size: 30rpx;color:#333;">
  11. <view class="img-box" @click.stop="saoCode" v-if="!addDisabledType">
  12. <img src="@/pages_safetyExamine/images/icon_aqjc_sm.png">
  13. </view>
  14. </view>
  15. </view>
  16. <view class="basics_li">
  17. <view class="basics_li_l">学院</view>
  18. <picker disabled @change="collegeChange" :value="collegeIndex" :range="collegeArray" class="scope_r">
  19. <view class="basics_li_r college_r" style="background-color: #F5F5F5 ;">
  20. <view>{{form.collegeName?form.collegeName:'未选择实验室'}}</view>
  21. <img src="@/pages_safetyExamine/images/icon_06.png">
  22. </view>
  23. </picker>
  24. </view>
  25. <view class="basics_li">
  26. <view class="basics_li_l">楼栋</view>
  27. <picker @change="buildingChange" disabled="" :value="collegeIndex" :range="buildingArray" class="scope_r">
  28. <view class="basics_li_r college_r" style="background-color: #F5F5F5 ;">
  29. <view>{{form.buildName?form.buildName:'未选择实验室'}}</view>
  30. <img src="@/pages_safetyExamine/images/icon_06.png">
  31. </view>
  32. </picker>
  33. </view>
  34. <view class="basics_li">
  35. <view class="basics_li_l">计划标题</view>
  36. <picker v-if="isCustom" @change="planChange" :disabled='addDisabledType' :value="planIndex" :range="planArray" class="scope_r">
  37. <view class="basics_li_r college_r" :class="addDisabledType?'addDisabled':''">
  38. <view>{{form.title?form.title:'选择计划标题'}}</view>
  39. <img src="@/pages_safetyExamine/images/icon_06.png">
  40. </view>
  41. </picker>
  42. <view v-if="!isCustom" class="basics_li_r college_r">
  43. <input type="text" v-model="form.title" maxlength="30" placeholder="输入计划标题">
  44. </view>
  45. </view>
  46. <view class="basics_li" style="justify-content: flex-end;" v-if='planArray[0]&&!addDisabledType'>
  47. <view class="custom" @click="customFun">{{isCustom?'自定义输入':'选择计划'}}</view>
  48. </view>
  49. <view class="basics_li">
  50. <view class="basics_li_l">检查组织</view>
  51. <picker @change="categoryChange" :value="categoryIndex" disabled :range="categoryArray" class="scope_r">
  52. <view class="basics_li_r college_r" style="background-color: #F5F5F5 ;">
  53. <view>{{form.checkType?(form.checkType==1?'校院巡查':'实验室自查'):'选择检查组织'}}</view>
  54. <img src="@/pages_safetyExamine/images/icon_06.png">
  55. </view>
  56. </picker>
  57. </view>
  58. <view class="basics_li">
  59. <view class="basics_li_l">检查类型</view>
  60. <picker @change="specialChange" :value="specialIndex" :range="specialArray" :disabled="isCustom" class="scope_r">
  61. <view class="basics_li_r college_r" :class="isCustom?'addDisabled':''">
  62. <view>{{form.checkCategory?(form.checkCategory==1?'综合检查':'专项检查'):'选择检查类型'}}</view>
  63. <img src="@/pages_safetyExamine/images/icon_06.png">
  64. </view>
  65. </picker>
  66. </view>
  67. <view class="period">
  68. <view class="period_l">计划周期</view>
  69. <view class="period_r" :class="isCustom?'addDisabled':''">
  70. <picker mode="date" @change="startChange(form,$event)" :disabled="isCustom">
  71. <input class="picker-text" disabled type="text" v-model="form.cycleStartTime" placeholder="开始时间">
  72. </picker>
  73. <view>至</view>
  74. <picker mode="date" @change="endChange(form,$event)" :disabled="isCustom">
  75. <input class="picker-text2" disabled type="text" v-model="form.cycleEndTime" placeholder="结束时间">
  76. </picker>
  77. </view>
  78. </view>
  79. </view>
  80. <view class="attachment" v-if="form.isAttachment==1">
  81. <view class="attachment_t">
  82. <text>材料附件</text>
  83. <text>点击文件标题查看</text>
  84. </view>
  85. <view class="attachment_li" v-for="item in attachmentList">
  86. <img src="@/pages_safetyExamine/images/icon_djc_wj.png"/>
  87. <text @click="attachmentPreview(item)">{{item.fileName}}</text>
  88. </view>
  89. </view>
  90. <view class="inspect" v-if='form.checkCategory==1 || (form.checkResult==0 || form.checkCategory==2)'>
  91. <view class="inspect_li" v-if='form.checkCategory==1'>
  92. <view class="inspect_li_l">检查结果</view>
  93. <picker @change="resultChange" :value="resultIndex" :range="resultArray" class="scope_r">
  94. <view class="inspect_li_r college_r">
  95. <view>{{form.checkResult==1?'符合':'不符合'}}</view>
  96. <img src="@/pages_safetyExamine/images/icon_06.png">
  97. </view>
  98. </picker>
  99. </view>
  100. <view class="inspect_li" v-if="form.checkResult==0 || form.checkCategory==2">
  101. <view class="inspect_li_l">整改日期</view>
  102. <picker mode="date" @change="rectifyDeadline(form,$event)" :start="currentDate">
  103. <view class="inspect_li_r date_r">
  104. <input disabled class="picker-text" type="text" v-model="form.rectifyDeadline" placeholder="请选择日期" placeholder-style="font-size: 30rpx;color:#333;">
  105. <img src="@/pages_safetyExamine/images/icon_rl.png">
  106. </view>
  107. </picker>
  108. </view>
  109. <view class="inspect_li" v-if="form.checkResult==0 || form.checkCategory==2">
  110. <view class="inspect_li_l">整改通知</view>
  111. <view class="inform_r">
  112. <view v-for="(item,index) in informArray" :key="index" @click="tabClick(index)"><text :class="informIndex==index?'checked':'inform_r_l' "></text><text class="inform_r_r">{{item}}</text></view>
  113. </view>
  114. </view>
  115. </view>
  116. </scroll-view>
  117. <!-- 房间选择弹出层 -->
  118. <view class="popup-max-box" v-if="popupType">
  119. <view class="popup-null" @click="popupClick(2)"></view>
  120. <view class="popup-big-box">
  121. <view class="popup-input-box">
  122. <input type="text" maxlength="10" v-model="room" placeholder="请输入关键字">
  123. <view @click="buildBySub">搜索</view>
  124. </view>
  125. <view class="popup-for-max-box">
  126. <view class="popup-for-null" v-if="!roomList[0]">暂无数据</view>
  127. <view class="popup-for-box" v-for="(item,index) in roomList" :key="index">
  128. <view class="name-p">{{item.name}}</view>
  129. <view class="button-p" @click="popupClickItem(item)">确定</view>
  130. </view>
  131. </view>
  132. </view>
  133. </view>
  134. <!-- 检查名称弹窗 -->
  135. <uni-popup ref="popup" class="inspect_name" type="bottom">
  136. <view class="popup-content">
  137. <view class="inspect_name_t">
  138. <input type="text" v-model="customTitle" maxlength="30" placeholder="请输入计划标题"/>
  139. </view>
  140. <view class="inspect_name_b">
  141. <text @click="titleCancel()">取消</text>
  142. <text @click="titleConfirm()">确定</text>
  143. </view>
  144. </view>
  145. </uni-popup>
  146. <view class="bottom_btn" @click="handleClick('nextStep')" v-if="form.checkResult==0 || form.checkCategory==2">下一步</view>
  147. <view class="bottom_btn" @click="handleClick('submitForm')" v-if="form.checkResult==1 && form.checkCategory==1">提交</view>
  148. </view>
  149. </template>
  150. <script>
  151. import { config } from '@/api/request/config.js'
  152. import { buildBySub,listDepartments,
  153. subjectList,getCheckPlanBySubId,
  154. checkManageUpdate,checkManageAdd,
  155. findCheckManage,buildFloorGetlist,
  156. buildBySubList,findByPlanIdAttachment,subjectFindSubjectInfo} from '@/api/index.js'
  157. export default {
  158. name: "rectifyList",
  159. components: {
  160. },
  161. data() {
  162. return {
  163. pageType:0,
  164. //列表请求参数
  165. getData:{
  166. pageNum:1,
  167. pageSize:20,
  168. },
  169. customTitle:'',
  170. attachmentList:[],//材料附件
  171. form:{
  172. id:'',
  173. checkPlanId:'',
  174. manageStatus:'',//保存1 提交2
  175. subIds:'',//实验室
  176. subjectName:'',
  177. title:'',//计划标题
  178. deptId:'',//学院
  179. collegeName:'',
  180. buildId:'',//楼栋
  181. buildName:'',
  182. roomNumber:'',//房间号
  183. checkType:2,// 检查组织(1校院巡查 2实验室自查)
  184. checkResult:1,// 检查结果 0不符合 1符合
  185. rectifyDeadline:'',//整改期限
  186. rectifyNotice:'1',//整改通知(1整改告知书 2整改通知书)
  187. cycleStartTime:'',
  188. cycleEndTime:'',
  189. checkCategory:'',//检查类型 1综合检查 2专项检查
  190. checkHazardDtoList:[
  191. {
  192. voiceRemark:[],//语音备忘存储
  193. hazardLevel:2,//隐患等级
  194. hazardLevelName:'一般隐患',//隐患等级
  195. hazardCheckCode:'', //检查项目code序号
  196. hazardCheckName:'', //检查项目名称
  197. hazardCheckPro:'', //最后一级的id
  198. hazardCheckPoint:'',// 检查要点
  199. hazardDescribe:'', //隐患描述
  200. uploadDtoList:[],//隐患照片
  201. }
  202. ],
  203. checkHazardInfoVoList:[],
  204. },
  205. collegeIndex :0,
  206. collegeArray:[],
  207. categoryIndex :0,
  208. categoryArray:['校院巡查','实验室自查'],
  209. planIndex :0,
  210. specialIndex:0,
  211. specialArray:['综合检查','专项检查'],
  212. planArray:[],
  213. planList:[],
  214. resultIndex :0,
  215. resultArray:['符合','不符合'],
  216. informIndex:0,
  217. informArray:['整改告知书','整改通知书'],
  218. //房间弹层 状态
  219. popupType:false,
  220. //房间搜索字段
  221. room:"",
  222. roomList:[],
  223. item:{},
  224. isCustom:false,
  225. buildingArray:[],
  226. buildingList:[],
  227. //扫一扫进入
  228. laboratoryList:[],
  229. currentDate:'',//当前日期
  230. //
  231. addDisabledType:false
  232. }
  233. },
  234. onLoad(option) {
  235. //通过微信扫一扫进入
  236. if(option.q){
  237. console.log('外部扫一扫')
  238. let text = decodeURIComponent(option.q)
  239. let codeId = "";
  240. let newList = text.split("?")[1].split("&")
  241. let list = newList[0].split("=")[1].split("-")
  242. codeId = list[0];
  243. uni.showToast({
  244. title: codeId,
  245. icon:"none",
  246. mask:true,
  247. duration: 2000
  248. });
  249. this.form.subIds=codeId
  250. this.getCheckPlanBySubId(codeId)
  251. this.getByIdLaboratoryList();
  252. }
  253. if(option.id){
  254. console.log('开始/编辑')
  255. this.findCheckManage('add',option.id)
  256. }
  257. if(option.form){
  258. console.log('子页面返回')
  259. this.form=JSON.parse(decodeURIComponent(option.form));
  260. this.isCustom=this.form.isCustom;
  261. if(this.form.isAttachment==1){//0没有附件 1有附件
  262. this.findByPlanIdAttachment()
  263. }
  264. }
  265. //通过实验室id查询计划
  266. if(option.subId){
  267. console.log('内部扫一扫')
  268. this.form.subIds=option.subId
  269. this.getCheckPlanBySubId(option.subId)
  270. this.getByIdLaboratoryList();
  271. }
  272. },
  273. onShow() {
  274. this.buildFloorGetlist()
  275. },
  276. mounted(){
  277. //获取当前日期
  278. this.currentDate = this.getNowFormatDate()
  279. this.listDepartments();
  280. },
  281. methods: {
  282. //滚动事件
  283. scrollGet(){},
  284. handleClick(doType){
  285. let self=this;
  286. if(!this.form.subIds){
  287. uni.showToast({
  288. title: '请选择实验室!',
  289. icon:"none",
  290. mask:true,
  291. duration: 2000
  292. });
  293. return
  294. }
  295. if(!this.form.deptId){
  296. uni.showToast({
  297. title: '请选择学院!',
  298. icon:"none",
  299. mask:true,
  300. duration: 2000
  301. });
  302. return
  303. }
  304. if(!this.form.buildId){
  305. uni.showToast({
  306. title: '请选择楼栋!',
  307. icon:"none",
  308. mask:true,
  309. duration: 2000
  310. });
  311. return
  312. }
  313. if(!this.form.title){
  314. if(!this.isCustom){
  315. uni.showToast({
  316. title: '请输入计划标题!',
  317. icon:"none",
  318. mask:true,
  319. duration: 2000
  320. });
  321. }else{
  322. uni.showToast({
  323. title: '请选择计划标题!',
  324. icon:"none",
  325. mask:true,
  326. duration: 2000
  327. });
  328. }
  329. return
  330. }
  331. if(!this.form.cycleStartTime || !this.form.cycleEndTime){
  332. uni.showToast({
  333. title: '请选择计划周期!',
  334. icon:"none",
  335. mask:true,
  336. duration: 2000
  337. });
  338. return
  339. }
  340. if(this.currentDate<this.form.cycleStartTime){
  341. uni.showToast({
  342. title: '当前时间不在计划周期内',
  343. icon:"none",
  344. mask:true,
  345. duration: 2000
  346. });
  347. return
  348. }
  349. if( doType=='nextStep'){//下一步
  350. // 打开扫描页面
  351. if(!this.form.rectifyDeadline){
  352. uni.showToast({
  353. title: '整改日期不能为空!',
  354. icon:"none",
  355. mask:true,
  356. duration: 2000
  357. });
  358. return
  359. }
  360. this.form.isCustom=this.isCustom;
  361. if(this.form.checkCategory==1){//综合检查
  362. uni.navigateTo({
  363. url: '/pages_safetyExamine/examineManage/examineAddTow?form='+encodeURIComponent(JSON.stringify(this.form))
  364. });
  365. }else if(this.form.checkCategory==2){//专项检查
  366. if(this.form.checkHazardInfoVoList[0]){
  367. uni.navigateTo({
  368. url: '/pages_safetyExamine/examineManage/examineAddTow?form='+encodeURIComponent(JSON.stringify(this.form))
  369. });
  370. }else{
  371. uni.redirectTo({
  372. url: '/pages/saoCode/scan?form='+encodeURIComponent(JSON.stringify(this.form))
  373. });
  374. }
  375. }
  376. }else if(doType=='submitForm'){
  377. self.submitForm()
  378. }
  379. },
  380. customFun(){
  381. let self=this;
  382. if(!self.isCustom){//自定义
  383. self.form.title='';
  384. self.form.id='';
  385. self.form.checkType='';
  386. self.form.cycleStartTime='';
  387. self.form.cycleEndTime='';
  388. self.isCustom=!self.isCustom
  389. }else{//选择计划
  390. this.$set(this.form,'isAttachment',0);
  391. this.$set(this,'customTitle','');
  392. self.form.checkHazardInfoVoList=[];
  393. self.$refs.popup.open()
  394. }
  395. },
  396. titleCancel(){
  397. let self=this;
  398. self.$refs.popup.close()
  399. },
  400. titleConfirm(){
  401. let self=this;
  402. self.isCustom=!self.isCustom
  403. this.$set(this.form,'title',this.customTitle);
  404. this.$set(this.form,'id','');
  405. this.$set(this.form,'checkType',2);
  406. this.$set(this.form,'checkResult',1);
  407. this.$set(this.form,'rectifyDeadline','');
  408. this.$set(this,'informIndex',0);
  409. this.$set(this.form,'cycleStartTime','');
  410. this.$set(this.form,'cycleEndTime','');
  411. this.$set(this.form,'checkHazardDtoList',[{
  412. voiceRemark:[],//语音备忘存储
  413. hazardLevel:2,//隐患等级
  414. hazardLevelName:'一般隐患',//隐患等级
  415. hazardCheckCode:'', //检查项目code序号
  416. hazardCheckName:'', //检查项目名称
  417. hazardCheckPro:'', //最后一级的id
  418. hazardCheckPoint:'',// 检查要点
  419. hazardDescribe:'', //隐患描述
  420. uploadDtoList:[],//隐患照片
  421. }]);
  422. self.$refs.popup.close()
  423. },
  424. //开始时间选中事件
  425. startChange(form,e){
  426. if(new Date(e.target.value).getTime()>new Date(form.cycleEndTime).getTime()){
  427. uni.showToast({
  428. title: '结束时间不能小于开始时间',
  429. icon:"none",
  430. mask:true,
  431. duration: 2000
  432. });
  433. }else{
  434. form.cycleStartTime=e.target.value
  435. }
  436. },
  437. //结束时间选中事件
  438. endChange(form,e){
  439. if(new Date(form.cycleStartTime).getTime()>new Date(e.target.value).getTime()){
  440. uni.showToast({
  441. title: '结束时间不能小于开始时间',
  442. icon:"none",
  443. mask:true,
  444. duration: 2000
  445. });
  446. }else{
  447. form.cycleEndTime=e.target.value
  448. }
  449. },
  450. //获取当前日期函数
  451. getNowFormatDate() {
  452. let date = new Date(),
  453. year = date.getFullYear(), //获取完整的年份(4位)
  454. month = date.getMonth() + 1, //获取当前月份(0-11,0代表1月)
  455. strDate = date.getDate() // 获取当前日(1-31)
  456. if (month < 10) month = `0${month}` // 如果月份是个位数,在前面补0
  457. if (strDate < 10) strDate = `0${strDate}` // 如果日是个位数,在前面补0
  458. return `${year}-${month}-${strDate}`
  459. },
  460. //根据计划id查询附件列表
  461. async findByPlanIdAttachment(){
  462. let _this = this;
  463. const {data} = await findByPlanIdAttachment({checkPlanId:this.form.checkPlanId});
  464. if(data.code == 200){
  465. _this.attachmentList=data.data;
  466. }
  467. },
  468. //详情
  469. async findCheckManage(type,id){
  470. let _this = this;
  471. const {data} = await findCheckManage({id:id});
  472. if(data.code == 200){
  473. if(type == 'add'){
  474. if(data.data.checkPlanId){
  475. this.$set(this,'isCustom',true);
  476. }
  477. this.$set(this,'addDisabledType',true);
  478. }
  479. this.$set(this,'form',data.data);
  480. this.$set(this.form,'subIds',data.data.subId);
  481. this.form.rectifyNotice=data.data.rectifyNotice==null?'1':data.data.rectifyNotice;
  482. this.informIndex=this.form.rectifyNotice==1?0:1;
  483. if(data.data.checkCategory==1){//综合检查
  484. this.form.checkResult=data.data.checkResult==null?'1':data.data.checkResult;
  485. if(data.data.checkHazardDtoList[0]){//隐患项
  486. this.form.checkHazardDtoList=data.data.checkHazardDtoList;
  487. //语音备注
  488. for(let i=0;i<this.form.checkHazardDtoList.length;i++){
  489. if(this.form.checkHazardDtoList[i].voiceRemark){
  490. this.form.checkHazardDtoList[i].voiceRemark=JSON.parse(this.form.checkHazardDtoList[i].voiceRemark)
  491. }else{
  492. this.form.checkHazardDtoList[i].voiceRemark=[];
  493. }
  494. }
  495. }else{
  496. let checkHazardDtoList=[
  497. {
  498. voiceRemark:[],//语音备忘存储
  499. hazardLevel:2,//隐患等级
  500. hazardLevelName:'一般隐患',//隐患等级
  501. hazardCheckCode:'', //检查项目code序号
  502. hazardCheckName:'', //检查项目名称
  503. hazardCheckPro:'', //最后一级的id
  504. hazardCheckPoint:'',// 检查要点
  505. hazardDescribe:'', //隐患描述
  506. uploadDtoList:[],//隐患照片
  507. }
  508. ];
  509. this.form.checkHazardDtoList=checkHazardDtoList;
  510. }
  511. }else if(data.data.checkCategory==2){//专项检查
  512. if(_this.form.checkHazardInfoVoList[0]){
  513. _this.form.checkHazardInfoVoList.forEach(function(item) {
  514. item.switch = true;
  515. // item.checkHazardDtoList.forEach(function(item2) {
  516. // item2.hazardCheckCode=item2.code
  517. // })
  518. })
  519. }
  520. if(_this.form.checkHazardInfoVoList[0]){//隐患项
  521. //语音备注
  522. for(let k=0;k<_this.form.checkHazardInfoVoList.length;k++){
  523. for(let i=0;i<_this.form.checkHazardInfoVoList[k].checkHazardDtoList.length;i++){
  524. if(_this.form.checkHazardInfoVoList[k].checkHazardDtoList[i].voiceRemark){
  525. _this.form.checkHazardInfoVoList[k].checkHazardDtoList[i].voiceRemark=JSON.parse(_this.form.checkHazardInfoVoList[k].checkHazardDtoList[i].voiceRemark)
  526. }else{
  527. _this.form.checkHazardInfoVoList[k].checkHazardDtoList[i].voiceRemark=[];
  528. }
  529. }
  530. }
  531. }
  532. }
  533. //根据实验室id查询实验室计划
  534. if(data.data.subId){
  535. this.form.cycleStartTime=data.data.cycleStartTime;
  536. this.form.cycleEndTime=data.data.cycleEndTime;
  537. }
  538. if(data.data.isAttachment==1){//0没有附件 1有附件
  539. this.findByPlanIdAttachment()
  540. }
  541. }
  542. },
  543. //查询学院列表
  544. async listDepartments(){
  545. let _this = this;
  546. const {data} = await listDepartments();
  547. if(data.code == 200){
  548. for(let i=0;i<data.data.length;i++){
  549. _this.collegeArray.push(data.data[i].deptName)
  550. }
  551. _this.collegeList=data.data;
  552. }
  553. },
  554. //根据实验室id查询该实验室有关计划
  555. async getCheckPlanBySubId(subId){
  556. let _this = this;
  557. const {data} = await getCheckPlanBySubId({'subId':subId});
  558. if(data.code == 200){
  559. if(data.data.length>0){
  560. let titleList = [];
  561. let list = [];
  562. for(let i=0;i<data.data.length;i++){
  563. if(data.data[i].isSelfData==1){
  564. titleList.push(data.data[i].title)
  565. list.push(data.data[i]);
  566. }
  567. }
  568. this.$set(this.form,'id','');
  569. this.$set(this.form,'title','');
  570. this.$set(this,'planArray',titleList);
  571. this.$set(this,'planList',list);
  572. _this.isCustom=true;
  573. _this.form.checkType=null;
  574. }else{
  575. _this.isCustom=false;
  576. _this.form.checkType=2;
  577. }
  578. }
  579. },
  580. //查询楼栋
  581. async buildFloorGetlist(){
  582. let _this = this;
  583. const {data} = await buildFloorGetlist({type:2});
  584. if(data.code == 200){
  585. let idList = [];
  586. let nameList = [];
  587. for(let i=0;i<data.rows.length;i++){
  588. idList.push(data.rows[i].id)
  589. nameList.push(data.rows[i].name)
  590. }
  591. this.$set(this,"buildingList",idList)
  592. this.$set(this,"buildingArray",nameList)
  593. }
  594. },
  595. //楼栋选中
  596. buildingChange(e){
  597. this.form.buildId=this.buildingList[e.target.value]
  598. this.form.buildName=this.buildingArray[e.target.value]
  599. this.buildBySubList(this.buildingList[e.target.value]);
  600. },
  601. //根据楼栋ID查询实验室列表
  602. async buildBySubList(buildId){
  603. let self = this;
  604. const {data} = await buildBySubList({buildId:buildId});
  605. if(data.code == 200){
  606. this.$set(this.form,'subIds','')
  607. this.$set(this.form,'subjectName','')
  608. this.$set(this,'room','')
  609. this.$set(this,'roomList',data.data);
  610. }
  611. },
  612. //学院选中
  613. collegeChange(e){
  614. this.collegeIndex = e.target.value;
  615. this.form.deptId=this.collegeList[e.target.value].deptId
  616. this.form.collegeName=this.collegeList[e.target.value].deptName
  617. this.buildFloorGetlist(this.form.deptId)
  618. },
  619. //检查组织
  620. categoryChange(e){
  621. this.categoryIndex = e.target.value;
  622. if(e.target.value==0){
  623. this.form.checkType=1
  624. }else if(e.target.value==1){
  625. this.form.checkType=2
  626. }
  627. },
  628. //检查类型
  629. specialChange(e){
  630. this.specialIndex = e.target.value;
  631. if(e.target.value==0){
  632. this.form.checkCategory=1
  633. }else if(e.target.value==1){
  634. this.form.checkCategory=2
  635. }
  636. },
  637. //计划
  638. planChange(e){
  639. this.planIndex = e.target.value;
  640. this.form.id=this.planList[e.target.value].id
  641. this.findCheckManage('check',this.planList[e.target.value].id);
  642. // this.form.title=this.planList[e.target.value].title
  643. // this.form.checkPlanId=this.planList[e.target.value].checkPlanId
  644. // this.form.subIds=this.planList[e.target.value].subId;
  645. // this.form.subjectName=this.planList[e.target.value].subjectName;
  646. // this.form.deptId=this.planList[e.target.value].deptId;
  647. // this.form.collegeName=this.planList[e.target.value].collegeName;
  648. // this.form.buildId=this.planList[e.target.value].buildId;
  649. // this.form.buildName=this.planList[e.target.value].buildName;
  650. // this.form.checkType=this.planList[e.target.value].checkType;
  651. // this.form.cycleStartTime=this.planList[e.target.value].cycleStartTime;
  652. // this.form.cycleEndTime=this.planList[e.target.value].cycleEndTime;
  653. },
  654. resultChange(e){
  655. this.resultIndex = e.target.value;
  656. if(e.target.value==0){
  657. this.form.checkResult=1;
  658. }else if(e.target.value==1){
  659. this.form.checkResult=0;
  660. }
  661. },
  662. //开始时间选中事件
  663. rectifyDeadline(form,e){
  664. form.rectifyDeadline=e.target.value
  665. },
  666. //整改通知
  667. tabClick(index) {
  668. this.informIndex = index;
  669. if(index==0){
  670. this.form.rectifyNotice='1';
  671. }else if(index==1){
  672. this.form.rectifyNotice='2';
  673. }
  674. },
  675. //搜索房间弹层开关
  676. popupClick(type){
  677. if(type == 1){
  678. if(this.addDisabledType){
  679. return
  680. }
  681. this.popupType = true;
  682. }else if(type == 2){
  683. this.popupType = false;
  684. }
  685. },
  686. //扫一扫进入通过id查询实验室列表
  687. async getByIdLaboratoryList(){
  688. let self = this;
  689. const {data} = await subjectFindSubjectInfo({subIds:this.form.subIds});
  690. if(data.code==200){
  691. if(data.data){
  692. self.form.subjectName=data.data.subjectName;
  693. self.form.deptId=data.data.deptId;
  694. self.form.collegeName=data.data.collegeName;
  695. self.form.buildId=data.data.buildId;
  696. self.form.buildName=data.data.buildName;
  697. self.form.roomNumber=data.data.roomNumber;
  698. }
  699. }
  700. },
  701. //搜索房间接口
  702. async buildBySub(){
  703. let self = this;
  704. if(!this.room){
  705. uni.showToast({
  706. title: '请输入要搜索关键词',
  707. icon:"none",
  708. mask:true,
  709. duration: 2000
  710. });
  711. return
  712. }
  713. const {data} = await buildBySub({'searchValue':this.room});
  714. if(data.code==200){
  715. if(data.data[0]){
  716. this.roomList = data.data;
  717. }else{
  718. uni.showToast({
  719. title: '未找到相关实验室',
  720. icon:"none",
  721. mask:true,
  722. duration: 2000
  723. });
  724. }
  725. }
  726. },
  727. //确认搜索房间
  728. popupClickItem(item){
  729. this.$set(this.form,"subIds",item.id)
  730. this.$set(this.form,"subjectName",item.name)
  731. this.$set(this.form,"deptId",item.deptId)
  732. this.$set(this.form,"buildId",item.buildId)
  733. this.$set(this.form,"roomNumber",item.room)
  734. this.$set(this.form,'title','');
  735. this.$set(this.form,'id','');
  736. this.$set(this.form,'checkType',2);
  737. this.$set(this.form,'checkResult',1);
  738. this.$set(this.form,'rectifyDeadline','');
  739. this.$set(this,'informIndex',0);
  740. this.$set(this.form,'cycleStartTime','');
  741. this.$set(this.form,'cycleEndTime','');
  742. this.$set(this.form,'checkHazardDtoList',[{
  743. voiceRemark:[],//语音备忘存储
  744. hazardLevel:2,//隐患等级
  745. hazardLevelName:'一般隐患',//隐患等级
  746. hazardCheckCode:'', //检查项目code序号
  747. hazardCheckName:'', //检查项目名称
  748. hazardCheckPro:'', //最后一级的id
  749. hazardCheckPoint:'',// 检查要点
  750. hazardDescribe:'', //隐患描述
  751. uploadDtoList:[],//隐患照片
  752. }]);
  753. //匹配学院名称
  754. for(let i=0;i<this.collegeList.length;i++){
  755. if(this.collegeList[i].deptId==item.deptId){
  756. this.$set(this.form,"collegeName",this.collegeList[i].deptName)
  757. }
  758. }
  759. //匹配楼栋名称
  760. for(let i=0;i<this.buildingList.length;i++){
  761. if(this.buildingList[i]==item.buildId){
  762. this.$set(this.form,"buildName",this.buildingArray[i])
  763. }
  764. }
  765. this.popupType = false;
  766. this.getCheckPlanBySubId(item.id)
  767. },
  768. //调用摄像头
  769. saoCode(){
  770. let self = this;
  771. uni.scanCode({
  772. onlyFromCamera: true,
  773. success: function (res) {
  774. if(res.result.indexOf("code") != -1 && res.result.indexOf("-") != -1 && res.result.indexOf("&") != -1){
  775. let codeRoom = "";
  776. let newList = res.result.split("?")[1].split("&")
  777. let list = newList[0].split("=")[1].split("-")
  778. codeRoom = list[1];
  779. if(codeRoom){
  780. self.roomList = [];
  781. self.room = codeRoom;
  782. self.buildBySub();
  783. self.popupType = true;
  784. }else{
  785. uni.showToast({
  786. title: '请扫描正确的二维码',
  787. icon:"none",
  788. mask:true,
  789. duration: 2000
  790. });
  791. }
  792. }else{
  793. uni.showToast({
  794. title: '请扫描正确的二维码',
  795. icon:"none",
  796. mask:true,
  797. duration: 2000
  798. });
  799. }
  800. }
  801. });
  802. },
  803. //附件查看
  804. attachmentPreview(item){
  805. uni.showLoading({
  806. title: '下载中'
  807. });
  808. wx.downloadFile({
  809. url: config.base_url+item.fileUrl,
  810. header: {
  811. Authorization: uni.getStorageSync('token')
  812. },
  813. success: function (res) {
  814. uni.hideLoading();
  815. const filePath = res.tempFilePath
  816. wx.openDocument({
  817. filePath: filePath,
  818. success: function (res) {
  819. console.log('打开文档成功')
  820. }
  821. })
  822. },
  823. fail: function (res){
  824. uni.hideLoading();
  825. uni.showToast({
  826. title: '下载失败',
  827. icon:"none",
  828. mask:true,
  829. duration: 2000
  830. });
  831. }
  832. })
  833. },
  834. //提交
  835. async submitForm(){
  836. let self = this;
  837. this.form.manageStatus=2;
  838. let obj=self.form;
  839. //复合的情况下,删除隐患项
  840. obj.checkHazardDtoList=[];
  841. if(self.form.id){
  842. const {data} = await checkManageUpdate(obj);
  843. if(data.code == 200){
  844. uni.showToast({
  845. title: '提交成功',
  846. icon:"none",
  847. mask:true,
  848. duration: 2000
  849. });
  850. uni.redirectTo({
  851. url: '/pages_safetyExamine/examineManage/examineList?pageType='+this.form.checkType
  852. });
  853. }
  854. }else{
  855. const {data} = await checkManageAdd(obj);
  856. if(data.code == 200){
  857. uni.showToast({
  858. title: '提交成功',
  859. icon:"none",
  860. mask:true,
  861. duration: 2000
  862. });
  863. uni.redirectTo({
  864. url: '/pages_safetyExamine/examineManage/examineList?pageType='+this.form.checkType
  865. });
  866. }
  867. }
  868. },
  869. }
  870. }
  871. </script>
  872. <style lang="stylus" scoped>
  873. .examine{
  874. height:100%;
  875. display flex;
  876. box-sizing: border-box;
  877. .info-max-box{
  878. flex: 1;
  879. overflow: scroll;
  880. padding: 20rpx 0rpx 128rpx;
  881. box-sizing: border-box;
  882. }
  883. .addDisabled{
  884. background-color: #f5f5f5;
  885. }
  886. .basics{
  887. margin: 0 30rpx;
  888. width: 690rpx;
  889. height:auto;
  890. background: #FFFFFF;
  891. border-radius: 20rpx;
  892. padding: 30rpx 28rpx 30rpx;
  893. box-sizing: border-box;
  894. .basics_li{
  895. display: flex;
  896. justify-content: flex-start;
  897. margin-bottom: 24rpx;
  898. .basics_li_l{
  899. width: 146rpx;
  900. text-align: left;
  901. font-size: 30rpx;
  902. font-family: PingFang SC-Medium, PingFang SC;
  903. font-weight: 400;
  904. color: #333333;
  905. line-height: 80rpx;
  906. }
  907. .basics_li_r{
  908. width: 486rpx;
  909. height: 80rpx;
  910. border-radius: 10rpx;
  911. opacity: 1;
  912. border: 1rpx solid #E0E0E0;
  913. padding-left: 20rpx;
  914. box-sizing: border-box;
  915. }
  916. /* 学院 */
  917. .college_r{
  918. width: 486rpx;
  919. height: 80rpx;
  920. border-radius: 10rpx;
  921. border: 1rpx solid #E0E0E0;
  922. display: flex;
  923. justify-content: flex-start;
  924. align-items: center;
  925. >view{
  926. flex:1;
  927. line-height:80rpx;
  928. font-size: 30rpx;
  929. font-family: PingFang SC-Medium, PingFang SC;
  930. font-weight: 400;
  931. color: #333333;
  932. line-height: 80rpx;
  933. white-space: nowrap;
  934. overflow: hidden;
  935. text-overflow: ellipsis;
  936. }
  937. >img{
  938. width: 14rpx;
  939. height: 8rpx;
  940. margin-right: 30rpx;
  941. }
  942. }
  943. /* 实验室 */
  944. .lab_r{
  945. width: 486rpx;
  946. height: 80rpx;
  947. display: flex;
  948. justify-content: flex-start;
  949. .picker-text{
  950. width: 438rpx;
  951. height: 80rpx;
  952. }
  953. .img-box{
  954. width: 48rpx;
  955. >img{
  956. width:30rpx;
  957. height:28rpx;
  958. margin:26rpx 18rpx 0 0;
  959. }
  960. }
  961. }
  962. /* 楼栋 */
  963. .building_r{
  964. width: 486rpx;
  965. height: 80rpx;
  966. >input{
  967. height: 80rpx;
  968. font-size: 30rpx;
  969. font-family: PingFang SC-Medium, PingFang SC;
  970. font-weight: 400;
  971. color: #333333;
  972. line-height: 80rpx;
  973. }
  974. }
  975. }
  976. .period{
  977. display: flex;
  978. justify-content: flex-start;
  979. align-items: center;
  980. margin-bottom: 24rpx;
  981. .period_l{
  982. width: 146rpx;
  983. font-size: 30rpx;
  984. font-family: PingFang SC-Medium, PingFang SC;
  985. font-weight: 400;
  986. color: #333333;
  987. line-height: 42rpx;
  988. text-align: left;
  989. }
  990. .period_r{
  991. width: 490rpx;
  992. height: 80rpx;
  993. border-radius: 10rpx;
  994. border: 1rpx solid #E0E0E0;
  995. display: flex;
  996. justify-content: flex-start;
  997. align-items: center;
  998. .picker-text{
  999. font-size: 30rpx;
  1000. font-family: PingFang SC-Medium, PingFang SC;
  1001. font-weight: 400;
  1002. color: #333;
  1003. line-height: 80rpx;
  1004. width: 230rpx;
  1005. text-align: center;
  1006. }
  1007. .picker-text2{
  1008. font-size: 30rpx;
  1009. font-family: PingFang SC-Medium, PingFang SC;
  1010. font-weight: 400;
  1011. color: #333;
  1012. line-height: 80rpx;
  1013. width: 230rpx;
  1014. text-align: center;
  1015. }
  1016. }
  1017. }
  1018. .custom{
  1019. width: 150rpx;
  1020. height: 60rpx;
  1021. border-radius: 10rpx 10rpx 10rpx 10rpx;
  1022. opacity: 1;
  1023. border: 1rpx solid #0183FA;
  1024. font-size: 26rpx;
  1025. font-family: PingFang SC-Medium, PingFang SC;
  1026. font-weight: 400;
  1027. color: #0183FA;
  1028. line-height: 60rpx;
  1029. text-align: center;
  1030. float: right;
  1031. }
  1032. }
  1033. .attachment{
  1034. width: 690rpx;
  1035. background: #FFFFFF;
  1036. border-radius: 20rpx;
  1037. margin: 20rpx 30rpx 0;
  1038. padding-bottom: 32rpx;
  1039. box-sizing: border-box;
  1040. .attachment_t{
  1041. border-bottom: 1rpx solid #D8D8D8;
  1042. >text:nth-of-type(1){
  1043. font-size: 30rpx;
  1044. font-family: PingFang SC-Medium, PingFang SC;
  1045. font-weight: 400;
  1046. color: #333333;
  1047. line-height: 110rpx;
  1048. margin-left: 28rpx;
  1049. }
  1050. >text:nth-of-type(2){
  1051. font-size: 30rpx;
  1052. font-family: PingFang SC-Medium, PingFang SC;
  1053. font-weight: 400;
  1054. color: #999999;
  1055. line-height: 110rpx;
  1056. margin-left: 24rpx;
  1057. }
  1058. }
  1059. .attachment_li{
  1060. height: 40rpx;
  1061. display: flex;
  1062. justify-content: flex-start;
  1063. align-items: center;
  1064. margin-top: 32rpx;
  1065. >img{
  1066. width: 30rpx;
  1067. height: 26rpx;
  1068. margin-right: 20rpx;
  1069. margin-left: 50rpx;
  1070. }
  1071. >text{
  1072. flex: 1;
  1073. font-size: 28rpx;
  1074. font-family: PingFang SC-Medium, PingFang SC;
  1075. font-weight: 400;
  1076. color: #0183FA;
  1077. line-height: 40rpx;
  1078. white-space: nowrap;
  1079. overflow: hidden;
  1080. text-overflow: ellipsis;
  1081. }
  1082. .attachment_li_del{
  1083. width: 30rpx;
  1084. height: 30rpx;
  1085. }
  1086. }
  1087. }
  1088. .inspect{
  1089. margin: 20rpx 30rpx 0;
  1090. width: 690rpx;
  1091. height: auto;
  1092. background: #FFFFFF;
  1093. border-radius: 20rpx;
  1094. padding: 40rpx 28rpx 20rpx;
  1095. box-sizing: border-box;
  1096. .inspect_li{
  1097. display: flex;
  1098. justify-content: flex-start;
  1099. margin-bottom: 24rpx;
  1100. .inspect_li_l{
  1101. width: 146rpx;
  1102. text-align: left;
  1103. font-size: 30rpx;
  1104. font-family: PingFang SC-Medium, PingFang SC;
  1105. font-weight: 400;
  1106. color: #333333;
  1107. line-height: 80rpx;
  1108. }
  1109. .inspect_li_r{
  1110. width: 486rpx;
  1111. height: 80rpx;
  1112. border-radius: 10rpx;
  1113. opacity: 1;
  1114. border: 1rpx solid #E0E0E0;
  1115. padding-left: 20rpx;
  1116. box-sizing: border-box;
  1117. }
  1118. .college_r{
  1119. width: 486rpx;
  1120. height: 80rpx;
  1121. border-radius: 10rpx;
  1122. border: 1rpx solid #E0E0E0;
  1123. display: flex;
  1124. justify-content: flex-start;
  1125. align-items: center;
  1126. >view{
  1127. flex:1;
  1128. line-height:80rpx;
  1129. font-size: 30rpx;
  1130. font-family: PingFang SC-Medium, PingFang SC;
  1131. font-weight: 400;
  1132. color: #333333;
  1133. line-height: 80rpx;
  1134. }
  1135. >img{
  1136. width: 14rpx;
  1137. height: 8rpx;
  1138. margin-right: 30rpx;
  1139. }
  1140. }
  1141. /* 整改日期 */
  1142. .date_r{
  1143. width: 486rpx;
  1144. height: 80rpx;
  1145. display: flex;
  1146. justify-content: flex-start;
  1147. .picker-text{
  1148. width: 438rpx;
  1149. height: 80rpx;
  1150. }
  1151. >img{
  1152. width:30rpx;
  1153. height:28rpx;
  1154. margin:16rpx 18rpx 0 0;
  1155. }
  1156. }
  1157. /* 整改通知 */
  1158. .inform_r{
  1159. width: 486rpx;
  1160. height: 80rpx;
  1161. padding-left: 20rpx;
  1162. box-sizing: border-box;
  1163. display: flex;
  1164. justify-content: flex-start;
  1165. align-items: center;
  1166. >view{
  1167. display: flex;
  1168. justify-content: flex-start;
  1169. align-items: center;
  1170. margin-right: 24rpx;
  1171. .inform_r_l{
  1172. display: inline-block;
  1173. width: 30rpx;
  1174. height: 30rpx;
  1175. border-radius: 50%;
  1176. border: 1rpx solid #E0E0E0;
  1177. margin-right: 14rpx;
  1178. }
  1179. .inform_r_r{
  1180. font-size: 30rpx;
  1181. font-family: PingFang SC-Medium, PingFang SC;
  1182. font-weight: 400;
  1183. color: #333333;
  1184. line-height: 80rpx;
  1185. }
  1186. .checked{
  1187. display: inline-block;
  1188. width: 30rpx;
  1189. height: 30rpx;
  1190. border-radius: 50%;
  1191. border: 1rpx solid #0183FA;
  1192. margin-right: 14rpx;
  1193. position: relative;
  1194. }
  1195. .checked::after{
  1196. content: '';
  1197. position: absolute;
  1198. top: 5rpx;
  1199. left:5rpx;
  1200. width: 20rpx;
  1201. height: 20rpx;
  1202. border-radius: 50%;
  1203. background: #0183FA;
  1204. }
  1205. }
  1206. }
  1207. }
  1208. }
  1209. .popup-max-box{
  1210. z-index:10;
  1211. height:100%;
  1212. width:100%;
  1213. position fixed;
  1214. background rgba(0,0,0,0.2)
  1215. display flex;
  1216. flex-direction column
  1217. .popup-null{
  1218. flex:1;
  1219. }
  1220. .popup-big-box{
  1221. border-top-left-radius:20rpx;
  1222. border-top-right-radius:20rpx;
  1223. background #fff
  1224. .popup-input-box{
  1225. padding:30rpx 20rpx;
  1226. display:flex;
  1227. input{
  1228. flex:1;
  1229. height:70rpx;
  1230. border:1rpx solid #e0e0e0;
  1231. border-radius:10rpx;
  1232. margin-right:20rpx;
  1233. padding:0 20rpx;
  1234. }
  1235. view{
  1236. background #0183FA
  1237. color:#fff;
  1238. border-radius:10rpx;
  1239. width:140rpx;
  1240. line-height:70rpx;
  1241. text-align center;
  1242. font-size:28rpx;
  1243. }
  1244. }
  1245. .popup-for-max-box{
  1246. margin:0 20rpx 30rpx;
  1247. height:600rpx;
  1248. overflow-y scroll;
  1249. .popup-for-null{
  1250. line-height:100rpx;
  1251. text-align center
  1252. color:#999;
  1253. }
  1254. .popup-for-box{
  1255. display:flex;
  1256. padding:10px 0;
  1257. .name-p{
  1258. flex:1;
  1259. line-height:60rpx;
  1260. }
  1261. .button-p{
  1262. background #0183FA
  1263. color:#fff;
  1264. text-align center
  1265. width:100rpx;
  1266. line-height:60rpx;
  1267. height:60rpx;
  1268. border-radius:10rpx;
  1269. }
  1270. }
  1271. }
  1272. }
  1273. }
  1274. /* 计划标题 */
  1275. .inspect_name{
  1276. .popup-content{
  1277. width: 750rpx;
  1278. height: 350rpx;
  1279. background: #FFFFFF;
  1280. border-radius: 10rpx 10rpx 0px 0px;
  1281. padding :0 50rpx;
  1282. box-sizing :border-box;
  1283. overflow :hidden;
  1284. .inspect_name_t{
  1285. margin-top:66rpx;
  1286. padding: 0 30rpx;
  1287. box-sizing: border-box;
  1288. >input{
  1289. width:100%;
  1290. height:80rpx;
  1291. border: 2rpx solid #E0E0E0;
  1292. color:#A2A2A2;
  1293. font-size:28rpx;
  1294. line-height 80rpx
  1295. border-radius:10rpx;
  1296. padding: 0 20rpx;
  1297. box-sizing: border-box;
  1298. }
  1299. }
  1300. .inspect_name_b{
  1301. margin-top :64rpx;
  1302. display: flex;
  1303. justify-content: center;
  1304. >text:nth-of-type(1){
  1305. width: 160rpx;
  1306. height: 60rpx;
  1307. border-radius: 40rpx;
  1308. font-size: 30rpx;
  1309. font-family: PingFang SC;
  1310. font-weight: 500;
  1311. color: #333333;
  1312. line-height: 60rpx;
  1313. text-align :center;
  1314. margin-right: 120rpx;
  1315. border: 2rpx solid #e0e0e0;
  1316. }
  1317. >text:nth-of-type(2){
  1318. width: 160rpx;
  1319. height: 60rpx;
  1320. background: linear-gradient(-35deg, #309CFF, #0183FA);
  1321. border-radius: 40rpx;
  1322. font-size: 30rpx;
  1323. font-family: PingFang SC;
  1324. font-weight: 500;
  1325. color: #FFFFFF;
  1326. line-height: 60rpx;
  1327. text-align :center;
  1328. }
  1329. }
  1330. }
  1331. }
  1332. .bottom_btn{
  1333. position: fixed;
  1334. bottom: 26rpx;
  1335. left: 30rpx;
  1336. font-size: 30rpx;
  1337. font-family: PingFang SC-Medium, PingFang SC;
  1338. font-weight: 400;
  1339. color: #FFFFFF;
  1340. line-height: 90rpx;
  1341. width: 690rpx;
  1342. height: 90rpx;
  1343. background: #0183FA;
  1344. border-radius: 20rpx;
  1345. text-align: center;
  1346. }
  1347. }
  1348. </style>