From 60b9c62a3165f304a933cbac304ac3d43a24f722 Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期四, 17 四月 2025 09:25:09 +0800
Subject: [PATCH] fix: 优化

---
 packages/core/src/lifeRecharge.ts |   20 ++++++++++++++++++--
 1 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/packages/core/src/lifeRecharge.ts b/packages/core/src/lifeRecharge.ts
index 8c1cb2c..a2e318a 100644
--- a/packages/core/src/lifeRecharge.ts
+++ b/packages/core/src/lifeRecharge.ts
@@ -2,31 +2,42 @@
   BlLifeRechargeServices,
   PhoneMesssageCodeLoginInput,
   RequestConfig,
+  ChannelOutput,
 } from './lifeRechargeServices';
 import { BlLifeRechargeOptions } from './types';
 import { LifeRechargeConstants } from './lifeRechargeConstants';
 import { BlLifeRechargeAccountModel } from './lifeRechargeAccountModel';
+import { LifeRechargeListener } from './listener';
 
 export class BlLifeRecharge<TResponse = any, TRequestOptions = any> {
   services: BlLifeRechargeServices<TResponse, TRequestOptions>;
   accountModel: BlLifeRechargeAccountModel;
+  listener: LifeRechargeListener;
 
   static constants = LifeRechargeConstants;
   constants = LifeRechargeConstants;
 
   constructor(options: BlLifeRechargeOptions<TResponse, TRequestOptions>) {
+    this.listener = new LifeRechargeListener();
     this.services = new BlLifeRechargeServices(this, options);
-    this.accountModel = new BlLifeRechargeAccountModel({
+    this.accountModel = new BlLifeRechargeAccountModel(this, {
       userId: options.userId,
       phoneNumber: options.phoneNumber,
       channlesNum: options.channlesNum,
     });
   }
 
+  init() {
+    if (this.accountModel.userId) {
+      this.accountModel.getUserInfo();
+    }
+  }
+
   async login(body: PhoneMesssageCodeLoginInput, options?: RequestConfig) {
     try {
       let res = await this.services.lifePayPhoneMesssageCodeLogin(body, options);
       this.accountModel.setUserId(res.userId);
+      this.accountModel.getUserInfo();
       this.accountModel.setPhoneNumber(body.phoneNumber);
       return res;
     } catch (error) {
@@ -37,6 +48,8 @@
   loginout() {
     this.accountModel.setUserId('');
     this.accountModel.setPhoneNumber('');
+    this.accountModel.setUserChannles([]);
+    this.accountModel.isBackClientUser = false;
   }
 
   isLogin() {
@@ -44,7 +57,10 @@
   }
 
   getRechargeParValue(amount: number | string, rate: number) {
-    return ((Number(amount) * rate) / 100).toFixed(2);
+    if (rate > 0) {
+      return ((Number(amount) * rate) / 100).toFixed(2);
+    }
+    return Number(amount).toFixed(2);
   }
 
   MaxParValue = 300;

--
Gitblit v1.9.1