Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
F
founder_vue
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
常超
founder_vue
Commits
f683c331
Commit
f683c331
authored
Jan 05, 2022
by
lp784568205
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev_xzeq_xz' of
http://47.92.108.28/changchao/founder_vue
into dev_xzeq_xz
parents
8550cbeb
797e0f76
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
178 additions
and
95 deletions
+178
-95
src/api/base.js
+10
-21
src/components/SearchGraph.vue
+3
-3
src/components/ptCxForm_components.vue
+0
-1
src/layout/menuLayout.vue
+1
-1
src/router/modules/dswtzxx.js
+24
-16
src/views/ajzcgzxnpg/ajzcgzxnpg.vue
+2
-2
src/views/brainPhotoxxxx/brainQyxsfx.vue
+2
-1
src/views/dswtz/swxx/dswcj.vue
+62
-0
src/views/dswtzxx/jbxx/lbxx.vue
+20
-29
src/views/rlxnpg/rlXltj.vue
+16
-5
src/views/userAuth/user/queryUser.vue
+3
-2
src/views/xnpg/zwbdxx/zwbdxx.vue
+1
-1
src/views/zdxx/zdjyhd/zdhytj.vue
+12
-3
src/views/zdxx/zdjyhd/zdjywptjt.vue
+2
-2
src/views/zdxx/zdjyhd/zdryxlyj.vue
+17
-7
src/views/ztyp/queryDx.vue
+3
-1
No files found.
src/api/base.js
View file @
f683c331
...
...
@@ -26,28 +26,17 @@ if (
base
.
alyIP
=
"/apialy"
;
base
.
alyIP2
=
"/apiAjzbXzGaw"
;
base
.
alyIP3
=
"/apialy"
;
base
.
alyIP4
=
'http://39.99.155.173:8007'
// 脑图链接
base
.
alyIP5
=
'http://39.99.155.173:8003'
// 画像工厂 案件
base
.
alyIP6
=
'http://39.99.155.173:9002'
// 画像工厂 案件
base
.
alyIP8
=
'http://39.99.155.173:9003'
//
base
.
alyIP9
=
'http://47.92.225.109:8347'
//
base
.
alyIP4
=
'http://155.1.31.20:8054'
// 西藏脑图链接
base
.
alyIP5
=
'http://74.6.54.153:8003'
// 画像工厂 案件
base
.
alyIP6
=
'http://89.0.23.203:9047'
// 画像工厂 案件档案
base
.
alyIP7
=
'http://74.6.54.153:8006'
base
.
alyIP8
=
'http://10.184.14.193:9003'
base
.
alyIP9
=
'http://10.184.14.193:9005'
base
.
alyIP10
=
'http://10.184.14.193:9001'
base
.
alyIP11
=
'http://74.6.54.153:8004'
base
.
alyIP12
=
'http://xzxt-zhyy.dsj.xz:8053'
base
.
alyIP13
=
'/apiXssp'
// 线索审批管理平台
// base.alyIP = "/apialy";
// base.alyIP2 = "/apiAjzbGaw";
// base.alyIP3 = "/apialy";
// base.alyIP4 = 'http://74.6.54.153:8005' // 脑图链接
// base.alyIP5 = 'http://74.6.54.153:8003' // 画像工厂 案件
// base.alyIP6 = 'http://10.184.14.193:9002' // 画像工厂 案件
// base.alyIP7 = 'http://74.6.54.153:8006'
// base.alyIP8 = 'http://10.184.14.193:9003'
// base.alyIP9 = 'http://10.184.14.193:9005'
// base.alyIP10 = 'http://10.184.14.193:9001'
// base.alyIP11 = 'http://74.6.54.153:8004'
base
.
alyIP12
=
'http://xzxt-zhyy.dsj.xz:8052'
base
.
alyIP14
=
'http://xzxt-zhyy.dsj.xz:8051'
}
export
default
base
;
src/components/SearchGraph.vue
View file @
f683c331
...
...
@@ -238,15 +238,15 @@ export default {
if
(
boo
)
{
if
(
this
.
pages
==
"ajhx"
)
{
//let path = `http://39.99.155.173:8003/queryAjdaxxs?asjbh=${this.form.zjhm}`;
let
path
=
`
${
base
.
alyIP
12
}
/queryAjdaxxs?asjbh=
${
this
.
form
.
zjhm
}
`
;
let
path
=
`
${
base
.
alyIP
6
}
/queryAjdaxxs?asjbh=
${
this
.
form
.
zjhm
}
`
;
window
.
open
(
path
,
"_blank"
);
}
else
if
(
this
.
pages
==
"hxgc"
)
{
//let path = `http://39.99.155.173:9002/#/rydaIndex/ryGl?zjhm=${this.form.asjbh}`;
let
path
=
`
${
base
.
alyIP1
2
}
/#/rydaIndex/ryGl?zjhm=
${
this
.
form
.
asjbh
}
`
;
let
path
=
`
${
base
.
alyIP1
4
}
/#/rydaIndex/ryGl?zjhm=
${
this
.
form
.
asjbh
}
`
;
window
.
open
(
path
,
"_blank"
);
}
else
if
(
this
.
pages
==
"clhx"
)
{
// let path = `http://39.99.155.173:9002/#/cardaIndex?cphm=${this.form.cphm}`;
let
path
=
`
${
base
.
alyIP1
2
}
/#/cardaIndex?cphm=
${
this
.
form
.
cphm
}
`
;
let
path
=
`
${
base
.
alyIP1
4
}
/#/cardaIndex?cphm=
${
this
.
form
.
cphm
}
`
;
window
.
open
(
path
,
"_blank"
);
}
else
if
(
this
.
pages
==
"queryTdyp"
)
{
// let path = `http://39.99.155.173:9003/#/ajbzDetail?asjbh=${this.form.asjbh}`;
...
...
src/components/ptCxForm_components.vue
View file @
f683c331
...
...
@@ -3012,7 +3012,6 @@ export default {
i
!=
"rows"
&&
i
!=
"page"
&&
i
!=
"typeFlag"
&&
i
!=
"unitcode"
&&
i
!=
"grade"
&&
i
!=
"flwssfhgpdbz"
&&
i
!=
"limit"
&&
...
...
src/layout/menuLayout.vue
View file @
f683c331
...
...
@@ -154,7 +154,7 @@ export default {
goDetail
(
item
)
{
// debugger;
if
(
item
.
id
==
"dwcx"
)
{
let
path
=
`
${
this
.
$baseUrl
.
alyIP
6
}
/#/jccxIndex`
;
let
path
=
`
${
this
.
$baseUrl
.
alyIP
14
}
/#/jccxIndex`
;
window
.
open
(
path
,
"_blank"
);
}
else
if
(
item
.
id
==
"brainDzajSP"
)
{
let
obj
=
JSON
.
parse
(
sessionStorage
.
getItem
(
"userInfo"
));
...
...
src/router/modules/dswtzxx.js
View file @
f683c331
...
...
@@ -17,22 +17,6 @@ const menuLayouts = [
component
:
()
=>
import
(
"@/views/dswtzxx/jbxx/lbxx.vue"
)
},
{
path
:
"/addryxx"
,
name
:
"addryxx"
,
meta
:
{
title
:
'新增人员信息'
},
component
:
()
=>
import
(
"@/views/dswtzxx/jbxx/addryxx.vue"
)
},
{
path
:
"/ryxxrxbj"
,
name
:
"ryxxrxbj"
,
meta
:
{
title
:
'新增人员信息'
},
component
:
()
=>
import
(
"@/views/dswtzxx/jbxx/rxbj.vue"
)
},
{
path
:
"/dnasx"
,
name
:
"dnasx"
,
meta
:
{
...
...
@@ -208,4 +192,28 @@ export default [
},
component
:
()
=>
import
(
"@/views/dswtz/swxx/detailSwxx.vue"
)
},
{
path
:
"/addryxx"
,
name
:
"addryxx"
,
meta
:
{
title
:
'新增人员信息'
},
component
:
()
=>
import
(
"@/views/dswtzxx/jbxx/addryxx.vue"
)
},
{
path
:
"/ryxxrxbj"
,
name
:
"ryxxrxbj"
,
meta
:
{
title
:
'新增人员信息'
},
component
:
()
=>
import
(
"@/views/dswtzxx/jbxx/rxbj.vue"
)
},
{
path
:
"/dswcj"
,
name
:
"dswcj"
,
meta
:
{
title
:
'采集信息'
},
component
:
()
=>
import
(
"@/views/dswtz/swxx/dswcj.vue"
)
},
]
src/views/ajzcgzxnpg/ajzcgzxnpg.vue
View file @
f683c331
...
...
@@ -245,7 +245,7 @@ export default {
endTime
:
""
,
startTime
:
""
,
dwdm
:
""
,
cxzd
:
"
ladw_gajgjg
dm"
,
cxzd
:
"
ajlb
dm"
,
},
cxQueryField
:
[
//查询条件
...
...
@@ -745,6 +745,7 @@ export default {
cxzdStr3
:
this
.
arrey
[
2
].
label
,
}).
then
((
res
)
=>
{
if
(
res
.
code
==
"200"
)
{
this
.
cxFormData
.
cxzd
=
this
.
arrey
[
0
].
id
;
this
.
arrey
=
[];
this
.
shuju
=
res
.
data
.
rows
;
this
.
dialogVisible
=
false
;
...
...
@@ -769,7 +770,6 @@ export default {
cxzdStr3
:
"案事件编号"
,
}).
then
((
res
)
=>
{
if
(
res
.
code
==
"200"
)
{
this
.
arrey
=
[];
this
.
shuju
=
res
.
data
.
rows
;
this
.
dialogVisible
=
false
;
this
.
$refs
.
rightContent
.
doQuery
(
"yes"
);
...
...
src/views/brainPhotoxxxx/brainQyxsfx.vue
View file @
f683c331
...
...
@@ -47,7 +47,8 @@ export default {
},
methods
:
{
goDetail
()
{
let
path
=
`
${
this
.
$baseUrl
.
alyIP9
}
/#/JumpPage/admin/admin/
${
this
.
form
.
zjhm
}
`
;
// let path = `${this.$baseUrl.alyIP9}/#/JumpPage/admin/admin/${this.form.zjhm}`;
let
path
=
`
${
base
.
alyIP12
}
/#/jumppage/
${
this
.
form
.
zjhm
}
`
;
window
.
open
(
path
,
"_blank"
);
// var params = { type: "AjXx", kybh: this.form.zjhm, userId: '142302198901012417' };
// this.toDetail("http://47.92.225.109:8347/#/JumpPage/admin/admin/", params);
...
...
src/views/dswtz/swxx/dswcj.vue
0 → 100644
View file @
f683c331
<
template
>
<div
class=
"swtzxxglRoutes"
style=
"margin: 20px;"
>
<el-tabs
v-if=
"!loading"
v-model=
"activeName"
type=
"border-card"
@
tab-click=
"handleClick"
>
<el-tab-pane
label=
"人像信息管理"
name=
"RX"
><addRxxx></addRxxx></el-tab-pane>
<el-tab-pane
label=
"DNA信息管理"
name=
"DNA"
><DNAlist
:info=
"info"
></DNAlist></el-tab-pane>
<el-tab-pane
label=
"虹膜信息管理"
name=
"HM"
><addHmxx
:info=
"info"
></addHmxx></el-tab-pane>
<el-tab-pane
label=
"声纹信息管理"
name=
"SW"
><SWlist
:info=
"info"
></SWlist></el-tab-pane>
<el-tab-pane
label=
"足迹信息管理"
name=
"ZJ"
><addZjxx></addZjxx></el-tab-pane>
<el-tab-pane
label=
"平面指纹信息管理"
name=
"PM"
><addZwxx></addZwxx></el-tab-pane>
<el-tab-pane
label=
"滚动指纹信息管理"
name=
"GD"
><addGDZwxx></addGDZwxx></el-tab-pane>
</el-tabs>
</div>
</
template
>
<
script
>
import
addRxxx
from
'@p/dswtz/rxxx/addRxxx.vue'
import
DNAlist
from
'@p/dswtz/dnaxx/DNAlist.vue'
import
addHmxx
from
'@p/dswtz/hmxx/addHmxx.vue'
import
SWlist
from
'@p/dswtz/swxx/SWlist.vue'
import
addZjxx
from
'@p/dswtz/zjxx/addZjxx.vue'
import
addZwxx
from
'@p/dswtz/zwxx/addZwxx.vue'
import
addGDZwxx
from
'@p/dswtz/zwxx/addGDZwxx.vue'
import
{
selectRyxxById
}
from
"@/api/dswtzxx.js"
;
export
default
{
components
:
{
addRxxx
,
DNAlist
,
addHmxx
,
SWlist
,
addZjxx
,
addZwxx
,
addGDZwxx
},
data
()
{
return
{
activeName
:
'RX'
,
info
:{},
loading
:
true
};
},
methods
:
{
handleClick
(
tab
,
event
)
{
console
.
log
(
tab
,
event
);
}
},
created
()
{
let
params
=
new
FormData
()
params
.
append
(
'rybh'
,
this
.
$route
.
query
.
rybh
)
selectRyxxById
(
params
).
then
(
jm
=>
{
if
(
jm
.
code
===
200
){
this
.
info
=
jm
.
data
.
rows
this
.
loading
=
false
}
})
}
};
</
script
>
<
style
lang=
"scss"
>
.swtzxxglRoutes
{
margin
:
20px
auto
!important
;
width
:
1200px
;
border-radius
:
8px
;
#formCommonPage
.button
{
//
width
:
calc
(
100%
-
285px
)
!important
;
left
:
0px
!important
;
}
}
</
style
>
src/views/dswtzxx/jbxx/lbxx.vue
View file @
f683c331
...
...
@@ -18,9 +18,11 @@
<i
class=
"el-icon-plus"
></i>
新增
</span
>
</
template
>
<
template
#
btnGroup=
"scope"
>
<
template
#
btnGroup=
"scope"
>
<!--
<el-button
@
click=
"dele(scope.scope)"
type=
"text"
>
删除
</el-button>
-->
<el-button
@
click=
"modelList(scope.scope)"
type=
"text"
>
修改
</el-button>
<!--
<el-button
@
click=
"modelList(scope.scope)"
type=
"text"
>
修改
</el-button>
-->
<el-button
@
click=
"modelList(scope.scope,'ryxxrxbj')"
type=
"text"
>
修改
</el-button>
<el-button
@
click=
"toCjxx(scope.scope, 'dswcj')"
type=
"text"
>
采集
</el-button>
<el-button
@
click=
"RouteName(scope.scope, 'swtzxxgl')"
type=
"text"
>
生物特征信息管理
</el-button
>
...
...
@@ -41,7 +43,7 @@ export default {
data
()
{
return
{
tableOperation
:
true
,
tableOperationWidth
:
2
0
0
,
tableOperationWidth
:
2
6
0
,
header
:
"多生物特征信息"
,
pageBs
:
"dswtzxxlbxx"
,
cxFormData
:
{
...
...
@@ -169,11 +171,13 @@ export default {
this
.
$store
.
commit
(
"user/SET_LeftMenu"
,
this
.
leftMenus
);
},
methods
:
{
toCjxx
(
scope
,
m
){
this
.
$router
.
pushToTab
({
path
:
m
,
query
:
{
rybh
:
scope
.
row
.
rybh
},
});
},
RouteName
(
scope
,
m
)
{
// this.$router.push({
// path: m,
// query: { rybh: scope.row.rybh },
// });
let
routeUrl
=
this
.
$router
.
resolve
({
path
:
m
,
query
:
{
...
...
@@ -183,29 +187,16 @@ export default {
});
window
.
open
(
routeUrl
.
href
,
"_blank"
);
},
modelList
(
scope
)
{
const
rybh
=
scope
.
row
.
rybh
;
const
userInfo
=
JSON
.
parse
(
sessionStorage
.
getItem
(
"userInfo"
));
window
.
open
(
"http://10.184.14.133:9200/singleLoginAct?rybh="
+
rybh
+
","
+
userInfo
.
account
+
",rycj,1,JZTS"
,
"_blank"
);
modelList
(
scope
,
m
){
this
.
$router
.
pushToTab
({
path
:
m
,
query
:
{
rybh
:
scope
.
row
.
rybh
},
});
},
add
()
{
// this.$router.push("addryxx");
// const rybh = scope.row.rybh
const
userInfo
=
JSON
.
parse
(
sessionStorage
.
getItem
(
"userInfo"
));
window
.
open
(
"http://10.184.14.133:9200/singleLoginAct?rybh="
+
","
+
userInfo
.
account
+
",rycj,1,JZTS"
,
"_blank"
);
add
(){
this
.
$router
.
pushToTab
({
path
:
"/addryxx"
,
});
},
edit
(
scope
)
{
this
.
$router
.
push
({
...
...
src/views/rlxnpg/rlXltj.vue
View file @
f683c331
...
...
@@ -19,7 +19,7 @@
</el-date-picker>
</el-form-item>
</el-col>
<el-col
:span=
"8"
>
<el-form-item
label=
"结束时间"
...
...
@@ -38,9 +38,11 @@
</el-form-item>
</el-col>
<el-col
:span=
"6"
>
<div
class=
"btn"
style=
"float: right;"
>
<el-button
icon=
"el-icon-download"
@
click=
"print"
>
导出报告
</el-button>
</div>
<div
class=
"btn"
style=
"float: right"
>
<el-button
icon=
"el-icon-download"
@
click=
"print"
>
导出报告
</el-button
>
</div>
</el-col>
</el-form>
</div>
...
...
@@ -286,7 +288,16 @@ export default {
created
()
{
this
.
$store
.
commit
(
"user/SET_Menu"
,
this
.
Menu
);
},
watch
:
{},
watch
:
{
"formData.djsjStart"
(
val
)
{
this
.
$echarts
.
init
(
document
.
getElementById
(
"charts"
)).
dispose
();
this
.
getCode
();
},
"formData.djsjEnd"
(
val
)
{
this
.
$echarts
.
init
(
document
.
getElementById
(
"charts"
)).
dispose
();
this
.
getCode
();
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
src/views/userAuth/user/queryUser.vue
View file @
f683c331
...
...
@@ -288,6 +288,7 @@ export default {
}).
then
((
res
)
=>
{
this
.
$message
.
success
(
"权限新增成功"
);
this
.
dialogVisible
=
false
;
this
.
$refs
.
rightContent
.
doQuery
(
"yes"
);
});
}
else
{
this
.
$message
.
error
(
"请选择用户权限"
);
...
...
@@ -347,8 +348,8 @@ export default {
xxzjbh
:
obj
.
row
.
id
,
},
});
}
else
{
this
.
$message
.
error
(
'暂无权限,只能修改本人信息'
)
}
else
{
this
.
$message
.
error
(
"暂无权限,只能修改本人信息"
);
}
},
dele
(
obj
)
{
...
...
src/views/xnpg/zwbdxx/zwbdxx.vue
View file @
f683c331
...
...
@@ -80,7 +80,7 @@ export default {
name
:
"提取单位"
,
id
:
"tqdwGajgjgdm"
,
type
:
"codeTreeDialog"
,
codeTree
:
""
,
codeTree
:
"
CODE_UNIT
"
,
props
:
[],
//字典弹框需要的字段
value
:
""
,
col
:
"3"
,
...
...
src/views/zdxx/zdjyhd/zdhytj.vue
View file @
f683c331
...
...
@@ -14,7 +14,7 @@
align=
"right"
unlink-panels
suffix-icon=
"el-icon-date"
value-format=
"yyyy-MM-dd
HH:mm:ss
"
value-format=
"yyyy-MM-dd"
>
</el-date-picker>
</el-form-item>
...
...
@@ -31,7 +31,7 @@
align=
"right"
unlink-panels
suffix-icon=
"el-icon-date"
value-format=
"yyyy-MM-dd
HH:mm:ss
"
value-format=
"yyyy-MM-dd"
>
</el-date-picker>
</el-form-item>
...
...
@@ -357,7 +357,16 @@ export default {
created
()
{
// this.$store.commit("user/SET_Menu", this.Menu);
},
watch
:
{},
watch
:
{
"formData.djsjStart"
(
val
)
{
this
.
$echarts
.
init
(
document
.
getElementById
(
'charts'
)).
dispose
();
this
.
getCode
();
},
"formData.djsjEnd"
(
val
)
{
this
.
$echarts
.
init
(
document
.
getElementById
(
'charts'
)).
dispose
();
this
.
getCode
();
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
src/views/zdxx/zdjyhd/zdjywptjt.vue
View file @
f683c331
...
...
@@ -14,7 +14,7 @@
align=
"right"
unlink-panels
suffix-icon=
"el-icon-date"
value-format=
"yyyy-MM-dd
HH:mm:ss
"
value-format=
"yyyy-MM-dd"
>
</el-date-picker>
</el-form-item>
...
...
@@ -31,7 +31,7 @@
align=
"right"
unlink-panels
suffix-icon=
"el-icon-date"
value-format=
"yyyy-MM-dd
HH:mm:ss
"
value-format=
"yyyy-MM-dd"
>
</el-date-picker>
</el-form-item>
...
...
src/views/zdxx/zdjyhd/zdryxlyj.vue
View file @
f683c331
...
...
@@ -14,7 +14,7 @@
align=
"right"
unlink-panels
suffix-icon=
"el-icon-date"
value-format=
"yyyy-MM-dd
HH:mm:ss
"
value-format=
"yyyy-MM-dd"
>
</el-date-picker>
</el-form-item>
...
...
@@ -31,7 +31,7 @@
align=
"right"
unlink-panels
suffix-icon=
"el-icon-date"
value-format=
"yyyy-MM-dd
HH:mm:ss
"
value-format=
"yyyy-MM-dd"
>
</el-date-picker>
</el-form-item>
...
...
@@ -73,10 +73,8 @@ export default {
cxUrl
:
"/zdryxx/selectZdyrxx"
,
historyArr
:
[],
formData
:
{
djsjStart
:
this
.
$moment
(
new
Date
().
getTime
()
-
3600
*
1000
*
24
*
30
).
format
(
"YYYY-MM-DD"
),
djsjEnd
:
this
.
$moment
().
format
(
"YYYY-MM-DD"
),
djsjStart
:
''
,
djsjEnd
:
''
,
},
cxFormData
:
{
limit
:
10
,
...
...
@@ -356,8 +354,20 @@ export default {
},
created
()
{
// this.$store.commit("user/SET_Menu", this.Menu);
this
.
$set
(
this
.
formData
,
'djsjStart'
,
this
.
$moment
(
new
Date
().
getTime
()
-
3600
*
1000
*
24
*
30
).
format
(
"YYYY-MM-DD"
))
this
.
$set
(
this
.
formData
,
'djsjEnd'
,
this
.
$moment
().
format
(
"YYYY-MM-DD"
))
},
watch
:
{},
watch
:
{
"formData.djsjStart"
(
val
)
{
this
.
$echarts
.
init
(
document
.
getElementById
(
'charts'
)).
dispose
();
this
.
getCode
();
},
"formData.djsjEnd"
(
val
)
{
this
.
$echarts
.
init
(
document
.
getElementById
(
'charts'
)).
dispose
();
this
.
getCode
();
},},
};
</
script
>
<
style
lang=
"scss"
scoped
>
...
...
src/views/ztyp/queryDx.vue
View file @
f683c331
...
...
@@ -105,7 +105,9 @@ export default {
},
methods
:
{
toInfor
(
data
)
{
let
path
=
`
${
this
.
$baseUrl
.
alyIP9
}
/#/JumpPage/admin/admin/
${
data
.
fsfsjh
}
`
;
debugger
// let path = `${this.$baseUrl.alyIP9}/#/JumpPage/admin/admin/${data.fsfsjh}`;
let
path
=
`
${
this
.
$baseUrl
.
alyIP12
}
/#/jumppage/
${
data
.
fsfsjh
}
`
;
window
.
open
(
path
,
"_blank"
);
// let params = {
// fszsjh: data.fsfsjh,
...
...
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