caichengyu 18 小时之前
父节点
当前提交
38843a49dc

+ 2 - 2
common/request.js

@@ -181,8 +181,8 @@ function getTenantId() {
 			},
 			success: (res) => {
 				if (res.data.code == 200) {
-					resolve('129978618875038');
-					// resolve(res.data.data);
+					// resolve('129978618875038');
+					resolve(res.data.data);
 				} else {
 					uni.showToast({
 						title: "请求接口失败",

+ 12 - 3
components/myPlayer/polyvPlayer.vue

@@ -79,7 +79,8 @@
 
 		mounted() {
 			if (this.vid) {
-				this.changeVid(this.vid);
+				console.log("mounted",this.vid);
+				this.changeVid(this.vid,1);
 			}
 		},
 		methods: {
@@ -101,7 +102,13 @@
 					var playbackRate = JSON.parse(JSON.stringify(this.playbackRate))
 				}
 				const polyvPlayer = window.polyvPlayer;
-				console.log("this.allowSeek", this.allowSeek)
+				var fiddd=this.config ? this.config.vid : this.playVid;
+				console.log("this.allowSeek", this.allowSeek,this.vid,this.config,fiddd)
+				if(fiddd===uni.getStorageSync("fid2"))
+				{
+					return;
+				}
+				uni.setStorageSync("fid2",fiddd);
 				this.$api.polyvVideoSign(this.vid).then(async (res) => {
 					let option = {
 						showLine: "off",
@@ -351,6 +358,7 @@
 				this.$emit("loadedmetadata", polyvPlayerContext);
 			},
 			onPlayStart() {
+				uni.setStorageSync("fid2","-1");
 				console.log("初始化")
 				this.PlayStart = 1
 			},
@@ -368,7 +376,8 @@
 				// #endif
 				this.onPlayerInitOver();
 			},
-			changeVid(data) {
+			changeVid(data,from=2) {
+						console.log('调用腾讯视频changeFileId',from)
 				if (!data) {
 					return;
 				}

+ 45 - 9
components/myPlayer2/tcPlayer.vue

@@ -53,6 +53,7 @@
 				needSeek: false, // 是否有记录需要跳转播放
 				playTime: 0,
 				PlayStart: 0, // 是否初次播放(因为腾讯视频没有初次播放事件)
+				fid2:0,
 			};
 		},
 		created() {
@@ -60,7 +61,8 @@
 		},
 		mounted() {
 			if (this.fileId) {
-				this.changeFileId(this.fileId);
+				// console.log("mounted",this.fileId);
+				this.changeFileId(this.fileId,1);
 			}
 		},
 		methods: {
@@ -85,9 +87,15 @@
 					playbackRate = JSON.parse(JSON.stringify(this.playbackRate));
 				}
 				const TCPlayer = window.TCPlayer;
-				console.log("腾讯视频是否自动播放11111", this.autoplay)
+				var fiddd=this.config?this.config.fileId:this.playFileId;
+				console.log("腾讯视频是否自动播放11111", this.autoplay,this.fileId,this.config,fiddd);
 				console.log("腾讯视频是否允许拖拽进度条", this.progressControl) 
-				this.$api.tcVideoSign(this.fileId).then(async (res) => {
+				if(fiddd===uni.getStorageSync("fid2"))
+				{
+					return;
+				}
+				uni.setStorageSync("fid2",fiddd);
+				this.$api.tcVideoSign(fiddd).then(async (res) => {
 							console.log("请求腾讯视频参数", res)
 								let option = {
 									preload: "auto",
@@ -106,17 +114,24 @@
 									// 	src: 'https://1500005692.vod2.myqcloud.com/43843706vodtranscq1500005692/62656d94387702300542496289/v.f100240.m3u8',
 									// }],
 
-									fileID: this.fileId,
+									fileID: fiddd,
 									appID: res.data.data.appID,
 									psign: res.data.data.psign,
 									licenseUrl: res.data.data.licenseUrl,
 								};
+								// console.log("请求腾讯视频参数11", option)
 								if (tcPlayerContext) {
 									tcPlayerContext.loadVideoByID({
-										fileID: this.fileId,
+										fileID: fiddd,
 										appID: res.data.data.appID,
 										psign: res.data.data.psign
 									});
+									
+									console.log("请求腾讯视频参数12", {
+										fileID: fiddd,
+										appID: res.data.data.appID,
+										psign: res.data.data.psign
+									})
 									setTimeout(() => {
 									tcPlayerContext.currentTime(
 										this.currentTime || 0);
@@ -151,11 +166,13 @@
 									
 									this.h5StateChange();
 								}
+							
+						
 							});
 					},
 					// 视频播放或由暂停恢复播放时触发
 					playing() {
-						console.log("腾讯视频恢复播放");
+						// console.log("腾讯视频恢复播放"+this.needSeek+'|'+!this.Elevideo);
 						if (!this.PlayStart) {
 							this.onPlayStart();
 						}
@@ -212,7 +229,7 @@
 					//
 					loadeddata(){
 						setTimeout(() => {
-						console.log("2s后调到"+this.currentTime);
+						// console.log("2s后调到"+this.currentTime);
 						//this.currentTime=300;
 															tcPlayerContext.currentTime(
 																this.currentTime || 0);//console.log("完成2s后调到"+this.currentTime);
@@ -285,6 +302,7 @@
 						console.log("腾讯视频加载完毕");
 						uni.$on("playPause", this.playPause);
 						this.$emit("loadedmetadata", tcPlayerContext);
+						uni.setStorageSync("fid2","-1");
 					},
 					// 视频初次播放
 					onPlayStart() {
@@ -292,11 +310,27 @@
 						this.PlayStart = 1;
 					},
 					// 切换视频
-					changeFileId(data) {
-						console.log('调用腾讯视频changeFileId')
+					changeFileId(data,from=2) {
+						console.log('调用腾讯视频changeFileId',from)
 						if (!data) {
 							return;
 						}
+						// var fiddd=this.config ? this.config.fileId : "";
+						// var fiddd2=this.$method.isObject(data) ?data.fileId:data;
+						// if(fiddd===fiddd2){
+						// 	console.log('刷新',fiddd,fiddd2)
+						// 	// #ifdef H5
+						// 	location.reload();
+						// 	// #endif
+						// 	// #ifdef MP-WEIXIN
+						// 	uni.navigateBack({
+						// 	  delta: 1 // 回退前 delta(默认为1) 页面
+						// 	});
+						// 	// #endif
+						// }
+						// else{
+							// console.log('不刷新',fiddd,fiddd2)
+							// console.log('from1',from);
 						this.config = this.$method.isObject(data) ?
 							data : {
 								fileId: data,
@@ -305,8 +339,10 @@
 						if (!this.fileId) {
 							return;
 						}
+						// console.log('2调用腾讯视频changeFileId',data,this.config)
 						this.PlayStart = 0;
 						this.loadPlayerScript(this.loadPlayer);
+						// }
 					},
 					closeToast() {
 						this.videoToastShow = false;

+ 12 - 0
pages.json

@@ -1216,6 +1216,18 @@
 							"bounce": "none"
 						}
 					}
+				},
+				{
+					"path": "scan/goodsTopic_jj",
+					"style": {
+						"navigationBarTitleText": "考前专题",
+						"navigationBarBackgroundColor": "#0386FD",
+						"navigationStyle": "custom", // 隐藏系统导航栏
+						"app-plus": {
+							"titleNView": false, //禁用原生导航栏
+							"bounce": "none"
+						}
+					}
 				}
 			]
 		}

+ 10 - 1
pages/course/index.vue

@@ -164,7 +164,16 @@
 			if (activeTypeData.hasOwnProperty(option.businessKey)) {
 				this.activeData = activeTypeData[option.businessKey];
 			}
-
+			else if(option.educationId||option.projectId||option.businessId)
+			{
+				this.activeData = {
+					educationId: option.educationId??"",
+					projectId: option.projectId??"",
+					businessId:option.businessId?? "",
+					subjectId: "",
+					sortType: 1
+				};
+			}
 			if (option.current) {
 				this.$store.state.current = Number(option.current)
 			}

+ 2 - 2
pages2/class/questionBank.vue

@@ -1566,7 +1566,7 @@
 						return this.noListTip();
 					}
 					data.forEach((item, index) => {
-						if (typeof item.jsonStr == "string") {
+						// if (typeof item.jsonStr == "string") {
 							item.jsonStr = JSON.parse(item.jsonStr) || [];
 
 							if (item.type == 2) {
@@ -1682,7 +1682,7 @@
 									'<img style="max-width:100%;"'
 								));
 							item.ans = item.answerQuestion;
-						}
+						// }
 					});
 
 					this.questionList = data;

+ 17 - 0
pages3/course/detail.vue

@@ -866,7 +866,24 @@
 					this.getSpecDetail();
 					return;
 				}
+				if(this.detail.beforeSign&&this.detail.beforeSign==1)
+				{
+					uni.showModal({
+						title: "提示",
+						content: "好课特惠,报名立减,10人以上打7折,5人以上打8折,3人以上打9折",
+						cancelText: "取消",
+						confirmText: "知道了",
+						showCancel:false,
+						success: (res) => {
+							if (res.confirm) {
+								this.toConfirmList(this.id);
+							}
+						},
+					});
+				}
+				else{
 				this.toConfirmList(this.id);
+				}
 			},
 			drawBuy() {
 				if (!this.$method.isLogin()) {

+ 3 - 2
pages3/polyv/detail.vue

@@ -363,6 +363,7 @@
 			},
 		},
 		async onLoad(option) {
+			uni.setStorageSync("fid2","-1");//重置tcplayer.vue的缓存
 			// #ifdef H5
 			console.error(this.$method.myBrowser(), '浏览器')
 			if (this.$method.myBrowser() == 'UC') {
@@ -1450,12 +1451,12 @@
 						this.refPlv.changeFileId({
 							fileId: recordingUrl,
 							currentTime: this.videoCurrentTime,
-						});
+						},3);
 					} else {
 						this.refPlv.changeVid({
 							vid: recordingUrl,
 							videoCurrentTime: this.videoCurrentTime,
-						});
+						},3);
 					}
 				}
 			},

