lex пре 2 година
родитељ
комит
f34d60b2a8
27 измењених фајлова са 230 додато и 116 уклоњено
  1. 19 26
      public/project/initiation.html
  2. 37 29
      public/project/preRegister.html
  3. 1 1
      public/project/schoolRegister.html
  4. 12 5
      src/router/routes-common.ts
  5. 8 7
      src/school/companion-teacher/companion-teacher-register.tsx
  6. 8 0
      src/school/companion-teacher/unbind.module.less
  7. 11 3
      src/school/companion-teacher/unbind.tsx
  8. 1 0
      src/school/manage-teacher/index.module.less
  9. 1 1
      src/school/manage-teacher/index.tsx
  10. 1 0
      src/school/manage-teacher/manage-detail.module.less
  11. 24 7
      src/school/manage-teacher/manage-detail.tsx
  12. 4 3
      src/school/manage-teacher/manage-teacher-register.tsx
  13. 1 0
      src/school/orchestra/compontent/information.module.less
  14. 3 1
      src/school/orchestra/compontent/information.tsx
  15. 2 2
      src/school/orchestra/index.tsx
  16. 1 0
      src/school/orchestra/modal/teacher-list.module.less
  17. 1 1
      src/school/orchestra/modal/teacher-list.tsx
  18. 1 0
      src/school/train-planning/component/course-preview/index.module.less
  19. 33 18
      src/school/train-planning/component/course-preview/index.tsx
  20. 1 0
      src/school/train-planning/modal/class-list/index.module.less
  21. 1 1
      src/school/train-planning/modal/class-list/index.tsx
  22. 10 4
      src/school/train-planning/modal/practice-class/index.module.less
  23. 5 2
      src/school/train-planning/modal/practice-class/index.tsx
  24. 1 2
      src/student/music-group/pre-apply/component/payment.tsx
  25. 2 1
      src/views/information/information-detail.tsx
  26. 39 0
      src/views/information/notice-detail.tsx
  27. 2 2
      vite.config.ts

+ 19 - 26
public/project/initiation.html

@@ -209,7 +209,7 @@
           </template>
         </van-field>
         <van-field required label="在读年级" :disabled='checkPhone' v-model="stu.currentGrade" readonly name="currentGrade"
-          :rules="[{ required: true, message: '请选择在读年级', trigger: 'onChange' }]" @click="pickerChange('grade')"
+          :rules="[{ required: true, message: '请选择在读年级', trigger: 'onChange' }]" @click="() => showPicker = true"
           placeholder="请选择在读年级" clickable>
           <template #right-icon>
             <van-icon name="arrow" :color="checkPhone ? '#aaa' : '#323233'" size="16"></van-icon>
@@ -217,7 +217,7 @@
         </van-field>
         <van-field v-show="false" v-model="stu.currentGradeNum" name="currentGradeNum" readonly></van-field>
         <van-field required label="所在班级" :disabled='checkPhone' v-model="stu.currentClass" readonly name="currentClass"
-          :rules="[{ required: true, message: '请选择所在班级', trigger: 'onChange' }]" @click="pickerChange('class')"
+          :rules="[{ required: true, message: '请选择所在班级', trigger: 'onChange' }]" @click="() => classPicker = true"
           placeholder="请选择所在班级">
           <template #right-icon>
             <van-icon name="arrow" :color="checkPhone ? '#aaa' : '#323233'" size="16"></van-icon>
@@ -234,7 +234,8 @@
                 <van-radio class="radioItem" :name="1"></van-radio>是
               </van-tag>
               <van-tag size="large" type="primary" :plain="!(stu.hasLearningExperience === 0)"
-                :color="checkPhone ? '#ccc': '#FF8057'" class="radioSection">
+                :color="checkPhone ? '#ccc': '#FF8057'" class="radioSection"
+                @click="() => stu.learningSubjectName = ''">
                 <van-radio class="radioItem" :name="0"></van-radio>否
               </van-tag>
             </van-radio-group>
@@ -268,12 +269,16 @@
     </van-form>
 
     <van-popup v-model:show="showPicker" position="bottom" round>
