Browse Source

提交测试

1
mo 4 years ago
parent
commit
c1a8b510ed

+ 42 - 11
src/views/teamBuild/signupList.vue

@@ -428,7 +428,10 @@
                     >退团</el-button
                   >
                 </auth>
-                <auth :auths="'visit/add/teamSignupList'" v-if=" scope.row.visitNum<=0">
+                <auth
+                  :auths="'visit/add/teamSignupList'"
+                  v-if="scope.row.visitNum <= 0"
+                >
                   <el-button type="text" @click="addVisit(scope.row)"
                     >新增回访</el-button
                   >
@@ -680,20 +683,33 @@
             >否</el-radio
           >
         </el-form-item>
-             <el-form-item label="退还乐保费用" prop="isMaintenanceFee">
-          <el-radio
-            v-model.trim="quitForm.isMaintenanceFee"
-            :label="true"
+        <el-form-item
+          label="退还乐保费用"
+          prop="isMaintenanceFee"
+          v-if="activeRow.hasMaintenance"
+        >
+          <el-radio v-model.trim="quitForm.isMaintenanceFee" :label="true"
             >是</el-radio
           >
-          <el-radio
-            v-model.trim="quitForm.isMaintenanceFee"
-            :label="false"
+          <el-radio v-model.trim="quitForm.isMaintenanceFee" :label="false"
             >否</el-radio
           >
         </el-form-item>
+        <el-form-item
+          label="退还乐保金额"
+          prop="maintenanceFee"
+          v-if="quitForm.isMaintenanceFee"
+        >
+          <el-input
+            type="number"
+            v-model.trim="quitForm.maintenanceFee"
+            style="width: 180px"
+          >
+            <template slot="append">元</template>
+          </el-input>
+        </el-form-item>
         <el-form-item label="退团原因" prop="reason">
-          <el-input type="textarea" v-model.trim="quitForm.reason"></el-input>
+          <el-input type="textarea" v-model.trim="quitForm.reason"> </el-input>
         </el-form-item>
       </el-form>
       <span slot="footer" class="dialog-footer question">
