feat(store): 新增用户和企业信息管理功能
- 在 user store 中添加 userInfo 相关状态和操作 - 创建 enterprise store管理企业信息 - 更新相关组件以使用新的 store 方法
This commit is contained in:
@ -61,8 +61,10 @@ import { fetchSubAccountPage, removeEnterpriseAccount, getEnterpriseInviteCode }
|
||||
import Modal from '@/components/modal.vue';
|
||||
import DeleteModal from '@/components/delete-modal.vue';
|
||||
import CustomerServiceModal from '@/components/customer-service-modal.vue';
|
||||
import { useClipboard } from '@vueuse/core'
|
||||
import { useClipboard } from '@vueuse/core';
|
||||
import { useEnterpriseStore } from '@/stores/modules/enterprise';
|
||||
|
||||
const store = useEnterpriseStore();
|
||||
const columns = [
|
||||
{
|
||||
title: '手机号',
|
||||
@ -93,11 +95,7 @@ const addAccountVisible = ref(false);
|
||||
const deleteVisible = ref(false);
|
||||
const deleteTitle = ref('');
|
||||
|
||||
const enterpriseInfo = reactive({
|
||||
name: '123321',
|
||||
sub_account_quota: 2,
|
||||
used_sub_account_count: 1,
|
||||
});
|
||||
const enterpriseInfo = store.getEnterpriseInfo();
|
||||
|
||||
const okText = computed(() => {
|
||||
if (!canAddAccount.value) {
|
||||
|
||||
@ -35,16 +35,14 @@ import Modal from '@/components/modal.vue';
|
||||
import { ref, reactive, computed } from 'vue';
|
||||
import CustomerServiceModal from '@/components/customer-service-modal.vue';
|
||||
import { updateEnterpriseName } from '@/api/all';
|
||||
import { useEnterpriseStore } from '@/stores/modules/enterprise';
|
||||
|
||||
const store = useEnterpriseStore();
|
||||
const form = reactive({
|
||||
name: '',
|
||||
});
|
||||
|
||||
const enterpriseInfo = reactive({
|
||||
name: '123321',
|
||||
update_name_quota: 2,
|
||||
used_update_name_count: 1,
|
||||
});
|
||||
const enterpriseInfo = store.getEnterpriseInfo();
|
||||
|
||||
const columns = [
|
||||
{
|
||||
@ -85,6 +83,8 @@ async function handleOk() {
|
||||
return;
|
||||
}
|
||||
await updateEnterpriseName({ name: form.name });
|
||||
store.setEnterpriseName(form.name);
|
||||
store.incUsedUpdateNameCount();
|
||||
AMessage.success('修改成功!');
|
||||
}
|
||||
</script>
|
||||
|
||||
@ -82,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 = [
|
||||
{
|
||||
@ -172,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,
|
||||
@ -195,6 +191,8 @@ function openEditMobileModal() {
|
||||
|
||||
async function handleSubmitUserInfo() {
|
||||
await updateMyInfo(userInfoForm);
|
||||
store.setUserName(userInfoForm.name);
|
||||
store.setUserHeadImage(userInfoForm.file_url);
|
||||
AMessage.success('修改成功!');
|
||||
}
|
||||
|
||||
@ -237,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('修改成功!');
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user