-      <van-picker show-toolbar :columns="columns" @cancel="showPicker = false" @confirm="onConfirm" />
+      <van-picker show-toolbar :columns="currentGrade" @cancel="showPicker = false" @confirm="onConfirm" />
+    </van-popup>
+
+    <van-popup v-model:show="classPicker" position="bottom" round>
+      <van-picker show-toolbar :columns="classList" @cancel="classPicker = false" @confirm="onConfirmClass" />
     </van-popup>
 
     <van-popup v-model:show="submitStatus" round style="width: 75%" :close-on-click-overlay="false">
       <div class="submit-container">
-        <img class="icon-close" src="./images/initiation/icon-close.png" @click="onLinkUrl" />
+        <!-- <img class="icon-close" src="./images/initiation/icon-close.png" @click="onLinkUrl" /> -->
         <img src="./images/initiation/popup-submit.png" class="submit-img" />
         <p class="submit-tips">提交成功,感谢您的参与!</p>
         <van-button type="primary" color="#FF8057" block round @click="onLinkUrl">确认</van-button>
@@ -299,6 +304,7 @@
           orchestraName: null,
           schoolId: null,
           showPicker: false,
+          classPicker: false,
           submitStatus: false,
           pattern: /^1(3|4|5|6|7|8|9)\d{9}$/,
           nameReg: /^[\u4E00-\u9FA5]+$/,
@@ -454,30 +460,17 @@
             vant.closeToast()
           }
         },
-        pickerChange(type) {
-          if (this.checkPhone) return
-          this.columns = []
-          var stu = this.stu
-          if (type == 'grade') {
-            this.columns = this.currentGrade
-            this.pickerType = type
-          } else if (type == 'class') {
-            this.columns = this.classList
-            this.pickerType = type
-          }
-          this.showPicker = true
-        },
         onConfirm(options) {
           var stu = this.stu
-          console.log(options)
-          if (this.pickerType == 'grade') {
-            stu.currentGrade = options.selectedOptions[0].text
-            stu.currentGradeNum = options.selectedOptions[0].value
-          } else if (this.pickerType == 'class') {
-            stu.currentClass = options.selectedOptions[0].text
-            stu.currentClassNum = options.selectedOptions[0].value
-          }
+          stu.currentGrade = options.selectedOptions[0].text
+          stu.currentGradeNum = options.selectedOptions[0].value
           this.showPicker = false
+        },
+        onConfirmClass(options) {
+          var stu = this.stu
+          stu.currentClass = options.selectedOptions[0].text
+          stu.currentClassNum = options.selectedOptions[0].value
+          this.classPicker = false
         }
       }
     })

+ 37 - 29
public/project/preRegister.html

@@ -209,14 +209,14 @@
           </template>
         </van-field>
         <van-field required label="在读年级" :disabled='checkPhone' v-model="stu.currentGrade" readonly name="currentGrade"
-          :rules="[{ required: true, message: '请选择在读年级', trigger: 'onChange' }]" @click="pickerChange('grade')"
+          :rules="[{ required: true, message: '请选择在读年级', trigger: 'onChange' }]" @click="pickerChange"
           placeholder="请选择在读年级" clickable>
           <template #right-icon>
             <van-icon name="arrow" :color="checkPhone ? '#aaa' : '#323233'" size="16"></van-icon>
           </template>
         </van-field>
         <van-field required label="所在班级" :disabled='checkPhone' v-model="stu.currentClass" readonly name="currentClass"
-          :rules="[{ required: true, message: '请选择所在班级', trigger: 'onChange' }]" @click="pickerChange('class')"
+          :rules="[{ required: true, message: '请选择所在班级', trigger: 'onChange' }]" @click="pickerChange1"
           placeholder="请选择所在班级">
           <template #right-icon>
             <van-icon name="arrow" :color="checkPhone ? '#aaa' : '#323233'" size="16"></van-icon>
@@ -227,7 +227,7 @@
       <van-cell-group inset class="cell-group">
         <van-field required label="选报声部" :disabled='checkPhone' v-model="stu.registerSubjectId" readonly
           name="registerSubjectId" :rules="[{ required: true, message: '请选择选报声部', trigger: 'onChange' }]"
