diff --git a/niucloud/app/api/route/route.php b/niucloud/app/api/route/route.php
index 9d134a23..1a1f38f4 100644
--- a/niucloud/app/api/route/route.php
+++ b/niucloud/app/api/route/route.php
@@ -290,6 +290,34 @@ Route::group(function () {
//员工端-更新学员课程人员配置
Route::post('updateStudentCoursePersonnel', 'apiController.Course/updateStudentCoursePersonnel');
+ // 课程安排相关接口
+ //员工端-获取课程安排列表
+ Route::get('courseSchedule/list', 'apiController.CourseSchedule/getScheduleList');
+ //员工端-获取课程安排详情
+ Route::get('courseSchedule/info', 'apiController.CourseSchedule/getScheduleInfo');
+ //员工端-创建课程安排
+ Route::post('courseSchedule/create', 'apiController.CourseSchedule/createSchedule');
+ //员工端-批量创建课程安排
+ Route::post('courseSchedule/batchCreate', 'apiController.CourseSchedule/batchCreateSchedule');
+ //员工端-更新课程安排
+ Route::post('courseSchedule/update', 'apiController.CourseSchedule/updateSchedule');
+ //员工端-删除课程安排
+ Route::post('courseSchedule/delete', 'apiController.CourseSchedule/deleteSchedule');
+ //员工端-获取场地列表
+ Route::get('courseSchedule/venues', 'apiController.CourseSchedule/getVenueList');
+ //员工端-获取场地可用时间
+ Route::get('courseSchedule/venueAvailableTime', 'apiController.CourseSchedule/getVenueAvailableTime');
+ //员工端-检查教练时间冲突
+ Route::get('courseSchedule/checkCoachConflict', 'apiController.CourseSchedule/checkCoachConflict');
+ //员工端-获取课程安排统计
+ Route::get('courseSchedule/statistics', 'apiController.CourseSchedule/getScheduleStatistics');
+ //员工端-学员加入课程安排
+ Route::post('courseSchedule/joinSchedule', 'apiController.CourseSchedule/joinSchedule');
+ //员工端-学员退出课程安排
+ Route::post('courseSchedule/leaveSchedule', 'apiController.CourseSchedule/leaveSchedule');
+ //员工端-获取筛选选项
+ Route::get('courseSchedule/filterOptions', 'apiController.CourseSchedule/getFilterOptions');
+
diff --git a/niucloud/课程安排资料.md b/niucloud/课程安排资料.md
new file mode 100644
index 00000000..6d8a4d26
--- /dev/null
+++ b/niucloud/课程安排资料.md
@@ -0,0 +1,173 @@
+school_campus(校区表)
+CREATE TABLE `school_campus` (
+`id` int NOT NULL AUTO_INCREMENT COMMENT '主键ID',
+`campus_name` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '校区名称',
+`campus_address` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '校区地址',
+`campus_preview_image` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '校区预览图,存储图片路径',
+`campus_coordinates` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '校区坐标,格式为经度,纬度',
+`campus_introduction` text COLLATE utf8mb4_general_ci COMMENT '校区介绍',
+`campus_status` tinyint DEFAULT '1' COMMENT '校区状态:0-禁用,1-启用',
+`create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '校区创建时间',
+`update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '校区更新时间',
+`delete_time` int NOT NULL DEFAULT '0' COMMENT '逻辑删除字段,0表示未删除,非空表示已删除',
+PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='校区表';
+做为基础数据,下面一级就是场地。
+
+school_venue(场地表)
+CREATE TABLE `school_venue` (
+`id` int NOT NULL AUTO_INCREMENT COMMENT '场地编号',
+`campus_id` int NOT NULL COMMENT '校区ID',
+`venue_name` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '场地名称',
+`capacity` int NOT NULL COMMENT '场地可容纳人数上限',
+`availability_status` tinyint(1) NOT NULL COMMENT '场地可用状态: 1-可用, 0-不可用',
+`time_range_type` enum('range','fixed','all') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '场地可用时间范围类型: range-范围类型, fixed-固定时间范围类型',
+`time_range_start` varchar(8) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '范围类型的开始时间',
+`time_range_end` varchar(8) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '范围类型的结束时间',
+`fixed_time_ranges` json DEFAULT NULL COMMENT '固定时间范围类型的可用时间, 存储为JSON数组',
+`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+`deleted_at` int DEFAULT '0' COMMENT '逻辑删除时间',
+PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='场地表';
+场地表做为课程的容器,主要是用来限制人数,时间,和可用状态。如果场地被设置为不可用,那么该场地下的所有课程都会被取消。其中time_range_type字段决定这个时间范围是范围类型还是固定时间类型。
+这个字段配合time_range_start,time_range_end,fixed_time_ranges这三个字段,可以确定这个场地可用的时间范围。
+
+school_course(课程表)
+CREATE TABLE `school_course` (
+`id` int NOT NULL AUTO_INCREMENT COMMENT '课程编号',
+`course_name` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '课程名称',
+`course_type` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '课程类型',
+`duration` int NOT NULL COMMENT '课程时长',
+`session_count` int NOT NULL COMMENT '课时数量',
+`single_session_count` int NOT NULL DEFAULT '0' COMMENT '单次消课数量',
+`gift_session_count` int NOT NULL DEFAULT '0' COMMENT '赠送课时数量',
+`price` decimal(10,2) NOT NULL COMMENT '课程价格',
+`internal_reminder` int NOT NULL COMMENT '内部提醒课时',
+`customer_reminder` int NOT NULL COMMENT '客户提醒课时',
+`remarks` text COLLATE utf8mb4_general_ci COMMENT '课程备注',
+`created_at` int DEFAULT '0' COMMENT '创建时间',
+`updated_at` int DEFAULT '0' COMMENT '更新时间',
+`deleted_at` int DEFAULT '0' COMMENT '逻辑删除时间',
+`contract_id` int DEFAULT NULL,
+PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='课程表';
+课程表主要是用户上课的内容,在排课阶段主要是看用户排的是什么课在哪个课程安排里展示。课程表和课程安排表是一对多的关系,一个课程可以有多个课程安排。但是在一个周期范围内,这个安排的数量始终是不会超过课程表的课时数量的。
+举例来说single_session_count字段表示一次课程安排要消耗多少课时,如果值为 2,session_count课时数量是 10,那么这次课程周期一个用户只能排 5 次课程安排。
+
+school_course_schedule(课程安排表)
+CREATE TABLE `school_course_schedule` (
+`id` int NOT NULL AUTO_INCREMENT COMMENT '课程安排编号',
+`campus_id` int NOT NULL COMMENT '校区ID',
+`venue_id` int NOT NULL COMMENT '场地ID',
+`course_date` date NOT NULL COMMENT '上课日期',
+`time_slot` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '上课时段',
+`course_id` int NOT NULL COMMENT '课程ID',
+`coach_id` int NOT NULL COMMENT '上课教练ID',
+`participants` json DEFAULT NULL COMMENT '参与人员列表,存储为JSON数组,包含学员ID和来源信息',
+`student_ids` json DEFAULT NULL COMMENT '上课学生ID列表,存储为JSON数组',
+`available_capacity` int DEFAULT NULL COMMENT '根据场地容量判断的可安排学员位置数量',
+`status` enum('pending','upcoming','ongoing','completed') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT 'pending' COMMENT '课程状态: pending-待开始, upcoming-即将开始, ongoing-进行中, completed-已结束',
+`auto_schedule` tinyint(1) DEFAULT NULL COMMENT '是否自动排课1是0否',
+`created_by` enum('manual','system') COLLATE utf8mb4_general_ci NOT NULL COMMENT '课程安排创建方式: manual-人员安排, system-系统创建',
+`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+`deleted_at` int DEFAULT '0' COMMENT '逻辑删除时间',
+`assistant_ids` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '助教ID列表(逗号分隔)',
+`education_id` int DEFAULT NULL COMMENT '教务ID',
+PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=120 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='课程安排表';
+这个表是在学校层面针对教室的情况做的课程安排情况表。这个表和课程表是一对多的关系,一个课程可以有多个课程安排。而且支持一次配置后自动排课的功能。这个表的主要作用是记录课程安排的情况,包括上课日期,时间段,教练,参与人员等信息。
+
+school_person_course_schedule(人员与课程安排关系表)
+CREATE TABLE `school_person_course_schedule` (
+`id` int NOT NULL AUTO_INCREMENT COMMENT '关系编号',
+`resources_id` int DEFAULT NULL COMMENT '资源ID',
+`person_id` int DEFAULT NULL COMMENT '人员ID',
+`student_id` int DEFAULT NULL COMMENT '学员ID',
+`person_type` enum('student','customer_resource') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '人员类型: student-正式学员, customer_resource-客户资源,teacher教练',
+`schedule_id` int NOT NULL COMMENT '课程安排ID',
+`course_date` date NOT NULL COMMENT '上课日期',
+`schedule_type` tinyint(1) DEFAULT NULL COMMENT '课程安排类型1临时课2固定课',
+`course_type` tinyint(1) DEFAULT NULL COMMENT '课程类型1加课2补课3 等待位',
+`time_slot` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '上课时段',
+`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+`deleted_at` int DEFAULT '0' COMMENT '删除',
+`status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '状态0待上课1已上课2请假',
+`remark` varchar(512) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '请假备注',
+PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=49 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='人员与课程安排关系表';
+这个表记录着学员和school_course_schedule中安排的关系。这里面有几种情况 1.正式的付费学员上课(临时的)2.临时的体验学员上课 3.正式的付费学员固定这个时段上课的。
+然后这个课程安排的属性还有是正常消耗课时的,还是补课、还是送课。还是这个教室没有位置单纯是等待的课程。
+school_student_courses(学员课程表)
+CREATE TABLE `school_student_courses` (
+`id` int NOT NULL AUTO_INCREMENT COMMENT '记录编号',
+`student_id` int NOT NULL COMMENT '学员ID',
+`course_id` int NOT NULL COMMENT '课程ID',
+`total_hours` int NOT NULL COMMENT '总正式课时数',
+`gift_hours` int DEFAULT '0' COMMENT '赠送课时数',
+`start_date` date NOT NULL COMMENT '课程开始日期',
+`end_date` date NOT NULL COMMENT '课程结束日期',
+`use_total_hours` int NOT NULL DEFAULT '0' COMMENT '已使用课包课时数',
+`use_gift_hours` int NOT NULL DEFAULT '0' COMMENT '已使用课包赠送课时数',
+`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+`single_session_count` int DEFAULT NULL COMMENT '单次消课数量',
+`status` tinyint(1) DEFAULT NULL COMMENT '课程状态1有效2过期3等待期4延期',
+`resource_id` int DEFAULT NULL COMMENT '资源ID',
+`main_coach_id` int DEFAULT NULL COMMENT '主教练ID',
+`assistant_ids` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '助教ID列表(逗号分隔)',
+`education_id` int DEFAULT NULL COMMENT '教务ID',
+PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='学员课程表';
+这个是一个学员在一个课程周期里可以上课的课时记录以及课时有效期记录,在这个周期范围内为这个学员服务的教练和助教信息。这个表的主要作用是记录学员的课程信息,包括总课时数,赠送课时数,开始和结束日期等信息。这个表和人员与课程安排关系表是一对多的关系,一个学员可以有多个课程安排。
+
+school_student_course_usage(学员课程使用记录表)
+CREATE TABLE `school_student_course_usage` (
+`id` int NOT NULL AUTO_INCREMENT COMMENT '记录编号',
+`student_course_id` int NOT NULL COMMENT '学员课程ID(关联到student_courses表)',
+`used_hours` int NOT NULL COMMENT '本次使用的课时数',
+`usage_date` date NOT NULL COMMENT '课时使用日期',
+`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='学员课时消费记录表';
+这个表记录了学员在某个课程周期内使用的课时数,这个表和学员课程表是一对多的关系,一个学员可以有多个课时使用记录。
+school_class(班级表)
+CREATE TABLE `school_class` (
+`id` int NOT NULL AUTO_INCREMENT COMMENT '班级编号',
+`campus_id` int NOT NULL COMMENT '校区ID',
+`campus_name` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '校区名称',
+`class_name` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '班级名称',
+`head_coach` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '班继续
+级主教练',
+`age_group` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '班级授课年龄段',
+`class_type` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '班级类型',
+`assistant_coach` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT '班级助教',
+`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+`deleted_at` int DEFAULT '0' COMMENT '逻辑删除时间',
+`status` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '班级状态(1开启 2关闭)',
+`sort_order` int NOT NULL COMMENT '班级排序',
+`remarks` text COLLATE utf8mb4_general_ci COMMENT '班级备注',
+`educational_id` int NOT NULL DEFAULT '0' COMMENT '教务id',
+PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='班级表';
+学员报名时会分配班级,默认班级里的主教练和助教会被分配到学员课程表里。班级表主要是记录班级的信息,包括班级名称,主教练,助教,授课年龄段等信息。这个表和学员课程表是一对多的关系,一个班级可以有多个学员。
+school_class_resources_rel(班级学员关系表)
+CREATE TABLE `school_class_resources_rel` (
+`id` int NOT NULL AUTO_INCREMENT,
+`class_id` int NOT NULL COMMENT '班级id',
+`resource_id` int DEFAULT NULL COMMENT '资源id',
+`campus_id` int DEFAULT NULL COMMENT '校区id',
+`source_id` int DEFAULT NULL COMMENT '数据id',
+`source_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '数据资源类型student是学员,temporary是非正式学员',
+`join_time` int DEFAULT NULL COMMENT '加入时间',
+`out_time` int DEFAULT NULL COMMENT '离开时间',
+`status` tinyint DEFAULT NULL COMMENT '状态1新入2续费3过期4转班5转校',
+`create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+`update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
+PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=29 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='班级和资源关系表';
+这个表记录了班级和资源的关系,包括班级id,资源id,校区id,数据id,数据资源类型,加入时间,离开时间,状态等信息。这个表和班级表是一对多的关系,一个班级可以有多个资源。
\ No newline at end of file
diff --git a/uniapp/api/apiRoute.js b/uniapp/api/apiRoute.js
index dfe43deb..4bca4098 100644
--- a/uniapp/api/apiRoute.js
+++ b/uniapp/api/apiRoute.js
@@ -397,8 +397,62 @@ export default {
return await http.post('/updateStudentCoursePersonnel', data);
},
-// 获取订单支付二维码
+ // 获取订单支付二维码
async getOrderPayQrcode(data = {}) {
return await http.get('/getQrcode', data);
},
+
+ //↓↓↓↓↓↓↓↓↓↓↓↓-----课程安排相关接口-----↓↓↓↓↓↓↓↓↓↓↓↓
+ // 获取课程安排列表
+ async getCourseScheduleList(data = {}) {
+ return await http.get('/courseSchedule/list', data);
+ },
+ // 获取课程安排详情
+ async getCourseScheduleInfo(data = {}) {
+ return await http.get('/courseSchedule/info', data);
+ },
+ // 创建课程安排
+ async createCourseSchedule(data = {}) {
+ return await http.post('/courseSchedule/create', data);
+ },
+ // 批量创建课程安排
+ async batchCreateCourseSchedule(data = {}) {
+ return await http.post('/courseSchedule/batchCreate', data);
+ },
+ // 更新课程安排
+ async updateCourseSchedule(data = {}) {
+ return await http.post('/courseSchedule/update', data);
+ },
+ // 删除课程安排
+ async deleteCourseSchedule(data = {}) {
+ return await http.post('/courseSchedule/delete', data);
+ },
+ // 获取场地列表
+ async getCourseScheduleVenues(data = {}) {
+ return await http.get('/courseSchedule/venues', data);
+ },
+ // 获取场地可用时间
+ async getVenueAvailableTime(data = {}) {
+ return await http.get('/courseSchedule/venueAvailableTime', data);
+ },
+ // 检查教练时间冲突
+ async checkCoachConflict(data = {}) {
+ return await http.get('/courseSchedule/checkCoachConflict', data);
+ },
+ // 获取课程安排统计
+ async getCourseScheduleStatistics(data = {}) {
+ return await http.get('/courseSchedule/statistics', data);
+ },
+ // 学员加入课程安排
+ async joinCourseSchedule(data = {}) {
+ return await http.post('/courseSchedule/joinSchedule', data);
+ },
+ // 学员退出课程安排
+ async leaveCourseSchedule(data = {}) {
+ return await http.post('/courseSchedule/leaveSchedule', data);
+ },
+ // 获取筛选选项
+ async getCourseScheduleFilterOptions(data = {}) {
+ return await http.get('/courseSchedule/filterOptions', data);
+ },
}
\ No newline at end of file
diff --git a/uniapp/components/CommentList.vue b/uniapp/components/CommentList.vue
deleted file mode 100644
index 369033b7..00000000
--- a/uniapp/components/CommentList.vue
+++ /dev/null
@@ -1,240 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{item.content}}
-
-
- 评论
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{item1.content}}
-
-
-
-
-
-
-
-
-
-
- 暂无子评论
-
-
-
-
-
- 来当第一个评论的人吧!
-
-
-
-
-
-
-
-
-
-
-
-
- 发
- 布
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/uniapp/components/J-skeleton/J-skeleton.vue b/uniapp/components/J-skeleton/J-skeleton.vue
deleted file mode 100644
index 05c56a98..00000000
--- a/uniapp/components/J-skeleton/J-skeleton.vue
+++ /dev/null
@@ -1,166 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/uniapp/components/J-skeleton/README.md b/uniapp/components/J-skeleton/README.md
deleted file mode 100644
index 77c64e19..00000000
--- a/uniapp/components/J-skeleton/README.md
+++ /dev/null
@@ -1,77 +0,0 @@
-# skeleton
-感谢原作者 https://ext.dcloud.net.cn/plugin?id=852
-
-自己项目非常需要骨架,正好原作者发布了1.0 根据自己项目 自己修改了下。
-
-目前仅支持:
-1.轮播图
-2.分类栏
-3.头像
-4.文章条
-5.动态心情
-
-以上是根据自己项目修改的,后续再拓展,或者自己根据自己项目修改,原作者写的还是很灵活的,修改方便!
-
-
-## 属性说明
-
-|属性名|类型|默认值|说明|
-| -- | -- | --|--|
-| loading | Boolean | true | 是否显示占位图 |
-| flexType | String | flex-start | 排列方式 center 居中 √ space-between 两端对齐 √ space-around 子元素拉手分布 √ flex-start 居左 flex-end 居右 |
-| imgTitle | Boolean | false | 轮播图占位图 |
-| showAvatar | Boolean | true | 是否显示头像占位图 |
-| nameRow | Number | 1 | 显示头像圆1个 |
-| avatarSize | String | 50px | 头像站占位图大小 |
-| avatarShape | String | round | 头像形状,可选值:round, square |
-| showTitle | Boolean | true | 是否显示标题占位图 |
-| titleWidth | String | 40% | 标题占位图宽度 |
-| row | Number| 3 | 标题段落占位图行数 |
-| animate | Boolean | true | 是否开启动画 |
-
-## 使用示例
-
-```html
-
- 我是段落1
-
-```
-
-```javascript
-import Skeleton from '../components/skeleton/index.vue'
-export default {
- components: {
- Skeleton
- },
- data() {
- return {
- loading: true,
- skeleton1 : {
- avatarSize: '52px',
- row: 3,
- showTitle: true,
- }
- }
- },
- created() {
- this.reloadData()
- },
- methods: {
- reloadData() {
- this.loading = true
- setTimeout(() => {
- this.loading = false
- }, 3000)
- },
- },
-}
-```
-
-## 效果图
-
-
diff --git a/uniapp/components/aui-dialog/aui-dialog.vue b/uniapp/components/aui-dialog/aui-dialog.vue
deleted file mode 100644
index 0dab18c0..00000000
--- a/uniapp/components/aui-dialog/aui-dialog.vue
+++ /dev/null
@@ -1,438 +0,0 @@
-
-
-
-
- {{title}}
-
-
-
- {{item.label}}
-
-
-
-
-
-
- {{item.name}}
-
-
-
-
-
-
-
-
diff --git a/uniapp/components/aui-dialog/common/aui/css/aui.css b/uniapp/components/aui-dialog/common/aui/css/aui.css
deleted file mode 100644
index e094c8fb..00000000
--- a/uniapp/components/aui-dialog/common/aui/css/aui.css
+++ /dev/null
@@ -1,292 +0,0 @@
-.aui-content{
- width: 100%;
- height: 100vh;
- /* #ifndef MP */
- height: -webkit-calc(100vh - 44px);
- height: calc(100vh - 44px);
- /* #endif */
- background: #EFEFEF;
- overflow-y: scroll;
- padding: 0;
- box-sizing: border-box;
- position: relative;
-}
-/* 横向分割线 */
-.row-before{position: relative;}
-.row-before:before{content: ''; width: 100%; height: 1px !important; background: rgba(100,100,100,.3); -ms-transform: scaleY(.3); -webkit-transform: scaleY(.3); transform: scaleY(.3); position: absolute; top: 0; right: 0; left: auto; z-index: 1;}
-.row-after{position: relative;}
-.row-after:after{content: ''; width: 100%; height: 1px !important; background: rgba(100,100,100,.3); -ms-transform: scaleY(.3); -webkit-transform: scaleY(.3); transform: scaleY(.3); position: absolute; bottom: 0; right: 0; left: auto; z-index: 1;}
-/* 纵向分割线 */
-.col-before{position: relative;}
-.col-before:before{content: ''; width: 1px !important; height: 100%; background: rgba(100,100,100,.3); -ms-transform: scaleX(.3); -webkit-transform: scaleX(.3); transform: scaleX(.3); position: absolute; top: 0; left: 0; z-index: 1;}
-.col-after{position: relative;}
-.col-after:after{content: ''; width: 1px !important; height: 100%; background: rgba(100,100,100,.3); -ms-transform: scaleX(.3); -webkit-transform: scaleX(.3); transform: scaleX(.3); position: absolute; top: 0; right: 0; z-index: 1;}
-/*按钮边框线*/
-.border{position: relative;}
-.border:after{content: ''; width: -webkit-calc(200% - 2px); width: calc(200% - 2px); height: -webkit-calc(200% - 2px); height: calc(200% - 2px); border-radius: 3px; border: 1px solid rgba(100,100,100,.3); position: absolute; left: -50%; top: -50%; -ms-transform: scale(.5, .5); -webkit-transform: scale(.5, .5); transform: scale(.5, .5); z-index: 1;}
-.aui-lists{
- width: 100%;
-}
-.aui-list{
- width: 100%;
- height: 55px;
- font-size: 0;
- padding: 0 15px;
- background: #FFFFFF;
- box-sizing: border-box;
- position: relative;
- z-index: 1;
-}
-.aui-list:after{
- content: '';
- width: 100%;
- height: 1px;
- background: rgba(100,100,100,.3);
- -ms-transform: scaleY(.3);
- -webkit-transform: scaleY(.3);
- transform: scaleY(.3);
- position: absolute;
- bottom: 0;
- left: 0;
-}
-.aui-list:last-child:after{
- display: none;
-}
-.aui-list-title{
- width: 100%;
- height: 44px;
- line-height: 44px;
- font-size: 14px;
- padding: 0 15px;
- box-sizing: border-box;
- color: #999;
- display: inline-block;
-}
-.aui-list-left{
- height: 100%;
- line-height: 55px;
- font-size: 15px;
- color: #333;
- display: inline-block;
- vertical-align: top;
-}
-.aui-list-right{
- height: 100%;
- display: inline-block;
- vertical-align: top;
- float: right;
-}
-.aui-list-right .aui-btn-right{
- height: 55px;
- text-align: center;
- line-height: 55px;
- font-size: 14px;
- display: inline-block;
- color: #aaa;
- vertical-align: top;
-
-}
-.aui-btn{
- width: -webkit-calc(100% - 30px);
- width: calc(100% - 30px);
- height: 50px;
- line-height: 50px;
- text-align: center;
- border: none;
- color: #333;
- font-size: 15px;
- border-radius: 5px;
- margin: 0 15px 15px 15px;
- padding: 0 10px;
- transition: background-color .2s;
- box-sizing: border-box;
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
- position: relative;
-}
-.aui-btn-blue{
- background: #197DE0;
- color: #FFF;
-}
-
-/* 遮罩层样式 */
-.aui-mask{
- width: 100%;
- height: 100%;
- background: rgba(0,0,0,.6);
- -ms-animation: aui-fade-in .2s ease-out forwards;
- -webkit-animation: aui-fade-in .2s ease-out forwards;
- animation: aui-fade-in .2s ease-out forwards;
- position: fixed;
- top: 0px;
- left: 0px;
- z-index: 998;
-}
-
-/* 动画设计 */
-/* fade-in */
-@-ms-keyframes aui-fade-in{
- 0%{opacity: 0;}
- 100%{opacity: 1;}
-}
-@-webkit-keyframes aui-fade-in{
- 0%{opacity: 0;}
- 100%{opacity: 1;}
-}
-@keyframes aui-fade-in{
- 0%{opacity: 0;}
- 100%{opacity: 1;}
-}
-/* fade-out */
-@-ms-keyframes aui-fade-out{
- 0%{opacity: 1;}
- 100%{opacity: 0;}
-}
-@-webkit-keyframes aui-fade-out{
- 0%{opacity: 1;}
- 100%{opacity: 0;}
-}
-@keyframes aui-fade-out{
- 0%{opacity: 1;}
- 100%{opacity: 0;}
-}
-/* aui-scale-in */
-@-ms-keyframes aui-scale-in{
- 0%{-ms-transform: scale(0.8); -webkit-transform: scale(0.8); transform: scale(0.8);}
- 100%{-ms-transform: scale(1); -webkit-transform: scale(1); transform: scale(1);}
-}
-@-webkit-keyframes aui-scale-in{
- 0%{-ms-transform: scale(0.8); -webkit-transform: scale(0.8); transform: scale(0.8);}
- 100%{-ms-transform: scale(1); -webkit-transform: scale(1); transform: scale(1);}
-}
-@keyframes aui-scale-in{
- 0%{-ms-transform: scale(0.8); -webkit-transform: scale(0.8); transform: scale(0.8);}
- 100%{-ms-transform: scale(1); -webkit-transform: scale(1); transform: scale(1);}
-}
-/* aui-scale-out */
-@-ms-keyframes aui-scale-out{
- 0%{-ms-transform: scale(1); -webkit-transform: scale(1); transform: scale(1);}
- 100%{-ms-transform: scale(0.8); -webkit-transform: scale(0.8); transform: scale(0.8);}
-}
-@-webkit-keyframes aui-scale-out{
- 0%{-ms-transform: scale(1); -webkit-transform: scale(1); transform: scale(1);}
- 100%{-ms-transform: scale(0.8); -webkit-transform: scale(0.8); transform: scale(0.8);}
-}
-@keyframes aui-scale-out{
- 0%{-ms-transform: scale(1); -webkit-transform: scale(1); transform: scale(1);}
- 100%{-ms-transform: scale(0.8); -webkit-transform: scale(0.8); transform: scale(0.8);}
-}
-
-/* aui-scale-in-tosmall */
-@-ms-keyframes aui-scale-in-tosmall{
- 0%{-ms-transform: scale(1.2); -webkit-transform: scale(1.2); transform: scale(1.2);}
- 100%{-ms-transform: scale(1); -webkit-transform: scale(1); transform: scale(1);}
-}
-@-webkit-keyframes aui-scale-in-tosmall{
- 0%{-ms-transform: scale(1.2); -webkit-transform: scale(1.2); transform: scale(1.2);}
- 100%{-ms-transform: scale(1); -webkit-transform: scale(1); transform: scale(1);}
-}
-@keyframes aui-scale-in-tosmall{
- 0%{-ms-transform: scale(1.2); -webkit-transform: scale(1.2); transform: scale(1.2);}
- 100%{-ms-transform: scale(1); -webkit-transform: scale(1); transform: scale(1);}
-}
-
-/* aui-scale-in-tosmall-dialog */
-@-ms-keyframes aui-scale-in-tosmall-dialog{
- 0%{-ms-transform: translate3d(-50%,-50%,0) scale(1.16); -webkit-transform: translate3d(-50%,-50%,0) scale(1.16); transform: translate3d(-50%,-50%,0) scale(1.16); opacity: 0;}
- 100%{-ms-transform: translate3d(-50%,-50%,0) scale(1); -webkit-transform: translate3d(-50%,-50%,0) scale(1); transform: translate3(-50%,-50%,0) scale(1); opacity: 1;}
-}
-@-webkit-keyframes aui-scale-in-tosmall-dialog{
- 0%{-ms-transform: translate3d(-50%,-50%,0) scale(1.16); -webkit-transform: translate3d(-50%,-50%,0) scale(1.16); transform: translate3d(-50%,-50%,0) scale(1.16); opacity: 0;}
- 100%{-ms-transform: translate3d(-50%,-50%,0) scale(1); -webkit-transform: translate3d(-50%,-50%,0) scale(1); transform: translate3(-50%,-50%,0) scale(1); opacity: 1;}
-}
-@keyframes aui-scale-in-tosmall-dialog{
- 0%{-ms-transform: translate3d(-50%,-50%,0) scale(1.16); -webkit-transform: translate3d(-50%,-50%,0) scale(1.16); transform: translate3d(-50%,-50%,0) scale(1.16); opacity: 0;}
- 100%{-ms-transform: translate3d(-50%,-50%,0) scale(1); -webkit-transform: translate3d(-50%,-50%,0) scale(1); transform: translate3(-50%,-50%,0) scale(1); opacity: 1;}
-}
-/* aui-scale-out-tosmall-dialog */
-@-ms-keyframes aui-scale-out-tosmall-dialog{
- 0%{-ms-transform: translate3d(-50%,-50%,0) scale(1); -webkit-transform: translate3d(-50%,-50%,0) scale(1); transform: translate3d(-50%,-50%,0) scale(1); opacity: 1;}
- 100%{-ms-transform: translate3d(-50%,-50%,0) scale(0.8); -webkit-transform: translate3d(-50%,-50%,0) scale(0.8); transform: translate3(-50%,-50%,0) scale(0.8); opacity: 0;}
-}
-@-webkit-keyframes aui-scale-out-tosmall-dialog{
- 0%{-ms-transform: translate3d(-50%,-50%,0) scale(1); -webkit-transform: translate3d(-50%,-50%,0) scale(1); transform: translate3d(-50%,-50%,0) scale(1); opacity: 1;}
- 100%{-ms-transform: translate3d(-50%,-50%,0) scale(0.8); -webkit-transform: translate3d(-50%,-50%,0) scale(0.8); transform: translate3(-50%,-50%,0) scale(0.8); opacity: 0;}
-}
-@keyframes aui-scale-out-tosmall-dialog{
- 0%{-ms-transform: translate3d(-50%,-50%,0) scale(1); -webkit-transform: translate3d(-50%,-50%,0) scale(1); transform: translate3d(-50%,-50%,0) scale(1); opacity: 1;}
- 100%{-ms-transform: translate3d(-50%,-50%,0) scale(0.8); -webkit-transform: translate3d(-50%,-50%,0) scale(0.8); transform: translate3(-50%,-50%,0) scale(0.8); opacity: 0;}
-}
-/* aui-slide-up */
-@-ms-keyframes aui-slide-up{
- 0%{bottom: -40vh;}
- 100%{bottom: 10px;}
-}
-@-webkit-keyframes aui-slide-up{
- 0%{bottom: -40vh;}
- 100%{bottom: 10px;}
-}
-@keyframes aui-slide-up{
- 0%{bottom: -40vh;}
- 100%{bottom: 10px;}
-}
-
-/* aui-slide-down */
-@-ms-keyframes aui-slide-down{
- 0%{bottom: 10px;}
- 100%{bottom: -40vh;}
-}
-@-webkit-keyframes aui-slide-down{
- 0%{bottom: 10px;}
- 100%{bottom: -40vh;}
-}
-@keyframes aui-slide-down{
- 0%{bottom: 10px;}
- 100%{bottom: -40vh;}
-}
-
-/* aui-slide-up-screen */
-@-ms-keyframes aui-slide-up-screen{
- 0%{bottom: -60vh;}
- 100%{bottom: 0px;}
-}
-@-webkit-keyframes aui-slide-up-screen{
- 0%{bottom: -60vh;}
- 100%{bottom: 0px;}
-}
-@keyframes aui-slide-up-screen{
- 0%{bottom: -60vh;}
- 100%{bottom: 0px;}
-}
-
-/* aui-slide-down-screen */
-@-ms-keyframes aui-slide-down-screen{
- 0%{bottom: 0px;}
- 100%{bottom: -60vh;}
-}
-@-webkit-keyframes aui-slide-down-screen{
- 0%{bottom: 0px;}
- 100%{bottom: -60vh;}
-}
-@keyframes aui-slide-down-screen{
- 0%{bottom: 0px;}
- 100%{bottom: -60vh;}
-}
-
-@-webkit-keyframes aui-slide-up_to_middle {
- 0%{opacity: 0; top: -50vh; -ms-transform: translate(0,0); -webkit-transform: translate(0,0); transform: translate(0,0);}
- 100%{opacity: 1; top: 45%; -ms-transform: translate(0, -50%); -webkit-transform: translate(0, -50%); transform: translate(0, -50%);}
-}
-@keyframes aui-slide-up_to_middle {
- 0%{opacity: 0; top: -50vh; -ms-transform: translate(0,0); -webkit-transform: translate(0,0); transform: translate(0,0);}
- 100%{opacity: 1; top: 45%; -ms-transform: translate(0, -50%); -webkit-transform: translate(0, -50%); transform: translate(0, -50%);}
-}
-@-webkit-keyframes aui-slide-middle_to_up {
- 0%{opacity: 1; top: 45%; -ms-transform: translate(0, -50%); -webkit-transform: translate(0, -50%); transform: translate(0, -50%);}
- 100%{opacity: 0; top: -50vh; -ms-transform: translate(0,0); -webkit-transform: translate(0,0); transform: translate(0,0);}
-}
-@keyframes aui-slide-middle_to_up {
- 0%{opacity: 1; top: 45%; -ms-transform: translate(0, -50%); -webkit-transform: translate(0, -50%); transform: translate(0, -50%);}
- 100%{opacity: 0; top: -50vh; -ms-transform: translate(0,0); -webkit-transform: translate(0,0); transform: translate(0,0);}
-}
\ No newline at end of file
diff --git a/uniapp/components/aui-dialog/common/aui/css/aui.iconfont.css b/uniapp/components/aui-dialog/common/aui/css/aui.iconfont.css
deleted file mode 100644
index e479f071..00000000
--- a/uniapp/components/aui-dialog/common/aui/css/aui.iconfont.css
+++ /dev/null
@@ -1 +0,0 @@
-@font-face{font-family:"iconfont";src:url('//at.alicdn.com/t/font_1135293_z1315ov8k2t.eot?t=1589338239928');src:url('//at.alicdn.com/t/font_1135293_z1315ov8k2t.eot?t=1589338239928#iefix') format('embedded-opentype'),url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'),url('//at.alicdn.com/t/font_1135293_z1315ov8k2t.woff?t=1589338239928') format('woff'),url('//at.alicdn.com/t/font_1135293_z1315ov8k2t.ttf?t=1589338239928') format('truetype'),url('//at.alicdn.com/t/font_1135293_z1315ov8k2t.svg?t=1589338239928#iconfont') format('svg')}.iconfont{font-family:"iconfont" !important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icondaojishi:before{content:"\e65e"}.iconCSS:before{content:"\e622"}.iconqiu:before{content:"\e615"}.iconradio:before{content:"\e613"}.iconradio1:before{content:"\e799"}.iconzhutise:before{content:"\e65a"}.icondatepicker1:before{content:"\e642"}.icondatepicker:before{content:"\e629"}.iconloading5:before{content:"\e635"}.iconloading7:before{content:"\e611"}.iconloading_r:before{content:"\e612"}.iconrenlianshibie:before{content:"\e798"}.iconweibiaoti-zhuanhuan-:before{content:"\e610"}.iconxingzhuang:before{content:"\e607"}.iconhuatong:before{content:"\e659"}.iconbiaoqing1:before{content:"\e797"}.iconicon-:before{content:"\e6db"}.iconjianpan:before{content:"\e670"}.iconyuyin:before{content:"\e630"}.iconluyin:before{content:"\e64b"}.iconjianpanshanchu:before{content:"\e64e"}.iconxuanxiangqia1:before{content:"\e60a"}.iconxuanxiangqialiebiao:before{content:"\e625"}.iconxialaliebiao:before{content:"\e7a7"}.iconcopy:before{content:"\e604"}.iconjiantieban:before{content:"\e605"}.iconjurassic_paste:before{content:"\e796"}.iconerweima:before{content:"\e600"}.icontupiancaijian:before{content:"\e631"}.icontupianshangchuan:before{content:"\e636"}.iconzujian-xialaxuankuang:before{content:"\e620"}.iconxuanxiangqia:before{content:"\e654"}.iconxing:before{content:"\e652"}.iconAPP:before{content:"\e601"}.iconjs:before{content:"\e6bf"}.iconshilidaima:before{content:"\e640"}.iconshouye1:before{content:"\e60f"}.icontime1:before{content:"\e614"}.iconyanjing:before{content:"\e63b"}.iconkaiyanjing:before{content:"\e6a8"}.iconsearch:before{content:"\e69e"}.iconhtbarrowright02:before{content:"\e6b4"}.iconclose1:before{content:"\e603"}.icondizhi:before{content:"\e60e"}.iconqianniudaidise:before{content:"\e78d"}.iconquestions:before{content:"\e78e"}.iconsupply:before{content:"\e78f"}.icontools:before{content:"\e790"}.iconint:before{content:"\e791"}.iconcommodity:before{content:"\e792"}.iconzhtn:before{content:"\e793"}.iconTop:before{content:"\e6ca"}.iconleft2:before{content:"\e651"}.iconleft3:before{content:"\e794"}.iconright3:before{content:"\e795"}.iconshut_down:before{content:"\e6a2"}.iconwithdraw:before{content:"\e6a4"}.iconeye_protection:before{content:"\e6a1"}.iconnickname:before{content:"\e6a5"}.iconproblem:before{content:"\e6a7"}.icondown:before{content:"\e703"}.icontop:before{content:"\e653"}.iconbianji:before{content:"\e62c"}.iconweibo:before{content:"\e62f"}.iconyidiandiantubiao03:before{content:"\e606"}.iconqq:before{content:"\e6a0"}.iconweixin:before{content:"\e6b1"}.iconright:before{content:"\e608"}.iconpengyouquan:before{content:"\e667"}.icontop1:before{content:"\e609"}.iconloading:before{content:"\e68f"}.iconLC_icon_down_line_circle:before{content:"\e657"}.iconadd:before{content:"\e656"}.iconup_s8:before{content:"\e65b"}.iconmore:before{content:"\e60b"}.iconloading2:before{content:"\e6a6"}.iconright1:before{content:"\e6c6"}.iconjian:before{content:"\e6aa"}.iconqq-copy:before{content:"\e658"}.icontupian:before{content:"\e691"}.iconleft:before{content:"\e626"}.iconadd1:before{content:"\e62b"}.iconset:before{content:"\e689"}.iconaddress:before{content:"\e602"}.icondown1:before{content:"\e6ac"}.iconjian1:before{content:"\e68e"}.iconguolv:before{content:"\e634"}.icondelete:before{content:"\e60c"}.iconaddress1:before{content:"\e60d"}.iconmore1:before{content:"\e617"}.icondown2:before{content:"\e6e9"}.iconimage:before{content:"\e6f5"}.iconimage1:before{content:"\e674"}.iconleft1:before{content:"\e675"}.icontop2:before{content:"\e676"}.iconshangchuan:before{content:"\e6a3"}.iconadd2:before{content:"\e6b3"}.iconLoading1:before{content:"\e65d"}.iconjian2:before{content:"\e62e"}.iconaddress2:before{content:"\e66b"}.iconshouye:before{content:"\e669"}.iconaccessory:before{content:"\e6dd"}.iconactivity:before{content:"\e6de"}.iconactivity_fill:before{content:"\e6df"}.iconadd3:before{content:"\e6e0"}.iconaddition_fill:before{content:"\e6e1"}.iconaddition:before{content:"\e6e2"}.iconaddpeople_fill:before{content:"\e6e3"}.iconaddpeople:before{content:"\e6e4"}.iconaddressbook_fill:before{content:"\e6e5"}.iconaddressbook:before{content:"\e6e6"}.iconbarrage_fill:before{content:"\e6e7"}.iconbarrage:before{content:"\e6e8"}.iconbrowse_fill:before{content:"\e6ea"}.iconbrowse:before{content:"\e6eb"}.iconbrush:before{content:"\e6ec"}.iconbrush_fill:before{content:"\e6ed"}.iconbusinesscard_fill:before{content:"\e6ee"}.iconbusinesscard:before{content:"\e6ef"}.iconcamera_fill:before{content:"\e6f0"}.iconcamera:before{content:"\e6f1"}.iconclock_fill:before{content:"\e6f2"}.iconclock:before{content:"\e6f3"}.iconclose:before{content:"\e6f4"}.iconcollection_fill:before{content:"\e6f6"}.iconcollection:before{content:"\e6f7"}.iconcomputer_fill:before{content:"\e6f8"}.iconcomputer:before{content:"\e6f9"}.iconcoordinates_fill:before{content:"\e6fa"}.iconcoordinates:before{content:"\e6fb"}.iconcoupons_fill:before{content:"\e6fc"}.iconcoupons:before{content:"\e6fd"}.iconcreatetask_fill:before{content:"\e6fe"}.iconcreatetask:before{content:"\e6ff"}.iconcustomerservice_fill:before{content:"\e700"}.iconcustomerservice:before{content:"\e701"}.icondelete_fill:before{content:"\e702"}.icondelete1:before{content:"\e704"}.icondocument:before{content:"\e705"}.icondocument_fill:before{content:"\e706"}.icondynamic_fill:before{content:"\e707"}.icondynamic:before{content:"\e708"}.iconeditor:before{content:"\e709"}.iconeit:before{content:"\e70a"}.iconemoji_fill:before{content:"\e70b"}.iconemoji:before{content:"\e70c"}.iconempty:before{content:"\e70d"}.iconempty_fill:before{content:"\e70e"}.iconenter:before{content:"\e70f"}.iconenterinto:before{content:"\e710"}.iconenterinto_fill:before{content:"\e711"}.iconfeedback_fill:before{content:"\e712"}.iconfeedback:before{content:"\e713"}.iconflag_fill:before{content:"\e714"}.iconflag:before{content:"\e715"}.iconflashlight:before{content:"\e716"}.iconflashlight_fill:before{content:"\e717"}.iconflip:before{content:"\e718"}.iconflip_fill:before{content:"\e719"}.iconfullscreen:before{content:"\e71a"}.icongroup:before{content:"\e71b"}.icongroup_fill:before{content:"\e71c"}.iconheadlines_fill:before{content:"\e71d"}.iconheadlines:before{content:"\e71e"}.iconhomepage_fill:before{content:"\e71f"}.iconhomepage:before{content:"\e720"}.iconintegral_fill:before{content:"\e721"}.iconintegral:before{content:"\e722"}.iconinteractive_fill:before{content:"\e723"}.iconinteractive:before{content:"\e724"}.iconkeyboard:before{content:"\e725"}.iconlabel:before{content:"\e726"}.iconlabel_fill:before{content:"\e727"}.iconlike_fill:before{content:"\e728"}.iconlike:before{content:"\e729"}.iconlive_fill:before{content:"\e72a"}.iconlive:before{content:"\e72b"}.iconlock_fill:before{content:"\e72c"}.iconlock:before{content:"\e72d"}.iconmail:before{content:"\e72e"}.iconmail_fill:before{content:"\e72f"}.iconmanage_fill:before{content:"\e730"}.iconmanage:before{content:"\e731"}.iconmessage:before{content:"\e732"}.iconmessage_fill:before{content:"\e733"}.iconmine:before{content:"\e734"}.iconmine_fill:before{content:"\e735"}.iconmobilephone_fill:before{content:"\e736"}.iconmobilephone:before{content:"\e737"}.iconmore2:before{content:"\e738"}.iconnarrow:before{content:"\e739"}.iconoffline_fill:before{content:"\e73a"}.iconoffline:before{content:"\e73b"}.iconorder_fill:before{content:"\e73c"}.iconorder:before{content:"\e73d"}.iconother:before{content:"\e73e"}.iconpeople_fill:before{content:"\e73f"}.iconpeople:before{content:"\e740"}.iconpicture_fill:before{content:"\e741"}.iconpicture:before{content:"\e742"}.iconplay:before{content:"\e743"}.iconplay_fill:before{content:"\e744"}.iconplayon_fill:before{content:"\e745"}.iconplayon:before{content:"\e746"}.iconpraise_fill:before{content:"\e747"}.iconpraise:before{content:"\e748"}.iconprompt_fill:before{content:"\e749"}.iconprompt:before{content:"\e74a"}.iconqrcode_fill:before{content:"\e74b"}.iconqrcode:before{content:"\e74c"}.iconredpacket_fill:before{content:"\e74d"}.iconredpacket:before{content:"\e74e"}.iconrefresh:before{content:"\e74f"}.iconremind_fill:before{content:"\e750"}.iconremind:before{content:"\e751"}.iconreturn:before{content:"\e752"}.iconright2:before{content:"\e753"}.iconscan:before{content:"\e754"}.iconselect_fill:before{content:"\e755"}.iconselect:before{content:"\e756"}.iconsend:before{content:"\e757"}.iconservice_fill:before{content:"\e758"}.iconservice:before{content:"\e759"}.iconsetup_fill:before{content:"\e75a"}.iconsetup:before{content:"\e75b"}.iconshare_fill:before{content:"\e75c"}.iconshare:before{content:"\e75d"}.iconshielding_fill:before{content:"\e75e"}.iconshielding:before{content:"\e75f"}.iconsmallscreen_fill:before{content:"\e760"}.iconsmallscreen:before{content:"\e761"}.iconstealth_fill:before{content:"\e762"}.iconstealth:before{content:"\e763"}.iconsuccess_fill:before{content:"\e764"}.iconsuccess:before{content:"\e765"}.iconsuspend:before{content:"\e766"}.iconswitch:before{content:"\e767"}.iconsystemprompt_fill:before{content:"\e768"}.iconsystemprompt:before{content:"\e769"}.icontailor:before{content:"\e76a"}.icontask:before{content:"\e76b"}.icontask_fill:before{content:"\e76c"}.icontasklist_fill:before{content:"\e76d"}.icontasklist:before{content:"\e76e"}.icontext:before{content:"\e76f"}.icontime_fill:before{content:"\e770"}.icontime:before{content:"\e771"}.icontranslation_fill:before{content:"\e772"}.icontranslation:before{content:"\e773"}.icontrash:before{content:"\e774"}.icontrash_fill:before{content:"\e775"}.iconundo:before{content:"\e776"}.iconunlock_fill:before{content:"\e777"}.iconunlock:before{content:"\e778"}.iconvideo:before{content:"\e779"}.iconvideo_fill:before{content:"\e77a"}.iconwarning_fill:before{content:"\e77b"}.iconwarning:before{content:"\e77c"}.iconworkbench_fill:before{content:"\e77d"}.iconworkbench:before{content:"\e77e"}.iconsearch1:before{content:"\e77f"}.iconsearchfill:before{content:"\e780"}.iconqianniu:before{content:"\e781"}.iconpublishgoods_fill:before{content:"\e782"}.iconshop_fill:before{content:"\e783"}.icontransaction_fill:before{content:"\e784"}.iconpackup:before{content:"\e785"}.iconunfold:before{content:"\e786"}.iconwangwang:before{content:"\e787"}.iconfinancial_fill:before{content:"\e788"}.iconmarketing_fill:before{content:"\e789"}.iconshake:before{content:"\e78a"}.icondecoration_fill:before{content:"\e78b"}.iconbudaidise:before{content:"\e78c"}
diff --git a/uniapp/components/aui-dialog/common/aui/js/aui.js b/uniapp/components/aui-dialog/common/aui/js/aui.js
deleted file mode 100644
index efa3c8fb..00000000
--- a/uniapp/components/aui-dialog/common/aui/js/aui.js
+++ /dev/null
@@ -1,55 +0,0 @@
-const aui = {
- console: function(str){
- console.log(str);
- },
- /***打开新页面
- @param {string} url 页面路径
- @param {Object} opts 参数 {id: ''}
- @example: aui.openWin("index.html", {id: 1})
- */
- openWin(url, opts){
- var _this = this;
- var str = '?';
- for(var i in opts){
- if(_this.isDefine(opts[i])){
- str += i + '=' + opts[i] + '&';
- }
- }
- uni.navigateTo({
- url: _this.isDefine(opts) ? url + str : url
- })
- },
- /***关闭页面
- @example: aui.closeWin()
- */
- closeWin(callback){
- //直接关闭页面,并向后台发送数据
- if(typeof callback == "function"){
- if(window.addEventListener) {
- window.addEventListener("beforeunload", callback, false);
- } else {
- window.attachEvent("onbeforeunload", callback, false);
- }
- }
- uni.navigateBack({
- delta: 1
- });
- },
- /***判断字符串是否为空
- @param {string} str 变量
- @example: aui.isDefine("变量");
- */
- isDefine(str){
- if (str == null || str == "" || str == "undefined" || str == undefined || str == "null" || str == "(null)" || str == 'NULL' || typeof (str) == 'undefined'){
- return false;
- }else{
- str = str + "";
- str = str.replace(/\s/g, "");
- if (str == ""){return false;}
- return true;
- }
- },
-}
-export {
- aui
-}
\ No newline at end of file
diff --git a/uniapp/components/coolc-coupon/coolc-coupon.vue b/uniapp/components/coolc-coupon/coolc-coupon.vue
deleted file mode 100644
index 820d07c6..00000000
--- a/uniapp/components/coolc-coupon/coolc-coupon.vue
+++ /dev/null
@@ -1,181 +0,0 @@
-
-
-
- 满{{item.full}}使用
- ¥{{item.reduce}}
- {{item.end_time}}前使用
-
-
- {{item.coupon.name}}
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/uniapp/components/custom-modal/example.vue b/uniapp/components/custom-modal/example.vue
deleted file mode 100644
index d10b26b1..00000000
--- a/uniapp/components/custom-modal/example.vue
+++ /dev/null
@@ -1,234 +0,0 @@
-
-
-
-
-
-
-
-
-
- 购买成功
- 成功购买一张月卡,可免费阅读30天
-
-
-
-
-
-
-
-
-
- 确认删除
- 删除后无法恢复,确定要继续吗?
-
-
-
-
-
-
-
-
-
-
- 支付二维码
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/uniapp/components/modal/modal.vue b/uniapp/components/modal/modal.vue
deleted file mode 100644
index 8538f4f4..00000000
--- a/uniapp/components/modal/modal.vue
+++ /dev/null
@@ -1,393 +0,0 @@
-
-
-
-
-
-
-
- {{title}}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/uniapp/components/uni-icons/icons.js b/uniapp/components/uni-icons/icons.js
deleted file mode 100644
index 1f5a7789..00000000
--- a/uniapp/components/uni-icons/icons.js
+++ /dev/null
@@ -1,96 +0,0 @@
-export default {
- 'contact': '\ue100',
- 'person': '\ue101',
- 'personadd': '\ue102',
- 'contact-filled': '\ue130',
- 'person-filled': '\ue131',
- 'personadd-filled': '\ue132',
- 'phone': '\ue200',
- 'email': '\ue201',
- 'chatbubble': '\ue202',
- 'chatboxes': '\ue203',
- 'phone-filled': '\ue230',
- 'email-filled': '\ue231',
- 'chatbubble-filled': '\ue232',
- 'chatboxes-filled': '\ue233',
- 'weibo': '\ue260',
- 'weixin': '\ue261',
- 'pengyouquan': '\ue262',
- 'chat': '\ue263',
- 'qq': '\ue264',
- 'videocam': '\ue300',
- 'camera': '\ue301',
- 'mic': '\ue302',
- 'location': '\ue303',
- 'mic-filled': '\ue332',
- 'speech': '\ue332',
- 'location-filled': '\ue333',
- 'micoff': '\ue360',
- 'image': '\ue363',
- 'map': '\ue364',
- 'compose': '\ue400',
- 'trash': '\ue401',
- 'upload': '\ue402',
- 'download': '\ue403',
- 'close': '\ue404',
- 'redo': '\ue405',
- 'undo': '\ue406',
- 'refresh': '\ue407',
- 'star': '\ue408',
- 'plus': '\ue409',
- 'minus': '\ue410',
- 'circle': '\ue411',
- 'checkbox': '\ue411',
- 'close-filled': '\ue434',
- 'clear': '\ue434',
- 'refresh-filled': '\ue437',
- 'star-filled': '\ue438',
- 'plus-filled': '\ue439',
- 'minus-filled': '\ue440',
- 'circle-filled': '\ue441',
- 'checkbox-filled': '\ue442',
- 'closeempty': '\ue460',
- 'refreshempty': '\ue461',
- 'reload': '\ue462',
- 'starhalf': '\ue463',
- 'spinner': '\ue464',
- 'spinner-cycle': '\ue465',
- 'search': '\ue466',
- 'plusempty': '\ue468',
- 'forward': '\ue470',
- 'back': '\ue471',
- 'left-nav': '\ue471',
- 'checkmarkempty': '\ue472',
- 'home': '\ue500',
- 'navigate': '\ue501',
- 'gear': '\ue502',
- 'paperplane': '\ue503',
- 'info': '\ue504',
- 'help': '\ue505',
- 'locked': '\ue506',
- 'more': '\ue507',
- 'flag': '\ue508',
- 'home-filled': '\ue530',
- 'gear-filled': '\ue532',
- 'info-filled': '\ue534',
- 'help-filled': '\ue535',
- 'more-filled': '\ue537',
- 'settings': '\ue560',
- 'list': '\ue562',
- 'bars': '\ue563',
- 'loop': '\ue565',
- 'paperclip': '\ue567',
- 'eye': '\ue568',
- 'arrowup': '\ue580',
- 'arrowdown': '\ue581',
- 'arrowleft': '\ue582',
- 'arrowright': '\ue583',
- 'arrowthinup': '\ue584',
- 'arrowthindown': '\ue585',
- 'arrowthinleft': '\ue586',
- 'arrowthinright': '\ue587',
- 'pulldown': '\ue588',
- 'closefill': '\ue589',
- 'sound': '\ue590',
- 'scan': '\ue612'
-}
diff --git a/uniapp/components/uni-icons/uni-icons.vue b/uniapp/components/uni-icons/uni-icons.vue
deleted file mode 100644
index 85b41805..00000000
--- a/uniapp/components/uni-icons/uni-icons.vue
+++ /dev/null
@@ -1,57 +0,0 @@
-
- {{icons[type]}}
-
-
-
-
-
diff --git a/uniapp/components/uni-nav-bar/uni-nav-bar.vue b/uniapp/components/uni-nav-bar/uni-nav-bar.vue
index 7eb8e74a..6cb13734 100644
--- a/uniapp/components/uni-nav-bar/uni-nav-bar.vue
+++ b/uniapp/components/uni-nav-bar/uni-nav-bar.vue
@@ -42,13 +42,11 @@
@@ -1115,7 +1164,7 @@
.action-buttons {
display: flex;
align-items: center;
-
+
.btn-item {
width: 60rpx;
height: 60rpx;
@@ -1123,7 +1172,7 @@
align-items: center;
justify-content: center;
margin-left: 20rpx;
-
+
.btn-icon {
width: 40rpx;
height: 40rpx;
@@ -1163,98 +1212,114 @@
background-color: #292929;
}
}
- .course_box_top{
+
+ .course_box_top {
width: 100%;
height: 60%;
}
- .course_box_centre{
+
+ .course_box_centre {
margin: auto;
width: 95%;
height: 4rpx;
background: #F5F5F8;
}
- .course_box_below{
+
+ .course_box_below {
width: 100%;
height: 40%;
display: flex;
justify-content: space-between;
}
+
.course_box_top_top {
display: flex;
align-items: center;
gap: 20rpx;
-
+
.pic {
width: 44rpx;
height: 44rpx;
border-radius: 50%;
}
-
+
.name {
color: #333333;
font-size: 28rpx;
}
}
- .course_box_top_below{
+
+ .course_box_top_below {
display: flex;
align-items: center;
justify-content: space-between;
}
- .course_box_top_below-left{
+
+ .course_box_top_below-left {
display: flex;
align-items: center;
padding-top: 16rpx;
font-size: 24rpx;
}
+
.drop-image-x {
width: 20rpx;
height: 20rpx;
}
+
.title-x {
font-size: 28rpx;
color: #333333;
padding-left: 10rpx;
}
- .course_box_top_below-right{
+
+ .course_box_top_below-right {
padding-top: 16rpx;
font-size: 24rpx;
display: flex;
align-items: center;
}
+
.drop-image-star {
width: 40rpx;
height: 40rpx;
}
- .selected-text{
+
+ .selected-text {
color: #1CD188;
display: flex;
align-items: center;
}
- .text{
+
+ .text {
color: #333333;
display: flex;
align-items: center;
}
- .basic-message{
+
+ .basic-message {
color: #fff;
padding: 16rpx 60rpx;
display: flex;
justify-content: space-between;
}
- .basic-message-div{
+
+ .basic-message-div {
width: 92%;
margin: auto;
background: #555555;
border-radius: 16rpx;
padding: 16rpx 0;
}
- .basic-message-div-txt{
+
+ .basic-message-div-txt {
display: flex;
justify-content: space-between;
color: #FFFFFF;
padding: 14rpx 30rpx;
}
- .bottom-label{
+
+ .bottom-label {
width: 100%;
height: 150rpx;
background: #fff;
@@ -1266,7 +1331,7 @@
align-items: center;
padding: 0 30rpx;
}
-
+
// 自定义弹窗样式
.custom-popup-dialog {
width: 650rpx;
@@ -1274,52 +1339,52 @@
background-color: #fff;
overflow: hidden;
}
-
+
.dialog-header {
padding: 30rpx;
text-align: center;
border-bottom: 1px solid #eee;
}
-
+
.dialog-title {
font-size: 32rpx;
font-weight: bold;
color: #333;
}
-
+
.dialog-content {
padding: 30rpx;
}
-
+
.dialog-footer {
display: flex;
border-top: 1px solid #eee;
}
-
+
.dialog-btn {
flex: 1;
padding: 25rpx 0;
text-align: center;
font-size: 30rpx;
}
-
+
.cancel-btn {
color: #666;
border-right: 1px solid #eee;
}
-
+
.confirm-btn {
color: #29D3B4;
font-weight: bold;
}
-
+
// 备注文本框样式
.remark-textarea-container {
width: 100%;
position: relative;
padding: 10rpx 0;
}
-
+
.remark-textarea {
width: 100%;
height: 240rpx;
@@ -1330,7 +1395,7 @@
background-color: #f8f8f8;
box-sizing: border-box;
}
-
+
.remark-count {
position: absolute;
bottom: 20rpx;
@@ -1338,19 +1403,20 @@
font-size: 24rpx;
color: #999;
}
-
+
// 备注按钮样式
.remark-btn {
- background-color: #29D3B4 !important;
- color: white !important;
- margin: 0 !important;
- padding: 0 20rpx !important;
- height: 60rpx !important;
+ background-color: #29D3B4 !important;
+ color: white !important;
+ margin: 0 !important;
+ padding: 0 20rpx !important;
+ height: 60rpx !important;
line-height: 60rpx !important;
font-size: 24rpx !important;
border-radius: 30rpx !important;
}
- .follow-records-list{
+
+ .follow-records-list {
width: 92%;
background: #434544;
border-radius: 16rpx;
@@ -1359,7 +1425,8 @@
color: #fff;
position: relative;
}
- .same-community{
+
+ .same-community {
width: 120rpx;
background: #3d4a55;
color: #1e62a9;
@@ -1370,7 +1437,8 @@
text-align: center;
border-radius: 40rpx 70rpx 70rpx 12rpx;
}
- .coeducation{
+
+ .coeducation {
width: 120rpx;
background: #3d4a55;
color: #2e9380;
@@ -1381,7 +1449,8 @@
text-align: center;
border-radius: 40rpx 70rpx 70rpx 12rpx;
}
- .same-community{
+
+ .same-community {
width: 120rpx;
background: #40504c;
color: #1e62a9;
@@ -1392,13 +1461,15 @@
text-align: center;
border-radius: 40rpx 70rpx 70rpx 12rpx;
}
- .search{
+
+ .search {
width: 92%;
margin: auto;
display: flex;
margin-top: 20rpx;
}
- .selected{
+
+ .selected {
background: #294e48;
border-radius: 16rpx;
padding: 12rpx 8rpx;
@@ -1406,7 +1477,8 @@
color: #29d3b4;
margin-left: 5rpx;
}
- .not-selected{
+
+ .not-selected {
margin-left: 5rpx;
background: #ffffff;
border: 4rpx #959595 solid;
@@ -1414,6 +1486,7 @@
padding: 12rpx 8rpx;
text-align: center;
}
+
.call-record-item {
width: 100%;
background: #434544;
@@ -1423,52 +1496,60 @@
color: #fff;
position: relative;
}
+
.call-record-header {
display: flex;
justify-content: space-between;
align-items: center;
}
+
.call-name {
font-size: 28rpx;
font-weight: bold;
}
+
.call-time {
font-size: 24rpx;
color: #999;
}
+
.call-record-content {
display: flex;
justify-content: space-between;
align-items: center;
}
+
.call-detail {
display: flex;
align-items: center;
}
+
.call-label {
font-size: 24rpx;
color: #999;
margin-right: 10rpx;
}
+
.call-remark {
margin-top: 10rpx;
}
+
.call-remark-content {
font-size: 24rpx;
color: #fff;
}
-
+
// 通话记录样式
.call-log {
width: 100%;
padding: 0 20rpx;
box-sizing: border-box;
}
-
+
.call-record-wrapper {
margin-bottom: 20rpx;
}
-
+
.call-record-item {
width: 100%;
background: #3D3D3D;
@@ -1477,7 +1558,7 @@
color: #fff;
box-sizing: border-box;
}
-
+
.call-record-header {
display: flex;
justify-content: space-between;
@@ -1486,42 +1567,42 @@
border-bottom: 1px solid #4A4A4A;
padding-bottom: 10rpx;
}
-
+
.call-name {
font-size: 28rpx;
font-weight: bold;
color: #fff;
}
-
+
.call-time {
font-size: 24rpx;
color: #999;
}
-
+
.call-record-content {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 10rpx;
}
-
+
.call-detail {
display: flex;
align-items: center;
}
-
+
.call-label {
font-size: 24rpx;
color: #999;
margin-right: 10rpx;
}
-
+
.call-remark {
margin-top: 10rpx;
padding-top: 10rpx;
border-top: 1px solid #4A4A4A;
}
-
+
.call-remark-content {
font-size: 24rpx;
color: #fff;
@@ -1530,12 +1611,12 @@
width: 90%;
vertical-align: top;
}
-
+
// 课程信息样式
.course-info {
padding: 20rpx;
}
-
+
.course-item {
background: #3D3D3D;
border-radius: 16rpx;
@@ -1543,7 +1624,7 @@
margin-bottom: 20rpx;
color: #fff;
}
-
+
.course-header {
display: flex;
justify-content: space-between;
@@ -1552,42 +1633,42 @@
padding-bottom: 15rpx;
border-bottom: 1px solid #4A4A4A;
}
-
+
.course-title {
font-size: 32rpx;
font-weight: bold;
color: #fff;
}
-
+
.course-status {
padding: 8rpx 16rpx;
border-radius: 12rpx;
font-size: 24rpx;
color: #fff;
}
-
+
.status-active {
background: #29d3b4;
}
-
+
.status-expired {
background: #ff6b6b;
}
-
+
.status-completed {
background: #999;
}
-
+
.status-default {
background: #666;
}
-
+
.course-progress {
display: flex;
align-items: center;
margin-bottom: 20rpx;
}
-
+
.progress-bar {
flex: 1;
height: 12rpx;
@@ -1596,51 +1677,51 @@
overflow: hidden;
margin-right: 20rpx;
}
-
+
.progress-fill {
height: 100%;
background: linear-gradient(to right, #29d3b4, #1ea08e);
border-radius: 6rpx;
transition: width 0.3s ease;
}
-
+
.progress-text {
font-size: 26rpx;
color: #29d3b4;
min-width: 120rpx;
text-align: right;
}
-
+
.course-details {
margin-bottom: 20rpx;
}
-
+
.detail-row {
display: flex;
justify-content: space-between;
margin-bottom: 15rpx;
font-size: 28rpx;
}
-
+
.detail-label {
color: #999;
}
-
+
.detail-value {
color: #fff;
}
-
+
.course-actions {
text-align: center;
padding-top: 15rpx;
border-top: 1px solid #4A4A4A;
}
-
+
.action-btn {
color: #29d3b4;
font-size: 28rpx;
}
-
+
.empty-course {
display: flex;
flex-direction: column;
@@ -1648,19 +1729,19 @@
justify-content: center;
padding: 100rpx 0;
}
-
+
.empty-img {
width: 200rpx;
height: 200rpx;
opacity: 0.5;
margin-bottom: 30rpx;
}
-
+
.empty-text {
color: #999;
font-size: 28rpx;
}
-
+
// 教练配置编辑弹窗样式
.popup-container {
width: 90vw;
@@ -1670,7 +1751,7 @@
box-shadow: 0 10rpx 40rpx rgba(0, 0, 0, 0.3);
overflow: hidden;
}
-
+
.popup-header {
display: flex;
justify-content: space-between;
@@ -1679,12 +1760,12 @@
background: #29d3b4;
color: #fff;
}
-
+
.popup-title {
font-size: 36rpx;
font-weight: bold;
}
-
+
.popup-close {
font-size: 40rpx;
width: 60rpx;
@@ -1695,12 +1776,12 @@
border-radius: 50%;
background: rgba(255, 255, 255, 0.2);
}
-
+
.popup-footer {
display: flex;
border-top: 1px solid #eee;
}
-
+
.popup-btn {
flex: 1;
padding: 30rpx;
@@ -1708,20 +1789,20 @@
font-size: 32rpx;
font-weight: bold;
}
-
+
.cancel-btn {
color: #666;
border-right: 1px solid #eee;
}
-
+
.confirm-btn {
color: #29d3b4;
}
-
+
.popup-btn:active {
background: #f5f5f5;
}
-
+
.course-edit-container {
width: 100%;
max-height: 60vh;
@@ -1729,12 +1810,12 @@
padding: 30rpx 20rpx;
box-sizing: border-box;
}
-
+
.edit-section {
margin-bottom: 40rpx;
width: 100%;
}
-
+
.section-title {
font-size: 32rpx;
font-weight: bold;
@@ -1743,7 +1824,7 @@
padding-bottom: 15rpx;
border-bottom: 2px solid #29d3b4;
}
-
+
.coach-list {
width: 100%;
max-height: 300rpx;
@@ -1752,7 +1833,7 @@
border-radius: 12rpx;
background: #fff;
}
-
+
.coach-item {
display: flex;
justify-content: space-between;
@@ -1764,26 +1845,26 @@
min-height: 80rpx;
box-sizing: border-box;
}
-
+
.coach-item:last-child {
border-bottom: none;
}
-
+
.coach-item.selected {
background: #f0f9ff;
border-left: 4rpx solid #29d3b4;
}
-
+
.coach-item:active {
background: #f5f5f5;
}
-
+
.coach-name {
font-size: 30rpx;
color: #333;
flex: 1;
}
-
+
.coach-check {
color: #29d3b4;
font-size: 36rpx;
diff --git a/uniapp/pages/market/clue/order_list.vue b/uniapp/pages/market/clue/order_list.vue
index cf671517..37faad0b 100644
--- a/uniapp/pages/market/clue/order_list.vue
+++ b/uniapp/pages/market/clue/order_list.vue
@@ -259,7 +259,13 @@
支付二维码
+
+
+
+
+
+
@@ -298,6 +304,7 @@ export default {
isReachedBottom: false,//防止重复加载|true=不可加载|false=可加载
showCustomModal: false,
qrcode: 'https://www.baidu.com',
+ qrcodeImage:'',
//筛选条件
filteredData: {
page: 1,//当前页码
@@ -842,6 +849,7 @@ export default {
// 这里调用扫码支付相关接口
apiRoute.getOrderPayQrcode({ order_id: orderData.id }).then(res => {
this.qrcode = res.data.code_url
+ this.qrcodeImage = res.data.qrcode_url
this.showCustomModal = true
})
},