Pārlūkot izejas kodu

feat: 添加押金缴纳检查

YuJing 1 mēnesi atpakaļ
vecāks
revīzija
7dfc3209dd

+ 1 - 1
commons/basic/src/main/ets/components/DiaLogComp/DiaLogComp.ets

@@ -79,7 +79,7 @@ export struct DiaLogComp {
             this.control._onBackPress(0)
           })
 
-        Text('确定')
+        Text(this.param.date ?? '确定')
           .fontSize(16)
           .fontWeight(400)
           .layoutWeight(1)

+ 6 - 0
features/feature/src/main/ets/apis/ApiUrl.ets

@@ -60,4 +60,10 @@ export class ApiUrl {
    * @method POST
    */
   static checkOrder = '/api/book/order/checkOrder';
+
+  /**
+   * @description 获取押金状态
+   * @method POST
+   */
+  static getDepositStatus = '/api/book/member/getDeposit';
 }

+ 6 - 1
features/feature/src/main/ets/apis/OrderApi.ets

@@ -1,5 +1,5 @@
 import { BookItem, YTRequest } from "basic";
-import { OrderValidationData } from "../model/OrderModelIndex";
+import { DepositData, OrderValidationData } from "../model/OrderModelIndex";
 import { PageResponse } from "../model/PageResponse";
 import { bookPackageQuery } from "../model/Query";
 import { ApiUrl } from "./ApiUrl";
@@ -38,4 +38,9 @@ export class OrderApi {
   static checkOrder(orderValidation: OrderValidationData): Promise<ESObject> {
     return YTRequest.post<ESObject>(ApiUrl.checkOrder, orderValidation)
   }
+
+  // 获取用户是否缴纳押金
+  static getUserDeposit(): Promise<DepositData> {
+    return YTRequest.post<DepositData>(ApiUrl.getDepositStatus)
+  }
 }

+ 7 - 0
features/feature/src/main/ets/model/OrderModelIndex.ets

@@ -1,3 +1,4 @@
+// 订单 校验 数据
 export interface OrderValidationData {
   /**
    * 详细地址
@@ -59,3 +60,9 @@ export interface OrderValidationData {
    */
   userName?: string;
 }
+
+
+// 押金数据结构
+export interface DepositData {
+  deposit: string;
+}

+ 34 - 9
features/feature/src/main/ets/view/viewModel/ThirdViewModel.ets

@@ -59,21 +59,46 @@ export class ThirdViewModel{
     if(this.editMode) {
       this.removeBook()
     } else {
-      if(this.selectList.length == 0) {
-        IBestToast.show('请选择需要借阅的书本')
-        return
-      }
+      this.clickLend()
+    }
+  }
 
-      let param: BookItem[] = []
-      this.bookList.forEach((item) => {
-        if(this.selectList.indexOf(item.id!) != -1) {
-          param.push(item)
+
+  // 立刻借阅
+  async clickLend() {
+    // 检查书本选中情况
+    if(this.selectList.length == 0) {
+      IBestToast.show('请选择需要借阅的书本')
+      return
+    }
+
+    // 押金缴纳检测
+    let ans = await OrderApi.getUserDeposit()
+    let deposit = Number.parseFloat(ans.deposit)
+    if (deposit < 100) {
+      yTRouter.router2CenterDialog({
+        param: { text: '借阅失败,请先缴纳押金', date: '去缴纳' }
+      }, (info) => {
+        let ans = info.result as number
+        if(ans == 1) {
+          yTRouter.router2CashPledgePage()
         }
       })
-      yTRouter.router2OrderDetailPage(param)
+
+      // todo 测试结束后需要加回来
+      // return
     }
+
+    let param: BookItem[] = []
+    this.bookList.forEach((item) => {
+      if(this.selectList.indexOf(item.id!) != -1) {
+        param.push(item)
+      }
+    })
+    yTRouter.router2OrderDetailPage(param)
   }
 
+
   // 全选按钮
   clickSelectAll() {
     if(this.bookList.length == 0) return