فهرست منبع

音乐管理 修复原价不能为负值

DESKTOP-O04BTUJ\muzen 2 سال پیش
والد
کامیت
b39447efe6
3فایلهای تغییر یافته به همراه39 افزوده شده و 14 حذف شده
  1. 5 1
      src/views/music/album/detail.vue
  2. 5 1
      src/views/music/blog/detail.vue
  3. 29 12
      src/views/music/program/detail.vue

+ 5 - 1
src/views/music/album/detail.vue

@@ -117,6 +117,8 @@ export default {
     var checkPrice = (rule, value, callback) => {
       if (!value) {
         return callback(new Error('请输入原价'))
+      } else if (Number(value) < 0) {
+        return callback(new Error('不能为负数'))
       } else if (!str.test(value)) {
         return callback(new Error('小数点后最多输入两位'))
       } else if (this.form.discount) {
@@ -126,7 +128,9 @@ export default {
     // 判断折扣价是否小于原价
     var checkDiscount = (rule, value, callback) => {
       if (value) {
-        if (!str.test(value)) {
+        if (Number(value) < 0) {
+          return callback(new Error('不能为负数'))
+        } else if (!str.test(value)) {
           return callback(new Error('小数点后最多输入两位'))
         } else if (this.form.price) {
           Number(value) < Number(this.form.price) ? callback() : callback(new Error('折扣价必须小于原价'))

+ 5 - 1
src/views/music/blog/detail.vue

@@ -119,6 +119,8 @@ export default {
     var checkPrice = (rule, value, callback) => {
       if (!value) {
         return callback(new Error('请输入原价'))
+      } else if (Number(value) < 0) {
+        return callback(new Error('不能为负数'))
       } else if (!str.test(value)) {
         return callback(new Error('小数点后最多输入两位'))
       } else if (this.form.discountedPrice) {
@@ -128,7 +130,9 @@ export default {
     // 判断折扣价是否小于原价
     var checkDiscount = (rule, value, callback) => {
       if (value) {
-        if (!str.test(value)) {
+        if (Number(value) < 0) {
+          return callback(new Error('不能为负数'))
+        } else if (!str.test(value)) {
           return callback(new Error('小数点后最多输入两位'))
         } else if (this.form.price) {
           Number(value) < Number(this.form.price) ? callback() : callback(new Error('折扣价必须小于原价'))

+ 29 - 12
src/views/music/program/detail.vue

@@ -4,9 +4,9 @@
       <el-form-item label="节目名称:" prop="name">
         <el-input v-model="form.name" placeholder="请输入节目名称" />
       </el-form-item>
-      <el-form-item label="节目介绍:" prop="description">
+      <el-form-item label="节目介绍:">
         <el-input v-model="form.description" type="textarea" :autosize="{ minRows: 5, maxRows: 10}"
-          placeholder="请输入节目介绍" />
+          maxlength="100" show-word-limit placeholder="请输入节目介绍" />
       </el-form-item>
       <el-form-item label="资源平台:" prop="platformId">
         <el-select v-model="form.platformId" placeholder="请选择资源平台">
@@ -29,9 +29,13 @@
         <Upload listType="picture-card" :url="form.cover" @upload="upload($event, 'cover')"
           :disabled="disabled" />
       </el-form-item>
-      <el-form-item label="音频文件:" prop="fullUrl">
-        <Upload listType="audio" @upload="upload($event, 'fullUrl')" />
-        <div style="color:#909399">单个上传音频文件不超过500MB</div>
+      <el-form-item label="音频文件:" prop="realName">
+        <el-input v-model="form.realName" readonly>
+          <template slot="suffix">
+            <Upload listType="audio" :size="100" @upload="upload($event, 'fullUrl')" />
+          </template>
+        </el-input>
+        <div style="color:#909399">单个上传音频文件不超过100MB</div>
       </el-form-item>
     </el-form>
     <div class="form-btn">
@@ -57,6 +61,8 @@ export default {
     var checkPrice = (rule, value, callback) => {
       if (!value) {
         return callback(new Error('请输入原价'))
+      } else if (Number(value) < 0) {
+        return callback(new Error('不能为负数'))
       } else if (!str.test(value)) {
         return callback(new Error('小数点后最多输入两位'))
       } else if (this.form.discountedPrice) {
@@ -66,7 +72,9 @@ export default {
     // 判断折扣价是否小于原价
     var checkDiscount = (rule, value, callback) => {
       if (value) {
-        if (!str.test(value)) {
+        if (Number(value) < 0) {
+          return callback(new Error('不能为负数'))
+        } else if (!str.test(value)) {
           return callback(new Error('小数点后最多输入两位'))
         } else if (this.form.price) {
           Number(value) < Number(this.form.price) ? callback() : callback(new Error('折扣价必须小于原价'))
@@ -76,15 +84,15 @@ export default {
     return {
       // 表单
       form: {
-        status: 1
+        status: 1,
+        realName: ''
       },
       // 校验
       rules: {
         name: [{
           required: true, message: '请输入节目名称', trigger: 'blur'
-        }],
-        description: [{
-          required: true, message: '请输入节目简介', trigger: 'blur'
+        }, {
+          max: 20, message: '字符不超过20个', trigger: 'blur'
         }],
         platformId: [{
           required: true, message: '请选择资源平台', trigger: 'change'
@@ -93,16 +101,20 @@ export default {
           required: true, message: '请选择付费类型', trigger: 'change'
         }],
         price: [{
+          max: 10, message: '字符不超过10个', trigger: 'blur'
+        }, {
           required: true, validator: checkPrice, trigger: 'blur'
         }],
         discountedPrice: [{
+          max: 10, message: '字符不超过10个', trigger: 'blur'
+        }, {
           validator: checkDiscount, trigger: 'blur'
         }],
         cover: [{
           required: true, message: '请上传节目封面', trigger: 'change'
         }],
-        fullUrl: [{
-          required: true, message: '请上传音频文件', trigger: 'change'
+        realName: [{
+          required: true, message: '请上传音频文件', trigger: 'blur, change'
         }]
       },
       // 只读
@@ -135,6 +147,7 @@ export default {
       } else {
         this.form.fullUrl = e.file.url
         this.form.fullDuration = e.file.time
+        this.form.realName = e.file.realName
       }
     },
 
@@ -167,4 +180,8 @@ export default {
 .el-form {
   width: 500px;
 }
+
+::v-deep .el-input__suffix {
+  right: 0;
+}
 </style>