Browse Source

更新代码

puyao 1 week ago
parent
commit
91e43ab04a

+ 16 - 2
api/doc.js

@@ -41,5 +41,19 @@ let request = new Request().http
  export function addDocOrder(data) {
  	return request('/app/doc/addDocOrder',data,'POST','application/json;charset=UTF-8');
  }
- 
- 
+ //获取倍力之家分类列表
+ export function getbeilihometype(data) {
+ 	return request('/app/home/article/getCategory',data,'GET','application/json;charset=UTF-8');
+ }
+ //获取倍力之家文章列表
+ export function getbeilihomelist(data) {
+ 	return request('/app/home/article/get',data,'GET','application/json;charset=UTF-8');
+ }
+ //获取倍力之家文章详情
+ export function getbeilidetail(data) {
+ 	return request('/app/home/article/details',data,'GET','application/json;charset=UTF-8');
+ }
+ //获取倍力之家文章阅读记录
+ export function getbeilistudy(data) {
+ 	return request('/app/home/article/addRecord',data,'GET','application/json;charset=UTF-8');
+ }

+ 8 - 0
assets/css/commonTheme.css

@@ -96,6 +96,14 @@
 	width: 100%;
 	-webkit-line-clamp: 1;
 }
+.text-ellipsis {
+  display: -webkit-box;          /* 关键属性 */
+  -webkit-box-orient: vertical;  /* 排列方向 */
+  -webkit-line-clamp: 2;         /* 显示行数 */
+  overflow: hidden;              /* 超出隐藏 */
+  text-overflow: ellipsis;       /* 超出显示省略号 */
+  word-break: break-all;         /* 允许单词断行 */
+}
 
 .lines-2 {
 	-webkit-line-clamp: 2 !important;

BIN
beiliyoucrm_user_app.zip


+ 1 - 1
common/request.js

@@ -3,7 +3,7 @@ export default class Request {
 	http(router, data = {}, method,contentType) {
 		let that = this;
 		// let path = 'http://localhost:7014';
-		// let path = 'http://192.168.10.158:7014';
+		// let path = 'http://192.168.10.131:7014';
 		let path = 'https://userapp.beliyostore.com'; 
 		// let path = "http://d7zwsx.natappfree.cc"
 		uni.setStorageSync('requestPath',path)

+ 16 - 6
pages.json

@@ -500,12 +500,7 @@
 				    "path" : "index/doctorArticleList",
 				    "style" :                                                                                    
 				    {
-				        "navigationBarTitleText": "",
-						"enablePullDownRefresh": false,
-						"navigationStyle": "custom",
-						"app-plus": {
-							"titleNView": false
-						}
+				        "navigationBarTitleText": "养生讲堂"
 				    }
 				},
 				{
@@ -1154,6 +1149,21 @@
 				 	{
 				 		"navigationBarTitleText" : "积分兑换"
 				 	}
+				 },
+				 {
+				 	"path" : "store/beiliyouHome",
+				 	"style" : 
+				 	{
+				 		"navigationBarTitleText" : "倍力之家",
+						"enablePullDownRefresh": false
+				 	}
+				 },
+				 {
+				 	"path" : "store/guideDetail",
+				 	"style" : 
+				 	{
+				 		"navigationBarTitleText" : ""
+				 	}
 				 }
 			]
 		},

+ 11 - 12
pages/enterprise/enterprise.vue

@@ -1,13 +1,16 @@
 <template>
 	<view class="column" style="height: 100%;">
 		<view class="top-content ">
-			<view class="status_bar" :style="{height: statusBarHeight}"></view>
+			<view class="status_bar bgf" :style="{height: statusBarHeight}"></view>
 			<!-- 这里是状态栏 -->
 			<view class="top-title">企业理念</view>
 		</view>
 		<view class="flex-1 scrolly ">
