Bläddra i källkod

Merge branch '11/24SAAS' of http://git.dayaedu.com/yonge/dy-admin-manager into 11/24SAAS

mo 3 år sedan
förälder
incheckning
75705774ad

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 0 - 0
dist/index.html


+ 1 - 0
dist/static/css/chunk-05fbcff2.a81ce832.css

@@ -0,0 +1 @@
+.btns[data-v-562ab4b5]{text-align:right}.files[data-v-562ab4b5]{background-color:#f8f8f8;padding:20px 0;padding-right:20px;margin-bottom:20px;border-radius:5px;position:relative}.files .file-remove[data-v-562ab4b5]{position:absolute;right:20px;bottom:10px}.myCascader .el-radio{width:100%;height:100%;z-index:10;position:absolute;top:10px;right:10px}.myCascader .el-radio__input{visibility:hidden}.myCascader .el-cascader-node__postfix{top:10px}[data-v-3e496900] .el-dropdown{margin-right:10px;color:#14928a}.remark[data-v-3e496900]{display:inline;overflow:hidden;white-space:pre}.lookForm[data-v-3e496900] .el-dialog__body{padding:0}.iframe_back[data-v-3e496900]{width:195px;height:45px;position:absolute;bottom:50px;background:transparent;left:50%;z-index:99;margin-left:-100px}.iframe_help[data-v-3e496900]{position:absolute;background:transparent;width:50px;height:120px;top:50%;right:0;margin-top:-35px}.iframe_header_back[data-v-3e496900]{background:transparent;width:225px;height:50px;position:absolute;top:65px;left:20px}

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 0 - 0
dist/static/js/app.92b2c92f.js


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 0 - 0
dist/static/js/chunk-05fbcff2.3db7a0f5.js


+ 24 - 5
src/views/accompaniment/index.vue

@@ -246,7 +246,7 @@
           fixed="right"
         >
           <template slot-scope="scope">
-            <el-button
+            <!-- <el-button
               type="text"
               @click="looker(scope.row)"
               :disabled="
@@ -256,7 +256,19 @@
                 scope.row.clientType != 'SMART_PRACTICE'
               "
               >预览</el-button
-            >
+            > -->
+            <el-dropdown :disabled="(scope.row.isOpenMetronome ? !scope.row.url : !scope.row.metronomeUrl) || scope.row.clientType != 'SMART_PRACTICE'">
+                <span class="el-dropdown-link">
+                  预览<i class="el-icon-arrow-down el-icon--right"></i>
+                </span>
+                <el-dropdown-menu slot="dropdown">
+                  <el-dropdown-item>
+                    <el-button type="text" @click="looker(scope.row, 1)" >系统自带节拍器</el-button></el-dropdown-item>
+                  </el-dropdown-item>
+                  <el-dropdown-item>
+                    <el-button type="text" @click="looker(scope.row, 0)" >原音自带节拍器</el-button></el-dropdown-item>
+                </el-dropdown-menu>
+              </el-dropdown>
             <el-button
               type="text"
               @click="player(scope.row)"
@@ -352,11 +364,13 @@ export default {
   },
   data() {
     return {
+      tabName: 'first',
       type: "",
       activeUrl: "",
       songUseType,
       lookVisible: false,
       accompanyUrl: null, // 预览地址
+      accompanyUrl2: null, // 预览地址
       audioVisible: false,
       tableList: [],
       searchForm: {
@@ -463,14 +477,16 @@ export default {
       this.$refs.searchForm.resetFields();
       this.FetchList();
     },
-    looker(row) {
+    looker(row, num) {
       this.accompanyUrl =
         vaildTeachingUrl() +
         "/accompany?Authorization=" +
         getToken() +
-        "&platform=web#/detail/" +
+        "&platform=web&isOpenMetronome="+ num +"#/detail/" +
         row.id;
       this.lookVisible = true;
+
+
       // this.$nextTick(() => {
       //   console.log(this.$refs.iframe)
       //   let iframe = this.$refs.iframe
@@ -542,6 +558,10 @@ export default {
 }
 </style>
 <style lang="less" scoped>
+/deep/.el-dropdown {
+  margin-right: 10px;
+  color: #14928A;
+}
 .remark {
   display: inline;
   overflow: hidden;
@@ -552,7 +572,6 @@ export default {
     padding: 0;
   }
 }
-
 .iframe_back {
   width: 195px;
   height: 45px;

+ 16 - 3
src/views/accompaniment/modals/form.vue

@@ -56,11 +56,24 @@
         label="节拍器"
         :rules="[{required: true, message: '请选择节拍器'}]"
       >
+        <template slot="label">
+          <span>
+            节拍器
+            <el-tooltip placement="top" popper-class="mTooltip">
+              <div slot="content">
+                是否播放系统自带节拍器
+              </div>
+              <i
+                class="el-icon-question"
+                style="font-size: 18px; color: #f56c6c"
+              ></i>
+            </el-tooltip>
+          </span>
+        </template>
         <el-select
           style="width: 100% !important"
           v-model="form.sysMusicScore.isOpenMetronome"
           placeholder="请选择节拍器"
-          @change="rankChange"
         >
           <!-- <el-option
             :value="item.id"
@@ -159,7 +172,7 @@
           v-model="form.sysMusicScore.metronomeUrl"
         />
       </el-form-item>
-      <el-form-item
+      <!-- <el-form-item
         label="MID原音"
         prop="sysMusicScore.midiUrl"
       >
@@ -168,7 +181,7 @@
           accept=".mid"
           v-model="form.sysMusicScore.midiUrl"
         />
-      </el-form-item>
+      </el-form-item> -->
       <div
         class="files"
         v-for="(song, index) in form.sysMusicScoreAccompaniments"

+ 106 - 43
src/views/categroyManager/generalSettings/groupMarkPrice.vue

@@ -11,36 +11,37 @@
         </el-alert>
         <el-row>
           <el-form-item
-            prop="190"
+            prop="minMonthFee"
+            label="月度团练宝机构定价范围最低:"
             :rules="[
               {
                 required: false,
                 pattern: /^[1-9][0-9]*$/,
-                message: '请输入正确的账号数量',
+                message: '请输入正确的价格',
               },
             ]"
           >
-            月度团练宝机构定价范围最低:
             <el-input
-              v-model="form['190']"
+              v-model="form.minMonthFee"
               placeholder="请输入金额"
             >
               <template slot="append">元</template>
             </el-input>
-            最高
           </el-form-item>
           <el-form-item
-            prop="190"
+            label="最高"
+            prop="maxMonthFee"
             :rules="[
               {
                 required: false,
                 pattern: /^[1-9][0-9]*$/,
-                message: '请输入正确的账号数量',
+                message: '请输入正确的价格',
               },
+              { validator: validateMonthMax, trigger: 'blur' }
             ]"
           >
             <el-input
-              v-model="form['190']"
+              v-model="form.maxMonthFee"
               placeholder="请输入金额"
             >
               <template slot="append">元</template>
@@ -49,36 +50,37 @@
         </el-row>
         <el-row>
           <el-form-item
-            prop="190"
+            prop="minQuarterlyFee"
+            label="季度团练宝机构定价范围最低:"
             :rules="[
               {
                 required: false,
                 pattern: /^[1-9][0-9]*$/,
-                message: '请输入正确的账号数量',
+                message: '请输入正确的价格',
               },
             ]"
           >
-            季度团练宝机构定价范围最低:
             <el-input
-              v-model="form['190']"
+              v-model="form.minQuarterlyFee"
               placeholder="请输入金额"
             >
               <template slot="append">元</template>
             </el-input>
-            最高
           </el-form-item>
           <el-form-item
-            prop="190"
+            label="最高"
+            prop="maxQuarterlyFee"
             :rules="[
               {
                 required: false,
                 pattern: /^[1-9][0-9]*$/,
-                message: '请输入正确的账号数量',
+                message: '请输入正确的价格',
               },
+              { validator: validateQuarterlyMax, trigger: 'blur' }
             ]"
           >
             <el-input
-              v-model="form['190']"
+              v-model="form['maxQuarterlyFee']"
               placeholder="请输入金额"
             >
               <template slot="append">元</template>
@@ -87,36 +89,37 @@
         </el-row>
         <el-row>
           <el-form-item
-            prop="190"
+            prop="minHalfYearFee"
+            label="半年团练宝机构定价范围最低:"
             :rules="[
               {
                 required: false,
                 pattern: /^[1-9][0-9]*$/,
-                message: '请输入正确的账号数量',
+                message: '请输入正确的价格',
               },
             ]"
           >
-            半年团练宝机构定价范围最低:
             <el-input
-              v-model="form['190']"
+              v-model="form['minHalfYearFee']"
               placeholder="请输入金额"
             >
               <template slot="append">元</template>
             </el-input>
-            最高
           </el-form-item>
           <el-form-item
-            prop="190"
+            prop="maxHalfYearFee"
+            label="最高"
             :rules="[
               {
                 required: false,
                 pattern: /^[1-9][0-9]*$/,
-                message: '请输入正确的账号数量',
+                message: '请输入正确的价格',
               },
+              { validator: validateHalfYearMax, trigger: 'blur' }
             ]"
           >
             <el-input
-              v-model="form['190']"
+              v-model="form['maxHalfYearFee']"
               placeholder="请输入金额"
             >
               <template slot="append">元</template>
@@ -125,36 +128,37 @@
         </el-row>
         <el-row>
           <el-form-item
-            prop="190"
+            prop="minYearFee"
+            label="年度团练宝机构定价范围最低:"
             :rules="[
               {
                 required: false,
                 pattern: /^[1-9][0-9]*$/,
-                message: '请输入正确的账号数量',
+                message: '请输入正确的价格',
               },
             ]"
           >
