list.vue 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764
  1. <template>
  2. <view class="container">
  3. <!--header-->
  4. <!-- #ifdef MP-WEIXIN || APP-PLUS -->
  5. <view class="tui-header-box">
  6. <view :style="{ height: height + 'px' }">
  7. <view class="tui-header"
  8. :style="{paddingTop: top + 'px' }">
  9. <view class="header-title"><text>{{lang.technical}}</text></view>
  10. <tui-tabs style="float: right;" :top="0" :tabs="maplistTabs" :height="88" :width="130"
  11. :currentTab="where.is_markers" :sliderWidth="100" :sliderHeight="40" itemWidth="50%" bottom="50%" color="#888"
  12. selectedColor="#ffffff" :sliderBgColor="pagestyleconfig.appstylecolor" @change="maplistchange">
  13. </tui-tabs>
  14. </view>
  15. </view>
  16. </view>
  17. <!-- #endif -->
  18. <!--header-->
  19. <view class="dataList">
  20. <view class="search">
  21. <view class="tui-rolling-search">
  22. <tui-icon @tap="onChangePosition" name="position-fill" color="#333" :size="30" unit="rpx">
  23. </tui-icon>
  24. <view @tap="onChangePosition" class="tui-city-name">{{cityName}}</view>
  25. <tui-icon @tap="onChangePosition" name="turningdown" :size="32" unit="rpx"></tui-icon>
  26. <view class="tui-city-line">|</view>
  27. <tui-icon name="search-2" :size="32" unit="rpx"></tui-icon>
  28. <form @submit="searchSubmit">
  29. <input class="searchinput" placeholder="搜索" placeholder-class="placeholder"
  30. @confirm="searchSubmit" confirm-type="search" name="search" :value="where.keyword">
  31. </form>
  32. </view>
  33. </view>
  34. <scroll-view class="navscroll" scroll-x="true">
  35. <view class="nav acea-row row-middle">
  36. <block v-for="(item, index) in category" :key="index">
  37. <view :class="'item ' + (cid==item.id ? 'font-color':'')" @tap="set_where" :data-cid="item.id">
  38. <view>{{item.title}}</view>
  39. </view>
  40. </block>
  41. </view>
  42. </scroll-view>
  43. <view v-if="where.is_markers!=1" class="paishu">
  44. <tui-button type="danger" :plain="where.orderby!=''" width="152rpx" height="50rpx" :size="26"
  45. shape="circle" @click="set_orderby('')">综合
  46. </tui-button>
  47. <tui-button type="danger" :plain="where.orderby!='service_times'" width="152rpx" height="50rpx"
  48. :size="26" shape="circle" @click="set_orderby('service_times')">接单量
  49. </tui-button>
  50. <tui-button type="danger" :plain="where.orderby!='comment'" width="152rpx" height="50rpx" :size="26"
  51. shape="circle" @click="set_orderby('comment')">好评多
  52. </tui-button>
  53. <tui-button type="danger" :plain="where.orderby!='distance'" width="152rpx" height="50rpx" :size="26"
  54. shape="circle" @click="set_orderby('distance')">距离
  55. </tui-button>
  56. </view>
  57. <!-- 地图找人 -->
  58. <view v-if="where.is_markers==1" class="mapbox">
  59. <xmmap :winHeight="winHeight" :latitude="where.latitude" :longitude="where.longitude"
  60. :scale="14" :markers="markers" @callouttap="callouttap"></xmmap>
  61. </view>
  62. <!-- 地图找人end -->
  63. <view v-else class="list acea-row row-between-wrapper">
  64. <block v-for="(item, index) in dataList" :key="index">
  65. <view @tap="details" :data-id="item.id" :data-uuid="item.uuid" :data-isbusiness="item.is_business"
  66. class="item">
  67. <view :class="'pictrue on'">
  68. <image :src="item.touxiang || '/static/images/my/mine_def_touxiang_3x.png'"></image>
  69. </view>
  70. <view class="text">
  71. <view class="nametitle">{{item.title}}</view>
  72. <view class="indicators">
  73. <tui-icon name="star-fill" :size="16" color="#ff1e02"></tui-icon>
  74. <text class="indctext" style="color: #ff1e02;">5.0</text>
  75. <text class="indctext">已服务: {{item.service_times}}单</text>
  76. </view>
  77. <view class="belong">
  78. <tui-icon name="shop" :size="16" color="#909090"></tui-icon>
  79. <text class="indctext"
  80. style="width: 100rpx;overflow-x: hidden;">{{item.storename}}</text>
  81. <tui-icon name="message" :size="16" color="#909090"></tui-icon>
  82. <text class="indctext"> {{item.comment}}</text>
  83. <tui-icon name="like" :size="16" color="#909090"></tui-icon>
  84. <text class="indctext"> {{item.viewed}}</text>
  85. </view>
  86. </view>
  87. <view class="buttonbox">
  88. <view class="distance">
  89. <tui-icon name="position-fill" :size="16"
  90. :color="pagestyleconfig.appstylecolor"></tui-icon><text v-if="item.distance"
  91. class="kmclass">{{item.distance}}km</text>
  92. </view>
  93. <button v-if="item.is_business==1" :style="'background:'+ pagestyleconfig.appstylecolor"
  94. class="itembutton">立即预约</button>
  95. <button v-else class="restitembutton">休息中</button>
  96. </view>
  97. </view>
  98. </block>
  99. <view class="loadingicon acea-row row-center-wrapper" v-if="dataList.length > 0">
  100. <text class="loading iconfont icon-jiazai" :hidden="loading==false"></text>
  101. </view>
  102. </view>
  103. </view>
  104. <view class="noCommodity" v-if="dataList.length==0 && where.page > 1">
  105. <view class="pictrue">
  106. </view>
  107. </view>
  108. <tui-modal :show="markersInfoShow" @cancel="hidemarkersInfo" padding="0rpx 0rpx" radius="60rpx" :custom="true" fadeIn>
  109. <image src="/static/images/mall/icon_popup_closed.png" class="tui-close__img"
  110. @tap.stop="hidemarkersInfo">
  111. </image>
  112. <view @tap="details" :data-id="markersInfo.technical_id" :data-uuid="markersInfo.uuid" :data-isbusiness="markersInfo.is_business" class="tui-modal-custom">
  113. <image mode="widthFix" :src="markersInfo.touxiang" class="touxiang-image"/>
  114. <view class="sustombody">
  115. <view class="tui-prompt-title"><view class="text">{{markersInfo.title}}</view>
  116. <view class="infodistance">
  117. <tui-icon name="position-fill" :size="16"
  118. :color="pagestyleconfig.appstylecolor"></tui-icon><text v-if="markersInfo.distance"
  119. class="kmclass">{{markersInfo.distance}}km</text>
  120. </view>
  121. </view>
  122. <view class="tui-modal__btn">
  123. <view class="tui-box">
  124. <button class="tui-btn-danger">立即预约</button>
  125. </view>
  126. </view>
  127. </view>
  128. </view>
  129. </tui-modal>
  130. <tui-tabbar :current="current">
  131. </tui-tabbar>
  132. </view>
  133. </template>
  134. <script>
  135. import xmmap from '@/components/xmmap/xmmap.vue';
  136. var app = getApp();
  137. export default {
  138. data() {
  139. return {
  140. maplistTabs: [{
  141. name: "列表"
  142. }, {
  143. name: "地图"
  144. }],
  145. lang: {},
  146. pagestyleconfig: [],
  147. current: '',
  148. category: [],
  149. dataList: [],
  150. winHeight: 0,
  151. height: 64, //header高度
  152. top: 26, //标题图标距离顶部距离
  153. scrollH: 0, //滚动总高度
  154. markers: [],
  155. cityName: '',
  156. navH: "",
  157. goodsid: '',
  158. markersInfoShow: false,
  159. markersInfo:{},
  160. where: {
  161. is_markers: 1,
  162. keyword: '',
  163. priceOrder: '',
  164. salesOrder: '',
  165. orderby: '',
  166. news: 0,
  167. page: 1,
  168. limit: 10,
  169. cid: 0,
  170. latitude: "",
  171. longitude: ""
  172. },
  173. price: 0,
  174. stock: 0,
  175. nows: false,
  176. loadend: false,
  177. loading: false,
  178. bottommenulist: [],
  179. host_product: "",
  180. title: "",
  181. position: "",
  182. cid: ""
  183. };
  184. },
  185. components: {
  186. xmmap
  187. },
  188. props: {},
  189. /**
  190. * 生命周期函数--监听页面加载
  191. */
  192. onLoad: function(options) {
  193. const _this = this;
  194. let obj = {};
  195. uni.setStorageSync('NewMessage', '');
  196. setTimeout(() => {
  197. uni.getSystemInfo({
  198. success: res => {
  199. this.width = obj.left || res.windowWidth;
  200. this.height = obj.top ? obj.top + obj.height + 8 : res.statusBarHeight +
  201. 44;
  202. this.top = obj.top ? obj.top + (obj.height - 32) / 2 : res
  203. .statusBarHeight + 6;
  204. this.scrollH = res.windowWidth;
  205. this.windowWidth = res.windowWidth;
  206. this.winHeight = res.windowHeight - uni.upx2px(204);
  207. }
  208. });
  209. }, 0);
  210. _this.$request.get('Lang.getlang').then(res => {
  211. if (res.errno == 0) {
  212. _this.lang = res.data;
  213. uni.setNavigationBarTitle({
  214. title: _this.lang.technical
  215. });
  216. }
  217. });
  218. _this.$request.post('config', {
  219. mo: 'pagestyle'
  220. }).then(res => {
  221. if (res.errno == 0) {
  222. _this.pagestyleconfig = res.data
  223. if(_this.pagestyleconfig.technicalliststyle==1){
  224. _this.where.is_markers = 1;
  225. }else{
  226. _this.where.is_markers = 0;
  227. }
  228. }
  229. });
  230. this.where.cid = options.cid || ''
  231. this.goodsid = options.goodsid || ''
  232. // #ifdef MP-WEIXIN
  233. this.current = "/" + this.__route__;
  234. // #endif
  235. //#ifdef H5
  236. this.current = this.$route.path;
  237. //#endif
  238. //获取地置位置
  239. _this.sam.getCityPosition().then(res => {
  240. _this.cityName = res.cityName;
  241. });
  242. _this.title = options.title || '';
  243. _this.where.keyword = options.searchValue || '';
  244. this.getPosition();
  245. this.get_cate_list();
  246. },
  247. /**
  248. * 生命周期函数--监听页面显示
  249. */
  250. onShow: function() {},
  251. /**
  252. * 页面相关事件处理函数--监听用户下拉动作
  253. */
  254. onPullDownRefresh: function() {
  255. this.where.page = 1;
  256. this.loadend = false;
  257. this.dataList = [];
  258. this.get_data_list();
  259. uni.stopPullDownRefresh();
  260. },
  261. /**
  262. * 页面上拉触底事件的处理函数
  263. */
  264. onReachBottom: function() {
  265. this.get_data_list();
  266. },
  267. methods: {
  268. //获取定位信息
  269. getPosition() {
  270. const _this = this;
  271. // #ifdef MP-WEIXIN
  272. wx.authorize({
  273. scope: 'scope.userFuzzyLocation',
  274. success: res => {
  275. //console.log(res)
  276. wx.getFuzzyLocation({
  277. type: 'wgs84',
  278. success(res) {
  279. _this.position = res.address;
  280. _this.where.latitude = res.latitude;
  281. _this.where.longitude = res.longitude;
  282. _this.loadend = false;
  283. _this.get_data_list();
  284. }
  285. });
  286. },
  287. fail: res => {
  288. //console.log('失败:', res);
  289. }
  290. });
  291. // #endif
  292. //#ifdef H5 || APP-PLUS
  293. uni.getLocation({
  294. type: 'wgs84',
  295. success: function(lb) {
  296. _this.where.latitude = lb.latitude;
  297. _this.where.longitude = lb.longitude;
  298. _this.get_data_list();
  299. },
  300. })
  301. //#endif
  302. },
  303. details: function(e) {
  304. if (e.currentTarget.dataset.isbusiness == 1) {
  305. if (this.goodsid) {
  306. this.sam.navigateTo('/pages/goodsDetail/goodsDetail?id=' + this.goodsid + '&uuid=' + e
  307. .currentTarget
  308. .dataset.uuid);
  309. } else {
  310. this.sam.navigateTo('/pages/technical/details?id=' + e.currentTarget.dataset.id);
  311. }
  312. }
  313. },
  314. onChangePosition: function(e) {
  315. const _this = this;
  316. uni.chooseLocation({
  317. success(res) {
  318. _this.cityName = res.name;
  319. uni.setStorageSync('cityName', _this.cityName);
  320. _this.position = res.address;
  321. _this.where.latitude = res.latitude;
  322. _this.where.longitude = res.longitude;
  323. _this.loadend = false;
  324. _this.get_data_list(true);
  325. }
  326. });
  327. },
  328. searchSubmit: function(e) {
  329. var that = this;
  330. that.where.keyword = e.detail.value;
  331. that.where.page = 1;
  332. that.loadend = false;
  333. this.get_data_list(true);
  334. },
  335. //点击事件处理
  336. set_orderby: function(e) {
  337. this.where.orderby = e;
  338. this.loadend = false;
  339. this.where.page = 1;
  340. this.get_data_list(true);
  341. },
  342. //点击事件处理
  343. set_where: function(e) {
  344. this.cid = e.currentTarget.dataset.cid;
  345. this.loadend = false;
  346. this.where.page = 1;
  347. this.get_data_list(true);
  348. },
  349. //设置where条件
  350. setWhere: function() {
  351. this.where.salesOrder = 'asc';
  352. if (this.cid) {
  353. this.where.cid = this.cid;
  354. }
  355. },
  356. get_cate_list: function() {
  357. var that = this;
  358. that.$request.get('category.list', {
  359. ptype: 2
  360. }).then(res => {
  361. that.category = res.data;
  362. });
  363. },
  364. //查找
  365. get_data_list: function(isPage) {
  366. var that = this;
  367. this.setWhere();
  368. if (that.loadend) return;
  369. if (that.loading) return;
  370. if (isPage === true) {
  371. that.dataList = [];
  372. that.where.page = 1;
  373. }
  374. that.where.showLoading = true;
  375. //console.log(that.where);
  376. that.$request.post('technical.list', that.where).then(res => {
  377. if (res.errno == 0) {
  378. if(that.where.is_markers==1){
  379. that.markers = res.data.data;
  380. }else{
  381. that.dataList = that.dataList.concat(res.data.data);
  382. that.loadend = that.dataList.length < that.where.limit;
  383. that.where.page = that.where.page + 1
  384. }
  385. that.loading = false;
  386. }
  387. });
  388. },
  389. callouttap(e) {
  390. var _this = this;
  391. _this.markersInfo = _this.markers[e.markerId];
  392. console.log(_this.markersInfo);
  393. _this.markersInfoShow = true;
  394. },
  395. hidemarkersInfo() {
  396. this.markersInfoShow = false;
  397. },
  398. maplistchange: function(e) {
  399. console.log(e.index);
  400. this.where.is_markers = e.index
  401. this.get_data_list(true);
  402. },
  403. }
  404. };
  405. </script>
  406. <style>
  407. page {
  408. font-size: 28rpx;
  409. background-color: #f5f5f5;
  410. color: #333;
  411. }
  412. .container {
  413. padding-bottom: 228rpx;
  414. color: #333;
  415. }
  416. .tui-header-box {
  417. width: 100%;
  418. position: fixed;
  419. left: 0;
  420. top: 0;
  421. z-index: 995;
  422. background-color: #ffffff;
  423. }
  424. .tui-header {
  425. width: 100%;
  426. padding-left: 26rpx;
  427. font-size: 18px;
  428. line-height: 18px;
  429. font-weight: 500;
  430. height: 32px;
  431. display: flex;
  432. align-items: center;
  433. justify-content: left;
  434. }
  435. .header-title {
  436. width: 280rpx;
  437. }
  438. .header-tabs {
  439. border-radius: 60rpx;
  440. }
  441. .dataList .search {
  442. width: 100%;
  443. padding-top: 13rpx;
  444. padding-bottom: 13rpx;
  445. padding-left: 15rpx;
  446. padding-right: 15rpx;
  447. box-sizing: border-box;
  448. align-items: center;
  449. background-color: #f5f5f5;
  450. position: fixed;
  451. display: flex;
  452. /* #ifdef MP-WEIXIN || APP-PLUS */
  453. top: 178rpx;
  454. /* #endif */
  455. /* #ifdef H5 */
  456. top: 0rpx;
  457. /* #endif */
  458. left: 0;
  459. z-index: 99999;
  460. }
  461. .navscroll {
  462. z-index: 99999;
  463. height: 86rpx;
  464. /* #ifdef MP-WEIXIN || APP-PLUS */
  465. top: 268rpx;
  466. /* #endif */
  467. /* #ifdef H5 */
  468. top: 91rpx;
  469. /* #endif */
  470. position: fixed;
  471. display: flex;
  472. white-space: nowrap;
  473. left: 0;
  474. background-color: #fff;
  475. }
  476. .searchinput {
  477. padding-left: 10rpx;
  478. }
  479. .tui-rolling-search {
  480. width: 100%;
  481. height: 68rpx;
  482. border-radius: 35rpx;
  483. padding: 0 40rpx 0 30rpx;
  484. box-sizing: border-box;
  485. background-color: #fff;
  486. display: flex;
  487. align-items: center;
  488. flex-wrap: nowrap;
  489. color: #999;
  490. }
  491. .tui-city-name {
  492. padding-left: 6rpx;
  493. padding-right: 0rpx;
  494. color: #333;
  495. font-size: 24rpx;
  496. line-height: 24rpx;
  497. }
  498. .tui-city-line {
  499. color: #d3d3d3;
  500. padding-left: 16rpx;
  501. padding-right: 20rpx;
  502. font-size: 24rpx;
  503. line-height: 24rpx;
  504. }
  505. .dataList .bg-color {
  506. background-color: #f5f5f5;
  507. }
  508. .dataList .search .location {
  509. color: #333;
  510. font-size: 28rpx;
  511. flex: 1;
  512. display: flex;
  513. margin-top: 22rpx;
  514. line-height: 40rpx;
  515. }
  516. .paishu {
  517. z-index: 2;
  518. width: 100%;
  519. height: 88rpx;
  520. top: 177rpx;
  521. background-color: #fff;
  522. border-top: 1rpx solid #f5f5f5;
  523. border-bottom: 1rpx solid #f5f5f5;
  524. display: flex;
  525. align-items: center;
  526. justify-content: space-between;
  527. padding-top: 12rpx;
  528. padding-left: 18rpx;
  529. padding-right: 18rpx;
  530. padding-bottom: 12rpx;
  531. box-sizing: border-box;
  532. position: fixed;
  533. }
  534. .dataList .nav {
  535. width: 1000rpx;
  536. display: flex;
  537. color: #454545;
  538. font-size: 28rpx;
  539. background-color: #fff;
  540. }
  541. .dataList .nav .item {
  542. text-align: center;
  543. height: 100%;
  544. padding: 25rpx;
  545. }
  546. .dataList .nav .item.font-color {
  547. font-weight: bold;
  548. }
  549. .dataList .nav .item image {
  550. width: 88rpx;
  551. height: 88rpx;
  552. margin-left: 10rpx;
  553. }
  554. .dataList .mapbox {
  555. padding-top: 120rpx;
  556. }
  557. .dataList .list {
  558. padding: 20rpx;
  559. /* #ifdef MP-WEIXIN || APP-PLUS */
  560. padding-top: 346rpx;
  561. /* #endif */
  562. /* #ifdef H5 */
  563. padding-top: 255rpx;
  564. /* #endif */
  565. margin-top: 6rpx;
  566. }
  567. .kmclass {
  568. padding-left: 5rpx;
  569. color: #333333;
  570. }
  571. .dataList .list .item {
  572. background-color: #fff;
  573. display: flex;
  574. margin-top: 20rpx;
  575. padding: 20rpx;
  576. border-radius: 18rpx;
  577. }
  578. .dataList .list .item .pictrue {
  579. width: 180rpx;
  580. height: 180rpx;
  581. }
  582. .dataList .list .item .pictrue image {
  583. width: 100%;
  584. height: 100%;
  585. border-radius: 28rpx;
  586. }
  587. .dataList .list .item .text {
  588. width: 308rpx;
  589. padding: 0 0 0 22rpx;
  590. font-size: 28rpx;
  591. color: #373333;
  592. }
  593. .dataList .list .item .text .money {
  594. font-size: 23rpx;
  595. margin-top: 50rpx;
  596. }
  597. .dataList .list .item .text .money .num {
  598. font-size: 32rpx;
  599. }
  600. .dataList .list .item .text .vip {
  601. font-size: 22rpx;
  602. color: #aaa;
  603. margin-top: 12rpx;
  604. }
  605. .dataList .list .item .text .vip .vip-money {
  606. font-size: 24rpx;
  607. color: #282828;
  608. font-weight: bold;
  609. }
  610. .dataList .list .item .text .vip .vip-money image {
  611. width: 46rpx;
  612. height: 21rpx;
  613. margin-left: 4rpx;
  614. }
  615. .dataList .list .item .buttonbox {
  616. margin-top: 40rpx;
  617. width: 200rpx;
  618. padding: 0 0 0 22rpx;
  619. font-size: 28rpx;
  620. color: #373333;
  621. }
  622. .nametitle {
  623. font-size: 32rpx;
  624. padding-top: 2rpx;
  625. word-break: break-all;
  626. font-weight: bold;
  627. overflow: hidden;
  628. text-overflow: ellipsis;
  629. display: -webkit-box;
  630. -webkit-box-orient: vertical;
  631. -webkit-line-clamp: 2;
  632. }
  633. .distance {
  634. text-align: center;
  635. }
  636. .itembutton {
  637. margin-top: 10rpx;
  638. font-size: 24rpx;
  639. color: #ffffff;
  640. align-items: center;
  641. }
  642. .restitembutton {
  643. margin-top: 10rpx;
  644. font-size: 24rpx;
  645. color: #ffffff;
  646. align-items: center;
  647. background-color: #999999;
  648. }
  649. .noCommodity {
  650. background-color: #fff;
  651. }
  652. .indicators {
  653. color: #909090;
  654. margin-top: 20rpx;
  655. }
  656. .belong {
  657. color: #909090;
  658. margin-top: 20rpx;
  659. }
  660. .indctext {
  661. padding-left: 3rpx;
  662. padding-right: 15rpx;
  663. }
  664. /*师傅modal弹层*/
  665. .tui-close__img {
  666. width: 48rpx;
  667. height: 48rpx;
  668. position: absolute;
  669. right: 0;
  670. top: -60rpx;
  671. }
  672. .tui-modal-custom {
  673. padding-top: 0rpx;
  674. padding-bottom: 50rpx;
  675. }
  676. .sustombody {
  677. padding-top: 10rpx;
  678. padding-left: 20rpx;
  679. padding-right: 20rpx;
  680. }
  681. .tui-prompt-title {
  682. display: flex;
  683. padding-bottom: 20rpx;
  684. }
  685. .tui-prompt-title .text {
  686. width: 60%;
  687. font-size: 34rpx;
  688. color: #373333;
  689. }
  690. .tui-prompt-title .infodistance {
  691. width: 40%;
  692. text-align: right;
  693. }
  694. .tui-modal__btn {
  695. align-items: center;
  696. justify-content: space-between;
  697. }
  698. .tui-box {
  699. padding: 15rpx 20rpx;
  700. box-sizing: border-box;
  701. }
  702. .tui-btn-danger {
  703. height: 80rpx;
  704. line-height: 80rpx;
  705. background: #eb0909 !important;
  706. border-radius: 98rpx;
  707. color: #fff;
  708. }
  709. .touxiang-image {
  710. width: 100%;
  711. border-radius: 60rpx 60rpx 0rpx 0rpx;
  712. }
  713. /*师傅modal弹层end*/
  714. </style>