Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
孙克
/
ACSingleStore
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 173c9a22
由
刘韬
编写于
2022-01-07 15:01:35 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
完成SMF服务端多语言
1 个父辈
0181f10e
显示空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
84 行增加
和
78 行删除
source/ACSingleStore/FrmLanguare.Designer.cs
source/ACSingleStore/FrmLanguare.cs
source/ACSingleStore/Properties/AssemblyInfo.cs
source/ACSingleStore/ResourceCulture.cs
source/ACSingleStore/useControl/uc_boxdebug.cs
source/Common/util/SMF.cs
source/ACSingleStore/FrmLanguare.Designer.cs
查看文件 @
173c9a2
...
...
@@ -30,9 +30,7 @@
{
this
.
btnCancel
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
btnOk
=
new
System
.
Windows
.
Forms
.
Button
();
this
.
rbtnEnglish
=
new
System
.
Windows
.
Forms
.
RadioButton
();
this
.
rbtnChina
=
new
System
.
Windows
.
Forms
.
RadioButton
();
this
.
rbtnJapanese
=
new
System
.
Windows
.
Forms
.
RadioButton
();
this
.
flowLayoutPanel1
=
new
System
.
Windows
.
Forms
.
FlowLayoutPanel
();
this
.
SuspendLayout
();
//
// btnCancel
...
...
@@ -40,10 +38,11 @@
this
.
btnCancel
.
Anchor
=
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
;
this
.
btnCancel
.
FlatStyle
=
System
.
Windows
.
Forms
.
FlatStyle
.
Flat
;
this
.
btnCancel
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
14.25F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
btnCancel
.
Location
=
new
System
.
Drawing
.
Point
(
238
,
187
);
this
.
btnCancel
.
Location
=
new
System
.
Drawing
.
Point
(
311
,
88
);
this
.
btnCancel
.
Name
=
"btnCancel"
;
this
.
btnCancel
.
Size
=
new
System
.
Drawing
.
Size
(
122
,
45
);
this
.
btnCancel
.
TabIndex
=
283
;
this
.
btnCancel
.
Tag
=
"取消"
;
this
.
btnCancel
.
Text
=
"取消"
;
this
.
btnCancel
.
UseVisualStyleBackColor
=
false
;
this
.
btnCancel
.
Click
+=
new
System
.
EventHandler
(
this
.
btnCancel_Click
);
...
...
@@ -53,67 +52,37 @@
this
.
btnOk
.
Anchor
=
System
.
Windows
.
Forms
.
AnchorStyles
.
Top
;
this
.
btnOk
.
FlatStyle
=
System
.
Windows
.
Forms
.
FlatStyle
.
Flat
;
this
.
btnOk
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
14.25F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
btnOk
.
Location
=
new
System
.
Drawing
.
Point
(
77
,
187
);
this
.
btnOk
.
Location
=
new
System
.
Drawing
.
Point
(
311
,
21
);
this
.
btnOk
.
Name
=
"btnOk"
;
this
.
btnOk
.
Size
=
new
System
.
Drawing
.
Size
(
122
,
45
);
this
.
btnOk
.
TabIndex
=
282
;
this
.
btnOk
.
Tag
=
"确定"
;
this
.
btnOk
.
Text
=
"确定"
;
this
.
btnOk
.
UseVisualStyleBackColor
=
false
;
this
.
btnOk
.
Click
+=
new
System
.
EventHandler
(
this
.
btnOk_Click
);
//
//
rbtnEnglish
//
flowLayoutPanel1
//
this
.
rbtnEnglish
.
AutoSize
=
true
;
this
.
rbtnEnglish
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
12F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
rbtnEnglish
.
Location
=
new
System
.
Drawing
.
Point
(
198
,
84
);
this
.
rbtnEnglish
.
Name
=
"rbtnEnglish"
;
this
.
rbtnEnglish
.
Size
=
new
System
.
Drawing
.
Size
(
60
,
25
);
this
.
rbtnEnglish
.
TabIndex
=
281
;
this
.
rbtnEnglish
.
TabStop
=
true
;
this
.
rbtnEnglish
.
Text
=
"英语"
;
this
.
rbtnEnglish
.
UseVisualStyleBackColor
=
true
;
//
// rbtnChina
//
this
.
rbtnChina
.
AutoSize
=
true
;
this
.
rbtnChina
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
12F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
rbtnChina
.
Location
=
new
System
.
Drawing
.
Point
(
198
,
39
);
this
.
rbtnChina
.
Name
=
"rbtnChina"
;
this
.
rbtnChina
.
Size
=
new
System
.
Drawing
.
Size
(
60
,
25
);
this
.
rbtnChina
.
TabIndex
=
280
;
this
.
rbtnChina
.
TabStop
=
true
;
this
.
rbtnChina
.
Text
=
"中文"
;
this
.
rbtnChina
.
UseVisualStyleBackColor
=
true
;
//
// rbtnJapanese
//
this
.
rbtnJapanese
.
AutoSize
=
true
;
this
.
rbtnJapanese
.
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
12F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
)));
this
.
rbtnJapanese
.
Location
=
new
System
.
Drawing
.
Point
(
198
,
130
);
this
.
rbtnJapanese
.
Name
=
"rbtnJapanese"
;
this
.
rbtnJapanese
.
Size
=
new
System
.
Drawing
.
Size
(
76
,
25
);
this
.
rbtnJapanese
.
TabIndex
=
281
;
this
.
rbtnJapanese
.
TabStop
=
true
;
this
.
rbtnJapanese
.
Text
=
"日本語"
;
this
.
rbtnJapanese
.
UseVisualStyleBackColor
=
true
;
this
.
flowLayoutPanel1
.
FlowDirection
=
System
.
Windows
.
Forms
.
FlowDirection
.
TopDown
;
this
.
flowLayoutPanel1
.
Location
=
new
System
.
Drawing
.
Point
(
34
,
21
);
this
.
flowLayoutPanel1
.
Name
=
"flowLayoutPanel1"
;
this
.
flowLayoutPanel1
.
Size
=
new
System
.
Drawing
.
Size
(
219
,
167
);
this
.
flowLayoutPanel1
.
TabIndex
=
284
;
//
// FrmLanguare
//
this
.
AutoScaleDimensions
=
new
System
.
Drawing
.
SizeF
(
7F
,
17F
);
this
.
AutoScaleMode
=
System
.
Windows
.
Forms
.
AutoScaleMode
.
Font
;
this
.
ClientSize
=
new
System
.
Drawing
.
Size
(
456
,
274
);
this
.
ClientSize
=
new
System
.
Drawing
.
Size
(
456
,
221
);
this
.
Controls
.
Add
(
this
.
flowLayoutPanel1
);
this
.
Controls
.
Add
(
this
.
btnCancel
);
this
.
Controls
.
Add
(
this
.
btnOk
);
this
.
Controls
.
Add
(
this
.
rbtnJapanese
);
this
.
Controls
.
Add
(
this
.
rbtnEnglish
);
this
.
Controls
.
Add
(
this
.
rbtnChina
);
this
.
MaximizeBox
=
false
;
this
.
MinimizeBox
=
false
;
this
.
Name
=
"FrmLanguare"
;
this
.
Text
=
"语言设置"
;
this
.
Load
+=
new
System
.
EventHandler
(
this
.
FrmLanguare_Load
);
this
.
ResumeLayout
(
false
);
this
.
PerformLayout
();
}
...
...
@@ -121,8 +90,6 @@
private
System
.
Windows
.
Forms
.
Button
btnCancel
;
private
System
.
Windows
.
Forms
.
Button
btnOk
;
private
System
.
Windows
.
Forms
.
RadioButton
rbtnEnglish
;
private
System
.
Windows
.
Forms
.
RadioButton
rbtnChina
;
private
System
.
Windows
.
Forms
.
RadioButton
rbtnJapanese
;
private
System
.
Windows
.
Forms
.
FlowLayoutPanel
flowLayoutPanel1
;
}
}
\ No newline at end of file
source/ACSingleStore/FrmLanguare.cs
查看文件 @
173c9a2
...
...
@@ -23,20 +23,28 @@ namespace OnlineStore.ACSingleStore
{
LanguageProcess
();
LanguagePro
();
if
(
ResourceCulture
.
CurrLanguage
.
Equals
(
ResourceCulture
.
English
))
{
rbtnEnglish
.
Checked
=
true
;
}
else
if
(
ResourceCulture
.
CurrLanguage
.
Equals
(
ResourceCulture
.
Japanese
))
{
rbtnJapanese
.
Checked
=
true
;
loadLanglist
(
ResourceCulture
.
CurrLanguage
);
}
else
void
loadLanglist
(
string
currnetlang
)
{
var
LangList
=
ResourceCulture
.
GetLangList
();
flowLayoutPanel1
.
Controls
.
Clear
();
foreach
(
var
l
in
LangList
.
ToArray
())
{
RadioButton
radioButton
=
new
RadioButton
()
{
rbtnChina
.
Checked
=
true
;
AutoSize
=
true
,
Font
=
new
System
.
Drawing
.
Font
(
"微软雅黑"
,
12F
,
System
.
Drawing
.
FontStyle
.
Regular
,
System
.
Drawing
.
GraphicsUnit
.
Point
,
((
byte
)(
134
))),
Tag
=
l
.
Key
,
Text
=
l
.
Value
,
UseVisualStyleBackColor
=
true
,
Checked
=
(
currnetlang
.
ToLower
()
==
l
.
Key
.
ToLower
())
};
flowLayoutPanel1
.
Controls
.
Add
(
radioButton
);
}
}
private
void
btnCancel_Click
(
object
sender
,
EventArgs
e
)
{
this
.
Close
();
...
...
@@ -44,6 +52,8 @@ namespace OnlineStore.ACSingleStore
private
void
btnOk_Click
(
object
sender
,
EventArgs
e
)
{
string
str
=
flowLayoutPanel1
.
Controls
.
Cast
<
RadioButton
>().
Where
((
c
)
=>
{
return
c
.
Checked
;
}).
First
().
Tag
.
ToString
();
/*
string str = ConfigAppSettings.GetValue(Setting_Init.Default_Language);
if (rbtnEnglish.Checked)
{
...
...
@@ -55,7 +65,7 @@ namespace OnlineStore.ACSingleStore
}else
{
str = ResourceCulture.China;
}
}
*/
ResourceCulture
.
SetCurrentCulture
(
str
);
ConfigAppSettings
.
SaveValue
(
Setting_Init
.
Default_Language
,
str
);
this
.
Close
();
...
...
source/ACSingleStore/Properties/AssemblyInfo.cs
查看文件 @
173c9a2
...
...
@@ -9,7 +9,7 @@ using System.Runtime.InteropServices;
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("SO951-HC-ACSingleStore
3f972f3f1ae8ddd17dbf3847e26af0a0b4e1f8b2
")]
[assembly: AssemblyProduct("SO951-HC-ACSingleStore
0181f10ea5b20d7bff31acc620be9cb216488e56
")]
[assembly: AssemblyCopyright("Copyright ? 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
...
...
source/ACSingleStore/ResourceCulture.cs
查看文件 @
173c9a2
...
...
@@ -60,9 +60,7 @@ namespace OnlineStore
{
Task
.
Delay
(
10
*
1000
).
Wait
();
var
lngjson
=
JsonHelper
.
SerializeObject
(
ResourceMap
);
var
insertindex
=
lngjson
.
IndexOf
(
"{"
);
lngjson
=
lngjson
.
Insert
(
insertindex
+
1
,
"\"type\": \"siso\","
);
if
(
SMF
.
UploadJsonData
(
"/api/translation/resource"
,
lngjson
,
out
SmfResult
smfResult
))
if
(
SMF
.
UploadLangJsonData
(
lngjson
,
out
SmfResult
smfResult
))
{
LogUtil
.
info
(
"语言资源上传成功"
);
}
...
...
@@ -91,9 +89,10 @@ namespace OnlineStore
});
}
}
private
static
char
spilt
=
'\t'
;
private
static
string
rPath
=
Application
.
StartupPath
+
@"\resources\"
;
private
static
void
LoadData
(
bool
loadserverdir
=
false
)
private
static
void
LoadData
(
bool
loadserverdir
=
false
)
{
string
loadpath
=
rPath
;
if
(
loadserverdir
)
...
...
@@ -103,7 +102,8 @@ namespace OnlineStore
{
Dictionary
<
string
,
string
>
lngMap
;
var
lngname
=
Path
.
GetFileNameWithoutExtension
(
lngresfile
);
if
(!
ResourceMap
.
ContainsKey
(
lngname
))
{
if
(!
ResourceMap
.
ContainsKey
(
lngname
))
{
ResourceMap
.
Add
(
lngname
,
new
Dictionary
<
string
,
string
>());
}
lngMap
=
ResourceMap
[
lngname
];
...
...
@@ -124,14 +124,10 @@ namespace OnlineStore
lngMap
.
Add
(
key
,
value
);
}
}
}
}
public
static
Dictionary
<
string
,
string
>
LangName
=
new
Dictionary
<
string
,
string
>()
{
static
Dictionary
<
string
,
string
>
LangName
=
new
Dictionary
<
string
,
string
>()
{
{
"zh-CN"
,
"简体中文"
},
{
"zh-TW"
,
"繁體中文"
},
{
"en-US"
,
"English"
},
...
...
@@ -140,6 +136,21 @@ namespace OnlineStore
{
"de-DE"
,
"Deutsche"
},
};
public
static
Dictionary
<
string
,
string
>
GetLangList
()
{
Dictionary
<
string
,
string
>
LangList
=
new
Dictionary
<
string
,
string
>();
foreach
(
var
v
in
LangName
)
{
if
(
ResourceMap
.
ContainsKey
(
v
.
Key
))
{
if
(!
LangList
.
ContainsKey
(
v
.
Key
))
LangList
.
Add
(
v
.
Key
,
v
.
Value
);
}
}
return
LangList
;
}
public
static
string
GetChinaString
(
string
id
,
params
object
[]
param
)
{
string
strCurLanguage
=
gets
(
China
,
id
);
...
...
source/ACSingleStore/useControl/uc_boxdebug.cs
查看文件 @
173c9a2
...
...
@@ -135,6 +135,9 @@ namespace OnlineStore.ACSingleStore.useControl
if
(
pa
[
2
][
1
].
Equals
(
'A'
)
||
pa
[
2
][
1
].
Equals
(
'B'
))
{
pa2
=
(
pa
[
2
][
1
].
Equals
(
'A'
)
?
"1"
:
"2"
)
+
pa
[
2
][
0
];
}
else
if
(
pa
[
2
][
1
].
Equals
(
'1'
)
||
pa
[
2
][
1
].
Equals
(
'2'
))
{
pa2
=
(
pa
[
2
][
1
].
Equals
(
'1'
)
?
"1"
:
"2"
)
+
pa
[
2
][
0
];
}
}
...
...
@@ -143,6 +146,9 @@ namespace OnlineStore.ACSingleStore.useControl
if
((
pb
[
2
][
1
].
Equals
(
'A'
)
||
pb
[
2
][
1
].
Equals
(
'B'
)))
{
pb2
=
(
pb
[
2
][
1
].
Equals
(
'A'
)
?
"1"
:
"2"
)
+
pb
[
2
][
0
];
}
else
if
((
pb
[
2
][
1
].
Equals
(
'1'
)
||
pb
[
2
][
1
].
Equals
(
'2'
)))
{
pb2
=
(
pb
[
2
][
1
].
Equals
(
'1'
)
?
"1"
:
"2"
)
+
pb
[
2
][
0
];
}
}
...
...
source/Common/util/SMF.cs
查看文件 @
173c9a2
...
...
@@ -10,37 +10,47 @@ namespace OnlineStore.Common
{
public
class
SMF
{
static
string
_server
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
http_server
);
public
static
string
DeviceType
=
"SISO"
;
static
string
_server
=
ConfigAppSettings
.
GetValue
(
Setting_Init
.
http_server
);
static
string
server
{
get
{
_server
=
"http://192.168.1.243/smf-core"
;
if
(
_server
.
EndsWith
(
"/"
))
{
return
_server
.
Remove
(
_server
.
Length
-
1
,
1
);
if
(
_server
.
EndsWith
(
"/"
))
{
return
_server
.
Remove
(
_server
.
Length
-
1
,
1
);
}
else
return
_server
;
}
}
public
static
bool
UploadJsonData
(
string
api
,
string
json
,
out
SmfResult
smfResult
)
public
static
bool
UploadLangJsonData
(
string
json
,
out
SmfResult
smfResult
)
{
var
insertindex
=
json
.
IndexOf
(
"{"
);
json
=
json
.
Insert
(
insertindex
+
1
,
"\"type\": \""
+
DeviceType
+
"\","
);
return
UploadJsonData
(
"/api/translation/resource"
,
json
,
out
smfResult
);
}
public
static
bool
UploadJsonData
(
string
api
,
string
json
,
out
SmfResult
smfResult
)
{
smfResult
=
new
SmfResult
();
try
{
MyWebClient
wc
=
new
MyWebClient
(
10
*
1000
);
wc
.
Headers
.
Add
(
"Content-Type"
,
"application/json;charset=UTF-8"
);
var
resp
=
wc
.
UploadData
(
server
+
api
,
Encoding
.
UTF8
.
GetBytes
(
json
));
var
resp
=
wc
.
UploadData
(
server
+
api
,
Encoding
.
UTF8
.
GetBytes
(
json
));
smfResult
=
JsonHelper
.
DeserializeJsonToObject
<
SmfResult
>(
Encoding
.
UTF8
.
GetString
(
resp
));
}
catch
(
Exception
e
)
{
LogUtil
.
info
(
$
"UploadJsonData:{api}"
+
e
.
ToString
());
catch
(
Exception
e
)
{
LogUtil
.
info
(
$
"UploadJsonData:{api}"
+
e
.
ToString
());
}
return
smfResult
.
okResult
;
}
public
static
List
<
SmfLangData
>
DownloadLngData
()
{
string
api
=
"/api/translation/resource?type=
siso"
;
string
api
=
"/api/translation/resource?type=
"
+
DeviceType
;
try
{
MyWebClient
wc
=
new
MyWebClient
(
10
*
1000
);
...
...
@@ -59,7 +69,8 @@ namespace OnlineStore.Common
}
//{"code":0,"data":"ok","msg":"ok","msgKey":"smfcore.ok","okResult":true}
public
class
SmfResult
{
public
class
SmfResult
{
public
int
code
;
public
string
data
;
public
string
msg
;
...
...
@@ -67,7 +78,8 @@ namespace OnlineStore.Common
public
bool
okResult
;
}
public
class
SmfLangData
{
public
class
SmfLangData
{
public
string
lanCode
;
public
Dictionary
<
string
,
string
>
resourceMap
;
}
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论