zpj 2 роки тому
батько
коміт
c0b1a763f8

+ 4 - 2
api/category.js

@@ -5,5 +5,7 @@ const newsUrl = '/api/category/'
 export const getTakeaway = (data) => request(newsUrl + 'takeaway', 'post', { ...data },false)
 // 票务分类
 export const getTicket = (data) => request(newsUrl + 'ticket', 'post', { ...data },false)
-// 校友圈话题
-export const getTopic = (data) => request(newsUrl + 'topic', 'post', { ...data },false)
+// 校友圈话题分类
+export const getTopic = (data) => request(newsUrl + 'topic', 'post', { ...data },false)
+// 干洗分类
+export const getLaundry = (data) => request(newsUrl + 'laundry', 'post', { ...data },false)

+ 4 - 1
api/common.js

@@ -21,4 +21,7 @@ export const setFeedback = (data) => request('/api/system/' + 'feedback', 'post'
 // 商务合作
 export const setCooperation = (data) => request('/api/system/' + 'cooperation', 'post', { ...data })
 // 骑手申请
-export const setRiderApply = (data) => request('/api/system/' + 'riderApply', 'post', { ...data })
+export const setRiderApply = (data) => request('/api/system/' + 'riderApply', 'post', { ...data })
+
+// 文字说明
+export const getCommonText = (data) => request(commonUrl + 'text', 'post', { ...data })

+ 144 - 31
pages-buy/dry-clean.vue

@@ -2,51 +2,54 @@
 	<view class="dry-clean-box iPhone-bottom flex-common-css box-border-box">
 		<Nav title='干洗'></Nav>
 		<view class="head-box box-border-box p-24 flex-justify-space">
-			<image src="@/static/img/my/lqzx-bg.png" mode=""></image>
+			<image v-if="!siteData.logo" src="@/static/img/logo/logo.png" mode="aspectFill"></image>
+			<image v-else :src="siteData.logo" mode="aspectFill"></image>
 			<view class="flex-1">
 				<view class="display-flex mb-16">
-					<view class="w410 fs-40 fw-600">干洗店干洗店干洗111干 干洗店干洗店</view>
-					<view class="fs-28 fw-400 fc-41ABF5" @click="selectsShop()">【切换门店】</view>
+					<view class="w410 fs-40 fw-600 text-overflow-ellipsis-one">{{siteData.name?siteData.name:'请选择站点'}}</view>
+					<view class="fs-28 fw-400 fc-41ABF5 text-align-right" @click="selectsShop()">【切换站点】</view>
 				</view>
 				<view class="display-flex">
-					<view class="w410 fs-26 fw-400 fc-9">兴科大道252号兴科大道252号兴科大道252号</view>
+					<view v-if="siteData.city_name||siteData.address" class="w410 fs-26 fw-400 fc-9">{{siteData.city_name}}{{siteData.address}}</view>
+					<view v-else class="w410 fs-26 fw-400 fc-9">请选择站点已提供服务</view>
 					<view class="text-align-center" style="margin-left: auto;">
-						<view class="">
+						<view class="text-align-right">
 							<uni-icons type="location" size="20"></uni-icons>
 						</view>
-						<view class="fs-26 fc-9">1km</view>
+						<view class="fs-26 fc-9">{{siteData.distance||'0'}}km</view>
 					</view>
 				</view>
 			</view>
+			
 		</view>
 		
-		<view class="box-border-box p-24">
+		<view class="box-border-box p-24" @click="openText()">
 			<view class="sy-box flex-justify-space box-border-box p-16">
 				<view class="align-items-center">
 					<uni-icons type="help" size="20" color="#666"></uni-icons>
-					<view class="fc-6 fs-28 ml-10">使用需知</view>
+					<view class="fc-6 fs-28 ml-10">使用须知</view>
 				</view>
 				<image src="@/static/img/toRight.png" mode=""></image>
 			</view>
 		</view>
 		
-		
+		<!-- 列表 -->
 		<view class="common-view-css bgc-f" style="overflow: hidden;">
-			<Menu style="height: 100%;"></Menu>
+			<Menu style="height: 100%;" @relCardBuy='relCardBuy'></Menu>
 		</view>
 		
 		
-		<view class="shop-buttom-money box-border-box" @click="openBuyCrad()">
+		<view class="shop-buttom-money box-border-box">
 			<view class="shop-buttom-money-1 flex-justify-space align-items-center">
-				<image src="@/static/img/takeout/buy-icon.png" mode="scaleToFill"></image>
-				<view class="shop-buttom-num fs-24 fc-f text-align-center">3</view>
+				<image src="@/static/img/takeout/buy-icon.png" mode="scaleToFill" @click="openBuyCrad()"></image>
+				<view class="shop-buttom-num fs-24 fc-f text-align-center" @click="openBuyCrad()">{{cardData.total_num||'0'}}</view>
 				<view class="">
 					<view class="">
 						<span class="fw-600 fs-24 fc-f">¥</span>
-						<span class="fw-600 fs-44 fc-f">19.26</span>
+						<span class="fw-600 fs-44 fc-f">{{cardData.total_price||'0'}}</span>
 					</view>
 				</view>
-				<view class="shop-buttom-money-2 text-align-center fc-f fs-32 fw-600">去结算</view>
+				<view class="shop-buttom-money-2 text-align-center fc-f fs-32 fw-600" @click="createOrder()">去结算</view>
 			</view>
 		</view>
 		
@@ -57,7 +60,6 @@
 				<view class="buy-card-top box-border-box plr-32 flex-justify-space align-items-center">
 					<view class="">
 						<span class="fs-32 fc-3 mr-12">已选商品</span>
-						<span class="fs-32 fc-9">(打包费<span class="fs-32 fc-FB3D03">8元</span>)</span>
 					</view>
 					<view class="fs-28 fw-400 fc-9 align-items-center">
 						<view class="">
@@ -67,21 +69,20 @@
 					</view>
 				</view>
 				<view class="scroll-view-css box-border-box p-32">
-					<view class="buy-card-item display-flex" v-for="(item,i) in 5" :key="i">
-						<image src="@/static/img/my/bg.png" mode="scaleToFill"></image>
+					<view class="buy-card-item display-flex" v-for="(item,i) in cardData.goods_list" :key="i">
+						<image :src="item.goods_image" mode="scaleToFill"></image>
 						<view class="flex-1">
-							<view class="w-514 text-overflow-ellipsis-one fs-34 fw-600 mb-40">[畅销款]奥尔1良烤肉牛油拌饭拌饭[畅销款]奥尔1良烤肉牛油拌饭拌饭</view>
-							
-							
+							<view class="w-514 text-overflow-ellipsis-one fs-34 fw-600 mb-40">{{item.goods_name}}</view>
 							<view class="flex-justify-space">
 								<view class="">
 									<span class="fs-24 fc-FB3D03 fw-400">¥</span>
-									<span class="fs-40 fc-FB3D03 fw-b">3.99</span>
+									<span class="fs-40 fc-FB3D03 fw-b">{{item.price}}</span>
 								</view>
 								<view class="display-flex align-items-center">
-									<view class="right-only-right-red fw-500 text-align-center fs-36 fc-f">-</view>
-									<view class="right-only-right-2 text-align-center fs-28 fw-400">1</view>
-									<view class="right-only-right-add fw-500 text-align-center fs-36 fc-f">+</view>
+									<view v-show="item.number > 0" class="right-only-right-red fw-500 text-align-center fs-36 fc-f" @click="addred(1,item)">-</view>
+									<view v-show="item.number > 0" class="right-only-right-2 text-align-center fs-28 fw-400">{{item.number}}</view>
+									<view class="right-only-right-add fw-500 text-align-center fs-36 fc-f" @click="addred(2,item)">+</view>
+
 								</view>
 							</view>
 						</view>
@@ -91,43 +92,142 @@
 				<view class="shop-buttom-money box-border-box" @click="createOrder()">
 					<view class="shop-buttom-money-1 flex-justify-space align-items-center">
 						<image src="@/static/img/takeout/buy-icon.png" mode="scaleToFill"></image>
-						<view class="shop-buttom-num fs-24 fc-f text-align-center">3</view>
+						<view class="shop-buttom-num fs-24 fc-f text-align-center">{{cardData.total_num||'0'}}</view>
 						<view class="">
 							<view class="">
 								<span class="fw-600 fs-24 fc-f">¥</span>
-								<span class="fw-600 fs-44 fc-f">19.26</span>
+								<span class="fw-600 fs-44 fc-f">{{cardData.total_price||'0'}}</span>
 							</view>
 						</view>
-						<view class="shop-buttom-money-2 text-align-center fs-32 fc-f fw-600" @click="toConfirmOrder()">去结算</view>
+						<view class="shop-buttom-money-2 text-align-center fs-32 fc-f fw-600">去结算</view>
 					</view>
 				</view>
 			</view>
 		</uni-popup>
+		
+		<uni-popup ref="popupText" type="bottom">
+			<view class="use-box box-border-box p-16">
+				<view class="head-pop flex-justify-space align-items-center mb-24">
+					<uni-icons type="closeempty" size="24" color="#fff"></uni-icons>
+					<view class="fs-36 fc-0 fw-600">使用须知</view>
+					<uni-icons @click.stop="closeMsg()" type="closeempty" size="24"></uni-icons>
+				</view>
+				<view class="scroll-view-css" v-html="laundry_str"></view>
+			</view>
+		</uni-popup>
 	</view>
 </template>
 
 <script>
+	import {setShopIngNumber,setShopIngDel,getShopIngList} from '@/api/shopping.js'
+	import {getCommonText} from '@/api/common.js';
+	
 	import Menu from './dry-mod/menu.vue';
 	import tools from "@/service/tools";
 	export default {
 		components:{Menu},
 		data(){
 			return{
+				laundry_str:'',
+				siteData:{
+					id:'',
+					school_id:'',
+					name:'',
+					logo:'',
+					distance:0,
+					city_name:'',
+					address:'',
+				},
 				
+				cardData:{
+					goods_list:[],
+					total_num:0,
+					total_price:0,
+				},
+				
+				isAJAX:false,
 			}
 		},
-		onLoad() {
-			
+		onLoad(e) {
+			if(e.data){
+				this.siteData = JSON.parse(decodeURIComponent(e.data));
+			}
+		},
+		onShow() {
+			this.getText();
+			this.getCardList();
 		},
 		methods:{
+			relCardBuy(){
+				// 重置购物车
+				this.getCardList();
+			},
+			getCardList(){
+				getShopIngList({type:3}).then((res)=>{
+					if(res.code === 1){
+						this.cardData = res.data;
+					}
+				})
+			},
+			
+			getText(){
+				getCommonText().then((res)=>{
+					if(res.code === 1){
+						this.laundry_str = res.data.laundry_str
+					}
+				})
+			},
+			
 			selectsShop(){
 				uni.navigateTo({
-					url:'/pages-buy/dry-mod/select-shop'
+					url:'/pages-buy/dry-mod/select-shop?id=' + this.siteData.id
 				})
 			},
+			openText(){
+				this.$refs.popupText.open()
+			},
+			closeMsg(){
+				this.$refs.popupText.close()
+			},
+
 			openBuyCrad(){
 				this.$refs.popupBuy.open()
 			},
+			
+			addred(type,item,info){
+				if(this.isAJAX){
+					return
+				}
+				this.isAJAX = true;
+				if(type === 1){
+					// 减
+					setShopIngNumber({type:3,goods_id:info.goods_id,category_id:item.type,operation:2}).then((res)=>{
+						if(res.code === 1){
+							this.isAJAX = false;
+							info.num -= 1;
+
+						}else{
+							this.isAJAX = false;
+							tools.error(res.msg)
+						}
+					})
+					
+				}else if(type === 2){
+					// 加
+					setShopIngAdd({type:3,goods_id:info.goods_id,category_id:item.type}).then((res)=>{
+						if(res.code === 1){
+							this.isAJAX = false;
+							info.num += 1;
+
+						}else{
+							this.isAJAX = false;
+							tools.error(res.msg)
+						}
+					})
+					
+				}
+			},
+			
 			createOrder(){
 				
 			},
@@ -136,6 +236,19 @@
 </script>
 
 <style scoped lang="scss">
+	.use-box{
+		width: 100%;
+		height: 70vh;
+		background-color: #fff;
+		border-radius: 24rpx 24rpx 0rpx 0rpx;
+		display: flex;
+		flex-direction: column;
+		.head-pop{
+			padding-bottom: 34rpx !important;
+			border-bottom: 1rpx solid #F2F2F2;
+		}
+	}
+	
 	.dry-clean-box{
 		background-color: #fff;
 		.right-only-right-red{

+ 97 - 51
pages-buy/dry-mod/menu.vue

@@ -3,7 +3,7 @@
 		<scroll-view scroll-y="true" class="menu-box-left" :scroll-into-view="idMark" :scroll-with-animation='true'>
 			<view class="menu-type-list-f">
 				<view class="menu-type-list fs-28 fc-6 text-align-center" v-for="(item,i) in typeList" :key="i" @click="selectType(item)"
-				:class="type ===  item.type?'bgc-BCEAFF':''"  :id="'scroll'+ item.type">
+				:class="type ===  item.id?'bgc-BCEAFF':''"  :id="'scroll'+ item.id">
 					{{item.name}}
 					<view class="menu-type-num fc-f" v-show="item.num > 0">{{item.num > 99?'99+':item.num}}</view>
 				</view>
@@ -16,20 +16,20 @@
 				<view class="menu-box-only" v-for="(item,i) in menuList" :key="i" :id="'scroll'+ item.type">
 					<view class="mb-18 fs-34 fw-600">{{item.name}}</view>
 					<view class="menu-list flex-justify-space" v-for="(info,k) in item.list" :key="k">
-						<image src="@/static/img/my/bg.png" mode="scaleToFill"></image>
-						<view class="menu-list-right">
-							<view class="mb-40 text-overflow-ellipsis fs-34 fw-600">[畅销款]奥尔1良烤肉 牛油拌饭[畅销款]奥尔1良烤肉 牛油拌饭[畅销款]奥尔1良烤肉 牛油拌饭[畅销款]奥尔1良烤肉 牛油拌饭</view>
+						<image :src="info.image" mode="aspectFill"></image>
+						<view class="menu-list-right flex-index-css flex-justify-space">
+							<view class="mb-40 text-overflow-ellipsis fs-34 fw-600">{{info.name}}</view>
 							
 							<view class="flex-justify-space align-items-flex-end">
 								<view class="">
 									<span class="fs-24 fw-400 fc-FB3D03">¥</span>
-									<span class="fs-40 fw-b fc-FB3D03">3.9</span>
-									<span class="fs-24 fc-9 fw-400 text-line-through">¥12</span>
+									<span class="fs-40 fw-b fc-FB3D03">{{info.price}}</span>
+									<!-- <span class="fs-24 fc-9 fw-400 text-line-through">¥12</span> -->
 								</view>
 								<view class="display-flex align-items-center">
-									<view v-show="info.num > 0" class="right-only-right-red fw-500 text-align-center fs-36 fc-f" @click="addred(1,i,k,item)">-</view>
+									<view v-show="info.num > 0" class="right-only-right-red fw-500 text-align-center fs-36 fc-f" @click="addred(1,item,info)">-</view>
 									<view v-show="info.num > 0" class="right-only-right-2 text-align-center fs-28 fw-400">{{info.num}}</view>
-									<view class="right-only-right-add fw-500 text-align-center fs-36 fc-f" @click="addred(2,i,k,item)">+</view>
+									<view class="right-only-right-add fw-500 text-align-center fs-36 fc-f" @click="addred(2,item,info)">+</view>
 								</view>
 							</view>
 						</view>
@@ -45,9 +45,14 @@
 </template>
 
 <script>
+	import {setShopIngAdd,setShopIngNumber,getShopIngList} from '@/api/shopping.js'
+	
+	import {getLaundry} from '@/api/category.js';
+	import {laundryList} from '@/api/laundry.js';
 	import tools from "@/service/tools";
 	export default {
 		name:'menu-box',
+		props:['cardList'],
 		data(){
 			return{
 				idMark:'',//滚动自适应参数
@@ -56,55 +61,70 @@
 				typeList:[],
 				
 				menuList:[],
+				isAJAX:false,
 				
-				
+				cardData:{
+					goods_list:[],
+					total_num:0,
+					total_price:0,
+				},
 			}
 		},
 		mounted() {
+			
 			this.getTypeList();
 		},
 		methods:{
+			
 			getTypeList(){
-				this.typeList = [
-					{
-						"category_id": 1,
-						"name": "爆品推荐",
-						"type": 1,
-					},
-					{
-						"category_id": 2,
-						"name": "必点口味",
-						"type": 2
-					},
-				]
-				this.type = this.typeList[0].type;
-				this.idMark = 'scroll'+ this.type;
-				this.typeList.forEach((v)=>{
-					v.num = 0
+				getLaundry().then((res)=>{
+					if(res.code === 1){
+						this.typeList = res.data;
+						this.type = this.typeList[0].id;
+						this.idMark = 'scroll'+ this.type;
+						this.typeList.forEach((v)=>{
+							v.num = 0
+						})
+						laundryList().then((res)=>{
+							if(res.code === 1){
+								this.menuList = res.data
+								getShopIngList({type:3}).then((res)=>{
+									if(res.code === 1){
+										this.cardData = res.data;
+										if(this.cardData.goods_list.length > 0){
+											this.cardData.goods_list.forEach(v=>{
+												this.menuList.forEach(n=>{
+													n.list.forEach(t=>{
+														if(v.goods_id == t.goods_id){
+															t.num = v.number
+														}
+													})
+												})
+											})
+											
+											this.menuList.forEach(n=>{
+												n.list.forEach(t=>{
+													this.typeList.forEach((v)=>{
+														if(v.id == n.type){
+															v.num += t.num
+														}
+													})
+												})
+											})
+										}
+									}
+								})
+							}
+						})
+					}
 				})
-				
-				this.menuList = [
-					{
-						name:'分类1',
-						type:1,
-						list:[
-							{name:1,num:0,spec:1},{name:2,num:0},{name:3,num:0},{name:4,num:0},
-						]
-					},
-					{
-						name:'分类2',
-						type:2,
-						list:[
-							{name:1,num:0},{name:2,num:0,spec:1},{name:3,num:0},{name:4,num:0},
-						]
-					},
-				]
 			},
 			
+			
 			selectType(item){
-				if(this.type != item.type){
-					this.type = item.type;
-					this.idMark = 'scroll'+ item.type
+				if(this.type != item.id){
+					this.type = item.id;
+					this.idMark = 'scroll'+ item.id
 				}
 			},
 			menuScroll(){
@@ -120,24 +140,50 @@
 					})
 				}).exec();
 			},
-			addred(type,i,k,item){
+			addred(type,item,info){
+				if(this.isAJAX){
+					return
+				}
+				this.isAJAX = true;
 				if(type === 1){
 					// 减
-					this.menuList[i].list[k].num -= 1;
-					this.setSub(item);
+					setShopIngNumber({type:3,goods_id:info.goods_id,category_id:item.type,operation:2}).then((res)=>{
+						if(res.code === 1){
+							this.isAJAX = false;
+							info.num -= 1;
+							this.setSub(item);
+							this.$emit('relCardBuy')
+						}else{
+							this.isAJAX = false;
+							tools.error(res.msg)
+						}
+					})
+					
 				}else if(type === 2){
 					// 加
-					this.menuList[i].list[k].num += 1;
-					this.setSub(item);
+					setShopIngAdd({type:3,goods_id:info.goods_id,category_id:item.type}).then((res)=>{
+						if(res.code === 1){
+							this.isAJAX = false;
+							info.num += 1;
+							this.setSub(item);
+							this.$emit('relCardBuy')
+						}else{
+							this.isAJAX = false;
+							tools.error(res.msg)
+						}
+					})
+					
 				}
 			},
+			// 设置角标
 			setSub(item){
+				console.log(item);
 				let num = 0;
 				item.list.forEach((n)=>{
 					num += n.num
 				})
 				this.typeList.forEach((v)=>{
-					if(v.type == item.type){
+					if(v.id == item.type){
 						v.num = num
 					}
 				})

+ 26 - 13
pages-buy/dry-mod/select-shop.vue

@@ -1,8 +1,8 @@
 <template>
 	<view class="select-site-box iPhone-bottom flex-common-css box-border-box">
-		<Nav title='选择门店'></Nav>
+		<Nav title='选择站点'></Nav>
 		
-		<scroll-view class="scroll-view-css box-border-box p-24" scroll-y="true" @scrolltolower="scrolltolower">
+		<scroll-view class="scroll-view-css box-border-box p-24" scroll-y="true">
 			<view class="list-item" :class="id == item.id?'s-b':''"
 			v-for="(item,i) in list" :key="i" @click="selectFun(item)">
 				<image v-if="true" class="jlzj-box" src="@/static/img/buy/jlzj.png" mode=""></image>
@@ -12,10 +12,10 @@
 						<image v-if="id == item.id" src="@/static/img/common/y-select.png" mode=""></image>
 						<image v-else src="@/static/img/common/n-select.png" mode=""></image>
 					</view>
-					<image class="img-1" src="@/static/img/my/bg.png" mode="scaleToFill"></image>
+					<image class="img-1" :src="item.logo" mode="scaleToFill"></image>
 					<view class="w292">
-						<view class="fs-32 fw-600 fc-0">菜鸟驿站菜鸟驿站菜</view>
-						<view class="fs-26 fw-400 fc-9">菜鸟驿站菜鸟驿站菜鸟驿站菜鸟驿站菜鸟驿站菜鸟驿站菜鸟驿站菜鸟驿站</view>
+						<view class="fs-32 fw-600 fc-0">{{item.name}}</view>
+						<view class="fs-26 fw-400 fc-9">{{item.city_name}}{{item.address}}</view>
 					</view>
 				</view>
 				
@@ -23,7 +23,7 @@
 				<view class="box-right text-align-center" >
 					<view class="">
 						<view class="fs-28 mb-12">去下单</view>
-						<view class="fs-26 fc-9">距您你1km</view>
+						<view class="fs-26 fc-9">距您你{{item.distance}}km</view>
 					</view>
 					
 				</view>
@@ -33,28 +33,41 @@
 </template>
 
 <script>
+	import {laundrySite} from '@/api/laundry.js';
+	import tools from "@/service/tools";
 	export default {
 		data(){
 			return{
-				id:'1',
-				list:[
-					{id:1},{id:2},
-				]
+				id:'',
+				list:[],
 			}
 		},
 		onLoad(e) {
 			if(e.id){
 				this.id = Number(e.id);
 			}
+			this.getList();
 		},
 		methods:{
-			scrolltolower(){
-				console.log('触底');
+			getList(){
+				let obj = {
+					school_id:uni.getStorageSync('school_id'),
+					lon:uni.getStorageSync('lon'),
+					lat:uni.getStorageSync('lat'),
+				}
+
+				laundrySite(obj).then((res)=>{
+					if(res.code === 1){
+						this.list = res.data;
+					}
+				})
 			},
+			
 			selectFun(item){
+				let obj = JSON.stringify(item);
 				this.id = item.id;
 				uni.reLaunch({
-					url:'/pages-buy/dry-clean?id=' + this.id
+					url:'/pages-buy/dry-clean?data=' + encodeURIComponent(obj)
 				})
 			},
 		},

+ 1 - 1
pages-buy/save-ticket.vue

@@ -112,7 +112,7 @@
 					return
 				}
 				this.isCode = true;
-				getCode({phone:this.fromData.phone,send_type:'group_order'}).then((res)=>{
+				getCode({phone:this.fromData.phone,send_type:'ticket_order'}).then((res)=>{
 					if(res.code === 1){
 						this.codeText = 60;
 						let timer = setInterval(() => {

+ 2 - 2
pages-school/add-circle.vue

@@ -100,7 +100,7 @@
 				this.fromData.school_id = circleSchoolId?circleSchoolId:school_id;
 				alumniSave(this.fromData).then((res)=>{
 					if(res.code === 1){
-						tools.success(res.mag)
+						tools.success(res.msg)
 						setTimeout(()=>{
 							this.isAJAX = false;
 							uni.reLaunch({
@@ -108,7 +108,7 @@
 							})
 						},1500)
 					}else{
-						tools.error(res.mag)
+						tools.error(res.msg)
 						this.isAJAX = false;
 					}
 				})

+ 3 - 3
pages-school/school-circle.vue

@@ -63,13 +63,13 @@
 							</view>
 						</view>
 					</view>
-					<view class="card-2 fs-30 fw-400 mb-16">
+					<view class="card-2 fs-30 fw-400 mb-16 view-word-wrap" style="width: 560rpx;">
 						{{item.content}}
 					</view>
-					<view class="card-3 flex-wrap-wrap mb-32">
+					<view class="card-3 flex-wrap-wrap mb-32" style="width: 560rpx;">
 						<image class="card-3-img" :src="item" v-for="(item,i) in item.image" mode="scaleToFill"></image>
 					</view>
-					<view class="card-4 flex-wrap-wrap mb-40">
+					<view class="card-4 flex-wrap-wrap mb-40" style="width: 560rpx;">
 						<view class="">{{item.school_name}}</view>
 						<view class="">{{item.topic_name}}</view>
 					</view>