diff --git a/src/api/all/index.ts b/src/api/all/index.ts index 7ef7aac..2a0510f 100644 --- a/src/api/all/index.ts +++ b/src/api/all/index.ts @@ -96,7 +96,7 @@ export const fetchGenderDistributionsList = (params: any) => { // 导出一个函数,用于获取产品列表 export const fetchProductList = () => { // 使用Http.get方法,发送GET请求,获取产品列表 - return Http.get('/v1/products/list', {}, { headers: { 'enterprise-id': 1 } }); + return Http.get('/v1/products/list'); }; // 导出一个函数,用于获取成功案例列表 @@ -107,12 +107,12 @@ export const fetchSuccessCaseList = () => { // 试用产品 export const trialProduct = (id: number) => { - return Http.post(`/v1/products/${id}/try`, {}, { headers: { 'enterprise-id': 1 } }); + return Http.post(`/v1/products/${id}/try`); }; // 修改企业名称 export const updateEnterpriseName = (data: any) => { - return Http.patch(`/v1/enterprises/name`, data, { headers: { 'enterprise-id': 1 } }); + return Http.patch(`/v1/enterprises/name`, data); }; // 发送修改手机号验证码 @@ -132,7 +132,7 @@ export const updateMyInfo = (data: any) => { // 获取企业账号分页 export const fetchSubAccountPage = (params: any) => { - return Http.get(`/v1/enterprises/users`, params, { headers: { 'enterprise-id': 1 } }); + return Http.get(`/v1/enterprises/users`, params); }; // 获取企业账号分页 @@ -142,10 +142,20 @@ export const fetchImageUploadFile = (params: any) => { // 移除企业子账号 export const removeEnterpriseAccount = (userId: number) => { - return Http.delete(`/v1/enterprises/users/${userId}`, { headers: { 'enterprise-id': 1 } }); + return Http.delete(`/v1/enterprises/users/${userId}`); }; // 获取企业邀请码 export const getEnterpriseInviteCode = () => { - return Http.get(`/v1/enterprises/invite-code`, {}, { headers: { 'enterprise-id': 1 } }); + return Http.get(`/v1/enterprises/invite-code`); +}; + +// 根据邀请码获取企业信息 +export const getEnterpriseByInviteCode = (inviteCode: string) => { + return Http.get(`/v1/enterprises/by-invite-code`, { invite_code: inviteCode }); +}; + +// 根据邀请码加入企业 +export const joinEnterpriseByInviteCode = (inviteCode: string) => { + return Http.post(`/v1/enterprises/join`, { invite_code: inviteCode }); }; diff --git a/src/api/index.ts b/src/api/index.ts index 2fe5ed6..3927722 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -8,7 +8,10 @@ import axios from 'axios'; import type { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios'; - +import { useEnterpriseStore } from '@/stores/modules/enterprise'; +import pinia from '@/stores'; +const store = useEnterpriseStore(pinia); +const enterprise = store.getEnterpriseInfo(); //* 导出Request类,可以用来自定义传递配置来创建实例 export class Request { //* axios 实例 @@ -27,6 +30,10 @@ export class Request { } else { config.headers!.satoken = '123'; } + + if (enterprise) { + config.headers!['enterprise-id'] = enterprise.id; + } return config; }, (err: any) => { diff --git a/src/components/join-modal.vue b/src/components/join-modal.vue new file mode 100644 index 0000000..9d2ebfd --- /dev/null +++ b/src/components/join-modal.vue @@ -0,0 +1,47 @@ + + + + + {{ `确定加入 “${enterprise.name}”吗?` }} + + + + + diff --git a/src/layouts/Basic.vue b/src/layouts/Basic.vue index 8123734..565347c 100644 --- a/src/layouts/Basic.vue +++ b/src/layouts/Basic.vue @@ -1,7 +1,11 @@ diff --git a/src/views/components/management/person/index.vue b/src/views/components/management/person/index.vue index 5957f4c..9382544 100644 --- a/src/views/components/management/person/index.vue +++ b/src/views/components/management/person/index.vue @@ -2,9 +2,11 @@ - - {{ record.name }} - + + + {{ record.name }} + + {{ record.mobile.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2') }} @@ -12,7 +14,12 @@ - + @@ -42,8 +49,8 @@ :model="form" class="form" :rules="formRules" - :label-col-props="{ span: 6, offset: 0 }" - :wrapper-col-props="{ span: 18, offset: 0 }" + :label-col-props="{ span: 5, offset: 0 }" + :wrapper-col-props="{ span: 19, offset: 0 }" label-align="left" > @@ -75,13 +82,10 @@ import 'vue-cropper/dist/index.css'; import { VueCropper } from 'vue-cropper'; import { sendUpdateMobileCaptcha, updateMobile, fetchImageUploadFile, updateMyInfo } from '@/api/all'; import axios from 'axios'; +import { useUserStore } from '@/stores'; -const userInfo = reactive({ - id: 1, - name: 'Jane Doe', - head_image: '', - mobile: '13600000000', -}); +const store = useUserStore(); +const userInfo = store.getUserInfo(); const columns = [ { @@ -165,7 +169,6 @@ async function handleFileChange(event: Event) { const target = event.target as HTMLInputElement; const file = target.files?.[0]; if (file) { - console.log('已选择的文件:', file); const fileExtension = getFileExtension(file.name); const res = await fetchImageUploadFile({ suffix: fileExtension, @@ -188,6 +191,8 @@ function openEditMobileModal() { async function handleSubmitUserInfo() { await updateMyInfo(userInfoForm); + store.setUserName(userInfoForm.name); + store.setUserHeadImage(userInfoForm.file_url); AMessage.success('修改成功!'); } @@ -230,6 +235,7 @@ async function handleUpdateMobile() { const res = await formRef.value.validate(); if (res === true || res === undefined) { await updateMobile(form); + store.setUserMobile(form.mobile); AMessage.success('修改成功!'); } } @@ -241,6 +247,10 @@ function getFileExtension(filename: string): string {