瀏覽代碼

乐团3.0提测第一版

mo 5 年之前
父節點
當前提交
bcead8e589

+ 11 - 2
src/api/buildTeam.js

@@ -1174,8 +1174,8 @@ export function getmusicGroupPaymentCalenderDetail (data) {
 export function openMusicGroupPaymentCalenderDetailPayment (data) {
   return request({
     url: api + '/musicGroupPaymentCalenderDetail/openPayment',
-    method: 'get',
-    params: data
+    method: 'post',
+    data: qs.stringify(data)
   })
 }
 
@@ -1189,6 +1189,15 @@ export function resetMusicGroupPaymentCalenderDetail (data) {
 }
 
 
+// 获取缴费信息
+export function getMusicGroupPaymentCalenderDetail (data) {
+  return request({
+    url: api + '/musicGroupPaymentCalender/getDetail',
+    method: 'get',
+    params: data
+  })
+}
+
 // 学员基础信息列表
 export function getMusicGroupStudentFee (data) {
   return request({

+ 8 - 5
src/views/resetTeaming/components/resetPayList.vue

@@ -3,8 +3,10 @@
   <div class="m-core">
     <div class="topWrap">
       <div class="newBand"
-           @click="newPay">新建缴费</div>
+           @click="newPay"
+           v-permission="'musicGroupPaymentCalender/add'">新建缴费</div>
       <div class="newBand"
+           v-permission="'/studentPayBase'"
            @click="setStudentPay">学员缴费设置</div>
     </div>
     <div class="tableWrap">
@@ -62,11 +64,14 @@
             <div>
               <el-button type="text"
                          v-if="scope.row.paymentStatus != 0"
-                         @click="lookDetail(scope.row)">查看</el-button>
+                         @click="lookDetail(scope.row)"
+                         v-permission="'/strudentPayInfo'">查看</el-button>
               <el-button type="text"
                          v-if="scope.row.paymentStatus == 0"
+                         v-permission="'musicGroupPaymentCalender/updateStartTime'"
                          @click="resetPay(scope.row)">修改</el-button>
               <el-button type="text"
+                         v-permission="'musicGroupPaymentCalender/del'"
                          v-if="scope.row.paymentStatus == 0"
                          @click="detelePay(scope.row)">删除</el-button>
             </div>
@@ -141,7 +146,7 @@ import axios from "axios";
 import { getToken } from "@/utils/auth";
 import pagination from "@/components/Pagination/index";
 import load from "@/utils/loading";
-import { getTeacher, getEmployeeOrgan, addMusicGroupPaymentCalender, getMusicGroupPaymentCalender, resetMusicGroupPaymentCalender, delMusicGroupPaymentCalender } from "@/api/buildTeam";
+import { addMusicGroupPaymentCalender, getMusicGroupPaymentCalender, resetMusicGroupPaymentCalender, delMusicGroupPaymentCalender } from "@/api/buildTeam";
 
 export default {
   components: { pagination },
@@ -150,9 +155,7 @@ export default {
       searchForm: {
         search: null
       },
-      teacherList: [],
       tableList: [{}],
-      organList: [],
       rules: {
         // 分页规则
         limit: 10, // 限制显示条数

+ 87 - 11
src/views/resetTeaming/components/strudentPayInfo.vue

@@ -4,27 +4,40 @@
     <el-page-header @back="goBack"
                     content="学员缴费记录">
     </el-page-header>
+    <!--    this.info = {
+            paymentStatus: res.data.calender.paymentStatus,
+            startPaymentDate: res.data.calender.startPaymentDate,
+            deadlinePaymentDate: res.data.calender.deadlinePaymentDate,
+            expectNum: res.data.calender.expectNum,
+            actualNum: res.data.calender.actualNum,
+            sumActualAmount: res.data.sumActualAmount
+          } -->
     <div class="infoMsg">
       <div class="left">
         <p class="title">状态</p>
-        <p class="status">未开始</p>
+        <p class="status"
+           style="color:#ff6a6a"
+           v-if="info.paymentStatus == 1">{{'已开启'}}</p>
+        <p class="status"
+           style="color:#5ccdb8"
+           v-if="info.paymentStatus == 2">{{'已完成'}}</p>
       </div>
       <div class="right">
         <div class="expectBox first">
           <p class="title">预计缴费日期</p>
-          <p class="status">2020-05-18~2020-05-19</p>
+          <p class="status">{{info.startPaymentDate|formatTimer}}~{{info.deadlinePaymentDate|formatTimer}}</p>
         </div>
         <div class='expectBox'>
           <p class="title">预计缴费人数</p>
-          <p class="status">188</p>
+          <p class="status">{{info.expectNum?info.expectNum:0}}</p>
         </div>
         <div class='expectBox'>
           <p class="title">实际缴费人数</p>
-          <p class="status">188</p>
+          <p class="status">{{info.actualNum?info.actualNum:0}}</p>
         </div>
         <div class='expectBox'>
           <p class="title">收款金额</p>
-          <p class="status">188</p>
+          <p class="status">{{info.sumActualAmount?info.sumActualAmount:0}}</p>
         </div>
       </div>
     </div>
@@ -72,9 +85,11 @@
       </el-form>
       <div class="wrap">
         <div class="newBand"
-             @click="resetPay">修改缴费金额</div>
+             @click="resetPay"
+             v-permission="'musicGroupPaymentCalenderDetail/updateExpectAmount'">修改缴费金额</div>
         <div class="newBand"
-             @click="startPay">开启缴费</div>
+             @click="startPay"
+             v-permission="'musicGroupPaymentCalenderDetail/openPayment'">开启缴费</div>
       </div>
 
       <div class="tableWrap">
@@ -109,6 +124,30 @@
                            prop="expectAmount"
                            label="预计缴费金额"></el-table-column>
           <el-table-column align="center"
+                           label="缴费开始日期">
+            <template slot-scope="scope">
+              <div>
+                {{scope.row.startPaymentDate | formatTimer}}
+              </div>
+            </template>
+          </el-table-column>
+          <el-table-column align="center"
+                           label="缴费截止日期">
+            <template slot-scope="scope">
+              <div>
+                {{scope.row.deadlinePaymentDate | formatTimer}}
+              </div>
+            </template>
+          </el-table-column>
+          <el-table-column align="center"
+                           label="是否开启缴费">
+            <template slot-scope="scope">
+              <div>
+                {{scope.row.open?'是':'否'}}
+              </div>
+            </template>
+          </el-table-column>
+          <el-table-column align="center"
                            label="缴费状态">
             <template slot-scope="scope">
               <div>
@@ -202,7 +241,7 @@ import axios from "axios";
 import { getToken } from "@/utils/auth";
 import pagination from "@/components/Pagination/index";
 import load from "@/utils/loading";
-import { findSound, getmusicGroupPaymentCalenderDetail, openMusicGroupPaymentCalenderDetailPayment, resetMusicGroupPaymentCalenderDetail } from "@/api/buildTeam";
+import { findSound, getmusicGroupPaymentCalenderDetail, openMusicGroupPaymentCalenderDetailPayment, resetMusicGroupPaymentCalenderDetail, getMusicGroupPaymentCalenderDetail } from "@/api/buildTeam";
 
 export default {
   components: { pagination },
@@ -238,7 +277,15 @@ export default {
       },
       activeChiose: [],
       id: null,
-      ids: null
+      ids: null,
+      info: {
+        paymentStatus: null,
+        startPaymentDate: null,
+        deadlinePaymentDate: null,
+        expectNum: null,
+        actualNum: null,
+        sumActualAmount: null
+      }
     };
   },
   //生命周期 - 创建完成(可以访问当前this实例)
@@ -261,7 +308,21 @@ export default {
   methods: {
     init () {
       this.id = this.$route.query.paymentId
-      this.getList()
+      // 获取缴费状态
+      getMusicGroupPaymentCalenderDetail({ id: this.id }).then(res => {
+        if (res.code == 200) {
+          this.info = {
+            paymentStatus: res.data.calender.paymentStatus,
+            startPaymentDate: res.data.calender.startPaymentDate,
+            deadlinePaymentDate: res.data.calender.deadlinePaymentDate,
+            expectNum: res.data.calender.expectNum,
+            actualNum: res.data.calender.actualNum,
+            sumActualAmount: res.data.sumActualAmount
+          }
+          this.getList()
+        }
+      })
+
     },
     getList () {
       this.searchForm.id = this.id;
@@ -271,6 +332,14 @@ export default {
         if (res.code == 200) {
           this.rules.total = res.data.total;
           this.tableList = res.data.rows;
+          if (this.info.paymentStatus == 1) {
+            this.tableList = this.tableList.map(item => {
+              item.startPaymentDate = this.info.startPaymentDate
+              item.deadlinePaymentDate = this.info.deadlinePaymentDate
+              item.open = 1;
+              return item;
+            })
+          }
         }
       })
     },
@@ -278,7 +347,14 @@ export default {
       this.rules.page = 1;
       this.getList()
     },
-    onReSet () { },
+    onReSet () {
+      this.searchForm = {
+        userId: null,
+        subjectId: null,
+        paymentStatus: null
+      }
+      this.search()
+    },
     startPay () {
       if (this.activeChiose.length < 1) {
         this.$message.error('请至少选择一名学生')

+ 3 - 1
src/views/resetTeaming/components/studentPayBase.vue

@@ -32,7 +32,8 @@
         </el-form-item>
       </el-form>
       <div class="newBand"
-           @click="resetPays">修改缴费金额</div>
+           @click="resetPays"
+           v-permission="'musicGroupStudentFee/batchUpdateCourseFee'">修改缴费金额</div>
       <div class="tableWrap">
         <el-table style="width: 100%"
                   :header-cell-style="{background:'#EDEEF0',color:'#444'}"
@@ -70,6 +71,7 @@
             <template slot-scope="scope">
               <div>
                 <el-button type="text"
+                           v-permission="'musicGroupStudentFee/batchUpdateCourseFee'"
                            @click="resetPay(scope.row)">修改金额</el-button>
               </div>
             </template>