storeProductPackageDetails.vue 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917
  1. <template>
  2. <view class="content">
  3. <!-- 商品轮播图片 -->
  4. <view class="shop-banner" @click="showImg()">
  5. <swiper
  6. class="swiper"
  7. :indicator-dots="false"
  8. :circular="true"
  9. :autoplay="true"
  10. :interval="3000"
  11. :duration="1000"
  12. indicator-color="rgba(255, 255, 255, 0.6)"
  13. indicator-active-color="#ffffff"
  14. @change="swiperChange"
  15. >
  16. <swiper-item class="swiper-item" v-for="(item,index) in banner" :key="index">
  17. <image :src="item" mode="aspectFit"></image>
  18. </swiper-item>
  19. </swiper>
  20. <!-- 底部遮罩 -->
  21. <view class="banner-mask"></view>
  22. <!-- 数量 -->
  23. <view class="num-box">{{ activeBanner }}/{{ banner.length }}</view>
  24. </view>
  25. <!-- 详细信息 -->
  26. <view class="det-info">
  27. <view class="price-box">
  28. <view class="price">
  29. <text class="label">会员价</text>
  30. <text class="unit">¥</text>
  31. <text class="num" v-if="package!=null" >{{package.payMoney.toFixed(2)}}</text>
  32. <text class="label">零售价</text>
  33. <text class="old" v-if="package!=null" >¥{{package.money.toFixed(2)}}</text>
  34. </view>
  35. </view>
  36. <view class="name-box">
  37. {{package.title}}
  38. </view>
  39. <view class="intro">
  40. {{package.descs}}
  41. </view>
  42. </view>
  43. <!-- <view class="drug-box">
  44. <view class="title">组合套餐</view>
  45. <view class="inner">
  46. <view class="drug-list" >
  47. <view v-for="(subItem,index) in products" :key="index" class="drug-item">
  48. <view class="img-box">
  49. <image :src="subItem.image" mode="aspectFill"></image>
  50. </view>
  51. <view class="drug-info" >
  52. <view>
  53. <view class="name-box ellipsis2">
  54. {{subItem.productName}}
  55. </view>
  56. <view class="spec">{{subItem.sku}}</view>
  57. </view>
  58. <view class="num-box">
  59. <view class="price">
  60. <text class="unit">¥</text>
  61. <text class="num">{{subItem.price.toFixed(2)}}</text>
  62. </view>
  63. <view class="amount">x{{subItem.count}}</view>
  64. </view>
  65. </view>
  66. </view>
  67. </view>
  68. </view>
  69. </view> -->
  70. <!-- 图文详情 -->
  71. <view class="det-box">
  72. <view class="title">图文详情</view>
  73. <!-- <view class="inner">
  74. <view v-html="package.content" style="font-size:0" ></view>
  75. </view> -->
  76. <view v-html="package.content" ></view>
  77. </view>
  78. <!-- 底部按钮 -->
  79. <view class="btn-foot">
  80. <view class="menu-box">
  81. <view class="item" @click="goHome">
  82. <image src="https://jnlzjk-1323137866.cos.ap-chongqing.myqcloud.com/shop/images/back_home.png" mode=""></image>
  83. <text class="label">首页</text>
  84. </view>
  85. <view class="item" style="position: relative;">
  86. <image src="https://jnlzjk-1323137866.cos.ap-chongqing.myqcloud.com/shop/images/consult_small.png" mode=""></image>
  87. <text class="label">咨询</text>
  88. <button class="contact-btn" open-type="contact"></button>
  89. </view>
  90. </view>
  91. <view class="btn-box">
  92. <view class="btn buy" @click="buy">立即购买</view>
  93. </view>
  94. </view>
  95. <view class="message-box" v-if="messageShow">
  96. <view class="left">
  97. <image src="https://jnlzjk-1323137866.cos.ap-chongqing.myqcloud.com/shop/images/close24.png" mode="" @click="closeOrder()" ></image>
  98. <view class="text ellipsis">您有{{count0}}个待支付订单</view>
  99. </view>
  100. <view class="btn" @click="showOrder()">查看</view>
  101. </view>
  102. </view>
  103. </template>
  104. <script>
  105. import {getOrderCount} from '@/api/storeOrder'
  106. import {getStoreProductPackageDetails} from '@/api/storeProductPackage'
  107. export default {
  108. data() {
  109. return {
  110. count0:0,
  111. messageShow:false,
  112. banner:[],
  113. packageId:null,
  114. package:null,
  115. products:[],
  116. // 当前轮播的图片
  117. activeBanner: 1,
  118. };
  119. },
  120. onLoad(options) {
  121. if (options.hasOwnProperty('q') && options.q) {
  122. // 通过下面这步解码,可以拿到url的值
  123. const url = decodeURIComponent(options.q)
  124. this.url=url;
  125. // // 对url中携带的参数提取处理
  126. const obj = this.utils.urlToObj(url)
  127. this.packageId = obj.packageId;
  128. this.companyId = obj.companyId;
  129. this.companyUserId = obj.companyUserId;
  130. }
  131. else{
  132. this.packageId = options.packageId;
  133. this.companyId = options.companyId;
  134. this.companyUserId = options.companyUserId;
  135. }
  136. uni.showShareMenu({
  137. withShareTicket:true,
  138. //小程序的原生菜单中显示分享按钮,才能够让发送给朋友与分享到朋友圈两个按钮可以点击
  139. menus:["shareAppMessage","shareTimeline"] //不设置默认发送给朋友
  140. })
  141. },
  142. //发送给朋友
  143. onShareAppMessage(res) {
  144. return {
  145. title: this.package.title,
  146. path: `/pages_company/storeProductPackageDetails?packageId=${this.package.packageId}`+"&companyId="+this.companyId+"&companyUserId="+this.companyUserId,
  147. imageUrl: this.package.imgUrl //分享图标,路径可以是本地文件路径、代码包文件路径或者网络图片路径.支持PNG及JPG。显示图片长宽比是 5:4
  148. }
  149. },
  150. //分享到朋友圈
  151. onShareTimeline(res) {
  152. return {
  153. title: this.package.title,
  154. query:'packageId='+this.package.packageId+"&companyId="+this.companyId+"&companyUserId="+this.companyUserId,//页面参数
  155. imageUrl: this.package.imgUrl //分享图标,路径可以是本地文件路径、代码包文件路径或者网络图片路径.支持PNG及JPG。显示图片长宽比是 5:4
  156. }
  157. },
  158. onShow() {
  159. const token=uni.getStorageSync('AppToken')
  160. if(token){
  161. this.getOrderCount();
  162. }
  163. // if(this.utils.isLogin()){
  164. // }
  165. this.getStoreProductPackageDetails();
  166. },
  167. methods: {
  168. getOrderCount(){
  169. getOrderCount().then(
  170. res => {
  171. if(res.code==200){
  172. this.count0=res.count0;
  173. if(this.count0>0){
  174. this.messageShow=true;
  175. }
  176. }
  177. },
  178. rej => {}
  179. );
  180. },
  181. showOrder(){
  182. this.utils.isLogin().then(res => {
  183. if(res){
  184. uni.navigateTo({
  185. url: '/pages_user/user/storeOrder?status=0'
  186. })
  187. }
  188. })
  189. },
  190. closeOrder(){
  191. this.messageShow=false;
  192. },
  193. showImg() {
  194. //预览图片
  195. uni.previewImage({
  196. urls: this.banner,
  197. current: this.banner[0]
  198. });
  199. },
  200. getStoreProductPackageDetails(){
  201. let data = {packageId:this.packageId};
  202. getStoreProductPackageDetails(data).then(
  203. res => {
  204. if(res.code==200){
  205. this.package=res.data;
  206. console.log('详情',res.data)
  207. if(this.package.images!=null){
  208. this.banner=this.package.images.split(',')
  209. }
  210. else{
  211. this.banner=[]
  212. }
  213. this.products=JSON.parse(this.package.products);
  214. }else{
  215. uni.showToast({
  216. icon:'none',
  217. title: "请求失败",
  218. });
  219. }
  220. },
  221. rej => {}
  222. );
  223. },
  224. //swiper变化事件
  225. swiperChange(event) {
  226. this.activeBanner = event.detail.current + 1
  227. },
  228. buy() {
  229. this.utils.isLogin().then(res => {
  230. if(res){
  231. uni.navigateTo({
  232. url: '/pages_shopping/shopping/confirmPackageOrder?packageId='+this.packageId+"&companyUserId="+this.companyUserId
  233. })
  234. }
  235. })
  236. },
  237. //回到首页
  238. goHome() {
  239. uni.switchTab({
  240. url: '/pages/home/index'
  241. })
  242. },
  243. //跳转页面
  244. navgetTo(url) {
  245. this.utils.isLogin().then(res => {
  246. if(res){
  247. uni.navigateTo({
  248. url: url
  249. })
  250. }
  251. })
  252. },
  253. }
  254. }
  255. </script>
  256. <style lang="scss">
  257. .shop-banner{
  258. height: 756upx;
  259. background-color: #FFFFFF;
  260. position: relative;
  261. .swiper-item{
  262. box-sizing: border-box;
  263. }
  264. .swiper,
  265. .swiper-item,
  266. .swiper-item image{
  267. width: 100%;
  268. height: 100%;
  269. }
  270. .banner-mask{
  271. width: 100%;
  272. height: 44upx;
  273. // background: linear-gradient(0deg, rgba(0, 0, 0, 0.04), rgba(0, 0, 0, 0));
  274. // opacity: 0.8;
  275. position: absolute;
  276. left: 0;
  277. bottom: 0;
  278. z-index: 9;
  279. background-image: url(https://jnlzjk-1323137866.cos.ap-chongqing.myqcloud.com/shop/images/black_mask.png);
  280. background-size: 20upx 44upx;
  281. background-repeat: repeat-x;
  282. }
  283. .num-box{
  284. width: 80upx;
  285. height: 44upx;
  286. line-height: 44upx;
  287. text-align: center;
  288. font-size: 24upx;
  289. font-family: PingFang SC;
  290. font-weight: 500;
  291. color: #FFFFFF;
  292. background: rgba(0, 0, 0, .3);
  293. border-radius: 22upx;
  294. position: absolute;
  295. right: 30upx;
  296. bottom: 30upx;
  297. z-index: 10;
  298. }
  299. }
  300. .det-info{
  301. background: #FFFFFF;
  302. padding: 36upx 30upx 25upx;
  303. .price-box{
  304. display: flex;
  305. align-items: center;
  306. justify-content: space-between;
  307. .price{
  308. display: flex;
  309. align-items: flex-end;
  310. .label{
  311. color: #333;
  312. font-size: 28upx;
  313. font-family: PingFang SC;
  314. line-height: 1.3;
  315. margin-right: 5upx;
  316. }
  317. .unit{
  318. font-size: 28upx;
  319. font-family: PingFang SC;
  320. font-weight: bold;
  321. color: #FF6633;
  322. line-height: 1.3;
  323. }
  324. .num{
  325. font-size: 40upx;
  326. font-family: PingFang SC;
  327. font-weight: bold;
  328. color: #FF6633;
  329. margin: 0 20upx 0 10upx;
  330. line-height: 1;
  331. }
  332. .old{
  333. font-size: 28upx;
  334. font-family: PingFang SC;
  335. font-weight: 500;
  336. text-decoration: line-through;
  337. color: #BBBBBB;
  338. line-height: 1.3;
  339. }
  340. }
  341. .share-box{
  342. width: 120upx;
  343. height: 46upx;
  344. border: 1px solid #2BC7B9;
  345. border-radius: 23upx;
  346. display: flex;
  347. align-items: center;
  348. justify-content: center;
  349. position: relative;
  350. .text{
  351. font-size: 26upx;
  352. font-family: PingFang SC;
  353. font-weight: 500;
  354. color: #2BC7B9;
  355. }
  356. image{
  357. margin-left: 2rpx;
  358. width: 25upx;
  359. height: 24upx;
  360. }
  361. .share{
  362. display: inline-block;
  363. position: absolute;
  364. top: 0;
  365. left: 0;
  366. width: 100%;
  367. height: 100%rpx;
  368. opacity: 0;
  369. }
  370. }
  371. .spec{
  372. font-size: 24upx;
  373. font-family: PingFang SC;
  374. font-weight: 500;
  375. color: #999999;
  376. line-height: 36upx;
  377. }
  378. }
  379. .name-box{
  380. font-size: 32upx;
  381. font-family: PingFang SC;
  382. font-weight: bold;
  383. color: #111111;
  384. line-height: 44upx;
  385. margin-top: 32upx;
  386. .tag{
  387. display: inline-block;
  388. padding: 0 6upx;
  389. height: 30upx;
  390. background: linear-gradient(90deg, #66b2ef 0%, #2BC7B9 100%);
  391. border-radius: 4upx;
  392. margin-right: 10upx;
  393. font-size: 22upx;
  394. font-family: PingFang SC;
  395. font-weight: bold;
  396. color: #FFFFFF;
  397. line-height: 30upx;
  398. float: left;
  399. margin-top: 7upx;
  400. }
  401. }
  402. .intro{
  403. font-size: 26upx;
  404. font-family: PingFang SC;
  405. font-weight: 500;
  406. color: #999999;
  407. line-height: 36upx;
  408. padding: 18upx 0;
  409. // border-bottom: 1px solid #f7f7f7;
  410. }
  411. .safe-box{
  412. display: flex;
  413. align-items: center;
  414. padding-top: 24upx;
  415. image{
  416. width: 20upx;
  417. height: 24upx;
  418. margin-right: 20upx;
  419. }
  420. .text{
  421. font-size: 22upx;
  422. font-family: PingFang SC;
  423. font-weight: 500;
  424. color: #999999;
  425. line-height: 1;
  426. }
  427. .line{
  428. width: 1px;
  429. height: 23upx;
  430. background: #EDEEEF;
  431. margin: 0 20upx;
  432. }
  433. }
  434. }
  435. .inventor{
  436. height: 88upx;
  437. padding: 0 39upx 0 30upx;
  438. margin-top: 10upx;
  439. background: #FFFFFF;
  440. display: flex;
  441. align-items: center;
  442. justify-content: space-between;
  443. .left{
  444. display: flex;
  445. align-items: center;
  446. .head-box{
  447. margin-right: 27upx;
  448. display: flex;
  449. align-items: center;
  450. .head{
  451. width: 48upx;
  452. height: 48upx;
  453. border-radius: 50%;
  454. overflow: hidden;
  455. box-shadow: 0 0 0 1px #fff;
  456. margin-right: -10upx;
  457. image{
  458. width: 100%;
  459. height: 100%;
  460. }
  461. }
  462. }
  463. .num-box{
  464. font-size: 24upx;
  465. font-family: PingFang SC;
  466. font-weight: 500;
  467. color: #999999;
  468. .text{
  469. font-size: 24upx;
  470. font-family: PingFang SC;
  471. font-weight: 500;
  472. color: #666666;
  473. }
  474. }
  475. }
  476. .right{
  477. font-size: 24upx;
  478. font-family: PingFang SC;
  479. font-weight: 500;
  480. color: #999999;
  481. .text{
  482. font-size: 24upx;
  483. font-family: PingFang SC;
  484. font-weight: 500;
  485. color: #666666;
  486. }
  487. }
  488. }
  489. .effect{
  490. box-sizing: border-box;
  491. padding: 20upx 30upx;
  492. background: #FFFFFF;
  493. font-size: 28upx;
  494. font-family: PingFang SC;
  495. font-weight: 500;
  496. color: #666666;
  497. line-height: 1.8;
  498. margin-top: 10upx;
  499. display: flex;
  500. flex-direction: row;
  501. align-items: center;
  502. justify-content: space-between;
  503. .label{
  504. font-size: 28upx;
  505. font-family: PingFang SC;
  506. font-weight: 500;
  507. color: #111111;
  508. line-height: 1.8;
  509. }
  510. }
  511. .det-box{
  512. margin-top: 10upx;
  513. padding: 40upx 30upx 130upx 30upx;
  514. background-color: #FFFFFF;
  515. .title{
  516. font-size: 30upx;
  517. font-family: PingFang SC;
  518. font-weight: bold;
  519. color: #333333;
  520. line-height: 1;
  521. margin-bottom: 25upx;
  522. }
  523. }
  524. .btn-foot{
  525. box-sizing: border-box;
  526. width: 100%;
  527. height: 121upx;
  528. background: #FFFFFF;
  529. padding: 0 32upx 0 28upx;
  530. display: flex;
  531. align-items: center;
  532. justify-content: space-between;
  533. position: fixed;
  534. left: 0;
  535. bottom: 0;
  536. z-index: 99;
  537. .menu-box{
  538. display: flex;
  539. align-items: center;
  540. .item{
  541. display: flex;
  542. align-items: center;
  543. flex-direction: column;
  544. margin-right: 48upx;
  545. &:last-child{
  546. margin-right: 0;
  547. }
  548. image{
  549. width: 36upx;
  550. height: 36upx;
  551. margin-bottom: 10upx;
  552. }
  553. .label{
  554. font-size: 20upx;
  555. font-family: PingFang SC;
  556. font-weight: 500;
  557. color: #666666;
  558. text-align: center;
  559. }
  560. }
  561. :deep(.uni-badge--x){
  562. display: flex;
  563. align-items: center;
  564. justify-content: center;
  565. }
  566. :deep(.uni-badge){
  567. border: none;
  568. background-color: #FF3636;
  569. font-family: Roboto;
  570. }
  571. }
  572. .btn-box{
  573. display: flex;
  574. align-items: center;
  575. .btn{
  576. width: 200upx;
  577. height: 88upx;
  578. line-height: 88upx;
  579. text-align: center;
  580. border-radius: 44upx;
  581. margin-left: 20upx;
  582. font-size: 30upx;
  583. font-family: PingFang SC;
  584. font-weight: bold;
  585. color: #FFFFFF;
  586. &:first-child{
  587. margin-left: 0;
  588. }
  589. &.cart{
  590. background: #FF6633;
  591. }
  592. &.buy{
  593. background: #2BC7B9;
  594. }
  595. }
  596. }
  597. }
  598. .product-spec{
  599. .pro-info{
  600. display: flex;
  601. align-items: center;
  602. .img-box{
  603. width: 200upx;
  604. height: 200upx;
  605. background: #FFFFFF;
  606. border-radius: 16upx;
  607. overflow: hidden;
  608. margin-right: 30upx;
  609. image{
  610. width: 100%;
  611. height: 100%;
  612. }
  613. }
  614. .info-text{
  615. height: 200upx;
  616. display: flex;
  617. flex-direction: column;
  618. justify-content: space-between;
  619. .price{
  620. display: flex;
  621. align-items: flex-end;
  622. .unit{
  623. font-size: 32upx;
  624. font-family: PingFang SC;
  625. font-weight: bold;
  626. color: #FF6633;
  627. line-height: 1.2;
  628. margin-right: 10upx;
  629. }
  630. .num{
  631. font-size: 50upx;
  632. font-family: PingFang SC;
  633. font-weight: bold;
  634. color: #FF6633;
  635. line-height: 1;
  636. }
  637. }
  638. .desc-box{
  639. display: flex;
  640. flex-direction: column;
  641. padding-bottom: 9upx;
  642. .text{
  643. font-size: 26upx;
  644. font-family: PingFang SC;
  645. font-weight: 500;
  646. color: #999999;
  647. margin-top: 27upx;
  648. line-height: 1;
  649. &:first-child{
  650. margin-top: 0;
  651. }
  652. }
  653. }
  654. }
  655. }
  656. .spec-box{
  657. padding-top: 50upx;
  658. .title{
  659. font-size: 34upx;
  660. font-family: PingFang SC;
  661. font-weight: bold;
  662. color: #111111;
  663. line-height: 1;
  664. }
  665. .spec-list{
  666. display: flex;
  667. flex-wrap: wrap;
  668. margin-top: 30upx;
  669. .item{
  670. box-sizing: border-box;
  671. height: 64upx;
  672. padding: 0 30upx;
  673. line-height: 64upx;
  674. font-size: 28upx;
  675. font-family: PingFang SC;
  676. font-weight: 500;
  677. color: #111111;
  678. background: #F7F7F7;
  679. border: 1px solid #F7F7F7;
  680. border-radius: 32upx;
  681. margin-right: 20upx;
  682. margin-bottom: 30upx;
  683. &.active{
  684. background: #F1FFFE;
  685. border: 1px solid #8AD5CE;
  686. color: #2BC7B9;
  687. }
  688. }
  689. }
  690. }
  691. .price-num{
  692. display: flex;
  693. align-items: center;
  694. justify-content: space-between;
  695. margin-top: 14upx;
  696. .label{
  697. font-size: 34upx;
  698. font-family: PingFang SC;
  699. font-weight: bold;
  700. color: #111111;
  701. }
  702. .num-box{
  703. display: flex;
  704. align-items: center;
  705. .img-box{
  706. width: 60upx;
  707. height: 60upx;
  708. // border-radius: 4upx;
  709. border: 1px solid #dddddd;
  710. display: flex;
  711. align-items: center;
  712. justify-content: center;
  713. image{
  714. width: 25rpx;
  715. height: 25rpx;
  716. }
  717. }
  718. input{
  719. width: 60upx;
  720. height: 60upx;
  721. line-height: 60upx;
  722. font-size: 28upx;
  723. font-family: PingFang SC;
  724. font-weight: 500;
  725. color: #111111;
  726. // border-radius: 4upx;
  727. border-top: 1px solid #dddddd;
  728. border-bottom: 1px solid #dddddd;
  729. text-align: center;
  730. // margin: 0 16upx;
  731. }
  732. }
  733. }
  734. .sub-btn{
  735. width: 100%;
  736. height: 88upx;
  737. line-height: 88upx;
  738. text-align: center;
  739. font-size: 30upx;
  740. font-family: PingFang SC;
  741. font-weight: bold;
  742. color: #FFFFFF;
  743. background: #2BC7B9;
  744. border-radius: 44upx;
  745. margin-top: 30upx;
  746. // margin-bottom: 30upx;
  747. }
  748. }
  749. .contact-btn{
  750. display: inline-block;
  751. position: absolute;
  752. top: 0;
  753. left: 0;
  754. width: 100%;
  755. height: 100%;
  756. opacity: 0;
  757. z-index: 9999;
  758. }
  759. .drug-box{
  760. margin: 10upx 0 10upx;
  761. padding: 40upx 30upx;
  762. background-color: #FFFFFF;
  763. .drug-list{
  764. .drug-item{
  765. padding: 30upx 0;
  766. border-bottom: 1px soli #F0F0F0;
  767. display: flex;
  768. align-items: center;
  769. .img-box{
  770. width: 160upx;
  771. height: 160upx;
  772. margin-right: 30upx;
  773. flex-shrink: 0;
  774. image{
  775. width: 100%;
  776. height: 100%;
  777. }
  778. }
  779. .drug-info{
  780. width: calc(100% - 190upx);
  781. height: 160upx;
  782. display: flex;
  783. flex-direction: column;
  784. justify-content: space-between;
  785. .name-box{
  786. font-size: 28upx;
  787. font-family: PingFang SC;
  788. font-weight: 500;
  789. color: #111111;
  790. line-height: 40upx;
  791. .tag{
  792. display: inline-block;
  793. padding: 0 6upx;
  794. height: 30upx;
  795. background: linear-gradient(90deg, #66b2ef 0%, #2BC7B9 100%);
  796. border-radius: 4upx;
  797. margin-right: 10upx;
  798. font-size: 22upx;
  799. font-family: PingFang SC;
  800. font-weight: bold;
  801. color: #FFFFFF;
  802. line-height: 30upx;
  803. float: left;
  804. margin-top: 7upx;
  805. }
  806. }
  807. .spec{
  808. font-size: 24upx;
  809. font-family: PingFang SC;
  810. font-weight: 500;
  811. color: #999999;
  812. line-height: 1;
  813. margin-top: 10upx;
  814. }
  815. .num-box{
  816. display: flex;
  817. align-items: center;
  818. justify-content: space-between;
  819. .price{
  820. display: flex;
  821. align-items: flex-end;
  822. .unit{
  823. font-size: 24upx;
  824. font-family: PingFang SC;
  825. font-weight: 500;
  826. color: #111111;
  827. line-height: 1.2;
  828. margin-right: 4upx;
  829. }
  830. .num{
  831. font-size: 32upx;
  832. font-family: PingFang SC;
  833. font-weight: 500;
  834. color: #111111;
  835. line-height: 1;
  836. }
  837. }
  838. .amount{
  839. font-size: 24upx;
  840. font-family: PingFang SC;
  841. font-weight: 500;
  842. color: #999999;
  843. line-height: 1;
  844. }
  845. }
  846. }
  847. }
  848. }
  849. }
  850. .message-box{
  851. box-sizing: border-box;
  852. width: 693upx;
  853. height: 84upx;
  854. background: #F3FFFD;
  855. border: 1px solid #C7E9E5;
  856. box-shadow: 0px 4upx 12upx 0px rgba(90, 203, 138, 0.16);
  857. border-radius: 16upx;
  858. position: fixed;
  859. left: 50%;
  860. transform: translateX(-50%);
  861. bottom: 128upx;
  862. z-index: 99;
  863. display: flex;
  864. align-items: center;
  865. justify-content: space-between;
  866. padding: 0 20upx 0 30upx;
  867. .left{
  868. width: 80%;
  869. display: flex;
  870. align-items: center;
  871. image{
  872. width: 24upx;
  873. height: 24upx;
  874. margin-right: 18upx;
  875. }
  876. .text{
  877. width: 90%;
  878. font-size: 28upx;
  879. font-family: PingFang SC;
  880. font-weight: 500;
  881. color: #2BC7B9;
  882. }
  883. }
  884. .btn{
  885. width: 100upx;
  886. height: 48upx;
  887. line-height: 48upx;
  888. text-align: center;
  889. font-size: 24upx;
  890. font-family: PingFang SC;
  891. font-weight: 500;
  892. color: #FFFFFF;
  893. border: 1px solid #D2E6FF;
  894. background: linear-gradient(135deg, #66b2ef 0%, #2BC7B9 100%);
  895. border-radius: 24upx;
  896. margin-left: 30upx;
  897. }
  898. }
  899. </style>