@@ -822,7 +838,8 @@ export default {
         isRefundCourseFee: null,
         isRefundInstrumentFee: null,
         isRefundTeachingAssistantsFee: null,
-        isMaintenanceFee:null,
+        isMaintenanceFee: null,
+        maintenanceFee: 0,
         reason: "",
       },
       stepImgs: {
@@ -896,11 +913,13 @@ export default {
         isRefundTeachingAssistantsFee: [
           { required: true, message: "选择是否退还教辅费用" },
         ],
+        isMaintenanceFee: [{ required: true, message: "选择是否退还乐保费用" }],
+        maintenanceFee: [{ required: true, message: "请输入退还乐保金额" }],
         reason: [{ required: true, message: "请填写退团退费原因" }],
       },
       applyExpireDate: "",
       paymentExpireDate: "",
-      activeRow: null,
+      activeRow: { hasMaintenance: false },
       visitVisiable: false,
       visitForm: {
         musicGroupId: "",
@@ -1433,6 +1452,8 @@ export default {
               isRefundCourseFee: null,
               isRefundInstrumentFee: null,
               isRefundTeachingAssistantsFee: null,
+              isMaintenanceFee: null,
+              maintenanceFee: 0,
               reason: "",
             };
             if (res.code == 200) {
@@ -1463,12 +1484,15 @@ export default {
                 isRefundInstrumentFee: this.quitForm.isRefundInstrumentFee,
                 isRefundTeachingAssistantsFee: this.quitForm
                   .isRefundTeachingAssistantsFee,
+                maintenanceFee: this.quitForm.maintenanceFee,
               }).then((res) => {
                 this.quitForm = {
                   // 退团信息确认
                   isRefundCourseFee: null,
                   isRefundInstrumentFee: null,
                   isRefundTeachingAssistantsFee: null,
+                  isMaintenanceFee: null,
+                  maintenanceFee: 0,
                   reason: "",
                 };
                 if (res.code == 200) {
@@ -1571,6 +1595,13 @@ export default {
     },
   },
   watch: {
+    "quitForm.isMaintenanceFee"(val) {
+      if (val) {
+        this.quitForm.maintenanceFee = 300;
+      } else {
+        this.quitForm.maintenanceFee = 0;
+      }
+    },
     orderVisible(val) {
       if (!val) {
         this.orderForm = {

+ 49 - 13
src/views/teamDetail/components/studentList.vue

@@ -10,7 +10,6 @@
       </div>
     </div>
 
-
     <!-- 搜索类型 -->
     <save-form
       ref="searchForm"
@@ -297,7 +296,7 @@
               <!-- musicGroupPaymentCalenderDetail/queryPage/studentList -->
               <auth
                 auths="musicGroupPaymentCalenderDetail/queryPage/studentList"
-                :router="['/resetTeaming']"
+                :router="['/teamLists']"
               >
                 <i
                   style="color: #14928a; font-size: 17px"
@@ -371,8 +370,6 @@
                 >新增回访</el-button
               >
 
-
-
               <el-popover
                 v-show="scope.row.remark"
                 placement="top-start"
@@ -383,8 +380,6 @@
               >
                 <el-button type="text" slot="reference">备注</el-button>
               </el-popover>
-
-
             </div>
           </template>
         </el-table-column>
@@ -572,6 +567,31 @@
             >否</el-radio
           >
         </el-form-item>
+        <el-form-item
+          label="退还乐保费用"
+          prop="isMaintenanceFee"
+          v-if="activeRow.hasMaintenance"
+        >
+          <el-radio v-model.trim="quitForm.isMaintenanceFee" :label="true"
+            >是</el-radio
+          >
+          <el-radio v-model.trim="quitForm.isMaintenanceFee" :label="false"
+            >否</el-radio
+          >
+        </el-form-item>
+        <el-form-item
+          label="退还乐保金额"
+          prop="maintenanceFee"
+          v-if="quitForm.isMaintenanceFee"
+        >
+          <el-input
+            type="number"
+            v-model.trim="quitForm.maintenanceFee"
+            style="width: 180px"
+          >
+            <template slot="append">元</template>
+          </el-input>
+        </el-form-item>
         <el-form-item label="退团原因" prop="reason">
           <el-input type="textarea" v-model.trim="quitForm.reason"></el-input>
         </el-form-item>
@@ -838,6 +858,8 @@ export default {
         isRefundCourseFee: null,
         isRefundInstrumentFee: null,
         isRefundTeachingAssistantsFee: null,
+        isMaintenanceFee: null,
+        maintenanceFee: 0,
         reason: "",
       },
       classMask: {
@@ -908,6 +930,8 @@ export default {
         isRefundTeachingAssistantsFee: [
           { required: true, message: "选择是否退还教辅费用" },
         ],
+          isMaintenanceFee: [{ required: true, message: "选择是否退还乐保费用" }],
+        maintenanceFee: [{ required: true, message: "请输入退还乐保金额" }],
         reason: [{ required: true, message: "请填写退团退费原因" }],
       },
       maskRules: {
@@ -933,7 +957,7 @@ export default {
       },
       INSTRUMENTLIST: [], // 乐器列表
       ACCESSORIESLIST: [], // 辅件列表
-      activeRow: null,
+      activeRow: { hasMaintenance: false },
       Fsearch: null,
       Frules: null,
       payForm: {
@@ -1198,12 +1222,12 @@ export default {
       this.search();
     },
     getList() {
-      getintoClass({ musicGroupId: this.teamid }).then((res) => {
-        if (res.code == 200) {
-          this.$set(this,'leftList',res.data)
-          // this.leftList = res.data;
-        }
-      });
+      // getintoClass({ musicGroupId: this.teamid }).then((res) => {
+      //   if (res.code == 200) {
+      //     this.$set(this, "leftList", res.data);
+      //     // this.leftList = res.data;
+      //   }
+      // });
       this.getTeamStudent();
       let obj = {
         musicGroupId: this.teamid,
@@ -1278,12 +1302,15 @@ export default {
                 isRefundInstrumentFee: this.quitForm.isRefundInstrumentFee,
                 isRefundTeachingAssistantsFee: this.quitForm
                   .isRefundTeachingAssistantsFee,
+                maintenanceFee: this.quitForm.maintenanceFee,
               }).then((res) => {
                 this.quitForm = {
                   // 退团信息确认
                   isRefundCourseFee: null,
                   isRefundInstrumentFee: null,
                   isRefundTeachingAssistantsFee: null,
+                  isMaintenanceFee: null,
+                  maintenanceFee: 0,
                   reason: "",
                 };
                 if (res.code == 200) {
@@ -1499,6 +1526,8 @@ export default {
               isRefundCourseFee: null,
               isRefundInstrumentFee: null,
               isRefundTeachingAssistantsFee: null,
+              isMaintenanceFee: null,
+              maintenanceFee: 0,
               reason: "",
             };
             if (res.code == 200) {
@@ -1664,6 +1693,13 @@ export default {
     },
   },
   watch: {
+        "quitForm.isMaintenanceFee"(val) {
+      if (val) {
+        this.quitForm.maintenanceFee = 300;
+      } else {
+        this.quitForm.maintenanceFee = 0;
+      }
+    },
     quitVisible(val) {
       if (!val) {
         this.quitForm = {

+ 95 - 37
src/views/withdrawal-application/modals/quit.vue

@@ -1,15 +1,22 @@
 <template>
   <div>
-    <el-form :model="quitForm" ref="quitForm" :rules="quitRules" label-width="110px">
+    <el-form
+      :model="quitForm"
+      ref="quitForm"
+      :rules="quitRules"
+      label-width="110px"
+    >
       <el-form-item label="审核状态" prop="status">
         <el-radio v-model.trim="quitForm.status" label="APPROVED"
           >通过</el-radio
         >
-        <el-radio v-model.trim="quitForm.status" label="DENIED"
-          >拒绝</el-radio
-        >
+        <el-radio v-model.trim="quitForm.status" label="DENIED">拒绝</el-radio>
       </el-form-item>
-      <el-form-item label="退还课程费用" prop="isRefundCourseFee" v-if="quitForm.status == 'APPROVED'">
+      <el-form-item
+        label="退还课程费用"
+        prop="isRefundCourseFee"
+        v-if="quitForm.status == 'APPROVED'"
+      >
         <el-radio v-model.trim="quitForm.isRefundCourseFee" :label="true"
           >是</el-radio
         >
@@ -17,7 +24,11 @@
           >否</el-radio
         >
       </el-form-item>
-      <el-form-item label="退还乐器费用" prop="isRefundInstrumentFee" v-if="quitForm.status == 'APPROVED'">
+      <el-form-item
+        label="退还乐器费用"
+        prop="isRefundInstrumentFee"
+        v-if="quitForm.status == 'APPROVED'"
+      >
         <el-radio v-model.trim="quitForm.isRefundInstrumentFee" :label="true"
           >是</el-radio
         >
@@ -25,7 +36,11 @@
           >否</el-radio
         >
       </el-form-item>
-      <el-form-item label="退还教辅费用" prop="isRefundTeachingAssistantsFee" v-if="quitForm.status == 'APPROVED'">
+      <el-form-item
+        label="退还教辅费用"
+        prop="isRefundTeachingAssistantsFee"
+        v-if="quitForm.status == 'APPROVED'"
+      >
         <el-radio
           v-model.trim="quitForm.isRefundTeachingAssistantsFee"
           :label="true"
@@ -37,69 +52,112 @@
           >否</el-radio
         >
       </el-form-item>
+      <el-form-item
+        label="退还乐保费用"
+        prop="isMaintenanceFee"
+        v-if="detail.hasMaintenance&&quitForm.status == 'APPROVED'"
+      >
+        <el-radio v-model.trim="quitForm.isMaintenanceFee" :label="true"
+          >是</el-radio
+        >
+        <el-radio v-model.trim="quitForm.isMaintenanceFee" :label="false"
+          >否</el-radio
+        >
+      </el-form-item>
+      <el-form-item
+        label="退还乐保金额"
+        prop="maintenanceFee"
+        v-if="quitForm.isMaintenanceFee"
+      >
+        <el-input
+          type="number"
+          v-model.trim="quitForm.maintenanceFee"
+          style="width: 180px"
+        >
+          <template slot="append">元</template>
+        </el-input>
+      </el-form-item>
       <el-form-item label="退团原因" prop="reason">
-        <el-input type="textarea" v-model.trim="quitForm.reason" placeholder="请填写退团原因"></el-input>
+        <el-input
+          type="textarea"
+          v-model.trim="quitForm.reason"
+          placeholder="请填写退团原因"
+        ></el-input>
       </el-form-item>
     </el-form>
-    <div slot="footer" class="dialog-footer" style="text-align: right;">
+    <div slot="footer" class="dialog-footer" style="text-align: right">
       <el-button @click="$emit('close')">取 消</el-button>
       <el-button type="primary" @click="submit">确 定</el-button>
     </div>
   </div>
 </template>
 <script>
-import { quitMusicGroup } from '@/api/journal'
-import cleanDeep from 'clean-deep'
+import { quitMusicGroup } from "@/api/journal";
+import cleanDeep from "clean-deep";
 export default {
-  props: ['detail'],
+  props: ["detail"],
   data() {
     return {
       quitForm: {
-        status: '',
+        status: "",
         isRefundCourseFee: null,
         isRefundInstrumentFee: null,
         isRefundTeachingAssistantsFee: null,
+        isMaintenanceFee: null,
+        maintenanceFee: 0,
         reason: null,
       },
-    }
+    };
+  },
+  mounted() {
+    console.log(this.detail);
+  },
+  watch:{
+        "quitForm.isMaintenanceFee"(val) {
+      if (val) {
+        this.quitForm.maintenanceFee = 300;
+      } else {
+        this.quitForm.maintenanceFee = 0;
+      }
+    },
   },
   computed: {
     quitRules() {
-      const required = this.quitForm.status === 'APPROVED'
+      const required = this.quitForm.status === "APPROVED";
       return {
         status: [{ required: true, message: "请选择审核状态" }],
-        isRefundCourseFee: [
-          { required, message: "请选择是否退还课程费用" },
-        ],
-        isRefundInstrumentFee: [
-          { required, message: "选择是否退还乐器费用" },
-        ],
+        isRefundCourseFee: [{ required, message: "请选择是否退还课程费用" }],
+        isRefundInstrumentFee: [{ required, message: "选择是否退还乐器费用" }],
         isRefundTeachingAssistantsFee: [
           { required, message: "选择是否退还教辅费用" },
         ],
+        isMaintenanceFee: [{ required: true, message: "选择是否退还乐保费用" }],
+        maintenanceFee: [{ required: true, message: "请输入退还乐保金额" }],
         reason: [{ required: true, message: "请填写退团原因" }],
-      }
-    }
+      };
+    },
   },
   methods: {
     submit() {
-      this.$refs.quitForm.validate(async valid => {
+      this.$refs.quitForm.validate(async (valid) => {
         if (valid) {
           try {
             await this.$confirm("是否确定提交?", "提示", {
-              type: 'warning',
-            })
-            await quitMusicGroup(cleanDeep({
-              id: this.detail.id,
-              ...this.quitForm
-            }))
-            this.$emit('close')
-            this.$emit('submited')
-            this.$message.success("提交成功")
+              type: "warning",
+            });
+            await quitMusicGroup(
+              cleanDeep({
+                id: this.detail.id,
+                ...this.quitForm,
+              })
+            );
+            this.$emit("close");
+            this.$emit("submited");
+            this.$message.success("提交成功");
           } catch (error) {}
         }
-      })
-    }
-  }
-}
+      });
+    },
+  },
+};
 </script>

+ 295 - 188
src/views/workBenchManager/journal/model/musicGroup.vue

@@ -1,205 +1,312 @@
 <template>
-    <div>
-        <el-form ref="musicForm"
-                 :model="quitForm"
-                 :rules="quitRules"
-                 status-icon
-                 class="musicForm"
-                 label-width="120px">
-            <el-alert title="已拒绝" show-icon center v-if="musicForm.status == 'DENIED'" :closable="false" class="alert" type="error"></el-alert>
-            <el-alert title="已处理" show-icon center v-if="musicForm.status == 'APPROVED'" :closable="false" class="alert" type="success"></el-alert>
-            <el-alert title="已取消" show-icon center v-if="musicForm.status == 'CANCELED'" :closable="false" class="alert" type="info"></el-alert>
-            <el-form-item label="学员姓名">
-                <el-input disabled v-model.trim="musicForm.user.username"></el-input>
-            </el-form-item>
-            <el-form-item label="乐团名称">
-                <el-input disabled v-model.trim="musicForm.musicGroup.name"></el-input>
-            </el-form-item>
-            <el-form-item label="用户备注">
-                <el-input type="textarea" disabled v-model.trim="musicForm.userComment"></el-input>
-            </el-form-item>
+  <div>
+    <el-form
+      ref="musicForm"
+      :model="quitForm"
+      :rules="quitRules"
+      status-icon
+      class="musicForm"
+      label-width="120px"
+    >
+      <el-alert
+        title="已拒绝"
+        show-icon
+        center
+        v-if="musicForm.status == 'DENIED'"
+        :closable="false"
+        class="alert"
+        type="error"
+      ></el-alert>
+      <el-alert
+        title="已处理"
+        show-icon
+        center
+        v-if="musicForm.status == 'APPROVED'"
+        :closable="false"
+        class="alert"
+        type="success"
+      ></el-alert>
+      <el-alert
+        title="已取消"
+        show-icon
+        center
+        v-if="musicForm.status == 'CANCELED'"
+        :closable="false"
+        class="alert"
+        type="info"
+      ></el-alert>
+      <el-form-item label="学员姓名">
+        <el-input disabled v-model.trim="musicForm.user.username"></el-input>
+      </el-form-item>
+      <el-form-item label="乐团名称">
+        <el-input disabled v-model.trim="musicForm.musicGroup.name"></el-input>
+      </el-form-item>
+      <el-form-item label="用户备注">
+        <el-input
+          type="textarea"
+          disabled
+          v-model.trim="musicForm.userComment"
+        ></el-input>
+      </el-form-item>
 
-
-            <el-form-item label="退还课程费用" v-if="musicForm.status == 'PROCESSING'"
-                          prop="isRefundCourseFee">
-                <el-radio v-model.trim="quitForm.isRefundCourseFee"
-                            :label="true">是</el-radio>
-                <el-radio v-model.trim="quitForm.isRefundCourseFee"
-                            :label="false">否</el-radio>
-            </el-form-item>
-            <el-form-item label="退还乐器费用" v-if="musicForm.status == 'PROCESSING'"
-                          prop="isRefundInstrumentFee">
-                <el-radio v-model.trim="quitForm.isRefundInstrumentFee"
-                            :label="true">是</el-radio>
-                <el-radio v-model.trim="quitForm.isRefundInstrumentFee"
-                            :label="false">否</el-radio>
-            </el-form-item>
-            <el-form-item label="退还教辅费用" v-if="musicForm.status == 'PROCESSING'"
-                          prop="isRefundTeachingAssistantsFee">
-                <el-radio v-model.trim="quitForm.isRefundTeachingAssistantsFee"
-                            :label="true">是</el-radio>
-                <el-radio v-model.trim="quitForm.isRefundTeachingAssistantsFee"
-                            :label="false">否</el-radio>
-            </el-form-item>
-            <el-form-item label="退团原因"
-                          prop="reason">
-              <el-input type="textarea" :disabled="musicForm.status != 'PROCESSING'"
-                        v-model.trim="quitForm.reason"></el-input>
-            </el-form-item>
-        </el-form>
-        <div slot="footer" class="dialog-footer" v-if="musicForm.status == 'PROCESSING'">
-            <el-button type="primary" v-permission="'musicGroupQuit/quitMusicGroup/conform'" @click="onSubmitGroup(musicForm, 'APPROVED')">确认</el-button>
-            <el-button type="danger" v-permission="'musicGroupQuit/quitMusicGroup'" @click="onSubmitGroup(musicForm, 'DENIED')">拒绝</el-button>
-        </div>
+      <el-form-item
+        label="退还课程费用"
+        v-if="musicForm.status == 'PROCESSING'"
+        prop="isRefundCourseFee"
+      >
+        <el-radio v-model.trim="quitForm.isRefundCourseFee" :label="true"
+          >是</el-radio
+        >
+        <el-radio v-model.trim="quitForm.isRefundCourseFee" :label="false"
+          >否</el-radio
+        >
+      </el-form-item>
+      <el-form-item
+        label="退还乐器费用"
+        v-if="musicForm.status == 'PROCESSING'"
+        prop="isRefundInstrumentFee"
+      >
+        <el-radio v-model.trim="quitForm.isRefundInstrumentFee" :label="true"
+          >是</el-radio
+        >
+        <el-radio v-model.trim="quitForm.isRefundInstrumentFee" :label="false"
+          >否</el-radio
+        >
+      </el-form-item>
+      <el-form-item
+        label="退还教辅费用"
+        v-if="musicForm.status == 'PROCESSING'"
+        prop="isRefundTeachingAssistantsFee"
+      >
+        <el-radio
+          v-model.trim="quitForm.isRefundTeachingAssistantsFee"
+          :label="true"
+          >是</el-radio
+        >
+        <el-radio
+          v-model.trim="quitForm.isRefundTeachingAssistantsFee"
+          :label="false"
+          >否</el-radio
+        >
+      </el-form-item>
+       <el-form-item
+          label="退还乐保费用"
+          prop="isMaintenanceFee"
+          v-if="dialogDetail.hasMaintenance"
+        >
+          <el-radio v-model.trim="quitForm.isMaintenanceFee" :label="true"
+            >是</el-radio
+          >
+          <el-radio v-model.trim="quitForm.isMaintenanceFee" :label="false"
+            >否</el-radio
+          >
+        </el-form-item>
+        <el-form-item
+          label="退还乐保金额"
+          prop="maintenanceFee"
+          v-if="quitForm.isMaintenanceFee"
+        >
+          <el-input
+            type="number"
+            v-model.trim="quitForm.maintenanceFee"
+            style="width: 180px"
+          >
+            <template slot="append">元</template>
+          </el-input>
+        </el-form-item>
+      <el-form-item label="退团原因" prop="reason">
+        <el-input
+          type="textarea"
+          :disabled="musicForm.status != 'PROCESSING'"
+          v-model.trim="quitForm.reason"
+        ></el-input>
+      </el-form-item>
+    </el-form>
+    <div
+      slot="footer"
+      class="dialog-footer"
+      v-if="musicForm.status == 'PROCESSING'"
+    >
+      <el-button
+        type="primary"
+        v-permission="'musicGroupQuit/quitMusicGroup/conform'"
+        @click="onSubmitGroup(musicForm, 'APPROVED')"
+        >确认</el-button
+      >
+      <el-button
+        type="danger"
+        v-permission="'musicGroupQuit/quitMusicGroup'"
+        @click="onSubmitGroup(musicForm, 'DENIED')"
+        >拒绝</el-button
+      >
     </div>
+  </div>
 </template>
 
 <script>
-import { queryApplyRefundDetail, musicGroupQuit, quitMusicGroup } from '@/api/journal'
-import Tooltip from '@/components/Tooltip'
-import cleanDeep from 'clean-deep'
-import dayjs from 'dayjs'
+import {
+  queryApplyRefundDetail,
+  musicGroupQuit,
+  quitMusicGroup,
+} from "@/api/journal";
+import Tooltip from "@/components/Tooltip";
+import cleanDeep from "clean-deep";
+import dayjs from "dayjs";
 export default {
-    props: ['dialogDetail'],
-    components: { Tooltip },
-    data() {
-        var validateReason = (rule, value, callback) => {
-            if (value === '') {
-                callback(new Error('请填写退团退费原因'));
-            } else {
-                callback();
-            }
-        };
-        var validateFee1 = (rule, value, callback) => {
-            if (value === '' || value == null) {
-                callback(new Error('请选择退还课程费用'));
-            } else {
-                callback();
-            }
-        };
-        var validateFee2 = (rule, value, callback) => {
-            if (value === '' || value == null) {
-                callback(new Error('请选择退还乐器费用'));
-            } else {
-                callback();
-            }
-        };
-        var validateFee3 = (rule, value, callback) => {
-            if (value === '' || value == null) {
-                callback(new Error('请选择退还教辅费用'));
-            } else {
-                callback();
+  props: ["dialogDetail"],
+  components: { Tooltip },
+  data() {
+    var validateReason = (rule, value, callback) => {
+      if (value === "") {
+        callback(new Error("请填写退团退费原因"));
+      } else {
+        callback();
+      }
+    };
+    var validateFee1 = (rule, value, callback) => {
+      if (value === "" || value == null) {
+        callback(new Error("请选择退还课程费用"));
+      } else {
+        callback();
+      }
+    };
+    var validateFee2 = (rule, value, callback) => {
+      if (value === "" || value == null) {
+        callback(new Error("请选择退还乐器费用"));
+      } else {
+        callback();
+      }
+    };
+    var validateFee3 = (rule, value, callback) => {
+      if (value === "" || value == null) {
+        callback(new Error("请选择退还教辅费用"));
+      } else {
+        callback();
+      }
+    };
+    return {
+      musicForm: {
+        user: {},
+        musicGroup: {},
+      },
+      musicGroupCourse: [],
+      vipCourse: [],
+      quitForm: {
+        // 退团信息确认
+        isRefundCourseFee: null,
+        isRefundInstrumentFee: null,
+        isRefundTeachingAssistantsFee: null,
+        reason: "",
+      },
+      quitRules: {
+        isRefundCourseFee: [
+          { validator: validateFee1, trigger: "change, blur" },
+        ],
+        isRefundInstrumentFee: [
+          { validator: validateFee2, trigger: "change, blur" },
+        ],
+        isRefundTeachingAssistantsFee: [
+          { validator: validateFee3, trigger: "change, blur" },
+        ],
+         isMaintenanceFee: [{ required: true, message: "选择是否退还乐保费用" }],
+        maintenanceFee: [{ required: true, message: "请输入退还乐保金额" }],
+        reason: [{ validator: validateReason, trigger: "blur" }],
+      },
+    };
+  },
+  mounted() {
+    this.__init();
+    console.log(this.dialogDetail)
+  },
+  watch: {
+    "quitForm.isMaintenanceFee"(val) {
+      if (val) {
+        this.quitForm.maintenanceFee = 300;
+      } else {
+        this.quitForm.maintenanceFee = 0;
+      }
+    },
+  },
+  methods: {
+    async __init() {
+      let { memo } = this.dialogDetail;
+      memo = memo ? JSON.parse(memo) : null;
+      if (!memo) {
+        // 判断是否有参数
+        this.$message.error("参数有误");
+        return;
+      }
+      if (memo.type == "VIPGROUP") {
+        // await queryApplyRefundDetail({ id: memo.Id }).then(res => {
+        //     if (res.code == 200) {
+        //         this.showRight = true
+        //         this.showMessage = res.data
+        //         this.showMessage.type = memo.type
+        //         this.remark = res.data.studentApplyRefunds.remark
+        //         this.actualAmount = res.data.studentApplyRefunds.actualAmount
+        //         //
+        //     } else {
+        //         this.$message.error(res.msg)
+        //     }
+        // })
+      } else if (memo.type == "MUSICGROUP") {
+        await musicGroupQuit({ id: memo.Id }).then((res) => {
+          if (res.code == 200) {
+            this.musicForm = res.data;
+            if (this.$refs.quitForm) {
+              this.$refs.quitForm.resetFields();
             }
-        };
-        return {
-            musicForm: {
-                user: {},
-                musicGroup: {}
-            },
-            musicGroupCourse: [],
-            vipCourse: [],
-            quitForm: {
-                // 退团信息确认
-                isRefundCourseFee: null,
-                isRefundInstrumentFee: null,
-                isRefundTeachingAssistantsFee: null,
-                reason: ""
-            },
-            quitRules: {
-                isRefundCourseFee: [
-                    { validator: validateFee1, trigger: 'change, blur' }
-                ],
-                isRefundInstrumentFee: [
-                    { validator: validateFee2, trigger: 'change, blur' }
-                ],
-                isRefundTeachingAssistantsFee: [
-                    { validator: validateFee3, trigger: 'change, blur' }
-                ],
-                reason: [{ validator: validateReason, trigger:"blur" }]
-            },
-        }
+            this.quitForm.reason = res.data.reason;
+          } else {
+            this.$message.error(res.msg);
+          }
+        });
+      }
     },
-    mounted() {
-        this.__init()
+    onSubmitGroup(params, status) {
+      if (status == "DENIED") {
+        this.$refs["musicForm"].clearValidate();
+        this.$refs["musicForm"].validateField("reason", (res) => {
+          if (!res) {
+            this.onSubmitGroups(params, status);
+          }
+        });
+      } else {
+        this.$refs["musicForm"].validate((res) => {
+          if (res) {
+            this.onSubmitGroups(params, status);
+          }
+        });
+      }
     },
-    methods: {
-        async __init() {
-            let { memo } = this.dialogDetail
-            memo = memo ? JSON.parse(memo) : null
-            if(!memo) { // 判断是否有参数
-                this.$message.error('参数有误')
-                return
-            }
-            if (memo.type == 'VIPGROUP') {
-                // await queryApplyRefundDetail({ id: memo.Id }).then(res => {
-                //     if (res.code == 200) {
-                //         this.showRight = true
-                //         this.showMessage = res.data
-                //         this.showMessage.type = memo.type
-                //         this.remark = res.data.studentApplyRefunds.remark
-                //         this.actualAmount = res.data.studentApplyRefunds.actualAmount
-                //         //
-                //     } else {
-                //         this.$message.error(res.msg)
-                //     }
-                // })
-            } else if (memo.type == 'MUSICGROUP') {
-                await musicGroupQuit({ id: memo.Id }).then(res => {
-                    if (res.code == 200) {
-                        this.musicForm = res.data
-                        if(this.$refs.quitForm){
-                            this.$refs.quitForm.resetFields()
-                        }
-                        this.quitForm.reason = res.data.reason
-                    } else {
-                        this.$message.error(res.msg)
-                    }
-                })
-            }
-        },
-        onSubmitGroup (params, status) {
-        if(status == 'DENIED') {
-            this.$refs['musicForm'].clearValidate()
-            this.$refs['musicForm'].validateField('reason', res => {
-            if(!res) {
-                this.onSubmitGroups(params, status)
-            }
-            })
-        } else {
-            this.$refs["musicForm"].validate(res => {
-            if (res) {
-                this.onSubmitGroups(params, status)
-            }
-            });
-        }
-        },
-        onSubmitGroups(params, status) {
-            this.$confirm("确定此操作吗?", "提示", {
-                confirmButtonText: "确定",
-                cancelButtonText: "取消",
-                type: "warning"
-            }).then(async () => {
-                let query = this.quitForm
-                query.id = params.id,
-                query.status = status
-                await quitMusicGroup(cleanDeep(query)).then(res => {
-                    this.$message.success('处理成功')
-                    this.$listeners.close()
-                    this.$listeners.getList()
-                })
-            }).catch(() => { });
-        },
-    }
-}
+    onSubmitGroups(params, status) {
+      this.$confirm("确定此操作吗?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(async () => {
+          let query = this.quitForm;
+          (query.id = params.id), (query.status = status);
+          await quitMusicGroup(cleanDeep(query)).then((res) => {
+            this.$message.success("处理成功");
+            this.$listeners.close();
+            this.$listeners.getList();
+          });
+        })
+        .catch(() => {});
+    },
+  },
+};
 </script>
 
 <style lang="less" scoped>
-.dialog-footer{
-    margin-top: 20px;
-    display: block;
-    text-align: right;
+.dialog-footer {
+  margin-top: 20px;
+  display: block;
+  text-align: right;
 }
 .alert {
-   margin-bottom: 10px;
+  margin-bottom: 10px;
 }
 </style>