lex-xin 3 vuotta sitten
vanhempi
commit
6b878a55d6

+ 2 - 0
src/views/categroyManager/insideSetting/staffManager.vue

@@ -638,6 +638,7 @@ export default {
         roleIds: [],
         deptId: null, // 社保分部
         organIdLists: [],
+        positionIds: [],
         postDeptIds: [
           {
             postId: null,
@@ -997,6 +998,7 @@ export default {
           deptId: data.deptId
             ? this.formatParentId(data.deptId, this.deptList)
             : null,
+          positionIds: data.positionIds ? data.positionIds.split(',').map(i => Number(i) ) : [],
           organIdLists: data.organIdList ? data.organIdList : [],
           jobNature: data.jobNature,
           entryDate: data.entryDate,

+ 1 - 1
src/views/productService/api.js

@@ -19,7 +19,7 @@ export const queryTenantInfoSumm = (data) => request2({
 
 
 export const checkInfo = (data) => request2({
-  url: '/api-web/tenantInfo/checkInfo/' + data.id,
+  url: '/api-web/tenantInfo/checkInfo/' + data.orderNo,
   method: 'get'
 })
 

+ 84 - 0
src/views/productService/model/paymentService.vue

@@ -0,0 +1,84 @@
+<template>
+  <div class="chioseWrap">
+    <p>请在30分钟完成扫码支付</p>
+
+    <vue-qr :text="codeUrl" style="width: 250px" :margin="0"></vue-qr>
+  </div>
+</template>
+<script>
+import VueQr from 'vue-qr'
+import { checkInfo } from '../api'
+export default {
+  props: {
+    tableList: {
+      type: Array,
+      default: []
+    },
+    orderNo: {
+      type: String
+    },
+    codeUrl: {
+      type: String
+    },
+  },
+  components: { VueQr },
+  data() {
+    return {
+      payForm: {
+        payType: null,
+      },
+      selectStudentMoney: 0, // 选中学生金额
+      orderTimer: null
+    };
+  },
+  async mounted() {
+    let tableList = this.tableList || []
+    for(let i of tableList) {
+      this.selectStudentMoney += parseFloat(i.amount)
+    }
+    setTimeout(() => {
+      this.getPaymentStatus()
+    }, 3000)
+  },
+  methods: {
+    async getPaymentStatus() {
+      let orderTimer = setInterval(async () => {
+        this.orderTimer = orderTimer
+        try {
+          const res = await checkInfo({ orderNo: this.orderNo })
+          if(res.data) {
+            clearInterval(orderTimer)
+            this.$message.success('您已成功缴费')
+            this.$emit('close', true)
+          }
+        } catch(e) {
+          clearInterval(orderTimer)
+        }
+      }, 5000);
+    }
+  },
+  beforeDestroy() {
+    clearInterval(this.orderTimer)
+  }
+};
+</script>
+<style lang="less" scoped>
+.chioseWrap {
+  text-align: center;
+  font-size: 16px;
+  > p {
+    font-weight: 600;
+    padding-bottom: 15px;
+    line-height: 1.5;
+    span {
+      color: red;
+      padding: 0 3px;
+    }
+  }
+}
+.dialog-footer {
+  text-align: right;
+  display: block;
+  padding-top: 15px;
+}
+</style>

+ 11 - 11
src/views/productService/model/serviceModel.vue

@@ -64,19 +64,19 @@
       width="500px"
       append-to-body
     >
-      <payment :tableList="tableList" :orderNo="orderNo" :codeUrl="codeUrl" @close="onPaymentClose" />
+      <paymentService :tableList="tableList" :orderNo="orderNo" :codeUrl="codeUrl" @close="onPaymentClose" />
     </el-dialog>
   </div>
 </template>
 <script>
 // import { recharge } from '../api'
 import { vaildStudentUrl } from '@/utils/validate'
-import payment from '@/views/productService/model/payment'
-import { checkInfo, tenantInfoRePay } from '../api'
+import paymentService from '@/views/productService/model/paymentService'
+import { tenantInfoRePay } from '../api'
 import { getTenantId } from '@/utils/auth'
 export default {
   props: ["value", "tenantInfo"],
-  components: { payment },
+  components: { paymentService },
   data() {
     return {
       payForm: {
@@ -108,14 +108,14 @@ export default {
           try {
             console.log(this.value, 'this.value')
             const res = await tenantInfoRePay({ id: getTenantId(), val: this.value })
-            console.log(res)
+            // console.log(res)
             const payForm = this.payForm
-            // // 二维码页面, 唤起支付页面
-            // 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=tenantRecharge'
-            // console.log(this.codeUrl, 'codeUrl')
-            // this.payMentVisible = true
+            // 二维码页面, 唤起支付页面
+            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=tenant'
+            console.log(this.codeUrl, 'codeUrl')
+            this.payMentVisible = true
           } catch(e) {}
         }
       })

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

@@ -29,7 +29,7 @@
       </div>
 		</div>
 
-    </div>
+  </div>
 </template>
 
 <script>

+ 3 - 7
src/views/resetTeaming/modals/subject-preview.vue

@@ -184,12 +184,6 @@ export default {
         subjectId: this.subjectId,
         calenderId: this.calenderId,
       };
-      // await getType().then((res) => {
-      //   let result = res.data;
-      //   if (res.code == 200) {
-      //     this.chargeTypeList = result.rows || [];
-      //   }
-      // });
       await getSubjectGoodsAndInfoPreview(params).then((res) => {
         let result = res;
         if (result.code == 200) {
@@ -203,6 +197,7 @@ export default {
     __dataFormat(tempResult) {
       // console.log(this.preViewData, 'sffwef')
       // console.log(tempResult, 'tempResult')
+      const preViewData = this.preViewData ? JSON.parse(JSON.stringify(this.preViewData)) : null
       this.courseViewType = tempResult.musicGroup.courseViewType || 0;
       this.organId = tempResult.musicGroup.organId;
       this.cloudTeacherFee = tempResult.cloudTeacherFee || 0;
@@ -231,7 +226,7 @@ export default {
             tempResult.musicGroupPaymentCalender.paymentValidEndDate
           ).format("YYYY/MM/DD");
       }
-      const paymentCalender =  this.preViewData ? this.preViewData.paymentCalender : (tempResult.paymentCalender || null)
+      const paymentCalender =  preViewData ? preViewData.paymentCalender : (tempResult.paymentCalender || null)
       console.log(paymentCalender, 'paymentCalender')
       let tempInfo = paymentCalender && paymentCalender.course ? paymentCalender.course : [];
 
@@ -431,6 +426,7 @@ export default {
       }
     },
     onCheckItem(item,type) {
+      console.log(item)
       // 默认选中不可改
       if(item.optionalFlag) return
       // 判断乐保是否可选