-			<view class="imgbox">
-				<image :src="enterpriseimg[0]" mode="widthFix"></image>
+			
+			<view class="imgbox column">
+				<image :src="enterpriseimg[1]"  mode="widthFix"></image>
+				<!-- <image :src="enterpriseimg[2]"  mode="widthFix"></image>
+				<image :src="enterpriseimg[1]"  mode="widthFix"></image> -->
 			</view>
 			<view class="p20 ">
 				<video id="myVideo" :src='enterpriseurl'
@@ -15,13 +18,6 @@
 				vslide-gesture-in-fullscreen='true' :muted='muted' loop='true'
 				@error="videoErrorCallback"  enable-danmu  controls  autoplay="true"
 				class="videotop"></video>
-				<!-- <video class="myVideo" id="myVideo" :src="enterpriseurl"
-				                  @error="videoErrorCallback"   controls></video> -->
-			</view>
-			<view class="imgbox column">
-				<image :src="enterpriseimg[3]"  mode="widthFix"></image>
-				<image :src="enterpriseimg[2]"  mode="widthFix"></image>
-				<image :src="enterpriseimg[1]"  mode="widthFix"></image>
 			</view>
 		</view>
 		<!-- <tabbar :actindex="1"></tabbar> -->
@@ -57,8 +53,8 @@
 					this.enterpriseimg=res.data.images
 					const url=this.enterpriseimg.split(',')
 					this.enterpriseimg=url
-					uni.setStorageSync('enterpriseurl',this.enterpriseurl)
-					console.log(res)
+					// uni.setStorageSync('enterpriseurl',this.enterpriseurl)
+					console.log(this.enterpriseimg)
 				})
 			},
 			videoErrorCallback: function(e) {
@@ -69,6 +65,9 @@
 </script>
 
 <style lang="scss" scoped>
+	page{
+		background-color: #FFFFFF;
+	}
 .top-content {
 	width: 100%;
 	z-index: 10;

+ 8 - 7
pages/home/index.vue

@@ -63,15 +63,15 @@
 						:circular="true"
 						:interval="3000" 
 						@change='indexswiper'
-						indicator-color="rgba(255, 255, 255, 0.6)"
-						indicator-active-color="#ffffff">
+						indicator-color="rgba(138, 138, 138, 0.6)"
+						indicator-active-color="#666666">
 						<swiper-item class="swiper-item" v-for="(item,index) in advList" :key="index" @click="handleAdvClick(item)">
 							<video id="myVideo" :src='item.imageUrl'  
 							show-mute-btn='true' @fullscreenchange='changvideo'
 							vslide-gesture-in-fullscreen='true' :muted='muted'  loop='true'
-							 enable-danmu controls  autoplay="true" object-fit='contain'
+							 enable-danmu controls  autoplay="true" object-fit="cover"
 							class="videotop" v-show="item.type == 'video'"></video> 
-							<image :src="item.imageUrl" mode="" v-show="item.type == 'image'" ></image>
+							<image :src="item.imageUrl" mode="scaleToFill" v-show="item.type == 'image'" ></image>
 						</swiper-item>
 					</swiper>
 				</view>
@@ -97,7 +97,7 @@
 					<!-- <image src="../../static/images/doctor.png" mode=""></image> -->
 				</view>
 			</view>
-			<view class="item " @click="goenper('/pages/enterprise/enterprise')">
+			<view class="item " @click="navTo('/pages_index/index/doctorArticleList?cateId=7&title=智能生产线')">
 				<image class="bg-img radius16" src="https://beiliyo-2025.obs.cn-north-4.myhuaweicloud.com/fs/20250115/1736956595007.png" mode=""></image>
 				<view class="inner">
 					<text class="title" style="color: #3390C5;">智能生产线</text>
@@ -130,7 +130,8 @@
 					</view>
 					<scroll-view :scroll-x="true" style="white-space: nowrap;">
 					<view class="article-box"  >
-						<view class="article" @click="navTo('/pages_index/index/doctorArticleDetails?articleId='+item.articleId)"  v-for="(item,index) in doctocArticles" :key="index">
+						<view class="article" @click="navTo('/pages_index/index/doctorArticleDetails?articleId='+item.articleId)"
+						  v-for="(item,index) in doctocArticles" :key="index">
 							<view class="image-box">
 								<image mode="aspectFill" :src="item.imageUrl"></image>
 								<view class="views">
@@ -1184,7 +1185,7 @@
 <style lang="scss">
 	.videotop{
 		width: 100%;
-		height: 300rpx;
+		height: 360rpx;
 	}
 	.fixed-top-box{
 		width: 100%;

+ 6 - 1
pages/home/vipBenefit.vue

@@ -21,7 +21,7 @@
 			<image src="https://beiliyo-2025.obs.cn-north-4.myhuaweicloud.com/fs/20250115/1736927987564.jpg" style="width: 100%;" 
 			mode="widthFix"></image>
 		</view>
-		<view class="comedetail">
+		<view class="comedetail" @click="nato('/pages_index/index/doctorArticleList?cateId=6&title=诚信之旅')">
 			回顾往年精彩瞬间
 		</view>
 	</view>
@@ -50,6 +50,11 @@
 			},
 			videoErrorCallback(){
 				
+			},
+			nato(url){
+				uni.navigateTo({
+					url:url
+				})
 			}
 		}
 	}