-          @click="pickerChange('subject')" placeholder="请选择选报声部">
+          @click="pickerChange2" placeholder="请选择选报声部">
           <template #right-icon>
             <van-icon name="arrow" :color="checkPhone ? '#aaa' : '#323233'" size="16"></van-icon>
           </template>
@@ -273,12 +273,20 @@
     </van-form>
 
     <van-popup v-model:show="showPicker" position="bottom" round>
-      <van-picker show-toolbar :columns="columns" @cancel="showPicker = false" @confirm="onConfirm" />
+      <van-picker show-toolbar :columns="currentGrade" @cancel="showPicker = false" @confirm="onConfirm" />
+    </van-popup>
+
+    <van-popup v-model:show="classPicker" position="bottom" round>
+      <van-picker show-toolbar :columns="classList" @cancel="classPicker = false" @confirm="onConfirmClass" />
+    </van-popup>
+
+    <van-popup v-model:show="subjectPicker" position="bottom" round>
+      <van-picker show-toolbar :columns="subjectList" @cancel="subjectPicker = false" @confirm="onConfirmSubject" />
     </van-popup>
 
     <van-popup v-model:show="submitStatus" round style="width: 75%" :close-on-click-overlay="false">
       <div class="submit-container">
-        <img class="icon-close" src="./images/initiation/icon-close.png" @click="onLinkUrl" />
+        <!-- <img class="icon-close" src="./images/initiation/icon-close.png" @click="onLinkUrl" /> -->
         <img src="./images/initiation/popup-submit.png" class="submit-img" />
         <p class="submit-tips">提交成功,感谢您的参与!</p>
         <van-button type="primary" color="#9A64FF" block round @click="onLinkUrl">确认</van-button>
@@ -305,6 +313,8 @@
           orchestraName: null,
           schoolId: null,
           showPicker: false,
+          classPicker: false,
+          subjectPicker: false,
           submitStatus: false,
           pattern: /^1(3|4|5|6|7|8|9)\d{9}$/,
           nameReg: /^[\u4E00-\u9FA5]+$/,
@@ -503,35 +513,33 @@
         },
         pickerChange(type) {
           if (this.checkPhone) return
-          this.columns = []
-          var stu = this.stu
-          if (type == 'grade') {
-            this.columns = this.currentGrade
-            this.pickerType = type
-          } else if (type == 'class') {
-            this.columns = this.classList
-            this.pickerType = type
-          } else if (type == 'subject') {
-
-            this.columns = this.subjectList
-            this.pickerType = type
-          }
           this.showPicker = true
         },
+        pickerChange1(type) {
+          if (this.checkPhone) return
+          this.classPicker = true
+        },
+        pickerChange2(type) {
+          if (this.checkPhone) return
+          this.subjectPicker = true
+        },
         onConfirm(options) {
           var stu = this.stu
-          // console.log(options)
-          if (this.pickerType == 'grade') {
-            stu.currentGrade = options.selectedOptions[0].text
-            stu.currentGradeNum = options.selectedOptions[0].value
-          } else if (this.pickerType == 'class') {
-            stu.currentClass = options.selectedOptions[0].text
-            stu.currentClassNum = options.selectedOptions[0].value
-          } else if (this.pickerType === 'subject') {
-            stu.registerSubjectId = options.selectedOptions[0].text
-            stu.registerSubjectNum = options.selectedOptions[0].value
-          }
+          stu.currentGrade = options.selectedOptions[0].text
+          stu.currentGradeNum = options.selectedOptions[0].value
           this.showPicker = false
+        },
+        onConfirmClass(options) {
+          var stu = this.stu
+          stu.currentClass = options.selectedOptions[0].text
+          stu.currentClassNum = options.selectedOptions[0].value
+          this.classPicker = false
+        },
+        onConfirmSubject(options) {
+          var stu = this.stu
+          stu.currentClass = options.selectedOptions[0].text
+          stu.currentClassNum = options.selectedOptions[0].value
+          this.subjectPicker = false
         }
       }
     })

