Browse Source

提交一下

1
mo 3 years ago
parent
commit
7ae4aa4116

+ 6 - 6
src/views/categroyManager/modals/baseInfo.vue

@@ -245,27 +245,27 @@ export default {
           },
         ],
         activityType: [
-          { required: true, message: "请选择活动类型", trigger: "blur" },
+          { required: true, message: "请选择活动类型", trigger: "change" },
         ],
         // activeTime: [
         //   { required: false, message: "请选择活动时间", trigger: "blur" },
         // ],
         courseTime: [
-          { required: false, message: "请选择课程时间", trigger: "blur" },
+          { required: false, message: "请选择课程时间", trigger: "change" },
         ],
         studentMaxUsedTimes: [
           { required: false, message: "请输入购买次数", trigger: "blur" },
         ],
-        organ: [{ required: true, message: "请选择适用分部", trigger: "blur" }],
+        organ: [{ required: true, message: "请选择适用分部", trigger: "change" }],
         stauts: [
-          { required: true, message: "请选择活动形式", trigger: "blur" },
+          { required: true, message: "请选择活动形式", trigger: "change" },
         ],
         applyToStudentType: [
           { required: false, message: "请选择是否新生专享" },
         ],
-        isPayToBalance: [{ required: true, message: "请选择是否支付到余额" }],
+        isPayToBalance: [{ required: true, message: "请选择是否支付到余额", trigger: "change" }],
         allowOnlineToOffline: [
-          { required: true, message: "请选择课程调整方式" },
+          { required: true, message: "请选择课程调整方式", trigger: "change" },
         ],
       },
       courseStatusList: [], // 获取所有课程形式

+ 39 - 26
src/views/categroyManager/modals/payInfo.vue

@@ -19,7 +19,7 @@
             label="课程类型"
             prop="courseType"
             :rules="[
-              { required: true, message: '请选择课程类型', trigger: 'blur' },
+              { required: true, message: '请选择课程类型', trigger: 'change' },
             ]"
           >
             <el-select
@@ -38,7 +38,7 @@
         <el-row>
           <el-form-item
             :rules="[
-              { required: true, message: '请选择课程形式', trigger: 'blur' },
+              { required: true, message: '请选择课程形式', trigger: 'change' },
             ]"
             label="课程形式"
             prop="vipGroupCategoryIdList"
@@ -46,7 +46,7 @@
           >
             <el-select
               v-model.trim="payForm.vipGroupCategoryIdList"
-              style="width: 400px!important"
+              style="width: 400px !important"
               @visible-change="$forceUpdate()"
               clearable
               :disabled="isDisabled"
@@ -63,10 +63,11 @@
         <el-row>
           <el-form-item
             :rules="[
-              { required: true, message: '请选择上课模式', trigger: 'blur' },
+              { required: true, message: '请选择上课模式', trigger: 'change' },
             ]"
             label="上课模式"
             prop="teachMode"
+            :validate-on-rule-change="true"
             v-if="payForm.courseType == 'VIP'"
           >
             <el-select
@@ -88,7 +89,7 @@
             prop="allowOnlineToOffline"
             v-if="payForm.courseType == 'VIP'"
             :rules="[
-              { required: true, message: '课程调整方式', trigger: 'blur' },
+              { required: true, message: '课程调整方式', trigger: 'change' },
             ]"
           >
             <el-select
@@ -144,6 +145,7 @@
               placeholder="请选择是否限制课时"
               clearable
               :disabled="isDisabled"
+              @change="checkisLimitNum"
             >
               <el-option label="是" :value="true"></el-option>
               <el-option label="否" :value="false"></el-option>
@@ -201,7 +203,7 @@
             label="会员名称"
             prop="memberRankId"
             :rules="[
-              { required: true, message: '请选择会员名称', trigger: 'blur' },
+              { required: true, message: '请选择会员名称', trigger: 'change' },
             ]"
           >
             <el-select
@@ -225,7 +227,7 @@
             label="会员周期"
             prop="period"
             :rules="[
-              { required: true, message: '请选择会员周期', trigger: 'blur' },
+              { required: true, message: '请选择会员周期', trigger: 'change' },
             ]"
           >
             <el-select
@@ -282,7 +284,7 @@
             prop="giveCourseType"
             v-if="payForm.fullMinusCourseTimes"
             :rules="[
-              { required: true, message: '请选择赠送类型', trigger: 'blur' },
+              { required: true, message: '请选择赠送类型', trigger: 'change' },
             ]"
           >
             <el-select
@@ -304,7 +306,7 @@
           prop="giveTeachMode"
           v-if="payForm.giveCourseType == 'VIP' && payForm.fullMinusCourseTimes"
           :rules="[
-            { required: true, message: '请选择赠课模式', trigger: 'blur' },
+            { required: true, message: '请选择赠课模式', trigger: 'change' },
           ]"
         >
           <el-select
@@ -327,7 +329,7 @@
               payForm.giveCourseType == 'VIP' && payForm.fullMinusCourseTimes
             "
             :rules="[
-              { required: true, message: '请选择赠课形式', trigger: 'blur' },
+              { required: true, message: '请选择赠课形式', trigger: 'change' },
             ]"
           >
             <el-select
@@ -392,12 +394,16 @@
           </el-input>
         </el-form-item>
       </el-row>