+ 2 - 2
pages/shopping/confirmOrder.vue

@@ -59,7 +59,7 @@
 				</view>
 			</view>
 			<!-- 积分 -->
-			<view class="points">
+			<!-- <view class="points">
 				<view class="left">
 					<image src="../../static/images/points.png" mode=""></image>
 					<text class="text">可用积分</text>
@@ -68,7 +68,7 @@
 					<text class="text">{{price.usedIntegral}}积分</text>
 					<evan-switch @change="integralChange" v-model="checked" activeColor="#2BC7B9" inactiveColor="rgba(0, 0, 0, 0.1)"></evan-switch>
 				</view>
-			</view>
+			</view> -->
 			<view class="points" @click="openCoupon()">
 				<view class="left">
 					<text class="text">优惠券</text>

+ 9 - 7
pages/shopping/index.vue

@@ -20,7 +20,7 @@
 			</view>
 			<view class="medic">
 				<!-- 轮播图 -->
-				<view class="banner-box">
+				<!-- <view class="banner-box">
 					<swiper class="swiper" :indicator-dots="true" :circular="true" :autoplay="true" :interval="3000"
 						:duration="1000" indicator-color="rgba(255, 255, 255, 0.6)" indicator-active-color="#ffffff">
 						<swiper-item class="swiper-item" v-for="(item,index) in advs" :key="index"
@@ -28,7 +28,7 @@
 							<image :src="item.imageUrl" mode=""></image>
 						</swiper-item>
 					</swiper>
-				</view>
+				</view> -->
 				<!-- 商品列表 -->
 				<view class="medic-list">
 					<!-- <view class="item" v-for="(item,index) in subCates" :key="index">
