From 465cb2fcaddef87aaf103fed1ccbe8333a6412ef Mon Sep 17 00:00:00 2001 From: rd <1344903914@qq.com> Date: Thu, 11 Sep 2025 18:16:05 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BF=AE=E6=94=B9=E6=98=B5=E7=A7=B0?= =?UTF-8?q?=EF=BC=8C=E4=BF=AE=E6=94=B9=E6=89=8B=E6=9C=BA=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/all/login.ts | 5 + src/styles/components/ant-modal.scss | 2 +- .../components/change-mobile-modal/index.vue | 200 ++++++++++++++++++ .../components/change-name-modal/index.vue | 79 +++++++ .../safety-verification-modal/index.vue | 171 +++++++++++++++ .../safety-verification-modal/style.scss | 110 ++++++++++ .../management/person/img/icon1.png | Bin 0 -> 1397 bytes .../components/management/person/index.vue | 129 ++++++++--- .../components/management/person/style.scss | 13 ++ 9 files changed, 675 insertions(+), 34 deletions(-) create mode 100644 src/views/components/management/person/components/change-mobile-modal/index.vue create mode 100644 src/views/components/management/person/components/change-name-modal/index.vue create mode 100644 src/views/components/management/person/components/safety-verification-modal/index.vue create mode 100644 src/views/components/management/person/components/safety-verification-modal/style.scss create mode 100644 src/views/components/management/person/img/icon1.png create mode 100644 src/views/components/management/person/style.scss diff --git a/src/api/all/login.ts b/src/api/all/login.ts index b612588..0277606 100644 --- a/src/api/all/login.ts +++ b/src/api/all/login.ts @@ -87,3 +87,8 @@ export const getMyEnterprises = () => { export const getMyPrimaryEnterprise = () => { return Http.get('/v1/me/primary-enterprise'); }; + +// 发送修改手机号验证码 +export const postUpdateMobileCaptcha = (params = {}) => { + return Http.post('/v1/sms/update-mobile-captcha', params); +}; diff --git a/src/styles/components/ant-modal.scss b/src/styles/components/ant-modal.scss index 47fc5ee..77b65de 100644 --- a/src/styles/components/ant-modal.scss +++ b/src/styles/components/ant-modal.scss @@ -17,7 +17,7 @@ color: #211f24; font-size: 16px; font-style: normal; - font-weight: 400; + font-weight: 500; justify-content: flex-start; } } diff --git a/src/views/components/management/person/components/change-mobile-modal/index.vue b/src/views/components/management/person/components/change-mobile-modal/index.vue new file mode 100644 index 0000000..74d474a --- /dev/null +++ b/src/views/components/management/person/components/change-mobile-modal/index.vue @@ -0,0 +1,200 @@ + + + + + + + + + + + + {{ countdown > 0 ? `${countdown}s` : hasGetCode ? '重新发送' : '发送验证码' }} + + + + + + + 取消 + 确定 + + + + + + + diff --git a/src/views/components/management/person/components/change-name-modal/index.vue b/src/views/components/management/person/components/change-name-modal/index.vue new file mode 100644 index 0000000..4435ce5 --- /dev/null +++ b/src/views/components/management/person/components/change-name-modal/index.vue @@ -0,0 +1,79 @@ + + + + + + + + + 取消 + 确定 + + + + + + + diff --git a/src/views/components/management/person/components/safety-verification-modal/index.vue b/src/views/components/management/person/components/safety-verification-modal/index.vue new file mode 100644 index 0000000..9bf3be8 --- /dev/null +++ b/src/views/components/management/person/components/safety-verification-modal/index.vue @@ -0,0 +1,171 @@ + + + + + 安全验证 + 为进一步保证您的账号安全,确保为您本人操作,请先完成安全验证 + + + + + 请输入发送至 + {{ formattedPhone }} + 的短信验证码 + + + + + + + + + + {{ countdown }}秒后可以再次发送验证码 + 发送验证码 + + + + + 确认验证 + 取消 + + + + + + + + diff --git a/src/views/components/management/person/components/safety-verification-modal/style.scss b/src/views/components/management/person/components/safety-verification-modal/style.scss new file mode 100644 index 0000000..911f337 --- /dev/null +++ b/src/views/components/management/person/components/safety-verification-modal/style.scss @@ -0,0 +1,110 @@ +.safety-verification-modal { + .modal-content { + padding: 24px; + text-align: center; + + .description { + margin-bottom: 24px; + + .title-text { + font-size: 18px; + font-weight: 500; + color: #211f24; + margin-bottom: 8px; + } + + .desc-text { + font-size: 14px; + color: #737478; + line-height: 20px; + } + } + + .verify-section { + margin-bottom: 24px; + + .phone-info { + display: flex; + justify-content: center; + align-items: center; + margin-bottom: 16px; + + .label { + font-size: 14px; + color: #737478; + } + + .phone-number { + font-size: 14px; + font-weight: 500; + color: #211f24; + margin: 0 8px; + } + } + + .captcha-input { + margin-bottom: 16px; + + .input-group { + display: flex; + justify-content: center; + + .captcha-input-field { + width: 200px; + height: 40px; + border-radius: 4px; + border: 1px solid var(--BG-400, rgba(215, 215, 217, 1)); + + &:focus { + border-color: var(--Brand-Brand-6, rgba(109, 76, 254, 1)); + box-shadow: 0 2px 4px 0 rgba(109, 76, 254, 0.2); + } + } + } + } + + .countdown { + font-size: 14px; + color: #737478; + margin-bottom: 16px; + + .countdown-text { + color: #737478; + } + + .resend-btn { + color: var(--Brand-Brand-6, rgba(109, 76, 254, 1)); + cursor: pointer; + font-weight: 500; + transition: color 0.2s; + + &:hover { + color: var(--Brand-Brand-7, rgba(95, 67, 238, 1)); + } + } + } + } + + .action-buttons { + display: flex; + justify-content: center; + gap: 16px; + + .arco-btn { + min-width: 100px; + height: 40px; + } + + .arco-btn-primary { + background-color: var(--Brand-Brand-6, rgba(109, 76, 254, 1)); + border-color: var(--Brand-Brand-6, rgba(109, 76, 254, 1)); + color: white; + + &:hover { + background-color: var(--Brand-Brand-7, rgba(95, 67, 238, 1)); + border-color: var(--Brand-Brand-7, rgba(95, 67, 238, 1)); + } + } + } + } +} diff --git a/src/views/components/management/person/img/icon1.png b/src/views/components/management/person/img/icon1.png new file mode 100644 index 0000000000000000000000000000000000000000..4d5b26d51ab5c7b965fe6d78d61902b300603a95 GIT binary patch literal 1397 zcmV-*1&aEKP)3Umh*6+xsyLgFGSx|667LJ%QJq(nl31_clj%|(O) zQIWe)P@xc-q|5o5G$}4ca<{*B-Z!4{jlEubZBKTSPkQU0_0D|r{N9^4Z^U+N6>w zWj5TwCLgX+WEu&KCjkXPK$FRYCVZq&JRfypSu8}hZ3}T6hZ>HZ)rHS;iJ$+GOpy;G zn}%j~Quk>%8q)u6KHzK#LH^B2zV3CrYi=b!Ka)7%p{*hygwKk)AlU5ZiCvb zrhdz(83V{9FKzrklEk6qlm396F`z{NZ(*g=7LG1~xnV2q1NMyH!#O>5aeUHW7;zv7 zB4ugVkem{j(!88BuBz)rn93|sp7#q4{S4Df5BWd(eLTKBTRCIEU7&5WoAcL%ZL* z)PFpC`uO0JA-(e2gvtOu*Wx)qMju4NZI;Wr*?g!@h84}_kDv32t7ocUm<$^4;6wBz zC!_=Q&7OmDrHuP|u+h1HIJ>x|NToVOr5EFun=B0g_h za9U)n8qTXpgMVw21$_p=<|U%0vN!zpSHyJkg6t> z;?}jvAnr+1fr%*M0M1{1BYNfc56yL{T8i^zEr%`*m`V})kEt@!+@{D=4e~F&9Ff0u z)1jjWr|sYz<^-Ir5p`1JeP#1lsdzYXcoj3Q*nUrjMA-EYU$x>K=GNbi2${I96Ef2a zbai#8?l{^kPz5USg0}zpvmpe;duvgstOG0$HT^{jH2g(1uX>pm{qz+JB)3A?H zh(46x)rq!doQa|owhZQJ3l%jDKj9-ba9OKCPA_We1FjkjN6*MIkgI6zcAQ%Hto0sF zV$I7H`4x5DJY9Az6;T;*TI)c10iLLojYcD`+bp+&0F7()%UJ6`!hNOoFRE+Tb?37G zrv>z#D!g9OFQ&32S&@p(2Sp#pF`B>41(-`KSuMMg-gL+-w4y@1A+Nb!IWV@$Dgu<% zX}5Hr^GU0eDU>R4FCqfLR9baP+zMF(Krsqsz_8|Waf%3Q8HFX+HL$s$kTn3Tb1?&( zDhEQ_8KD{Z*1LJzI)$Dne|(NKCx$a2gsrZ0L^QA}By&pBC?vs5QpC~MR?#MN*{#fN zN^LwSpe!-wnh%^BZw5}TZ)Kt - + 个人信息 - - - - - - {{ record.name || '-' }} - + + + + + + + + 昵称: + {{ dataSource.name || '-' }} + 编辑 + + + + 手机号: + {{ mobile }} + 更改 - - - - - {{ record.mobile.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2') }} - - - - - - - + + 密码: + + 更改 + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
安全验证
为进一步保证您的账号安全,确保为您本人操作,请先完成安全验证
个人信息