فهرست منبع

乐团收费标准

wolyshaw 4 سال پیش
والد
کامیت
789034df74

+ 43 - 1
src/api/specialSetting.js

@@ -187,6 +187,7 @@ export function chargeTypeSubjectMapper (data) {
   return request2({
     url: api + '/chargeTypeSubjectMapper/queryPage',
     method: 'get',
+    data: {},
     params: data,
     requestType: 'form',
   })
@@ -197,7 +198,7 @@ export function insertChargeTypeSubjectMapper (data) {
   return request2({
     url: api + '/chargeTypeSubjectMapper/insert',
     method: 'post',
-    params: data,
+    data,
   })
 }
 
@@ -219,3 +220,44 @@ export function delChargeTypeSubjectMapper (data) {
     params: rest,
   })
 }
+
+// 收费方式添加
+export function musicGroupOrganizationCourseSettingsAdd (data) {
+  return request2({
+    url: api + '/musicGroupOrganizationCourseSettings/add',
+    method: 'post',
+    data
+  })
+}
+
+// 收费方式修改
+export function musicGroupOrganizationCourseSettingsUpdate (data) {
+  return request2({
+    url: api + '/musicGroupOrganizationCourseSettings/update',
+    method: 'post',
+    data
+  })
+}
+
+// 收费方式删除
+export function musicGroupOrganizationCourseSettingsDel (data) {
+  return request2({
+    url: api + '/musicGroupOrganizationCourseSettings/delSetting',
+    method: 'post',
+    data: {},
+    params: data,
+    requestType: 'form',
+  })
+}
+
+// 收费方式列表
+export function musicGroupOrganizationCourseSettingsQueryPage (data) {
+  return request2({
+    url: api + '/musicGroupOrganizationCourseSettings/queryPage',
+    method: 'get',
+    data: {},
+    params: data,
+    requestType: 'form',
+  })
+}
+

+ 17 - 0
src/constant/index.js

@@ -26,6 +26,23 @@ export const feeProject = {
   19: '退费',
 }
 