@@ -260,7 +260,8 @@
 			// 查看商品详情
 			showProductList(item) {
 				uni.navigateTo({
-					url: './productList?cateId=' + item.cateId + "&pid=" + 0
+					// url: './productList?cateId=' + item.cateId + "&pid=" + 0
+					url: '/pages/shopping/productDetails?productId=' + item.productId
 				})
 			},
 			goSearch(e) {
@@ -393,7 +394,8 @@
 					box-sizing: border-box;
 					padding: 30upx 0;
 					overflow-y: auto;
-					height: calc(100% - 220upx);
+					// height: calc(100% - 100upx);
+					height: 100%;
 					position: relative;
 					// .item{
 					// 	.title{
@@ -411,13 +413,13 @@
 						flex-wrap: wrap;
 
 						.definite {
-							width: calc(33% - 20upx);
+							width: calc(50% - 30upx);
 							margin-right: 30upx;
 							margin-bottom: 30upx;
 
 							.img-box {
 								width: 100%;
-								height: 144upx;
+								height: 220upx;
 								background: #F5F5F5;
 								border-radius: 8upx;
 								overflow: hidden;
@@ -439,7 +441,7 @@
 								text-align: center;
 							}
 
-							&:nth-child(3n) {
+							&:nth-child(2n) {
 								margin-right: 0;
 							}
 						}

+ 8 - 2
pages_index/index/doctorArticleDetails.vue

@@ -13,8 +13,8 @@
 				<view class="time">{{item.createTime}}</view>
 			</view>
 			<view class="video"  v-if="item.videoUrl!=null">
-				<video class="myVideo" id="myVideo" :src="item.videoUrl"
-				                  @error="videoErrorCallback"   controls></video>
+				<video :class="item.videoType==1?'VerticalVideo':'horizontalVideo'" id="myVideo" :src="item.videoUrl" object-fit='cover'
+				@error="videoErrorCallback"   controls></video>
 			</view>
 			<!-- 正文 -->
 			<view class="full-text"  >
@@ -205,6 +205,12 @@
 			display: flex;
 			align-items: center;
 			justify-content: center;
+			.horizontalVideo{
+				height: 1200rpx;
+			}
+			.VerticalVideo{
+				height: 400rpx;
+			}
 			video{
 				width: 100%;
 			}

+ 12 - 14
pages_index/index/doctorArticleList.vue

@@ -1,21 +1,15 @@
 <template>
 	<view class="column " style="height: calc(100% - 300rpx);">
-		  <u-navbar
-			:title="toptitle"
-			:autoBack="true"
-		>
-		</u-navbar>
 		<view class="top-content flex-1" >
 			<!-- 搜索框 -->
-			<view class="h170"></view>
 			<view class="search-cont">
 				<view class="inner">
 					<image class="icon-search" src="/static/images/search.png" mode=""></image>
 					<input type="text" v-model="keyword" placeholder="输入关键字搜索" confirm-type="search" @confirm="doSearch" placeholder-style="font-size:28rpx;color:#BBBBBB;font-family: PingFang SC;" />
 				</view>
 			</view>
-			<view class="cate-list" v-if="showcate">
-				<!-- 关键字列表 -->
+			<!-- <view class="cate-list" v-if="showcate">
+				关键字列表
 				<scroll-view   scroll-x="true" >
 					<view class="inner">
 						<view v-for="(item,index) in cateOptions" :key="index" :class="cateId == item.dictValue?'item active':'item'" @click="choseCate(item)">
@@ -23,9 +17,10 @@
 						</view>
 					</view>
 				</scroll-view>
-			</view>
+			</view> -->
 		</view>
-		<mescroll-body ref="mescrollRef" @init="mescrollInit" @down="downCallback" @up="upCallback" :down="downOption" :up="upOption">
+		<mescroll-body ref="mescrollRef" top="92rpx"
+		 @init="mescrollInit" @down="downCallback" @up="upCallback" :down="downOption" :up="upOption">
 			<view class="article-list">
 				<view class="item" v-for="(item,index) in dataList" :key="index" @click="showDetail(item)">
 					<view class="left">
@@ -34,7 +29,7 @@
 							<view class="readers">
 								<view class="head-box"  >
 									<view class="head"  >
-										<image class="eye" mode="aspectFill"  src="https://qinggetai.oss-rg-china-mainland.aliyuncs.com/qgt/20240511/e7668e973cb44f1d8d7bf749c827f814.jpg" ></image> 
+										<image class="eye" mode="aspectFill"  src="https://beiliyo-2025.obs.cn-north-4.myhuaweicloud.com/fs/20250115/1736944490230.png" ></image> 
 									</view>
 								</view>
 								<view class="readings">
@@ -68,7 +63,6 @@
 				cateId:0,
 				keyword: '',
 				mescroll:null,
-				toptitle:'',
 				downOption: {   //下拉刷新
 				 	use:true,
 					auto: false // 不自动加载 (mixin已处理第一个tab触发downCallback)
@@ -95,7 +89,11 @@
 			this.getDictByKey("sys_doctor_article_cate");
 		},
 		onLoad(option) {
-			this.toptitle=option.title
+			if (option.title) {
+			    uni.setNavigationBarTitle({
+			      title: option.title
+			    });
+			  }
 			if(option.cateId){
 				this.showcate=false
 				this.cateId=option.cateId
@@ -178,7 +176,7 @@
 <style lang="scss">
 	.top-content{
 		width: 100%;
-		// position: fixed;
+		position: fixed;
 		top:0;
 		left: 0;
 		z-index: 10;

+ 8 - 1
pages_index/index/questionsDetails.vue

@@ -14,7 +14,8 @@
 			</view>
 			<!-- 正文 -->
 			<view class="full-text">
-				<view v-html="item.answers"></view>
+				<!-- <view v-html="item.answers"></view> -->
+				<view class="pre-style">{{item.answers}}</view>
 			</view>
 		</view>
 		 
@@ -82,6 +83,12 @@
 	page{
 		height: 100%;
 	}
+	.pre-style {
+	  font-family: inherit; /* 继承字体 */
+	  white-space: pre-wrap; /* 允许自动换行 */
+	  background: #f5f5f5;
+	  padding: 10px;
+	}
 	.content{
 		height: 100%;
 		display: flex;

+ 8 - 0
pages_index/index/questionsList.vue

@@ -75,6 +75,14 @@
 				dataList: []
 			};
 		},
+		onLoad(option) {
+			console.log(option)
+			if (option.title) {
+			    uni.setNavigationBarTitle({
+			      title: option.title
+			    });
+			  }
+		},
 		onShow() {
 			this.getDictByKey("sys_questions_type");
 		},

+ 2 - 2
pages_shopping/shopping/confirmCreateOrder.vue

@@ -59,7 +59,7 @@
 				</view>
 			</view>
 			<!-- 积分 -->
-			<view class="points">
+			<!-- <view class="points">
 				<view class="left">
 					<image src="@/static/images/points.png" mode=""></image>
 					<text class="text">可用积分</text>
@@ -68,7 +68,7 @@
 					<text class="text">{{price.usedIntegral}}积分</text>
 					<evan-switch @change="integralChange" v-model="checked" activeColor="#2BC7B9" inactiveColor="rgba(0, 0, 0, 0.1)"></evan-switch>
 				</view>
-			</view>
+			</view> -->
 			<view class="points" @click="openCoupon()">
 				<view class="left">
 					<text class="text">优惠券</text>

+ 313 - 0
pages_shopping/store/beiliyouHome.vue

@@ -0,0 +1,313 @@
+<template>
+	<view class="column " style="height: 100vh;" >
+		<view class="top-content" >
+			<!-- 搜索框 -->
+			<view class="search-cont">
+				<view class="inner">
+					<image class="icon-search" src="/static/images/search.png" mode=""></image>
+					<input type="text" v-model="keyword" placeholder="输入关键字搜索" confirm-type="search"
+					 @confirm="doSearch" placeholder-style="font-size:28rpx;color:#BBBBBB;font-family: PingFang SC;" />
+				</view>
+			</view>
+		</view>
+		<view class="bgf topguide" >
+			<view class=" bold ml30 color3">以往会刊</view>
+			 <scroll-view 
+			      scroll-x 
+				  :refresher-enabled="true"
+			      class="scroll-container"
+			      @scrolltolower="loadMore" 
+			      :scroll-left="scrollLeft"
+			    >
+			      <!-- 横向内容列表 -->
+			      <view class="item-list">
+			        <view  v-for="(item, index) in guidelisttype"  :key="index" class="item"
+					@click="selguide(item.categoryId)" :class="{ 'active': selectedIndex === item.categoryId }">
+						<view class="image-box ">
+							<image :src="item.imageUrl" mode="aspectFill" ></image>
+							<view class="fs28 mt10">{{item.categoryName}}</view>
+							<view class="fs24 " style="color: #848484;font-weight: normal;"></view>
+						</view>
+			        </view>
+			        <!-- 加载状态提示 -->
+					<view @click="loadMore" class=" color9 fs24">{{statusA?"点击加载更多":"没有更多"}}</view>
+			      </view>
+			    </scroll-view>
+		</view>
+		<view class="ml30 mt30 bold color3 ">精选文章</view>
+		<view style="flex: 1; overflow: hidden;" class="plr30 ptb20" >
+			<scroll-view scroll-y="true"  :refresher-enabled="isEnabled" style="height: 100%"
+				:refresher-triggered="triggered" refresher-background="rgba(0,0,0,0)"
+				@refresherrefresh="pullDownRefresh" @refresherrestore="triggered = false"
+				:upper-threshold="100" :lower-threshold="40" @refresherabort="triggered = false"
+				@scrolltolower="reachBottom">
+				<view class="bgf guideitem mt60 " v-for='(item,index) in guidelist' :key="index" @click="toguide(item)">
+					<image :src="item.imageUrl"
+					mode="aspectFill"></image>
+					<view class="column justify-between ptb30 mr30" 
+					style="height: calc(100% - 60rpx);width: calc(55% - 30rpx);float: right;">
+						<view>
+							<view>{{item.title}}</view>
+							<view class="color6 fs28 text-ellipsis mt10">{{item.description?item.description:''}}</view>
+						</view>
+						<view class="justify-between align-center">
+							<view class="justify-start align-center">
+								<u-icon name="eye" color="#888" size="18"></u-icon>
+								<view class="fs24 ">{{item.views}}</view>
+							</view>
+							<view class="u-border fs24 color3 ptb6 plr30 radius8">
+								点击阅读
+							</view>
+						</view>
+					</view>
+				</view>
+				<u-loadmore :status="status" />
+			</scroll-view>
+		</view>
+	</view>
+</template>
+
+<script>
+	import {getbeilihometype,getbeilihomelist} from '@/api/doc.js'
+	export default {
+		data() {
+			return {
+				id:0,
+				keyword:'',//搜索关键词
+				guidelisttype:[],
+				guidelist:[],
+				selectedIndex:'',
+				pageNum:1,
+				pageSize: 5,
+				triggered: false,
+				isEnabled:true,
+				status: 'nomore',
+				// 分类分页
+				pageNums:1,
+				pageSizes:5,
+				statusA:false,
+			}
+		},
+		onLoad(option) {
+			console.log(option)
+			if (option.title) {
+			    uni.setNavigationBarTitle({
+			      title: option.title
+			    });
+			  }
+			  this.getclassification()
+		},
+		methods: {
+			loadMore() {
+				if (this.statusA) {
+					this.pageNums++
+					uni.showNavigationBarLoading()
+					setTimeout(() => {
+						this.getclassification() //触底  不穿执行else
+						uni.hideNavigationBarLoading()
+					}, 200);
+				}
+			},
+			pullDownRefresh() {
+				// 下拉
+				this.triggered = true; //下拉了状态为true
+				console.log(123)
+				setTimeout(() => {
+					this.triggered = false;
+					uni.stopPullDownRefresh()
+					this.pageNum = 1;
+					this.getguideList('refresh') //触底  不穿执行else
+				}, 1000)
+			},
+			reachBottom() {
+				// status这个是加载状态
+				console.log(123)
+				if (this.status === 'loadmore') {
+					this.status = 'loading'
+					uni.showNavigationBarLoading()
+					setTimeout(() => {
+						this.pageNum++
+						this.getguideList() //触底  不穿执行else
+						uni.hideNavigationBarLoading()
+					}, 1000);
+				}
+			},
+			toguide(item){
+				uni.navigateTo({
+					url:'/pages_shopping/store/guideDetail?title='+item.title+'&id='+item.articleId
+				})
+			},
+			doSearch(e){
+				console.log(e)
+				this.keyword=e.detail.value
+			},
+			selguide(id){
+				this.selectedIndex=id
+				this.guidelist=[]
+				this.getguideList()
+			},
+			getclassification(){
+				uni.showLoading({
+					title: "加载中..."
+				})
+				const data={
+					pageNum:this.pageNums,
+					pageSize:this.pageSizes,
+				}
+				getbeilihometype(data).then(res=>{
+					if(res.code==200){
+						uni.hideLoading()
+						if (res.data.isLastPage) {
+							this.guidelisttype = [...this.guidelisttype, ...res.data.list]
+						  } else {
+							  this.guidelisttype = res.data.list
+							  this.selectedIndex=this.guidelisttype[0].categoryId
+						  }
+						  if ( res.data.isLastPage) {
+						  	this.statusA = false
+						  } else {
+						  	this.statusA = true
+						  }
+						  this.getguideList()
+					}
+				})
+			},
+			getguideList(type){
+				// uni.showLoading({
+				// 	title: "加载中..."
+				// })
+				const data={
+					categoryId:this.selectedIndex,
+					pageNum:this.pageNum,
+					pageSize:this.pageSize
+				}
+				getbeilihomelist(data).then(res=>{
+					if(res.code==200){
+						// uni.hideLoading()
+						if (type == 'refresh') {
+							this.guidelist = res.data.list
+						} else {
+							// 加载更多 当前页和下一页合并
+							this.guidelist = [...this.guidelist, ...res.data.list]
+						}
+						if ( res.data.isLastPage) {
+							this.status = 'nomore'
+						} else {
+							this.status = 'loadmore'
+						}
+					}
+				})
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.topguide{
+		// position: fixed;
+		z-index: 9;
+		width: 100%;
+	}
+.scroll-container{
+	width: calc(100% - 40rpx);
+	white-space: nowrap;
+	background: #fff;
+	padding: 10rpx 20rpx;
+	z-index: 101;
+}
+.item-list {
+  padding: 20rpx 0rpx;
+  overflow-x: auto;
+  box-sizing: border-box;
+  display: flex;
+  align-items: center;
+  justify-content: flex-start;
+}
+/* 选中时的放大效果 */
+.item.active {
+  transform: scale(1.15); /* 放大1.1倍 */
+  margin-left: 20rpx;
+  margin-right: 20rpx;
+  font-weight: bold;
+  border-radius: 20rpx;
+}
+.item {
+  width: 300rpx;
+  display: flex;
+  flex-direction: column;
+  align-items: flex-start;
+  justify-content: flex-start;
+  padding-bottom: 10rpx;
+   transition: all 0.35s ease; /* 添加过渡动画 */
+  .image-box{
+  	width: 210rpx;
+  	height: 340rpx;
+	display: flex;
+	flex-direction: column;
+	image{
+		width: 190rpx;
+		height:340rpx;
+		margin: 0 auto;
+	}
+  }
+}
+
+.loading-status {
+  width: 200rpx;
+  height: 200rpx;
+  display: inline-flex;
+  align-items: center;
+  justify-content: center;
+  color: #999;
+  flex-shrink: 0;
+}
+
+.top-content{
+	width: 100%;
+	// position: fixed;
+	top:0;
+	left: 0;
+	z-index: 10;
+}
+.search-cont{
+	padding: 16upx 30upx;
+	background-color: #FFFFFF;
+	.inner{
+		box-sizing: border-box;
+		width: 100%;
+		height: 72upx;
+		background: #F7F7F7;
+		border-radius: 36upx;
+		display: flex;
+		align-items: center;
+		padding: 0 30upx;
+		.icon-search{
+			width: 28upx;
+			height: 28upx;
+			margin-right: 20upx;
+		}
+		input{
+			height: 60upx;
+			line-height: 60upx;
+			flex: 1;
+		}
+	}
+}
+.guideitem{
+	border-radius: 10rpx;
+	box-shadow: 0px 0px 5px 2px rgba(0,0,0,0.05);
+	padding: 20rpx;
+	height: 300rpx;
+	width: calc(100% -40rpx);
+	position: relative;
+	image{
+		width: 250rpx;
+		height:350rpx;
+		border-radius: 8rpx;
+		flex-shrink: 0; /* 禁止缩放 */
+		position: absolute;
+		top: -40rpx;
+		box-shadow: 0px 0px 5px 2px rgba(0,0,0,0.05);
+	}
+}
+</style>

+ 111 - 0
pages_shopping/store/guideDetail.vue

@@ -0,0 +1,111 @@
+<template>
+	<view style="column hb">
+		<view class="detail-cont">
+			<view class="title">{{item.title}}</view>
+			<view class="info">
+				<view class="reads">阅读数:{{item.views?item.views:''}}</view>
+				<view class="time">{{item.publishTime?item.publishTime:""}}</view>
+			</view>
+			<view class="video"  v-if="item.videoUrl!=null">
+				<video class="VerticalVideo" id="myVideo" :src="item.videoUrl" object-fit='cover'
+				@error="videoErrorCallback"   controls></video>
+			</view>
+			<!-- 正文 -->
+			<view class="full-text"  >
+				<view v-html="item.content"></view>
+			</view>
+			
+		</view>
+	</view>
+</template>
+
+<script>
+	import {getbeilidetail} from '@/api/doc.js'
+	export default {
+		data() {
+			return {
+				id:"",
+				item:{}
+			}
+		},
+		onLoad(option) {
+			if (option.title) {
+			    uni.setNavigationBarTitle({
+			      title: option.title
+			    });
+			  }
+			  this.id=option.id
+		},
+		mounted() {
+			this.getclassification()
+		},
+		methods: {
+			getclassification(){
+				uni.showLoading({
+					title: "加载中..."
+				})
+				const data={
+					articleId:this.id
+				}
+				getbeilidetail(data).then(res=>{
+					if(res.code==200){
+						uni.hideLoading()
+						this.item=res.data
+					}
+				})
+			},
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+.detail-cont{
+		width: calc(100% - 80rpx) ;
+		flex: 1;
+		padding: 40upx;
+		overflow-y: auto;
+		.title{
+			font-size: 40upx;
+			font-family: PingFang SC;
+			// font-weight: bold;
+			color: #222222;
+			line-height: 70upx;
+		}
+		.info{
+			display: flex;
+			align-items: center;
+			font-size: 24upx;
+			font-family: PingFang SC;
+			font-weight: 500;
+			color: #999999;
+			line-height: 48upx;
+			margin: 23upx 0;
+			.reads{
+				margin-right: 30upx;
+			}
+		}
+		.full-text{
+			width: 100%;
+			font-size: 36upx;
+			font-family: PingFang SC;
+			// font-weight: 500;
+			color: #222222;
+			line-height: 60upx;
+		}
+		.video{
+			width: 100%;
+			display: flex;
+			align-items: center;
+			justify-content: center;
+			.horizontalVideo{
+				height: 1200rpx;
+			}
+			.VerticalVideo{
+				height: 400rpx;
+			}
+			video{
+				width: 100%;
+			}
+		}
+	}
+</style>

+ 0 - 1
pages_shopping/store/integralOrderDetails.vue

@@ -5,7 +5,6 @@
 			<view class="inner">			
 				<!-- 订单状态 -->
 				<view class="order-status">
-				 
 					<!-- 待发货 -->
 					<view v-if="order.status == 1" class="inner">
 						<view class="img-box">

+ 1 - 3
pages_shopping/store/integralOrderList.vue

@@ -158,10 +158,8 @@
 					//设置列表数据
 					if (page.num == 1) {
 						that.dataList = res.data.list; 
-						
 					} else {
 						that.dataList = that.dataList.concat(res.data.list);
-						 
 					}
 					that.mescroll.endBySize(res.data.list.length, res.data.total);
 					
@@ -191,7 +189,7 @@
 <style scoped lang="scss">
 .top-fixed{
 		width: 100%;
-		position: absolute;
+		position: fixed;
 		top: 0;
 		left: 0;
 		z-index: 10;