Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
H
hls-xcmg-vue-app
Project
Project
Details
Activity
Releases
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
xugong
hls-xcmg-vue-app
Commits
1f4efe17
Commit
1f4efe17
authored
Sep 27, 2019
by
linxin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix:修复用户绑定校验提示框
parent
345b5940
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
1925 additions
and
1830 deletions
+1925
-1830
backtop.png
src/assets/intoApproval/backtop.png
+0
-0
base.vue
src/pages/intoApproval/intoApproval/base.vue
+44
-40
refund.vue
src/pages/intoApproval/intoApproval/refund.vue
+42
-0
rentInfo.vue
src/pages/intoApproval/intoApproval/rentInfo.vue
+55
-20
intoList.vue
src/pages/intoApproval/intoList.vue
+4
-1
naturePerson.vue
src/pages/userBind/np/naturePerson.vue
+9
-4
index.js
src/router/index.js
+3
-1
yarn.lock
yarn.lock
+1768
-1764
No files found.
src/assets/intoApproval/backtop.png
0 → 100644
View file @
1f4efe17
94.1 KB
src/pages/intoApproval/intoApproval/base.vue
View file @
1f4efe17
...
@@ -106,32 +106,19 @@
...
@@ -106,32 +106,19 @@
<input
slot=
"content"
v-model=
"personInfo.address_sp"
readonly
>
<input
slot=
"content"
v-model=
"personInfo.address_sp"
readonly
>
</item>
</item>
</list-item>
</list-item>
<div
class=
"userInfo"
>
担保人信息
</div>
<div
class=
"userInfo"
>
担保人信息
<
span
v-if=
"bondsInfo.length==0"
>
(无)
</span><
/div>
<list-item
:item-height=
"76"
>
<list-item
:item-height=
"76"
>
<item>
<item
v-for=
"(item,index) in bondsInfo"
:key=
"index"
>
<div
slot=
"name"
>
<div
slot=
"name"
>
<span
class=
"name-box"
>
1
</span>
<span
class=
"name-box"
>
{{
index
}}
</span>
<span
class=
"name"
>
担保人
1
姓名
</span>
<span
class=
"name"
>
担保人
{{
index
}}
姓名
</span>
<span
class=
"card-num"
>
证件号
</span>
<span
class=
"card-num"
>
证件号
</span>
</div>
</div>
<div
slot=
"content"
class=
"right"
>
<div
slot=
"content"
class=
"right"
>
<img
src=
"@/assets/intoApproval/introduce.png"
>
<img
src=
"@/assets/intoApproval/introduce.png"
>
<span>
张天
</span>
<span>
{{
item
.
bp_name
}}
</span>
<br
>
<br
>
<span>
42112029870928097
</span>
<span>
{{
item
.
organization_code
}}
</span>
</div>
</item>
<item>
<div
slot=
"name"
>
<span
class=
"name-box"
>
1
</span>
<span
class=
"name"
>
担保人1姓名
</span>
<span
class=
"card-num"
>
证件号
</span>
</div>
<div
slot=
"content"
class=
"right"
>
<img
src=
"@/assets/intoApproval/introduce.png"
>
<span>
张天
</span>
<br
>
<span>
42112029870928097
</span>
</div>
</div>
</item>
</item>
</list-item>
</list-item>
...
@@ -211,32 +198,19 @@
...
@@ -211,32 +198,19 @@
<input
slot=
"content"
v-model=
"companyInfo.auth_person_matter"
readonly
>
<input
slot=
"content"
v-model=
"companyInfo.auth_person_matter"
readonly
>
</item>
</item>
</list-item>
</list-item>
<div
class=
"userInfo"
>
担保人信息
</div>
<div
class=
"userInfo"
>
担保人信息
<
span
v-if=
"bondsInfo.length==0"
>
(无)
</span><
/div>
<list-item
:item-height=
"76"
>
<list-item
:item-height=
"76"
>
<item>
<item
v-for=
"(item,index) in bondsInfo"
:key=
"index"
>
<div
slot=
"name"
>
<span
class=
"name-box"
>
1
</span>
<span
class=
"name"
>
担保人1姓名
</span>
<span
class=
"card-num"
>
证件号
</span>
</div>
<div
slot=
"content"
class=
"right"
>
<img
src=
"@/assets/intoApproval/introduce.png"
>
<span>
张天
</span>
<br
>
<span>
42112029870928097
</span>
</div>
</item>
<item>
<div
slot=
"name"
>
<div
slot=
"name"
>
<span
class=
"name-box"
>
1
</span>
<span
class=
"name-box"
>
{{
index
}}
</span>
<span
class=
"name"
>
担保人
1
姓名
</span>
<span
class=
"name"
>
担保人
{{
index
}}
姓名
</span>
<span
class=
"card-num"
>
证件号
</span>
<span
class=
"card-num"
>
证件号
</span>
</div>
</div>
<div
slot=
"content"
class=
"right"
>
<div
slot=
"content"
class=
"right"
>
<img
src=
"@/assets/intoApproval/introduce.png"
>
<img
src=
"@/assets/intoApproval/introduce.png"
>
<span>
张天
</span>
<span>
{{
item
.
bp_name
}}
</span>
<br
>
<br
>
<span>
42112029870928097
</span>
<span>
{{
item
.
organization_code
}}
</span>
</div>
</div>
</item>
</item>
</list-item>
</list-item>
...
@@ -255,7 +229,7 @@
...
@@ -255,7 +229,7 @@
</div>
</div>
</div>
</div>
</div>
</div>
<RentInfo
v-show=
"tabNum==1"
/>
<RentInfo
v-show=
"tabNum==1"
:rentInfo=
"rentInfo"
/>
<AccessoryInfo
v-show=
"tabNum==2"
@
down=
"getDown"
/>
<AccessoryInfo
v-show=
"tabNum==2"
@
down=
"getDown"
/>
</h-content>
</h-content>
<bottom-tab
class=
"footer-button"
>
<bottom-tab
class=
"footer-button"
>
...
@@ -308,6 +282,8 @@ export default {
...
@@ -308,6 +282,8 @@ export default {
checkedImg
:
checkedImg
,
checkedImg
:
checkedImg
,
isDown
:
false
,
isDown
:
false
,
bp_class
:
this
.
$route
.
params
.
bp_class
,
bp_class
:
this
.
$route
.
params
.
bp_class
,
rentInfo
:
{},
bondsInfo
:
[],
personInfo
:
{
personInfo
:
{
bp_name_sp
:
''
,
bp_name_sp
:
''
,
id_card_no
:
''
,
id_card_no
:
''
,
...
@@ -340,6 +316,8 @@ export default {
...
@@ -340,6 +316,8 @@ export default {
}
}
},
},
mounted
()
{
mounted
()
{
this
.
getRent
()
this
.
getBonds
()
this
.
popProtocol
()
this
.
popProtocol
()
},
},
methods
:
{
methods
:
{
...
@@ -353,7 +331,33 @@ export default {
...
@@ -353,7 +331,33 @@ export default {
this
.
ischecked
=
!
this
.
ischecked
this
.
ischecked
=
!
this
.
ischecked
},
},
confirm
()
{
confirm
()
{
this
.
isConfirm
=
true
this
.
ischecked
?
this
.
isConfirm
=
true
:
this
.
isConfirm
=
false
},
getRent
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'prj_lease_query'
let
param
=
{
'project_id'
:
'46002'
,
}
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
rentInfo
=
res
.
info
}
})
},
getBonds
()
{
let
vm
=
this
let
url
=
process
.
env
.
basePath
+
'prj_guarantor_list_query'
let
param
=
{
'project_id'
:
'46002'
,
}
vm
.
hlsHttp
.
post
(
url
,
param
).
then
(
function
(
res
)
{
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
vm
.
bondsInfo
=
res
.
lists
}
})
},
},
popProtocol
()
{
popProtocol
()
{
let
modal
=
document
.
querySelector
(
'.myModal'
)
let
modal
=
document
.
querySelector
(
'.myModal'
)
...
...
src/pages/intoApproval/intoApproval/refund.vue
0 → 100644
View file @
1f4efe17
<
template
>
<h-view
id=
"refund"
class=
"public-style"
title=
"还款计划"
>
<div
class=
"top"
>
<h-header
:proportion=
"[5,1,1]"
class=
"header"
>
<div
slot=
"left"
class=
"h-header-btn"
@
click=
"$routeGo()"
>
<img
src=
"@/assets/intoApproval/arrow.png"
>
<span>
还款计划
</span>
</div>
</h-header>
<div>
1
</div>
</div>
</h-view>
</
template
>
<
script
>
export
default
{}
</
script
>
<
style
lang=
"less"
scoped
>
#refund {
.header {
background-color: rgba(0, 0, 0, 0);
.h-header-btn {
img {
width: 16px;
height: 16px;
}
span {
margin-left:16px;
font-family: PingFangSC-Semibold;
font-size: 17px;
color: #ffffff;
letter-spacing: 0.61px;
}
}
}
.top {
width: 100%;
height: 500px;
background: url("../../../assets/intoApproval/backtop.png") no-repeat;
background-size: 375px 285px;
}
}
</
style
>
src/pages/intoApproval/intoApproval/rentInfo.vue
View file @
1f4efe17
...
@@ -3,67 +3,67 @@
...
@@ -3,67 +3,67 @@
<list-item
:item-height=
"44"
style=
"margin-bottom:0px;"
>
<list-item
:item-height=
"44"
style=
"margin-bottom:0px;"
>
<item>
<item>
<div
slot=
"name"
>
商务政策
</div>
<div
slot=
"name"
>
商务政策
</div>
<input
slot=
"content"
v-model=
"
baseInfo.bp_name_sp
"
readonly
>
<input
slot=
"content"
v-model=
"
rentInfo.product_plan_id_n
"
readonly
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
设备总价
</div>
<div
slot=
"name"
>
设备总价
</div>
<
input
slot=
"content"
v-model=
"baseInfo.working_place_sp"
readonly
>
<
span
slot=
"content"
>
{{
rentInfo
.
equip_price
|
NumFormat
}}
</span
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
融资金额
</div>
<div
slot=
"name"
>
融资金额
</div>
<
input
slot=
"content"
v-model=
"baseInfo.address_sp"
readonly
>
<
span
slot=
"content"
>
{{
rentInfo
.
finance_amount
|
NumFormat
}}
</span
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
首付款
</div>
<div
slot=
"name"
>
首付款
</div>
<
input
slot=
"content"
v-model=
"baseInfo.working_place_sp"
readonly
>
<
span
slot=
"content"
>
{{
rentInfo
.
down_payment
|
NumFormat
}}
</span
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
保证金比例
</div>
<div
slot=
"name"
>
保证金比例
</div>
<input
slot=
"content"
v-model=
"
baseInfo.bp_name_sp
"
readonly
>
<input
slot=
"content"
v-model=
"
rentInfo.deposit_ratio_n
"
readonly
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
保证金
</div>
<div
slot=
"name"
>
保证金
</div>
<
input
slot=
"content"
v-model=
"baseInfo.working_place_sp"
readonly
>
<
span
slot=
"content"
>
{{
rentInfo
.
deposit
|
NumFormat
}}
</span
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
手续费比例
</div>
<div
slot=
"name"
>
手续费比例
</div>
<input
slot=
"content"
v-model=
"
baseInfo.address_sp
"
readonly
>
<input
slot=
"content"
v-model=
"
rentInfo.lease_charge_ratio_n
"
readonly
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
手续费
</div>
<div
slot=
"name"
>
手续费
</div>
<
input
slot=
"content"
v-model=
"baseInfo.working_place_sp"
readonly
>
<
span
slot=
"content"
>
{{
rentInfo
.
lease_charge
|
NumFormat
}}
</span
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
预计付款日
</div>
<div
slot=
"name"
>
预计付款日
</div>
<
input
slot=
"content"
v-model=
"baseInfo.bp_name_sp"
readonly
>
<
span
slot=
"content"
>
{{
time
}}
</span
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
还款周期
</div>
<div
slot=
"name"
>
还款周期
</div>
<input
slot=
"content"
v-model=
"
baseInfo.working_place_sp
"
readonly
>
<input
slot=
"content"
v-model=
"
rentInfo.annual_pay_times
"
readonly
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
租赁期数
</div>
<div
slot=
"name"
>
租赁期数
</div>
<input
slot=
"content"
v-model=
"
baseInfo.address_sp
"
readonly
>
<input
slot=
"content"
v-model=
"
rentInfo.lease_times
"
readonly
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
年利率
</div>
<div
slot=
"name"
>
年利率
</div>
<input
slot=
"content"
v-model=
"
baseInfo.working_place_sp
"
readonly
>
<input
slot=
"content"
v-model=
"
rentInfo.int_rate_n
"
readonly
>
</item>
</item>
</list-item>
</list-item>
<div
class=
"top-userInfo"
>
查看还款计划
</div>
<div
class=
"top-userInfo"
@
click=
"changeRefund"
>
查看还款计划
</div>
<div
class=
"userInfo"
>
设备清单
</div>
<div
class=
"userInfo"
>
设备清单
</div>
<list-item>
<list-item>
<item>
<item>
<div
slot=
"name"
>
参数项
</div>
<div
slot=
"name"
>
参数项
</div>
<input
slot=
"content"
v-model=
"
baseInfo.working_place_sp
"
readonly
>
<input
slot=
"content"
v-model=
"
rentInfo.product_id
"
readonly
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
产品线
</div>
<div
slot=
"name"
>
产品线
</div>
<input
slot=
"content"
v-model=
"
baseInfo.address_sp
"
readonly
>
<input
slot=
"content"
v-model=
"
rentInfo.division
"
readonly
>
</item>
</item>
<item>
<item>
<div
slot=
"name"
>
产品数量
</div>
<div
slot=
"name"
>
产品数量
</div>
<input
slot=
"content"
v-model=
"
baseInfo.working_place_sp
"
readonly
>
<input
slot=
"content"
v-model=
"
rentInfo.product_num
"
readonly
>
</item>
</item>
</list-item>
</list-item>
<div
class=
"alert"
>
<div
class=
"alert"
>
...
@@ -80,12 +80,47 @@
...
@@ -80,12 +80,47 @@
</
template
>
</
template
>
<
script
>
<
script
>
export
default
{
export
default
{
data
()
{
filters
:
{
return
{
NumFormat
:
function
(
value
)
{
baseInfo
:
{},
if
(
!
value
)
return
'0.00'
}
var
intPart
=
Number
(
value
)
|
0
// 获取整数部分
var
intPartFormat
=
intPart
.
toString
().
replace
(
/
(\d)(?=(?:\d{3})
+$
)
/g
,
'$1,'
)
// 将整数部分逢三一断
var
floatPart
=
'.00'
// 预定义小数部分
var
value2Array
=
value
.
split
(
'.'
)
// =2表示数据有小数位
if
(
value2Array
.
length
===
2
)
{
floatPart
=
value2Array
[
1
].
toString
()
// 拿到小数部分
if
(
floatPart
.
length
===
1
)
{
// 补0,实际上用不着
return
intPartFormat
+
'.'
+
floatPart
+
'0'
}
else
{
return
intPartFormat
+
'.'
+
floatPart
}
}
else
{
return
intPartFormat
+
floatPart
}
},
},
props
:
{
'rentInfo'
:
{
default
:
{},
type
:
Object
,
},
},
computed
:
{
'time'
:
function
()
{
return
this
.
rentInfo
.
pre_pay_date
.
substr
(
0
,
10
)
},
},
methods
:
{
changeRefund
()
{
this
.
$router
.
push
({
name
:
'Refund'
,
})
},
},
},
}
}
</
script
>
</
script
>
<
style
lang=
"less"
scoped
>
<
style
lang=
"less"
scoped
>
#rentInfo {
#rentInfo {
...
...
src/pages/intoApproval/intoList.vue
View file @
1f4efe17
...
@@ -79,6 +79,9 @@ export default {
...
@@ -79,6 +79,9 @@ export default {
</
script
>
</
script
>
<
style
lang=
"less"
scoped
>
<
style
lang=
"less"
scoped
>
#sign {
#sign {
.bar-custom{
background-color: #00469c;
}
.h-header-btn {
.h-header-btn {
img {
img {
width: 16px;
width: 16px;
...
@@ -177,7 +180,7 @@ export default {
...
@@ -177,7 +180,7 @@ export default {
width: 80px;
width: 80px;
height: 18px;
height: 18px;
line-height: 18px;
line-height: 18px;
text-align: right
padding-left: 20px;
}
}
.normal {
.normal {
font-family: PingFangSC-Regular;
font-family: PingFangSC-Regular;
...
...
src/pages/userBind/np/naturePerson.vue
View file @
1f4efe17
...
@@ -255,6 +255,7 @@ export default {
...
@@ -255,6 +255,7 @@ export default {
invoice_title
:
''
,
invoice_title
:
''
,
invoice_bp_address_phone_num
:
''
,
invoice_bp_address_phone_num
:
''
,
invoice_kind
:
''
,
invoice_kind
:
''
,
user_phone
:
window
.
localStorage
.
user_iphone
,
},
},
}
}
},
},
...
@@ -275,8 +276,8 @@ export default {
...
@@ -275,8 +276,8 @@ export default {
},
},
tabNum
:
function
(
newVal
,
oldVal
)
{
tabNum
:
function
(
newVal
,
oldVal
)
{
if
(
if
(
(
newVal
===
1
&&
!
this
.
isSave
)
||
(
newVal
===
1
&&
!
this
.
isSave
)
(
newVal
===
2
&&
!
this
.
isSave
)
// ||
(newVal === 2 && !this.isSave)
)
{
)
{
this
.
hlsPopup
.
showError
(
'请先保存基本信息'
)
this
.
hlsPopup
.
showError
(
'请先保存基本信息'
)
this
.
tabNum
=
oldVal
this
.
tabNum
=
oldVal
...
@@ -475,12 +476,15 @@ export default {
...
@@ -475,12 +476,15 @@ export default {
this
.
bank
.
bank_full_name
===
''
||
this
.
bank
.
bank_full_name
===
''
||
this
.
bank
.
bank_branch_name
===
''
this
.
bank
.
bank_branch_name
===
''
)
{
)
{
this
.
showNotifyAtTop1
()
// this.showNotifyAtTop1()
this
.
hlsPopup
.
showLongCenter
(
'请输入完整字段'
)
}
else
if
(
this
.
hlsUtil
.
isBankAccount
(
this
.
bank
.
bank_account_num
))
{
}
else
if
(
this
.
hlsUtil
.
isBankAccount
(
this
.
bank
.
bank_account_num
))
{
// this.hlsPopup.showLongCenter('银行卡号有误')
this
.
hlsPopup
.
showLongCenter
(
'银行卡号有误'
)
this
.
hlsPopup
.
showLongCenter
(
'银行卡号有误'
)
}
else
if
(
this
.
bank
.
bank_account_name
!==
bpName
)
{
}
else
if
(
this
.
bank
.
bank_account_name
!==
bpName
)
{
console
.
log
(
bpName
)
console
.
log
(
bpName
)
this
.
showNotifyAtTop
()
// this.showNotifyAtTop()
this
.
hlsPopup
.
showLongCenter
(
'请输入本人银行卡'
)
}
else
{
}
else
{
let
list
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
bank
))
let
list
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
bank
))
this
.
bankList
.
push
(
list
)
this
.
bankList
.
push
(
list
)
...
@@ -497,6 +501,7 @@ export default {
...
@@ -497,6 +501,7 @@ export default {
vm
.
hlsPopup
.
hideLoading
()
vm
.
hlsPopup
.
hideLoading
()
if
(
res
.
result
===
'S'
)
{
if
(
res
.
result
===
'S'
)
{
vm
.
showNotifyAtTopSuccess
()
vm
.
showNotifyAtTopSuccess
()
this
.
hlsPopup
.
showLongCenter
(
'保存成功'
)
setTimeout
(
vm
.
successCall
,
2000
)
setTimeout
(
vm
.
successCall
,
2000
)
}
}
})
})
...
...
src/router/index.js
View file @
1f4efe17
...
@@ -30,6 +30,7 @@ import Enterprise from '@/pages/userBind/org/enterprise'
...
@@ -30,6 +30,7 @@ import Enterprise from '@/pages/userBind/org/enterprise'
// 进件审批
// 进件审批
import
Base
from
'@/pages/intoApproval/intoApproval/base'
import
Base
from
'@/pages/intoApproval/intoApproval/base'
import
IntoList
from
'@/pages/intoApproval/intoList'
import
IntoList
from
'@/pages/intoApproval/intoList'
import
Refund
from
'@/pages/intoApproval/intoApproval/refund'
// 经销商签约
// 经销商签约
import
ContractList
from
'@/pages/distributorSign/contract-list'
import
ContractList
from
'@/pages/distributorSign/contract-list'
import
ContractDetails
from
'@/pages/distributorSign/contract-details'
import
ContractDetails
from
'@/pages/distributorSign/contract-details'
...
@@ -98,7 +99,8 @@ export default new Router({
...
@@ -98,7 +99,8 @@ export default new Router({
{
path
:
'/nature-person'
,
component
:
NaturePerson
,
name
:
'NaturePerson'
,
meta
:
{
keepAlive
:
false
}},
{
path
:
'/nature-person'
,
component
:
NaturePerson
,
name
:
'NaturePerson'
,
meta
:
{
keepAlive
:
false
}},
{
path
:
'/enterprise'
,
component
:
Enterprise
,
name
:
'Enterprise'
,
meta
:
{
keepAlive
:
false
}},
{
path
:
'/enterprise'
,
component
:
Enterprise
,
name
:
'Enterprise'
,
meta
:
{
keepAlive
:
false
}},
// 进件审批
// 进件审批
{
path
:
'/base'
,
component
:
Base
,
name
:
'Base'
,
meta
:
{
keepAlive
:
false
}},
{
path
:
'/base'
,
component
:
Base
,
name
:
'Base'
,
meta
:
{
keepAlive
:
true
}},
{
path
:
'/refund'
,
component
:
Refund
,
name
:
'Refund'
,
meta
:
{
keepAlive
:
false
}},
{
path
:
'/intoList'
,
component
:
IntoList
,
name
:
'IntoList'
,
meta
:
{
keepAlive
:
false
}},
{
path
:
'/intoList'
,
component
:
IntoList
,
name
:
'IntoList'
,
meta
:
{
keepAlive
:
false
}},
// 经销商签约
// 经销商签约
{
path
:
'/contract-list'
,
component
:
ContractList
,
name
:
'ContractList'
,
meta
:
{
keepAlive
:
true
}},
{
path
:
'/contract-list'
,
component
:
ContractList
,
name
:
'ContractList'
,
meta
:
{
keepAlive
:
true
}},
...
...
yarn.lock
View file @
1f4efe17
This source diff could not be displayed because it is too large. You can
view the blob
instead.
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