From 333c9f575a7fe7fd445a8ae6fb44d0fe23d93ae2 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期四, 04 十二月 2025 16:53:51 +0800
Subject: [PATCH] feat: 通知

---
 apps/cMiniApp/src/subpackages/login/authorization/authorization.vue |   98 +++++++++++++++++++++++++++++++-----------------
 1 files changed, 63 insertions(+), 35 deletions(-)

diff --git a/apps/cMiniApp/src/subpackages/login/authorization/authorization.vue b/apps/cMiniApp/src/subpackages/login/authorization/authorization.vue
index aef6f2d..1ec19b9 100644
--- a/apps/cMiniApp/src/subpackages/login/authorization/authorization.vue
+++ b/apps/cMiniApp/src/subpackages/login/authorization/authorization.vue
@@ -25,7 +25,8 @@
       v-model="state.policyChecked"
       policyBtnText="鑻ユ墜鏈哄彿鏈敞鍐岋紝灏嗕负鎮ㄧ洿鎺ユ敞鍐岃处鍙凤紝娉ㄥ唽鍗充负鍚屾剰"
     />
-    <div class="other-login-channel-wrapper" v-if="!isLoginByWeb">
+    <!-- <div class="other-login-channel-wrapper" v-if="!isLoginByWeb"> -->
+    <div class="other-login-channel-wrapper" v-if="NODE_ENV === 'development'">
       <nut-divider>鍏朵粬鐧诲綍鏂瑰紡</nut-divider>
       <div class="other-login-channel-list">
         <div class="other-login-channel-list-item" @click="goLoginByForm()">
@@ -57,11 +58,13 @@
 import { CommonEventFunction, ButtonProps } from '@tarojs/components';
 import Taro from '@tarojs/taro';
 import { useLoginedJump } from '@/hooks';
-import * as accountServices from '@12333/services/api/Account';
 import IconCaptcha from '@/assets/login/icon-btn-captcha.png';
 import IconPassword from '@/assets/login/icon-btn-password.png';
 import { LoginFormTabs } from '../constants';
-import { WxMiniAppEnum } from '@12333/constants';
+import * as authServices from '@12333/services/apiV2/auth';
+import { NODE_ENV } from '@/constants';
+import { subscribeMessageTemplateIdsForC } from '@12333/constants';
+console.log('NODE_ENV: ', NODE_ENV);
 
 defineOptions({
   name: 'authorization',
@@ -90,8 +93,8 @@
     RouterPath.authorization.includes(launchOptions.path) && launchOptions.scene === 1047 && uuid
 );
 
-const wxIndentityRes = ref<API.WxMiniAppIndentityInfo>();
-const wxMiniAppUserLoginRes = ref<API.IdentityModelTokenCacheItem>();
+const wxIndentityRes = ref<API.LoginCommandCallback>();
+const wxMiniAppUserLoginRes = ref<API.LoginCommandCallback>();
 
 const isAccount = ref(false);
 
@@ -99,21 +102,21 @@
   try {
     let loginRes = await Taro.login();
     if (isLoginByWeb.value) {
-      const wxIndentity = await accountServices.getWxIndentity({
-        code: loginRes.code,
-        wxMiniApp: WxMiniAppEnum.浜哄崟鍚堜竴,
-      });
-      wxIndentityRes.value = wxIndentity;
-      if (wxIndentityRes.value.userName) {
-        isAccount.value = true;
-      }
+      // const wxIndentity = await authServices.wxmpLogin({
+      //   code: loginRes.code,
+      //   type: AppLocalConfig.userType,
+      // });
+      // wxIndentityRes.value = wxIndentity;
+      // if (wxIndentityRes.value.isBindPhoneNumber) {
+      //   isAccount.value = true;
+      // }
     } else {
-      const params: API.APIwxMiniAppUserLoginParams = {
+      const params: API.WxmpLoginCommand = {
         code: loginRes.code,
-        wxMiniApp: WxMiniAppEnum.浜哄崟鍚堜竴,
+        type: AppLocalConfig.userType,
       };
-      wxMiniAppUserLoginRes.value = await accountServices.wxMiniAppUserLogin(params);
-      if (wxMiniAppUserLoginRes.value.accessToken) {
+      wxMiniAppUserLoginRes.value = await authServices.wxmpLogin(params);
+      if (wxMiniAppUserLoginRes.value?.isBindPhoneNumber) {
         isAccount.value = true;
       }
     }
@@ -126,14 +129,14 @@
     console.log('errMsg: ', errMsg, isLoginByWeb.value);
     if (errMsg === 'getPhoneNumber:ok') {
       if (isLoginByWeb.value) {
-        let res = await userStore.wxMiniAppPhoneAuthLoginFromScan(
-          ev.detail,
-          wxIndentityRes.value,
-          uuid
-        );
-        if (res) {
-          handleLoginSuccess();
-        }
+        // let res = await userStore.wxMiniAppPhoneAuthLoginFromScan(
+        //   ev.detail,
+        //   wxIndentityRes.value,
+        //   uuid
+        // );
+        // if (res) {
+        //   handleLoginSuccess();
+        // }
       } else {
         let res = await userStore.getTokenByPhone(ev.detail, wxMiniAppUserLoginRes.value);
         if (res) {
@@ -153,10 +156,10 @@
     if (state.policyChecked) {
       if (isLoginByWeb.value) {
         console.log('uuid: ', uuid);
-        let res = await userStore.wxMiniAppUserLoginFromScan(wxIndentityRes.value, uuid);
-        if (res) {
-          handleLoginSuccess();
-        }
+        // let res = await userStore.wxMiniAppUserLoginFromScan(wxIndentityRes.value, uuid);
+        // if (res) {
+        //   handleLoginSuccess();
+        // }
       } else {
         userStore.loginSuccess(wxMiniAppUserLoginRes.value);
         handleLoginSuccess();
@@ -167,12 +170,37 @@
   } catch (error) {}
 }
 
-function handleLoginSuccess() {
-  Message.success('鎺堟潈鐧诲綍鎴愬姛', {
-    onClosed: () => {
-      jump();
-    },
-  });
+async function handleLoginSuccess() {
+  try {
+    if (!Taro.requestSubscribeMessage) {
+      await Message.confirm({ message: '浣犵殑寰俊鐗堟湰杩囦綆锛屼笉鏀寔璁㈤槄娑堟伅锛屾槸鍚︾户缁紵' });
+    }
+    const res = await Taro.getSetting({
+      withSubscriptions: true,
+    });
+    let setting: boolean[] = [];
+    if (res.subscriptionsSetting && res.subscriptionsSetting.itemSettings) {
+      setting = subscribeMessageTemplateIdsForC
+        .map((id) => res.subscriptionsSetting.itemSettings[id] !== 'accept')
+        .filter(Boolean);
+    }
+    // if (setting.length > 0) {
+    Taro.requestSubscribeMessage({
+      tmplIds: subscribeMessageTemplateIdsForC,
+      success: function (res) {
+        console.log('res: ', res);
+      },
+    });
+    console.log('setting: ', setting);
+    // }
+    Message.success('鎺堟潈鐧诲綍鎴愬姛', {
+      onClosed: () => {
+        jump();
+      },
+    });
+  } catch (error) {
+    console.log('error: ', error);
+  }
 }
 
 function goLoginByForm(tab = LoginFormTabs.VerificationCodeLogin) {

--
Gitblit v1.9.1