come.vue 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663
  1. <template>
  2. <view class="yybox">
  3. <nav-bar navtit="来访预约"></nav-bar>
  4. <view class="yydet">
  5. <!-- 顶部选填情况 -->
  6. <view class="flex0">
  7. <step-bar :steps="barsteps" :datainfo="datainfo" :fixeda="fixedflag" ></step-bar>
  8. </view>
  9. <view class="ytbox">
  10. <uni-forms ref="form" class="ytforms" :rules="rules" :modelValue="datainfo">
  11. <view v-for="(ite,idx) in steps" :key="idx" @click="getInFn(ite.val)">
  12. <view class="ytsbox">
  13. <view class="yttit">{{ite.tit}}</view>
  14. <block v-if="ite.val==0" >
  15. <!-- 日历 :configWeek="configWeek" :configHoliday="configHoliday" :firstDayOfWeek="firstDayOfWeek" :signList="signList" @monthChange="monthChange" @getIsSelDayFn="getIsSelDayFn" @shrinkClick="shrinkClick"-->
  16. <lunc-calendar ref="calendar" :configWeek="configWeek" :showLunar="false" :showMonthBg="false" :showShrink="true"
  17. @dayChange="dayChange" weekType="" >
  18. </lunc-calendar>
  19. <view class="ytime">
  20. <view class="ytimea">
  21. <view class="ytimel">选择时间</view>
  22. <view class="lread" @click="getTimeFn(1)">
  23. <view class="lreadl">
  24. <image :src="choseimg" v-if="timeType==1"></image>
  25. <image :src="nchoseimg" v-else></image>
  26. </view>
  27. <view class="tit">上午</text></view>
  28. </view>
  29. <view class="lread" @click="getTimeFn(2)">
  30. <view class="lreadl">
  31. <image :src="choseimg" v-if="timeType==2"></image>
  32. <image :src="nchoseimg" v-else></image>
  33. </view>
  34. <view class="tit">下午</text></view>
  35. </view>
  36. </view>
  37. <view class="ytimeb">
  38. <view class="list" :class="[ite.reservatConfigStatus=='Y'?'box3':'box1',timeid==ite.reservatConfigTimeId?'box2':'']" v-for="(ite,idx) in timeList" :key="idx" @click="getChose(ite)">
  39. <view class="tit">{{typeFn(ite.reservatConfigTimeBegin)}}-{{typeFn(ite.reservatConfigTimeEnd)}}</view>
  40. <!-- <view class="txt">{{ite.reservatConfigStatus=='Y'?'可预约':'已约满'}}</view> -->
  41. </view>
  42. </view>
  43. </view>
  44. <!-- <view class="ytime">
  45. <view class="ytimel">选择时间</view>
  46. <view class="ytst flext">
  47. <image :src="tipimg"></image>工作日上午
  48. <block v-if="amBegin">{{amBegin}}-{{amEnd}} </block>
  49. <block v-else>暂无预约时间</block>
  50. ; 下午
  51. <block v-if="pmBegin">{{pmBegin}}-{{pmEnd}}</block>
  52. <block v-else>暂无预约时间</block>
  53. </view>
  54. <view class="flexc ytimea">
  55. <view class="timebtn">
  56. <picker range-key='dictLabel' :disabled="disabled" :value="timeidx" :range="timerange" @change="bindTimeChangea">
  57. <view class="flex1 " :class="timetype?'co16 fw f16':'coa f14'">{{timetype||'请选择'}}</view>
  58. </picker>
  59. </view>
  60. <image :src="rowline" class="rowline"></image>
  61. <view class="timebtn">
  62. <picker mode ="time" :start="start" :end="endtime?endtime:end" :value="starttime" @change="bindTimeChangeb">
  63. <view class="flex1 " :class="starttime?'co16 fw f16':'coa f14'">{{starttime||'请选择时间'}}</view>
  64. </picker>
  65. </view>
  66. <image :src="rowline" class="rowline"></image>
  67. <view class="timebtn">
  68. <picker mode ="time" :start="starttime?starttime:start" :end="end" :value="endtime" @change="bindTimeChangec">
  69. <view class="flex1" :class="endtime?'co16 fw f16':'coa f14'">{{endtime||'请选择时间 '}}</view>
  70. </picker>
  71. </view>
  72. </view>
  73. </view> -->
  74. </block>
  75. <view v-if="ite.val==1" class="pt5">
  76. <uni-forms-item label="人数" required name="visitNum">
  77. <!-- <view class=" ytchose">
  78. <view class="flexc">
  79. <image :src="downimg" class="numbtn" @click="_calcValue('minus')"></image>
  80. <input type="number" v-model="inputValue" class="numinp" />
  81. <image :src="upimg" class="numbtn" @click="_calcValue('plus')"></image>
  82. </view>
  83. </view> -->
  84. <uni-easyinput :inputBorder="false" type="number" v-model="datainfo.visitNum" placeholder="请输入人数">
  85. </uni-easyinput>
  86. </uni-forms-item>
  87. <uni-forms-item label="姓名" required name="visitName">
  88. <uni-easyinput :inputBorder="false" v-model="datainfo.visitName" placeholder="请输入姓名">
  89. </uni-easyinput>
  90. </uni-forms-item>
  91. <uni-forms-item label="手机号码" required name="visitPhone">
  92. <uni-easyinput :inputBorder="false" type="number" v-model="datainfo.visitPhone" placeholder="请输入手机号码">
  93. </uni-easyinput>
  94. </uni-forms-item>
  95. <uni-forms-item label="来访地点" required name="appointmentSite">
  96. <!-- jluly -->
  97. <view class="flexc flex1">
  98. <picker class="pickbox" range-key='dictLabel' :disabled="disabled" :value="adridx" :range="adrlist" @change="bindTimeChangea">
  99. <view class="flex1 " :class="adrtype?'co16 fw5 f14':'cod f14'">{{adrtype||'请选择'}}</view>
  100. </picker>
  101. </view>
  102. </uni-forms-item>
  103. <uni-forms-item label="来访事由" required name="visitReason">
  104. <uni-easyinput :inputBorder="false" v-model="datainfo.visitReason" placeholder="请输入来访事由">
  105. </uni-easyinput>
  106. </uni-forms-item>
  107. <!-- <uni-forms-item label="是否接待" required name="visitName" v-if="yktypes==1">
  108. <view class="flexc ytchose">
  109. <view class="lread" @click="getisReceptionFn">
  110. <view class="lreadl">
  111. <image :src="choseimg" v-if="isReception=='Y'"></image>
  112. <image :src="nchoseimg" v-else></image>
  113. </view>
  114. <view class="tit">是</text></view>
  115. </view>
  116. <view class="lread" @click="isReception='N'">
  117. <view class="lreadl">
  118. <image :src="choseimg" v-if="isReception=='N'"></image>
  119. <image :src="nchoseimg" v-else></image>
  120. </view>
  121. <view class="tit">否</text></view>
  122. </view>
  123. </view>
  124. </uni-forms-item> -->
  125. <uni-forms-item label="补充事由" name="visitRemark">
  126. <textarea placeholder="可补充填写" v-model="datainfo.visitRemark" placeholder-style="color:#aaa;" :auto-height="autoHeight" ></textarea>
  127. </uni-forms-item>
  128. </view>
  129. <view class="pt12 pb18" v-if="ite.val==2">
  130. <view class="facea flexccc" @click="getFaceFn">
  131. <image :src="faceimg"></image>
  132. <view>点击进行面容认证</view>
  133. </view>
  134. <view class="facetip">面容认证仅能由<text>林涵宇</text>本人完成</view>
  135. <view class="flexcc">
  136. <view class="flexccc facetips">
  137. <image :src="ftipa"></image>
  138. <view>避免遮挡</view>
  139. </view>
  140. <view class="flexccc facetips">
  141. <image :src="ftipb"></image>
  142. <view>光线充足</view>
  143. </view>
  144. <view class="flexccc facetips">
  145. <image :src="ftipc"></image>
  146. <view>正对手机</view>
  147. </view>
  148. </view>
  149. </view>
  150. </view>
  151. </view>
  152. </uni-forms>
  153. <view class="ybtn flexcc" @click="getSubmit">确认提交</view>
  154. </view>
  155. </view>
  156. </view>
  157. </template>
  158. <script>
  159. import navBar from "@/components/toptab/navbar.vue"
  160. import stepBar from "@/components/order/stepbar.vue"
  161. import luncCalendar from "@/components/lunc-calendar/lunc-calendar.vue"
  162. import {getDictionaryFn} from "@/api/mine/register.js"
  163. import {getReservatTime,getReservatAdd,getConfigList} from "@/api/mine/order.js"
  164. export default {
  165. components:{stepBar,luncCalendar,navBar},
  166. data(){
  167. return{
  168. tipimg:require('@/static/images/order/come/tip.png'),
  169. rowline:require('@/static/images/order/come/rowline.png'),
  170. faceimg:require('@/static/images/order/come/faceimg.png'),
  171. ftipa:require('@/static/images/order/come/ftipa.png'),
  172. ftipb:require('@/static/images/order/come/ftipb.png'),
  173. ftipc:require('@/static/images/order/come/ftipc.png'),
  174. choseimg:require("@/static/images/order/comes/chose.png"),
  175. nchoseimg:require("@/static/images/order/comes/nchosec.png"),
  176. downimg:require("@/static/images/order/comes/down.png"),
  177. upimg:require("@/static/images/order/comes/add.png"),
  178. adrlist:[],
  179. adrtype:'',
  180. adridx:-1,
  181. amList:[],
  182. pmList:[],
  183. timeType:1,//1: AM 2: PM",
  184. timeList:[],//时间段
  185. timeid:'',
  186. //status: 填写状态 0:未填 1:在填 2:填完 {tit:'面容认证',status:0,val:2}
  187. barsteps:[{tit:'信息填写',status:1,val:0},{tit:'等待审核',status:0,val:1},{tit:'审核成功',status:0,val:2},{tit:'已完成',status:0,val:3}],
  188. steps:[{tit:'预约日期',status:1,val:0},{tit:'信息填写',status:0,val:1}],
  189. fixedflag:true,
  190. rules: {
  191. // visitPhone: {rules: [{required: true,errorMessage: '请输入联系电话'},{pattern:"^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\\d{8}$",errorMessage: '请输入正确的联系方式'}]},
  192. },
  193. autoHeight:true,
  194. disabled:false,
  195. intype:0,
  196. datainfo:{},
  197. inputValue:1,
  198. step:1,
  199. min:1,
  200. signList: [],
  201. configWeek:[],
  202. configHoliday:'Y',
  203. firstDayOfWeek:'sunday',
  204. dayflag:false,
  205. month:'',
  206. year:'',
  207. kaTime:'',
  208. changetime:'',//改变的日期
  209. timeday:'',//选择的日期
  210. visitDate:'',
  211. id:'',
  212. jdryflag:true,//当前时间段是否能接待
  213. }
  214. },
  215. watch:{
  216. // intype(val){
  217. // var data=this.datainfo;
  218. // if(val!=0){
  219. // if(data.visitDate&&data.visitTime) this.steps[0].status=2;
  220. // else if(!data.visitDate||!data.visitTime) this.steps[0].status=0;
  221. // }
  222. // if(val!=1){
  223. // if(this.yktypes==1){
  224. // if(this.inputValue&&data.visitPhone&&data.visitName&&data.visitUnitName) this.steps[1].status=2;
  225. // else if(!this.inputValue||!data.visitPhone||!data.visitName||!data.visitUnitName) this.steps[1].status=0;
  226. // }else{
  227. // if(this.inputValue&&data.visitPhone&&data.visitName) this.steps[1].status=2;
  228. // else if(!this.inputValue||!data.visitPhone) this.steps[1].status=0;
  229. // }
  230. // }
  231. // }
  232. },
  233. onLoad: function(e) {
  234. // this.id=e.id;
  235. // this.id='881659';
  236. this.time();
  237. this.init()
  238. this.getReservatTime();
  239. // this.getConfigList()
  240. },
  241. methods:{
  242. bindTimeChangea(e){
  243. var val=e.detail.value;
  244. this.adrtype=this.adrlist[val].dictLabel
  245. this.datainfo.appointmentSite=this.adrlist[val].dictValue
  246. },
  247. getFaceFn(){
  248. this.$tab.navigateTo('/pages/order/face')
  249. },
  250. init(){
  251. // 记录来源
  252. getDictionaryFn('jluly').then(res=>{
  253. if(res.code==200){
  254. this.adrlist = res.data.map(v => {
  255. return {
  256. dictLabel: v.dictLabel,
  257. dictValue: Number(v.dictValue)
  258. }
  259. })
  260. }
  261. })
  262. },
  263. getReservatTime(itime){
  264. getReservatTime().then(res=>{
  265. if(res.code==200){
  266. var data=res.rows;
  267. var amList=[],pmList=[]
  268. data.forEach(ite=>{
  269. if(ite.reservatConfigType==1){
  270. amList.push(ite)
  271. }else if(ite.reservatConfigType==2){
  272. pmList.push(ite)
  273. }
  274. })
  275. if(amList.length){
  276. this.timeList=amList;
  277. this.timeType=1
  278. }else{
  279. this.timeList=pmList;
  280. this.timeType=2
  281. }
  282. this.amList=amList
  283. this.pmList=pmList
  284. }
  285. })
  286. },
  287. time() {
  288. var date = new Date();
  289. var y = date.getFullYear();
  290. var m = date.getMonth() + 1;
  291. var d = date.getDate();
  292. var h = date.getHours();
  293. var min = date.getMinutes();
  294. var s = date.getSeconds();
  295. var week = date.getDay(); //获取当前星期X(0-6,0代表星期天)
  296. var weeks = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"];
  297. var yearStr = y + '-' + (m < 10 ? ('0' + m) : m) + '-' + (d < 10 ? ('0' + d) : d)
  298. var timeStr = (h < 10 ? ('0' + h) : h) + ':' + (min < 10 ? ('0' + min) : min) + ':' + (s < 10 ? (
  299. '0' + s) : s);
  300. this.kaTime = yearStr;
  301. this.datainfo.visitDate=yearStr;
  302. this.year=y;
  303. this.month=m;
  304. },
  305. typeFn(data){
  306. return data?data.substring(0,5):''
  307. },
  308. getChose(ite){
  309. if(ite.reservatConfigStatus=='Y'){
  310. this.timeid=ite.reservatConfigTimeId;
  311. this.datainfo.visitTime=ite.reservatConfigTimeBegin+'-'+ite.reservatConfigTimeEnd;
  312. this.datainfo.reservatConfigTimeId=ite.reservatConfigTimeId;
  313. // 判断当前时间段是否有接待员
  314. // if(ite.receptionPersonnelType=='N'){
  315. // this.jdryflag=true
  316. // }else{
  317. // this.jdryflag=false
  318. // this.isReception='N'
  319. // }
  320. }
  321. },
  322. getTimeFn(type){
  323. if(type==1){
  324. this.timeType=1;
  325. this.timeList=this.amList;
  326. }else{
  327. this.timeType=2;
  328. this.timeList=this.pmList;
  329. }
  330. },
  331. clearboth(){
  332. // var time=this.datainfo.visitDate
  333. this.datainfo={};
  334. this.adrtype='';
  335. // this.getReservatTime(this.changetime)
  336. },
  337. getSubmit(){
  338. var that=this;
  339. if(!this.datainfo.visitDate){
  340. this.$toast('请选择预约日期')
  341. return
  342. }
  343. if(!this.datainfo.visitTime){
  344. this.$toast('请选择时间')
  345. return
  346. }
  347. var str='预约成功'
  348. // if(this.inputValue==0){
  349. // this.$toast('请输入参观人数')
  350. // return
  351. // }
  352. // if(this.inputValue<0){
  353. // this.$toast('请输入正确的参观人数')
  354. // return
  355. // }
  356. if(!this.datainfo.visitNum){
  357. this.$toast('请输入人数')
  358. return
  359. }
  360. if(this.datainfo.visitNum<1){
  361. this.$toast('请输入正确的人数')
  362. return
  363. }
  364. if(!this.datainfo.visitName){
  365. this.$toast('请输入姓名')
  366. return
  367. }
  368. var phone=this.datainfo.visitPhone
  369. if(!phone){
  370. this.$toast('请输入手机号码')
  371. return
  372. }
  373. let regphone = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/
  374. if (phone && !regphone.test(phone)) {
  375. that.$toast("请输入正确的手机号")
  376. return
  377. }
  378. if(!this.adrtype){
  379. this.$toast('请选择来访地点')
  380. return
  381. }
  382. if(!this.datainfo.visitReason){
  383. this.$toast('请输入来访事由')
  384. return
  385. }
  386. // that.clearboth()
  387. // console.log(this.datainfo)
  388. // return
  389. this.$refs.form.validate().then(res => {
  390. var params={};
  391. params=this.datainfo
  392. getReservatAdd(params).then(res=>{
  393. if(res.code==200){
  394. this.$toast(str)
  395. setTimeout(function(){
  396. that.clearboth()
  397. },1500)
  398. }else{
  399. this.$toast(res.msg)
  400. }
  401. })
  402. })
  403. },
  404. dayChange(e){
  405. console.log(e,1)
  406. this.datainfo.visitDate=e.date;
  407. },
  408. getIsSelDayFn(e){
  409. // this.datainfo.visitDate=e.date;
  410. },
  411. getInFn(idx){
  412. // this.intype=idx;
  413. // this.steps[idx].status=1
  414. },
  415. // getConfigList(){
  416. // getConfigList().then(res=>{
  417. // if(res.code==200){
  418. // if(res.rows&&res.rows.length){
  419. // var week=res.rows[0].reservatConfigWeek;
  420. // var weeka=week.split(',');
  421. // var weekarr=[]
  422. // weeka.forEach(ite=>{
  423. // weekarr.push(Number(ite))
  424. // })
  425. // this.configWeek=weekarr;
  426. // this.configHoliday=res.rows[0].reservatConfigHoliday;
  427. // }
  428. // }
  429. // })
  430. // },
  431. // getisReceptionFn(){
  432. // if(this.jdryflag){
  433. // this.isReception='Y'
  434. // }else{
  435. // this.$toast('当前时间段暂无预约人员')
  436. // }
  437. // },
  438. // _calcValue(type) {
  439. // // if (this.disabled) {
  440. // // return;
  441. // // }
  442. // const scale = this._getDecimalScale();
  443. // let value = this.inputValue * scale;
  444. // let step = this.step * scale;
  445. // if (type === "minus") {
  446. // value -= step;
  447. // if (value < (this.min * scale)) {
  448. // return;
  449. // }
  450. // if (value > (this.max * scale)) {
  451. // value = this.max * scale
  452. // }
  453. // }
  454. // if (type === "plus") {
  455. // value += step;
  456. // if (value > (this.max * scale)) {
  457. // return;
  458. // }
  459. // if (value < (this.min * scale)) {
  460. // value = this.min * scale
  461. // }
  462. // }
  463. // this.inputValue = (value / scale).toFixed(String(scale).length - 1);
  464. // },
  465. // _getDecimalScale() {
  466. // let scale = 1;
  467. // // 浮点型
  468. // if (~~this.step !== this.step) {
  469. // scale = Math.pow(10, String(this.step).split(".")[1].length);
  470. // }
  471. // return scale;
  472. // },
  473. // dayChange(e){
  474. // if(e.daySign&&e.daySign.length){
  475. // var daySign=e.daySign[0];
  476. // this.amList=daySign.amList||[];
  477. // this.pmList=daySign.pmList||[];
  478. // if(this.reservatConfigType==1){
  479. // this.timeList=this.amList;
  480. // }else if(this.reservatConfigType==2){
  481. // this.timeList=this.pmList;
  482. // }
  483. // this.timeid='';
  484. // this.datainfo.visitDate=daySign.date;
  485. // this.datainfo.visitTime='';
  486. // }
  487. // },
  488. // monthChange(e){
  489. // var y=e.year;
  490. // var m=e.month;
  491. // if(y==this.year&&m==this.month){
  492. // this.getReservatTime()
  493. // this.changetime='';
  494. // }else{
  495. // var time=y + '-' + m + '-' + '01'
  496. // this.changetime=time
  497. // this.getReservatTime(time)
  498. // }
  499. // },
  500. // 选中的日期
  501. // getIsSelDayFn(e){
  502. // if(e.sign&&e.sign.length&&this.timeday!=e.date){
  503. // this.timeday=e.date;
  504. // if(this.configWeek.indexOf(e.week)!=-1 || e.isHoliday&&this.configHoliday=='N'){
  505. // this.dayflag=false;
  506. // }else{
  507. // if(e.sign&&e.sign.length){
  508. // var sign=JSON.parse(JSON.stringify(e.sign))
  509. // var signes=JSON.parse(JSON.stringify(sign[0]));
  510. // var amList=JSON.parse(JSON.stringify(signes.amList))||[];
  511. // var pmList=JSON.parse(JSON.stringify(signes.pmList))||[];
  512. // this.jdryflag=true;
  513. // if(this.timeType==1){
  514. // this.timeList=amList;
  515. // }else{
  516. // this.timeList=pmList;
  517. // }
  518. // this.amList=amList
  519. // this.pmList=pmList
  520. // this.timeid='';
  521. // var y=e.year;
  522. // var m=e.month;
  523. // var d=e.day;
  524. // this.datainfo.visitDate=y + '-' + (m < 10 ? ('0' + m) : m) + '-' + (d < 10 ? ('0' + d) : d);
  525. // this.datainfo.visitTime='';
  526. // if(signes.title=='可预约'){
  527. // this.dayflag=true;
  528. // }else{
  529. // this.dayflag=false;
  530. // }
  531. // }
  532. // }
  533. // }
  534. // },
  535. // shrinkClick(e){
  536. // console.log(e,3)
  537. // },
  538. },
  539. }
  540. </script>
  541. <style lang="scss" scoped>
  542. .ytbox /deep/ .uni-forms .uni-forms-item{padding: 20rpx 16rpx 20rpx;border-bottom: 2rpx solid #E6E6E6;margin-bottom: 0;}
  543. .ytbox /deep/ .uni-forms-item__label{flex: 0 0 auto;width: 144rpx !important;font-size: 28rpx;font-weight: bold;position: relative;color: #343434;text-align-last: justify;}
  544. .ytbox /deep/ .uni-forms-item__label text{flex: 1;}
  545. .ytbox /deep/ .uni-forms-item__label .is-required{position: absolute;right: 0;color: #F10C31;margin-top: 16rpx;}
  546. .ytbox /deep/ uni-textarea{flex: 1;width: auto;text-align: right;}
  547. .ytbox /deep/ .uni-textarea-placeholder{font-size: 28rpx;color: #DDDDDD !important;}
  548. .ytbox /deep/ .uni-easyinput__placeholder-class{font-size: 28rpx;color: #DDDDDD;}
  549. .ytbox /deep/ .uni-forms-item__content{display: flex;align-items: center;flex-direction: row;}
  550. .ytbox /deep/ .uni-easyinput{flex: 1;text-align: right;}
  551. .ytsbox /deep/ .uni-forms-item:last-child{border-bottom: none;}
  552. .ytbox /deep/ .uni-easyinput__content-input{font-size: 28rpx;}
  553. .ytbox /deep/ .uni-forms-item__error{margin-top:20rpx;left: auto;right: 0;}
  554. .ytbox{width: 684rpx;margin: 0 auto;padding-bottom: 44rpx;padding-top: 24rpx;position: relative;flex: 1;overflow: auto;}
  555. .ytforms{
  556. .yttit{font-size: 28rpx;font-weight: bold;margin-bottom: 10rpx;
  557. color: #161616;display: flex;align-items: center;padding: 0rpx 26rpx;box-sizing: border-box;position: relative;
  558. &::before{content: '';width: 6rpx;height: 34rpx;background: $com-cd3;border-radius: 4rpx;position: absolute;top: 50%;transform: translateY(-50%);left: 0rpx;}
  559. }
  560. .ytsbox{background-color: #ffffff;padding: 32rpx 28rpx 0;border-radius: 14rpx;margin-bottom: 24rpx;
  561. &.boxa{padding: 24rpx 48rpx;}
  562. // &.boxb{padding-bottom:10rpx;}
  563. .ytime{padding:60rpx 0 0;
  564. .ytimea{display: flex;align-items: center;margin-bottom: 32rpx;
  565. .ytimel{font-size: 30rpx;font-weight: bold;color: #161616;flex:1;}
  566. }
  567. .ytimeb{
  568. display: flex;align-items: center;flex-wrap: wrap;
  569. .list{
  570. width: 196rpx;
  571. height: 120rpx;
  572. display: flex;align-items: center;justify-content: center;flex-direction: column;
  573. border-radius:6rpx;margin-bottom: 30rpx;margin-right: 18rpx;box-sizing: border-box;
  574. &:nth-of-type(3n){margin-right: 0;}
  575. &.box1{background: #F3F3F3;
  576. view{color: #AAAAAA;}
  577. }
  578. &.box2{border: 1px solid $com-cd3 !important;
  579. .tit{color: $com-cd3 !important;}
  580. }
  581. &.box3{border: 1px solid #DADADA;
  582. }
  583. view{font-size: 28rpx;font-weight: 500;color: #161616;font-family: PingFang SC;}
  584. .tit{margin-bottom: 6rpx;}
  585. }
  586. }
  587. }
  588. // .ytime{padding:20rpx 0 46rpx;
  589. // .ytimel{font-size: 28rpx;font-weight: bold;color: #161616;flex:1;position: relative;padding-left: 26rpx;margin-bottom: 32rpx;
  590. // &::before{content: '';width: 6rpx;height: 34rpx;background: $com-cd3;border-radius: 4rpx;position: absolute;top: 50%;transform: translateY(-50%);left: 0rpx;}
  591. // }
  592. // .ytst{font-size: 26rpx;font-weight: 500;color: #666666;margin-bottom: 28rpx;
  593. // image{width: 24rpx;height: 24rpx;margin-right: 8rpx;flex: 0 0 auto;margin-top: 6rpx;}
  594. // }
  595. // .ytimea{padding: 10rpx 0 0;
  596. // .rowline{width: 64rpx;height: 20rpx;margin: 0 10rpx;flex: 0 0 auto;}
  597. // .timebtn{flex: 1;height: 70rpx;border: 2rpx solid #0391FD;
  598. // border-radius: 14rpx;text-align: center;line-height: 70rpx;box-sizing: border-box;}
  599. // }
  600. // }
  601. .ytchose{flex: 1; display: flex;align-items: center;justify-content: flex-end;
  602. .numbtn{width: 32rpx;height: 32rpx;flex: 0 0 auto;}
  603. .numinp{margin: 0 28rpx;width: 124rpx;height: 56rpx;background: #FFFFFF;border: 2rpx solid #0391FD;border-radius: 2rpx;text-align: center;box-sizing: border-box;}
  604. }
  605. }
  606. .lread{
  607. display: flex;align-items: flex-start;justify-content: center;margin-left: 40rpx;
  608. .lreadl{padding-top: 4rpx;
  609. image{width: 28rpx;height: 28rpx;margin-right: 26rpx;}
  610. }
  611. .tit{font-size: 28rpx;font-weight: 500;color: #666666;
  612. }
  613. }
  614. }
  615. // 按钮
  616. .ybtn{width: 684rpx;height: 90rpx;background: $com-cd3;border-radius: 14rpx;margin: 56rpx auto 0;font-size: 28rpx;font-weight: 500;color: #FFFFFF;
  617. &.btn1{background-color: #9a9c9e;}
  618. }
  619. .pickbox{flex: 1;text-align: right;font-weight: 500;font-size: 28rpx;color: #161616;}
  620. // 面容
  621. .facea{width: 100%;height: 174rpx;background: #FFFFFF;border-radius: 14rpx;border: 2rpx dashed #DADADA;margin-bottom: 46rpx;
  622. image{width: 64rpx;height: 64rpx;margin-bottom: 14rpx;}
  623. view{font-weight: 500;color: #AAAAAA;font-size: 26rpx;}
  624. }
  625. .facetip{text-align: center;font-weight: 500;font-size: 22rpx;color: #666666;margin-bottom: 50rpx;
  626. text{color: $com-cd3;font-weight: 500;padding: 0 4rpx;}
  627. }
  628. .facetips{width: 188rpx;
  629. image{width: 98rpx;height: 98rpx;margin-bottom: 20rpx;}
  630. view{font-weight: 500;font-size: 22rpx;color: #828CA7;}
  631. }
  632. </style>