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
dfb27eb0
Commit
dfb27eb0
authored
Sep 11, 2021
by
liyuhang19990520
Browse files
Options
Browse Files
Download
Plain Diff
解决冲突
parents
8101663d
67d93eab
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
602 additions
and
30 deletions
+602
-30
public/JsonData/CODE_XSJSBD_RWLXDM.json
+50
-0
src/api/xsjsdb.js
+25
-2
src/components/form.vue
+63
-13
src/components/ptCxForm_components.vue
+1
-1
src/views/xsjsdb/addRwbd.vue
+272
-8
src/views/xsjsdb/queryRwbd.vue
+189
-4
vue.config.js
+2
-2
No files found.
public/JsonData/CODE_XSJSBD_RWLXDM.json
0 → 100644
View file @
dfb27eb0
{
"code"
:
200
,
"data"
:{
"rows"
:[
{
"ids"
:
"1047651"
,
"label"
:
"指纹"
,
"codeType"
:
"CODE_XSJSBD_RWLXDM"
,
"text"
:
"指纹"
,
"pId"
:
null
,
"id"
:
"01"
,
"isParent"
:
false
,
"children"
:[]
},
{
"ids"
:
"1047652"
,
"label"
:
"足迹"
,
"codeType"
:
"CODE_XSJSBD_RWLXDM"
,
"text"
:
"足迹"
,
"pId"
:
null
,
"id"
:
"02"
,
"isParent"
:
false
,
"children"
:[]
},
{
"ids"
:
"1047653"
,
"label"
:
"DNA"
,
"codeType"
:
"CODE_XSJSBD_RWLXDM"
,
"text"
:
"DNA"
,
"pId"
:
null
,
"id"
:
"03"
,
"isParent"
:
false
,
"children"
:[]
},
{
"ids"
:
"1047654"
,
"label"
:
"视频"
,
"codeType"
:
"CODE_XSJSBD_RWLXDM"
,
"text"
:
"视频"
,
"pId"
:
null
,
"id"
:
"04"
,
"isParent"
:
false
,
"children"
:[]
}
]
},
"success"
:
true
,
"message"
:
"成功"
}
\ No newline at end of file
src/api/xsjsdb.js
View file @
dfb27eb0
/*
* @Author: your name
* @Date: 2021-09-01 10:46:56
* @LastEditTime: 2021-09-11 1
5:55:3
8
* @LastEditTime: 2021-09-11 1
7:56:4
8
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
* @FilePath: \founder_vue\src\api\bkwpxx.js
...
...
@@ -14,16 +14,39 @@ import base from "@/api/base";
//查询比对任务详情信息
export
const
selectRwqkById
=
params
=>
post
(
`
${
base
.
alyIP
}
/xsjsbdRwqk/selectRwqkById`
,
params
);
// postform(`${base.alyIP}/xsjsbdRwqk/selectRwqkById`, params);
//任务下发附件列表
export
const
selectRwxffj
=
params
=>
post
(
`
${
base
.
alyIP
}
/xsjsbdRwfj/selectRwxffj`
,
params
);
postform
(
`
${
base
.
alyIP
}
/xsjsbdRwfj/selectRwxffj`
,
params
);
//根据任务编号查询反馈列表信息
export
const
selectByRwbh
=
params
=>
post
(
`
${
base
.
alyIP
}
/rwfk/selectByRwbh`
,
params
);
//根据反馈编号查询反馈附件列表信息
export
const
selectFkfjxxByFkbh
=
params
=>
post
(
`
${
base
.
alyIP
}
/rwfkfj/selectFkfjxxByFkbh`
,
params
);
//进行比对时任务签收
export
const
updateRwqsByRwid
=
params
=>
postform
(
`
${
base
.
alyIP
}
/xsjsbdRwqk/updateRwqsByRwid`
,
params
);
//新增反馈信息
export
const
insertFkxx
=
params
=>
postform
(
`
${
base
.
alyIP
}
/rwfk/insertFkxx`
,
params
);
//任务新增
export
const
addBdrw
=
params
=>
postform
(
`
${
base
.
alyIP
}
/xsjsbd/addBdrw`
,
params
);
//接收人列表
export
const
getJsrList
=
params
=>
post
(
`
${
base
.
alyIP
}
/xsjsbd/getJsrList`
,
params
);
//接收人列表
export
const
getAsjxq
=
params
=>
post
(
`
${
base
.
alyIP
}
/xsjsbd/getAsjxq`
,
params
);
src/components/form.vue
View file @
dfb27eb0
...
...
@@ -26,8 +26,8 @@
? item.name
: ' '
"
v-for=
"
(item, index)
in groupItem.data"
:key=
"i
ndex
"
v-for=
"
item
in groupItem.data"
:key=
"i
tem.id
"
:prop=
"item.id"
:ref=
"item.id"
:label-width=
"
...
...
@@ -61,7 +61,7 @@
</el-input>
<div
v-if=
"item.type == 'text
ba
'"
v-if=
"item.type == 'text
Tq
'"
style=
"display: flex; align-items: center"
>
<el-input
...
...
@@ -70,14 +70,12 @@
:disabled=
"item.disabled"
:class=
"item.input"
>
</el-input>
<el-button
type=
"info"
size=
"mini"
style=
"margin-left: 5px; margin-right: 0 !important"
@
click=
"showJyDialog(item.jy, item.id)"
>
搜索
</el-button
<template
slot=
"append"
><span
@
click=
"ajTq(formLabelAlign[item.id])"
>
提取
</span
></
template
>
</el-input>
</div>
<div
v-if=
"item.type == 'textXk'"
...
...
@@ -190,8 +188,8 @@
:disabled=
"item.disabled"
>
<el-option
v-for=
"
item2
in item.codeOptions"
:key=
"item
2.value
"
v-for=
"
(item2, itemIndex)
in item.codeOptions"
:key=
"item
Index
"
:label=
"item2.label"
:value=
"item2.value"
>
...
...
@@ -1079,6 +1077,9 @@ export default {
self
.
initFields
();
},
methods
:
{
ajTq
(
ajbh
){
this
.
$emit
(
'ajtq'
,
ajbh
)
},
initFields
()
{
var
self
=
this
;
var
ifInitRules
=
false
;
...
...
@@ -1248,11 +1249,60 @@ export default {
}
}
}
}
else
if
(
item
.
type
==
"setValue"
)
{
if
(
self
.
formLabelAlign
[
item
.
id
])
{
if
(
itemData
.
objStr
)
{
if
(
item
.
multiple
)
{
params
.
append
(
itemData
.
objStr
+
"."
+
item
.
id
,
self
.
formLabelAlign
[
item
.
id
][
self
.
formLabelAlign
[
item
.
id
].
length
-
1
]
);
}
else
{
if
(
item
.
id
==
'jsrXm'
){
let
arr
=
item
.
codeOptions
.
filter
(
items
=>
self
.
formLabelAlign
[
item
.
id
]
==
items
.
value
)
for
(
var
index
in
arr
[
0
]
){
debugger
if
(
index
==
'label'
){
params
.
append
(
itemData
.
objStr
+
"."
+
jsrXm
,
arr
[
0
][
index
])
}
else
if
(
index
==
'value'
){
params
.
append
(
itemData
.
objStr
+
"."
+
jsrZjhm
,
arr
[
0
][
index
])
}
else
{
params
.
append
(
itemData
.
objStr
+
"."
+
index
,
arr
[
0
][
index
])
}
}
}
else
{
params
.
append
(
itemData
.
objStr
+
"."
+
item
.
id
,
self
.
formLabelAlign
[
item
.
id
]
);
}
}
}
else
{
if
(
item
.
multiple
)
{
params
.
append
(
item
.
id
,
self
.
formLabelAlign
[
item
.
id
][
self
.
formLabelAlign
[
item
.
id
].
length
-
1
]
);
}
else
{
params
.
append
(
item
.
id
,
self
.
formLabelAlign
[
item
.
id
]);
}
}
}
}
//1.2普通字段处理
else
{
if
(
self
.
formLabelAlign
[
item
.
id
])
{
console
.
log
(
self
.
formLabelAlign
[
item
.
id
]);
if
(
self
.
formLabelAlign
[
item
.
id
])
{
if
(
itemData
.
objStr
)
{
params
.
append
(
...
...
src/components/ptCxForm_components.vue
View file @
dfb27eb0
...
...
@@ -895,7 +895,7 @@ export default {
this
.
$emit
(
"signFor"
,
scope
.
row
.
xxzjbh
);
},
addFeedBack
(
scope
)
{
this
.
$emit
(
"addFeedBack"
,
scope
.
row
.
bdrw
bh
);
this
.
$emit
(
"addFeedBack"
,
scope
.
row
.
xxzj
bh
);
},
guoDetail
(
scope
,
type
)
{
if
(
type
==
"guo"
)
{
...
...
src/views/xsjsdb/addRwbd.vue
View file @
dfb27eb0
<!--
* @Author: your name
* @Date: 2021-09-11 10:30:55
* @LastEditTime: 2021-09-11 10:30:55
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
* @FilePath: \founder_vue\src\views\xsjsdb\addRwbd.vue
-->
<
template
>
<div>
<form-compontent
:formField=
"propFormField"
:formLabelAligns=
"formLabelAlign"
@
submit=
"submit"
@
ajtq=
"ajtq"
>
</form-compontent>
</div>
</
template
>
<
script
>
import
formCompontent
from
"@c/form.vue"
;
import
{
getJsrList
,
addBdrw
,
getAsjxq
}
from
"@/api/xsjsdb.js"
;
export
default
{
name
:
"addRwbd"
,
components
:
{
formCompontent
,
},
data
()
{
return
{
propFormField
:
[
//基本信息
{
title
:
"任务新增"
,
id
:
1
,
objStr
:
"rwqk"
,
index
:
0
,
data
:
[
{
name
:
"任务名称:"
,
id
:
"rwmc"
,
type
:
"text"
,
prop
:
"checkEmpty"
,
value
:
""
,
placeholder
:
"请输入"
,
col
:
"2"
,
},
{
name
:
"任务类型:"
,
id
:
"rwlxdm"
,
type
:
"codeTree"
,
prop
:
"checkEmpty"
,
value
:
""
,
placeholder
:
"请选择"
,
col
:
"2"
,
codeOptions
:
[],
codeTree
:
"CODE_XSJSBD_RWLXDM"
,
},
{
name
:
"案件编号:"
,
id
:
"asjbh"
,
type
:
"textTq"
,
prop
:
"checkEmpty"
,
value
:
""
,
placeholder
:
"请输入"
,
col
:
"2"
,
},
{
name
:
"案件名称:"
,
id
:
"ajmc"
,
type
:
"text"
,
prop
:
"checkEmpty"
,
value
:
""
,
placeholder
:
"请输入"
,
col
:
"2"
,
},
{
name
:
"录入时间:"
,
id
:
"asjfssjKssj"
,
type
:
"dates"
,
disabled
:
false
,
prop
:
"checkEmpty"
,
value
:
""
,
placeholder
:
"请输入"
,
col
:
"2"
,
},
{
name
:
"案件类别:"
,
id
:
"ajlbdm"
,
type
:
"codeTree"
,
prop
:
"checkEmpty"
,
value
:
""
,
placeholder
:
"请选择"
,
col
:
"2"
,
codeOptions
:
[],
codeTree
:
"CODE_AJLB"
,
},
{
name
:
"简要案情:"
,
id
:
"jyaq"
,
type
:
"text"
,
prop
:
"checkEmpty"
,
value
:
""
,
placeholder
:
"请输入"
,
col
:
"2"
,
},
{
name
:
"任务描述:"
,
id
:
"rwxq"
,
type
:
"text"
,
value
:
""
,
placeholder
:
"请输入"
,
col
:
"2"
,
},
{
name
:
"接收人姓名:"
,
id
:
"jsrXm"
,
type
:
"setValue"
,
codeOptions
:
[],
value
:
""
,
placeholder
:
"请输入"
,
col
:
"2"
,
},
{
name
:
"图片列表:"
,
id
:
"picList"
,
type
:
"file"
,
value
:
""
,
requestUrl
:
"/flwsFj/tbstasjflwsCj/save"
,
col
:
"11"
,
acceptType
:
"image/jpeg,image/gif,image/png"
,
},
{
name
:
"视频列表:"
,
id
:
"videoList"
,
type
:
"file"
,
value
:
""
,
requestUrl
:
"/flwsFj/tbstasjflwsCj/save"
,
col
:
"11"
,
acceptType
:
"image/jpeg,image/gif,image/png"
,
},
],
},
],
formLabelAlign
:
{
// lrsj: this.$moment().format("YYYY-MM-DD HH:mm:ss"),
},
Breadcrumb
:
[
{
name
:
"号码线索管理"
,
to
:
"/hmxsGl"
,
isActive
:
false
,
},
{
name
:
"号码线索管理"
,
to
:
"/hmxsGl"
,
isActive
:
false
,
},
{
name
:
"新增号码线索"
,
to
:
"/addHmxs"
,
isActive
:
true
,
},
],
jsrList
:
[],
};
},
methods
:
{
ajtq
(
asjbh
)
{
var
self
=
this
;
getAsjxq
({
asjbh
,
}).
then
((
res
)
=>
{
var
result
=
res
.
data
.
data
;
self
.
propFormField
[
0
].
data
.
forEach
((
fieldItem
)
=>
{
//遍历配置文件,拿到数据返回来的xs实体。
var
fieldVale
;
// if (entityName) {
// if (result[entityName] && fieldItem.id) {
// fieldVale = result[entityName][fieldItem.id];
// } else {
// fieldVale = result[fieldItem.id];
// }
// }
if
(
fieldItem
.
type
==
"file"
)
{
self
.
$set
(
self
.
formLabelAlign
,
fieldItem
.
id
,
[]);
if
(
result
[
fieldItem
.
id
])
{
result
[
fieldItem
.
id
].
forEach
((
fileItem
,
fileIndex
)
=>
{
const
fileObj
=
{
name
:
fileItem
.
xsfjDzwjmc
,
url
:
fileItem
.
xsfjDzwjwz
,
};
self
.
$set
(
self
.
formLabelAlign
[
fieldItem
.
id
],
fileIndex
,
fileObj
);
});
}
}
else
{
fieldVale
=
result
[
fieldItem
.
id
];
self
.
$set
(
self
.
formLabelAlign
,
fieldItem
.
id
,
fieldVale
);
}
this
.
$forceUpdate
();
});
self
.
$forceUpdate
();
});
},
submit
(
params
)
{
debugger
;
let
loading
=
this
.
$loading
({
lock
:
true
,
text
:
"正在保存..."
,
spinner
:
"el-icon-loading"
,
background
:
"rgba(255, 255, 255, 0.7)"
,
});
addBdrw
(
params
)
.
then
((
res
)
=>
{
debugger
;
// this.$message.success("保存成功");
this
.
$alert
(
"保存成功!"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
type
:
"success"
,
// callback: () => {
// this.$router.push("hmxsGl");
// loading.close();
// },
});
})
.
catch
((
res
)
=>
{
loading
.
close
();
});
},
getJsr
(
val
)
{
let
type
=
""
;
var
self
=
this
;
type
=
val
==
"01"
?
"BD0101"
:
val
==
"02"
?
"BD0102"
:
val
==
"03"
?
"BD0103"
:
"BD0104"
;
debugger
;
getJsrList
({
qxid
:
type
,
}).
then
((
res
)
=>
{
self
.
jsrList
=
res
.
data
.
rows
;
let
arr
=
[];
self
.
jsrList
.
forEach
((
item
)
=>
{
arr
.
push
({
label
:
item
.
trueName
,
value
:
item
.
identitycard
,
unitname
:
item
.
unitname
,
unitcode
:
item
.
unitcode
,
});
});
self
.
$set
(
self
.
propFormField
[
0
].
data
[
8
],
"codeOptions"
,
arr
);
});
},
},
created
()
{
this
.
$store
.
commit
(
"user/SET_Breadcrumb"
,
this
.
Breadcrumb
);
this
.
getJsr
();
},
watch
:
{
"formLabelAlign.rwlxdm"
(
val
)
{
if
(
val
)
{
this
.
getJsr
(
val
);
}
},
},
};
</
script
>
<
style
scoped
lang=
"scss"
>
</
style
>
\ No newline at end of file
src/views/xsjsdb/queryRwbd.vue
View file @
dfb27eb0
...
...
@@ -21,12 +21,105 @@
@
signFor=
"signFor"
ref=
"rightContent"
></right-content>
<!-- 反馈信息 -->
<el-dialog
title=
"新增反馈信息"
:visible
.
sync=
"dialogVisible"
width=
"30%"
center
>
<el-form
:inline=
"true"
:model=
"feedbackInfo"
class=
"demo-form-inline"
>
<el-row>
<el-col
:span=
"20"
:offset=
"4"
style=
"margin-top: 20px"
>
<el-form-item
label=
"反馈结果概要"
style=
"width:100%;"
>
<el-input
type=
"textarea"
v-model=
"feedbackInfo.fkjgJyqk"
:autosize=
"
{ minRows: 2, maxRows: 4 }"
style="width: 300px"
placeholder="请填写反馈结果"
>
</el-input>
</el-form-item>
</el-col>
<el-col
:span=
"20"
:offset=
"4"
style=
"margin-top: -10px"
>
<el-form-item
label=
"反馈附件"
>
<el-upload
class=
"upload-demo"
action=
"#"
:on-change=
"
(flie, fileList) =>
{
handleChange(flie, fileList);
}
"
:on-remove="
(flie, fileList) => {
handleRemove(flie, fileList);
}
"
:before-remove="
(flie, fileList) => {
handleBeforeRemove(flie, fileList);
}
"
multiple
:limit="3"
:on-exceed="handleExceed"
:file-list="feedbackInfo.files"
:auto-upload="false"
v-model="feedbackInfo.files"
>
<el-button
slot=
"trigger"
size=
"small"
type=
"primary"
>
选取文件
</el-button
>
<div
slot=
"tip"
class=
"el-upload__tip"
>
上传文件不能超过100M
</div>
</el-upload>
<!--
<el-upload
class=
"upload-demo"
action=
"#"
:on-change=
"
(flie, fileList) =>
{
handleChange(flie, fileList, item);
}
"
:on-remove="
(flie, fileList) => {
handleRemove(flie, fileList, item);
}
"
:before-remove="
(flie, fileList) => {
handleBeforeRemove(flie, fileList, item);
}
"
:on-preview="
(flie, fileList) => {
handlerPreview(flie, fileList, item);
}
"
:auto-upload="false"
:http-request="httpRequest"
:file-list="fileLists[item.fileId || item.id]"
v-model="formLabelAlign[item.id]"
>
<el-button
size=
"small"
type=
"primary"
>
选择上传
</el-button>
</el-upload>
-->
</el-form-item>
</el-col>
</el-row>
</el-form>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"dialogVisible = false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"submitFeedback"
>
确 定
</el-button>
</span>
</el-dialog>
</div>
</
template
>
<
script
>
import
rightContent
from
"@c/ptCxForm_components.vue"
;
import
{
deleteGzryFcById
}
from
"@/api/xxtk/fcxx
.js"
;
import
{
updateRwqsByRwid
,
insertFkxx
}
from
"@/api/xsjsdb
.js"
;
export
default
{
name
:
"queryRwbd"
,
components
:
{
...
...
@@ -167,6 +260,14 @@ export default {
},
],
cxUrl
:
"/xsjsbd/getBdrwList"
,
dialogVisible
:
false
,
fileList
:
[],
xxzjbh
:
""
,
feedbackInfo
:
{
bdrwbh
:
""
,
fkjgJyqk
:
""
,
files
:
[],
},
};
},
created
()
{},
...
...
@@ -175,14 +276,98 @@ export default {
console
.
log
(
123
);
},
signFor
(
data
)
{
console
.
log
(
123
);
let
params
=
new
FormData
();
params
.
append
(
"xxzjbh"
,
data
);
updateRwqsByRwid
(
params
).
then
((
res
)
=>
{
if
(
res
.
success
&&
res
.
code
==
200
)
{
this
.
$alert
(
"签收成功!"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
type
:
"success"
,
callback
:
()
=>
{
},
});
}
else
{
this
.
$message
.
error
(
"签收失败"
);
}
});
},
//新增反馈
addFeedBack
(
data
)
{
console
.
log
(
321
);
this
.
dialogVisible
=
true
;
this
.
feedbackInfo
.
bdrwbh
=
data
;
console
.
log
(
this
.
feedbackInfo
.
bdrwbh
);
},
submitFeedback
()
{
let
params
=
new
FormData
();
params
.
append
(
'bdrwbh'
,
this
.
feedbackInfo
.
bdrwbh
);
params
.
append
(
'fkjgJyqk'
,
this
.
feedbackInfo
.
fkjgJyqk
);
params
.
append
(
'files'
,
this
.
feedbackInfo
.
files
);
insertFkxx
(
params
).
then
((
res
)
=>
{
if
(
res
.
success
&&
res
.
code
==
200
)
{
this
.
$alert
(
"新增反馈信息成功!"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
type
:
"success"
,
callback
:
()
=>
{
loading
.
close
();
},
});
}
else
{
this
.
$message
.
error
(
"新增反馈信息失败"
);
}
});
},
toInfor
(
data
)
{
//upload组件相关方法
handleChange
(
file
,
fileList
)
{
console
.
log
(
file
,
fileList
);
},
handleExceed
(
file
,
fileList
)
{
this
.
$confirm
(
"上传文件不能超过100M"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
,
}).
then
(()
=>
{
fileList
.
forEach
((
item
,
index
)
=>
{
if
(
file
.
raw
.
uid
==
item
.
uid
)
{
debugger
;
fileList
.
splice
(
index
,
1
);
}
});
});
},
handleBeforeRemove
(
file
,
fileList
)
{
this
.
$confirm
(
"确定要移除"
+
file
.
name
+
"吗?"
,
"提示"
,
{
confirmButtonText
:
"确定"
,
cancelButtonText
:
"取消"
,
type
:
"warning"
,
}).
then
(()
=>
{
fileList
.
forEach
((
item
,
index
)
=>
{
if
(
file
.
uid
==
item
.
uid
)
{
fileList
.
splice
(
index
,
1
);
}
});
});
},
handleRemove
(
file
,
fileList
)
{
fileList
.
forEach
((
item
,
index
)
=>
{
if
(
file
.
uid
==
item
.
uid
)
{
fileList
.
splice
(
index
,
1
);
}
});
},
handlePreview
(
file
)
{
console
.
log
(
file
);
},
handleExceed
(
files
,
fileList
)
{
this
.
$message
.
warning
(
`当前限制选择 3 个文件,本次选择了
${
files
.
length
}
个文件,共选择了
${
this
.
feedbackInfo
.
files
.
length
}
个文件`
);
},
beforeRemove
(
file
,
fileList
)
{
return
this
.
$confirm
(
`确定移除
${
file
.
name
}
?`
);
},
toInfor
(
data
)
{},
},
};
</
script
>
...
...
vue.config.js
View file @
dfb27eb0
...
...
@@ -51,9 +51,9 @@ module.exports = {
proxy
:
{
"/apialy"
:
{
target
:
"http://39.99.155.173:9022"
,
//西藏: https://155.1.33.10:20010/ 阿里云:http://39.99.155.173:9022
ws
:
true
,
//
ws: true,
changeOrigin
:
true
,
//
secure: false,
secure
:
false
,
pathRewrite
:
{
'^/apialy'
:
'/'
}
...
...
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