confirmOrder.vue 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806
  1. <template>
  2. <view class="box">
  3. <view class="topTIs">门店确认收货后,您可去订单详情页选择预约时间</view>
  4. <view class="topShop">
  5. <view class="topShopName">{{orderShop.shopName}}</view>
  6. <view class="topShopAdress">
  7. <image src="../../static/img/topshopicon.png" mode="" class="topShopAdressIcon"></image>
  8. <view class="topShopjl" v-if="orderShop.distance">{{orderShop.distance}}km</view>
  9. <view class="topShopAdressTxt" v-if="orderShop.address">{{orderShop.address}}</view>
  10. </view>
  11. </view>
  12. <view class="topBox">
  13. <view class="top">
  14. <view class="topLine borderB" >
  15. <view class="toplineLeft">
  16. <view class="topTitle">车牌号:</view>
  17. <view class="topTxt">{{maintainCarData.plateNumber}}</view>
  18. </view>
  19. </view>
  20. <view class="topLine borderB" v-if="iphoneData">
  21. <view class="toplineLeft">
  22. <view class="topTitle">联系人:</view>
  23. <view class="topTxt">{{iphoneData.name}} {{iphoneData.phone}}</view>
  24. </view>
  25. <view class="topLineRight" @click="gophone">修改></view>
  26. </view>
  27. <view class="topLine borderB" v-if="!iphoneData" @click="gophone">
  28. <view class="toplineLeft">
  29. <view class="topTitle">联系人:</view>
  30. <view style="color: #999999; font-size: 28rpx;" >请选择</view>
  31. </view>
  32. <view style="width: 14rpx; height: 23rpx; color: #999999;">></view>
  33. </view>
  34. </view>
  35. </view>
  36. <!-- 保养信息 -->
  37. <view class="main">
  38. <view class="mainLine" v-for="(item,index) in orderData">
  39. <view class="mainTitle">{{item.name}}</view>
  40. <view class="goodsItem" v-for="(v,i) in item.listGoodsAll">
  41. <view>
  42. <image :src="v.picUrl" mode="" class="goodsImg" v-if="v.picUrl"></image>
  43. <image src="../../static/img/noimg.png" mode="" class="goodsImg" v-else></image>
  44. </view>
  45. <view class="goodsItemRight" >
  46. <view class="goodsItemName">{{v.goodsName}}</view>
  47. <view class="goodsItemBottom">
  48. <view class="goodssalePrice">¥{{v.salePrice?v.salePrice:'0.00'}}</view>
  49. <view class="goodsNum">x{{v.qty}}</view>
  50. </view>
  51. </view>
  52. </view>
  53. <view class="goodsItem" v-for="(v,i) in item.listItem">
  54. <view>
  55. <image :src="v.picUrl" mode="" class="goodsImg" v-if="v.picUrl"></image>
  56. <image src="../../static/img/noimg.png" mode="" class="goodsImg" v-else></image>
  57. </view>
  58. <view class="goodsItemRight" >
  59. <view class="goodsItemName">{{v.itemName}}</view>
  60. <view class="goodsItemBottom">
  61. <view class="goodssalePrice">¥{{v.salePrice?v.salePrice:'0.00'}}</view>
  62. </view>
  63. </view>
  64. </view>
  65. </view>
  66. </view>
  67. <!-- 订单备注-->
  68. <view class="remarksBox">
  69. <view class="remarksLeft">订单备注</view>
  70. <view>
  71. <textarea value="" placeholder="点击添加备注信息" class="textarea" v-model="remark"/>
  72. </view>
  73. </view>
  74. <!-- 支付方式 -->
  75. <view class="payBox">
  76. <view class="payLIne borderB">
  77. <view class="payTitle">支付方式</view>
  78. <view class="payTxt">在线支付</view>
  79. </view>
  80. <view class="payLIne borderB">
  81. <view class="payTitle">商品费</view>
  82. <view class="payTxt">¥{{goodsMoney.toFixed(2)}}</view>
  83. </view>
  84. <view class="payLIne borderB">
  85. <view class="payTitle">工时费</view>
  86. <view class="payTxt">¥{{itemMoney.toFixed(2)}}</view>
  87. </view>
  88. <view class="payLIne" @click="gocoupon">
  89. <view class="payTitle">优惠券</view>
  90. <view class="payTxt2" v-if="!couponMoney">{{yhTotalSize}}张可用></view>
  91. <view class="payTxt2" v-if="couponMoney">-¥{{couponMoney}}</view>
  92. </view>
  93. </view>
  94. <view style="height: 150rpx;"></view>
  95. <!-- 底部 -->
  96. <view class="bottom">
  97. <view class="bottomLeft">
  98. <view>
  99. <view class="heji"> <span class="heji1">合计</span> <span class="hejiNum">¥{{(goodsMoney+itemMoney-couponMoney).toFixed(2)}}</span> </view>
  100. <view class="hejiMs">共{{goodsCount}}件商品,{{itemCount}}项服务</view>
  101. </view>
  102. </view>
  103. <view class="settlement" @click="$noMultipleClicks(settlement)">提交订单</view>
  104. </view>
  105. </view>
  106. </template>
  107. <script>
  108. export default {
  109. data() {
  110. return {
  111. remark:'',
  112. iphoneData:'',
  113. orderTime:'',
  114. OrderTimes:'',
  115. orderTimeIndex1:0,
  116. orderTimeIndex2:-1,
  117. timeShow:false,
  118. orderData:'',
  119. itemMoney:0,//项目总价
  120. goodsMoney:0,//商品总价
  121. goodsCount:0,//商品数
  122. itemCount:0,//项目数
  123. packJsonArr:[],
  124. shopData:'',
  125. maintainCarData:'',
  126. currentMileage:'',
  127. payMoney:'',
  128. couponID:'',
  129. couponMoney:'',
  130. yhTotalSize:0,
  131. orderShop:'',
  132. brands:'',
  133. noClick:true,
  134. }
  135. },
  136. onLoad(opt) {
  137. /* if(opt.type==2){
  138. this.shopData=uni.getStorageSync("cfshopInfo");
  139. }else{
  140. this.shopData=uni.getStorageSync("shopData");
  141. } */
  142. this.orderShop=uni.getStorageSync("orderShop")
  143. this.maintainCarData=uni.getStorageSync("maintainCarData");
  144. //this.getIphoneData(); 获取默认手机号
  145. console.log(opt.orderData)
  146. this.orderData=JSON.parse(opt.orderData);
  147. this.currentMileage=opt.currentMileage;
  148. console.log(this.orderData)
  149. this.orderData.forEach(item=>{
  150. var obj={
  151. 'packageID':item.id,
  152. 'itemJsonArr':[],
  153. 'goodsJsonArr':[],
  154. }
  155. if( item.listGoodsAll.length>0){
  156. item.listGoodsAll.forEach(v=>{
  157. this.goodsMoney+=v.salePrice*v.qty
  158. this.goodsCount+=v.qty
  159. var goodsObj={
  160. 'id':v.goodsID,
  161. //'mItemID':v.mItemID,
  162. 'mGoodsID':v.mGoodsID,
  163. 'salePrice':v.salePrice,
  164. 'saleQty':v.qty,
  165. 'amountMoney':v.salePrice*v.qty,
  166. }
  167. if(v.mItemID){
  168. goodsObj.mItemID=v.mItemID
  169. }
  170. obj.goodsJsonArr.push(goodsObj)
  171. })
  172. }
  173. if(item.listItem.length>0){
  174. item.listItem.forEach(v=>{
  175. this.itemMoney+=v.salePrice
  176. this.itemCount++;
  177. var itemObj={
  178. 'id':v.itemID,
  179. 'mItemID':v.mItemID,
  180. 'salePrice':v.salePrice,
  181. }
  182. obj.itemJsonArr.push(itemObj)
  183. })
  184. }
  185. this.packJsonArr.push(obj)
  186. })
  187. this.myOrderCoupon()// 优惠券
  188. console.log( this.packJsonArr)
  189. },
  190. onShow() {
  191. var iphoneData=uni.getStorageSync("phoneData");
  192. if(iphoneData){
  193. this.iphoneData=iphoneData
  194. }
  195. var couponData=uni.getStorageSync("couponData")
  196. if(couponData){
  197. this.couponID=couponData.ID;
  198. var ActMoney=couponData.ActMoney;
  199. var payMoney=this.goodsMoney+this.itemMoney;
  200. if(payMoney<ActMoney){
  201. this.couponMoney=payMoney
  202. }else{
  203. this.couponMoney=ActMoney
  204. }
  205. }
  206. var cardata = uni.getStorageSync("maintainCarData")
  207. this.maintainCarData=cardata
  208. },
  209. methods: {
  210. myOrderCoupon(){
  211. var payMoney=this.goodsMoney+this.itemMoney;
  212. //payMoney=40
  213. this.$http('worldKeepCar/maintainOrder/myOrderCoupon', {
  214. money:payMoney,
  215. shopId:this.orderShop.shopId,
  216. /* page:1,
  217. limit:2, */
  218. },'GET').then(res => {
  219. this.yhTotalSize=res.data.length
  220. })
  221. },
  222. gocoupon(){
  223. var payMoney=this.goodsMoney+this.itemMoney;
  224. //payMoney=40
  225. uni.navigateTo({
  226. url:'usableDiscountCard?payMoney='+payMoney+'&shopId='+this.orderShop.shopId
  227. })
  228. },
  229. settlement(){
  230. var that=this;
  231. if(this.yhTotalSize>0){
  232. if(this.couponID==''){
  233. uni.showModal({
  234. title: '提示',
  235. content: '当前有可用优惠券未使用',
  236. cancelText:'放弃使用',
  237. confirmText:'去使用',
  238. success: function (res) {
  239. if (res.confirm) {
  240. //console.log('用户点击确定');
  241. var payMoney=that.goodsMoney+that.itemMoney;
  242. uni.navigateTo({
  243. url:'usableDiscountCard?payMoney='+payMoney
  244. })
  245. } else if (res.cancel) {
  246. that.tosettlement()
  247. }
  248. }
  249. });
  250. }else{
  251. that.tosettlement()
  252. }
  253. }else {
  254. that.tosettlement()
  255. }
  256. },
  257. tosettlement(){
  258. if(this.couponMoney){
  259. this.payMoney=this.goodsMoney+this.itemMoney-this.couponMoney;
  260. }else{
  261. this.payMoney=this.goodsMoney+this.itemMoney;
  262. }
  263. //this.payMoney=3;
  264. if(this.iphoneData){
  265. if(this.iphoneData.name==''){
  266. uni.showToast({
  267. title: '请选择联系人',
  268. icon:'none',
  269. duration: 2000
  270. });
  271. return false;
  272. }
  273. }else{
  274. uni.showToast({
  275. title: '请选择联系人',
  276. icon:'none',
  277. duration: 2000
  278. });
  279. return false;
  280. }
  281. /* var cardata={
  282. annualmoney: "2017",
  283. brand: "大众",
  284. brandLogo: "http://img.db.66km.cn/carbrandlogo/D - 大众.png",
  285. buyDate: "",
  286. carModel: "2018 双离合变速器(DSG) 7档 前置前驱 CC",
  287. carName: "",
  288. carNumber: "",
  289. createTime: "2021-10-27 09:20:29",
  290. dayMilage: 661,
  291. displacement: "1.4T",
  292. engineCode: "",
  293. engineType: "1111",
  294. id: "07EB4B07-5302-4574-9709-0EC0D1668155",
  295. insuranceCompany: "",
  296. insuranceExpireDate: "1900-01-01 00:00:00",
  297. insuredCity: "",
  298. isDefault: 0,
  299. istransfer: "",
  300. memberID: "E4416E30-C82A-4136-81B7-6B424DDE4847",
  301. milage: 7788,
  302. model: "C-TREK(蔚领)",
  303. nLevelID: "CFV0718D0038",
  304. plateNumber: "鲁A22333",
  305. saleName: "",
  306. series: "C-TREK(蔚领)",
  307. transmissionType: "自动",
  308. traveltime: "",
  309. vIN: "",
  310. currentMileage:'1111',
  311. } */
  312. uni.showLoading({ });
  313. this.$http('worldKeepCar/maintainOrder/submitOrder', {
  314. shopName:this.orderShop.shopName,
  315. contactName:this.iphoneData.name,
  316. contactPhone:this.iphoneData.phone,
  317. carID:this.maintainCarData.id,
  318. plateNumber:this.maintainCarData.plateNumber,
  319. carModel:this.maintainCarData.carModel,
  320. currentMileage:this.maintainCarData.milage,//this.currentMileage,
  321. comment:this.remark,
  322. itemMoney:this.itemMoney,
  323. goodsMoney:this.goodsMoney,
  324. goodsCount:this.goodsCount,
  325. itemCount:this.itemCount,
  326. couponMoney:this.couponMoney,
  327. couponID:this.couponID,
  328. payMoney:this.payMoney,
  329. //payMoney:0.01,
  330. packJsonArr:JSON.stringify(this.packJsonArr) ,
  331. shopID:this.orderShop.shopId,
  332. // unionID:this.orderShop.unionId,
  333. },'POST').then(res => {
  334. if(res.code==0){
  335. if(this.payMoney==0){
  336. uni.hideLoading();
  337. /* uni.navigateTo({
  338. url:'../order/orderDetail?id='+res.data.id+'&type=2'
  339. }) */
  340. this.orderPayzero(res.data.id)
  341. }else{
  342. this.orderPay(res.data.id)
  343. }
  344. }else{
  345. uni.hideLoading();
  346. uni.showToast({
  347. title: res.msg,
  348. icon:'none',
  349. duration: 4000
  350. });
  351. }
  352. })
  353. },
  354. orderPayzero(id){
  355. this.$http('worldKeepCar/maintainOrder/orderPay', {
  356. sheetID:id
  357. },'POST').then(res => {
  358. uni.hideLoading();
  359. if(res.code==0){
  360. }else{
  361. uni.hideLoading();
  362. uni.showToast({
  363. title: res.msg,
  364. icon:'none',
  365. duration: 4000
  366. });
  367. }
  368. if(res.isPay==0){
  369. uni.navigateTo({
  370. url:'../order/orderDetail?id='+id+'&type=2'
  371. })
  372. }
  373. })
  374. },
  375. orderPay(id){
  376. //uni.showLoading({ });
  377. this.$http('worldKeepCar/maintainOrder/orderPay', {
  378. sheetID:id
  379. },'POST').then(res => {
  380. uni.hideLoading();
  381. if(res.code==0){
  382. }else{
  383. uni.hideLoading();
  384. uni.showToast({
  385. title: res.msg,
  386. icon:'none',
  387. duration: 4000
  388. });
  389. }
  390. var payInfo=JSON.parse(res.data.payInfo)
  391. if(res.isPay==0){
  392. uni.navigateTo({
  393. url:'../order/orderDetail?id='+id+'&type=2'
  394. })
  395. }else{
  396. uni.requestPayment({
  397. provider: 'wxpay',
  398. // timeStamp: String(Date.now()),
  399. timeStamp:payInfo.timeStamp,
  400. nonceStr: payInfo.nonceStr,
  401. package: payInfo.package,
  402. signType: payInfo.signType,
  403. paySign: payInfo.paySign,
  404. success: function (res) {
  405. console.log('success:' + JSON.stringify(res));
  406. uni.showToast({
  407. title: '支付成功',
  408. icon:'none',
  409. duration: 2000
  410. });
  411. /* uni.switchTab({
  412. url:'../index/index'
  413. }) */
  414. uni.navigateTo({
  415. url:'../order/orderDetail?id='+id+'&type=2'
  416. })
  417. },
  418. fail: function (err) {
  419. console.log('取消支付fail:' + JSON.stringify(err));
  420. uni.navigateTo({
  421. url:'../order/orderDetail?id='+id+'&type=2'
  422. })
  423. }
  424. });
  425. }
  426. })
  427. },
  428. getIphoneData(){
  429. uni.showLoading({ });
  430. this.$http('miniAppMyBMemberCar/queryBMemberContactIsDefault', {
  431. },'GET').then(res => {
  432. uni.hideLoading();
  433. this.iphoneData=res.data;
  434. })
  435. },
  436. gophone(){
  437. uni.removeStorageSync('phoneData');
  438. uni.navigateTo({
  439. url:'../iPhone/phoneList'
  440. })
  441. },
  442. }
  443. }
  444. </script>
  445. <style scoped>
  446. .topTIs{
  447. font-size: 26rpx;
  448. text-align: center;
  449. color: #C8841C;
  450. height: 72rpx;
  451. background: #FFF7EB;
  452. line-height: 72rpx;
  453. margin-bottom: 20rpx;
  454. }
  455. .topShopAdressIcon{
  456. width: 22rpx;
  457. height: 29rpx;
  458. }
  459. .topShop{
  460. width: 702rpx;
  461. min-height: 148rpx;
  462. background: #FFFFFF;
  463. border-radius: 10rpx;
  464. margin: 0 auto;
  465. }
  466. .topShopName{
  467. font-size: 28rpx;
  468. padding-top: 30rpx;
  469. padding-left: 20rpx;
  470. color: #3C3C3C;
  471. }
  472. .topShopAdress{
  473. display: flex;
  474. padding: 20rpx;
  475. }
  476. .topShopjl{
  477. font-size: 24rpx;
  478. line-height: 30rpx;
  479. color: #999999;
  480. padding-left: 16rpx;
  481. }
  482. .topShopAdressTxt{
  483. font-size: 24rpx;
  484. line-height: 30rpx;
  485. color: #999999;
  486. padding-left: 16rpx;
  487. }
  488. .box{
  489. min-height: 100vh;
  490. background:#F4F5F7 ;
  491. }
  492. .timeBox{
  493. width: 100vw;
  494. height: 100vh;
  495. background: rgba(0,0,0,0.5);
  496. position: fixed;
  497. top: 0;
  498. left: 0;
  499. z-index: 111;
  500. }
  501. .timeLeftActive{
  502. background: #FFFFFF;
  503. }
  504. .timeMain{
  505. width: 100vw;
  506. height: 70vh;
  507. margin-top: 30vh;
  508. background: #FFFFFF;
  509. border-radius: 24rpx 24rpx 0px 0px;
  510. }
  511. .timesfNo{
  512. background: #F5F5F5;
  513. }
  514. .timesfActive{
  515. background: #FF4F00;
  516. }
  517. .timesfActive .timeSfNum{
  518. color: #FFFFFF;
  519. }
  520. .timesfActive .timeyy{
  521. color: #FFFFFF;
  522. }
  523. .topBox{
  524. padding: 20rpx 24rpx;
  525. }
  526. .timeTop{
  527. display: flex;
  528. line-height: 90rpx;
  529. padding-left: 24rpx;
  530. padding-right: 24rpx;
  531. justify-content: space-between;
  532. }
  533. .timeTopTitle{
  534. font-size: 30rpx;
  535. font-family: PingFangSC-Medium, PingFang SC;
  536. font-weight: 600;
  537. color: #3C3C3C;
  538. }
  539. .close{
  540. color: #999999;font-size: 30rpx;
  541. padding-left: 30rpx;
  542. }
  543. .timeCont{
  544. height: calc(70vh - 210rpx);
  545. }
  546. .timeSv{
  547. height: calc(70vh - 210rpx);
  548. }
  549. .timeLeft{
  550. width: 162rpx;
  551. background: #F4F5F7;
  552. border-top: 1px soid #F4F5F7;
  553. border-right:1px soid #F4F5F7 ;
  554. }
  555. .timeRight{
  556. width: 588rpx;
  557. }
  558. .timesf{
  559. width: 165rpx;
  560. height: 98rpx;
  561. border-radius: 7rpx;
  562. border: 2rpx solid #EEEEEE;
  563. text-align: center;
  564. margin-left: 20rpx;
  565. margin-bottom: 24rpx;
  566. }
  567. .timeBottom{
  568. width: 750rpx;
  569. height: 120rpx;
  570. background: #FFFFFF;
  571. box-shadow: 0px -2px 20rpx 0px rgba(153, 153, 153, 0.2);
  572. display: flex;
  573. align-items: center;
  574. }
  575. .timerightBox{
  576. display: flex;
  577. flex-wrap: wrap;
  578. }
  579. .timeCont{
  580. display: flex;
  581. }
  582. .timeSfNum{
  583. color: #666666;
  584. font-size: 28rpx;
  585. padding-top: 15rpx;
  586. }
  587. .timeyy{
  588. font-size: 24rpx;
  589. color: #999999;
  590. }
  591. .timecomplete{
  592. width: 690rpx;
  593. height: 74rpx;
  594. background: linear-gradient(124deg, #FF8700 0%, #FF4F00 100%);
  595. border-radius: 37rpx;
  596. line-height: 74rpx;
  597. text-align: center;
  598. font-size: 30rpx;
  599. color: #FFFFFF;
  600. margin-left: 30rpx;
  601. }
  602. .timeleftLine{
  603. font-size: 30rpx;
  604. color: #999999;
  605. text-align: center;
  606. padding: 28rpx 10rpx;
  607. border-bottom: 1px solid #EEEEEE;
  608. }
  609. .top{
  610. background: #FFFFFF;
  611. border-radius: 10px;
  612. padding: 0 20rpx;
  613. }
  614. .topLine{
  615. display: flex;
  616. justify-content: space-between;
  617. padding: 30rpx 0;
  618. }
  619. .toplineLeft{
  620. display: flex;font-size: 28rpx;
  621. }
  622. .topTitle{
  623. width: 150rpx;font-weight: 400;
  624. color: #3C3C3C;
  625. }
  626. .topLineRight{
  627. font-size: 26rpx;
  628. font-family: PingFangSC-Regular, PingFang SC;
  629. font-weight: 400;
  630. color: #FF4F00;
  631. }
  632. .topTxt{
  633. color: #3C3C3C;
  634. }
  635. .borderB{
  636. border-bottom: 1px solid #EEEEEE;
  637. }
  638. .goodsImg{
  639. width: 120rpx;height: 120rpx;
  640. }
  641. .main{
  642. padding: 0 24rpx;
  643. }
  644. .mainLine{
  645. background: #FFFFFF;
  646. padding: 24rpx 20rpx;
  647. border-radius: 10rpx;
  648. }
  649. .mainTitle{
  650. font-size: 28rpx;
  651. font-weight: 600;
  652. color: #3C3C3C;
  653. }
  654. .goodsItem{
  655. display: flex;
  656. padding: 15rpx 0;
  657. }
  658. .goodsItemRight{
  659. width: 520rpx;
  660. padding-left: 20rpx;
  661. display: flex;
  662. flex-direction:column;
  663. justify-content: space-between;
  664. }
  665. .goodsItemBottom{
  666. display: flex;
  667. justify-content: space-between;
  668. }
  669. .goodsItemName{
  670. font-size: 26rpx;
  671. color: #3C3C3C;
  672. }
  673. .goodssalePrice{
  674. font-size: 32rpx;font-weight: 500;color: #FF4F00;
  675. }
  676. .goodsNum{
  677. font-size: 24rpx;font-weight: 400;color: #999999;
  678. }
  679. .remarksBox{
  680. display: flex;
  681. padding: 24rpx;
  682. border-radius: 16rpx;
  683. background: #FFFFFF;
  684. margin-top: 20rpx;
  685. width: 654rpx;
  686. margin-left: 24rpx;
  687. }
  688. .remarksLeft{
  689. color: #333333;font-size: 28rpx;
  690. width: 160rpx;
  691. }
  692. .textarea{
  693. width: 500rpx;
  694. font-size: 26rpx;
  695. height: 100rpx;
  696. padding: 0;
  697. padding-left: 30rpx;
  698. }
  699. .payBox{
  700. background: #FFFFFF;
  701. margin-top: 20rpx;
  702. margin-left: 24rpx;
  703. width: 702rpx;
  704. border-radius: 16rpx;
  705. }
  706. .payLIne{
  707. display: flex;
  708. justify-content: space-between;
  709. color: #3C3C3C;
  710. font-size: 28rpx;
  711. padding: 29rpx 20rpx;
  712. }
  713. .payTxt2{
  714. color: #FF4F00;
  715. }
  716. .bottom{
  717. position: fixed;
  718. left: 0;
  719. bottom: 0;
  720. width: 100vw;
  721. height: 120rpx;
  722. background: #FFFFFF;
  723. box-shadow: 0px -2px 20px 0px rgba(153, 153, 153, 0.2);
  724. display: flex;
  725. justify-content: space-between;
  726. }
  727. .bottomLeft{
  728. display: flex;
  729. padding-left: 20rpx;
  730. }
  731. .heji1{
  732. font-size: 24rpx;
  733. font-weight: 500;
  734. color: #666666;
  735. }
  736. .hejiNum{
  737. font-size: 32rpx;
  738. font-family: PingFangSC-Medium, PingFang SC;
  739. font-weight: 500;
  740. color: #FF4F00;
  741. }
  742. .hejiMs{
  743. font-size: 24rpx;
  744. padding-top: 5rpx;
  745. color: #999999;
  746. }
  747. .heji{
  748. padding-top: 23rpx;
  749. }
  750. .settlement{
  751. width: 203rpx;
  752. height: 74rpx;
  753. background: #FF4F00;
  754. border-radius: 37rpx;
  755. text-align: center;
  756. line-height: 74rpx;
  757. font-size: 30rpx;
  758. font-family: PingFangSC-Medium, PingFang SC;
  759. font-weight: 500;
  760. color: #FEFFFE;
  761. margin-top: 23rpx;
  762. margin-right: 32rpx;
  763. }
  764. </style>