+export const courseType = {
+  SINGLE: '单技课',
+  MIX: '合奏课',
+  HIGH: '基础训练课',
+  COMPREHENSIVE: '综合课',
+  ENLIGHTENMENT: '启蒙课',
+  TRAINING_SINGLE: '集训单技课',
+  TRAINING_MIX: '集训合奏课',
+  HIGH_ONLINE: '网络基础训练课',
+  MUSIC_NETWORK: '乐团网管课',
+}
+
+export const boolOptions = {
+  false: '否',
+  true: '是',
+}
+
 export const saleType = {
   INSTRUMENT: '乐器销售',
   ACCESSORIES: '配件销售',

+ 1 - 1
src/layout/components/AppMain.vue

@@ -3,7 +3,7 @@
     <!--   -->
     <transition name="fade-transform"
                 mode="out-in">
-      <keep-alive>
+      <keep-alive exclude="modal-chargesForm">
         <router-view :key="key" />
       </keep-alive>
     </transition>

+ 14 - 0
src/utils/index.js

@@ -135,3 +135,17 @@ export function formatDuring (mss) {
   return hours + ":" + minutes + ":" + seconds;
 
 }
+
+export const objectToOptions = data => {
+  const options = []
+  for (const key in data) {
+    if (data.hasOwnProperty(key)) {
+      const item = data[key]
+      options.push({
+        label: item,
+        value: key
+      })
+    }
+  }
+  return options
+}

+ 2 - 3
src/utils/request2.js

@@ -96,13 +96,12 @@ service.interceptors.request.use(
       // ['X-Token'] is a custom headers key
       // please modify it according to the actual situation
       config.headers['Authorization'] = getToken()
-      console.log(config)
       if (config.requestType === 'form') {
-        config.headers['content-type'] = "application/x-www-form-urlencoded"
+        config.headers['Content-Type'] = 'application/x-www-form-urlencoded'
       }
     }
     config.params = cleanDeep(config.params)
-    //  params: cleanDeep(options.params),
+    config.data = cleanDeep(config.data)
     return config
   },
   error => {

+ 56 - 23
src/views/categroyManager/specialSetup/chargesList.vue

@@ -7,17 +7,35 @@
       <div class="tableWrap">
         <el-table :data="dataList"
                   :header-cell-style="{background:'#EDEEF0',color:'#444'}">
-          <el-table-column prop="organName"
-                    label="乐团模式">
-          </el-table-column>
-          <el-table-column prop="收费方式名称"
+          <el-table-column prop="organId"
                            label="所属分部">
+            <template slot-scope="scope">
+              {{ branchById[scope.row.organId] }}
+            </template>
           </el-table-column>
-          <el-table-column prop="chargeTypeName"
+          <el-table-column prop="chargeTypeId"
+                    label="乐团模式">
+            <template slot-scope="scope">
+              {{ typesById[scope.row.chargeTypeId] }}
+            </template>
+          </el-table-column>
+          <el-table-column prop="name"
                            label="收费方式名称">
           </el-table-column>
-          <el-table-column prop="courseFee"
-                           label="课程费用(元)">
+          <el-table-column prop="totalCurrentPrice"
+                           label="现价(元)">
+            <template slot-scope="scope">
+              {{ scope.row.totalCurrentPrice | moneyFormat }}
+            </template>
+          </el-table-column>
+          <el-table-column prop="totalOriginalPrice"
+                           label="原价(元)">
+            <template slot-scope="scope">
+              {{ scope.row.totalOriginalPrice | moneyFormat }}
+            </template>
+          </el-table-column>
+          <el-table-column prop="updateTime"
+                           label="修改时间">
           </el-table-column>
           <el-table-column align='center'
                            label="操作">
@@ -40,16 +58,23 @@
 
       <el-dialog :title="formTitle[formActionTitle]"
                  :visible.sync="chargeStatus"
-                 @close="onFormClose('ruleForm')"
+                 @close="closeModal"
+                 destroy-on-close
                  width="850px">
-        <chargesForm/>
+        <chargesForm
+          :typesList="typesList"
+          :branchList.sync="branchList"
+          :rowDetail="rowDetail"
+          @close="closeModal"
+          @submited="getList"
+        />
       </el-dialog>
     </div>
   </div>
 </template>
 <script>
 import pagination from '@/components/Pagination/index'
-import { chargeTypeList, chargeTypeOrganizationFeeAdd, chargeTypeOrganizationFeeDelete, chargeTypeOrganizationFeeUpdate, chargeTypeOrganizationFee, branchQueryPage } from '@/api/specialSetting'
+import { chargeTypeList, chargeTypeOrganizationFeeAdd, musicGroupOrganizationCourseSettingsDel, chargeTypeOrganizationFeeUpdate, chargeTypeOrganizationFee, branchQueryPage, musicGroupOrganizationCourseSettingsQueryPage } from '@/api/specialSetting'
 import chargesForm from './modals/chargesForm'
 export default {
   components: {
@@ -60,9 +85,12 @@ export default {
   data () {
     return {
       id: null,
+      rowDetail: null,
       dataList: [],
       typesList: [], // 分部列表
       branchList: [], // 分部列表
+      typesById: {},
+      branchById: {},
       formActionTitle: 'create',
       formTitle: {
         create: '添加乐团收费标准',
@@ -88,7 +116,7 @@ export default {
       }
     }
   },
-  mounted () {
+  async mounted () {
     this.getList()
 
     // 收费类型
@@ -97,12 +125,15 @@ export default {
       page: 1
     }).then(res => {
       if (res.code == 200) {
+        const typesById = {}
         res.data.rows.forEach(item => {
+          typesById[item.id] = item.name
           this.typesList.push({
             label: item.name,
             value: item.id
           })
         })
+        this.typesById = typesById
       }
     })
 
@@ -112,12 +143,15 @@ export default {
       page: 1
     }).then(res => {
       if (res.code == 200) {
-        res.data.rows.forEach(item => {
-          this.branchList.push({
+        const branchById = {}
+        this.branchList = res.data.rows.map(item => {
+          branchById[item.id] = item.name
+          return ({
             label: item.name,
             value: item.id
           })
         })
+        this.branchById = branchById
       }
     })
   },
@@ -152,17 +186,13 @@ export default {
       }
     },
     onChargeOperation (type, row) {
-      this.chargeStatus = true
       this.formActionTitle = type
-
       if (type == 'update') {
-        this.form = {
-          chargeTypeId: row.chargeTypeId,
-          courseFee: row.courseFee,
-          organId: row.organId,
-          id: row.id
-        }
+        this.rowDetail = { ...row }
+      } else {
+        this.rowDetail = null
       }
+      this.chargeStatus = true
     },
     onChargeDelete (row) { // 删除
       this.$confirm('您确定删除该收费标准?', '提示', {
@@ -170,14 +200,14 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        chargeTypeOrganizationFeeDelete({ id: row.id }).then(res => {
+        musicGroupOrganizationCourseSettingsDel({ id: row.id }).then(res => {
           this.messageTips('删除', res)
         })
       }).catch(() => { })
 
     },
     getList () {
-      chargeTypeOrganizationFee({
+      musicGroupOrganizationCourseSettingsQueryPage({
         rows: this.pageInfo.limit,
         page: this.pageInfo.page
       }).then(res => {
@@ -194,6 +224,9 @@ export default {
       }
       this.$refs[formName].resetFields()
     },
+    closeModal() {
+      this.chargeStatus = false
+    }
   }
 }
 </script>

+ 48 - 23
src/views/categroyManager/specialSetup/discountManage.vue

@@ -9,7 +9,7 @@
         <el-table :data='tableList'
                   :header-cell-style="{background:'#EDEEF0',color:'#444'}">
           <el-table-column align='center'
-                           prop="name"
+                           prop="chargeTypeId"
                            label="收费类型">
           </el-table-column>
           <el-table-column align='center'
@@ -45,11 +45,18 @@
                :rules="rules"
                ref="ruleForm">
         <el-form-item label="收费类型"
-                      prop="name"
+                      prop="chargeTypeId"
                       :label-width="formLabelWidth">
-          <el-input v-model.trim="form.name"
-                    placeholder="请输入收费类型"
-                    autocomplete="off"></el-input>
+          <el-select v-model.trim="form.chargeTypeId"
+                     filterable
+                     placeholder="请选择收费类型"
+                     clearable>
+            <el-option v-for="item in typesList"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value">
+            </el-option>
+          </el-select>
         </el-form-item>
         <el-form-item label="声部选择"
                       v-if="form.classGroupType != 'MIX'"
@@ -70,7 +77,7 @@
             </el-option-group>
           </el-select>
         </el-form-item>
-        <el-form-item label="折扣"
+        <el-form-item label="折扣(%)"
                       prop="discount"
                       :label-width="formLabelWidth">
           <el-input-number v-model.trim="form.discount"
@@ -95,13 +102,14 @@
 </template>
 <script>
 import pagination from '@/components/Pagination/index'
-import { chargeTypeList, subjectListTree, insertChargeTypeSubjectMapperm, updateChargeTypeSubjectMapper, delChargeTypeSubjectMapper, chargeTypeSubjectMapper } from '@/api/specialSetting'
+import { chargeTypeList, subjectListTree, insertChargeTypeSubjectMapper, updateChargeTypeSubjectMapper, delChargeTypeSubjectMapper, chargeTypeSubjectMapper } from '@/api/specialSetting'
 export default {
   name: 'typesManager',
   components: { pagination },
   data () {
     return {
       tableList: [],
+      typesList: [],
       subjectList: [], // 声部列表
       formActionTitle: 'create',
       formTitle: {
@@ -116,7 +124,7 @@ export default {
         discount: null,
       },
       rules: {
-        name: [{ required: true, message: '请输入类型名称', trigger: 'blur' }],
+        chargeTypeId: [{ required: true, message: '请选择收费类型', trigger: 'blur' }],
         subjectId: [{ required: true, message: '请选择声部组合', trigger: 'change' }],
         discount: [{ required: true, message: '请输入折扣', trigger: 'blur' }],
       },
@@ -131,6 +139,7 @@ export default {
   },
   mounted () {
     this.getList()
+    this.getChargeTypeList()
     this.getSubjectTree()
   },
   methods: {
@@ -141,7 +150,7 @@ export default {
             if (this.form.id) { // 判断有没有Id,如果有则删除
               delete this.form.id
             }
-            insertChargeTypeSubjectMapperm(this.form).then(res => {
+            insertChargeTypeSubjectMapper(this.form).then(res => {
               this.messageTips('添加', res)
             })
           } else if (this.formActionTitle == 'update') {
@@ -168,26 +177,42 @@ export default {
         this.messageTips('删除', res)
       })
     },
+    getChargeTypeList() {
+      chargeTypeList({
+        rows: 9999,
+        page: 1
+      }).then(res => {
+        if (res.code == 200) {
+          res.data.rows.forEach(item => {
+            this.typesList.push({
+              label: item.name,
+              value: item.id
+            })
+          })
+        }
+      })
+    },
     getList () {
       chargeTypeSubjectMapper({
         rows: this.pageInfo.limit,
         page: this.pageInfo.page
       }).then(res => {
         let result = res.data
-        if (res.code == 200) {
-          result.rows.forEach(row => {
-            let subjectname = [],
-              subjectIds = []
-            row.subjects.forEach(item => {
-              subjectname.push(item.name)
-              subjectIds.push(item.id)
-            })
-            row.subjectName = subjectname
-            row.subjectIds = subjectIds
-          })
-          this.tableList = result.rows
-          this.pageInfo.total = result.total
-        }
+        this.tableList = result.rows
+        // if (res.code == 200) {
+        //   result.data.rows.forEach(row => {
+        //     let subjectname = [],
+        //       subjectIds = []
+        //     row.subjects.forEach(item => {
+        //       subjectname.push(item.name)
+        //       subjectIds.push(item.id)
+        //     })
+        //     row.subjectName = subjectname
+        //     row.subjectIds = subjectIds
+        //   })
+        //   this.tableList = result.rows
+        //   this.pageInfo.total = result.total
+        // }
       })
     },
     openTypes (type, row) {

+ 191 - 86
src/views/categroyManager/specialSetup/modals/chargesForm.vue

@@ -1,13 +1,15 @@
 <template>
   <div>
     <el-form :model="form"
-              :rules="rules"
-              ref="ruleForm">
+              label-suffix=": "
+              ref="form">
       <el-form-item label="所属分部"
                     prop="organId"
+                    :rules="[{required: true, message: '请选择所属分部', trigger: 'change'}]"
                     :label-width="formLabelWidth">
         <el-select v-model.trim="form.organId"
                     clearable
+                    placeholder="请选择所属分部"
                     filterable>
           <el-option v-for="(item, index) in branchList"
                       :key="index"
@@ -16,11 +18,13 @@
           </el-option>
         </el-select>
       </el-form-item>
-      <el-form-item label="收费类型"
+      <el-form-item label="乐团模式"
                     prop="chargeTypeId"
+                    :rules="[{required: true, message: '请选择乐团模式', trigger: 'change'}]"
                     :label-width="formLabelWidth">
         <el-select v-model.trim="form.chargeTypeId"
                     clearable
+                    placeholder="请选择乐团模式"
                     filterable>
           <el-option v-for="(item, index) in typesList"
                       :key="index"
@@ -29,84 +33,104 @@
           </el-option>
         </el-select>
       </el-form-item>
+      <el-form-item label="收费方式名称"
+                    prop="name"
+                    :rules="[{required: true, message: '请输入收费方式名称', trigger: 'blur'}]"
+                    :label-width="formLabelWidth">
+        <el-input v-model.trim="form.name"
+                  placeholder="请输入收费方式名称"
+                  clearable>
+        </el-input>
+      </el-form-item>
       <div class="class-items">
         <div class="items">
           <div class="items-header">
             <span class="name">课程类型</span>
-            <span class="name">是否免费</span>
+            <span class="name">是否可选</span>
             <span class="name">课程总时长(分钟)</span>
-            <span class="name">每分钟费用(元)</span>
-            <span class="name">课程费用(元)</span>
+            <span class="name">现价(元)</span>
+            <span class="name">原价(元)</span>
             <span class="ctrl"></span>
           </div>
-          <div class="item" v-for="(item, index) in items" :key="index">
-            <el-form-item prop="organId">
-              <el-select v-model.trim="item.type"
+          <div class="item" v-for="(item, index) in form.details" :key="index">
+            <el-form-item
+              :prop="`details.${index}.courseType`"
+              :rules="[{required: true, message: '请选择课程类型', trigger: 'change'}]"
+            >
+              <el-select v-model.trim="item.courseType"
                           size="mini"
                           clearable
                           filterable>
-                <el-option label="1"
-                            value="1">
-                </el-option>
-                <el-option label="2"
-                            value="2">
+                <el-option  v-for="item in courseTypeOptions"
+                            :key="item.value"
+                            :label="item.label"
+                            :disabled="isOptionDisabled(item.value)"
+                            :value="item.value">
                 </el-option>
               </el-select>
             </el-form-item>
-            <el-form-item prop="organId">
-              <el-select v-model.trim="item.free"
+            <el-form-item
+              :prop="`details.${index}.isStudentOptional`"
+              :rules="[{required: true, message: '请选择是否可选', trigger: 'change'}]"
+            >
+              <el-select v-model.trim="item.isStudentOptional"
                           size="mini"
                           clearable
                           filterable>
-                <el-option label="1"
-                            value="1">
-                </el-option>
-                <el-option label="2"
-                            value="2">
+                <el-option  v-for="item in boolOptions"
+                            :key="item.value"
+                            :label="item.label"
+                            :value="item.value">
                 </el-option>
               </el-select>
             </el-form-item>
-            <el-form-item prop="organId">
-              <el-select v-model.trim="item.time"
-                          size="mini"
-                          clearable
-                          filterable>
-                <el-option label="1"
-                            value="1">
-                </el-option>
-                <el-option label="2"
-                            value="2">
-                </el-option>
-              </el-select>
+            <el-form-item
+              :prop="`details.${index}.courseTotalMinuties`"
+              :rules="[{required: true, message: '请输入课程总时长', trigger: 'blur'}]"
+            >
+              <el-input-number
+                size="mini"
+                style="width: 90%!important;"
+                class="number-input"
+                v-model="item.courseTotalMinuties"
+                :controls="false"
+                :precision="0"
+                :min="1"
+                placeholder="课程总时长"
+              />
             </el-form-item>
-            <el-form-item prop="organId">
-              <el-select v-model.trim="item.fee"
-                          size="mini"
-                          clearable
-                          filterable>
-                <el-option label="1"
-                            value="1">
-                </el-option>
-                <el-option label="2"
-                            value="2">
-                </el-option>
-              </el-select>
+            <el-form-item
+              :prop="`details.${index}.courseOriginalPrice`"
+              :rules="[{required: true, message: '请输入课程原价', trigger: 'blur'}]"
+            >
+              <el-input-number
+                size="mini"
+                style="width: 90%!important;"
+                class="number-input"
+                v-model="item.courseOriginalPrice"
+                :controls="false"
+                :precision="0"
+                :min="1"
+                placeholder="课程原价"
+              />
             </el-form-item>
-            <el-form-item prop="organId">
-              <el-select v-model.trim="item.allfee"
-                          size="mini"
-                          clearable
-                          filterable>
-                <el-option label="1"
-                            value="1">
-                </el-option>
-                <el-option label="2"
-                            value="2">
-                </el-option>
-              </el-select>
+            <el-form-item
+              :prop="`details.${index}.courseCurrentPrice`"
+              :rules="[{required: true, message: '请输入课程现价', trigger: 'blur'}]"
+            >
+              <el-input-number
+                size="mini"
+                style="width: 90%!important;"
+                class="number-input"
+                v-model="item.courseCurrentPrice"
+                :controls="false"
+                :precision="0"
+                :min="1"
+                placeholder="课程现价"
+              />
             </el-form-item>
             <span class="ctrl">
-              <i @click="removeItem(index)" v-if="index !== 0" class="el-icon-circle-close" />
+              <i @click="removeItem(index)" v-if="form.details.length > 1" class="el-icon-circle-close" />
             </span>
           </div>
         </div>
@@ -118,56 +142,140 @@
           @click="addItem"
         >新增课程类型</el-button>
       </div>
-      <el-form-item label="课程费用"
-                    prop="courseFee"
-                    :label-width="formLabelWidth">
-        <el-input type="number"
-                  @mousewheel.native.prevent
-                  v-model.trim="form.courseFee"
-                  autocomplete="off"></el-input>
-      </el-form-item>
+      <el-row>
+        <el-col :span="6">
+          <el-form-item label="原价"
+                        prop="totalOriginalPrice"
+                        label-width="50px">
+                        {{ totalOriginalPrice | moneyFormat}}
+          </el-form-item>
+        </el-col>
+        <el-col :span="6">
+          <el-form-item label="现价"
+                        prop="totalCurrentPrice"
+                        label-width="50px">
+                        {{ totalCurrentPrice | moneyFormat}}
+          </el-form-item>
+        </el-col>
+      </el-row>
     </el-form>
     <span slot="footer"
           class="dialog-footer">
-      <el-button @click="chargeStatus = false">取 消</el-button>
-      <el-button @click="onTypesSubmit('ruleForm')"
+      <el-button @click="$listeners.close">取 消</el-button>
+      <el-button @click="submit"
                   type="primary">确 定</el-button>
     </span>
   </div>
 </template>
 <script>
 const initItem = {
-  type: '',
-  free: '',
-  time: '',
-  fee: '',
-  allfee: '',
+  courseType: '',
+  isStudentOptional: '',
+  courseTotalMinuties: '',
+  courseOriginalPrice: '',
+  courseCurrentPrice: '',
 }
+import { musicGroupOrganizationCourseSettingsAdd, musicGroupOrganizationCourseSettingsUpdate } from '@/api/specialSetting'
+import { classTimeList } from '@/utils/searchArray'
+import { courseType, boolOptions } from '@/constant'
+import { objectToOptions }  from '@/utils'
+import numeral from 'numeral'
+
+const plusNum = (items = [], key) => {
+  let money = 0
+  const _items = items.filter(item => item.isStudentOptional < 1)
+  for (const item of _items) {
+    money += parseFloat(item[key] || 0).toFixed(2) || 0
+  }
+  return money
+}
+
+const initForm = {
+  organId: '',
+  classTimeList: '',
+  chargeTypeId: '',
+  name: '',
+  details: [{}],
+}
+
 export default {
+  name: 'modal-chargesForm',
+  props: ['branchList', 'typesList', 'rowDetail'],
   data() {
     return {
-      form: {},
-      items: [],
-      formLabelWidth: '100px',
+      form: {...initForm},
+      formLabelWidth: '120px',
+      courseTypeOptions: objectToOptions(courseType),
+      boolOptions: objectToOptions(boolOptions),
+    }
+  },
+  computed: {
+    totalOriginalPrice() {
+      return plusNum(this.form.details, 'courseOriginalPrice')
+    },
+    totalCurrentPrice() {
+      return plusNum(this.form.details, 'courseCurrentPrice')
     }
   },
   watch: {
-    items() {
-      console.log(this.items)
+    rowDetail() {
+      console.log({...this.rowDetail})
+      this.updateForm()
     }
   },
   mounted() {
-    this.items.push({})
+    this.updateForm()
   },
   methods: {
+    updateForm() {
+      if (this.rowDetail) {
+        const { organId, classTimeList, chargeTypeId, name, details } = this.rowDetail
+        this.form = {
+          organId,
+          classTimeList,
+          chargeTypeId,
+          name,
+          details: details.map(item => ({
+            ...item,
+            isStudentOptional: String(item.isStudentOptional)
+          }))
+        }
+      } else {
+        this.form = {...initForm}
+      }
+    },
+    isOptionDisabled(key) {
+      const selected = this.form.details.map(item => item.courseType)
+      return selected.includes(key)
+    },
     addItem() {
-      const _items = [...this.items, {}]
-      this.items = _items
+      const _items = [...this.form.details, {}]
+      this.form.details = _items
     },
     removeItem(index) {
-      const _items = [...this.items]
+      const _items = [...this.form.details]
       _items[index] = null
-      this.items = _items.filter(item => !!item)
+      this.form.details = _items.filter(item => !!item)
+    },
+    submit() {
+      this.$refs.form.validate(async (valid) => {
+        if (valid) {
+          try {
+            if (this.rowDetail) {
+              const res = await musicGroupOrganizationCourseSettingsUpdate({
+                id: this.rowDetail.id,
+                ...this.form
+              })
+              this.$message.success('更新成功')
+            } else {
+              const res = await musicGroupOrganizationCourseSettingsAdd(this.form)
+              this.$message.success('提交成功')
+            }
+            this.$listeners.close()
+            this.$listeners.submited()
+          } catch (error) {}
+        }
+      })
     }
   },
 }
@@ -204,9 +312,6 @@ export default {
     width: 100%;
     margin-bottom: 20px;
   }
-  .class-items{
-    padding-left: 30px;
-  }
   .ctrl{
     display: flex;
     align-items: center;

+ 2 - 2
vue.config.js

@@ -20,8 +20,8 @@ const name = defaultSettings.title || '管乐迷后台管理系统' // page titl
 // let target = 'http://dyme.utools.club' //test环境
 // let target = 'http://192.168.3.139:8000' // 箭河
 // let target = 'http://192.168.3.248:8000' //邹璇
-let target = 'http://192.168.3.204:8000' //勇哥
-// let target = 'http://dev.dayaedu.com' // 测试服
+// let target = 'http://192.168.3.204:8000' //勇哥
+let target = 'http://dev.dayaedu.com' // 测试服
 // let target = 'http://192.168.3.196' // 乔
 // All configuration item explanations can be find in https://cli.vuejs.org/config/
 module.exports = {