-      <el-row v-if="payForm.giveCourseType == 'MEMBER'&&payForm.fullMinusCourseTimes">
+      <el-row
+        v-if="
+          payForm.giveCourseType == 'MEMBER' && payForm.fullMinusCourseTimes
+        "
+      >
         <el-form-item
           label="赠送会员名称"
           prop="giveMemberRankId"
           :rules="[
-            { required: true, message: '请选择赠送会员名称', trigger: 'blur' },
+            { required: true, message: '请选择赠送会员名称', trigger: 'change' },
           ]"
         >
           <el-select
@@ -420,7 +426,9 @@
         <el-form-item
           prop="giveMemberTime"
           label="赠送会员时长"
-          v-if="payForm.giveCourseType == 'MEMBER'&&payForm.fullMinusCourseTimes"
+          v-if="
+            payForm.giveCourseType == 'MEMBER' && payForm.fullMinusCourseTimes
+          "
           :rules="[
             { required: true, message: '请输入赠送会员时长', trigger: 'blur' },
           ]"
@@ -444,7 +452,7 @@ import { vipResetTypeList } from "@/utils/searchArray";
 const MIN_NUMBER = 1;
 const MAX_NUMBER = 999;
 export default {
-  props: ["payForm", "activeType", "remberList","isDisabled"],
+  props: ["payForm", "activeType", "remberList", "isDisabled"],
   data() {
     return {
       coureTimerList: [],
@@ -490,27 +498,32 @@ export default {
       return callback(new Error("输入值不得小于最小课时数"));
     },
     changeCourseType(val) {
-       this.$emit('chageSalary')
+      this.$emit("chageSalary");
       this.$emit("changeCourseType", val);
     },
     changeGiveCourseType(val) {
-       this.$emit('chageSalary')
+      this.$emit("chageSalary");
       this.$emit("changeGiveCourseType", val);
     },
-    chageSalary(val){
-      this.$emit('chageSalary')
+    chageSalary(val) {
+      this.$emit("chageSalary");
+    },
+    changeFullMinus(val) {
+      if (!val || val <= 0) {
+        this.$emit("chageSalary");
+        this.$emit("changeGiveCourseType");
+      }
     },
-    changeFullMinus(val){
-      if(!val|| val <= 0){
-         this.$emit('chageSalary')
-          this.$emit("changeGiveCourseType");
+    changeGiveCourseNum(val) {
+      if (!val || val <= 0) {
+        this.$emit("chageSalary");
       }
     },
-    changeGiveCourseNum(val){
-         if(!val|| val <= 0){
-         this.$emit('chageSalary')
+    checkisLimitNum(val) {
+      if (!val) {
+        this.$emit("resetIsLimitNum");
       }
-    }
+    },
   },
 };
 </script>

+ 12 - 7
src/views/categroyManager/vipNewActive.vue

@@ -31,6 +31,7 @@
         @changeCourseType="changeCourseType"
         @changeGiveCourseType="changeGiveCourseType"
         @chageSalary="chageSalary"
+        @resetIsLimitNum="resetIsLimitNum"
         v-if="active == 2"
         :remberList="remberList"
         :isDisabled="isDisabled || statuss != 'DRAFT'"
@@ -165,7 +166,7 @@ export default {
         applyToStudentType: [],
         studentMaxUsedTimes: "",
         isPayToBalance: "",
-        marketPrice:""
+        marketPrice: "",
       },
       title: "新建课程活动方案",
       payForm: {
@@ -189,7 +190,7 @@ export default {
       this.formatDetail(rusult.data);
     } else {
       this.payInfo = { ...payBaseForm };
-      this.salaryForm = JSON.parse(JSON.stringify({ ...baseSalaryForm }));;
+      this.salaryForm = JSON.parse(JSON.stringify({ ...baseSalaryForm }));
     }
   },
   methods: {
@@ -271,11 +272,15 @@ export default {
       this.$set(this.payForm, "giveTeachMode", "");
     },
     chageSalary() {
-      this.salaryForm = null
+      this.salaryForm = null;
       this.salaryForm = JSON.parse(JSON.stringify({ ...baseSalaryForm }));
 
       this.$forceUpdate();
     },
+    resetIsLimitNum() {
+      this.$set(this.payForm, "maxCourseNum", null);
+      this.$set(this.payForm, "minCourseNum", null);
+    },
     async submit() {
       this.$refs.salaryInfo.$refs.salaryForm.validate((flag) => {
         if (flag) {
@@ -403,7 +408,7 @@ export default {
         description: data.description,
         activeTime,
         courseTime,
-        marketPrice:data.marketPrice,
+        marketPrice: data.marketPrice,
         organ: data.organId.split(",").map((organ) => {
           return Number(organ);
         }),
@@ -448,16 +453,16 @@ export default {
         giveMemberTime: data.giveMemberTime ? data.giveMemberTime : null,
       };
       // 格式化缴费金额
-        console.log(data.salarySettlementJson)
+      console.log(data.salarySettlementJson);
       if (data.salarySettlementJson && data.salarySettlementJson != "null") {
-        this.salaryForm = JSON.parse(JSON.stringify({ ...baseSalaryForm }));;
+        this.salaryForm = JSON.parse(JSON.stringify({ ...baseSalaryForm }));
         let result = JSON.parse(data.salarySettlementJson);
 
         for (let key in result) {
           this.salaryForm[key] = result[key];
         }
       } else {
-        this.salaryForm = JSON.parse(JSON.stringify({ ...baseSalaryForm }));;
+        this.salaryForm = JSON.parse(JSON.stringify({ ...baseSalaryForm }));
       }
       this.$forceUpdate();
     },