|
@@ -47,37 +47,37 @@ const accountForm = ref<AccountForm>({
|
|
|
const accountList = ref<UserPageItem[]>([]);
|
|
|
const accountColumns = [
|
|
|
{
|
|
|
- title: '手机号',
|
|
|
+ title: t('userManage.mobilePhoneNumber'),
|
|
|
dataIndex: 'mobile',
|
|
|
key: 'mobile',
|
|
|
ellipsis: true,
|
|
|
},
|
|
|
{
|
|
|
- title: '姓名',
|
|
|
+ title: t('userManage.fullName'),
|
|
|
dataIndex: 'userName',
|
|
|
key: 'userName',
|
|
|
ellipsis: true,
|
|
|
},
|
|
|
{
|
|
|
- title: '角色',
|
|
|
+ title: t('userManage.role'),
|
|
|
dataIndex: 'roleName',
|
|
|
key: 'roleName',
|
|
|
ellipsis: true,
|
|
|
},
|
|
|
{
|
|
|
- title: '创建日期',
|
|
|
+ title: t('userManage.createDate'),
|
|
|
dataIndex: 'startTenancy',
|
|
|
key: 'startTenancy',
|
|
|
ellipsis: true,
|
|
|
},
|
|
|
{
|
|
|
- title: '到期日期',
|
|
|
+ title: t('userManage.expiryDate'),
|
|
|
dataIndex: 'endTenancy',
|
|
|
key: 'endTenancy',
|
|
|
ellipsis: true,
|
|
|
},
|
|
|
{
|
|
|
- title: '状态',
|
|
|
+ title: t('common.status'),
|
|
|
dataIndex: 'enabled',
|
|
|
key: 'enabled',
|
|
|
ellipsis: true,
|
|
@@ -90,7 +90,7 @@ const rules: Record<string, Rule[]> = {
|
|
|
{
|
|
|
validator: (_rule: unknown, value: string) => {
|
|
|
if (!isValidPhone(value)) {
|
|
|
- return Promise.reject('手机号格式错误');
|
|
|
+ return Promise.reject(t('userManage.mobileNumberFormatError'));
|
|
|
}
|
|
|
return Promise.resolve();
|
|
|
},
|
|
@@ -111,6 +111,8 @@ const accountChange = (selectedRowKeys: Key[]) => {
|
|
|
const confirm = () => {
|
|
|
handleRequest(async () => {
|
|
|
await batchDeleteAccount(accountKeys.value as number[]);
|
|
|
+
|
|
|
+ message.success(t('common.deleteSuccess'));
|
|
|
getUserList();
|
|
|
modalComponentRef.value?.hideView();
|
|
|
});
|
|
@@ -196,6 +198,7 @@ const bindingAccount = () => {
|
|
|
endTenancy: accountTerm![1].format('YYYY-MM-DD'),
|
|
|
orgId: orgId.value as number,
|
|
|
});
|
|
|
+ message.success(t('common.addSuccess'));
|
|
|
} else {
|
|
|
await updateAccount({
|
|
|
id: accountId.value,
|
|
@@ -208,6 +211,7 @@ const bindingAccount = () => {
|
|
|
endTenancy: accountTerm![1].format('YYYY-MM-DD'),
|
|
|
orgId: orgId.value as number,
|
|
|
});
|
|
|
+ message.success(t('common.editSuccess'));
|
|
|
}
|
|
|
getUserList();
|
|
|
|
|
@@ -244,18 +248,18 @@ const getUserList = () => {
|
|
|
<template>
|
|
|
<div>
|
|
|
<AFlex justify="space-between" class="account-header">
|
|
|
- <div class="text-top">账号管理</div>
|
|
|
+ <div class="text-top">{{ t('userManage.accountManagement') }}</div>
|
|
|
<div>
|
|
|
<AButton class="icon-button default-button" @click="addDelete">
|
|
|
<AFlex align="center">
|
|
|
<SvgIcon name="delete" />
|
|
|
- <span>删除</span>
|
|
|
+ <span>{{ t('common.delete') }}</span>
|
|
|
</AFlex>
|
|
|
</AButton>
|
|
|
<AButton type="primary" class="icon-button button-monitoring" @click="addOpenAccount">
|
|
|
<AFlex align="center">
|
|
|
<SvgIcon name="plus" />
|
|
|
- <span> 添加 </span>
|
|
|
+ <span> {{ t('common.add') }} </span>
|
|
|
</AFlex>
|
|
|
</AButton>
|
|
|
</div>
|
|
@@ -265,11 +269,15 @@ const getUserList = () => {
|
|
|
<div class="account-content">
|
|
|
<AFlex wrap="wrap" justify="space-between">
|
|
|
<AFlex align="center" class="margin-bottom">
|
|
|
- <div class="account-content-text">搜索</div>
|
|
|
- <AInput v-model:value="searchContent" class="input-width" placeholder="请输入手机号、姓名" />
|
|
|
+ <div class="account-content-text">{{ $t('common.search') }}</div>
|
|
|
+ <AInput
|
|
|
+ v-model:value="searchContent"
|
|
|
+ class="input-width"
|
|
|
+ :placeholder="t('userManage.pleaseEnterMobileNumber')"
|
|
|
+ />
|
|
|
</AFlex>
|
|
|
<AFlex align="center" class="margin-bottom">
|
|
|
- <div class="account-content-text">角色</div>
|
|
|
+ <div class="account-content-text">{{ t('userManage.role') }}</div>
|
|
|
|
|
|
<ASelect
|
|
|
class="input-width"
|
|
@@ -281,7 +289,7 @@ const getUserList = () => {
|
|
|
/>
|
|
|
</AFlex>
|
|
|
<AFlex align="center" class="margin-bottom">
|
|
|
- <div class="account-content-text">创建日期</div>
|
|
|
+ <div class="account-content-text">{{ t('userManage.createDate') }}</div>
|
|
|
<ARangePicker
|
|
|
v-model:value="accountTerm"
|
|
|
class="input-width"
|
|
@@ -291,21 +299,21 @@ const getUserList = () => {
|
|
|
</AFlex>
|
|
|
|
|
|
<AFlex align="center" class="margin-bottom">
|
|
|
- <div class="account-content-text">状态</div>
|
|
|
+ <div class="account-content-text">{{ $t('common.status') }}</div>
|
|
|
<ASelect
|
|
|
class="input-width"
|
|
|
v-model:value="accountPageParam.enabled"
|
|
|
:placeholder="$t('common.plzSelect')"
|
|
|
:allow-clear="true"
|
|
|
>
|
|
|
- <ASelectOption value="1">正常</ASelectOption>
|
|
|
- <ASelectOption value="0">停用</ASelectOption>
|
|
|
+ <ASelectOption value="1">{{ t('envMonitor.normal') }}</ASelectOption>
|
|
|
+ <ASelectOption value="0">{{ t('common.deactivated') }}</ASelectOption>
|
|
|
</ASelect>
|
|
|
</AFlex>
|
|
|
</AFlex>
|
|
|
<AFlex class="margin-bottom" justify="flex-end">
|
|
|
- <AButton type="primary" @click="addQuery"> 查询 </AButton>
|
|
|
- <AButton class="default-button margin-left" @click="addReset"> 重置 </AButton>
|
|
|
+ <AButton type="primary" @click="addQuery"> {{ t('common.query') }} </AButton>
|
|
|
+ <AButton class="default-button margin-left" @click="addReset"> {{ t('common.reset') }} </AButton>
|
|
|
</AFlex>
|
|
|
<ATable
|
|
|
:row-selection="{
|
|
@@ -323,8 +331,8 @@ const getUserList = () => {
|
|
|
<div @click="addCheck(record as UserPageItem)" class="mobile-phone">{{ record.mobile }}</div>
|
|
|
</template>
|
|
|
<template v-if="column.key === 'enabled'">
|
|
|
- <div v-if="record.enabled == 1" class="tag-style success">启用中</div>
|
|
|
- <div v-else class="tag-style default">停用</div>
|
|
|
+ <div v-if="record.enabled == 1" class="tag-style success">{{ t('common.activating') }}</div>
|
|
|
+ <div v-else class="tag-style default">{{ t('common.deactivated') }}</div>
|
|
|
</template>
|
|
|
</template>
|
|
|
</ATable>
|
|
@@ -345,7 +353,7 @@ const getUserList = () => {
|
|
|
</AFlex>
|
|
|
<AModal
|
|
|
v-model:open="accountOpen"
|
|
|
- :title="titleAccount ? '添加' : '编辑'"
|
|
|
+ :title="titleAccount ? t('common.add') : t('common.editor')"
|
|
|
width="460px"
|
|
|
:footer="null"
|
|
|
:mask-closable="false"
|
|
@@ -362,13 +370,17 @@ const getUserList = () => {
|
|
|
class="form-style"
|
|
|
>
|
|
|
<AFlex :vertical="true">
|
|
|
- <AFormItem label="姓名" name="userName">
|
|
|
- <AInput class="input-width" v-model:value="accountForm.userName" placeholder="请输入" />
|
|
|
+ <AFormItem :label="t('userManage.fullName')" name="userName">
|
|
|
+ <AInput class="input-width" v-model:value="accountForm.userName" :placeholder="t('common.pleaseEnter')" />
|
|
|
</AFormItem>
|
|
|
- <AFormItem label="手机号" name="mobile">
|
|
|
- <AInputNumber class="input-width" v-model:value="accountForm.mobile" placeholder="请输入" />
|
|
|
+ <AFormItem :label="t('userManage.mobilePhoneNumber')" name="mobile">
|
|
|
+ <AInputNumber
|
|
|
+ class="input-width"
|
|
|
+ v-model:value="accountForm.mobile"
|
|
|
+ :placeholder="t('common.pleaseEnter')"
|
|
|
+ />
|
|
|
</AFormItem>
|
|
|
- <AFormItem label="角色" name="roleId">
|
|
|
+ <AFormItem :label="t('userManage.role')" name="roleId">
|
|
|
<ASelect
|
|
|
class="input-width"
|
|
|
v-model:value="accountForm.roleId"
|
|
@@ -377,7 +389,7 @@ const getUserList = () => {
|
|
|
:placeholder="t('common.plzSelect')"
|
|
|
/>
|
|
|
</AFormItem>
|
|
|
- <AFormItem label="到期日期" name="accountTerm">
|
|
|
+ <AFormItem :label="t('userManage.expiryDate')" name="accountTerm">
|
|
|
<ARangePicker
|
|
|
v-model:value="accountForm.accountTerm"
|
|
|
class="input-width"
|
|
@@ -385,10 +397,14 @@ const getUserList = () => {
|
|
|
:separator="$t('common.to')"
|
|
|
/>
|
|
|
</AFormItem>
|
|
|
- <AFormItem label="密码" name="password">
|
|
|
- <AInput class="input-width" v-model:value="accountForm.password" placeholder="默认密码8个0" />
|
|
|
+ <AFormItem :label="t('userManage.password')" name="password">
|
|
|
+ <AInput
|
|
|
+ class="input-width"
|
|
|
+ v-model:value="accountForm.password"
|
|
|
+ :placeholder="t('userManage.defaultPassword')"
|
|
|
+ />
|
|
|
</AFormItem>
|
|
|
- <AFormItem label="启用" name="enabled">
|
|
|
+ <AFormItem :label="t('alarmManage.enable')" name="enabled">
|
|
|
<ASwitch v-model:checked="accountForm.enabled" />
|
|
|
</AFormItem>
|
|
|
</AFlex>
|