+ 689 - 0
pages5/scan/goodsTopic_jj.vue

@@ -0,0 +1,689 @@
+<template>
+  <view class="container">
+	   <nav-bar title="考前专题" class="navbar"></nav-bar>
+    <!-- 顶部宣传横幅 -->
+    <view class="banner">
+		<!-- 轮播图组件 -->
+		     <swiper 
+		       class="banner-swiper" 
+		       :indicator-dots="true" 
+		       :autoplay="true" 
+		       :interval="5000" 
+		       :duration="500"
+		       indicator-color="rgba(255,255,255,0.5)"
+		       indicator-active-color="#ffffff"
+		       circular
+		     >
+		       <swiper-item v-for="(item, index) in bannerList" :key="index">
+		         <image 
+		           :src="item.bimgUrl" 
+		           class="banner-img" 
+		           mode="widthFix"
+				   @click="goToCourse(item,0)"
+		         ></image>
+		       </swiper-item>
+		     </swiper>
+    </view>
+
+    <!-- 课程主体内容 -->
+    <view class="course-container">
+		  <view class="titles">
+		                        <image class="timg" src="@/static/topic/icon_left.png" alt="" />
+		                        <text class="scheme">进击取证</text>
+		                        <image class="timg" src="@/static/topic/icon_right.png" alt="" />
+		                    </view>
+		                    <view class="min_title">一站式解决方案,领跑新考季</view>
+      <view class="course-row">
+        <!-- 课程卡片 -->
+        <view 
+          class="course-col" 
+          v-for="(course, index) in filteredCourseList" 
+          :key="index"
+        >
+          <view class="course-card" :class="`type-${course.typeId}`">
+            <view class="course-img-box">
+              <image :src="course.imgUrl" :alt="course.name" class="course-img" mode="aspectFill"></image>
+              <view class="course-tag" :style="{ backgroundColor: `var(--theme-color)` }">
+                <text>{{ course.tagText }}</text>
+              </view>
+              <view class="course-stats">
+                <text><i class="mdi mdi-account"></i> {{ course.learnCount }}</text>
+                <text><i class="mdi mdi-star"></i> {{ course.rating }}</text>
+              </view>
+            </view>
+            <view class="course-content">
+              <view class="course-title" :style="{ color: `var(--theme-color)` }">
+                <i :class="course.iconClass"></i>
+                <text>{{ course.name }}</text>
+                <text style="margin-left: 5px;">{{ course.cname }}</text>
+              </view>
+              <view class="specialty-tags">
+                <view class="specialty-tag" v-for="(item, idx) in course.specialties" :key="idx">
+                  <text>{{ item }}</text>
+                </view>
+              </view>
+              <view class="course-footer">
+                <view class="course-price" :style="{ color: `var(--theme-color)` }">
+                  <text>全科&nbsp;¥{{ course.price }}</text>
+                  <text class="original-price">¥{{ course.originalPrice }}</text>
+                </view>
+                <button class="course-btn" :style="{ backgroundColor: `var(--theme-color)` }" @click="goToCourse(course,1)">
+                  立即报名
+                </button>
+              </view>
+              <view class="course-footer"  v-if="course.price2">
+                <view class="course-price" :style="{ color: `var(--theme-color)` }">
+                  <text>单科实务&nbsp;¥{{ course.price2 }}</text>
+                  <text class="original-price">¥{{ course.originalPrice2 }}</text>
+                </view>
+                <button class="course-btn" :style="{ backgroundColor: `var(--theme-color)` }" @click="goToCourse(course,2)">
+                  立即报名
+                </button>
+              </view>
+            </view>
+          </view>
+        </view>
+        
+        <!-- 无匹配课程提示 -->
+        <view class="empty-col" v-if="filteredCourseList.length === 0">
+          <view class="empty-view">
+            <text class="empty-text">未找到匹配的课程,请尝试其他关键词</text>
+          </view>
+        </view>
+      </view>
+    </view>
+
+    <!-- 回到顶部按钮 -->
+    <view 
+      class="back-to-top" 
+      :class="{ visible: isScrolled }"
+      @click="backToTop"
+    >
+      <i class="mdi mdi-arrow-up"></i>
+    </view>
+
+  
+  </view>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      // 滚动状态
+      isScrolled: false,
+      // 搜索关键词
+      searchKeyword: '',
+      // 选中的课程类型
+      selectedCourseType: '',
+      // picker索引
+      pickerIndex: 0,
+	   // 轮播图数据(800:768比例)
+	        bannerList: [],
+      // 课程类型列表
+      courseTypes: [
+        '一级建造师', '二级建造师', '监理工程师', '注册安全工程师',
+        // '水利质量检测员', 
+		'中级经济师', '社会工作者(初级)', 
+        '社会工作者(中级)',
+		 // '社区工作者'
+      ],
+      // 课程数据
+      courseList: [
+        {
+          typeId: 1,
+          name: '一级建造师',
+              cname:'精英优享班',
+          imgUrl: require("@/static/topic/course_yj.png"),
+          bimgUrl: require("@/static/topic/banner_yj.png"),
+              topath0:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1813',
+              topath1:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1813',
+              topath2:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1813',
+          tagText: '热门',
+          learnCount: '12.8万人学习',
+          rating: '98%好评',
+          price: 3580,
+                        originalPrice: 4380,
+                        price2: 1080,
+                        originalPrice2: 1980,
+          iconClass: 'mdi mdi-account-hard-hat',
+          specialties: ['管理', '法规', '经济', '建筑', '市政', '机电', '公路', '水利', '港口与航道']
+        },
+        {
+          typeId: 2,
+          name: '二级建造师',
+              cname:'精英优享班',
+          imgUrl:  require("@/static/topic/course_ej.png"),
+          bimgUrl:  require("@/static/topic/banner_ej.png"),
+              topath0:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1814',
+              topath1:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1814',
+              topath2:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1814',
+          tagText: '推荐',
+          learnCount: '15.6万人学习',
+          rating: '97%好评',
+          price: 2280,
+                        originalPrice: 3280,
+                        price2: 980,
+                        originalPrice2: 1680,
+          iconClass: 'mdi mdi-account-tie',
+          specialties: ['管理', '法规', '建筑', '市政', '机电', '公路', '水利']
+        },
+        {
+          typeId: 3,
+          name: '监理工程师',
+              cname:'精英优享班',
+          imgUrl: require("@/static/topic/course_jl.png"),
+          bimgUrl: require("@/static/topic/banner_jl.png"),
+              topath0:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1818',
+              topath1:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1818',
+              topath2:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1818',
+          tagText: '精品',
+          learnCount: '8.2万人学习',
+          rating: '96%好评',
+          price: 2580,
+                        originalPrice: 3380,
+                        price2: 1080,
+                        originalPrice2: 1880,
+          iconClass: 'mdi mdi-clipboard-check',
+          specialties: ['管理', '概论', '土建三控', '土建案例', '交通三控', '交通案例', '水利三控', '水利案例']
+        },
+        {
+          typeId: 4,
+          name: '注册安全工程师',
+              cname:'精英优享班',
+          imgUrl:  require("@/static/topic/course_aq.png"),
+          bimgUrl:  require("@/static/topic/banner_aq.png"),
+              topath0:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1815',
+              topath1:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1815',
+              topath2:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1815',
+          tagText: '必学',
+          learnCount: '9.5万人学习',
+          rating: '95%好评',
+          price: 3680,
+                        originalPrice: 4580,
+                        price2: 1280,
+                        originalPrice2: 2080,
+          iconClass: 'mdi mdi-shield-check',
+          specialties: ['管理', '法规', '技术基础', '其他安全', '化工安全', '建筑施工安全', '矿山安全', '金属冶炼安全', '煤矿安全', '道路运输安全']
+        },
+        // {
+        //   typeId: 5,
+        //   name: '水利质量检测员',
+        //   imgUrl: require("@/static/topic/course_sl.png"),
+        //   tagText: '新课',
+        //   learnCount: '4.3万人学习',
+        //   rating: '99%好评',
+        //   price: 2580,
+        //       originalPrice: 3580,
+        //   iconClass: 'mdi mdi-water',
+        //   specialties: ['基础知识', '混凝土工程', '岩土工程', '金属结构', '机械电气', '量测']
+        // },
+        {
+          typeId: 6,
+          name: '中级经济师',
+              cname:'精英优享班',
+          imgUrl: require("@/static/topic/course_jj.png"),
+          bimgUrl: require("@/static/topic/banner_jj.png"),
+              topath0:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1812',
+              topath1:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1812',
+              topath2:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1812',
+          tagText: '特惠',
+          learnCount: '10.1万人学习',
+          rating: '97%好评',
+          price: 2280,
+                        originalPrice: 3380,
+                        price2: 1280,
+                        originalPrice2: 2080,
+          iconClass: 'mdi mdi-currency-cny',
+          specialties: ['经济基础', '工商管理', '人力资源', '金融专业', '财政税收', '建筑与房地产', '知识产权', '保险经济', '运输经济', '旅游经济', '农业经济']
+        },
+        {
+          typeId: 7,
+          name: '社会工作者(初级)',
+              cname:'通过无忧班', 
+          imgUrl: require("@/static/topic/course_sg1.png"),
+          bimgUrl: require("@/static/topic/banner_sg1.png"),
+              topath0:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1816',
+              topath1:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1816',
+          tagText: '入门',
+          learnCount: '7.8万人学习',
+          rating: '98%好评',
+          price: 1280,
+                        originalPrice: 2280,
+          iconClass: 'mdi mdi-humanitarian',
+          specialties: ['综合能力', '实务']
+        },
+        {
+          typeId: 8,
+          name: '社会工作者(中级)',
+              cname:'通过无忧班', 
+          imgUrl: require("@/static/topic/course_sg2.png"),
+          bimgUrl: require("@/static/topic/banner_sg2.png"),
+              topath0:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1817',
+              topath1:'https://xh5.gdzckj.net/pages/course/index?educationId=589&projectId=946&businessId=1817',
+          tagText: '进阶',
+          learnCount: '6.5万人学习',
+          rating: '96%好评',
+          price: 1580,
+                        originalPrice: 2580,
+          iconClass: 'mdi mdi-human-male-female',
+          specialties: ['综合能力', '法规与政策', '实务']
+        },
+        // {
+        //   typeId: 9,
+        //   name: '社区工作者',
+        //   imgUrl: require("@/static/topic/course_sq.png"),
+        //   tagText: '基础',
+        //   learnCount: '5.7万人学习',
+        //   rating: '99%好评',
+        //   price: 1580,
+        //   originalPrice: 2580,
+        //   iconClass: 'mdi mdi-home-group',
+        //   specialties: ['基础知识', '职业技能']
+        // }
+      ],
+      // 筛选后的课程列表
+      filteredCourseList: []
+    }
+  },
+  onReady() {
+    // 初始化课程列表
+    this.filteredCourseList = [...this.courseList]
+	  this.filteredCourseList.forEach(item=>{
+	          if(item.bimgUrl){
+	          this.bannerList.push(item);
+	          }
+	        })
+			console.log("as",this.bannerList)
+    // 监听滚动事件
+    uni.onWindowResize(this.handleScroll)
+    uni.pageScrollTo({
+      scrollTop: 0,
+      duration: 0
+    })
+    // 欢迎提示
+    // uni.showToast({
+    //   title: '欢迎来到建工教育',
+    //   icon: 'success'
+    // })
+  },
+  onShow() {
+    // 监听页面滚动
+    // uni.onPageScroll((e) => {
+    //   this.isScrolled = e.scrollTop > 100
+    // })
+  },
+  onHide() {
+    // 移除滚动监听
+    // uni.offPageScroll()
+  },
+  methods: {
+    // 处理滚动
+    handleScroll() {
+      uni.getSystemInfo({
+        success: (res) => {
+          this.screenHeight = res.windowHeight
+        }
+      })
+    },
+    // 回到顶部
+    backToTop() {
+      uni.pageScrollTo({
+        scrollTop: 0,
+        duration: 500
+      })
+      uni.showToast({
+        title: '已回到顶部',
+        icon: 'success'
+      })
+    },
+    // 筛选课程
+    filterCourses() {
+      let result = [...this.courseList]
+      
+      // 按类型筛选
+      if (this.selectedCourseType) {
+        result = result.filter(course => course.name === this.selectedCourseType)
+      }
+      
+      // 按关键词筛选
+      if (this.searchKeyword) {
+        const keyword = this.searchKeyword.toLowerCase()
+        result = result.filter(course => {
+          const nameMatch = course.name.toLowerCase().includes(keyword)
+          const specialtyMatch = course.specialties.some(s => s.toLowerCase().includes(keyword))
+          return nameMatch || specialtyMatch
+        })
+      }
+      
+      this.filteredCourseList = result
+      
+      // 无结果提示
+      if (this.searchKeyword && result.length === 0) {
+        uni.showToast({
+          title: '未找到匹配课程',
+          icon: 'none'
+        })
+      }
+    },
+    // 选择课程类型
+    handleTypeChange(e) {
+      const index = e.detail.value
+      this.pickerIndex = index
+      this.selectedCourseType = index === 0 ? '' : this.courseTypes[index - 1]
+      this.filterCourses()
+    },
+    // 重置筛选
+    resetFilter() {
+      this.searchKeyword = ''
+      this.selectedCourseType = ''
+      this.pickerIndex = 0
+      this.filteredCourseList = [...this.courseList]
+      uni.showToast({
+        title: '筛选条件已重置',
+        icon: 'info'
+      })
+    },
+    // 课程报名
+    goToCourse(item,type) {
+		// var url1=(type==1?item.topath1:type==2?item.topath2:item.topath0).substring(22);
+		// console.log("asd",url1)
+		//   uni.redirectTo({
+		//     url:(type==1?item.topath1:type==2?item.topath2:item.topath0).substring(22),
+		//   })
+	     window.open(type==1?item.topath1:type==2?item.topath2:item.topath0, "_self");
+    },
+    // 登录/注册
+    gotoLogin() {
+      uni.showToast({
+        title: '登录/注册功能开发中',
+        icon: 'none'
+      })
+    },
+    // 我的课程
+    gotoMyCourse() {
+      uni.showToast({
+        title: '我的课程功能开发中',
+        icon: 'none'
+      })
+    },
+  }
+}
+</script>
+
+<style scoped>
+	/* 顶部轮播Banner */
+	.banner {
+	  position: relative;
+	  overflow: hidden;
+	  margin-bottom: 30px;
+	  /* 按800:768比例计算高度(宽度100%,高度=宽度*768/800) */
+	  height: 0;
+	  padding-bottom: 96%; /* 768/800 = 0.96 = 96% */
+	}
+	.banner-swiper {
+	  position: absolute;
+	  top: 0;
+	  left: 0;
+	  width: 100%;
+	  height: 100%;
+	}
+	.banner-img {
+	  width: 100%;
+	  height: 100%;
+	  object-fit: cover;
+	}
+
+/* 课程容器 */
+.course-container {
+  max-width: 1200px;
+  margin: 0 auto;
+  padding: 0 20px 50px;
+  
+}
+.titles {
+                text-align: center;
+            }
+               .titles .timg {
+                    width: 32rpx;
+                    height: 20rpx;
+                }
+               .titles .scheme {
+                    font-size: 48rpx;
+                    font-weight: bold;
+                    color: #363543;
+                    margin: 0px 40rpx;
+                }
+            .min_title {
+				    text-align: center;
+                margin: 13rpx 0px 50rpx;
+                font-size: 28rpx;
+                font-weight: 500;
+                color: #363543;
+            }
+.course-row {
+  display: flex;
+  flex-wrap: wrap;
+  gap: 24px;
+}
+.course-col {
+  flex: 1;
+  min-width: 300px;
+  max-width: calc(33.333% - 16px);
+}
+.empty-col {
+  width: 100%;
+  padding: 50rpx 0;
+  text-align: center;
+}
+.empty-view {
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+}
+.empty-img {
+  width: 100px;
+  height: 100px;
+  margin-bottom: 20px;
+}
+.empty-text {
+  font-size: 16px;
+  color: #999;
+}
+
+/* 课程卡片 */
+.course-card {
+  border-radius: 8px;
+  overflow: hidden;
+  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
+  margin-bottom: 24px;
+  background-color: white;
+  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
+}
+.course-card:hover {
+  transform: translateY(-8px);
+  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.12);
+}
+.course-img-box {
+  height: 180px;
+  overflow: hidden;
+  position: relative;
+}
+.course-img {
+  width: 100%;
+  height: 100%;
+  transition: all 0.6s ease;
+}
+.course-card:hover .course-img {
+  transform: scale(1.08);
+}
+.course-tag {
+  position: absolute;
+  top: 15px;
+  left: 15px;
+  z-index: 2;
+  color: white;
+  padding: 4px 8px;
+  border-radius: 4px;
+  font-size: 12px;
+}
+.course-stats {
+  position: absolute;
+  bottom: 0;
+  left: 0;
+  width: 100%;
+  padding: 10px 15px;
+  background: linear-gradient(transparent, rgba(0,0,0,0.6));
+  color: white;
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  font-size: 14px;
+}
+
+/* 课程内容 */
+.course-content {
+  padding: 20rpx;
+}
+.course-title {
+  font-size: 20px;
+  font-weight: bold;
+  margin-bottom: 12px;
+  display: flex;
+  align-items: center;
+}
+.course-title i {
+  margin-right: 8px;
+  font-size: 22px;
+}
+.specialty-tags {
+  display: flex;
+  flex-wrap: wrap;
+  margin: 15px 0;
+}
+.specialty-tag {
+  margin: 0 8px 8px 0;
+  padding: 4px 10px;
+  border-radius: 4px;
+  background-color: #f0f2f5;
+  color: #666;
+  font-size: 12px;
+  transition: all 0.2s ease;
+}
+.specialty-tag:hover {
+  background-color: var(--theme-color);
+  color: white;
+  transform: translateY(-2px);
+}
+.course-footer {
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  margin-top: 15px;
+  padding-top: 15px;
+  border-top: 1px solid #f0f2f5;
+}
+.course-price {
+  font-size: 18px;
+  font-weight: bold;
+}
+.original-price {
+  font-size: 14px;
+  color: #999;
+  font-weight: normal;
+  margin-left: 8px;
+  text-decoration: line-through;
+}
+.course-btn {
+  background-color: var(--theme-color);
+  color: white;
+  border: none;
+  padding: 0rpx 16rpx;
+  border-radius: 4rpx;
+  transition: all 0.3s ease;
+}
+.course-btn:hover {
+  opacity: 0.9;
+  transform: translateY(-2px);
+}
+
+/* 回到顶部 */
+.back-to-top {
+  position: fixed;
+  bottom: 30px;
+  right: 30px;
+  width: 48px;
+  height: 48px;
+  border-radius: 50%;
+  background-color: #1989fa;
+  color: white;
+  text-align: center;
+  line-height: 48px;
+  font-size: 20px;
+  cursor: pointer;
+  box-shadow: 0 4px 12px rgba(25, 137, 250, 0.3);
+  transition: all 0.3s ease;
+  opacity: 0;
+  visibility: hidden;
+  z-index: 999;
+}
+.back-to-top.visible {
+  opacity: 1;
+  visibility: visible;
+}
+.back-to-top:hover {
+  background-color: #0e6ecd;
+  transform: translateY(-3px);
+  box-shadow: 0 6px 16px rgba(25, 137, 250, 0.4);
+}
+
+
+/* 响应式适配 */
+@media (max-width: 768px) {
+  .banner-title {
+    font-size: 28px;
+  }
+  .course-col {
+    max-width: 100%;
+  }
+  .filter-row {
+    flex-direction: column;
+  }
+  .filter-col-10, .filter-col-8, .filter-col-6 {
+    flex: 100%;
+    width: 100%;
+  }
+  .footer-content {
+    flex-direction: column;
+  }
+  .footer-col {
+    padding-right: 0;
+  }
+}
+
+	/* 全局样式 */
+	* {
+	  margin: 0;
+	  padding: 0;
+	  box-sizing: border-box;
+	}
+	body {
+	  font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;
+	  background-color: #f5f7fa;
+	  scroll-behavior: smooth;
+	}
+	
+	/* 课程类型主题色 */
+	.type-1 { --theme-color: #1989fa; }
+	.type-2 { --theme-color: #52c41a; }
+	.type-3 { --theme-color: #faad14; }
+	.type-4 { --theme-color: #f5222d; }
+	.type-5 { --theme-color: #40a9ff; }
+	.type-6 { --theme-color: #722ed1; }
+	.type-7 { --theme-color: #13c2c2; }
+	.type-8 { --theme-color: #fa8c16; }
+	.type-9 { --theme-color: #eb2f96; }
+	
+	/* 引入MDI图标 */
+	@import url('https://cdn.jsdelivr.net/npm/@mdi/font@5.9.55/css/materialdesignicons.min.css');
+</style>

二进制
static/topic/banner_aq.png


二进制
static/topic/banner_ej.png


二进制
static/topic/banner_jj.png


二进制
static/topic/banner_jl.png


二进制
static/topic/banner_sg1.png


二进制
static/topic/banner_sg2.png


二进制
static/topic/banner_yj.png


二进制
static/topic/course_aq.png


二进制
static/topic/course_ej.png


二进制
static/topic/course_jj.png


二进制
static/topic/course_jl.png


二进制
static/topic/course_sg1.png


二进制
static/topic/course_sg2.png


二进制
static/topic/course_sl.png


二进制
static/topic/course_sq.png


二进制
static/topic/course_sq2.png


二进制
static/topic/course_yj.png


二进制
static/topic/icon_left.png


二进制
static/topic/icon_right.png