diff --git a/niucloud/app/api/controller/student/StudentController.php b/niucloud/app/api/controller/student/StudentController.php index 09fa6378..593aa62d 100644 --- a/niucloud/app/api/controller/student/StudentController.php +++ b/niucloud/app/api/controller/student/StudentController.php @@ -374,4 +374,6 @@ class StudentController extends BaseController } return success($res['data']); } + + } diff --git a/uniapp/components/order-form-popup/index.vue b/uniapp/components/order-form-popup/index.vue index a3e24f0f..0c1bfa6f 100644 --- a/uniapp/components/order-form-popup/index.vue +++ b/uniapp/components/order-form-popup/index.vue @@ -77,9 +77,19 @@ + + 班级选择 + + + {{ selectedClass && selectedClass.label || '请选择班级(可选)' }} + + + + + 备注 - - - - 取消 - 解析并填写 - - - - - - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/clue/class_arrangement.vue b/uniapp/pages/market/clue/class_arrangement.vue deleted file mode 100644 index 42946130..00000000 --- a/uniapp/pages/market/clue/class_arrangement.vue +++ /dev/null @@ -1,623 +0,0 @@ - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/clue/class_arrangement_detail.vue b/uniapp/pages/market/clue/class_arrangement_detail.vue deleted file mode 100644 index 949d09cc..00000000 --- a/uniapp/pages/market/clue/class_arrangement_detail.vue +++ /dev/null @@ -1,1292 +0,0 @@ - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/clue/clue_info.less b/uniapp/pages/market/clue/clue_info.less deleted file mode 100644 index ce333c24..00000000 --- a/uniapp/pages/market/clue/clue_info.less +++ /dev/null @@ -1,431 +0,0 @@ -// 客户详情页样式文件 -.assemble { - background-color: #292929; - min-height: 100vh; -} - -.content { - padding: 20rpx; -} - -.tab-switcher-container { - margin: 20rpx 0; -} - -// 学生信息区域 -.student-section { - margin-top: 20rpx; - - .section-header { - display: flex; - align-items: center; - justify-content: space-between; - padding: 20rpx; - - .section-title { - font-size: 32rpx; - font-weight: bold; - color: #fff; - } - - .add-student-btn { - display: flex; - align-items: center; - background: #29d3b4; - color: #fff; - border-radius: 20rpx; - padding: 12rpx 20rpx; - font-size: 24rpx; - - .add-icon { - margin-right: 8rpx; - font-weight: bold; - font-size: 20rpx; - } - - &:active { - background: #1ea08e; - transform: scale(0.95); - } - } - } - - .student-cards { - width: 100%; - min-height: 600rpx; - - .student-swiper { - width: 100%; - height: 560rpx; - - .student-swiper-content { - display: flex; - flex-direction: column; - height: 580rpx; - padding: 20rpx; - box-sizing: border-box; - background-color: #434544; - border-radius: 16rpx; - margin: 0 10rpx; - color: #fff; - } - } - } -} - -.popup-footer { - display: flex; - padding: 30rpx 40rpx; - padding-bottom: calc(30rpx + env(safe-area-inset-bottom)); - border-top: 1px solid #333; - gap: 30rpx; - flex-shrink: 0; /* 确保底部按钮区域不被压缩 */ - background: #1a1a1a; /* 确保背景色一致 */ - - .popup-footer-btns { - display: flex; - justify-content: space-between; - - .footer-btn { - flex: 1; - height: 88rpx; - display: flex; - width: 45%; - align-items: center; - justify-content: center; - border-radius: 12rpx; - font-size: 32rpx; - font-weight: 500; - - &.cancel-btn { - background: #cccccc; - } - - &.confirm-btn { - background: linear-gradient(45deg, #29D3B4, #1DB584); - color: #ffffff; - } - } - } - -} - -// 课程、通话、体测记录等区域 -.course-section, .call-section, .fitness-section, .study-plan-section { - background-color: #434544; - border-radius: 16rpx; - margin: 20rpx 0; - - .section-header { - display: flex; - align-items: center; - justify-content: space-between; - padding: 20rpx; - - .context-title { - font-size: 28rpx; - font-weight: bold; - color: #fff; - } - - .add-record-btn { - display: flex; - align-items: center; - background: #29d3b4; - color: #fff; - border-radius: 20rpx; - padding: 12rpx 20rpx; - font-size: 24rpx; - - .add-icon { - margin-right: 8rpx; - font-weight: bold; - } - - &:active { - background: #1ea08e; - transform: scale(0.95); - } - } - } -} - -// 操作按钮区域 - 独立于Swiper外部 -.student-section .action-buttons-section { - display: flex; - gap: 8rpx; - margin-top: 15rpx; - padding: 15rpx; - flex-wrap: nowrap; - height: 100rpx; - box-sizing: border-box; - overflow-x: auto; - overflow-y: hidden; - -webkit-overflow-scrolling: touch; - background-color: #434544; - border-radius: 16rpx; - margin: 15rpx 0; - - &::-webkit-scrollbar { - display: none; - } - - .action-item { - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - background: rgba(255, 255, 255, 0.05); - border: 1px solid rgba(41, 211, 180, 0.3); - border-radius: 8rpx; - padding: 12rpx 8rpx; - min-width: 90rpx; - flex-shrink: 0; - transition: all 0.3s ease; - - .action-icon { - font-size: 24rpx; - margin-bottom: 5rpx; - line-height: 1; - } - - .action-text { - font-size: 18rpx; - color: #fff; - text-align: center; - line-height: 1.2; - word-break: break-all; - } - - &:active { - background: rgba(41, 211, 180, 0.2); - border-color: #29d3b4; - transform: scale(0.95); - - .action-text { - color: #29d3b4; - } - } - } -} - -// 通用空状态样式 -.empty-state { - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - padding: 60rpx 20rpx; - min-height: 200rpx; - - .empty-icon { - font-size: 60rpx; - opacity: 0.6; - margin-bottom: 20rpx; - } - - .empty-text { - color: #ccc; - font-size: 28rpx; - margin-bottom: 20rpx; - } - - .empty-add-btn { - background: #29d3b4; - color: #fff; - padding: 12rpx 24rpx; - border-radius: 20rpx; - font-size: 24rpx; - transition: all 0.3s ease; - - &:active { - background: #1ea08e; - transform: scale(0.95); - } - } -} - -// 备注弹窗样式 -.remark-dialog { - width: 600rpx; - padding: 30rpx; - background: #fff; - border-radius: 16rpx; - - textarea { - width: 100%; - height: 200rpx; - padding: 20rpx; - border: 2rpx solid #e9ecef; - border-radius: 12rpx; - font-size: 28rpx; - color: #333; - background-color: #fff; - box-sizing: border-box; - resize: none; - - &::placeholder { - color: #999; - } - - &:focus { - border-color: #29d3b4; - outline: none; - box-shadow: 0 0 0 2rpx rgba(41, 211, 180, 0.1); - } - } - - .dialog-btns { - display: flex; - gap: 20rpx; - margin-top: 30rpx; - - .btn { - flex: 1; - padding: 20rpx; - border-radius: 8rpx; - font-size: 28rpx; - text-align: center; - - &.cancel { - background: #f8f9fa; - color: #666; - border: 2rpx solid #e9ecef; - } - - &.confirm { - background: #29d3b4; - color: #fff; - } - } - } -} - -// 二维码支付弹窗样式 -.qrcode-payment-modal { - width: 600rpx; - background: #fff; - border-radius: 20rpx; - overflow: hidden; - - .modal-header { - display: flex; - align-items: center; - justify-content: space-between; - padding: 40rpx 40rpx 20rpx; - border-bottom: 1px solid #f0f0f0; - - .modal-title { - font-size: 36rpx; - font-weight: 600; - color: #333; - } - - .close-btn { - width: 60rpx; - height: 60rpx; - display: flex; - align-items: center; - justify-content: center; - border-radius: 50%; - background: #f5f5f5; - color: #666; - font-size: 32rpx; - - &:active { - background: #e5e5e5; - transform: scale(0.95); - } - } - } - - .order-info { - padding: 30rpx 40rpx; - - .info-row { - display: flex; - align-items: center; - margin-bottom: 20rpx; - - .label { - font-size: 28rpx; - color: #666; - margin-right: 20rpx; - } - - .value { - font-size: 28rpx; - color: #333; - flex: 1; - } - - .amount { - font-size: 32rpx; - color: #ff4757; - font-weight: 600; - flex: 1; - } - } - } - - .qrcode-container { - display: flex; - flex-direction: column; - align-items: center; - padding: 40rpx; - background: #fafafa; - - .qrcode-image { - width: 300rpx; - height: 300rpx; - border: 1px solid #e5e5e5; - border-radius: 12rpx; - background: #fff; - margin-bottom: 20rpx; - } - - .qrcode-tip { - font-size: 24rpx; - color: #666; - text-align: center; - line-height: 1.4; - } - } - - .modal-buttons { - display: flex; - padding: 30rpx 40rpx 40rpx; - gap: 20rpx; - - .btn { - flex: 1; - height: 80rpx; - display: flex; - align-items: center; - justify-content: center; - border-radius: 40rpx; - font-size: 28rpx; - font-weight: 500; - - &.secondary { - background: #f5f5f5; - color: #666; - - &:active { - background: #e5e5e5; - transform: scale(0.98); - } - } - - &.primary { - background: #29d3b4; - color: #fff; - - &:active { - background: #1ea08e; - transform: scale(0.98); - } - } - } - } -} \ No newline at end of file diff --git a/uniapp/pages/market/clue/clue_info.vue b/uniapp/pages/market/clue/clue_info.vue deleted file mode 100644 index a800a7aa..00000000 --- a/uniapp/pages/market/clue/clue_info.vue +++ /dev/null @@ -1,1567 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/clue/clue_table.vue b/uniapp/pages/market/clue/clue_table.vue deleted file mode 100644 index 46f36e54..00000000 --- a/uniapp/pages/market/clue/clue_table.vue +++ /dev/null @@ -1,164 +0,0 @@ - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/clue/edit_clues.vue b/uniapp/pages/market/clue/edit_clues.vue deleted file mode 100644 index 725949d5..00000000 --- a/uniapp/pages/market/clue/edit_clues.vue +++ /dev/null @@ -1,1806 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/clue/edit_clues_log.vue b/uniapp/pages/market/clue/edit_clues_log.vue deleted file mode 100644 index 7340b68f..00000000 --- a/uniapp/pages/market/clue/edit_clues_log.vue +++ /dev/null @@ -1,365 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/clue/index.vue b/uniapp/pages/market/clue/index.vue deleted file mode 100644 index 3cf5b4df..00000000 --- a/uniapp/pages/market/clue/index.vue +++ /dev/null @@ -1,1749 +0,0 @@ - - - - - diff --git a/uniapp/pages/market/data/statistics.vue b/uniapp/pages/market/data/statistics.vue deleted file mode 100644 index 4767e7b1..00000000 --- a/uniapp/pages/market/data/statistics.vue +++ /dev/null @@ -1,343 +0,0 @@ - - - - - - diff --git a/uniapp/pages/market/index/index.vue b/uniapp/pages/market/index/index.vue deleted file mode 100644 index 0b355e81..00000000 --- a/uniapp/pages/market/index/index.vue +++ /dev/null @@ -1,427 +0,0 @@ - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/my/campus_data.vue b/uniapp/pages/market/my/campus_data.vue deleted file mode 100644 index bba0c6e3..00000000 --- a/uniapp/pages/market/my/campus_data.vue +++ /dev/null @@ -1,495 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/my/dept_data.vue b/uniapp/pages/market/my/dept_data.vue deleted file mode 100644 index fdda74bc..00000000 --- a/uniapp/pages/market/my/dept_data.vue +++ /dev/null @@ -1,445 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/my/index.vue b/uniapp/pages/market/my/index.vue deleted file mode 100644 index b18d5915..00000000 --- a/uniapp/pages/market/my/index.vue +++ /dev/null @@ -1,523 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/my/info.vue b/uniapp/pages/market/my/info.vue deleted file mode 100644 index fefbe9c5..00000000 --- a/uniapp/pages/market/my/info.vue +++ /dev/null @@ -1,505 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/my/my_data.vue b/uniapp/pages/market/my/my_data.vue deleted file mode 100644 index cefe0c5e..00000000 --- a/uniapp/pages/market/my/my_data.vue +++ /dev/null @@ -1,292 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/my/set_up.vue b/uniapp/pages/market/my/set_up.vue deleted file mode 100644 index 9e17258b..00000000 --- a/uniapp/pages/market/my/set_up.vue +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - diff --git a/uniapp/pages/market/my/signed_client_list.vue b/uniapp/pages/market/my/signed_client_list.vue deleted file mode 100644 index d5525f1b..00000000 --- a/uniapp/pages/market/my/signed_client_list.vue +++ /dev/null @@ -1,275 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/my/update_pass.vue b/uniapp/pages/market/my/update_pass.vue deleted file mode 100644 index 7092c673..00000000 --- a/uniapp/pages/market/my/update_pass.vue +++ /dev/null @@ -1,225 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/uniapp/pages/market/reimbursement/add.vue b/uniapp/pages/market/reimbursement/add.vue deleted file mode 100644 index 6b330df9..00000000 --- a/uniapp/pages/market/reimbursement/add.vue +++ /dev/null @@ -1,272 +0,0 @@ -