skyblued 2 年之前
父節點
當前提交
964bad358d

+ 101 - 83
src/school/approval-manage/agency/index.tsx

@@ -7,6 +7,7 @@ import iconPhoto from '../images/icon-photo.png'
 import request from '@/helpers/request'
 import { state } from '@/state'
 import OFullRefresh from '@/components/o-full-refresh'
+import OEmpty from '@/components/o-empty'
 
 interface ISalaryRecord {
   /**学校补助确认记录ID */
@@ -34,8 +35,9 @@ interface ISalaryRecord {
 export default defineComponent({
   name: 'approval-manage-agency',
   setup() {
+    const loading = ref(true)
     const data = reactive({
-      salaryRecordList: [{}] as ISalaryRecord[],
+      salaryRecordList: [] as ISalaryRecord[],
       /**训练照片 */
       schoolWeekPhoto: {
         /**预计的训练照片数 */
@@ -62,9 +64,11 @@ export default defineComponent({
     })
     const refreshing = ref(false)
     const getData = async () => {
+      loading.value = true
       try {
         const res: any = await request.post(`${state.platformApi}/schoolWeekSalaryRecord/manage`)
       } catch (error) {}
+      loading.value = false
       refreshing.value = false
     }
     onMounted(() => {
@@ -77,90 +81,104 @@ export default defineComponent({
         style="min-height: calc(100vh - var(--van-nav-bar-height) - var(--header-height))"
       >
         <div class={styles.wrap}>
-          {data.salaryRecordList.map((item: ISalaryRecord) => {
-            return (
-              <div class={styles.item} style={{ marginTop: 0 }}>
-                <Cell
-                  center
-                  label={`${item.startDate} 至 ${item.endDate}`}
-                  isLink
-                  to={'/approval-manage-subsidy?salaryId=' + (item.id || '')}
-                >
-                  {{
-                    title: () => (
-                      <div class={styles.itemTitle}>
-                        <img class={styles.titleIcon} src={iconSubsidy} />
-                        <span>补助确认</span>
-                      </div>
-                    )
-                  }}
-                </Cell>
-                <Grid class={styles.grid} columnNum={3} border={false}>
-                  <GridItem>
-                    <div class={styles.gridItem}>
-                      <div class={styles.gridItemTop}>
-                        <span class={styles.topNum}>{item.manageSalary}</span>元
-                      </div>
-                      <div>管理补助</div>
-                    </div>
-                  </GridItem>
-                  <GridItem>
-                    <div class={styles.gridItem}>
-                      <div class={styles.gridItemTop}>
-                        <span class={styles.topNum}>{item.courseSalary}</span>元
-                      </div>
-                      <div>训练补助</div>
-                    </div>
-                  </GridItem>
-                  <GridItem>
-                    <div class={styles.gridItem}>
-                      <div class={styles.gridItemTop}>
-                        <span class={styles.topNum}>{item.trainingSalary}</span>元
-                      </div>
-                      <div>练习奖励</div>
-                    </div>
-                  </GridItem>
-                </Grid>
-              </div>
-            )
-          })}
-
-          <div class={styles.item}>
-            <Cell
-              style={{ '--van-cell-value-color': '#333' }}
-              center
-              label={`${data.schoolWeekPhoto.startDate} 至 ${data.schoolWeekPhoto.endDate}`}
-              value={data.schoolWeekPhoto.photoNum + '/' + data.schoolWeekPhoto.expectPhotoNum}
-              isLink
-            >
-              {{
-                title: () => (
-                  <div class={styles.itemTitle}>
-                    <img class={styles.titleIcon} src={iconNews} />
-                    <span>训练照片</span>
+          {!data.salaryRecordList.length ? null : (
+            <>
+              {data.salaryRecordList.map((item: ISalaryRecord) => {
+                return (
+                  <div class={styles.item} style={{ marginTop: 0 }}>
+                    <Cell
+                      center
+                      label={`${item.startDate} 至 ${item.endDate}`}
+                      isLink
+                      to={'/approval-manage-subsidy?salaryId=' + (item.id || '')}
+                    >
+                      {{
+                        title: () => (
+                          <div class={styles.itemTitle}>
+                            <img class={styles.titleIcon} src={iconSubsidy} />
+                            <span>补助确认</span>
+                          </div>
+                        )
+                      }}
+                    </Cell>
+                    <Grid class={styles.grid} columnNum={3} border={false}>
+                      <GridItem>
+                        <div class={styles.gridItem}>
+                          <div class={styles.gridItemTop}>
+                            <span class={styles.topNum}>{item.manageSalary}</span>元
+                          </div>
+                          <div>管理补助</div>
+                        </div>
+                      </GridItem>
+                      <GridItem>
+                        <div class={styles.gridItem}>
+                          <div class={styles.gridItemTop}>
+                            <span class={styles.topNum}>{item.courseSalary}</span>元
+                          </div>
+                          <div>训练补助</div>
+                        </div>
+                      </GridItem>
+                      <GridItem>
+                        <div class={styles.gridItem}>
+                          <div class={styles.gridItemTop}>
+                            <span class={styles.topNum}>{item.trainingSalary}</span>元
+                          </div>
+                          <div>练习奖励</div>
+                        </div>
+                      </GridItem>
+                    </Grid>
                   </div>
                 )
-              }}
-            </Cell>
-          </div>
-          <div class={styles.item}>
-            <Cell
-              style={{ '--van-cell-value-color': '#333' }}
-              center
-              label={`${data.schoolWeekNews.startDate} 至 ${data.schoolWeekNews.endDate}`}
-              value={data.schoolWeekNews.newsNum + '/' + data.schoolWeekNews.expectNewsNum}
-              isLink
-            >
-              {{
-                title: () => (
-                  <div class={styles.itemTitle}>
-                    <img class={styles.titleIcon} src={iconPhoto} />
-                    <span>乐团资讯</span>
-                  </div>
-                )
-              }}
-            </Cell>
-          </div>
+              })}
+            </>
+          )}
+
+          {!data.schoolWeekPhoto.expectPhotoNum ? null : (
+            <div class={styles.item}>
+              <Cell
+                style={{ '--van-cell-value-color': '#333' }}
+                center
+                label={`${data.schoolWeekPhoto.startDate} 至 ${data.schoolWeekPhoto.endDate}`}
+                value={data.schoolWeekPhoto.photoNum + '/' + data.schoolWeekPhoto.expectPhotoNum}
+                isLink
+              >
+                {{
+                  title: () => (
+                    <div class={styles.itemTitle}>
+                      <img class={styles.titleIcon} src={iconNews} />
+                      <span>训练照片</span>
+                    </div>
+                  )
+                }}
+              </Cell>
+            </div>
+          )}
+          {!data.schoolWeekNews.expectNewsNum ? null : (
+            <div class={styles.item}>
+              <Cell
+                style={{ '--van-cell-value-color': '#333' }}
+                center
+                label={`${data.schoolWeekNews.startDate} 至 ${data.schoolWeekNews.endDate}`}
+                value={data.schoolWeekNews.newsNum + '/' + data.schoolWeekNews.expectNewsNum}
+                isLink
+              >
+                {{
+                  title: () => (
+                    <div class={styles.itemTitle}>
+                      <img class={styles.titleIcon} src={iconPhoto} />
+                      <span>乐团资讯</span>
+                    </div>
+                  )
+                }}
+              </Cell>
+            </div>
+          )}
+          {!loading.value &&
+          !data.salaryRecordList.length &&
+          !data.schoolWeekPhoto.expectPhotoNum &&
+          !data.schoolWeekNews.expectNewsNum ? (
+            <OEmpty />
+          ) : null}
         </div>
       </OFullRefresh>
     )

+ 1 - 0
src/school/approval-manage/index.tsx

@@ -29,6 +29,7 @@ export default defineComponent({
           animated
           sticky
           offsetTop={headerHeight.value}
+          swipeable
         >
           <Tab name="wait" title="处理事项">
             <Agency />

+ 2 - 2
src/school/approval-manage/subsidy/index.tsx

@@ -194,7 +194,7 @@ export default defineComponent({
             </div>
 
             <div class={styles.item}>
-              <Cell center to={'/subsidy-exercise-detail'}>
+              <Cell center>
                 {{
                   title: () => (
                     <div class={styles.itemTitle}>
@@ -246,7 +246,7 @@ export default defineComponent({
                       center
                       title={teacher.userName}
                       isLink
-                      to={'/subsidy-exercise-detail?id='}
+                      to={'/subsidy-exercise-detail?id=' + teacher.id}
                     >
                       {{
                         icon: () => <img class={styles.itemPicture} src={teacher.avatar} />,