+ 1 - 1
public/project/schoolRegister.html

@@ -141,7 +141,7 @@
 
     <van-popup v-model:show="submitStatus" round style="width: 75%" :close-on-click-overlay="false">
       <div class="submit-container">
-        <img class="icon-close" src="./images/initiation/icon-close.png" @click="onLinkUrl" />
+        <!-- <img class="icon-close" src="./images/initiation/icon-close.png" @click="onLinkUrl" /> -->
         <img src="./images/initiation/popup-submit.png" class="submit-img" />
         <p class="submit-tips">提交成功,感谢您的参与!</p>
         <van-button type="primary" color="#64A9FF" block round @click="onLinkUrl">确认</van-button>

+ 12 - 5
src/router/routes-common.ts

@@ -26,11 +26,6 @@ export const router = [
       title: '课程播放'
     }
   },
-
-]
-
-// 不需要登录的路由
-export const rootRouter = [
   {
     path: '/information-detail',
     name: 'information-detail',
@@ -40,6 +35,18 @@ export const rootRouter = [
     }
   },
   {
+    path: '/notice-detail',
+    name: 'notice-detail',
+    component: () => import('@/views/information/notice-detail'),
+    meta: {
+      title: '公告详情'
+    }
+  }
+]
+
+// 不需要登录的路由
+export const rootRouter = [
+  {
     path: '/payCenter',
     name: 'payCenter',
     component: () => import('@/views/adapay/pay-center'),

+ 8 - 7
src/school/companion-teacher/companion-teacher-register.tsx

@@ -353,8 +353,8 @@ export default defineComponent({
               v-model={state.forms.idcardFrontImg}
               readonly
               name="idcardFrontImg"
-              rules={[{ required: true, message: '请选择身份证照片正面', trigger: 'onChange' }]}
-              placeholder="请选择身份证照片正面"
+              rules={[{ required: true, message: '请上传身份证正面', trigger: 'onChange' }]}
+              placeholder="请上传身份证正面"
             >
               {{
                 input: () => (
@@ -372,8 +372,8 @@ export default defineComponent({
               v-model={state.forms.idcardBackImg}
               readonly
               name="idcardBackImg"
-              rules={[{ required: true, message: '请选择身份证照片反面', trigger: 'onChange' }]}
-              placeholder="请选择身份证照片反面"
+              rules={[{ required: true, message: '请上传身份证反面', trigger: 'onChange' }]}
+              placeholder="请上传身份证反面"
             >
               {{
                 input: () => (
@@ -548,7 +548,7 @@ export default defineComponent({
         </Popup>
         <Popup v-model:show={state.submitStatus} round style="width: 75%" closeOnClickOverlay>
           <div class={styles.stautsS}>
-            <img
+            {/* <img
               class={styles['icon-close']}
               src={iconClose}
               onClick={() => {
@@ -556,12 +556,13 @@ export default defineComponent({
                 window.location.href =
                   window.location.origin + '/orchestra-student/#/download?type=teacher'
               }}
-            />
+            /> */}
             <img src={topBanner1} class={styles['submit-img']} />
             <div class={styles['submit-container']}>
               <p class={styles['submit-title']}>恭喜您已成功登记为</p>
               <p class={styles['submit-o']}>
-                {state.name} <span>【伴学老师】</span>
+                {state.name} <br />
+                <span>【伴学老师】</span>
               </p>
               <p class={styles['submit-tips']}>请下载管乐团老师端APP进行授课</p>
               <Button

+ 8 - 0
src/school/companion-teacher/unbind.module.less

@@ -25,11 +25,18 @@
     }
   }
 
+  .valueClass {
+    display: flex;
+    align-items: center;
+    justify-content: flex-end;
+  }
+
   .teacherName {
     font-size: 16px;
     font-weight: 500;
     color: #333333;
     line-height: 22px;
+    max-width: 60px;
   }
 
   .teacherContent {
@@ -57,6 +64,7 @@
     font-size: 14px;
     color: #777777;
     line-height: 20px;
+    max-width: 120px;
   }
 
   .nums {

+ 11 - 3
src/school/companion-teacher/unbind.tsx

@@ -104,13 +104,19 @@ export default defineComponent({
 
         <CellGroup inset class={styles.detailCellGroup}>
           {state.classList.map((item: any) => (
-            <Cell center class={styles.detailCell} isLink onClick={() => onSelectTeacher(item)}>
+            <Cell
+              center
+              class={styles.detailCell}
+              isLink
+              onClick={() => onSelectTeacher(item)}
+              valueClass={styles.valueClass}
+            >
               {{
                 title: () => (
                   <div class={styles.teacherContent}>
                     <div class={styles.classInfo}>
                       <p class={styles.className}>{item.name}</p>
-                      <p class={styles.musicName}>{item.orchestraName}</p>
+                      <p class={[styles.musicName, 'van-ellipsis']}>{item.orchestraName}</p>
                     </div>
                     <div class={styles.classNum}>
                       <p class={styles.nums}>
@@ -121,7 +127,9 @@ export default defineComponent({
                   </div>
                 ),
                 value: () => (
-                  <span class={styles.teacherName}>{item.sTeacher && item.sTeacher.nickname}</span>
+                  <div class={[styles.teacherName, 'van-ellipsis']}>
+                    {item.sTeacher && item.sTeacher.nickname}
+                  </div>
                 )
               }}
             </Cell>

+ 1 - 0
src/school/manage-teacher/index.module.less

@@ -21,6 +21,7 @@
     font-weight: 500;
     color: #333333;
     line-height: 22px;
+    max-width: 200px;
   }
   .phone {
     font-size: 14px;

+ 1 - 1
src/school/manage-teacher/index.tsx

@@ -271,7 +271,7 @@ export default defineComponent({
                   ),
                   title: () => (
                     <div class={styles.content}>
-                      <p class={styles.name}>{item.nickname}</p>
+                      <p class={[styles.name, 'van-ellipsis']}>{item.nickname}</p>
                       <p class={styles.phone}>{item.phone}</p>
                     </div>
                   ),

+ 1 - 0
src/school/manage-teacher/manage-detail.module.less

@@ -20,6 +20,7 @@
     font-weight: 500;
     color: #333333;
     line-height: 22px;
+    max-width: 220px;
   }
   .phone {
     font-size: 14px;

+ 24 - 7
src/school/manage-teacher/manage-detail.tsx

@@ -30,11 +30,23 @@ export default defineComponent({
     // 冻结
     const onFreeze = async () => {
       try {
+        // {
+        //   detail.value.status === 'ACTIVATION' && '冻结账号'
+        // }
+        // {
+        //   detail.value.status === 'LOCKED' && '解冻账号'
+        // }
+
         const query = route.query
         await request.post('/api-school/schoolStaff/freeze/' + query.id)
         setTimeout(() => {
-          detail.value.status = 'LOCKED'
-          showToast('冻结成功')
+          if (detail.value.status === 'ACTIVATION') {
+            detail.value.status = 'LOCKED'
+            showToast('冻结成功')
+          } else {
+            detail.value.status = 'ACTIVATION'
+            showToast('解冻成功')
+          }
         }, 100)
       } catch {
         //
@@ -59,7 +71,7 @@ export default defineComponent({
               ),
               title: () => (
                 <div class={styles.content}>
-                  <p class={styles.name}>{detail.value.nickname}</p>
+                  <p class={[styles.name, 'van-ellipsis']}>{detail.value.nickname}</p>
                   <p class={styles.phone}>{detail.value.phone}</p>
                 </div>
               )
@@ -111,9 +123,10 @@ export default defineComponent({
             round
             color="#64A9FF"
             onClick={() => (state.status = true)}
-            disabled={detail.value.status === 'ACTIVATION' ? false : true}
+            // disabled={ ? false : true}
           >
-            冻结账号
+            {detail.value.status === 'ACTIVATION' && '冻结账号'}
+            {detail.value.status === 'LOCKED' && '解冻账号'}
           </Button>
         </div>
 
@@ -128,7 +141,11 @@ export default defineComponent({
 
         <Dialog
           v-model:show={state.status}
-          message="冻结后该管理老师将无法登录\n确认需要冻结吗?"
+          message={`${
+            detail.value.status === 'ACTIVATION'
+              ? '冻结后该管理老师将无法登录\n确认需要冻结吗?'
+              : '确认需要解冻吗?'
+          }`}
           messageAlign="left"
           showCancelButton
           onConfirm={onFreeze}
@@ -137,7 +154,7 @@ export default defineComponent({
             title: () => (
               <div class={styles.dialogTitle}>
                 <i></i>
-                冻结管理老师
+                {detail.value.status === 'ACTIVATION' ? '冻结' : '解冻'}管理老师
               </div>
             )
           }}

+ 4 - 3
src/school/manage-teacher/manage-teacher-register.tsx

@@ -310,7 +310,7 @@ export default defineComponent({
 
         <Popup v-model:show={state.submitStatus} round style="width: 75%" closeOnClickOverlay>
           <div class={styles.stautsS}>
-            <img
+            {/* <img
               class={styles['icon-close']}
               src={iconClose}
               onClick={() => {
@@ -318,12 +318,13 @@ export default defineComponent({
                 window.location.href =
                   window.location.origin + '/orchestra-student/#/download?type=manage'
               }}
-            />
+            /> */}
             <img src={topBanner1} class={styles['submit-img']} />
             <div class={styles['submit-container']}>
               <p class={styles['submit-title']}>恭喜您已成功登记为</p>
               <p class={styles['submit-o']}>
-                {state.name} <span>【管理老师】</span>
+                {state.name} <br />
+                <span>【管理老师】</span>
               </p>
               <p class={styles['submit-tips']}>请下载管乐团管理端APP</p>
               <Button

+ 1 - 0
src/school/orchestra/compontent/information.module.less

@@ -39,6 +39,7 @@
   .teacher {
     font-size: 18px;
     line-height: 24px;
+    max-width: 95px;
   }
 
   .className {

+ 3 - 1
src/school/orchestra/compontent/information.tsx

@@ -229,7 +229,9 @@ export default defineComponent({
                     <p class={styles.name}>在读学生</p>
                   </GridItem>
                   <GridItem>
-                    <p class={[styles.title, styles.teacher]}>{item.teacherName || '-'}</p>
+                    <p class={[styles.title, styles.teacher, 'van-ellipsis']}>
+                      {item.teacherName || '-'}
+                    </p>
                     <p class={styles.name}>伴学指导</p>
                   </GridItem>
                   <GridItem>

+ 2 - 2
src/school/orchestra/index.tsx

@@ -150,10 +150,10 @@ export default defineComponent({
                 {{
                   title: () => (
                     <div class={styles.oTitle}>
-                      {item.name}
+                      <div>{item.name}</div>
 
                       <Tag
-                        style={{ marginLeft: '6px' }}
+                        style={{ marginLeft: '6px', flexShrink: 0 }}
                         color={item.type === 'DELIVERY' ? '#FF8057' : '#64A9FF'}
                       >
                         {orchestraType[item.type]}

+ 1 - 0
src/school/orchestra/modal/teacher-list.module.less

@@ -13,6 +13,7 @@
     font-weight: 500;
     color: #333333;
     line-height: 22px;
+    max-width: 220px;
   }
 
   .class {

+ 1 - 1
src/school/orchestra/modal/teacher-list.tsx

@@ -153,7 +153,7 @@ export default defineComponent({
                   icon: () => <Image class={styles.img} src={item.avatar || iconTeacher} />,
                   title: () => (
                     <div class={styles.content}>
-                      <p class={styles.name}>{item.nickname}</p>
+                      <p class={[styles.name, 'van-ellipsis']}>{item.nickname}</p>
                       <p class={styles.class}>
                         {item.subjectNames &&
                           item.subjectNames.map((subject: any) => (

+ 1 - 0
src/school/train-planning/component/course-preview/index.module.less

@@ -119,6 +119,7 @@
     font-size: 16px;
     font-weight: 600;
     color: #333333;
+    max-width: 120px;
   }
 
   .btn {

+ 33 - 18
src/school/train-planning/component/course-preview/index.tsx

@@ -260,27 +260,12 @@ export default defineComponent({
               ) : (
                 ''
               )}
-              {(item.conflictType && item.conflictType.includes('DIFF_SCHOOL_TEACHER')) ||
-              item.conflictType.includes('SAME_SCHOOL_TEACHER') ? (
+              {item.conflictType && item.conflictType.includes('DIFF_SCHOOL_TEACHER') ? (
                 <Tag
                   class={styles.conflict}
                   color="#F44541"
                   onClick={() => {
-                    const type = item.conflictType || []
-                    if (
-                      type.includes('DIFF_SCHOOL_TEACHER') &&
-                      type.includes('SAME_SCHOOL_TEACHER')
-                    ) {
-                      // 老师冲突 SAME_SCHOOL_TEACHER
-                      // 学校冲突 DIFF_SCHOOL_TEACHER
-
-                      state.conflictMessage =
-                        '该时间段伴学指导在其他学校有课 \n 伴学指导在本学校时间有冲突'
-                    } else if (type.includes('DIFF_SCHOOL_TEACHER')) {
-                      state.conflictMessage = '该时间段伴学指导在其他学校有课'
-                    } else if (type.includes('SAME_SCHOOL_TEACHER')) {
-                      state.conflictMessage = '伴学指导在本学校时间有冲突'
-                    }
+                    state.conflictMessage = '该时间段伴学指导在其他学校有课'
                     state.conflictStatus = true
                     state.choiceCourse = item
                   }}
@@ -290,13 +275,43 @@ export default defineComponent({
               ) : (
                 ''
               )}
+              {item.conflictType && item.conflictType.includes('SAME_SCHOOL_TEACHER') ? (
+                <Tag
+                  class={styles.conflict}
+                  color="#F44541"
+                  onClick={() => {
+                    state.conflictMessage = '伴学指导在本学校时间有冲突'
+                    state.conflictStatus = true
+                    state.choiceCourse = item
+                  }}
+                >
+                  老师冲突
+                </Tag>
+              ) : (
+                ''
+              )}
+              {item.conflictType && item.conflictType.includes('LEAVE') ? (
+                <Tag
+                  class={styles.conflict}
+                  color="#F44541"
+                  onClick={() => {
+                    state.conflictMessage = '伴学指导请假冲突'
+                    state.conflictStatus = true
+                    state.choiceCourse = item
+                  }}
+                >
+                  请假冲突
+                </Tag>
+              ) : (
+                ''
+              )}
             </div>
             <Cell center class={styles.cellTeacher}>
               {{
                 icon: () => <Image src={item.teacherAvatar || iconTeacher} class={styles.img} />,
                 title: () => (
                   <div class={styles.teacherInfo}>
-                    <p class={styles.teacherName}>{item.teacherName}</p>
+                    <p class={[styles.teacherName, 'van-ellipsis']}>{item.teacherName}</p>
                     <Tag type="primary">{item.className}</Tag>
                   </div>
                 ),

+ 1 - 0
src/school/train-planning/modal/class-list/index.module.less

@@ -32,6 +32,7 @@
       font-size: 14px;
       color: #777777;
       line-height: 20px;
+      max-width: 230px;
     }
   }
 

+ 1 - 1
src/school/train-planning/modal/class-list/index.tsx

@@ -94,7 +94,7 @@ export default defineComponent({
                     <i></i>
                     {item.name}
                   </div>
-                  <div class={styles.name}>{item.orchestraName}</div>
+                  <div class={[styles.name, 'van-ellipsis']}>{item.orchestraName}</div>
                 </div>
               ),
               value: () => <span class={styles.teacherName}>{item.teacherName}</span>

+ 10 - 4
src/school/train-planning/modal/practice-class/index.module.less

@@ -40,10 +40,15 @@
   .teacherName {
     display: flex;
     align-items: center;
-    font-size: 16px;
-    font-weight: 600;
-    color: #333333;
-    line-height: 22px;
+
+    .name {
+      padding-top: 0;
+      max-width: 120px;
+      font-size: 16px;
+      font-weight: 600;
+      color: #333333;
+      line-height: 22px;
+    }
     :global {
       .van-tag {
         margin-left: 6px;
@@ -59,6 +64,7 @@
     font-size: 12px;
     color: #777777;
     line-height: 17px;
+    max-width: 200px;
   }
   .title {
     font-size: 24px;

+ 5 - 2
src/school/train-planning/modal/practice-class/index.tsx

@@ -187,9 +187,12 @@ export default defineComponent({
                       title: () => (
                         <div class={styles.content}>
                           <div class={styles.teacherName}>
-                            {item.teacherName} <Tag type="primary">{item.name}</Tag>
+                            <div class={[styles.name, 'van-ellipsis']}>{item.teacherName}</div>
+                            <Tag type="primary">{item.name}</Tag>
+                          </div>
+                          <div class={[styles.orchestraName, 'van-ellipsis']}>
+                            {item.orchestraName}
                           </div>
-                          <div class={styles.orchestraName}>{item.orchestraName}</div>
                         </div>
                       ),
                       value: () => (

+ 1 - 2
src/student/music-group/pre-apply/component/payment.tsx

@@ -88,7 +88,6 @@ export default defineComponent({
         paymentOrderDetails.forEach((item: any) => {
           state.paymentOrderDetails.push(item.goodsType)
         })
-
         // 初始化数据商品数据
         const details = data.details || []
         details.forEach((item: any) => {
@@ -266,8 +265,8 @@ export default defineComponent({
 
     onMounted(() => {
       // 查询未支付订单
-      paymentOrderUnpaid()
       registerGoods()
+      paymentOrderUnpaid()
     })
     return () => (
       <>

+ 2 - 1
src/views/information/information-detail.tsx

@@ -1,4 +1,5 @@
 import request from '@/helpers/request'
+import { state } from '@/state'
 import { defineComponent, onMounted, ref } from 'vue'
 import { useRoute } from 'vue-router'
 import styles from './information-detail.module.less'
@@ -12,7 +13,7 @@ export default defineComponent({
     const getDetails = async () => {
       try {
         const { data } = await request.get(
-          '/api-school/sysNewsInformation/detail/' + route.query.id
+          state.platformApi + '/sysNewsInformation/detail/' + route.query.id
         )
         detail.value = data
       } catch {

+ 39 - 0
src/views/information/notice-detail.tsx

@@ -0,0 +1,39 @@
+import request from '@/helpers/request'
+import { state } from '@/state'
+import { defineComponent, onMounted, ref } from 'vue'
+import { useRoute } from 'vue-router'
+import styles from './information-detail.module.less'
+
+export default defineComponent({
+  name: 'notice-detail',
+  setup() {
+    const route = useRoute()
+    const detail = ref<any>({})
+
+    const getDetails = async () => {
+      try {
+        const { data } = await request.get(
+          state.platformApi + '/sysNotice/detail/' + route.query.id
+        )
+        detail.value = data
+      } catch {
+        //
+      }
+    }
+
+    onMounted(() => {
+      getDetails()
+    })
+    return () => (
+      <div class={styles.detail}>
+        <div class={styles.title}>{detail.value.title}</div>
+        <div class={styles.who}>
+          <span>管乐团</span>
+          {detail.value.createTime}
+        </div>
+
+        <div class={styles.content} v-html={detail.value.content}></div>
+      </div>
+    )
+  }
+})

+ 2 - 2
vite.config.ts

@@ -12,9 +12,9 @@ function resolve(dir: string) {
 // https://vitejs.dev/config/
 // https://github.com/vitejs/vite/issues/1930 .env
 // const proxyUrl = 'https://mstutest.dayaedu.com/';
-// const proxyUrl = 'http://47.98.131.38:8989/'
+const proxyUrl = 'http://47.98.131.38:8989/'
 // const proxyUrl = 'http://192.168.3.143:8989/' // 尚科
-const proxyUrl = 'http://192.168.3.26:8989/' // 刘俊驰
+// const proxyUrl = 'http://192.168.3.26:8989/' // 刘俊驰
 export default defineConfig({
   base: './',
   plugins: [