lex-xin 3 năm trước cách đây
mục cha
commit
3cf57625fd

+ 2 - 1
src/views/organManager/components/openService.vue

@@ -133,7 +133,8 @@ export default {
   },
   computed: {
     isDisabled() {
-      return this.type == 'setting' || this.payState == 1  ? true : false
+      //  || this.payState == 1
+      return this.type == 'setting'  ? true : false
     },
     unitSuffix() {
       // 后辍默认为年

+ 1 - 1
src/views/resetTeaming/components/giveMemberList.vue

@@ -33,7 +33,7 @@
     <!-- <div class="newBand"
          @click="resetPays"
          v-permission="'musicGroupStudentFee/batchUpdateCourseFee'">修改缴费金额</div> -->
-    <el-button @click="addMember" type="primary" style="margin-bottom: 20px">激活会员</el-button>
+    <el-button @click="addMember" v-if="$helpers.permission('cloudTeacherOrder/pay')" type="primary" style="margin-bottom: 20px">激活会员</el-button>
 
     <div class="tableWrap">
       <el-table

+ 37 - 0
src/views/resetTeaming/components/payInfoDetail.vue

@@ -17,6 +17,7 @@
               <p>基础信息设置</p>
             </div>
             <el-form-item
+              prop="paymentDate"
               :rules="[
                 { required: true, message: '请选择缴费时间', trigger: 'blur' },
               ]"
@@ -223,6 +224,16 @@
         </div>
       </div>
     </div>
+    <el-dialog
+      title="报名声部预览"
+      :visible.sync="dialogSubjectVisible"
+      width="400px"
+      class="subjectPreview"
+    >
+      <subject-preview
+        :preViewData="preViewData"
+      ></subject-preview>
+    </el-dialog>
   </div>
 </template>
 <script>
@@ -232,6 +243,7 @@ import payLeBao from "../modals/payLeBao";
 import payTeamActive from "../modals/payTeamActive";
 import numeral from "numeral";
 import dayjs from "dayjs";
+import subjectPreview from "@/views/resetTeaming/modals/subject-preview";
 import {
   chargeTypeList,
   musicGroupOrganizationCourseSettingsQueryPage,
@@ -296,6 +308,8 @@ export default {
       activeList: [{}],
       submitList: [],
       organizationCourseUnitPriceSettingsByType: null,
+      dialogSubjectVisible: false, // 预览
+      preViewData: {}
     };
   },
   mounted() {
@@ -569,6 +583,9 @@ export default {
     submitForm() {
       this.$refs.form.validate(async (isok) => {
         if (isok) {
+          // const preViewData = this.formatPreviewData()
+          // this.preViewData = preViewData
+          // this.dialogSubjectVisible = true
           let obj = this.fommatDate();
           if (this.$route.query.calenderId) {
             obj.calenderId = this.$route.query.calenderId;
@@ -591,6 +608,26 @@ export default {
         }
       });
     },
+
+    formatPreviewData() {
+      // 格式化预览数据
+      const form = this.form
+      // 重置小班课数据
+      let activeList = form.activeList?.length > 0 ? form.activeList : []
+      if(activeList.length > 0) {
+        activeList.forEach(active => {
+          active.categoryName = active.vipGroupCategoryNames
+        })
+      }
+      return {
+        musicGroup: this.musicGroup,
+        activity: [...activeList], // 小班课
+        course: form.eclass?.length > 0 ? form.eclass : [], // 课程
+        member: form.memberList?.length > 0 ? { ...form.memberList[0] } : null, // 团练宝
+        memberPrivilegesItemList: [], // 会员基本内容
+        repair: form.leBaoList?.length > 0 ? { ...form.leBaoList[0] } : null, // 乐保
+      }
+    },
     fommatDate() {
       return {
         payUserType: this.$route.query.payUserType,

+ 1 - 1
src/views/resetTeaming/index.vue

@@ -159,7 +159,7 @@
         </el-tab-pane>
         <el-tab-pane
           label="待激活团练宝"
-          v-if="permission('/teamStudentList')"
+          v-if="permission('/giveMemberList')"
           name="13"
           :disabled="!teamid"
         >

+ 1 - 1
src/views/resetTeaming/modals/giveMemberModel.vue

@@ -101,7 +101,7 @@ export default {
             // // 二维码页面, 唤起支付页面
             const { orderNo, sign, amount, orderBody, orderSubject } = res.data.payMap
             this.orderNo = orderNo
-            this.codeUrl = vaildStudentUrl() + '/#/payCenter?orderNo=' + orderNo + '&sign=' + sign + '&amount=' + amount + '&payType=' + payForm.payType + '&orderBody=' + orderBody + '&orderSubject=' + orderSubject + '&platform=web'
+            this.codeUrl = vaildStudentUrl() + '/#/payCenter?orderNo=' + orderNo + '&sign=' + sign + '&amount=' + amount + '&payType=' + payForm.payType + '&orderBody=' + orderBody + '&orderSubject=' + orderSubject + '&platform=tenant'
             console.log(this.codeUrl, 'codeUrl')
             this.payMentVisible = true
           } catch(e) {}

+ 1 - 2
src/views/resetTeaming/modals/subject-preview.vue

@@ -109,7 +109,7 @@ import accessories from './accessories'
 import activity from './activity'
 import member from './member'
 export default {
-  props: ["subjectId", "calenderId"],
+  props: ["subjectId", "calenderId", "preViewData"],
   components: { Tips, courseModel, InstrumentModel, accessories, activity, member },
   data() {
     const query = this.$route.query;
@@ -190,7 +190,6 @@ export default {
           this.chargeTypeList = result.rows || [];
         }
       });
-
       await getSubjectGoodsAndInfoPreview(params).then((res) => {
         let result = res;
         if (result.code == 200) {

+ 2 - 1
src/views/teamDetail/components/studentList.vue

@@ -1971,7 +1971,8 @@ export default {
       this.multipleSelection = val;
     },
     checkboxSelect(row) {
-      return row.studentStatus == "NORMAL";
+      // 没有会员时间,未购买会员的
+      return row.studentStatus == "NORMAL" && !row.membershipEndTime && !row.hasNoStartCloudTeacher;
     },
     gotoStudent(search) {
       // this.$router.push({

+ 5 - 0
src/views/tenantSetting/api.js

@@ -11,6 +11,11 @@ export const cloudTeacherOrderQueryActive = (data) => request2({
   method: 'post',
   data,
 })
+export const queryActiveRecord = (data) => request2({
+  url: '/api-web/cloudTeacherOrder/queryActiveRecord',
+  method: 'post',
+  data,
+})
 
 // 扣费记录
 export const tenantCloudCourseRecord = (data) => request2({

+ 1 - 1
src/views/tenantSetting/chargingRecord.vue

@@ -150,7 +150,7 @@
             {{ scope.row.deductState | chargingStatus }}
           </template>
         </el-table-column>
-        <el-table-column align="center" label="冻结金额(元)">
+        <el-table-column align="center" label="扣费金额(元)">
           <template slot-scope="scope">
             {{ scope.row.amount | moneyFormat }}
           </template>

+ 8 - 8
src/views/tenantSetting/groupRecordManager.vue

@@ -55,7 +55,7 @@
         </el-table-column>
         <el-table-column align="center" label="订单号" prop="orderNo">
         </el-table-column>
-        <el-table-column align="center" label="订单时间" prop="createdTime">
+        <el-table-column align="center" label="订单时间" prop="orderTime">
         </el-table-column>
         <el-table-column align="center" label="学员编号" prop="studentId">
         </el-table-column>
@@ -63,14 +63,14 @@
         </el-table-column>
         <el-table-column align="center" label="手机号码" prop="phone">
         </el-table-column>
-        <el-table-column align="center" label="交易类型">
+        <!-- <el-table-column align="center" label="交易类型">
           <template slot-scope="scope">
-            {{ scope.row.orderType | tenantStatus }}
+            {{ scope.row.type | tenantStatus }}
           </template>
-        </el-table-column>
+        </el-table-column> -->
         <el-table-column align="center" label="团练宝类型">
           <template slot-scope="scope">
-            {{ scope.row.expectAmount | moneyFormat }}
+            {{ scope.row.type | memberEnumType }}
           </template>
         </el-table-column>
         <!-- <el-table-column align="center" label="网络教室剩余时长" prop="productName">
@@ -101,7 +101,7 @@
 </template>
 <script>
 import pagination from "@/components/Pagination/index";
-import { cloudTeacherOrderQueryActive } from "./api";
+import { queryActiveRecord } from "./api";
 import { tenantStatus, dealStatus } from "@/utils/searchArray";
 import { getTimes } from "@/utils";
 const initSearch = {
@@ -133,11 +133,11 @@ export default {
     async getList() {
       try {
         let { createTimer, ...reset } = this.searchForm;
-        const res = await cloudTeacherOrderQueryActive({
+        const res = await queryActiveRecord({
           ...reset,
           ...getTimes(createTimer, ["startDate", "endDate"], "YYYY-MM-DD"),
           page: this.pageInfo.page,
-          rows: this.pageInfo.limit,
+          rows: this.pageInfo.limit
         });
         console.log(res)
         this.pageInfo.total = res.data.total;