| 
					
				 | 
			
			
				@@ -2,7 +2,18 @@ import OEmpty from '@/components/o-empty' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import OHeader from '@/components/o-header' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import request from '@/helpers/request' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { state } from '@/state' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import { Grid, GridItem, Image, List, Loading, showImagePreview } from 'vant' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Cell, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  CellGroup, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Grid, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  GridItem, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Image, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  List, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Loading, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Picker, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  Popup, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  showImagePreview 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} from 'vant' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { defineComponent, onMounted, reactive, watch } from 'vue' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { useRoute, useRouter } from 'vue-router' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import styles from './index.module.less' 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -25,7 +36,10 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         page: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         rows: 20 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      list: [] as any[] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      list: [] as any[], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      schoolStatus: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      schoolList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      school: {} as any 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const getList = async () => { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -34,7 +48,7 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         const res = await request.post(`${state.platformApi}/orchestraPhotoAlbum/page`, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           data: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             ...data.pages, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            orchestraId: props.orchestraId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            orchestraId: data.school.id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           hideLoading: true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -50,15 +64,29 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       data.loading = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    watch( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      () => props.orchestraId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        data.pages.page = 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        data.list = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        data.finished = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        getList() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const getSchoolList = async () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        const res = await request.post('/api-teacher/school/teacherSchoolPage', { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          data: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            teacherId: state.user.data.id, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            page: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            rows: 999 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (Array.isArray(res.data?.rows)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          data.schoolList = res.data.rows.map((n: any) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              name: n.schoolName || '', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              id: n.schoolId || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          data.school = data.schoolList[0] || {} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } catch { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 预览图片 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const onShowImage = (index: number) => { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -73,16 +101,22 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    onMounted(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      getList() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    onMounted(async () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      await getSchoolList() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      await getList() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       document.title = (route.query.name as any) || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return () => ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      <div 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        class={[styles.phoneDetail, !data.list.length && 'emptyRootContainer']} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        // style={{ height: '100%', minHeight: 'auto' }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <div class={[styles.phoneDetail]}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <CellGroup inset class={styles.cellGroup}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <Cell class={styles.select} center isLink onClick={() => (data.schoolStatus = true)}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            {{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              // icon: () => <img class={styles.icon} src={iconOrchestra} />, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              title: () => <div class="van-ellipsis">{data.school.name}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </Cell> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </CellGroup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         {!data.loading && !!data.list.length && ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <List 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             // v-model:loading={data.loading} 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -120,7 +154,38 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           </List> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         )} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        {!data.loading && !data.list.length && <OEmpty btnStatus={false} tips="暂无相册" />} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        {!data.loading && !data.list.length && ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <div 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            class="emptyRootContainer" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            style={{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              minHeight: 'calc(100vh - 1.22667rem)' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <OEmpty btnStatus={false} tips="暂无相册" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        )} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <Popup v-model:show={data.schoolStatus} position="bottom" round> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <Picker 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            columns={data.schoolList} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            columnsFieldNames={{ text: 'name', value: 'id' }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            onCancel={() => (data.schoolStatus = false)} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            onConfirm={({ selectedValues }: any) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              const val = selectedValues[0] || '' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              data.schoolStatus = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              if (val == data.school?.id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              const active = data.schoolList.find((n: any) => n.id == val) || {} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              data.school = active 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              data.pages.page = 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              data.list = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              data.finished = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              getList() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </Popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     ) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   } 
			 |