mirror of
https://github.com/mayswind/ezbookkeeping.git
synced 2026-05-14 06:57:35 +08:00
show a confirmation dialog allowing the user to change the editable transaction range to "All" when unable to add or edit a transaction due to the limitation on the editable transaction range
This commit is contained in:
@@ -8,6 +8,8 @@ const baseAmapApiProxyUrlPath = '/_AMapService';
|
||||
const apiNotFoundErrorCode = 100001;
|
||||
const validatorErrorCode = 200000;
|
||||
const userEmailNotVerifiedErrorCode = 201020;
|
||||
const transactionCannotCreateInThisTimeErrorCode = 205017;
|
||||
const transactionCannotModifyInThisTimeErrorCode = 205018;
|
||||
const transactionPictureNotFoundErrorCode = 211001;
|
||||
const googleMapJavascriptUrl = 'https://maps.googleapis.com/maps/api/js';
|
||||
const baiduMapJavascriptUrl = 'https://api.map.baidu.com/api?v=3.0';
|
||||
@@ -152,6 +154,8 @@ export default {
|
||||
apiNotFoundErrorCode: apiNotFoundErrorCode,
|
||||
validatorErrorCode: validatorErrorCode,
|
||||
userEmailNotVerifiedErrorCode: userEmailNotVerifiedErrorCode,
|
||||
transactionCannotCreateInThisTimeErrorCode: transactionCannotCreateInThisTimeErrorCode,
|
||||
transactionCannotModifyInThisTimeErrorCode: transactionCannotModifyInThisTimeErrorCode,
|
||||
transactionPictureNotFoundErrorCode: transactionPictureNotFoundErrorCode,
|
||||
specifiedApiNotFoundErrors: specifiedApiNotFoundErrors,
|
||||
parameterizedErrors: parameterizedErrors,
|
||||
|
||||
+4
-1
@@ -1515,6 +1515,7 @@
|
||||
"Source account cannot be blank": "Source account cannot be blank",
|
||||
"Destination account cannot be blank": "Destination account cannot be blank",
|
||||
"Are you sure you want to save this transaction with a zero amount?": "Are you sure you want to save this transaction with a zero amount?",
|
||||
"You have set this time range to prevent editing transactions. Would you like to change the editable transaction range to All?": "You have set this time range to prevent editing transactions. Would you like to change the editable transaction range to All?",
|
||||
"Unable to retrieve transaction": "Unable to retrieve transaction",
|
||||
"Unable to add transaction": "Unable to add transaction",
|
||||
"Unable to save transaction": "Unable to save transaction",
|
||||
@@ -1642,12 +1643,14 @@
|
||||
"Please enter your current password when modifying your password": "Please enter your current password when modifying your password",
|
||||
"Nothing has been modified": "Nothing has been modified",
|
||||
"Your profile has been successfully updated": "Your profile has been successfully updated",
|
||||
"Unable to update user profile": "Unable to update user profile",
|
||||
"Your editable transaction range has been set to All": "Your editable transaction range has been set to All",
|
||||
"Unable to update editable transaction range": "Unable to update editable transaction range",
|
||||
"Unable to update user avatar": "Unable to update user avatar",
|
||||
"Your avatar has been successfully updated": "Your avatar has been successfully updated",
|
||||
"Are you sure you want to remove avatar?": "Are you sure you want to remove avatar?",
|
||||
"Unable to remove user avatar": "Unable to remove user avatar",
|
||||
"Your avatar has been successfully removed": "Your avatar has been successfully removed",
|
||||
"Unable to update user profile": "Unable to update user profile",
|
||||
"After changing the password, other devices will be logged out. Please use the new password to log in on other devices.": "After changing the password, other devices will be logged out. Please use the new password to log in on other devices.",
|
||||
"Data Management": "Data Management",
|
||||
"Unable to retrieve user statistics data": "Unable to retrieve user statistics data",
|
||||
|
||||
@@ -1515,6 +1515,7 @@
|
||||
"Source account cannot be blank": "来源账户不能为空",
|
||||
"Destination account cannot be blank": "目标账户不能为空",
|
||||
"Are you sure you want to save this transaction with a zero amount?": "您确定要保存这个金额为0的交易?",
|
||||
"You have set this time range to prevent editing transactions. Would you like to change the editable transaction range to All?": "您已经设置不允许修改这个时间范围的交易,是否要将可编辑交易范围设置为全部?",
|
||||
"Unable to retrieve transaction": "无法获取交易",
|
||||
"Unable to add transaction": "无法添加交易",
|
||||
"Unable to save transaction": "无法保存交易",
|
||||
@@ -1642,12 +1643,14 @@
|
||||
"Please enter your current password when modifying your password": "修改密码时请输入您的当前密码",
|
||||
"Nothing has been modified": "没有修改的项目",
|
||||
"Your profile has been successfully updated": "您的用户信息更新成功",
|
||||
"Unable to update user profile": "无法更新用户信息",
|
||||
"Your editable transaction range has been set to All": "您的可编辑交易范围已设置为全部",
|
||||
"Unable to update editable transaction range": "无法更新可编辑交易范围",
|
||||
"Unable to update user avatar": "无法更新用户头像",
|
||||
"Your avatar has been successfully updated": "您的头像更新成功",
|
||||
"Are you sure you want to remove avatar?": "您确定要删除头像?",
|
||||
"Unable to remove user avatar": "无法删除用户头像",
|
||||
"Your avatar has been successfully removed": "您的用户头像删除成功",
|
||||
"Unable to update user profile": "无法更新用户信息",
|
||||
"After changing the password, other devices will be logged out. Please use the new password to log in on other devices.": "密码修改后,其他设备将会退出登录,请使用新密码在其他设备上重新登录。",
|
||||
"Data Management": "数据管理",
|
||||
"Unable to retrieve user statistics data": "无法获取用户统计数据",
|
||||
|
||||
+35
-1
@@ -5,7 +5,10 @@ import { useSettingsStore } from './setting.js';
|
||||
import userState from '@/lib/userstate.js';
|
||||
import services from '@/lib/services.js';
|
||||
import logger from '@/lib/logger.js';
|
||||
import { isNumber } from '@/lib/common.js';
|
||||
import {
|
||||
isObject,
|
||||
isNumber
|
||||
} from '@/lib/common.js';
|
||||
|
||||
export const useUserStore = defineStore('user', {
|
||||
state: () => ({
|
||||
@@ -126,6 +129,37 @@ export const useUserStore = defineStore('user', {
|
||||
});
|
||||
});
|
||||
},
|
||||
updateUserTransactionEditScope({ transactionEditScope }) {
|
||||
return new Promise((resolve, reject) => {
|
||||
services.updateProfile({
|
||||
transactionEditScope: transactionEditScope,
|
||||
}).then(response => {
|
||||
const data = response.data;
|
||||
|
||||
if (!data || !data.success || !data.result) {
|
||||
reject({ message: 'Unable to update editable transaction range' });
|
||||
return;
|
||||
}
|
||||
|
||||
if (data.result.user && isObject(data.result.user)) {
|
||||
const userStore = useUserStore();
|
||||
userStore.storeUserBasicInfo(data.result.user);
|
||||
}
|
||||
|
||||
resolve(data.result);
|
||||
}).catch(error => {
|
||||
logger.error('failed to save editable transaction range', error);
|
||||
|
||||
if (error.response && error.response.data && error.response.data.errorMessage) {
|
||||
reject({ error: error.response.data });
|
||||
} else if (!error.processed) {
|
||||
reject({ message: 'Unable to update editable transaction range' });
|
||||
} else {
|
||||
reject(error);
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
updateUserAvatar({ avatarFile }) {
|
||||
const self = this;
|
||||
|
||||
|
||||
@@ -935,7 +935,25 @@ export default {
|
||||
}).catch(error => {
|
||||
self.submitting = false;
|
||||
|
||||
if (!error.processed) {
|
||||
if (error.error && (error.error.errorCode === apiConstants.transactionCannotCreateInThisTimeErrorCode || error.error.errorCode === apiConstants.transactionCannotModifyInThisTimeErrorCode)) {
|
||||
self.$refs.confirmDialog.open('You have set this time range to prevent editing transactions. Would you like to change the editable transaction range to All?').then(() => {
|
||||
self.submitting = true;
|
||||
|
||||
self.userStore.updateUserTransactionEditScope({
|
||||
transactionEditScope: transactionConstants.allTransactionEditScopeTypes.All.type
|
||||
}).then(() => {
|
||||
self.submitting = false;
|
||||
|
||||
self.$refs.snackbar.showMessage('Your editable transaction range has been set to All');
|
||||
}).catch(error => {
|
||||
self.submitting = false;
|
||||
|
||||
if (!error.processed) {
|
||||
self.$refs.snackbar.showError(error);
|
||||
}
|
||||
});
|
||||
});
|
||||
} else if (!error.processed) {
|
||||
self.$refs.snackbar.showError(error);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1059,7 +1059,28 @@ export default {
|
||||
self.submitting = false;
|
||||
self.$hideLoading();
|
||||
|
||||
if (!error.processed) {
|
||||
if (error.error && (error.error.errorCode === apiConstants.transactionCannotCreateInThisTimeErrorCode || error.error.errorCode === apiConstants.transactionCannotModifyInThisTimeErrorCode)) {
|
||||
self.$confirm('You have set this time range to prevent editing transactions. Would you like to change the editable transaction range to All?', () => {
|
||||
self.submitting = true;
|
||||
self.$showLoading(() => self.submitting);
|
||||
|
||||
self.userStore.updateUserTransactionEditScope({
|
||||
transactionEditScope: transactionConstants.allTransactionEditScopeTypes.All.type
|
||||
}).then(() => {
|
||||
self.submitting = false;
|
||||
self.$hideLoading();
|
||||
|
||||
self.$toast('Your editable transaction range has been set to All');
|
||||
}).catch(error => {
|
||||
self.submitting = false;
|
||||
self.$hideLoading();
|
||||
|
||||
if (!error.processed) {
|
||||
self.$toast(error.message || error);
|
||||
}
|
||||
});
|
||||
});
|
||||
} else if (!error.processed) {
|
||||
self.$toast(error.message || error);
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user