初始化

This commit is contained in:
2025-07-28 15:52:07 +08:00
commit cd0e77b332
1304 changed files with 302802 additions and 0 deletions

988
src/lang/en.js Normal file
View File

@@ -0,0 +1,988 @@
export default {
route: {
home: 'Home',
dictManager: 'Dictionary Management',
profile: 'Profile'
},
navbar: {
dashboard: 'Dashboard',
setting: 'Setting',
logOut: 'Log Out',
profile: 'Profile',
theme: 'Theme',
size: 'Global size',
helpDoc: 'Help document',
fullSceen: 'Full sceen',
lang: 'Switch language'
},
load: {
tips: 'Loading system resources, please wait patiently'
},
headerSearch: {
placeholder: 'Search'
},
langSelect: {
tips: 'Switch Language Success.'
},
sizeSelect: {
tips: 'Switch Size Success.'
},
fullSceen: {
tips: 'Your browser does not support full screen.'
},
enum: {
globalSize: {
default: 'Default',
medium: 'Medium',
small: 'Small',
mini: 'Mini'
}
},
tagsView: {
refresh: 'Refresh',
close: 'Close',
closeOthers: 'Close Others',
closeRight: 'Close Right',
closeLeft: 'Close Left',
closeAll: 'Close All'
},
settings: {
themeTitle: 'Theme setting',
theme: 'Theme Color',
title: 'Page style setting',
size: 'Global size',
lang: 'Language',
topNav: 'Open Top navigation bar',
tagsView: 'Open Tags-View',
fixedHeader: 'Fixed Header',
sidebarLogo: 'Sidebar Logo',
dynamicTitle: 'Dynamic title',
saveSettings: 'Save',
resetSettings: 'Reset',
saveSettingsTips: 'Saving to local, please wait...',
reseSettingstTips: 'Clearing settings cache and refreshing, please wait...'
},
table: {
status: 'Status',
actions: 'Actions',
disable: 'disabled',
add: 'Add',
copy: 'Copy',
edit: 'Edit',
delete: 'Delete',
clean: 'Clean',
clear: 'Clear',
remove: 'Delete',
import: 'Import',
export: 'Export',
detail: 'Detail',
refreshCache: 'Refresh cache',
close: 'Close',
more: 'More',
cancel: 'Cancel',
confirm: 'Confirm',
selectPlaceHolder: 'Please choose.',
contentPlaceHolder: 'Please enter content.',
expand: 'Expand',
collapse: 'Collapse',
deleteSelectRecord: 'Are you sure you want to delete the selected record?',
delSuccess: 'Successfully deleted the selected record!',
cleanSelectRecord: 'Are you sure you want to clean all record?',
cleanSuccess: 'Successfully cleaned all record!',
addSuccess: 'Added successfully!',
updateSuccess: 'Successfully modified!',
refreshSuccess: 'Refresh successfully!',
operError: 'Error occurred, operation failed!',
},
generic: {
status: 'Status',
search: 'Search',
reset: 'Reset',
expand: 'Expand',
collapse: 'Collapse',
cancel: 'Cancel',
confirm: 'Confirm',
save: 'Save',
close: 'Close',
more: 'More',
all: 'All',
selectPlaceHolder: 'Please choose.',
dateBeginPlaceHolder: 'Start date',
dateEndPlaceHolder: 'End date',
contentPlaceHolder: 'Please enter content.',
systemPrompt: 'Message notification',
prompt: 'Prompt',
warning: 'Warning',
error: 'Error',
sort: 'Sort',
createTime: 'Create Time',
addSuccessMessage: 'Successfully added.',
modifySuccessMessage: 'Successfully modified.',
deleteSuccessMessage: 'Successfully deleted.',
clearSuccessMessage: 'Successfully cleared.',
uploadText1: 'Drag the file here, or',
uploadText2: 'Click upload',
uploadText3: 'Whether to update existing data',
uploadText4: 'Download template',
uploadText5: 'Tip: only "xls" or "xlsx" format files can be imported!',
loadingText: 'Processing, please wait...',
},
login: {
languageMenu: 'Language',
registerMenu: 'Register',
logInMenu: 'Login',
username: 'Username',
password: 'Password',
captcha: 'Captcha',
rememberMe: 'Remember me',
logIn: 'Login',
loggingIn: 'Logging in...',
usernameMessage: 'Username can not be empty.',
passwordMessage: 'Password can not be empty.',
captchaMessage: 'Captcha can not be empty.',
register: 'Register',
newsTitle: 'News',
tenderNoticeTitle: 'Tender notice'
},
logout: {
logoutMessage: 'Are you sure to log out and exit the system?'
},
register: {
username: 'Username',
password: 'Password',
captcha: 'Captcha',
confirmPassword: 'Confirm password',
register: 'Register',
registering: 'Registering...',
login: 'Log in with an existing account',
equalToPasswordMessage: 'The two passwords entered are inconsistent',
usernameMessage: 'Username can not be empty.',
passwordMessage: 'Password can not be empty.',
confirmPasswordMessage: 'Confirm password can not be empty.',
captchaMessage: 'Captcha can not be empty.',
usernameLengthMessage: 'User account length must be between {minLength} and {maxLength}',
passwordLengthMessage: 'Password length must be between {minLength} and {maxLength}',
registerSuccessMessage: 'Congratulations, your account {username} has been successfully registered!'
},
monitor: {
cache: {
cacheName: 'Cache name',
dataType: 'Data type',
cacheKey: 'Cache key',
cacheValue: 'Cache value',
expire: 'Expire',
elementCount: 'Element count',
refreshCache: 'Refresh cache',
reloadCache: 'Reload',
cacheNamePlaceHolder: 'Please select cache name.',
cacheKeyPlaceHolder: 'Please enter the cache key.',
dataTypePlaceHolder: 'Please select data type.',
cleanCacheMessage: 'Are you sure to clean all cached data?',
exportCacheMessage: 'Are you sure to export all cached data?',
deleteCacheMessage: 'Are you sure to delete the cache whose key is {keys}?',
refreshSuccessMessage: 'Refresh success.',
reloadSuccessMessage: 'Reload success.',
},
},
system: {
title: 'Liugong SRM System',
copyright: 'Copyright © 2019-2023 Liugong All Rights Reserved.',
user: {
userId: 'User id',
account: 'Account',
nickName: 'User name',
businessGroup: "Group",
businessGroupName: "Group name",
deptName: 'Dept name',
phoneNumber: 'Phone number',
status: 'Status',
createTime: 'Create time',
actions: 'Actions',
createDate: 'Create date',
deptId: 'Dept id',
email: 'Email',
password: 'Password',
sex: 'Sex',
postIds: 'Post',
roleIds: 'Role',
remark: 'Remark',
resetPasswordButton: 'Reset password',
authRoleButton: 'Assign role',
deptPlaceHolder: 'Please enter the dept name.',
deptIdPlaceHolder: 'Please select the dept.',
businessGroupPlaceHolder: "Please select the group.",
accountPlaceHolder: 'Please enter the account.',
nickNamePlaceHolder: 'Please enter the nick name.',
phoneNumberPlaceHolder: 'Please enter the phone number.',
emailPlaceHolder: 'Please enter the email.',
passwordPlaceHolder: 'Please enter the password.',
statusPlaceHolder: 'User status',
addTitle: 'Add user',
copyTitle: 'Copy user',
editTitle: 'Edit user',
resetPwdTitle: 'Reset password',
profile: {
title: 'Profile',
user: 'User',
phoneNumber: 'Phone number',
email: 'Email',
dept: 'Dept',
role: 'Role',
createTime: 'Create time'
},
basic: {
title: 'Basic information',
basicTab: 'Basic',
resetPwdTab: 'Reset password',
nickName: 'User name',
phoneNumber: 'Phone number',
email: 'Email',
gender: 'Gender',
oldPassword: 'Old password',
newPassword: 'New password',
confirmPassword: 'Confirm password',
oldPasswordPlaceholder: 'Please enter the old password.',
newPasswordPlaceholder: 'Please enter the new password.',
confirmPasswordPlaceholder: 'Please enter the confirm password.',
equalToPasswordTips: 'The two passwords entered are inconsistent.',
oldPasswordEmptyTips: 'Old password can not be empty.',
newPasswordEmptyTips: 'New password can not be empty.',
confirmPasswordEmptyTips: 'Confirm password can not be empty.',
passwordLengthTips: 'The length is between {minLength} and {maxLength} characters.',
userNameEmptyTips: 'User name cannot be empty.',
emailInvalidTips: 'Please enter the correct email.',
phoneNumberInvalidTips: 'Please enter the correct phone number.',
modifySuccessTips: 'Modified successfully.'
},
avatar: {
title: 'Click upload Avatar',
modifyTitle: 'Modify Avatar',
choose: 'Choose',
submit: 'Submit',
formatTips: 'File format error, please upload picture type, such as {formats} suffix file.',
modifySuccessTips: 'Modified successfully.'
}
},
role: {
roleName: 'Role name',
roleKey: 'Role key',
roleStatus: 'Role status',
createTime: 'Create time',
dataScope: 'Data scope',
authUser: 'Authorize user',
roleId: 'Role id',
roleSort: 'Sort',
roleNamePlaceholder: 'Please enter role name.',
roleKeyPlaceholder: 'Please enter role key.',
statusPlaceholder: 'Role status',
},
loginInfor: {
},
menu: {
menuName: 'MenuName',
status: "Status",
sort: 'Sort',
type: 'Type',
permissionID: 'Permission ID',
componentPath: 'Component Path',
inputComponentPath: 'Please enter the component path',
inputComponentPathContent: 'The path of the accessed component, such as ` system / user / index \', is in the\' views\' directory by default',
parentMenu: 'ParentMenu',
choiceParentMenu: 'ChoiceParent Menu',
menuType: 'MenuType',
menuIcon: 'MenuIcon',
choiceIconPlaceholder: 'Choice Icon',
showSort: 'Show Sort',
mainCategory: 'Main Category',
addMenu: 'Add Menu',
editMenu: 'Edit Menu',
externalChain: 'External Chain',
externalChainContent: "If external chain is selected, the routing address must start with 'HTTP (s): / /'",
routingAddress: "Routing Address",
routingAddressContent: "The access routing address, such as ` user '. If the external network address needs internal chain access, it starts with' HTTP (s): / / '",
inputRoutingAddress: "Please enter the routing address",
permissionCharacter: 'Please enter permission ID',
permissionCharacterContent: 'Authority characters defined in the controller, such as:@PreAuthorize(`@ss.hasPermi(\'system:user:list\')`)',
routingParam: 'Routing Param',
inputRoutingParam: 'Please enter the Routing Param',
routingParamContent: 'Routing parameters access the default delivery parameters of the route, such as:`{"id": 1, "name": "test"}`',
cache: 'Cache',
isCache: 'Is Cache',
noCache: 'No Cache',
cacheContent: 'If yes is selected, it will be cached by \'keep alive\', and the \'name\' and address of the matching component need to be consistent',
showStatus: 'Show Status',
menuStatus: 'Menu Status',
menuStausContent: 'If disable is selected, the route will not appear in the sidebar and cannot be accessed',
exportMsg: 'Are you sure you want to export all menu data items?',
delMsg: 'Are you sure to delete the data item name:',
menuNameCannotBeEmpty: 'Menu name cannot be empty',
menuOrderCannotBeEmpty: 'Menu order cannot be empty',
routingAddressCannotBeEmpty: 'Routing address cannot be empty',
menuNamePlaceHolder: 'Please enter menu name',
statusPlaceHolder: 'Menu status'
},
dict: {
dictName: 'Dict name',
dictNameShow: 'Please enter dictionary name',
dictType: 'Dict type',
dictTypeShow: 'Please enter dictionary type',
dictStatus: 'Dict status',
dictStatusShow: 'Please select dictionary status',
dictStatusm: 'Status',
dictStatusmShow: 'Data status',
dictLabel: 'Dict label',
dictLabelShow: 'Please enter dictionary label',
dateBeginShow: 'Start date',
dateEndShow: 'End date',
createDate: 'Create date',
dictNo: 'Dict no.',
dictMemo: 'Dict remarks',
dictMemoShow: 'Please enter the content',
dictImport: 'Dictionary type import',
ruleDictNameNotEmpty: 'Dictionary name cannot be empty',
ruleDictTypeNotEmpty: 'Dictionary type cannot be empty',
ruleDictLabelNotEmpty: 'Data label cannot be empty',
ruleDictValueNotEmpty: 'Data key value cannot be empty',
ruleDictOrderNotEmpty: 'Data order cannot be empty',
btnSearch: 'Search',
btnReset: 'Reset',
btnNew: 'New',
btnCopy: 'Copy',
btnYes: 'Ok',
btnCancel: 'Cancel',
Operation: 'Operation',
Modify: 'Modify',
Delete: 'Delete',
Import: 'Import',
Export: 'Export',
ClearMen: 'Clean cache',
addDictType: 'Add dictionary type',
copyDictType: 'Copy dictionary type',
updateDictType: 'Modify dictionary type',
addDictData: 'Add dictionary data',
copyDictData: 'Copy dictionary data',
updateDictData: 'Modify dictionary data',
uploadText: 'Drag the file here, or',
uploadText2: 'Click upload',
uploadText3: 'Update existing dictionary type data',
uploadText4: 'Download template',
uploadText5: 'Tip: only "xls" or "xlsx" format files can be imported!',
updateSuccess: 'Modified successfully',
addSuccess: 'Successfully added',
deleteSuccess: 'Delete succeeded',
refreshSuccess: 'Refresh succeeded',
infoShow: 'Information',
warningShow: 'Warning',
deleteShow: 'Are you sure to delete the data item with dictionary number {dictIds}?',
sureExport: 'Are you sure you want to export all types of data items',
resultImport: 'Import results',
dictCode: 'Dictionary code',
dictValue: 'Dictionary key',
dictValueShow: 'Please enter dictionary key value',
dictOrder: 'Dict sort',
dictCss: 'style attribute',
dictCssShow: 'Please enter style attribute',
backCss: 'Echo style',
systemDefault: 'System default',
systemDefaultMore: "Table dictionary column display style properties",
SelectInfo: 'Please select',
},
parameter: {
parameterName: 'Par name',
keyName: 'Par key name',
pKey: 'Par pKey',
installed: 'System installed',
createDate: 'Create date',
beginDate: 'Begin date',
dateEnd: 'End date',
keyValue: 'Par key value',
remark: 'Remark',
createTime: 'Create time',
btnSearch: 'Search',
btnReset: 'Reset',
btnNew: 'New',
btnCopy: 'Copy',
btnYes: 'Ok',
btnCancel: 'Cancel',
Modify: 'Modify',
Delete: 'Delete',
Import: 'Import',
Export: 'Export',
ClearMen: 'CleanCache',
Operation: 'Operation',
warningShow: 'Warning',
hint: 'Hint',
import: 'Parameter import',
namePlaceHolder: 'Please enter the parameter name',
keyNamePlaceHolder: 'Please enter the parameter key name',
keyValuePlaceHolder: 'Please enter the parameter key value',
contentPlaceHolder: 'Please enter the parameter content',
uploadText: 'Drag the file here, or',
uploadText2: 'Click upload',
uploadText3: 'Update existing parameter',
uploadText4: 'Download template',
uploadText5: 'Tip: only "xls" or "xlsx" format files can be imported!',
addParameter: 'Add parameter',
copyParameter: 'Copy parameter',
editParameter: 'Edit parameter',
nameNullPlaceHolder: 'Parameter name not null',
keyNameNullPlaceHolder: 'Parameter key name not null',
keyValueNullPlaceHolder: 'Parameter key value not null',
updateSuccess: 'Modified successfully',
addSuccess: 'Successfully added',
deleteSuccess: 'Delete succeeded',
refreshSuccess: 'Refresh succeeded',
deleteShow: 'Are you sure to delete the data item with parameter {configIds}?',
sureExport: 'Are you sure you want to export all parameters of data items',
resultImport: 'Import results',
},
post: {
postCode: 'Post code',
postCodePlaceHolder: 'Please enter post code',
postName: 'Post name',
postNamePlaceHolder: 'Please enter post name',
status: 'Status',
postId: 'Post id',
postSort: 'Post sort',
createDate: 'Create date',
remark: 'Remark',
uploadText3: 'Whether to update existing data',
rulePostName: 'The post name cannot be empty',
rulePostCode: 'The post code cannot be empty',
rulePostSort: 'The post sort cannot be empty',
addPost: 'Add post',
copyPost: 'Copy post',
updatePost: 'Modified post',
updateSuccess: 'Successfully modified',
addSuccess: 'Added successfully',
deleteSuccess: 'Successfully deleted',
refreshSuccess: 'Refresh successfully',
warningShow: 'Warning',
deleteShow: 'Are you sure to delete the data item with the post number {postIds}?',
exportShow: 'Are you sure to export all post data items?',
infoShow: 'Info',
importTitle: 'Post import',
importResult: 'Import result',
},
dept: {
deptName: 'Department',
deptStatus: 'Status',
deptNamePlaceHolder: 'Please enter a department name',
deptNameNotEmpty: 'The department name cannot be empty',
deptStatusPlaceHolder: 'Please enter the department status',
parentDept: 'Superior departments',
parentDeptPlaceHolder: 'Select superior department',
parentDeptNotEmpty: 'The upper department cannot be empty',
deptCode: 'Department code',
deptCodePlaceholder: 'Please enter the department code',
deptCodeNotEmpty: 'The department code cannot be empty',
sort: 'Sort',
sortNotEmpty: 'Display sort cannot be empty',
personInCharge: 'Person in charge',
personInChargePlaceHolder: 'Please enter the person in charge',
telephone: 'Telephone',
telephonePlaceHolder: 'Please enter your telephone',
telephoneError: 'Please enter the correct mobile phone number',
email: 'Email',
emailPlaceHolder: 'Please enter email address',
emailError: 'Please enter the correct email address',
submit: 'Submit',
cancel: 'Cancel',
dragTips: 'Drag the file here, or',
upload: 'Click on the upload',
existingDepartmentTips: 'Whether to update existing department data',
downloadTemplate: 'Download the template',
importNote: 'Note: Only files in "XLS" or "XLSX" format can be imported!',
addDept: 'Add the department',
editDept: 'Modify the department',
editSuccess: 'Modify the success',
addSuccess: 'Add success',
warn: 'Warn',
removeDeptWarn: 'Are you sure to delete the data item whose name is {deptName}?',
removeSuccess: 'Delete the success',
exportNote: 'Verify that all department data items are exported?',
prompt: 'Prompt',
deptImport: 'The import department',
importResult: 'Import the results',
processingTips: 'In processing, please wait...',
},
defaultImage: {
imageId: 'Image id',
imageTitle: 'Title',
imageCategory: 'Category',
imageUrl: 'Image',
sort: 'Sort',
imageTitlePlaceHolder: 'Please enter the image title.',
imageCategoryPlaceHolder: 'Please select image category.',
statusPlaceHolder: 'Please select image status.',
addImageTitle: 'Add default image',
copyImageTitle: 'Copy default image',
modifyImageTitle: 'Modify default image',
imageTitleEmptyTips: 'Image title cannot be empty.',
imageCategoryEmptyTips: 'Image category cannot be empty.',
imageUrlEmptyTips: 'Image cannot be empty.',
sortEmptyTips: 'Sort cannot be empty.',
statusEmptyTips: 'Status cannot be empty.',
exportDefaultImageMessage: 'Are you sure to export all default image data?',
deleteDefaultImageMessage: 'Are you sure to delete the default image whose key is {ids}?'
},
registrationNotice: {
noticeId: 'Notice id',
noticeContent: 'Content',
sort: 'Sort',
statusPlaceHolder: 'Please select notice status.',
addTitle: 'Add registration notice',
copyTitle: 'Copy registration notice',
modifyTitle: 'Modify registration notice',
contentEmptyTips: 'Content cannot be empty.',
sortEmptyTips: 'Sort cannot be empty.',
statusEmptyTips: 'Status cannot be empty.',
exportRegistrationNoticeMessage: 'Are you sure to export all registration notice data?',
deleteRegistrationNoticeMessage: 'Are you sure to delete the registration notice whose key is {ids}?'
},
suppliter: {
reportCode: 'Report Code',
archiveCode: 'Place on file code',
status: 'Status',
companyCode: 'Company code',
companyName: 'Company name',
businessEntity: 'Business entity',
supplierCode: 'Supplier code',
supplierName: 'Supplier name',
supplierSort: 'Supplier sort',
supplierPhone: 'Supplier contact and phone',
supplierProduct: 'Supplier product/service',
reviewAddress: 'Review address',
reviewDate: 'Review date',
reviewer: 'Reviewer',
reviewScore: 'Review score',
reviewConclusion: 'Review conclusion',
reportCodePlaceHolder: 'Please enter the report code',
archiveCodePlaceHolder: 'Please enter the archive code',
},
},
basic: {
paymentMethod: {
paymentMethodId: 'Payment method id',
paymentMethodCode: 'Payment method code',
descText: 'Payment method desc',
actualDay: 'Actual day',
methodSort: 'Sort',
ebankingFlag: 'EBanking flag',
paymentMethodCodePlaceHolder: 'Please enter the payment method code.',
descTextPlaceHolder: 'Please enter the payment method desc.',
statusPlaceHolder: 'Please select payment method status.',
ebankingFlagPlaceHolder: 'Please select ebanking flag.',
addTitle: 'Add payment method',
copyTitle: 'Copy payment method',
modifyTitle: 'Modify payment method',
paymentMethodCodeEmptyTips: 'Payment method code cannot be empty.',
descTextEmptyTips: 'Payment method description cannot be empty.',
sortEmptyTips: 'Sort cannot be empty.',
statusEmptyTips: 'Status cannot be empty.',
ebankingFlagEmptyTips: 'EBanking flag cannot be empty.',
exportAllDataMessage: 'Are you sure to export all payment method data??',
deleteDataMessage: 'Are you sure to delete the payment method whose key is {ids}?',
importTitle: 'Import payment method',
importResult: 'Import result',
},
},
supplier: {
classchange: {
//
publish: 'publish',
query: 'search',
init: 'reset',
more: 'more',
normal: 'restore',
applicationNo: 'application No',
apnoPlaceHolder: 'please enter the application number',
vendorCode: 'supplier',
vcPlaceHolder: 'please enter supplier code',
optype: 'operation type',
optypePlaceHolder: 'please select an operation type',
//
columnApplicationNo: 'requisition no.',
columnVendorCode: 'supplier code',
columnVendorName: 'supplier name',
columnStatus: 'status',
columnApplicationReason: 'application reason',
columnOperationType: 'operation type',
columnChangeClassificationType: 'change classification type',
columnTargetClassificationName: 'target classification name',
columnCreateBy: 'creator',
columnCreateTime: 'creation date',
//
},
vendorclass: {
vendorClassCode: 'supplier classification code',
vendorClassDesc: 'supplier classification description',
vcCodePlaceHolder: 'please input supplier classification code!',
vcDescPlaceHolder: 'please input supplier classification description',
columnvcid: 'supplier classification ID',
columnvccode: 'supplier classification code',
columnvcdesc: 'supplier classification description',
columnpjx: 'rating item',
columnpfx: 'scoring item',
columnspx: 'approve item',
columnlv: 'hierarchy',
columnlydm: 'category domain code',
columndo: 'operation',
parentvc: 'parent supplier classification',
choiceParentVc: 'supplier classification',
industryFields: 'Category field code',
addVendorClass: 'new supplier classification',
editVendorClass: 'modify supplier classification',
vcCodeCannotBeEmpty: 'supplier classification code cannot be empty!',
vcDescCannotBeEmpty: 'supplier classification description cannot be empty!',
ParentIDNotEmpty: 'parent node cannot be empty!',
ParentIDNotSelf: 'the parent node cannot be its own!',
updateSuccess: 'supplier classification information modified successfully!',
addSuccess: 'adding supplier classification information succeeded!',
warningShow: 'Disable',
deleteSuccess: 'disabling supplier classification information succeeded!',
},
},
//招投标
tender: {
//招标类型定义
entrustmentTypes: {
biddingTypeCode: 'Bidding Type Code',
nameOfBiddingType: 'Name of Bidding Type',
status: 'Status',
showSort: 'According to the order',
pleaseEnterTheBiddingTypeCode: 'Please enter the bidding type code',
pleaseEnterTheBiddingTypeName: 'Please enter the bidding type name',
pleaseEnterBidTypeStatus: 'Please enter bid type status',
addTitle: 'Add bid type definition',
editTitle: 'Modify the definition of bidding type',
copyTitle: 'Copy the bid type definition',
addSuccess: 'New success',
editSuccess: 'Modify the success',
warning: 'Warning',
suerDeleteHeard: 'Are you sure to delete the data item with bid type codes "',
suerDeleteAfter: '"?',
sureExport: 'Are you sure to export all tender type definition data items?',
importTitle: 'Import bidding type information',
importResult: 'Import result',
showSortNotNull: 'The display order cannot be empty',
enterSort: 'Please enter display order',
BiddingTypeCodeNotNull: 'The bidding application type code cannot be empty',
},
//开标地点定义
openingPlaces: {
company: 'The company',
siteDescription: 'Site description',
address: 'Address',
status: 'Status',
companyCode: 'Company code',
companyName: 'The name of the company',
bidOpeningPlaceCode: 'Bid opening place code',
placeSort: 'According to the order',
pleaseEnterCompanyName: 'Please enter company name',
pleaseEnterLocationDescription: 'Please enter a location description',
pleaseEnterAddress: 'Please enter your address',
pleaseSelectStatus: 'Please select status',
pleaseEnterTheCompanyCode: 'Please enter the company code',
pleaseEnterTheBidOpeningPlaceCode: 'Please enter the bid opening place code',
pleaseEnterTheDisplayOrder: 'Please enter the display order',
pleaseEnterTheContent: 'Please enter the content',
placeNotNull: 'The bid opening place code cannot be blank',
placeSortNotNull: 'The display order cannot be empty',
addTitle: 'Add bid opening site definition',
updateTitle: 'Revised the definition of bid opening location',
copyTitle: 'Copy the bid opening place definition',
importTitle: 'Import bid opening location information',
glassTitle: 'Enterprise company',
glassLabelCode: 'Company code',
glassLabelName: 'Company name',
exportTip: 'Confirm that all bid opening site definition data items are exported?',
deleteHeardTip: 'Are you sure to delete the data item with bid opening place code ',
deleteAfterTip: '"?',
importResult: 'Import result',
searchTitle: 'Query conditions',
},
//评分要素定义
scoringElements: {
scoringElementCode: 'Scoring element code',
scoringElementName: 'Name of scoring Element',
status: 'Status',
showSort: 'According to the order',
gradingRules: 'Grading rules',
pleaseEnterTheScoringFactorCode: 'Please enter the scoring factor code',
pleaseEnterTheScoringElementName: 'Please enter the scoring element name',
pleaseSelectStatus: 'Please select status',
pleaseEnterTheDisplayOrder: 'Please enter the display order',
pleaseEnterTheContent: 'Please enter the content',
scoringElementCodeNotNull: 'The scoring element code cannot be empty',
statusNotNull: 'The state cannot be empty',
scoringElementNameNotNull: 'The scoring element name cannot be empty',
showSortNotNull: 'The display order cannot be empty',
addTitle: 'Add the scoring element definition',
copyTitle: 'Copy the scoring element definition',
updateTitle: 'Modify the definition of scoring elements',
deleteHeardTip: 'Are you sure you want to delete the score element definition code "',
deleteAfterTip: '"?',
importTitle: 'Import scoring element information',
exportTip: 'Are you sure you export all scoring factor definition data items?',
},
},
//采购品类代码
commodity: {
categories: {
purchaseCategoryCode: 'purchaseCategoryCode',
categoryNameId: 'categoryNameId',
uomCode: 'uomCode',
flexfieldInstanceId: 'flexfieldInstanceId',
categoryLevel: 'categoryLevel',
}
},
// 专家库
expert: {
// 专业领域
field: {
treeFilterKey: "Enter the keyword for filtering",
expertFieldName: "Name of professional field",
expertFieldCOde: "Professional coding",
major: "The first specialization",
fieldName: "Professional field",
fieldCode: "Domain name",
deleteShow: "Are you sure you want to delete the data item with domain name '{fndFlexValues}'?",
addTitle: "New areas of expertise",
updateTitle: "Modify domain information",
},
// 专业成果
achievements: {
achievementDesc: "Professional achievements (including but not limited to professional awards, professional papers, professional works, theories and cases)",
expertAchievements: "Professional achievements",
enterExpertAchievements: "Please enter professional achievements",
deleteShow: "Are you sure to delete the data item whose professional achievement is '{achievementsValues}'?",
addTitle: "Add professional achievement information",
updateTitle: "Modify professional achievement information",
},
// 职业履历
careers: {
startDate: "The time from",
selectStartDate: "Select time from",
endDate: "It's time to",
selectEndDate: "Selection time up",
workUnits: "Work units",
enterWorkUnits: "Please fill in your work unit",
position: "official academic credentials",
enterPosition: "Please fill in the highest degree",
professionalResume: "Professional resume",
deleteShow: "Are you sure you want to delete the data item whose highest degree is {apositionValues}?",
addTitle: "Add career resume information",
updateTitle: "Revise career resume information",
},
// 教育经历
education: {
startDate: "The time from",
selectStartDate: "Select time from",
endDate: "It's time to",
selectEndDate: "Selection time up",
educationInstitutionName: "A college, school or other institution",
enterEducationInstitutionName: "Please fill in college, school or other institution",
education: "Education experience",
enterEducation: "Please fill in your education experience",
degree: "A degree in",
enterDegree: "Please complete degree",
certificateAndLicense: "A license, license, or qualification",
enterCertificateAndLicense: "Please fill in license, permission or qualification",
referenceNo: "Certificate number",
enterReferenceNo: "Please fill in the certificate number",
highestDegreeFlag: "official academic credentials",
addTitle: "New Education Experience",
updateTitle: "Modify expert education experience",
},
// 专家信息
expertInfo: {
save: "save",
name: "The name",
sex: "sex",
selectSex: "Please select gender",
birthday: "Date of birth",
selectBirthday: "Choose your date of birth",
expertLevel: "The expert level",
expertType: "The expert type",
userName: "The child account",
registrationDate: "The registration date",
telephone: "Fixed telephone",
enterTelephone: "Please enter your landline number",
mobilePhone: "The mobile phone",
enterMobilePhone: "Please enter your mobile phone",
idType: "Document type",
enterIdType: "Please select the id type",
idCode: "ID Number",
enterIdCode: "Please enter your id number",
enterEmail: "ease enter the Email",
notExpertTip: "You are not registered as an expert! Unmaintainable!",
expertTypeNotNull: "The expert type cannot be empty",
mobilePhoneNotNull: "Mobile phones cannot be empty",
idTypeNotNull: "The id type cannot be empty",
emailNotNull: "Email cannot be empty",
idCodeNotNull: "The id number cannot be blank",
deleteShow: "'Are you sure to delete the data item with degree {degree}?'",
enterExpertLevel: "Please enter expert level",
enableSign: "Enable sign",
checkIdCode: "Please enter the correct ID number",
checkLandlineNumber: "Please enter the correct landline number",
checkEmail: "Please enter the correct email address",
checkPhone: "Please enter the correct mobile phone number",
},
// 历史招投标
historicalTenders: {
historicalTenders: "Participation in historical tenders",
entrustmentHeaderNumber: "Invitation for Bid No.",
title: "The bidding matters",
applyCompany: "To apply for company",
startDate: "Participation date from",
endDate: "Date of participation",
status: "status",
leaderMark: "The evaluation team leader",
},
// 附件上传
fileUpload: {
fileUpload: "The attachment upload",
uploadDelete: "Upload/Delete",
originalFileName: "Name of the attachment",
createBy: "The heir",
uploadTime: "Upload time",
addTitle: "Upload/delete attachments",
},
// 校验
startDateExceedEndDate: "The time cannot exceed the time to",
// 管理员列表页
adminList: {
fullName: "Experts name",
enterFullName: "Please enter the expert name",
selectExpertType: "Select an expert type",
enterUserName: "Please enter a subaccount",
expertName: "Experts name",
},
// 专家信息查询
selectExpertInfo: {
expertLevel: "The expert level",
mobilePhone: "The mobile phone",
enterMobilePhone: "Please enter your mobile phone",
registerDateFrom: "Registration date from",
enterRegisterDateFrom: "Please enter the registration date from",
registerDateTo: "Registration date to",
enterRegisterDateTo: "Please enter the registration date to",
enable: "To enable the",
},
},
}

53
src/lang/index.js Normal file
View File

@@ -0,0 +1,53 @@
import Vue from 'vue'
import VueI18n from 'vue-i18n'
import Cookies from 'js-cookie'
// Element UI组件的语言包
import elementEnLocale from 'element-ui/lib/locale/lang/en' // element-ui lang
import elementZhLocale from 'element-ui/lib/locale/lang/zh-CN' // element-ui lang
// Vxe表格组件的语言包
import vxeTableEnLocale from 'vxe-table/lib/locale/lang/en-US' // vxe-table lang
import vxeTableZhLocale from 'vxe-table/lib/locale/lang/zh-CN' // vxe-table lang
// 项目的语言包
import enLocale from './en'
import zhLocale from './zh'
Vue.use(VueI18n)
const messages = {
en: {
...enLocale,
...elementEnLocale,
...vxeTableEnLocale,
},
zh: {
...zhLocale,
...elementZhLocale,
...vxeTableZhLocale,
}
}
export function getLanguage() {
const chooseLanguage = Cookies.get('language')
if (chooseLanguage) return chooseLanguage
// if has not choose language
const language = (navigator.language || navigator.browserLanguage).toLowerCase()
const locales = Object.keys(messages)
for (const locale of locales) {
if (language.indexOf(locale) > -1) {
return locale
}
}
return 'en'
}
const i18n = new VueI18n({
// set locale
// options: en | zh | es
locale: getLanguage(),
// set locale messages
messages
})
export default i18n

2073
src/lang/zh.js Normal file

File diff suppressed because it is too large Load Diff