Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
smf-core
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 746e03c3
由
LN
编写于
2021-12-15 16:02:47 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
增加锡膏管理菜单。
语言设置接口修改。
1 个父辈
75385ef4
隐藏空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
136 行增加
和
51 行删除
src/main/java/com/neotel/smfcore/common/init/DataInitManager.java
src/main/java/com/neotel/smfcore/core/language/rest/LanguageMsgController.java
src/main/java/com/neotel/smfcore/core/language/rest/LanguageSetController.java
src/main/java/com/neotel/smfcore/core/language/service/bean/LanguageInfo.java
src/main/resources/messages.properties
src/main/resources/messages_en_US.properties
src/main/resources/messages_ja_JP.properties
src/main/resources/messages_zh_CN.properties
src/main/resources/messages_zh_TW.properties
src/main/java/com/neotel/smfcore/common/init/DataInitManager.java
查看文件 @
746e03c
...
...
@@ -204,6 +204,14 @@ public class DataInitManager {
Menu
msdSetting
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"msdSetting"
,
"MSD设置"
,
1
,
"msdSetting"
,
"neolight/msdSetting/index"
,
""
,
0
,
"MSDSet"
);
menus
.
addAll
(
createMenus
(
msd
,
msdManage
,
msdData
,
msdSetting
));
Menu
solderPaste
=
Menu
.
CreatePMenu
(
"锡膏管理"
,
20
,
"solderPaste"
,
2
,
"MSD"
);
Menu
solderPasteKanban
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"solderPasteKanban"
,
"设备概览"
,
1
,
"solderPasteKanban"
,
"neolight/solderPasteKanban/index"
,
""
,
0
,
"MSDManager"
);
Menu
solderPasteManage
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"solderPasteManage"
,
"库存"
,
1
,
"solderPasteManage"
,
"neolight/solderPasteManage/index"
,
""
,
0
,
"MSDManager"
);
Menu
solderPasteData
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"solderPasteData"
,
"追溯性"
,
1
,
"solderPasteData"
,
"neolight/solderPasteData/index"
,
""
,
0
,
"MSDData"
);
Menu
solderPasteSetting
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"solderPasteSetting"
,
"设置"
,
1
,
"solderPasteSetting"
,
"neolight/solderPasteSetting/index"
,
""
,
0
,
"MSDSet"
);
menus
.
addAll
(
createMenus
(
solderPaste
,
solderPasteKanban
,
solderPasteManage
,
solderPasteData
,
solderPasteSetting
));
//物料管理:元器件管理,条形码管理
Menu
pMenuWl
=
Menu
.
CreatePMenu
(
"档案管理"
,
30
,
"materiel "
,
2
,
"BOM"
);
Menu
menucom
=
new
Menu
(
new
ArrayList
<
Menu
>(),
1
,
"component:list"
,
"元器件"
,
1
,
"componentParts"
,
"parts/component/index"
,
""
,
0
,
"server"
);
...
...
src/main/java/com/neotel/smfcore/core/language/rest/LanguageMsgController.java
查看文件 @
746e03c
...
...
@@ -320,6 +320,12 @@ public class LanguageMsgController {
// if (!oldMsg.equals(msgStr)) {
if
(
ObjectUtil
.
isEmpty
(
oldMsg
)){
msg
.
setContent
(
lanCode
,
msgStr
);
//内容默认更改为中文
if
(
lanCode
.
equals
(
MessageUtils
.
ZH_CN
)){
if
(!
msg
.
getMsg
().
equals
(
msgStr
)){
msg
.
setMsg
(
msgStr
);
}
}
updateLanguageList
.
add
(
msg
);
languageMsgManager
.
save
(
msg
);
MessageUtils
.
updateMsg
(
msg
);
...
...
@@ -335,7 +341,7 @@ public class LanguageMsgController {
MessageUtils
.
updateMsg
(
msg
);
}
}
log
.
info
(
"导入资源["
+
orgFileName
+
"]["
+
type
+
"]["
+
lanCode
+
"]共更新["
+
updateLanguageList
.
size
()
+
"]条资源,新增["
+
newLanguageList
.
size
()
+
"]条资源"
);
log
.
info
(
"导入资源["
+
orgFileName
+
"]["
+
type
+
"]["
+
lanCode
+
"]
,共["
+
proMap
.
size
()+
"]条数据,
共更新["
+
updateLanguageList
.
size
()
+
"]条资源,新增["
+
newLanguageList
.
size
()
+
"]条资源"
);
return
"ok"
;
}
...
...
src/main/java/com/neotel/smfcore/core/language/rest/LanguageSetController.java
查看文件 @
746e03c
package
com
.
neotel
.
smfcore
.
core
.
language
.
rest
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.neotel.smfcore.common.exception.ValidateException
;
import
com.neotel.smfcore.common.utils.Constants
;
import
com.neotel.smfcore.common.utils.SecurityUtils
;
import
com.neotel.smfcore.core.device.util.DataCache
;
import
com.neotel.smfcore.core.language.service.bean.LanguageInfo
;
import
com.neotel.smfcore.core.language.util.MessageUtils
;
import
com.neotel.smfcore.security.rest.bean.dto.UserDto
;
import
com.neotel.smfcore.security.service.po.User
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.RequiredArgsConstructor
;
...
...
@@ -13,6 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.http.HttpStatus
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.ArrayList
;
...
...
@@ -29,15 +34,26 @@ public class LanguageSetController {
@Autowired
DataCache
dataCache
;
public
List
<
String
>
getAllLanList
()
{
public
List
<
LanguageInfo
>
getAllLanList
()
{
List
<
String
>
lanList
=
dataCache
.
getCache
(
Constants
.
CACHE_languageType
);
// List<String> lanList = dataCache.getCache(Constants.CACHE_languageType);
// if (lanList == null || lanList.size() <= 0) {
// lanList=new ArrayList<>();
// lanList.add(MessageUtils.ZH_CN);
// lanList.add(MessageUtils.ZH_TW);
// lanList.add(MessageUtils.EN_US);
// lanList.add(MessageUtils.JA_JP);
// dataCache.updateCache(Constants.CACHE_languageType, lanList);
// }
// return lanList;
List
<
LanguageInfo
>
lanList
=
dataCache
.
getCache
(
Constants
.
CACHE_languageType
);
if
(
lanList
==
null
||
lanList
.
size
()
<=
0
)
{
lanList
=
new
ArrayList
<>();
lanList
.
add
(
MessageUtils
.
ZH_CN
);
lanList
.
add
(
MessageUtils
.
ZH_TW
);
lanList
.
add
(
MessageUtils
.
EN_US
);
lanList
.
add
(
MessageUtils
.
JA_JP
);
lanList
.
add
(
new
LanguageInfo
(
MessageUtils
.
ZH_CN
,
"简体中文"
,
""
)
);
lanList
.
add
(
new
LanguageInfo
(
MessageUtils
.
ZH_TW
,
"简体中文"
,
""
)
);
lanList
.
add
(
new
LanguageInfo
(
MessageUtils
.
EN_US
,
"简体中文"
,
""
)
);
lanList
.
add
(
new
LanguageInfo
(
MessageUtils
.
JA_JP
,
"简体中文"
,
""
)
);
dataCache
.
updateCache
(
Constants
.
CACHE_languageType
,
lanList
);
}
return
lanList
;
...
...
@@ -46,70 +62,69 @@ public class LanguageSetController {
@ApiOperation
(
"获取语言列表"
)
@GetMapping
@PreAuthorize
(
"@el.check('translation')"
)
public
List
<
String
>
getList
(){
public
List
<
LanguageInfo
>
getList
(){
return
getAllLanList
();
}
@ApiOperation
(
"新增语言"
)
@PostMapping
@PreAuthorize
(
"@el.check('translation')"
)
public
ResponseEntity
<
Object
>
create
(
@RequestBody
String
languageType
)
{
public
ResponseEntity
<
Object
>
create
(
@RequestBody
LanguageInfo
newLan
)
{
//判断是否是admin
String
userName
=
SecurityUtils
.
getCurrentUsername
();
if
(!
userName
.
equals
(
Constants
.
SUPER_USERNAME
))
{
throw
new
ValidateException
(
"smfcode.noLanguageSetAccess"
,
"没有编辑语言的权限"
);
String
userName
=
SecurityUtils
.
getCurrentUsername
();
if
(!
userName
.
equals
(
Constants
.
SUPER_USERNAME
))
{
throw
new
ValidateException
(
"smfcode.noLanguageSetAccess"
,
"没有编辑语言的权限"
);
}
if
(
languageType
==
null
)
{
throw
new
ValidateException
(
"smfcode.languageCanotNull"
,
"语言类型不能为空"
);
if
(
newLan
==
null
||
ObjectUtil
.
isEmpty
(
newLan
.
getLanCode
())
||
ObjectUtil
.
isEmpty
(
newLan
.
getLanName
()))
{
throw
new
ValidateException
(
"smfcode.languageCanotNull"
,
"语言类型不能为空"
);
}
List
<
String
>
languageTypeList
=
getAllLanList
();
if
(!
languageTypeList
.
contains
(
languageType
)){
log
.
info
(
"用户["
+
SecurityUtils
.
getCurrentUsername
()+
"] 新增语言:"
+
languageType
);
languageTypeList
.
add
(
languageType
);
dataCache
.
updateCache
(
Constants
.
CACHE_languageType
,
languageTypeList
);
List
<
LanguageInfo
>
languageTypeList
=
getAllLanList
();
for
(
LanguageInfo
lan
:
languageTypeList
)
{
if
(
lan
.
getLanCode
().
equals
(
newLan
.
getLanCode
()))
{
throw
new
ValidateException
(
"smfcode.languageAlreadyExist "
,
"语言[{0}]已存在"
,
new
String
[]{
newLan
.
getLanCode
()});
}
}
log
.
info
(
"用户["
+
SecurityUtils
.
getCurrentUsername
()
+
"] 新增语言:"
+
newLan
.
getLanCode
()
+
","
+
newLan
.
getLanName
());
languageTypeList
.
add
(
newLan
);
dataCache
.
updateCache
(
Constants
.
CACHE_languageType
,
languageTypeList
);
return
new
ResponseEntity
<>(
HttpStatus
.
CREATED
);
}
@ApiOperation
(
"删除指定语言"
)
@DeleteMapping
@PreAuthorize
(
"@el.check('translation')"
)
public
ResponseEntity
<
Object
>
delete
(
@RequestBody
Set
<
String
>
lan
guageTyp
es
)
{
public
ResponseEntity
<
Object
>
delete
(
@RequestBody
Set
<
String
>
lan
Cod
es
)
{
//判断是否是admin
String
userName
=
SecurityUtils
.
getCurrentUsername
();
if
(!
userName
.
equals
(
Constants
.
SUPER_USERNAME
))
{
throw
new
ValidateException
(
"smfcode.noLanguageSetAccess"
,
"没有编辑语言的权限"
);
}
List
<
String
>
languageTypeList
=
getAllLanList
();
for
(
String
type
:
lan
guageTyp
es
)
{
List
<
LanguageInfo
>
languageTypeList
=
getAllLanList
();
for
(
String
type
:
lan
Cod
es
)
{
if
(
type
==
null
)
{
throw
new
ValidateException
(
"smfcode.languageCanotNull"
,
"语言类型不能为空"
);
}
languageTypeList
.
remove
(
type
);
log
.
info
(
"用户["
+
SecurityUtils
.
getCurrentUsername
()+
"] 删除语言:"
+
type
);
}
List
<
LanguageInfo
>
newList
=
new
ArrayList
<>();
for
(
LanguageInfo
lan
:
languageTypeList
)
{
if
(
lanCodes
.
contains
(
lan
.
getLanCode
())){
log
.
info
(
"用户["
+
SecurityUtils
.
getCurrentUsername
()+
"] 删除语言:"
+
lan
.
getLanCode
());
}
else
{
newList
.
add
(
lan
);
}
}
if
(
languageTypeList
==
null
||
languageType
List
.
size
()
<=
0
)
{
if
(
newList
==
null
||
new
List
.
size
()
<=
0
)
{
throw
new
ValidateException
(
"smfcode.languageCanotRemoveAll"
,
"不能删除所有语言"
);
}
dataCache
.
updateCache
(
Constants
.
CACHE_languageType
,
languageType
List
);
dataCache
.
updateCache
(
Constants
.
CACHE_languageType
,
new
List
);
return
new
ResponseEntity
<>(
HttpStatus
.
OK
);
}
// @ApiOperation("修改语言列表")
// @PostMapping
// @PreAuthorize("@el.check('translation')")
// public ResultBean create(@RequestBody List<String> languageTypeList) {
// if(languageTypeList==null||languageTypeList.size()<=0){
// throw new ValidateException("smfcode.languageCanotNull","语言类型不能为空" );
// }
//
// //判断是否是admin
// String userName= SecurityUtils.getCurrentUsername();
// if(!userName.equals(Constants.SUPER_USERNAME)){
// throw new ValidateException("smfcode.noLanguageSetAccess","没有修改语言的权限");
// }
// dataCache.updateCache(Constants.CACHE_languageType, languageTypeList);
//
// return ResultBean.newOkResult("ok");
// }
}
src/main/java/com/neotel/smfcore/core/language/service/bean/LanguageInfo.java
0 → 100644
查看文件 @
746e03c
package
com
.
neotel
.
smfcore
.
core
.
language
.
service
.
bean
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
LanguageInfo
implements
Serializable
{
/**
* 语言简码:zh-CN,zh-TW 等
*/
@ApiModelProperty
(
"语言简码:zh-CN,zh-TW 等"
)
private
String
lanCode
;
/**
* 语言名称:简体中文,繁体中文 等
*/
@ApiModelProperty
(
"语言名称:简体中文,繁体中文 等"
)
private
String
lanName
;
/**
* 语言图标
*/
@ApiModelProperty
(
"语言图标"
)
private
String
icon
;
}
src/main/resources/messages.properties
查看文件 @
746e03c
...
...
@@ -142,4 +142,9 @@ smfcore.msdSetting=MSD\u8BBE\u7F6E
smfcore.translation
=
\u
8D44
\u
6E90
\u
7FFB
\u
8BD1
smfcode.languageCanotNull
=
\u
8BED
\u
8A00
\u
7C7B
\u
578B
\u
4E0D
\u
80FD
\u
4E3A
\u
7A7A
smfcode.noLanguageSetAccess
=
\u
6CA1
\u6709\u
7F16
\u
8F91
\u
8BED
\u
8A00
\u7684\u6743\u9650
smfcode.languageCanotRemoveAll
=
\u
4E0D
\u
80FD
\u5220\u9664\u6240\u6709\u
8BED
\u
8A00
\ No newline at end of file
smfcode.languageCanotRemoveAll
=
\u
4E0D
\u
80FD
\u5220\u9664\u6240\u6709\u
8BED
\u
8A00
smfcore.solderPaste
=
\u9521\u
818F
\u
7BA1
\u7406
smfcore.solderPasteKanban
=
\u
8BBE
\u5907\u6982\u
89C8
smfcore.solderPasteManage
=
\u
5E93
\u
5B58
smfcore.solderPasteData
=
\u
8FFD
\u
6EAF
\u6027
smfcore.solderPasteSetting
=
\u
8BBE
\u
7F6E
\ No newline at end of file
src/main/resources/messages_en_US.properties
查看文件 @
746e03c
...
...
@@ -11,7 +11,7 @@ smfcode.temperatureValueError=Humidity range error
smfcode.temperatureShowValueError
=
Humidity display range error
smfcode.notActivated
=
Account not activated
smfcode.userInfoError
=
Incomplete user information
Smfcode.
N
oaccess
=
No permission to modify
smfcode.n
oaccess
=
No permission to modify
smfcode.notSelRole
=
Please select a role to modify
smfcode.posIsused
=
SMD BOX [{1}] Position[{0}] has material [{2}], deletion failed
smfcode.thePosIsused
=
Position [{0}] has material [{1}], deletion failed
...
...
@@ -143,3 +143,8 @@ smfcore.translation=Resource Translation
smfcode.languageCanotNull
=
Language type cannot be empty
smfcode.noLanguageSetAccess
=
No permission to edit the language
smfcode.languageCanotRemoveAll
=
Cannot delete all languages
smfcore.solderPaste
=
Solder Paste Management
smfcore.solderPasteKanban
=
Equipment Overview
smfcore.solderPasteManage
=
Inventory
smfcore.solderPasteData
=
Traceability
smfcore.solderPasteSetting
=
Setting
src/main/resources/messages_ja_JP.properties
查看文件 @
746e03c
...
...
@@ -5,8 +5,8 @@ smfcode.valueNotExist={0}[{1}]\u304C\u5B58\u5728\u3057\u307E\u305B\u3093
smfcode.fileToLong
=
\u
30D5
\u
30A1
\u
30A4
\u
30EB
\u
8D85
\u
904E
\u
30B5
\u
30A4
\u
30BA
smfcode.fileError
=
\u
30D5
\u
30A1
\u
30A4
\u
30EB
\u
306E
\u
30D1
\u
30FC
\u
30B7
\u
30F3
\u
30B0
\u
306B
\u5931\u6557\u3057\u
307E
\u3057\u
305F
smfcode.valueNotFind
=
\u
898B
\u3064\u
304B
\u
308A
\u
307E
\u
305B
\u3093\u3067\u3057\u
305F{0}[{1}]
smfcode.hu
d
idityValueError
=
\u
6E29
\u
5EA6
\u
7BC4
\u
56F2
\u
30C7
\u
30FC
\u
30BF
\u
30A8
\u
30E9
\u
30FC
smfcode.hu
d
idityShowValueError
=
\u
6E29
\u
5EA6
\u8868\u
793A
\u
7BC4
\u
56F2
\u
30C7
\u
30FC
\u
30BF
\u
30A8
\u
30E9
\u
30FC
smfcode.hu
m
idityValueError
=
\u
6E29
\u
5EA6
\u
7BC4
\u
56F2
\u
30C7
\u
30FC
\u
30BF
\u
30A8
\u
30E9
\u
30FC
smfcode.hu
m
idityShowValueError
=
\u
6E29
\u
5EA6
\u8868\u
793A
\u
7BC4
\u
56F2
\u
30C7
\u
30FC
\u
30BF
\u
30A8
\u
30E9
\u
30FC
smfcode.temperatureValueError
=
\u
6E7F
\u
5EA6
\u
7BC4
\u
56F2
\u
30C7
\u
30FC
\u
30BF
\u
30A8
\u
30E9
\u
30FC
smfcode.temperatureShowValueError
=
\u
6E7F
\u
5EA6
\u
306E
\u8868\u
793A
\u
7BC4
\u
56F2
\u
30C7
\u
30FC
\u
30BF
\u
30A8
\u
30E9
\u
30FC
smfcode.notActivated
=
\u
30A2
\u
30AB
\u
30A6
\u
30F3
\u
30C8
\u
304C
\u6709\u
52B9
\u
306B
\u
306A
\u3063\u3066\u3044\u
306A
\u3044
...
...
@@ -35,7 +35,7 @@ smfcode.error.barcode.noValidCode=\u7121\u52B9\u306A\u30D0\u30FC\u30B3\u30FC\u30
smfcore.error.barcode.noValidCode
=
{0}
\u
306F
\u6709\u
52B9
\u
306A
\u
30D0
\u
30FC
\u
30B3
\u
30FC
\u
30C9
\u3067\u
306F
\u3042\u
308A
\u
307E
\u
305B
\u3093
smfcode.error.barcode.executing
=
\u
30D0
\u
30FC
\u
30B3
\u
30FC
\u
30C9 [{0}}]
\u
30BF
\u
30B9
\u
30AF
\u
304C
\u
5B9F
\u
884C
\u3055\u
308C
\u3066\u3044\u
307E
\u3059
smfcode.error.pos.notExist
=
[{0}]
\u
306E
\u
30DD
\u
30B8
\u
30B7
\u
30E7
\u
30F3
\u
304C
\u
5B58
\u5728\u3057\u
306A
\u3044\u
305F
\u3081\u3001\u5165\u
529B
\u3067\u
304D
\u
307E
\u
305B
\u3093
smfcode.error.pos.
copse
=
\u
30D9
\u
30A4[{0}]
\u
306F
\u
30D3
\u
30F3[{1}]
\u3068\u
4E00
\u
81F4
\u3057\u
306A
\u3044\u
305F
\u3081\u3001\u
30B9
\u
30C8
\u
30C3
\u
30AF
\u3067\u
304D
\u
307E
\u
305B
\u3093
smfcode.error.pos.
wrong
=
\u
30D9
\u
30A4[{0}]
\u
306F
\u
30D3
\u
30F3[{1}]
\u3068\u
4E00
\u
81F4
\u3057\u
306A
\u3044\u
305F
\u3081\u3001\u
30B9
\u
30C8
\u
30C3
\u
30AF
\u3067\u
304D
\u
307E
\u
305B
\u3093
smfcode.error.pos.hasReel
=
\u6750\u6599\u
306F
\u
65E2
\u
306B
\u
30D3
\u
30F3[{0}]
\u
306B
\u5165\u3063\u3066\u
304A
\u
308A
\u3001\u5165\u
529B
\u3067\u
304D
\u
307E
\u
305B
\u3093
smfcode.error.pos.sizeNotMatch
=
\u
30D1
\u
30EC
\u
30C3
\u
30C8[{0}]
\u
306E
\u
30B5
\u
30A4
\u
30BA
\u
304C
\u
53CE
\u
7D0D
\u
30B9
\u
30DA
\u
30FC
\u
30B9[{1}][{2}]
\u
306E
\u
30B5
\u
30A4
\u
30BA
\u
306B
\u
5BFE
\u
5FDC
\u3057\u3066\u
304A
\u3089\u
305A
\u3001\u
53CE
\u
7D0D
\u3067\u
304D
\u
307E
\u
305B
\u3093
smfcode.error.storage.offline
=
\u
30D3
\u
30F3 [{0}]
\u
30AA
\u
30D5
\u
30E9
\u
30A4
\u
30F3
...
...
@@ -142,4 +142,9 @@ smfcore.msdSetting=MSD\u8BBE\u7F6E
smfcore.translation
=
\u
30EA
\u
30BD
\u
30FC
\u
30B9
\u
306E
\u
7FFB
\u
8A33
smfcode.languageCanotNull
=
\u
8A00
\u
8A9E
\u
30BF
\u
30A4
\u
30D7
\u
306F
\u
7A7A
\u3067\u
306F
\u3042\u
308A
\u
307E
\u
305B
\u3093
smfcode.noLanguageSetAccess
=
\u
8A00
\u
8A9E
\u3092\u
7DE8
\u
96C6
\u3059\u
308B
\u
6A29
\u9650\u
304C
\u
306A
\u3044
smfcode.languageCanotRemoveAll
=
\u3059\u3079\u3066\u
306E
\u
8A00
\u
8A9E
\u3092\u
524A
\u9664\u3067\u
304D
\u
306A
\u3044
\ No newline at end of file
smfcode.languageCanotRemoveAll
=
\u3059\u3079\u3066\u
306E
\u
8A00
\u
8A9E
\u3092\u
524A
\u9664\u3067\u
304D
\u
306A
\u3044
smfcore.solderPaste
=
\u9521\u
818F
\u
7BA1
\u7406
smfcore.solderPasteKanban
=
\u
8BBE
\u5907\u6982\u
89C8
smfcore.solderPasteManage
=
\u
5E93
\u
5B58
smfcore.solderPasteData
=
\u
8FFD
\u
6EAF
\u6027
smfcore.solderPasteSetting
=
\u
8BBE
\u
7F6E
\ No newline at end of file
src/main/resources/messages_zh_CN.properties
查看文件 @
746e03c
...
...
@@ -142,4 +142,9 @@ smfcore.msdSetting=MSD\u8BBE\u7F6E
smfcore.translation
=
\u
8D44
\u
6E90
\u
7FFB
\u
8BD1
smfcode.languageCanotNull
=
\u
8BED
\u
8A00
\u
7C7B
\u
578B
\u
4E0D
\u
80FD
\u
4E3A
\u
7A7A
smfcode.noLanguageSetAccess
=
\u
6CA1
\u6709\u
7F16
\u
8F91
\u
8BED
\u
8A00
\u7684\u6743\u9650
smfcode.languageCanotRemoveAll
=
\u
4E0D
\u
80FD
\u5220\u9664\u6240\u6709\u
8BED
\u
8A00
\ No newline at end of file
smfcode.languageCanotRemoveAll
=
\u
4E0D
\u
80FD
\u5220\u9664\u6240\u6709\u
8BED
\u
8A00
smfcore.solderPaste
=
\u9521\u
818F
\u
7BA1
\u7406
smfcore.solderPasteKanban
=
\u
8BBE
\u5907\u6982\u
89C8
smfcore.solderPasteManage
=
\u
5E93
\u
5B58
smfcore.solderPasteData
=
\u
8FFD
\u
6EAF
\u6027
smfcore.solderPasteSetting
=
\u
8BBE
\u
7F6E
\ No newline at end of file
src/main/resources/messages_zh_TW.properties
查看文件 @
746e03c
...
...
@@ -142,4 +142,9 @@ smfcore.msdSetting=MSD\u8A2D\u7F6E
smfcore.translation
=
\u
8CC7
\u
6E90
\u
7FFB
\u
8B6F
smfcode.languageCanotNull
=
\u
8A9E
\u
8A00
\u
985E
\u
578B
\u
4E0D
\u
80FD
\u
70BA
\u
7A7A
smfcode.noLanguageSetAccess
=
\u
6C92
\u6709\u
7DE8
\u
8F2F
\u
8A9E
\u
8A00
\u7684\u
6B0A
\u9650
smfcode.languageCanotRemoveAll
=
\u
4E0D
\u
80FD
\u
522A
\u9664\u6240\u6709\u
8A9E
\u
8A00
\ No newline at end of file
smfcode.languageCanotRemoveAll
=
\u
4E0D
\u
80FD
\u
522A
\u9664\u6240\u6709\u
8A9E
\u
8A00
smfcore.solderPaste
=
\u
932B
\u
818F
\u
7BA1
\u7406
smfcore.solderPasteKanban
=
\u
8A2D
\u5099\u6982\u
89BD
smfcore.solderPasteManage
=
\u
5EAB
\u
5B58
smfcore.solderPasteData
=
\u
8FFD
\u
6EAF
\u6027
smfcore.solderPasteSetting
=
\u
8A2D
\u
7F6E
\ No newline at end of file
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论