Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
V
vue-gjjs
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zhouqian
vue-gjjs
Commits
db8802de
Commit
db8802de
authored
Jan 07, 2022
by
wangguangchao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
信用证交易查询增加历史查询
parent
8867bc02
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
324 additions
and
280 deletions
+324
-280
index.js
src/model/Ditdck/index.js
+6
-0
Event.js
src/model/Infdid/Event.js
+196
-221
Infsea.vue
src/views/Business/Infdid/Infsea.vue
+122
-59
No files found.
src/model/Ditdck/index.js
View file @
db8802de
...
...
@@ -92,6 +92,7 @@ export default class Ditdck{
expdat
:
""
,
// Date of Expiry .didgrp.rec.expdat
lcrtyp
:
""
,
// 信用证类型 .didgrp.rec.lcrtyp
expplc
:
""
,
// 到期日/到期地点 .didgrp.rec.expplc
inr
:
""
,
},
apl
:{
pts
:
new
Pts
().
data
,
...
...
@@ -310,6 +311,11 @@ export default class Ditdck{
gleshwstm
:
{}
}
},
infcon
:{
objinr
:
""
,
chksubcon
:
""
,
},
pageId
:
""
// ctx的key
}
}
...
...
src/model/Infdid/Event.js
View file @
db8802de
...
...
@@ -2,226 +2,200 @@ import Api from "~/service/Api"
import
Utils
from
"~/utils"
export
default
{
async
onInfbutSearow
(){
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.searow"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfbutDsp
(){
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.dsp"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfbutUserow
(){
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.userow"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfbutClr
(){
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.clr"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfbutButprt
(){
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.butprt"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfbutExi
(){
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.exi"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onRecpanButgetref
(){
let
rtnmsg
=
await
this
.
executeRule
(
"recpan.butgetref"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onAplpDet
(){
let
rtnmsg
=
await
this
.
executeRule
(
"aplp.det"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onBenpDet
(){
let
rtnmsg
=
await
this
.
executeRule
(
"benp.det"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onDefdetButtxmsel
(){
let
rtnmsg
=
await
this
.
executeRule
(
"defdet.buttxmsel"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onPreperButtxmsel
(){
let
rtnmsg
=
await
this
.
executeRule
(
"preper.buttxmsel"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onLcrgodButtxmsel
(){
let
rtnmsg
=
await
this
.
executeRule
(
"lcrgod.buttxmsel"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onLcrdocButtxmsel
(){
let
rtnmsg
=
await
this
.
executeRule
(
"lcrdoc.buttxmsel"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onAdlcndButtxmsel
(){
let
rtnmsg
=
await
this
.
executeRule
(
"adlcnd.buttxmsel"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInsbnkButtxmsel
(){
let
rtnmsg
=
await
this
.
executeRule
(
"insbnk.buttxmsel"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfconButshw
(){
let
rtnmsg
=
await
this
.
executeRule
(
"infcon.butshw"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfconButshword
(){
let
rtnmsg
=
await
this
.
executeRule
(
"infcon.butshword"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
handleReset
()
{
},
async
handleSearch
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.searow"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
this
.
stmData
.
data
=
rtnmsg
.
data
.
infbut_dspstm
.
rows
;
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfbutSearow
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.searow"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfbutDsp
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.dsp"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfbutUserow
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.userow"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfbutClr
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.clr"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfbutButprt
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.butprt"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfbutExi
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.exi"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onRecpanButgetref
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"recpan.butgetref"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onAplpDet
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"aplp.det"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onBenpDet
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"benp.det"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onDefdetButtxmsel
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"defdet.buttxmsel"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onPreperButtxmsel
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"preper.buttxmsel"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onLcrgodButtxmsel
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"lcrgod.buttxmsel"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onLcrdocButtxmsel
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"lcrdoc.buttxmsel"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onAdlcndButtxmsel
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"adlcnd.buttxmsel"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInsbnkButtxmsel
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"insbnk.buttxmsel"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfconButshw
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"infcon.butshw"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
onInfconButshword
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"infcon.butshword"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
//TODO 处理数据逻辑
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
async
handleReset
()
{
},
async
handleSearch
()
{
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.searow"
)
if
(
rtnmsg
.
respCode
==
SUCCESS
)
{
this
.
stmData
.
data
=
rtnmsg
.
data
.
infbut_dspstm
.
rows
;
}
else
{
this
.
$notify
.
error
({
title
:
'错误'
,
message
:
'服务请求失败!'
});
}
},
display
(
index
,
row
)
{
debugger
;
Api
.
post
(
"getTrnNameByInr"
,
{
inr
:
row
[
'INR'
]
}).
then
((
res
)
=>
{
if
(
res
.
respCode
==
SUCCESS
)
{
const
trnName
=
res
.
data
.
toLowerCase
();
let
viewurl
=
"/#/display/"
+
trnName
+
"?trn="
+
row
[
'INR'
]
window
.
open
(
viewurl
,
'newwindow'
,
'height=1200,width=900,top=100,left=100,toolbar=no,resizable=no,menubar=no,location=no, status=no'
);
}
});
},
}
\ No newline at end of file
src/views/Business/Infdid/Infsea.vue
View file @
db8802de
...
...
@@ -26,9 +26,7 @@
</el-form-item>
</c-col>
<c-col
:span=
"2"
>
</c-col>
<c-col
:span=
"2"
>
</c-col>
<c-col
:span=
"10"
>
<el-form-item
...
...
@@ -147,7 +145,7 @@
</c-select>
</el-form-item>
</c-col>
<c-col
:span=
"8"
>
<el-form-item
label=
"Resp.User"
...
...
@@ -297,31 +295,63 @@
</
template
>
</c-list-search>
<c-col
:span=
"24"
style=
"margin-top:
10px"
>
<c-button
type=
"primary"
size=
"small"
>
信用证开立
</c-button>
</c-col>
<c-col
:span=
"24"
style=
"margin-top:
10px"
>
<c-button
type=
"primary"
size=
"small"
>
信用证开立
</c-button>
</c-col>
<el-row>
<c-col
:span=
"24"
>
<c-istream-table
:list=
"stmData.data"
:columns=
"stmData.columns"
>
<el-table-column
fixed=
"right"
prop=
"op"
label=
"操作"
width=
"150px"
>
<
template
slot=
"header"
>
<c-col
:span=
"11"
style=
"text-align:left"
><span>
操作
</span></c-col>
<c-col
:span=
"12"
style=
"text-align:right"
><c-button
icon=
"el-icon-s-tools"
></c-button></c-col>
<el-table-column
fixed=
"right"
prop=
"op"
label=
"操作"
width=
"200px"
>
<
template
slot=
"header"
>
<c-col
:span=
"11"
style=
"text-align: left"
><span>
操作
</span></c-col
>
<c-col
:span=
"12"
style=
"text-align: right"
><c-button
icon=
"el-icon-s-tools"
></c-button
></c-col>
</
template
>
<
template
slot-scope=
"scope"
>
<el-popover
placement=
"top-start"
title=
"历史信息"
width=
"800"
trigger=
"click"
>
<c-istream-table
:list=
"trnData.data"
:columns=
"trnData.columns"
>
<el-table-column
prop=
"op"
label=
"操作"
width=
"110"
>
<template
slot-scope=
"scope"
>
<c-button
style=
"margin-left: 0"
size=
"small"
type=
"primary"
@
click=
"display(scope.$index, scope.row)"
>
查看详情
</c-button>
</
template
>
</el-table-column>
</c-istream-table>
<c-button
style=
"margin-left: 0"
size=
"small"
@
click=
"getTrnInfo(scope.$index, scope.row)"
slot=
"reference"
>
详情
</c-button>
</el-popover>
<c-button
<
!-- <
c-button
style="margin-left: 0"
size="small"
@click="getTrnInfo(scope.$index,scope.row)"
>
详情
</c-button>
</c-button>
-->
<c-button
style=
"margin-left: 0"
size=
"small"
...
...
@@ -330,16 +360,15 @@
>
处理
</c-button>
<c-button
style=
"margin-left: 0"
size=
"small"
type=
"primary"
@
click=
"getDitSelInfo(scope.$index,scope.row)"
@
click=
"getDitSelInfo(scope.$index,
scope.row)"
>
info
</c-button>
</template>
</el-table-column>
</c-istream-table>
...
...
@@ -348,10 +377,14 @@
<el-dialog
:visible
.
sync=
"initdialog"
:title=
"'交易列表'"
append-to-body
>
<div
class=
"m-list-btns"
>
<m-busbtn
ref=
"childs"
:ownref=
"ownref"
@
onChoose=
"onChoose"
>
11
</m-busbtn>
<m-busbtn
ref=
"childs"
:ownref=
"ownref"
@
onChoose=
"onChoose"
>
11
</m-busbtn
>
</div>
</el-dialog>
<!-- <c-col :span="12">
<el-form-item label="Own Reference" prop="infcon.seaownref">
<c-input v-model="model.infcon.seaownref" maxlength="16" placeholder="请输入Own Reference"></c-input>
...
...
@@ -539,23 +572,37 @@
</div>
</template>
<
script
>
import
Utils
from
"~/utils/index"
import
Utils
from
"~/utils/index"
;
import
Api
from
"~/service/Api"
;
import
CommonProcess
from
"~/mixin/CommonProcess"
;
import
CodeTable
from
"~/config/CodeTable"
;
import
Event
from
"~/model/Infdid/Event"
;
import
BusNavbar
from
"~/views/Business/Infdid/BusNavbar"
import
BusNavbar
from
"~/views/Business/Infdid/BusNavbar"
;
export
default
{
inject
:
[
"root"
],
props
:
[
"model"
,
"codes"
],
mixins
:
[
CommonProcess
],
components
:
{
'm-busbtn'
:
BusNavbar
},
components
:
{
"m-busbtn"
:
BusNavbar
},
data
()
{
return
{
ownref
:
""
,
initdialog
:
false
,
stmData
:
{
ownref
:
""
,
initdialog
:
false
,
dialogTableVisible
:
false
,
trnData
:
{
columns
:
[
'1 1 "编号" 0'
,
'2 2 "交易名称" 0'
,
'3 3 "日期" 0'
,
'4 4 "状态" 0'
,
'5 5 "币种" 0'
,
'6 6 "金额" 0'
,
'7 7 "Relres" 0'
,
'0 8 "Inr" 0'
,
],
data
:
[],
},
stmData
:
{
columns
:
[
'1 1 "Reference" 120'
,
'2 2 "Resp User" 100'
,
...
...
@@ -577,40 +624,56 @@ export default {
},
};
},
methods
:
{
...
Event
,
async
getButtons
(
ownref
){
this
.
initdialog
=
true
this
.
ownref
=
ownref
console
.
log
(
"ownref:"
+
ownref
);
setTimeout
(()
=>
{
this
.
$refs
.
childs
.
$emit
(
"childmethods"
)
},
10
)
},
async
onChoose
(
code
){
//跳转交易
this
.
$router
.
history
.
push
(
"/business/"
+
code
)
this
.
initdialog
=
false
}
,
async
getDitSelInfo
(
idx
,
row
){
console
.
log
(
row
);
var
params
=
{
selDst
:
"infbut.dspstm"
,
selIds
:[
idx
+
1
]}
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.dspstm"
,
params
);
if
(
rtnmsg
.
respCode
=
SUCCESS
){
Utils
.
copyValueFromVO
(
this
.
model
,
rtnmsg
.
data
);
let
rtnmsgNew
=
await
this
.
executeRule
(
"infbut.dsp"
,
params
);
console
.
log
(
rtnmsgNew
)
if
(
rtnmsgNew
.
respCode
=
SUCCESS
){
Utils
.
copyValueFromVO
(
this
.
model
,
rtnmsgNew
.
data
);
}
}
//触发父组件中updateShowPanel 事件,修改index中showPanel ,控制 index中组件的显示和隐藏
this
.
$emit
(
'updateShowPanel'
,
true
)
methods
:
{
...
Event
,
async
getButtons
(
ownref
)
{
this
.
initdialog
=
true
;
this
.
ownref
=
ownref
;
console
.
log
(
"ownref:"
+
ownref
);
setTimeout
(()
=>
{
this
.
$refs
.
childs
.
$emit
(
"childmethods"
);
},
10
);
},
async
onChoose
(
code
)
{
//跳转交易
this
.
$router
.
history
.
push
(
"/business/"
+
code
);
this
.
initdialog
=
false
;
},
async
getDitSelInfo
(
idx
,
row
)
{
console
.
log
(
row
);
var
params
=
{
selDst
:
"infbut.dspstm"
,
selIds
:
[
idx
+
1
]
};
let
rtnmsg
=
await
this
.
executeRule
(
"infbut.dspstm"
,
params
);
if
((
rtnmsg
.
respCode
=
SUCCESS
))
{
Utils
.
copyValueFromVO
(
this
.
model
,
rtnmsg
.
data
);
let
rtnmsgNew
=
await
this
.
executeRule
(
"infbut.dsp"
,
params
);
console
.
log
(
rtnmsgNew
);
if
((
rtnmsgNew
.
respCode
=
SUCCESS
))
{
Utils
.
copyValueFromVO
(
this
.
model
,
rtnmsgNew
.
data
);
}
},
}
//触发父组件中updateShowPanel 事件,修改index中showPanel ,控制 index中组件的显示和隐藏
this
.
$emit
(
"updateShowPanel"
,
true
);
},
async
getTrnInfo
(
idx
,
row
)
{
this
.
model
.
infcon
.
objinr
=
row
[
"INR"
];
this
.
model
.
didgrp
.
rec
.
inr
=
row
[
"INR"
];
this
.
model
.
infcon
.
chksubcon
=
"X"
;
this
.
dialogTableVisible
=
true
;
let
rtnmsg
=
await
this
.
executeDefault
(
"infcon.chksubcon"
);
if
((
rtnmsg
.
respCode
=
SUCCESS
))
{
this
.
trnData
.
data
=
rtnmsg
.
data
.
infcon_trnstm
.
rows
;
}
},
},
created
:
function
()
{},
};
</
script
>
<
style
>
.el-dialog__body
{
padding
:
10px
5px
50px
;
}
</
style
>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment