|  | @@ -1,7 +1,14 @@
 | 
	
		
			
				|  |  |  import { defineComponent, onMounted, reactive } from 'vue';
 | 
	
		
			
				|  |  |  import styles from './index.module.less';
 | 
	
		
			
				|  |  |  import Item from './item';
 | 
	
		
			
				|  |  | -import { Button, Cell, Field, Skeleton, SkeletonParagraph, showToast } from 'vant';
 | 
	
		
			
				|  |  | +import {
 | 
	
		
			
				|  |  | +  Button,
 | 
	
		
			
				|  |  | +  Cell,
 | 
	
		
			
				|  |  | +  Field,
 | 
	
		
			
				|  |  | +  Skeleton,
 | 
	
		
			
				|  |  | +  SkeletonParagraph,
 | 
	
		
			
				|  |  | +  showToast
 | 
	
		
			
				|  |  | +} from 'vant';
 | 
	
		
			
				|  |  |  import MSticky from '@/components/m-sticky';
 | 
	
		
			
				|  |  |  import MHeader from '@/components/m-header';
 | 
	
		
			
				|  |  |  import SkeletionDetailItem from './skeletion-detail-item';
 | 
	
	
		
			
				|  | @@ -12,6 +19,7 @@ import {
 | 
	
		
			
				|  |  |    api_musicGroupQuitAuditReject,
 | 
	
		
			
				|  |  |    api_musicGroupQuitGetDetail
 | 
	
		
			
				|  |  |  } from '../api';
 | 
	
		
			
				|  |  | +import { STUDENTSTATUS } from '@/helpers/constant';
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  export default defineComponent({
 | 
	
		
			
				|  |  |    name: 'schedule-manage-detail',
 | 
	
	
		
			
				|  | @@ -19,12 +27,15 @@ export default defineComponent({
 | 
	
		
			
				|  |  |      const route = useRoute();
 | 
	
		
			
				|  |  |      const detailData = reactive({
 | 
	
		
			
				|  |  |        student: {} as MusicGroupQuitDetailDto,
 | 
	
		
			
				|  |  | -      skeleton: true
 | 
	
		
			
				|  |  | +      skeleton: true,
 | 
	
		
			
				|  |  | +      /** 审核意见 */
 | 
	
		
			
				|  |  | +      reason: '',
 | 
	
		
			
				|  |  | +      musicGroupQuitId: route.query.musicGroupQuitId as any
 | 
	
		
			
				|  |  |      });
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /** 获取退团详情 */
 | 
	
		
			
				|  |  |      const getDetail = async () => {
 | 
	
		
			
				|  |  | -      const musicGroupQuitId: string = route.query.musicGroupQuitId as any;
 | 
	
		
			
				|  |  | +      const musicGroupQuitId: string = detailData.musicGroupQuitId;
 | 
	
		
			
				|  |  |        api_musicGroupQuitGetDetail(musicGroupQuitId)
 | 
	
		
			
				|  |  |          .then(res => {
 | 
	
		
			
				|  |  |            const data: MusicGroupQuitDetailDto = res?.data || {};
 | 
	
	
		
			
				|  | @@ -37,19 +48,27 @@ export default defineComponent({
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /** 通过 */
 | 
	
		
			
				|  |  |      const musicGroupQuitAuditPass = async () => {
 | 
	
		
			
				|  |  | -      await api_musicGroupQuitAuditPass(
 | 
	
		
			
				|  |  | -        detailData.student.musicGroupQuitId,
 | 
	
		
			
				|  |  | -        detailData.student.reasonEnum
 | 
	
		
			
				|  |  | +      if (!detailData.reason) return showToast('请填写审核意见');
 | 
	
		
			
				|  |  | +      const res = await api_musicGroupQuitAuditPass(
 | 
	
		
			
				|  |  | +        detailData.musicGroupQuitId,
 | 
	
		
			
				|  |  | +        detailData.reason
 | 
	
		
			
				|  |  |        );
 | 
	
		
			
				|  |  | -      showToast('操作成功')
 | 
	
		
			
				|  |  | +      showToast('操作成功');
 | 
	
		
			
				|  |  | +      if (res.code === 200) {
 | 
	
		
			
				|  |  | +        getDetail();
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  |      };
 | 
	
		
			
				|  |  |      /** 拒绝 */
 | 
	
		
			
				|  |  |      const musicGroupQuitAuditReject = async () => {
 | 
	
		
			
				|  |  | -      await api_musicGroupQuitAuditReject(
 | 
	
		
			
				|  |  | -        detailData.student.musicGroupQuitId,
 | 
	
		
			
				|  |  | -        detailData.student.reasonEnum
 | 
	
		
			
				|  |  | +      if (!detailData.reason) return showToast('请填写审核意见');
 | 
	
		
			
				|  |  | +      const res = await api_musicGroupQuitAuditReject(
 | 
	
		
			
				|  |  | +        detailData.musicGroupQuitId,
 | 
	
		
			
				|  |  | +        detailData.reason
 | 
	
		
			
				|  |  |        );
 | 
	
		
			
				|  |  | -      showToast('操作成功')
 | 
	
		
			
				|  |  | +      showToast('操作成功');
 | 
	
		
			
				|  |  | +      if (res.code === 200) {
 | 
	
		
			
				|  |  | +        getDetail();
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  |      };
 | 
	
		
			
				|  |  |      onMounted(() => {
 | 
	
		
			
				|  |  |        getDetail();
 | 
	
	
		
			
				|  | @@ -67,7 +86,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                  <SkeletionDetailItem />
 | 
	
		
			
				|  |  |                </div>
 | 
	
		
			
				|  |  |              ),
 | 
	
		
			
				|  |  | -            default: () => <Item />
 | 
	
		
			
				|  |  | +            default: () => <Item item={detailData.student} />
 | 
	
		
			
				|  |  |            }}
 | 
	
		
			
				|  |  |          </Skeleton>
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -84,7 +103,11 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                    <SkeletonParagraph />
 | 
	
		
			
				|  |  |                  </div>
 | 
	
		
			
				|  |  |                ),
 | 
	
		
			
				|  |  | -              default: () => <div class={styles.info}>{detailData.student.userComment}</div>
 | 
	
		
			
				|  |  | +              default: () => (
 | 
	
		
			
				|  |  | +                <div class={styles.info}>
 | 
	
		
			
				|  |  | +                  {STUDENTSTATUS[detailData.student.reasonEnum]}
 | 
	
		
			
				|  |  | +                </div>
 | 
	
		
			
				|  |  | +              )
 | 
	
		
			
				|  |  |              }}
 | 
	
		
			
				|  |  |            </Skeleton>
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -102,9 +125,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                  </div>
 | 
	
		
			
				|  |  |                ),
 | 
	
		
			
				|  |  |                default: () => (
 | 
	
		
			
				|  |  | -                <div class={styles.info}>
 | 
	
		
			
				|  |  | -                  {detailData.student.userComment}
 | 
	
		
			
				|  |  | -                </div>
 | 
	
		
			
				|  |  | +                <div class={styles.info}>{detailData.student.userComment}</div>
 | 
	
		
			
				|  |  |                )
 | 
	
		
			
				|  |  |              }}
 | 
	
		
			
				|  |  |            </Skeleton>
 | 
	
	
		
			
				|  | @@ -134,6 +155,7 @@ export default defineComponent({
 | 
	
		
			
				|  |  |                        type="textarea"
 | 
	
		
			
				|  |  |                        placeholder="请输入审批意见"
 | 
	
		
			
				|  |  |                        border={false}
 | 
	
		
			
				|  |  | +                      v-model:modelValue={detailData.reason}
 | 
	
		
			
				|  |  |                      />
 | 
	
		
			
				|  |  |                    ) : (
 | 
	
		
			
				|  |  |                      <div class={styles.info}>
 | 
	
	
		
			
				|  | @@ -146,17 +168,18 @@ export default defineComponent({
 | 
	
		
			
				|  |  |            </Skeleton>
 | 
	
		
			
				|  |  |          </div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        {!detailData.skeleton && detailData.student.status !== 'ING' && (
 | 
	
		
			
				|  |  | -          <div class={styles.item}>
 | 
	
		
			
				|  |  | -            <div class={styles.itemTitleDes}>
 | 
	
		
			
				|  |  | -              <div class={styles.line}></div>
 | 
	
		
			
				|  |  | -              <div>审批时间</div>
 | 
	
		
			
				|  |  | +        {/* {!detailData.skeleton &&
 | 
	
		
			
				|  |  | +          ['PASS', 'REJECT'].includes(detailData.student.status) && (
 | 
	
		
			
				|  |  | +            <div class={styles.item}>
 | 
	
		
			
				|  |  | +              <div class={styles.itemTitleDes}>
 | 
	
		
			
				|  |  | +                <div class={styles.line}></div>
 | 
	
		
			
				|  |  | +                <div>审批时间</div>
 | 
	
		
			
				|  |  | +              </div>
 | 
	
		
			
				|  |  | +              <div class={styles.info}>{}</div>
 | 
	
		
			
				|  |  |              </div>
 | 
	
		
			
				|  |  | -            <div class={styles.info}>2023-03-24 14:20:32</div>
 | 
	
		
			
				|  |  | -          </div>
 | 
	
		
			
				|  |  | -        )}
 | 
	
		
			
				|  |  | +          )} */}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        {detailData.skeleton && detailData.student.status === 'ING' && (
 | 
	
		
			
				|  |  | +        {!detailData.skeleton && detailData.student.status === 'ING' && (
 | 
	
		
			
				|  |  |            <div class={[styles.btns, 'van-safe-area-bottom']}>
 | 
	
		
			
				|  |  |              <Button
 | 
	
		
			
				|  |  |                class={styles.cancelBtn}
 |