refund.vue 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801
  1. <template>
  2. <view class="box">
  3. <view class="cont">
  4. <view class="itemBox flex">
  5. </image>
  6. <image class="itemIMg" src="../../static/timg/noimg.png" mode=""></image>
  7. <view class="itemRight">
  8. <view class="itemName">{{orderData.data.sheetContent}}</view>
  9. <view class="priceBox">
  10. <view class="price">¥</view>
  11. </view>
  12. </view>
  13. </view>
  14. <view class="goodsBox">
  15. <view class="goodsline flex" >
  16. <view class="goodsLeft">退款原因 <span class="xinghao">*</span></view>
  17. <view class="goodRight ckLine" @click="reasonS">
  18. <span>请至少选择一项</span>
  19. <image src="../../static/timg/icon_arrow_right.png" mode="" class="jtIcon"></image>
  20. </view>
  21. </view>
  22. <view class="goodsline flex" v-if="type==1">
  23. <view class="goodsLeft">退款份数</view>
  24. <view class="goodRight" >
  25. <view class="numJsbox">
  26. <view class="numJj" @click="calculation(1)">-</view>
  27. <view class="goodsnum">
  28. <input type="number" value="" v-model="goodsnum" class="goodsnumInput"/>
  29. </view>
  30. <view class="numJj" @click="calculation(2)">+</view>
  31. </view>
  32. </view>
  33. </view>
  34. <view class="goodsline flex" v-if="type==2">
  35. <view class="goodsLeft">退款份数</view>
  36. <view class="goodRight" style="color: #666666;">
  37. 10份
  38. </view>
  39. </view>
  40. <view class="goodsline flex" >
  41. <view class="tkPrice">
  42. <view class="tkPrice1">退款金额</view>
  43. <view class="tkPrice2">实际退款金额以到账金额为准</view>
  44. </view>
  45. <view class="tkPriceNum">¥9</view>
  46. </view>
  47. <view class="goodsline flex" >
  48. <view class="goodsLeft">退款方式</view>
  49. <view class="goodRight" style="font-size: 26rpx;font-weight: 500;color: #222222;">原路退回</view>
  50. </view>
  51. </view>
  52. <view class="goodsBox">
  53. <view class="goodsline flex" >
  54. <view class="goodsLeft">商品是否已使用 <span class="xinghao">*</span></view>
  55. <view class="goodRight " >
  56. <picker @change="bindPickerChange" :value="index" :range="array">
  57. <view class="ckLine" v-if="index==''">
  58. <span>请选择</span>
  59. <image src="../../static/timg/icon_arrow_right.png" mode="" class="jtIcon"></image>
  60. </view >
  61. <view v-else class="ckLine xuanzhong" ><span>{{array[index]}}</span>
  62. <image src="../../static/img2/hjt.png" mode="" class="hjtIcon"></image>
  63. </view>
  64. </picker>
  65. </view>
  66. </view>
  67. <view class="tkSm" style="padding-top: 8rpx;">退款说明</view>
  68. <view>
  69. <textarea class="tktextarea" name="" placeholder="请输入退款说明" id="" cols="30" rows="10"></textarea>
  70. <view class="textareaNum">{{textareaNum}}/500</view>
  71. </view>
  72. <!-- 图片 -->
  73. <view class="secondView">
  74. <view class="tkSm">退款凭证</view>
  75. <view class="imgBox">
  76. <view :class="{img4:(imgindex+1)%4==0}" class="imgLine" v-for="(img,imgindex) in imgArr">
  77. <image :src="img" mode="aspectFit" class="itemImg"></image>
  78. <image src="../../static/img/icon_del_red.png" mode="aspectFit" class="delImg" @click="delimg(imgindex)">
  79. </image>
  80. </view>
  81. <view class="img4" @click="uploadImg">
  82. <image src="../../static/img/btn_pic.png" mode="" class="itemImg"></image>
  83. </view>
  84. </view>
  85. </view>
  86. </view>
  87. </view>
  88. <view class="gaodu"></view>
  89. <view class="bottomBox">
  90. <view class="bottomMS">申请退款后不可取消,钱款预期1-3个自然日</view>
  91. <view class="bottom">
  92. <view class="bleft">
  93. <span>退款金额</span>
  94. <span style="color: #EC0F0A;padding-left: 6rpx;">¥</span>
  95. <span style="font-weight: 500;font-size: 34rpx;color: #EC0F0A;">9</span>
  96. </view>
  97. <view class="Btn commonBtn" @click="submitFn">提交</view>
  98. </view>
  99. </view>
  100. <view class="reasonBox" v-if="reasonShow">
  101. <view class="reasonCont">
  102. <view class="reasonTop">
  103. <view class="chahao"></view>
  104. <view class="tkTitle">请选择退款原因</view>
  105. <image @click="qdTkclose" class="chahao" src="../../static/img2/chahao.png" mode=""></image>
  106. </view>
  107. <view class="reasonContLineBox">
  108. <view v-for="(item,index) in 3" class="jiekouLIne">
  109. <view class="reasonContLineTitle">商品相关</view>
  110. <view class="reasonContLine" v-for="(i,ix) in 3">
  111. <view class="reasonContLineTxt">包装/商品破损/污渍</view>
  112. <view class="reasonContLineCk"></view>
  113. </view>
  114. </view>
  115. </view>
  116. <view style="height: 200rpx;"></view>
  117. <view class="reasonBottom">
  118. <view class="reasonBottomBtn">确定</view>
  119. </view>
  120. </view>
  121. </view>
  122. </view>
  123. </template>
  124. <script>
  125. export default {
  126. components: {
  127. },
  128. data() {
  129. return {
  130. themeColor:'',
  131. ext:'',
  132. goodsnum:1,
  133. itemDefault:'',
  134. totalPrice:'',
  135. sheetDetail:[],
  136. userInfo:'',
  137. carInfo:'',
  138. customerInfo:'',
  139. textareaNum:0,
  140. reasonShow:false,
  141. imgArr: [],
  142. array:['未使用','已使用'],
  143. index: '',
  144. orderData:'',
  145. type:'',
  146. id:'',
  147. }
  148. },
  149. onLoad(opt) {
  150. this.ext = this.$common.getExtStoreId();
  151. this.themeColor = uni.getStorageSync("themeColor");
  152. this.orderData = uni.getStorageSync("orderData");
  153. this.type=opt.type
  154. this.sheetRefundReason()
  155. this.id=opt.id;
  156. if(this.type==1){
  157. this.getsheetQRCode()
  158. }
  159. },
  160. onShow() {
  161. },
  162. methods: {
  163. getsheetQRCode(){
  164. this.$http('openOrderManagement/sheetQRCodeList', {
  165. type:1,
  166. sheetID: this.id,
  167. }, 'GET').then(res => {
  168. })
  169. },
  170. sheetRefundReason(){
  171. var params={}
  172. this.$http('openOrderManagement/sheetRefundReason', params,'GET').then(res => {
  173. })
  174. },
  175. bindPickerChange(e){
  176. console.log(e)
  177. this.index=e.detail.value
  178. },
  179. reasonS(){
  180. this.reasonShow=true;
  181. },
  182. qdTkclose(){
  183. this.reasonShow=false;
  184. },
  185. calculation(type){
  186. if(type==1){
  187. if(this.goodsnum>1){
  188. this.goodsnum--
  189. }
  190. }else{
  191. console.log("+++")
  192. this.goodsnum++
  193. }
  194. },
  195. submitFn(){
  196. uni.showModal({
  197. title: '申请退款',
  198. content: '退款申请一旦提交。将不能撤销,是否确认继',
  199. confirmText:'确认',
  200. cancelText:'取消',
  201. success: function (res) {
  202. if (res.confirm) {
  203. // console.log('用户点击确定');
  204. uni.navigateTo({
  205. url:'refundDetail'
  206. })
  207. } else if (res.cancel) {
  208. }
  209. }
  210. });
  211. /* var params={
  212. }
  213. uni.showLoading({
  214. title: '加载中'
  215. })
  216. this.$http('openMallOrder/submitOrder', params,'POST').then(res => {
  217. uni.hideLoading();
  218. if(res.code==0){
  219. this.orderData=res.data
  220. this.unifiedPay(res.data)
  221. }else{
  222. uni.showToast({
  223. title: res.msg,
  224. icon: 'none',
  225. duration: 3000
  226. });
  227. }
  228. }) */
  229. },
  230. unifiedPay(res){
  231. this.$http('openMallOrder/unifiedPay', {
  232. sheetId:res.id
  233. },'POST').then(res => {
  234. this.isgo=true;
  235. if(res.code==0){
  236. this.requestPayment(res.data)
  237. }else{
  238. uni.showToast({
  239. title: res.msg,
  240. icon: 'none',
  241. duration: 3000
  242. });
  243. }
  244. })
  245. },
  246. uploadImg() {
  247. var that = this;
  248. var length = this.imgArr.length;
  249. var num = 5;
  250. if (length > 4) {
  251. uni.showToast({
  252. title: '最多上传5张',
  253. icon: 'none',
  254. duration: 2000,
  255. });
  256. return false;
  257. }
  258. uni.chooseImage({
  259. sourceType: ['album', 'camera'],
  260. count: num - length,
  261. sizeType:['compressed'],
  262. success: (chooseImageRes) => {
  263. const tempFilePaths = chooseImageRes.tempFilePaths;
  264. /* uni.uploadFile({
  265. url: that.$request.baseUrl+'accompany/SuperCheckSheet/uploadFile', //仅为示例,非真实的接口地址
  266. filePath: tempFilePaths[0],
  267. name: 'file',
  268. formData: {
  269. 'user': 'test'
  270. },
  271. success: (uploadFileRes) => {
  272. console.log(JSON.parse(uploadFileRes.data).data );
  273. that.imgArr=that.imgArr.concat(JSON.parse(uploadFileRes.data).data) ;
  274. }
  275. }); */
  276. tempFilePaths.forEach(v => {
  277. console.log(that.$request.baseUrl + 'tuhuUploadFile');
  278. uni.uploadFile({
  279. url: that.$request.baseUrl + 'tuhuUploadFile',
  280. filePath: v,
  281. name: 'file',
  282. formData: {
  283. 'user': 'test'
  284. },
  285. success: (uploadFileRes) => {
  286. console.log(JSON.parse(uploadFileRes.data).data);
  287. that.imgArr = that.imgArr.concat(JSON.parse(
  288. uploadFileRes.data).data);
  289. console.log('imgArr--',that.imgArr);
  290. }
  291. });
  292. })
  293. /* that.$http('accompany/SuperCheckSheet/uploadFile', tempFilePaths[0], 'POST').then(res => {
  294. }) */
  295. }
  296. });
  297. },
  298. delimg(index) {
  299. this.imgArr.splice(index, 1)
  300. },
  301. requestPayment(res){
  302. var payInfo=res;
  303. //console.log(payInfo)
  304. //console.log(String(Date.now()))
  305. var that=this;
  306. uni.requestPayment({
  307. provider: 'wxpay',
  308. //timeStamp: String(Date.now()),
  309. timeStamp: payInfo.timeStamp,
  310. nonceStr: payInfo.nonceStr,
  311. package:payInfo.package,
  312. signType: payInfo.signType,
  313. paySign: payInfo.paySign,
  314. appid:payInfo.appId,
  315. success: function (res) {
  316. console.log('success:' + JSON.stringify(res));
  317. uni.showToast({
  318. title: '支付成功',
  319. icon:'none',
  320. duration: 2000
  321. });
  322. uni.navigateTo({
  323. url:'paySuccess?type=1&orderType=1'
  324. })
  325. },
  326. fail: function (err) {
  327. console.log(err)
  328. uni.showToast({
  329. title: '支付失败',
  330. icon:'none',
  331. duration: 2000
  332. });
  333. uni.navigateTo({
  334. url:'paySuccess?type=2&orderType=1'
  335. })
  336. }
  337. });
  338. },
  339. }
  340. }
  341. </script>
  342. <style scoped lang="less">
  343. .box {
  344. width: 100vw;
  345. min-height: 100vh;
  346. background: #F4F4F4;
  347. }
  348. .reasonTop{
  349. display: flex;justify-content: space-between;
  350. padding: 32rpx 42rpx;
  351. }
  352. .chahao{
  353. width: 21rpx;height: 21rpx;
  354. padding-top: 10rpx;
  355. }
  356. .tkTitle{
  357. font-weight: 500;
  358. font-size: 28rpx;
  359. color: #222222;
  360. line-height: 40rpx;
  361. }
  362. .reasonBox{
  363. position: fixed;
  364. left: 0;
  365. top: 0;
  366. height: 100vh;
  367. width: 750rpx;
  368. background: rgba(0, 0, 0, 0.5);
  369. }
  370. .reasonCont{
  371. height: 70vh;
  372. width: 750rpx;
  373. background: #FFFFFF;
  374. border-radius: 28rpx 28rpx 0rpx 0rpx;
  375. position: absolute;
  376. left: 0;
  377. bottom: 0;
  378. }
  379. .reasonContLine{
  380. display: flex;justify-content: space-between;
  381. padding: 15rpx 0;
  382. }
  383. .reasonContLineTitle{
  384. font-weight: 500;
  385. font-size: 28rpx;
  386. color: #222222;
  387. }
  388. .reasonContLineTxt{
  389. font-weight: 400;
  390. font-size: 28rpx;
  391. color: #222222;
  392. line-height: 40rpx;
  393. }
  394. .reasonContLineCk{
  395. width: 28rpx;
  396. height: 28rpx;
  397. border: 2rpx solid #9A9A9A;
  398. border-radius: 16rpx;
  399. margin-top: 6rpx;
  400. }
  401. .reasonContLineBox{
  402. padding: 0 33rpx;
  403. height: calc(70vh - 270rpx);
  404. overflow-y: scroll;
  405. }
  406. .ckLine{
  407. display: flex;color: #9A9A9A;
  408. font-size: 26rpx;
  409. }
  410. .xinghao{
  411. color: #EC0F0A;
  412. }
  413. .jtIcon{
  414. width: 12rpx;height: 20rpx;
  415. margin-top: 8rpx;
  416. margin-left: 10rpx;
  417. }
  418. .hjtIcon{
  419. width: 10rpx;height: 20rpx;
  420. margin-top: 8rpx;
  421. margin-left: 10rpx;
  422. }
  423. .tkPrice1{
  424. font-size: 26rpx;
  425. color: #222222;
  426. }
  427. .tkPrice2{
  428. font-size: 24rpx;
  429. color: #9A9A9A;
  430. padding-top: 8rpx;
  431. }
  432. .tkPriceNum{
  433. font-size: 26rpx;
  434. color: #EC0F0A;
  435. line-height: 50rpx;
  436. }
  437. .textareaNum{
  438. padding-bottom: 18rpx;
  439. }
  440. .tkSm{
  441. font-size: 26rpx;
  442. color: #222222;
  443. padding-top: 18rpx;
  444. }
  445. .tktextarea{
  446. font-size: 26rpx;
  447. background: #F7F7F7;
  448. border-radius: 14rpx;
  449. margin-top: 20rpx;
  450. width: 610rpx;padding: 24rpx;
  451. margin-bottom: 10rpx;
  452. line-height: 40rpx;
  453. }
  454. .textareaNum{
  455. font-size: 24rpx;
  456. color: #9A9A9A;
  457. display: flex;justify-content: flex-end;
  458. }
  459. .cont{
  460. padding: 20rpx 24rpx;
  461. }
  462. .itemBox{
  463. background: #FFFFFF;
  464. border-radius: 16rpx;padding: 24rpx;
  465. }
  466. .itemIMg{
  467. width: 128rpx;
  468. height: 128rpx;border-radius: 10rpx;
  469. }
  470. .flex{
  471. display: flex;
  472. }
  473. .itemRight{
  474. width: 450rpx;padding-left: 24rpx;
  475. }
  476. .itemName{
  477. font-weight: 500;
  478. font-size: 28rpx;
  479. color: #222222;
  480. line-height: 40rpx;
  481. }
  482. .buyType{
  483. padding: 0 8rpx;text-align: center;
  484. height: 32rpx;line-height: 34rpx;
  485. border-radius: 5rpx;
  486. border: 1px solid #FF0035;font-size: 22rpx;
  487. color: #FF0035;
  488. margin-top: 10rpx;
  489. }
  490. .priceBox{
  491. display: flex;justify-content: space-between;padding-top: 40rpx;
  492. }
  493. .price{
  494. font-size: 28rpx;
  495. color: #222222;
  496. line-height: 50rpx;
  497. }
  498. .itemNum{
  499. font-size: 34rpx;line-height: 50rpx;
  500. color: #686868;
  501. }
  502. .itemnotes{
  503. font-size: 24rpx;padding-top: 12rpx;
  504. color: #FFC107;
  505. }
  506. .mealBox{
  507. background: #FFFFFF;
  508. padding: 20rpx 24rpx;
  509. margin-top: 20rpx;
  510. font-size: 26rpx;
  511. color: #666666;
  512. border-radius: 16rpx;
  513. }
  514. .fwlcTitle{
  515. color: #333333;font-size: 30rpx;font-weight: 500;
  516. padding-bottom: 20rpx;
  517. }
  518. .mealTop{
  519. display: flex;
  520. justify-content: space-between;
  521. height: 72rpx;
  522. line-height: 72rpx;
  523. font-weight: 500;
  524. font-size: 26rpx;
  525. color: #222222;
  526. font-size: 26rpx;
  527. padding: 0 20rpx;
  528. }
  529. .mealNum{
  530. text-align: center;
  531. width: 120rpx;
  532. }
  533. .mealexpire{
  534. text-align: center; width: 120rpx;
  535. }
  536. .mealName{
  537. width: 460rpx;
  538. }
  539. .mealTop2{
  540. display: flex;
  541. justify-content: space-between;
  542. height: 72rpx;
  543. line-height: 72rpx;
  544. font-weight: 500;
  545. font-size: 26rpx;
  546. color: #222222;
  547. font-size: 26rpx;
  548. padding: 0 20rpx;
  549. background: #FFF6DB;
  550. }
  551. .mealXj{
  552. background: #FFFCF3;
  553. }
  554. .xjLine{
  555. display: flex;
  556. font-weight: 500;
  557. font-size: 26rpx;
  558. color: #222222;
  559. padding: 20rpx 20rpx;
  560. }
  561. .xjyd{
  562. width: 8rpx;
  563. height: 8rpx;
  564. background: #FABF1B;
  565. border-radius: 50rpx;
  566. margin-top: 12rpx;
  567. margin-right: 10rpx;
  568. }
  569. .mealMs{
  570. background: #FFFFFF;
  571. padding: 20rpx;
  572. font-weight: 400;
  573. font-size: 24rpx;
  574. color: #9A9A9A;
  575. line-height: 38rpx;
  576. }
  577. .goodsBox{
  578. padding:18rpx 24rpx;font-size: 26rpx;
  579. color: #222222;background: #FFFFFF;margin-top: 20rpx;
  580. border-radius: 16rpx;
  581. }
  582. .goodsline{
  583. justify-content: space-between;
  584. padding: 18rpx 0;
  585. }
  586. .bottom{
  587. display: flex;
  588. justify-content: space-between;
  589. width: 100%;
  590. padding:30rpx 0 10rpx 0;
  591. }
  592. .reasonBottom{
  593. position: absolute;
  594. left: 0;bottom: 0;
  595. padding: 30rpx 0;
  596. padding-bottom: constant(safe-area-inset-bottom);
  597. padding-bottom: env(safe-area-inset-bottom);
  598. width: 100%;
  599. background: #FFFFFF;
  600. box-shadow: 0rpx -2rpx 16rpx 0rpx rgba(153, 153, 153, 0.2);
  601. }
  602. .reasonBottomBtn{
  603. width: 661rpx;
  604. height: 86rpx;
  605. background: #EC0F0A;
  606. border-radius: 43rpx;
  607. line-height: 86rpx;
  608. text-align: center;
  609. font-size: 32rpx;
  610. color: #FFFFFF;
  611. margin: 0 auto;
  612. }
  613. .bottomBox{
  614. position: fixed;
  615. left: 0;bottom: 0;
  616. padding-bottom: constant(safe-area-inset-bottom);
  617. padding-bottom: env(safe-area-inset-bottom);
  618. width: 100%;
  619. background: #FFFFFF;
  620. box-shadow: 0rpx -2rpx 16rpx 0rpx rgba(153, 153, 153, 0.2);
  621. }
  622. .bottomMS{
  623. font-size: 24rpx;
  624. color: #706F77;
  625. padding-top: 20rpx;padding-left: 32rpx;
  626. }
  627. .bleft{
  628. font-weight: 500;
  629. font-size: 26rpx;
  630. color: #222222;
  631. line-height: 86rpx;
  632. padding-left: 32rpx;
  633. }
  634. .Btn{
  635. width: 467rpx;
  636. height: 86rpx;text-align: center;
  637. line-height: 86rpx;
  638. background: #FCD903;
  639. border-radius: 43rpx;
  640. font-size: 32rpx;
  641. color: #110B01;
  642. margin-right: 36rpx;
  643. }
  644. .mealBox img{
  645. width: 100%;
  646. }
  647. .mealBox image{
  648. width: 100%;
  649. }
  650. .numJsbox{
  651. display: flex;overflow: hidden;
  652. }
  653. .buyCont{
  654. position: absolute;
  655. left: 0;
  656. bottom: 0;
  657. width: 750rpx;
  658. height: 688rpx;
  659. background: #FFFFFF;
  660. border-radius: 26rpx 26rpx 0px 0px;
  661. }
  662. .buyNumBox{
  663. padding: 30rpx;
  664. padding-top: 10rpx;
  665. padding-bottom: 70rpx;
  666. }
  667. .buyContCh{
  668. position: absolute;
  669. top: 53rpx;
  670. right: 36rpx;
  671. width: 36rpx;
  672. height: 36rpx;
  673. }
  674. .goodsnum{
  675. width: 44rpx;
  676. height: 44rpx;
  677. background: #F4F5F7;
  678. line-height: 44rpx;
  679. text-align: center;
  680. font-weight: 500;
  681. color: #333333;
  682. font-size: 24rpx;
  683. margin: 0 4rpx;
  684. border-left:1px solid #dddddd;
  685. border-right:1px solid #dddddd;
  686. }
  687. .goodsnumInput{
  688. width: 44rpx;
  689. height: 44rpx;
  690. background: #FFFFFF;
  691. line-height: 44rpx;
  692. text-align: center;
  693. font-weight: 500;
  694. color: #333333;
  695. font-size: 24rpx;
  696. }
  697. .numJj{
  698. width: 44rpx;
  699. height: 44rpx;
  700. background: #ffffff;
  701. border-radius: 0px 6rpx 6rpx 0px;
  702. text-align: center;
  703. line-height: 44rpx;
  704. font-size: 32rpx;
  705. color: #999999;
  706. }
  707. .numJsbox{
  708. border: 1px solid #dddddd;
  709. border-radius: 6rpx;
  710. }
  711. .imgBox {
  712. display: flex;
  713. flex-wrap: wrap;
  714. padding-top: 15rpx;
  715. }
  716. .imgLine {
  717. position: relative;
  718. margin-right: 20.6rpx;
  719. }
  720. .img4{
  721. margin-right: 0rpx;
  722. }
  723. .itemImg {
  724. width: 150rpx;
  725. height: 150rpx;
  726. margin-bottom: 20rpx;
  727. }
  728. .delImg {
  729. width: 32rpx;
  730. height: 32rpx;
  731. position: absolute;
  732. right: 0rpx;
  733. top: 0rpx;
  734. }
  735. .gaodu{
  736. height: 200rpx;
  737. padding-bottom: constant(safe-area-inset-bottom);
  738. padding-bottom: env(safe-area-inset-bottom);
  739. }
  740. .jiekouLIne{
  741. padding-bottom: 36rpx;
  742. }
  743. .xuanzhong{
  744. color: #222222;
  745. }
  746. </style>