Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Z
zhichan
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
蒋勇
zhichan
Commits
0a13e683
Commit
0a13e683
authored
Aug 12, 2020
by
wkliang
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'center-channel' of gitlab.gongsibao.com:jiangyong/zhichan into center-channel
parents
aa5dea7e
66c7e3aa
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
242 additions
and
73 deletions
+242
-73
center-channel/app/base/api/impl/zzzd/zzzd.js
+10
-3
center-channel/app/base/service/impl/utilsSve/utilsDiagnosisSve.js
+4
-2
center-channel/app/config/routes/api.js
+4
-2
center-channel/app/front/entry/public/apidoc/appDesc/diagnosisneedbusDesc.md
+164
-56
center-channel/app/front/entry/public/apidoc/platform/zzzd.md
+60
-10
No files found.
center-channel/app/base/api/impl/zzzd/zzzd.js
View file @
0a13e683
...
...
@@ -17,6 +17,7 @@ class Zzzd extends WEBBase {
"phoneNumber"
:
"/gsb/api/phone_number"
,
//免费咨询
}
this
.
utilsDiagnosisSve
=
system
.
getObject
(
"service.utilsSve.utilsDiagnosisSve"
);
this
.
centerOrderUrl
=
settings
.
centerOrderUrl
();
}
/**
* 接口跳转-POST请求
...
...
@@ -119,9 +120,15 @@ class Zzzd extends WEBBase {
return
system
.
getResult
(
null
,
`资质列表不能为空`
);
}
try
{
opResult
=
await
this
.
restPostUrl
(
pobj
.
actionBody
,
settings
.
zzzdUrl
()
+
this
.
zzzApi
.
recommendationBusiness
);
// console.log(`根据行业获取资质 结果` + JSON.stringify(opResult));
}
catch
(
e
)
{
opResult
=
await
this
.
restPostUrl
(
pobj
.
actionBody
,
settings
.
zzzdUrl
()
+
this
.
zzzApi
.
recommendationBusiness
);
// 调用order创建诊断单方法,并把大数据诊断结果传过去,以及客户选择的行业分类带过去 格式 【一级分类-二级分类,】
pobj
.
actionBody
.
checkResult
=
opResult
;
pobj
.
actionBody
.
diagnosisMode
=
"zn"
;
pobj
.
actionType
=
"manualEvaluation"
var
reqUrl
=
this
.
centerOrderUrl
+
"action/diagnosis/springBoard"
;
let
res
=
await
this
.
restPostUrl
(
pobj
,
reqUrl
);
console
.
log
(
res
);
}
catch
(
e
)
{
console
.
log
(
e
);
return
system
.
getResult
(
null
,
`系统错误`
+
JSON
.
stringify
(
e
));
}
...
...
center-channel/app/base/service/impl/utilsSve/utilsDiagnosisSve.js
View file @
0a13e683
...
...
@@ -16,7 +16,9 @@ class UtilsDiagnosisService extends AppServiceBase {
* @param {*} pobj
* @param {*} actionBody
*/
async
manualEvaluation
(
pobj
,
actionBody
)
{
async
manualEvaluation
(
pobj
,
actionBody
)
{
// 诊断方式rg/只能在controller层check写zn
actionBody
.
diagnosisMode
=
"rg"
var
reqUrl
=
this
.
centerOrderUrl
+
"action/diagnosis/springBoard"
;
var
manualEvaluationResult
=
await
this
.
restPostUrl
(
pobj
,
reqUrl
);
return
manualEvaluationResult
;
...
...
@@ -32,7 +34,7 @@ class UtilsDiagnosisService extends AppServiceBase {
return
diagnosisInfoResult
;
}
/**
* 2020 0811 lin 个人中心企业信息
111
* 2020 0811 lin 个人中心企业信息
* @param {*} pobj
* @param {*} actionBody
*/
...
...
center-channel/app/config/routes/api.js
View file @
0a13e683
...
...
@@ -211,7 +211,8 @@ module.exports = function (app) {
res
.
end
(
JSON
.
stringify
(
result
));
return
;
}
if
([
"getAppTokenByHosts"
,
"getAppTokenByAppKey"
,
"test"
,
"getIndustries"
,
"getSecondIndustries"
,
"getQualificationByIndustry"
,
"check"
,
"counselling"
].
indexOf
(
req
.
body
.
actionType
)
>=
0
)
{
// 2020 0812 lin 只去掉了check,因为要记录智能诊断的返回值,其他接口暂时未去掉
if
([
"getAppTokenByHosts"
,
"getAppTokenByAppKey"
,
"test"
,
"getIndustries"
,
"getSecondIndustries"
,
"getQualificationByIndustry"
,
"counselling"
].
indexOf
(
req
.
body
.
actionType
)
>=
0
)
{
req
.
body
.
actionBody
.
appHosts
=
req
.
host
;
next
();
return
;
...
...
@@ -244,7 +245,8 @@ module.exports = function (app) {
"submitProgramme"
,
"getProgrammeListByUser"
,
"getProgrammeInfoByNeedNo"
,
"abolishProgramme"
,
"getAliPayInfo"
,
"getPaidLogoListByUser"
,
"getCollectibleLogoListByUser"
,
"collectLogo"
,
"getLogoMaterial"
,
"cancelCollectLogo"
,
"icpNotify"
,
"createName"
,
"getNameDetail"
,
"orderConfirm"
,
"orderTotalSum"
,
"collect"
,
"reg"
,
"orderCheck"
,
"getReOrderList"
,
"getOfficalList"
,
"addReviewList"
,
"opSubmitNeed"
,
"opNeedClose"
,
"opNeedList"
,
"opNeedDetailByChannelNo"
,
"manualEvaluation"
,
'getNeedListUser'
"getNeedListUser"
,
"manualEvaluation"
,
"diagnosisInfo"
,
"check"
,
"enterpriseInfo"
];
if
(
lst
.
indexOf
(
req
.
body
.
actionType
)
>=
0
)
{
var
userpin
=
req
.
headers
[
"userpin"
]
||
""
;
...
...
center-channel/app/front/entry/public/apidoc/appDesc/diagnosisneedbusDesc.md
View file @
0a13e683
<a
name=
"menu"
href=
"/doc"
>
返回主目录
</a>
1.
[
精确检索
](
#getDnList
)
2.
[
获取列表
](
#getDnListPending
)
3.
[
获取详情
](
#getDnDetail
)
2.
[
获取
诊断
列表
](
#getDnListPending
)
3.
[
获取
诊断
详情
](
#getDnDetail
)
4.
[
认证
](
#doDnEAV
)
5.
[
获取需求列表
](
#getDnNeedList
)
5.
[
获取需求详情
](
#getDnNeedDetail
)
## **<a name="getDnList">
获取全部诊断单列表
</a>**
## **<a name="getDnList">
精确检索
</a>**
[
返回到目录
](
#menu
)
<a
name=
"menu"
href=
"/doc"
>
返回主目录
</a>
##### URL
[
/web/zzzd/diagnosisneedbus/springBoard
]
...
...
@@ -16,12 +18,15 @@
#### 渠道执行的类型 actionType:getDnList
```
javascript
{
"diagnosis_no"
:
"申请编号"
,
"publish_name"
:
"联系人名称"
,
"publish_mobile"
:
"联系人电话"
,
"corporate_type"
:
"店铺类型"
,
"status"
:
"状态"
,
"updated_at"
:
"更新时间"
,
"diagnosis_no"
:
"N2020081211076qlz86H"
,
//申请编号
"publish_name"
:
"张三"
//联系人名称
"publish_mobile"
:
""
13911391996
", //联系人电话
"
corporate_type
": "
qjd
",//店铺类型 电商诊断:qjd/zmd/zyd(旗舰店/专卖店/专营店),直播诊断:qy/gtgsh/mbfqy/flfw(企业/个体工商户/民办非企业/法律服务)'
"
status
": "
dcl
"//状态 dcl/gtz/dqrfa/ygb/ywc(待处理/沟通中/待确认方案/已关闭/已完成)
"
page
":1,//页数
"
pageSize
":20,//每页条数
"
startDate
":"
2020
-
02
-
16
T04
:
14
:
24.000
Z
",//开始时间
"
endDate
":"
2020
-
02
-
21
T14
:
14
:
24.000
Z
"//结束时间
}
```
...
...
@@ -35,24 +40,23 @@
"rows"
:
[
{
"id"
:
10
,
"diagnosis_no"
:
"N2020081211076qlz86H"
,
"corporate_type"
:
"qjd"
,
"corporate_type_name"
:
"旗舰店"
,
"corporate_name"
:
"林氏集团"
,
"publish_name"
:
null
,
"publish_mobile"
:
"13911391996"
,
"status"
:
"dcl"
,
"status_name"
:
"待处理"
"diagnosis_no"
:
"N2020081211076qlz86H"
,
//申请编号
"corporate_type"
:
"qjd"
,
//店铺类型
"corporate_type_name"
:
"旗舰店"
,
//店铺类型名称
"corporate_name"
:
"林氏集团"
,
//公司名称
"publish_name"
:
null
,
//联系人名称
"publish_mobile"
:
"13911391996"
,
//联系人电话
"status"
:
"dcl"
,
//状态
"status_name"
:
"待处理"
//状态名称
}
],
"requestId"
:
"ad648f41e2df471f99834e782ea993d6"
},
"requestId"
:
"c0dbbd7ba07c4a63899b672816c2276e"
}
```
## **<a name="getDnListPending"> 获取
待处理诊断单
列表</a>**
## **<a name="getDnListPending"> 获取
诊断
列表</a>**
[
返回到目录
](
#menu
)
<a
name=
"menu"
href=
"/doc"
>
返回主目录
</a>
##### URL
[
/web/zzzd/diagnosisneedbus/springBoard
]
...
...
@@ -61,7 +65,8 @@
#### 渠道执行的类型 actionType:getDnListPending
```
javascript
{
"page"
:
1
,
//页数
"pageSize"
:
20
,
//每页条数
}
```
...
...
@@ -75,29 +80,28 @@
"rows"
:
[
{
"id"
:
10
,
"diagnosis_no"
:
"N2020081211076qlz86H"
,
"corporate_type"
:
"qjd"
,
"corporate_type_name"
:
"旗舰店"
,
"corporate_name"
:
"林氏集团"
,
"publish_name"
:
null
,
"publish_mobile"
:
"13911391996"
,
"status"
:
"dcl"
,
"status_name"
:
"待处理"
"diagnosis_no"
:
"N2020081211076qlz86H"
,
//申请编号
"corporate_type"
:
"qjd"
,
//店铺类型
"corporate_type_name"
:
"旗舰店"
,
//店铺类型名称
"corporate_name"
:
"林氏集团"
,
//公司名称
"publish_name"
:
null
,
//联系人名称
"publish_mobile"
:
"13911391996"
,
//联系人电话
"status"
:
"dcl"
,
//状态
"status_name"
:
"待处理"
//状态名称
}
],
"requestId"
:
"ad648f41e2df471f99834e782ea993d6"
},
"requestId"
:
"c0dbbd7ba07c4a63899b672816c2276e"
}
```
## **<a name="getDnDetail"> 获取诊断
单
详情</a>**
## **<a name="getDnDetail"> 获取诊断详情</a>**
[
返回到目录
](
#menu
)
<a
name=
"menu"
href=
"/doc"
>
返回主目录
</a>
##### URL
[
/web/zzzd/diagnosisneedbus/springBoard
]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
#### 渠道执行的类型 actionType:getDn
ListPending
#### 渠道执行的类型 actionType:getDn
Detail
```
javascript
{
"id"
:
0
...
...
@@ -110,21 +114,31 @@
"status"
:
0
,
"msg"
:
"success"
,
"data"
:
{
"count"
:
1
,
"rows"
:
[
{
"id"
:
10
,
"diagnosis_no"
:
"N2020081211076qlz86H"
,
"corporate_type"
:
"qjd"
,
"corporate_type_name"
:
"旗舰店"
,
"corporate_name"
:
"林氏集团"
,
"publish_name"
:
null
,
"publish_mobile"
:
"13911391996"
,
"status"
:
"dcl"
,
"status_name"
:
"待处理"
}
],
"requestId"
:
"ad648f41e2df471f99834e782ea993d6"
"uapp_id"
:
22
,
//平台渠道ID
"channel_user_id"
:
"13911391996"
,
//渠道用户唯一码
"diagnosis_no"
:
"N2020081211076qlz86H"
,
//诊断单号/申请编号
"corporate_name"
:
"林氏集团"
,
//公司名称
"publish_name"
:
null
,
//联系人名字
"publish_mobile"
:
"13911391996"
,
//联系人手机号
"corporate_type"
:
"qjd"
,
//店铺类型
"corporate_type_name"
:
"旗舰店"
,
//店铺类型名字
"diagnosis_type"
:
"zb"
,
//诊断类型 zb/ds
"diagnosis_type_name"
:
"直播"
,
//诊断类型名字 直播/电商
"diagnosis_mode"
:
"rg"
,
//诊断方式 zn/rg
"diagnosis_mode_name"
:
"人工评估"
,
//诊断方式名字 智能评估/人工评估
"diagnosis_result"
:
"rgshz"
,
//诊断结果 tg/wtg/rgshz
"diagnosis_result_name"
:
"人工审核中"
,
//诊断结果名字 通过/未通过/人工审核中
"status_name"
:
"待处理"
,
//状态名字
"qualifications_pic"
:
null
,
//基础资质json
"brand_pic"
:
null
,
//品牌资质json
"industry_pic"
:
null
,
//行业资质json
"notes"
:
null
,
//备注
"status"
:
"dcl"
,
//状态 dcl/gtz/dqrfa/ygb/ywc
"created_at"
:
"2020-08-12T03:07:27.000Z"
,
//创建时间
"updated_at"
:
"2020-08-12T03:07:27.000Z"
,
//更新时间
"deleted_at"
:
null
,
//删除时间
"version"
:
0
},
"requestId"
:
"c0dbbd7ba07c4a63899b672816c2276e"
}
...
...
@@ -140,7 +154,34 @@
```
javascript
{
"id"
:
0
,
"diagnosisResult"
:
"诊断结果"
"diagnosisResult"
:
"tg"
//诊断结果"tg/wtg/rgshz(通过/未通过/人工审核中)
}
```
#### 返回结果
```
javascript
{
"status"
:
0
,
"msg"
:
"success"
,
"data"
:
[
1
],
"requestId"
:
"c0dbbd7ba07c4a63899b672816c2276e"
}
```
## **<a name="getDnNeedList"> 获取需求列表</a>**
[
返回到目录
](
#menu
)
<a
name=
"menu"
href=
"/doc"
>
返回主目录
</a>
##### URL
[
/web/zzzd/diagnosisneedbus/springBoard
]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
#### 渠道执行的类型 actionType:getDnNeedList
```
javascript
{
"pageNumber"
:
1
,
//页数
"pageSize"
:
20
,
//每页条数
}
```
...
...
@@ -153,18 +194,85 @@
"count"
:
1
,
"rows"
:
[
{
"id"
:
10
,
"diagnosis_no"
:
"N2020081211076qlz86H"
,
"corporate_type"
:
"qjd"
,
"corporate_type_name"
:
"旗舰店"
,
"corporate_name"
:
"林氏集团"
,
"publish_name"
:
null
,
"publish_mobile"
:
"13911391996"
,
"status"
:
"dcl"
,
"status_name"
:
"待处理"
"id"
:
2848
,
"uapp_id"
:
22
,
//平台渠道id
"channelNeedNo"
:
"N202008120920C5NEHz9"
,
//渠道需求号
"needNo"
:
"N202008120920C5NEHz9"
,
//需求号
"channelUserId"
:
"15010929366"
,
//渠道用户唯一码
"publishName"
:
""
,
//发布者姓名
"publisherOnlyCode"
:
null
,
//发布者唯一码
"publishContent"
:
"公司注册 - "
,
//发布内容
"publishMobile"
:
"13911391996"
,
//发布者手机号
"followManUserId"
:
null
,
//跟进者唯一码
"followManName"
:
null
,
//跟进人姓名
"followManMobile"
:
null
,
//跟进者手机号
"followManOnlyCode"
:
null
,
//跟进者唯一码
"followContent"
:
null
,
//跟进内容
"productOneType_id"
:
null
,
//产品大类Id
"productType_id"
:
null
,
//产品类型Id
"notes"
:
null
,
//备注
"disposeNotes"
:
null
,
//处理的备注
"statusName"
:
"已关闭"
,
//状态名称
"status"
:
"ygb"
,
//状态 wts未推送,yts已推送,ygj已跟进,ycd已成单
"city"
:
"北京市-北京市-大兴区"
,
//城市
"province"
:
null
,
//省份
"typeCode"
:
"gszc"
,
//类型编码
"typeName"
:
"公司注册"
,
//类型名称
"channelTypeCode"
:
"gszc"
,
//渠道类型编码
"channelTypeName"
:
"公司注册"
,
//渠道类型名称
"created_at"
:
"2020-08-12T01:20:24.000Z"
,
//创建时间
"updated_at"
:
"2020-08-12T01:41:49.000Z"
,
//更新时间
"deleted_at"
:
null
,
//删除时间
"version"
:
0
}
],
"requestId"
:
"ad648f41e2df471f99834e782ea993d6"
},
"requestId"
:
"c0dbbd7ba07c4a63899b672816c2276e"
}
```
## **<a name="getDnNeedDetail"> 获取需求详情</a>**
[
返回到目录
](
#menu
)
<a
name=
"menu"
href=
"/doc"
>
返回主目录
</a>
##### URL
[
/web/zzzd/diagnosisneedbus/springBoard
]
#### 参数格式 `JSON`
#### HTTP请求方式 `POST`
#### 渠道执行的类型 actionType:getDnNeedDetail
```
javascript
{
"needNo"
:
"N202008120920C5NEHz9"
//需求号
}
```
#### 返回结果
```
javascript
{
"status"
:
0
,
"msg"
:
"success"
,
"data"
:
{
"id"
:
2848
,
"uapp_id"
:
22
,
//平台渠道id
"needNo"
:
"N202008120920C5NEHz9"
,
//需求号
"channelNeedNo"
:
"N202008120920C5NEHz9"
,
//渠道需求号
"channelUserId"
:
"15010929366"
,
//渠道用户唯一码
"followManUserId"
:
null
,
//跟进者唯一码
"followManMobile"
:
null
,
//跟进者手机号
"city"
:
"北京市-北京市-大兴区"
,
//城市
"province"
:
null
,
//省份
"publishContent"
:
"公司注册 - "
,
//发布内容
"publishName"
:
""
,
//发布者姓名
"publishMobile"
:
"13911391996"
,
//发布者手机号
"notes"
:
null
,
//备注
"followContent"
:
null
,
//跟进内容
"disposeNotes"
:
null
,
//处理的备注
"status"
:
"ygb"
,
//状态 wts未推送,yts已推送,ygj已跟进,ycd已成单
"typeCode"
:
"gszc"
,
//类型编码
"typeName"
:
"公司注册"
,
//类型名称
"channelTypeCode"
:
"gszc"
,
//渠道类型编码
"channelTypeName"
:
"公司注册"
,
//渠道类型名称
"publisherOnlyCode"
:
null
,
//发布者唯一码
"followManName"
:
null
,
//跟进人姓名
"followManOnlyCode"
:
null
//跟进者唯一码
},
"requestId"
:
"c0dbbd7ba07c4a63899b672816c2276e"
}
...
...
center-channel/app/front/entry/public/apidoc/platform/zzzd.md
View file @
0a13e683
...
...
@@ -50,6 +50,9 @@
{
"enterprise"
:
"企业名称"
,
"mobile"
:
"联系电话"
,
"corporateType"
:
"店铺类型 电商诊断:qi旗舰店qjd/专卖店zmd/直营店zyd,直播诊断:企业qy/个体工商户gtgsh/民办非企业mbfqy/法律服务flfw"
,
"diagnosisType"
:
"诊断类型 直播/电商 zb/ds"
,
"mainClass"
:
[
"一级-二级"
,
"一级-二级"
]
"主营类目"
,
基础资质
如果非必填的资质未上传,则
picUrl
给
""
即可
"qualificationsPic"
:[{
"picName"
:
"营业执照"
,
...
...
@@ -67,7 +70,7 @@
"picUrl"
:
"https://gsb-zc.oss-cn-beijing.aliyuncs.com//zc_958415948076283422020615.jpg"
}],
行业资质
"
brand
Pic"
:[{
"
industry
Pic"
:[{
"picName"
:
"营业执照"
,
"picUrl"
:
"https://gsb-zc.oss-cn-beijing.aliyuncs.com//zc_958415948076283422020615.jpg"
},{
...
...
@@ -80,11 +83,10 @@
#### 返回结果
```
javascript
{
"status"
:
-
1
,
"msg"
:
"
审核不通过,原因:营业执照分析失败
"
,
"status"
:
-
5005
,
"msg"
:
"
诊断类型不能为空
"
,
"data"
:
null
,
"bizmsg"
:
"empty"
,
"requestId"
:
"7ac5b432225d43c58e78dcc630518fdd"
"requestId"
:
"4a19931c4f9e4d2c8c0a203407de46f5"
}
{
"status"
:
0
,
...
...
@@ -121,8 +123,30 @@
{
"status"
:
0
,
"msg"
:
"success"
,
"data"
:
null
,
"requestId"
:
"837ea5c284074d568fa198f7f259088a"
"data"
:
{
"count"
:
11
,
"rows"
:
[
{
"diagnosis_no"
:
"N202008121159HM3GJ89"
,
"corporate_name"
:
"1"
,
"publish_mobile"
:
"14444444444"
,
"diagnosis_type_name"
:
"直播"
,
"diagnosis_mode_name"
:
"智能评估"
,
"diagnosis_result_name"
:
"未通过"
,
"updated_at"
:
"2020-08-12T03:59:35.000Z"
},
{
"diagnosis_no"
:
"N202008121159HM3GJ89"
,
"corporate_name"
:
"1"
,
"publish_mobile"
:
"14444444444"
,
"diagnosis_type_name"
:
"直播"
,
"diagnosis_mode_name"
:
"智能评估"
,
"diagnosis_result_name"
:
"未通过"
,
"updated_at"
:
"2020-08-12T03:59:35.000Z"
},
]
},
"requestId"
:
"6934d3c04d744bfa900c9c929b08dd7b"
}
```
...
...
@@ -139,12 +163,38 @@
#### 返回结果
```
javascript
// 等待填写
{
"status"
:
0
,
"msg"
:
"success"
,
"data"
:
null
,
"requestId"
:
"837ea5c284074d568fa198f7f259088a"
"data"
:
{
"id"
:
10
,
"uapp_id"
:
22
,
"channel_user_id"
:
"13911391996"
,
"diagnosis_no"
:
"N2020081211076qlz86H"
,
"corporate_name"
:
"林氏集团"
,
"publish_name"
:
null
,
"publish_mobile"
:
"13911391996"
,
"corporate_type"
:
"qjd"
,
"corporate_type_name"
:
"旗舰店"
,
"diagnosis_type"
:
"zb"
,
"diagnosis_type_name"
:
"直播"
,
"diagnosis_mode"
:
"rg"
,
"diagnosis_mode_name"
:
"人工评估"
,
"diagnosis_result"
:
"wtg"
,
"diagnosis_result_name"
:
"未通过"
,
"diagnosis_result_data"
:
null
,
"status_name"
:
"已完成"
,
"qualifications_pic"
:
null
,
"brand_pic"
:
null
,
"industry_pic"
:
null
,
"notes"
:
null
,
"status"
:
"ywc"
,
"created_at"
:
"2020-08-12T03:07:27.000Z"
,
"updated_at"
:
"2020-08-12T05:56:09.000Z"
,
"deleted_at"
:
null
,
"version"
:
0
},
"requestId"
:
"2208af94126f4c168659947dc8bd4feb"
}
```
...
...
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