DESKTOP-SVI9JE1\muzen 1 rok pred
rodič
commit
94e8d4933d

+ 10 - 13
src/views/music/program/detail.vue

@@ -23,7 +23,7 @@
         <el-input-number v-model="form.price" placeholder="请输入原价" :min="1" :precision="2" :controls="false" />
       </el-form-item>
       <el-form-item v-if="form.isFree === 0" label="折扣价:" prop="discountedPrice">
-        <el-input-number v-model="form.discountedPrice" placeholder="请输入折扣价" :min="1" :precision="2" :controls="false" />
+        <el-input-number v-model="form.discountedPrice" placeholder="请输入折扣价" :min="0" :precision="2" :controls="false" />
       </el-form-item>
       <el-form-item label="节目封面:" prop="cover">
         <Upload listType="picture-card" :url="form.cover" @upload="upload($event, 'cover')" :disabled="disabled" />
@@ -50,26 +50,23 @@ import { platformMixin, isFreeMixin } from '@/mixin/index'
 export default {
   mixins: [platformMixin, isFreeMixin],
   data() {
-    // 小数点后两位 正则
-    var str = /^\d+.?\d{0,2}$/
     // 判断原价是否大于折扣价
     var checkPrice = (rule, value, callback) => {
       if (!value) {
         callback(new Error('请输入原价'))
-      } else if (value.toString().length > 10) {
-        callback(new Error('字符长度不超过10个'))
-      } else if (this.form.discountedPrice) {
-        value > this.form.discountedPrice ? callback() : callback(new Error('原价必须大于折扣价'))
+      } else {
+        if (this.form.discountedPrice && value <= this.form.discountedPrice) {
+          callback(new Error('原价必须大于折扣价'))
+        }
+        callback()
       }
     }
     // 判断折扣价是否小于原价
     var checkDiscount = (rule, value, callback) => {
-      if (value) {
-        if (value.toString().length > 10) {
-          callback(new Error('字符长度不超过10个'))
-        } else if (this.form.price) {
-          value < this.form.price ? callback() : callback(new Error('折扣价必须小于原价'))
-        }
+      if (this.form.price && value >= this.form.price) {
+        callback(new Error('折扣价必须小于原价'))
+      } else {
+        callback()
       }
     }
     return {

+ 17 - 11
src/views/music/program/index.vue

@@ -2,13 +2,15 @@
   <div class="app-container">
     <!-- 搜索 -->
     <el-form inline size="mini">
+      <el-form-item label="节目Id:">
+        <el-input v-model="form.id" placeholder="请输入节目Id" clearable />
+      </el-form-item>
       <el-form-item label="节目名称:">
         <el-input v-model="form.name" placeholder="请选择节目名称" clearable />
       </el-form-item>
       <el-form-item label="资源平台:">
         <el-select v-model="form.platformId" placeholder="请选择资源平台" clearable>
-          <el-option v-for="item in platformOptions" :key="item.value" :value="item.value"
-            :label="item.label" />
+          <el-option v-for="item in platformOptions" :key="item.value" :value="item.value" :label="item.label" />
         </el-select>
       </el-form-item>
       <el-form-item label="付费类型:">
@@ -18,22 +20,24 @@
       </el-form-item>
       <el-form-item label="当前状态:">
         <el-select v-model="form.status" placeholder="请选择当前状态" clearable>
-          <el-option v-for="item in onOrOffOptions" :key="item.value" :label="item.label"
-            :value="item.value" />
+          <el-option v-for="item in onOrOffOptions" :key="item.value" :label="item.label" :value="item.value" />
         </el-select>
       </el-form-item>
       <el-form-item>
         <el-button type="primary" icon="el-icon-search" @click="getSearch">搜索</el-button>
         <el-button icon="el-icon-refresh" @click="getRefresh">重置</el-button>
-        <el-button type="primary" plain icon="el-icon-plus" @click="getDetail()" v-hasPermi="['music:program:add']">新增</el-button>
-        <el-button type="primary" :disabled="obj.id === ''" @click="getChange(obj, 1)" v-hasPermi="['music:program:up']">批量上架</el-button>
-        <el-button type="primary" :disabled="obj.id === ''" @click="getChange(obj, 2)" v-hasPermi="['music:program:down']">批量下架</el-button>
+        <el-button type="primary" plain icon="el-icon-plus" @click="getDetail()"
+          v-hasPermi="['music:program:add']">新增</el-button>
+        <el-button type="primary" :disabled="obj.id === ''" @click="getChange(obj, 1)"
+          v-hasPermi="['music:program:up']">批量上架</el-button>
+        <el-button type="primary" :disabled="obj.id === ''" @click="getChange(obj, 2)"
+          v-hasPermi="['music:program:down']">批量下架</el-button>
       </el-form-item>
     </el-form>
     <!-- 列表 -->
     <el-table :data="tableData" v-loading="loading" @selection-change="handleSelect">
       <el-table-column type="selection" align="center" />
-      <el-table-column label="ID" prop="id" align="center" show-overflow-tooltip />
+      <el-table-column label="节目Id" prop="id" align="center" show-overflow-tooltip />
       <el-table-column label="节目名称" prop="name" align="center" show-overflow-tooltip />
       <el-table-column label="付费类型" prop="isFree" align="center" :formatter="freeFormatter" width="100px" />
       <el-table-column label="原价 / 元" prop="price" align="center" />
@@ -50,16 +54,18 @@
         <template slot-scope="scope">
           <el-button type="text" @click="getDetail(scope.row.id, true)">查看</el-button>
           <span v-if="scope.row.status === 2">
-            <el-button type="text" @click="getDetail(scope.row.id)" v-hasPermi="['music:program:edit']" style="margin-left: 10px">编辑</el-button>
+            <el-button type="text" @click="getDetail(scope.row.id)" v-hasPermi="['music:program:edit']"
+              style="margin-left: 10px">编辑</el-button>
             <el-button type="text" @click="getChange(scope.row, 1)" v-hasPermi="['music:program:up']">上架</el-button>
             <el-button type="delete" @click="getDelete(scope.row)" v-hasPermi="['music:program:delete']">删除</el-button>
           </span>
-          <el-button type="text" v-else @click="getChange(scope.row, 2)" v-hasPermi="['music:program:down']">下架</el-button>
+          <el-button type="text" v-else @click="getChange(scope.row, 2)"
+            v-hasPermi="['music:program:down']">下架</el-button>
           <Audio :src="scope.row.fullUrl" style="margin-left: 10px" />
         </template>
       </el-table-column>
     </el-table>
-    <pagination v-show="total>0" :total="total" :page.sync="form.pageNum" :limit.sync="form.pageSize"
+    <pagination v-show="total > 0" :total="total" :page.sync="form.pageNum" :limit.sync="form.pageSize"
       @pagination="getList" />
   </div>
 </template>