index.vue 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260
  1. <template>
  2. <view :style="colorStyle">
  3. <view class="wait_panel">
  4. <view class="w1">
  5. <image v-if="orderDetail.orderState == 5" src="http://www.gzzzyd.com/groupon/home_slices/取消订单小@2x.png" mode="scaleToFill" />
  6. <image v-else-if="orderDetail.orderState == 4" src="http://www.gzzzyd.com/groupon/home_slices/已完成@2x.png" mode="scaleToFill" />
  7. <image v-else-if="orderDetail.orderState == 6 || orderDetail.orderState == 7" src="http://www.gzzzyd.com/groupon/home_slices/退款中@2x.png" mode="scaleToFill" />
  8. <image v-else src="http://www.gzzzyd.com/groupon/home_slices/倒计时@2x.png" mode="scaleToFill" />
  9. <text v-if="orderDetail.orderState == 4" class="success_status">{{orderDetail.orderStateDesc}}</text>
  10. <text v-else-if="orderDetail.orderState > 4" class="refund_status">{{orderDetail.orderStateDesc}}</text>
  11. <text v-else class="status">{{orderDetail.orderStateDesc}}</text>
  12. </view>
  13. <view class="w2" v-if="orderDetail.orderState == 1">
  14. 需付款: <text class="red">¥{{orderDetail.paymentAmount}}</text>
  15. <text class="" style="margin-right:20rpx;" >
  16. 剩余:
  17. </text>
  18. <u-count-down :time="orderDetail.remainTime * 1000" format="mm分ss秒"></u-count-down>
  19. </view>
  20. <view class="w2" v-if="orderDetail.orderState == 2">
  21. 取货码
  22. </view>
  23. <view class="w3">
  24. <button v-if="orderDetail.orderState == 1">
  25. 去支付
  26. </button>
  27. <button v-if="orderDetail.orderState == 2">
  28. {{orderDetail.pickupCode}}
  29. </button>
  30. </view>
  31. </view>
  32. <view class="all-products-body" v-for="(item, index) in orderDetail.goodsList" :key="index">
  33. <view class="all-products-item" @click="addGoodPopupShow = true">
  34. <image
  35. :src="item.goodsImage"
  36. mode="scaleToFill" />
  37. <view class="all-products-item-content">
  38. <view class="all-products-item-content-t">
  39. {{item.goodsName}}
  40. </view>
  41. <view class="all-products-item-content-b">
  42. <view style="display:flex;">
  43. <text class="red"> ¥{{item.goodsPrice}}</text>
  44. </view>
  45. <view>
  46. <view class="count"> x {{item.goodsNum}}</view>
  47. </view>
  48. </view>
  49. </view>
  50. </view>
  51. </view>
  52. <view class='order-submission'>
  53. <view>
  54. <view class="nav acea-row">
  55. <view class="item font-num" :class="shippingType == 0 ? 'on' : 'on2'" @tap="addressType(0)"
  56. v-if='store_self_mention && is_shipping'></view>
  57. <view class="item font-num" :class="shippingType == 1 ? 'on' : 'on2'" @tap="addressType(1)"
  58. v-if='store_self_mention && is_shipping'></view>
  59. </view>
  60. <view class='address-info' @tap='onAddress'>
  61. <block>
  62. <view class="a-t">
  63. <view class="t1">
  64. 自提门店
  65. </view>
  66. <view class="t2" v-if="orderDetail.orderState == 1" @click="getSelfTakeList">
  67. 更换自提网点
  68. <image src="http://www.gzzzyd.com/groupon/order_details/切换_面24@2x.png" mode="scaleToFill" />
  69. </view>
  70. </view>
  71. <view class="a-m">
  72. <view class="am1">
  73. <view class="am1-1">
  74. {{orderDetail.selfTake.name}}
  75. </view>
  76. <view class="am1-2">
  77. 距您{{orderDetail.selfTake.distanceDesc}}
  78. <image src="http://www.gzzzyd.com/groupon/order_details/距离@2x.png" mode="scaleToFill" />
  79. </view>
  80. </view>
  81. <view class="am2">
  82. {{orderDetail.selfTake.address}}
  83. </view>
  84. <view class="am3">
  85. 营业时间 {{orderDetail.selfTake.busStartTimeDesc}}-{{orderDetail.selfTake.busEndTimeDesc}}
  86. </view>
  87. </view>
  88. <view class="a-b">
  89. <view class="a-b1">
  90. 对接团长:
  91. <text class="red">
  92. {{orderDetail.commander}}
  93. </text>
  94. </view>
  95. <view class="a-b2">
  96. <image src="http://www.gzzzyd.com/groupon/order_details/微信@2x.png" mode="scaleToFill" />
  97. <image src="http://www.gzzzyd.com/groupon/order_details/电话键盘_填充@2x.png" mode="scaleToFill" />
  98. </view>
  99. </view>
  100. </block>
  101. </view>
  102. <view class="payment-details">
  103. <view class="p_box" style="margin-bottom: 20rpx;">
  104. <view class="p-t">
  105. 订单信息
  106. </view>
  107. <view class="p-b-item">
  108. <view class="item-lable">订单编号</view>
  109. <view class="item-value2">{{orderDetail.orderNo}}</view>
  110. </view>
  111. <view class="p-b-item">
  112. <view class="item-lable">下单时间</view>
  113. <view class="item-value2">{{orderDetail.createTime}}</view>
  114. </view>
  115. <view class="p-b-item" v-if="orderDetail.orderState == 2">
  116. <view class="item-lable">支付方式</view>
  117. <view class="item-value2">{{orderDetail.paymentModeDesc}}</view>
  118. </view>
  119. </view>
  120. <view class="p_box">
  121. <view class="p-t">
  122. 付款明细
  123. </view>
  124. <view class="p-b-item">
  125. <view class="item-lable">商品金额</view>
  126. <view class="item-value">¥{{orderDetail.totalAmount}}</view>
  127. </view>
  128. <!-- <view class="p-b-item">
  129. <view class="item-lable">积分抵扣</view>
  130. <view class="item-value">¥0</view>
  131. </view> -->
  132. <view class="p-b-item">
  133. <view class="item-lable">总计金额</view>
  134. <view class="item-value">¥{{orderDetail.paymentAmount}}</view>
  135. </view>
  136. </view>
  137. </view>
  138. <productConSwiperGroupbuying class="skeleton-rect"></productConSwiperGroupbuying>
  139. </view>
  140. <view class='footer op-area'>
  141. <button class="info-btn" v-if="orderDetail.orderState == 2" @click="RefundShow = true">申请售后</button>
  142. <button class="info-btn" v-if="orderDetail.orderState == 1" @click="cancelOrder()">取消订单</button>
  143. <!-- <button class="action-btn" v-if="orderDetail.orderState == 1" @click="goPay()">去支付</button> -->
  144. </view>
  145. </view>
  146. <u-popup :show="RefundShow" @close="RefundShow = false" @open=" ">
  147. <view class="Refund_view">
  148. <view class="Refund_view_title">请选择退货/退款原因</view>
  149. <radio-group class="Refund_view_radio" name="header_type" @change="changeTitleType">
  150. <label>
  151. <radio class="disabled" value="1" /><text>退货/退款原因</text>
  152. </label>
  153. <label>
  154. <radio value="2" /><text>退货/退款原因</text>
  155. </label>
  156. </radio-group>
  157. <button class="Refund_view_btn">
  158. 确定
  159. </button>
  160. </view>
  161. </u-popup>
  162. <u-popup :show="selfTakeShow" @close="selfTakeShow = false">
  163. <view class="box_3 flex-col">
  164. <image @click="selfTakeShow = false"
  165. class="icon_2"
  166. referrerpolicy="no-referrer"
  167. src="/static/images/X.png"
  168. />
  169. <text class="text_25">切换取货点</text>
  170. <scroll-view scroll-y="true" class="scroll-y">
  171. <view class="list_1 flex-col">
  172. <view @click="clickSelfTake(item)"
  173. class="list-items_1 flex-col"
  174. v-for="(item, index) in selfTakeList"
  175. :key="index">
  176. <view class="group_14 flex-row justify-between">
  177. <view class="flex-col">
  178. <text class="text_26" >{{item.name}}</text>
  179. <text class="text_27" >{{item.address}}</text>
  180. </view>
  181. <view class="flex-row justify-between">
  182. <text class="text-group_9" >距您{{item.distanceDesc}}</text>
  183. <image class="icon_3"
  184. src="http://www.gzzzyd.com/groupon/order_details/距离@2x.png"/>
  185. </view>
  186. </view>
  187. <view class="group_15 flex-row">
  188. <view class="tag_1 flex-col">
  189. <text class="text_28">营业时间: {{item.busStartTimeDesc}}-{{item.busEndTimeDesc}}</text>
  190. </view>
  191. </view>
  192. </view>
  193. </view>
  194. </scroll-view>
  195. </view>
  196. </u-popup>
  197. </view>
  198. </template>
  199. <script>
  200. import couponListWindow from '@/components/couponListWindow';
  201. import addressWindow from '@/components/addressWindow';
  202. import home from '@/components/home';
  203. import {
  204. toLogin
  205. } from '@/libs/login.js';
  206. import {
  207. mapGetters
  208. } from "vuex";
  209. // #ifdef MP
  210. import authorize from '@/components/Authorize';
  211. // #endif
  212. import payment from '@/components/payment';
  213. import colors from "@/mixins/color";
  214. import productConSwiperGroupbuying from "@/components/productConSwiperGroupbuying";
  215. import {getUserOrderDetail, orderCancel, modifySelfTake} from '@/api/home.js';
  216. import {getGrouponSelfTakeList} from '@/api/groupon.js';
  217. export default {
  218. components: {
  219. payment,
  220. couponListWindow,
  221. productConSwiperGroupbuying,
  222. addressWindow,
  223. home,
  224. // #ifdef MP
  225. authorize
  226. // #endif
  227. },
  228. mixins: [colors],
  229. data () {
  230. return {
  231. selfTakeShow: false,
  232. RefundShow: false,
  233. confirm: '', //自定义留言
  234. date: this.$t(`请选择`),
  235. time: this.$t(`请选择`),
  236. canvasWidth: "",
  237. canvasHeight: "",
  238. canvasStatus: false,
  239. newImg: [],
  240. orderDetail: {},
  241. selfTakeList: []
  242. }
  243. },
  244. computed: mapGetters(['isLogin']),
  245. // watch: {
  246. // startDate() {
  247. // return this.getDate('start');
  248. // },
  249. // endDate() {
  250. // return this.getDate('end');
  251. // }
  252. // },
  253. onLoad (options) {
  254. this.from = 'routine'
  255. console.log(options);
  256. let orderId = options.orderId;
  257. this.getOrderDetail(orderId)
  258. },
  259. /**
  260. * 生命周期函数--监听页面显示
  261. */
  262. onShow: function () {
  263. let _this = this
  264. uni.$on("handClick", res => {
  265. if (res) {
  266. _this.system_store = res.address
  267. }
  268. // 清除监听
  269. uni.$off('handClick');
  270. })
  271. },
  272. methods: {
  273. clickSelfTake(item){
  274. this.selfTakeShow =false;
  275. //item 选中的自提点
  276. },
  277. cancelOrder() {
  278. let _this = this;
  279. uni.showModal({
  280. title: '提示',
  281. content: '确定取消次订单',
  282. confirmText: '确定',
  283. cancelText: '我再想想',
  284. success(res) {
  285. if (res.confirm) {
  286. orderCancel(_this.orderDetail.orderId).then(res => {
  287. _this.getOrderDetail(_this.orderDetail.orderId);
  288. return _this.$util.Tips({
  289. title: _this.$t(`取消成功`),
  290. icon: 'success'
  291. });
  292. }).catch(err => {
  293. return _this.$util.Tips({
  294. title: err || _this.$t(`取消失败`)
  295. });
  296. });
  297. }
  298. }
  299. })
  300. },
  301. afterSales () {
  302. },
  303. getOrderDetail(orderId) {
  304. console.log("getOrderDetail");
  305. let longitude = uni.getStorageSync('user_longitude');
  306. let latitude = uni.getStorageSync('user_latitude');
  307. getUserOrderDetail({
  308. orderId: orderId,
  309. longitude: longitude,
  310. latitude: latitude
  311. }).then(res => {
  312. this.orderDetail = res.data
  313. }).catch(err => {
  314. return that.$util.Tips({
  315. title: err || that.$t(`获取订单详情失败`)
  316. });
  317. });
  318. },
  319. /**
  320. * 获取自提点列表
  321. */
  322. getSelfTakeList() {
  323. let longitude = uni.getStorageSync('user_longitude');
  324. let latitude = uni.getStorageSync('user_latitude');
  325. getGrouponSelfTakeList({
  326. longitude: longitude,
  327. latitude: latitude,
  328. grouponId: this.orderDetail.grouponId
  329. }).then(res => {
  330. this.selfTakeList = res.data;
  331. this.selfTakeShow = true;
  332. })
  333. },
  334. /**
  335. * 修改自提点
  336. * @param {Object} selfTakeId
  337. */
  338. modifySelfTake(selfTakeId) {
  339. console.log(this.orderDetail);
  340. modifySelfTake({
  341. selfTakeId: selfTakeId,
  342. orderId: this.orderDetail.orderId
  343. }).then(res => {
  344. this.selfTakeShow = false;
  345. this.getOrderDetail(this.orderDetail.orderId)
  346. })
  347. }
  348. }
  349. }
  350. </script>
  351. <style lang="scss" scoped>
  352. @import "/static/css/common.css";
  353. /deep/uni-checkbox[disabled] .uni-checkbox-input {
  354. background-color: #eee;
  355. }
  356. .alipaysubmit {
  357. display: none;
  358. }
  359. .order-submission .line {
  360. width: 100%;
  361. height: 3rpx;
  362. }
  363. .order-submission .line image {
  364. width: 100%;
  365. height: 100%;
  366. display: block;
  367. }
  368. .order-submission .address {
  369. padding: 28rpx 30rpx;
  370. background-color: #fff;
  371. box-sizing: border-box;
  372. }
  373. .order-submission .address .addressCon {
  374. width: 610rpx;
  375. font-size: 26rpx;
  376. color: #666;
  377. }
  378. .order-submission .address .addressCon .name {
  379. font-size: 30rpx;
  380. color: #282828;
  381. font-weight: bold;
  382. margin-bottom: 10rpx;
  383. }
  384. .order-submission .address .addressCon .name .phone {
  385. margin-left: 50rpx;
  386. }
  387. .order-submission .address .addressCon .default {
  388. margin-right: 12rpx;
  389. }
  390. .order-submission .address .addressCon .setaddress {
  391. color: #333;
  392. font-size: 28rpx;
  393. }
  394. .order-submission .address .iconfont {
  395. font-size: 35rpx;
  396. color: #707070;
  397. }
  398. .order-submission .allAddress {
  399. width: 100%;
  400. background: linear-gradient(to bottom, var(--view-theme) 0%, #f5f5f5 100%);
  401. padding-top: 100rpx;
  402. margin-bottom: 12rpx;
  403. }
  404. .order-submission .allAddress .nav {
  405. width: 710rpx;
  406. margin: 0 auto;
  407. }
  408. .order-submission .allAddress .nav .item {
  409. width: 355rpx;
  410. }
  411. .order-submission .allAddress .nav .item.on {
  412. position: relative;
  413. width: 250rpx;
  414. }
  415. .order-submission .allAddress .nav .item.on::before {
  416. position: absolute;
  417. bottom: 0;
  418. content: "快递配送";
  419. font-size: 28rpx;
  420. display: block;
  421. height: 0;
  422. width: 336rpx;
  423. border-width: 0 20rpx 80rpx 0;
  424. border-style: none solid solid;
  425. border-color: transparent transparent #fff;
  426. z-index: 2;
  427. border-radius: 7rpx 30rpx 0 0;
  428. text-align: center;
  429. line-height: 80rpx;
  430. }
  431. .order-submission .allAddress .nav .item:nth-of-type(2).on::before {
  432. content: "到店自提";
  433. border-width: 0 0 80rpx 20rpx;
  434. border-radius: 30rpx 7rpx 0 0;
  435. }
  436. .order-submission .allAddress .nav .item.on2 {
  437. position: relative;
  438. }
  439. .order-submission .allAddress .nav .item.on2::before {
  440. position: absolute;
  441. bottom: 0;
  442. content: "到店自提";
  443. font-size: 28rpx;
  444. display: block;
  445. height: 0;
  446. width: 400rpx;
  447. border-width: 0 0 60rpx 60rpx;
  448. border-style: none solid solid;
  449. border-color: transparent transparent rgba(255, 255, 255, 0.6);
  450. border-radius: 40rpx 6rpx 0 0;
  451. text-align: center;
  452. line-height: 60rpx;
  453. }
  454. .order-submission .allAddress .nav .item:nth-of-type(1).on2::before {
  455. content: "快递配送";
  456. border-width: 0 60rpx 60rpx 0;
  457. border-radius: 6rpx 40rpx 0 0;
  458. }
  459. .order-submission .allAddress .address {
  460. width: 710rpx;
  461. height: 150rpx;
  462. margin: 0 auto;
  463. }
  464. .order-submission .allAddress .line {
  465. width: 710rpx;
  466. margin: 0 auto;
  467. }
  468. .order-submission .wrapper .item .discount .placeholder {
  469. color: #ccc;
  470. }
  471. .placeholder-textarea {
  472. position: relative;
  473. .placeholder {
  474. position: absolute;
  475. color: #ccc;
  476. top: 26rpx;
  477. left: 30rpx;
  478. }
  479. }
  480. .order-submission .wrapper {
  481. background-color: #fff;
  482. margin-top: 13rpx;
  483. }
  484. .order-submission .wrapper .item {
  485. padding: 27rpx 30rpx;
  486. font-size: 30rpx;
  487. color: #282828;
  488. border-bottom: 1px solid #f0f0f0;
  489. .mark {
  490. background-color: #f9f9f9;
  491. width: 345px;
  492. height: 70px;
  493. border-radius: 1px;
  494. margin-top: 15px;
  495. padding: 12px 14px;
  496. color: #ccc;
  497. font-size: 28rpx;
  498. box-sizing: border-box;
  499. }
  500. .mark-msg {
  501. color: #333;
  502. font-size: 32rpx;
  503. }
  504. }
  505. .order-submission .wrapper .item .discount {
  506. font-size: 30rpx;
  507. color: #999;
  508. }
  509. .order-submission .wrapper .item .discount input {
  510. text-align: end;
  511. }
  512. .order-submission .wrapper .item .discount .iconfont {
  513. color: #515151;
  514. font-size: 30rpx;
  515. margin-left: 15rpx;
  516. }
  517. .order-submission .wrapper .item .discount .num {
  518. font-size: 32rpx;
  519. margin-right: 20rpx;
  520. }
  521. .order-submission .wrapper .item .shipping {
  522. font-size: 30rpx;
  523. color: #999;
  524. position: relative;
  525. padding-right: 58rpx;
  526. }
  527. .order-submission .wrapper .item .shipping .iconfont {
  528. font-size: 35rpx;
  529. color: #707070;
  530. position: absolute;
  531. right: 0;
  532. top: 50%;
  533. transform: translateY(-50%);
  534. margin-left: 30rpx;
  535. }
  536. .order-submission .wrapper .item textarea {
  537. background-color: #f9f9f9;
  538. width: 690rpx;
  539. height: 140rpx;
  540. border-radius: 3rpx;
  541. margin-top: 30rpx;
  542. padding: 25rpx 28rpx;
  543. box-sizing: border-box;
  544. }
  545. .order-submission .wrapper .item .placeholder {
  546. color: #ccc;
  547. font-size: 28rpx;
  548. }
  549. .order-submission .wrapper .item .list {
  550. margin-top: 35rpx;
  551. }
  552. .order-submission .wrapper .item .list .payItem {
  553. border: 1px solid #eee;
  554. border-radius: 6rpx;
  555. height: 86rpx;
  556. width: 100%;
  557. box-sizing: border-box;
  558. margin-top: 20rpx;
  559. font-size: 28rpx;
  560. color: #282828;
  561. }
  562. .order-submission .wrapper .item .list .payItem.on {
  563. border-color: #fc5445;
  564. color: #e93323;
  565. }
  566. .order-submission .wrapper .item .list .payItem .name {
  567. width: 50%;
  568. text-align: center;
  569. border-right: 1px solid #eee;
  570. padding-left: 80rpx;
  571. }
  572. .order-submission .wrapper .item .list .payItem .name .iconfont {
  573. width: 44rpx;
  574. height: 44rpx;
  575. border-radius: 50%;
  576. text-align: center;
  577. line-height: 44rpx;
  578. background-color: #fe960f;
  579. color: #fff;
  580. font-size: 30rpx;
  581. margin-right: 15rpx;
  582. }
  583. .order-submission .wrapper .item .list .payItem .name .iconfont.icon-weixin2 {
  584. background-color: #41b035;
  585. }
  586. .order-submission .wrapper .item .list .payItem .name .iconfont.icon-zhifubao {
  587. background-color: #1677FF;
  588. }
  589. .order-submission .wrapper .item .list .payItem .tip {
  590. width: 49%;
  591. text-align: center;
  592. font-size: 26rpx;
  593. color: #aaa;
  594. }
  595. .order-submission .moneyList {
  596. margin-top: 12rpx;
  597. background-color: #fff;
  598. padding: 30rpx;
  599. }
  600. .order-submission .moneyList .item {
  601. font-size: 28rpx;
  602. color: #282828;
  603. }
  604. .order-submission .moneyList .item~.item {
  605. margin-top: 20rpx;
  606. }
  607. .order-submission .moneyList .item .money {
  608. color: #868686;
  609. }
  610. .order-submission .footer {
  611. width: 100%;
  612. height: 100rpx;
  613. background-color: #fff;
  614. padding: 0 30rpx;
  615. font-size: 28rpx;
  616. color: #333;
  617. box-sizing: border-box;
  618. position: fixed;
  619. bottom: 0;
  620. left: 0;
  621. z-index: 9;
  622. }
  623. .order-submission .footer .settlement {
  624. font-size: 30rpx;
  625. color: #fff;
  626. width: 240rpx;
  627. height: 70rpx;
  628. background-color: var(--view-theme);
  629. border-radius: 50rpx;
  630. text-align: center;
  631. line-height: 70rpx;
  632. }
  633. .footer .transparent {
  634. opacity: 0
  635. }
  636. .confirm {
  637. text-align: right;
  638. font-size: 22rpx;
  639. }
  640. .confirmImg {
  641. width: 100%;
  642. .img {
  643. width: 136rpx;
  644. height: 136rpx;
  645. }
  646. .pictrue {
  647. width: 136rpx;
  648. height: 136rpx;
  649. box-sizing: border-box;
  650. margin: 18rpx;
  651. margin-bottom: 35rpx;
  652. position: relative;
  653. font-size: 22rpx;
  654. color: #bbb;
  655. .del {
  656. position: absolute;
  657. top: 0;
  658. right: 0;
  659. }
  660. }
  661. .bor {
  662. border: 1rpx solid #ddd;
  663. }
  664. }
  665. .fontC {
  666. color: grey;
  667. }
  668. .all-products-body {
  669. padding-top: 30rpx;
  670. background: #fff;
  671. .all-products-item {
  672. display: flex;
  673. padding-bottom: 20rpx;
  674. background: #fff;
  675. image {
  676. margin: auto;
  677. width: 128rpx;
  678. height: 128rpx;
  679. margin-right: 20rpx;
  680. border: 2rpx solid #FFFFFF;
  681. }
  682. .all-products-item-content {
  683. width: calc(100% - 128rpx);
  684. display: flex;
  685. flex-direction: column;
  686. .all-products-item-content-t {
  687. flex: 1;
  688. font-size: 24rpx;
  689. font-weight: 400;
  690. color: #333333;
  691. line-height: 40rpx;
  692. }
  693. .all-products-item-content-b {
  694. flex: 1;
  695. font-size: 28rpx;
  696. font-weight: 500;
  697. line-height: 80rpx;
  698. display: flex;
  699. justify-content: space-between;
  700. .red {
  701. display: block;
  702. font-size: 28rpx;
  703. font-weight: 500;
  704. color: #B22338 !important;
  705. margin-right: 10rpx;
  706. }
  707. .line-thr {
  708. display: block;
  709. font-size: 28rpx;
  710. font-weight: 400;
  711. color: #999999;
  712. text-decoration: line-through;
  713. }
  714. .count {
  715. font-size: 24rpx;
  716. font-weight: 400;
  717. color: #999999;
  718. margin-right: 30rpx;
  719. }
  720. }
  721. }
  722. }
  723. }
  724. .address-info {
  725. padding: 30rpx 0;
  726. background: white;
  727. .a-t {
  728. padding: 0 30rpx;
  729. display: flex;
  730. justify-content: space-between;
  731. height: 44rpx;
  732. margin-bottom: 20rpx;
  733. .t1 {
  734. height: 44rpx;
  735. font-size: 32rpx;
  736. font-weight: bolder;
  737. color: #111111;
  738. line-height: 44rpx;
  739. }
  740. .t2 {
  741. height: 34rpx;
  742. font-size: 24rpx;
  743. font-weight: 400;
  744. color: #B42A3E;
  745. line-height: 34rpx;
  746. image {
  747. margin-left: 30rpx;
  748. height: 34rpx;
  749. width: 34rpx;
  750. vertical-align: middle;
  751. }
  752. }
  753. }
  754. .a-m {
  755. padding: 0 30rpx;
  756. .am1 {
  757. display: flex;
  758. justify-content: space-between;
  759. margin-bottom: 20rpx;
  760. .am1-1 {
  761. height: 40rpx;
  762. font-size: 28rpx;
  763. font-weight: 400;
  764. color: #111111;
  765. line-height: 40rpx;
  766. }
  767. .am1-2 {
  768. height: 36rpx;
  769. font-size: 20rpx;
  770. font-weight: 400;
  771. color: #666666;
  772. line-height: 36rpx;
  773. image {
  774. margin-left: 30rpx;
  775. vertical-align: middle;
  776. height: 34rpx;
  777. width: 34rpx;
  778. }
  779. }
  780. }
  781. .am2 {
  782. margin-bottom: 20rpx;
  783. font-size: 24rpx;
  784. font-weight: 400;
  785. color: #999999;
  786. }
  787. .am3 {
  788. display: inline-block;
  789. height: 44rpx;
  790. background: #FFF7F8;
  791. border-radius: 8rpx;
  792. padding-left: 30rpx;
  793. padding-right: 30rpx;
  794. margin-top: 0rpx;
  795. font-size: 20rpx;
  796. font-weight: 400;
  797. color: #999999;
  798. line-height: 44rpx;
  799. }
  800. }
  801. .a-b {
  802. padding: 0 30rpx;
  803. width: 100%;
  804. background: #FFF7F8;
  805. border: 1px solid dashed #333333;
  806. height: 60rpx;
  807. line-height: 60rpx;
  808. margin: 20rpx 30rpx;
  809. display: flex;
  810. justify-content: space-between;
  811. .a-b1 {
  812. font-size: 20rpx;
  813. font-weight: 400;
  814. color: #666666;
  815. .red {
  816. font-size: 20rpx;
  817. font-weight: 500;
  818. color: #B22338;
  819. }
  820. }
  821. .a-b2 {
  822. image {
  823. vertical-align: middle;
  824. margin-right: 30rpx;
  825. margin-left: 30rpx;
  826. height: 34rpx;
  827. width: 34rpx;
  828. }
  829. }
  830. }
  831. }
  832. .payment-details {
  833. margin-top: 20rpx;
  834. margin-bottom: 30rpx;
  835. background: rgb(245,245,245);
  836. .p_box{
  837. padding: 30rpx;
  838. background: white;
  839. margin-bottom: 20rpx;
  840. }
  841. .p-t {
  842. font-size: 32rpx;
  843. height: 80rpx;
  844. font-weight: bolder;
  845. color: #111111;
  846. line-height: 80rpx;
  847. }
  848. .p-b-item {
  849. height: 60rpx;
  850. line-height: 60rpx;
  851. display: flex;
  852. justify-content: space-between;
  853. .item-lable {
  854. font-size: 28rpx;
  855. font-weight: 400;
  856. color: #666666;
  857. }
  858. .item-value {
  859. font-size: 28rpx;
  860. font-weight: 400;
  861. color: #B22338;
  862. }
  863. .item-value2 {
  864. font-size: 28rpx;
  865. font-weight: 400;
  866. color: #666666;
  867. }
  868. }
  869. }
  870. .wait_panel {
  871. padding-top: 20rpx;
  872. text-align: center;
  873. margin-bottom: 20rpx;
  874. background: white;
  875. .w1 {
  876. height: 44rpx;
  877. font-size: 32rpx;
  878. font-weight: 500;
  879. color: #FEA800;
  880. line-height: 44rpx;
  881. margin: 20rpx 0;
  882. image {
  883. width: 40rpx;
  884. height: 40rpx;
  885. }
  886. }
  887. .w2 {
  888. display: flex;
  889. justify-content: center;
  890. height: 40rpx;
  891. font-size: 28rpx;
  892. margin: 20rpx 0;
  893. font-weight: 400;
  894. color: #333333;
  895. line-height: 40rpx;
  896. .red {
  897. margin: 0 20rpx;
  898. color: #B22338;
  899. }
  900. }
  901. .w3 {
  902. text-align: center;
  903. padding-bottom: 20rpx;
  904. button {
  905. margin: auto;
  906. line-height: 76rpx;
  907. width: 240rpx;
  908. height: 76rpx;
  909. background: #B22338;
  910. border-radius: 38rpx;
  911. font-size: 28rpx;
  912. font-weight: 600;
  913. color: #FFFFFF;
  914. }
  915. }
  916. }
  917. .op-area {
  918. display: flex;
  919. justify-content: flex-end;
  920. text-align: right;
  921. .action-btn {
  922. min-width: 200rpx;
  923. background: #B42A3E;
  924. border-radius: 32rpx;
  925. margin-right: 30rpx;
  926. height: 64rpx;
  927. font-size: 24rpx;
  928. font-weight: 400;
  929. color: #fff;
  930. line-height: 64rpx;
  931. margin: auto 0;
  932. }
  933. .info-btn {
  934. width: 200rpx;
  935. background: #F5F5F5;
  936. border-radius: 32rpx;
  937. margin-right: 30rpx;
  938. height: 64rpx;
  939. font-size: 24rpx;
  940. font-weight: 400;
  941. color: #666666;
  942. line-height: 64rpx;
  943. margin: auto 0;
  944. }
  945. }
  946. .Refund_view {
  947. height: 40vh;
  948. margin: 20rpx;
  949. padding: 0 30rpx;
  950. position: relative;
  951. .Refund_view_title {
  952. height: 80rpx;
  953. font-size: 32rpx;
  954. font-weight: bolder;
  955. color: #111111;
  956. line-height: 80rpx;
  957. }
  958. .Refund_view_radio {
  959. display: flex;
  960. flex-direction: column;
  961. label {
  962. flex: 1;
  963. margin-bottom: 20rpx;
  964. margin-right: 20rpx;
  965. }
  966. }
  967. .Refund_view_btn {
  968. margin: auto;
  969. width: 90%;
  970. height: 84rpx;
  971. background: #B42A3E;
  972. border-radius: 8rpx;
  973. font-size: 28rpx;
  974. font-weight: 400;
  975. color: #FFFFFF;
  976. line-height: 84rpx;
  977. position: absolute;
  978. bottom: 0;
  979. transform: translateX(-50%);
  980. left: 50%;
  981. }
  982. }
  983. .success_status {
  984. min-width: 100rpx;
  985. text-align: right;
  986. margin-right: 30rpx;
  987. color: #75BE00;
  988. }
  989. .refund_status {
  990. min-width: 100rpx;
  991. text-align: right;
  992. margin-right: 30rpx;
  993. color: #333333;
  994. }
  995. .status {
  996. min-width: 100rpx;
  997. text-align: right;
  998. margin-right: 30rpx;
  999. color: #FEA800;
  1000. }
  1001. /deep/ .u-count-down__text{
  1002. font-size: 28rpx !important;
  1003. }
  1004. .scroll-y{
  1005. height: 600rpx;
  1006. }
  1007. .box_3 {
  1008. background-color: rgba(250, 250, 250, 1);
  1009. border-radius: 4px 4px 0px 0px;
  1010. padding: 16rpx 16rpx 40rpx 32rpx;
  1011. }
  1012. .icon_2 {
  1013. width: 32rpx;
  1014. height: 32rpx;
  1015. margin-left: 670rpx;
  1016. }
  1017. .text_25 {
  1018. overflow-wrap: break-word;
  1019. color: rgba(17, 17, 17, 1);
  1020. font-size: 32rpx;
  1021. font-family: PingFangSC-Medium;
  1022. font-weight: 500;
  1023. text-align: left;
  1024. white-space: nowrap;
  1025. line-height: 44rpx;
  1026. margin: 0 278rpx 0 264rpx;
  1027. }
  1028. .list_1 {
  1029. height: 602rpx;
  1030. margin: 24rpx 16rpx 0 0;
  1031. }
  1032. .list-items_1 {
  1033. background-color: rgba(255, 255, 255, 1);
  1034. border-radius: 4px;
  1035. margin-bottom: 16rpx;
  1036. padding: 24rpx 24rpx 24rpx 24rpx;
  1037. }
  1038. .group_14 {
  1039. width: 638rpx;
  1040. }
  1041. .text_26 {
  1042. overflow-wrap: break-word;
  1043. color: rgba(17, 17, 17, 1);
  1044. font-size: 28rpx;
  1045. font-weight: NaN;
  1046. text-align: left;
  1047. white-space: nowrap;
  1048. line-height: 40rpx;
  1049. margin-right: 184rpx;
  1050. }
  1051. .text_27 {
  1052. overflow-wrap: break-word;
  1053. color: rgba(153, 153, 153, 1);
  1054. font-size: 24rpx;
  1055. font-weight: NaN;
  1056. text-align: left;
  1057. white-space: nowrap;
  1058. line-height: 34rpx;
  1059. margin-top: 16rpx;
  1060. }
  1061. .text-group_9 {
  1062. overflow-wrap: break-word;
  1063. color: rgba(102, 102, 102, 1);
  1064. font-size: 20rpx;
  1065. font-weight: NaN;
  1066. text-align: left;
  1067. white-space: nowrap;
  1068. line-height: 36rpx;
  1069. }
  1070. .icon_3 {
  1071. width: 34rpx;
  1072. height: 34rpx;
  1073. margin-left: 10rpx;
  1074. /*margin: 4rpx 0 4rpx 4rpx;*/
  1075. }
  1076. .group_15 {
  1077. margin: 8rpx 390rpx 0 0;
  1078. }
  1079. .tag_1 {
  1080. background-color: rgba(255, 247, 248, 1);
  1081. border-radius: 4px;
  1082. padding: 8rpx 24rpx 8rpx 26rpx;
  1083. }
  1084. .text_28 {
  1085. overflow-wrap: break-word;
  1086. color: rgba(153, 153, 153, 1);
  1087. font-size: 20rpx;
  1088. font-weight: NaN;
  1089. text-align: left;
  1090. white-space: nowrap;
  1091. line-height: 28rpx;
  1092. }
  1093. </style>