-            年度团练宝机构定价范围最低:
             <el-input
-              v-model="form['190']"
+              v-model="form['minYearFee']"
               placeholder="请输入金额"
             >
               <template slot="append">元</template>
             </el-input>
-            最高
           </el-form-item>
           <el-form-item
-            prop="190"
+            prop="maxYearFee"
+            label="最高"
             :rules="[
               {
                 required: false,
                 pattern: /^[1-9][0-9]*$/,
-                message: '请输入正确的账号数量',
+                message: '请输入正确的价格',
               },
+              { validator: validateYearMax, trigger: 'blur' }
             ]"
           >
             <el-input
-              v-model="form['190']"
+              v-model="form['maxYearFee']"
               placeholder="请输入金额"
             >
               <template slot="append">元</template>
@@ -174,7 +178,19 @@ import { sysConfigList, sysConfigUpdate } from "@/api/generalSettings"; // 平
 export default {
   data() {
     return {
-      form: {},
+      id: null,
+      form: {
+        // maxDayFee: null,
+        // minDayFee: null,
+        minMonthFee: null,
+        maxMonthFee: null,
+        minQuarterlyFee: null,
+        maxQuarterlyFee: null,
+        minHalfYearFee: null,
+        maxHalfYearFee: null,
+        minYearFee: null,
+        maxYearFee: null,
+      },
       questionList: [],
       rulesVisiable: false,
     };
@@ -185,13 +201,23 @@ export default {
   methods: {
     async getRules() {
       try {
-        const res = await sysConfigList({ group: "LOGIN" });
+        const res = await sysConfigList({ group: "DEFAULT" });
+        const paramName = 'cloud_price_range'
         res.data.forEach((item) => {
+          if(item.paramName == paramName) {
+            const itemValue = item.paranValue ? JSON.parse(item.paranValue) : null
+            if(itemValue) {
+              this.id = item.id
+              this.form = itemValue
+            }
+            console.log(itemValue)
+            // this.$set(this.form, item.id, item.paranValue);
+          }
           // this.form[item.paramName] = item.paranValue
-          this.$set(this.form, item.id, item.paranValue);
+          // this.$set(this.form, item.id, item.paranValue);
         });
         // this.$forceUpdate()
-        console.log(this.form);
+        // console.log(this.form);
       } catch (e) {
         console.log(e);
       }
@@ -199,13 +225,11 @@ export default {
     async save() {
       this.$refs.form.validate(async (valid) => {
         if (valid) {
-          let param = [];
-          for (let i in this.form) {
-            param.push({
-              id: i,
-              paranValue: this.form[i],
-            });
-          }
+          let param = [{
+            id: this.id,
+            paranValue: JSON.stringify(this.form)
+          }];
+
           try {
             const res = await sysConfigUpdate(param);
             this.$message.success("保存成功");
@@ -216,9 +240,48 @@ export default {
         }
       });
     },
+    validateMonthMax(rule, value, callback) {
+      const one = Number(value);
+      const min = Number(this.form.minMonthFee);
+      if (!min || one >= min) {
+        return callback();
+      }
+      return callback(new Error("输入值不得小于月度最低金额"));
+    },
+    validateQuarterlyMax(rule, value, callback) {
+      const one = Number(value);
+      const min = Number(this.form.minMonthFee);
+      if (!min || one >= min) {
+        return callback();
+      }
+      return callback(new Error("输入值不得小于季度最低金额"));
+    },
+    validateHalfYearMax(rule, value, callback) {
+      const one = Number(value);
+      const min = Number(this.form.minMonthFee);
+      if (!min || one >= min) {
+        return callback();
+      }
+      return callback(new Error("输入值不得小于半年最低金额"));
+    },
+    validateYearMax(rule, value, callback) {
+      const one = Number(value);
+      const min = Number(this.form.minMonthFee);
+      if (!min || one >= min) {
+        return callback();
+      }
+      return callback(new Error("输入值不得小于年度最低金额"));
+    },
   },
 };
 </script>
 <style lang="scss" scoped>
 @import "~@scss/views/courseRulersManager/index.scss";
+/deep/.el-form-item__label {
+  font-weight: 500;
+  color: #000;
+}
+/deep/.el-form-item__content {
+  display: inherit;
+}
 </style>

Vissa filer visades inte eftersom för många filer har ändrats