Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
X
xyqb-user2
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
head_group
xyqb-user2
Commits
2d54b09e
Commit
2d54b09e
authored
Aug 01, 2017
by
Java—红包—徐 然
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature/caiwu'
# Conflicts: # src/main/resources/config/dev/xyqb.properties
parents
dbe74562
723cc072
Changes
17
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
155 additions
and
52 deletions
+155
-52
pom.xml
pom.xml
+1
-1
HelloController.java
...group/xyqb/controller/external/index/HelloController.java
+1
-0
MotanUserServiceImpl.java
.../xyqb/controller/external/motan/MotanUserServiceImpl.java
+12
-13
InnerController.java
...tgroup/xyqb/controller/external/user/InnerController.java
+120
-16
UserCenterController.java
...controller/external/user/center/UserCenterController.java
+1
-2
Contact.java
src/main/java/cn/quantgroup/xyqb/entity/Contact.java
+1
-1
UserDetail.java
src/main/java/cn/quantgroup/xyqb/entity/UserDetail.java
+2
-2
UserExtInfo.java
src/main/java/cn/quantgroup/xyqb/entity/UserExtInfo.java
+6
-6
UserSpouse.java
src/main/java/cn/quantgroup/xyqb/entity/UserSpouse.java
+1
-1
RequestFilter.java
src/main/java/cn/quantgroup/xyqb/filter/RequestFilter.java
+1
-1
ContactRet.java
src/main/java/cn/quantgroup/xyqb/model/ContactRet.java
+1
-1
UserExtInfoRet.java
src/main/java/cn/quantgroup/xyqb/model/UserExtInfoRet.java
+1
-1
UserSpouseRet.java
src/main/java/cn/quantgroup/xyqb/model/UserSpouseRet.java
+1
-1
ContactServiceImpl.java
...quantgroup/xyqb/service/user/impl/ContactServiceImpl.java
+2
-2
UserServiceImpl.java
...cn/quantgroup/xyqb/service/user/impl/UserServiceImpl.java
+1
-1
UserDetailVO.java
...java/cn/quantgroup/xyqb/service/user/vo/UserDetailVO.java
+2
-2
xyqb.properties
src/main/resources/config/dev/xyqb.properties
+1
-1
No files found.
pom.xml
View file @
2d54b09e
...
@@ -273,7 +273,7 @@
...
@@ -273,7 +273,7 @@
<dependency>
<dependency>
<groupId>
cn.quantgroup
</groupId>
<groupId>
cn.quantgroup
</groupId>
<artifactId>
xyqb-user-rpc-commons
</artifactId>
<artifactId>
xyqb-user-rpc-commons
</artifactId>
<version>
1.1.
2
-SNAPSHOT
</version>
<version>
1.1.
1
-SNAPSHOT
</version>
</dependency>
</dependency>
<dependency>
<dependency>
...
...
src/main/java/cn/quantgroup/xyqb/controller/external/index/HelloController.java
View file @
2d54b09e
...
@@ -10,6 +10,7 @@ import org.springframework.web.bind.annotation.RestController;
...
@@ -10,6 +10,7 @@ import org.springframework.web.bind.annotation.RestController;
@RestController
@RestController
@RequestMapping
(
"/hello"
)
@RequestMapping
(
"/hello"
)
public
class
HelloController
{
public
class
HelloController
{
@RequestMapping
(
"/hello"
)
@RequestMapping
(
"/hello"
)
public
String
hello
(){
public
String
hello
(){
return
"ok"
;
return
"ok"
;
...
...
src/main/java/cn/quantgroup/xyqb/controller/external/motan/MotanUserServiceImpl.java
View file @
2d54b09e
...
@@ -7,7 +7,7 @@ import cn.quantgroup.motan.vo.UserSysResult;
...
@@ -7,7 +7,7 @@ import cn.quantgroup.motan.vo.UserSysResult;
import
cn.quantgroup.xyqb.Constants
;
import
cn.quantgroup.xyqb.Constants
;
import
cn.quantgroup.xyqb.entity.*
;
import
cn.quantgroup.xyqb.entity.*
;
//import cn.quantgroup.xyqb.entity.enumerate.*;
//import cn.quantgroup.xyqb.entity.enumerate.*;
import
cn.quantgroup.
user
.enums.*
;
import
cn.quantgroup.
motan
.enums.*
;
import
cn.quantgroup.xyqb.model.*
;
import
cn.quantgroup.xyqb.model.*
;
import
cn.quantgroup.xyqb.model.IdType
;
import
cn.quantgroup.xyqb.model.IdType
;
import
cn.quantgroup.xyqb.model.session.LoginInfo
;
import
cn.quantgroup.xyqb.model.session.LoginInfo
;
...
@@ -96,10 +96,9 @@ public class MotanUserServiceImpl implements UserMotanService {
...
@@ -96,10 +96,9 @@ public class MotanUserServiceImpl implements UserMotanService {
@Autowired
@Autowired
private
IUserApiService
userApiService
;
private
IUserApiService
userApiService
;
@Override
//public UserSysResult<XUser> saveUserRelatedInfo(UserRelatedBean userRelatedBean) {
public
UserSysResult
<
XUser
>
saveUserRelatedInfo
(
UserRelatedBean
userRelatedBean
)
{
// return null;
return
null
;
//}
}
@Override
@Override
public
UserSysResult
<
XUser
>
findUserByPhoneNo
(
String
phoneNo
)
{
public
UserSysResult
<
XUser
>
findUserByPhoneNo
(
String
phoneNo
)
{
...
@@ -531,7 +530,7 @@ public class MotanUserServiceImpl implements UserMotanService {
...
@@ -531,7 +530,7 @@ public class MotanUserServiceImpl implements UserMotanService {
xUserSpouse
.
setSpouseName
(
userSpouse
.
getSpouseName
());
xUserSpouse
.
setSpouseName
(
userSpouse
.
getSpouseName
());
xUserSpouse
.
setCreatedAt
(
userSpouse
.
getCreatedAt
());
xUserSpouse
.
setCreatedAt
(
userSpouse
.
getCreatedAt
());
xUserSpouse
.
setUpdateAt
(
userSpouse
.
getUpdateAt
());
xUserSpouse
.
setUpdateAt
(
userSpouse
.
getUpdateAt
());
xUserSpouse
.
setStatus
(
cn
.
quantgroup
.
user
.
enums
.
MaritalStatus
.
valueOf
(
userSpouse
.
getStatus
().
name
()));
xUserSpouse
.
setStatus
(
cn
.
quantgroup
.
motan
.
enums
.
MaritalStatus
.
valueOf
(
userSpouse
.
getStatus
().
name
()));
return
xUserSpouse
;
return
xUserSpouse
;
}
}
...
@@ -586,10 +585,10 @@ public class MotanUserServiceImpl implements UserMotanService {
...
@@ -586,10 +585,10 @@ public class MotanUserServiceImpl implements UserMotanService {
if
(
xUserSpouse
.
getUserId
()
==
null
||
xUserSpouse
.
getUserId
()
==
0
)
{
if
(
xUserSpouse
.
getUserId
()
==
null
||
xUserSpouse
.
getUserId
()
==
0
)
{
return
returnErrorValue
(
"用户不能为空"
);
return
returnErrorValue
(
"用户不能为空"
);
}
}
cn
.
quantgroup
.
user
.
enums
.
MaritalStatus
status
=
xUserSpouse
.
getStatus
();
cn
.
quantgroup
.
motan
.
enums
.
MaritalStatus
status
=
xUserSpouse
.
getStatus
();
String
spousePhone
=
xUserSpouse
.
getSpousePhone
();
String
spousePhone
=
xUserSpouse
.
getSpousePhone
();
String
spouseName
=
xUserSpouse
.
getSpouseName
();
String
spouseName
=
xUserSpouse
.
getSpouseName
();
if
(
xUserSpouse
.
getStatus
()
==
cn
.
quantgroup
.
user
.
enums
.
MaritalStatus
.
MARRIED
)
{
if
(
xUserSpouse
.
getStatus
()
==
cn
.
quantgroup
.
motan
.
enums
.
MaritalStatus
.
MARRIED
)
{
if
(!
ValidationUtil
.
validatePhoneNo
(
spousePhone
))
{
if
(!
ValidationUtil
.
validatePhoneNo
(
spousePhone
))
{
return
returnErrorValue
(
"手机号格式错误"
);
return
returnErrorValue
(
"手机号格式错误"
);
}
}
...
@@ -603,9 +602,9 @@ public class MotanUserServiceImpl implements UserMotanService {
...
@@ -603,9 +602,9 @@ public class MotanUserServiceImpl implements UserMotanService {
userSpouse
=
new
UserSpouse
(
xUserSpouse
.
getUserId
());
userSpouse
=
new
UserSpouse
(
xUserSpouse
.
getUserId
());
userSpouse
.
setCreatedAt
(
timestamp
);
userSpouse
.
setCreatedAt
(
timestamp
);
}
}
userSpouse
.
setSpouseName
(
status
==
cn
.
quantgroup
.
user
.
enums
.
MaritalStatus
.
MARRIED
?
spouseName
:
""
);
userSpouse
.
setSpouseName
(
status
==
cn
.
quantgroup
.
motan
.
enums
.
MaritalStatus
.
MARRIED
?
spouseName
:
""
);
userSpouse
.
setSpousePhone
(
status
==
cn
.
quantgroup
.
user
.
enums
.
MaritalStatus
.
MARRIED
?
spousePhone
:
""
);
userSpouse
.
setSpousePhone
(
status
==
cn
.
quantgroup
.
motan
.
enums
.
MaritalStatus
.
MARRIED
?
spousePhone
:
""
);
userSpouse
.
setStatus
(
cn
.
quantgroup
.
user
.
enums
.
MaritalStatus
.
valueOf
(
status
.
name
()));
userSpouse
.
setStatus
(
cn
.
quantgroup
.
motan
.
enums
.
MaritalStatus
.
valueOf
(
status
.
name
()));
userSpouse
.
setUpdateAt
(
timestamp
);
userSpouse
.
setUpdateAt
(
timestamp
);
userSpouse
=
userSpouseService
.
save
(
userSpouse
);
userSpouse
=
userSpouseService
.
save
(
userSpouse
);
return
returnSuccessValue
(
fromUserSpouse
(
userSpouse
));
return
returnSuccessValue
(
fromUserSpouse
(
userSpouse
));
...
@@ -829,12 +828,12 @@ public class MotanUserServiceImpl implements UserMotanService {
...
@@ -829,12 +828,12 @@ public class MotanUserServiceImpl implements UserMotanService {
return
user
;
return
user
;
}
}
@Override
public
UserSysResult
<
XUserDetail
>
modifyUserDetail
(
UserDetailUpdateBean
userDetailUpdateBean
)
{
public
UserSysResult
<
XUserDetail
>
modifyUserDetail
(
UserDetailUpdateBean
userDetailUpdateBean
)
{
return
returnErrorValue
(
"MotanUserServiceImpl modifyUserDetail(UserDetailUpdateBean userDetailUpdateBean) need to be finish."
);
return
returnErrorValue
(
"MotanUserServiceImpl modifyUserDetail(UserDetailUpdateBean userDetailUpdateBean) need to be finish."
);
}
}
@Override
public
UserSysResult
<
Map
<
Long
,
String
>>
findPhoneByUserIds
(
List
<
Long
>
userIds
)
{
public
UserSysResult
<
Map
<
Long
,
String
>>
findPhoneByUserIds
(
List
<
Long
>
userIds
)
{
if
(!
CollectionUtils
.
isEmpty
(
userIds
)
&&
userIds
.
size
()<=
500
)
{
if
(!
CollectionUtils
.
isEmpty
(
userIds
)
&&
userIds
.
size
()<=
500
)
{
...
...
src/main/java/cn/quantgroup/xyqb/controller/external/user/InnerController.java
View file @
2d54b09e
package
cn
.
quantgroup
.
xyqb
.
controller
.
external
.
user
;
package
cn
.
quantgroup
.
xyqb
.
controller
.
external
.
user
;
import
cn.quantgroup.motan.bean.UserAssociationBean
;
import
cn.quantgroup.motan.retbean.XContact
;
import
cn.quantgroup.motan.retbean.XContactInfo
;
import
cn.quantgroup.xyqb.aspect.logcaller.LogHttpCaller
;
import
cn.quantgroup.xyqb.aspect.logcaller.LogHttpCaller
;
import
cn.quantgroup.xyqb.controller.IBaseController
;
import
cn.quantgroup.xyqb.controller.IBaseController
;
import
cn.quantgroup.xyqb.entity.Address
;
import
cn.quantgroup.xyqb.entity.Address
;
...
@@ -16,6 +19,7 @@ import cn.quantgroup.xyqb.entity.enumerate.MaritalStatus;
...
@@ -16,6 +19,7 @@ import cn.quantgroup.xyqb.entity.enumerate.MaritalStatus;
import
cn.quantgroup.xyqb.entity.enumerate.OccupationEnum
;
import
cn.quantgroup.xyqb.entity.enumerate.OccupationEnum
;
import
cn.quantgroup.xyqb.model.AddressRet
;
import
cn.quantgroup.xyqb.model.AddressRet
;
import
cn.quantgroup.xyqb.model.ContactRet
;
import
cn.quantgroup.xyqb.model.ContactRet
;
import
cn.quantgroup.xyqb.model.Gender
;
import
cn.quantgroup.xyqb.model.IdType
;
import
cn.quantgroup.xyqb.model.IdType
;
import
cn.quantgroup.xyqb.model.JsonResult
;
import
cn.quantgroup.xyqb.model.JsonResult
;
import
cn.quantgroup.xyqb.model.UserDetailRet
;
import
cn.quantgroup.xyqb.model.UserDetailRet
;
...
@@ -45,6 +49,7 @@ import com.google.common.base.MoreObjects;
...
@@ -45,6 +49,7 @@ import com.google.common.base.MoreObjects;
import
com.google.common.collect.ImmutableMap
;
import
com.google.common.collect.ImmutableMap
;
import
java.sql.Timestamp
;
import
java.sql.Timestamp
;
import
java.text.ParseException
;
import
java.text.ParseException
;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.Collections
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
...
@@ -151,16 +156,17 @@ public class InnerController implements IBaseController {
...
@@ -151,16 +156,17 @@ public class InnerController implements IBaseController {
return
JsonResult
.
buildSuccessResult
(
null
,
null
);
return
JsonResult
.
buildSuccessResult
(
null
,
null
);
}
}
User
user
=
userService
.
findByUuidInDb
(
uuid
);
User
user
=
userService
.
findByUuidInDb
(
uuid
);
if
(
null
!=
user
)
{
if
(
null
!=
user
)
{
if
(!
user
.
getEnable
())
{
if
(!
user
.
getEnable
())
{
return
JsonResult
.
buildSuccessResult
(
""
,
null
);
return
JsonResult
.
buildSuccessResult
(
""
,
null
);
}
}
UserDetail
userDetail
=
userDetailService
.
findByUserId
(
user
.
getId
());
UserDetail
userDetail
=
userDetailService
.
findByUserId
(
user
.
getId
());
UserInfo
info
=
new
UserInfo
(
user
,
userDetail
);
UserInfo
info
=
new
UserInfo
(
user
,
userDetail
);
return
JsonResult
.
buildSuccessResult
(
""
,
info
);
return
JsonResult
.
buildSuccessResult
(
""
,
info
);
}
}
return
JsonResult
.
buildSuccessResult
(
""
,
null
);
return
JsonResult
.
buildSuccessResult
(
""
,
null
);
}
}
@RequestMapping
(
"/userInfo/search/phone"
)
@RequestMapping
(
"/userInfo/search/phone"
)
@LogHttpCaller
@LogHttpCaller
public
JsonResult
findUserInfoByPhone
(
@RequestParam
(
value
=
"phone"
)
String
phone
)
{
public
JsonResult
findUserInfoByPhone
(
@RequestParam
(
value
=
"phone"
)
String
phone
)
{
...
@@ -170,18 +176,17 @@ public class InnerController implements IBaseController {
...
@@ -170,18 +176,17 @@ public class InnerController implements IBaseController {
return
JsonResult
.
buildSuccessResult
(
null
,
null
);
return
JsonResult
.
buildSuccessResult
(
null
,
null
);
}
}
User
user
=
userService
.
findByPhoneInDb
(
phone
);
User
user
=
userService
.
findByPhoneInDb
(
phone
);
if
(
null
!=
user
)
{
if
(
null
!=
user
)
{
if
(!
user
.
getEnable
())
{
if
(!
user
.
getEnable
())
{
return
JsonResult
.
buildSuccessResult
(
""
,
null
);
return
JsonResult
.
buildSuccessResult
(
""
,
null
);
}
}
UserDetail
userDetail
=
userDetailService
.
findByUserId
(
user
.
getId
());
UserDetail
userDetail
=
userDetailService
.
findByUserId
(
user
.
getId
());
UserInfo
info
=
new
UserInfo
(
user
,
userDetail
);
UserInfo
info
=
new
UserInfo
(
user
,
userDetail
);
return
JsonResult
.
buildSuccessResult
(
""
,
info
);
return
JsonResult
.
buildSuccessResult
(
""
,
info
);
}
}
return
JsonResult
.
buildSuccessResult
(
""
,
null
);
return
JsonResult
.
buildSuccessResult
(
""
,
null
);
}
}
@RequestMapping
(
"/user/getPhoneByUserIds"
)
@RequestMapping
(
"/user/getPhoneByUserIds"
)
@LogHttpCaller
@LogHttpCaller
public
JsonResult
findByIds
(
@RequestParam
(
value
=
"userIds"
)
String
userIdsString
)
{
public
JsonResult
findByIds
(
@RequestParam
(
value
=
"userIds"
)
String
userIdsString
)
{
...
@@ -199,6 +204,83 @@ public class InnerController implements IBaseController {
...
@@ -199,6 +204,83 @@ public class InnerController implements IBaseController {
}
}
}
}
@RequestMapping
(
"/user-association/search/phone"
)
@LogHttpCaller
public
JsonResult
findUserAssociationByPhone
(
String
phoneNo
)
{
UserDetail
userDetail
=
userDetailService
.
findByPhoneNo
(
phoneNo
);
UserAssociationBean
bean
=
new
UserAssociationBean
();
if
(
null
!=
userDetail
)
{
Address
address
=
addressService
.
findByUserId
(
userDetail
.
getUserId
());
List
<
Contact
>
contacts
=
contactService
.
findByUserId
(
userDetail
.
getUserId
());
UserExtInfo
extInfo
=
userExtInfoService
.
findByUserId
(
userDetail
.
getUserId
());
bean
.
setUserId
(
userDetail
.
getUserId
());
bean
.
setPhoneNo
(
userDetail
.
getPhoneNo
());
bean
.
setName
(
userDetail
.
getName
());
bean
.
setIdNo
(
userDetail
.
getIdNo
());
bean
.
setQq
(
userDetail
.
getQq
());
if
(
null
!=
userDetail
.
getGender
())
{
bean
.
setGender
(
userDetail
.
getGender
().
getName
());
}
if
(
null
!=
address
)
{
bean
.
setCity
(
address
.
getCity
());
bean
.
setDistrict
(
address
.
getDistrict
());
bean
.
setAddress
(
address
.
getAddress
());
bean
.
setProvince
(
address
.
getProvince
());
}
if
(
null
!=
extInfo
)
{
bean
.
setEducationEnum
(
extInfo
.
getEducationEnum
().
getName
());
bean
.
setOccupationEnum
(
extInfo
.
getOccupationEnum
().
getName
());
bean
.
setMarryStatus
(
extInfo
.
getMarryStatus
().
getDescription
());
}
if
(
org
.
apache
.
commons
.
collections
.
CollectionUtils
.
isNotEmpty
(
contacts
))
{
List
<
XContactInfo
>
userContacts
=
contacts2ContactRets
(
contacts
);
bean
.
setContractResults
(
userContacts
);
}
}
return
JsonResult
.
buildSuccessResult
(
""
,
bean
);
}
@RequestMapping
(
"/user-association/search/uid"
)
@LogHttpCaller
public
JsonResult
findUserAssociationByUid
(
Long
uid
)
{
UserDetail
userDetail
=
userDetailService
.
findByUserId
(
uid
);
UserAssociationBean
bean
=
new
UserAssociationBean
();
if
(
null
!=
userDetail
)
{
Address
address
=
addressService
.
findByUserId
(
userDetail
.
getUserId
());
List
<
Contact
>
contacts
=
contactService
.
findByUserId
(
userDetail
.
getUserId
());
UserExtInfo
extInfo
=
userExtInfoService
.
findByUserId
(
userDetail
.
getUserId
());
bean
.
setUserId
(
userDetail
.
getUserId
());
bean
.
setPhoneNo
(
userDetail
.
getPhoneNo
());
bean
.
setName
(
userDetail
.
getName
());
bean
.
setIdNo
(
userDetail
.
getIdNo
());
bean
.
setQq
(
userDetail
.
getQq
());
if
(
null
!=
userDetail
.
getGender
())
{
bean
.
setGender
(
userDetail
.
getGender
().
getName
());
}
if
(
null
!=
address
)
{
bean
.
setCity
(
address
.
getCity
());
bean
.
setDistrict
(
address
.
getDistrict
());
bean
.
setAddress
(
address
.
getAddress
());
bean
.
setProvince
(
address
.
getProvince
());
}
if
(
null
!=
extInfo
)
{
bean
.
setEducationEnum
(
extInfo
.
getEducationEnum
().
getName
());
bean
.
setOccupationEnum
(
extInfo
.
getOccupationEnum
().
getName
());
bean
.
setMarryStatus
(
extInfo
.
getMarryStatus
().
getDescription
());
}
if
(
org
.
apache
.
commons
.
collections
.
CollectionUtils
.
isNotEmpty
(
contacts
))
{
List
<
XContactInfo
>
userContacts
=
contacts2ContactRets
(
contacts
);
bean
.
setContractResults
(
userContacts
);
}
}
return
JsonResult
.
buildSuccessResult
(
""
,
bean
);
}
@RequestMapping
(
"/user/save"
)
@RequestMapping
(
"/user/save"
)
public
JsonResult
saveUser
(
public
JsonResult
saveUser
(
String
phoneNo
,
Long
registeredFrom
,
Long
createdAt
,
Long
updatedAt
,
String
phoneNo
,
Long
registeredFrom
,
Long
createdAt
,
Long
updatedAt
,
...
@@ -372,7 +454,7 @@ public class InnerController implements IBaseController {
...
@@ -372,7 +454,7 @@ public class InnerController implements IBaseController {
for
(
Contact
c
:
contacts
)
{
for
(
Contact
c
:
contacts
)
{
c
.
setId
(
null
);
c
.
setId
(
null
);
c
.
setUserId
(
userId
);
c
.
setUserId
(
userId
);
c
.
setRelation
(
c
.
getRelation
()
==
null
?
cn
.
quantgroup
.
user
.
enums
.
Relation
.
OTHER
:
c
.
getRelation
());
c
.
setRelation
(
c
.
getRelation
()
==
null
?
cn
.
quantgroup
.
motan
.
enums
.
Relation
.
OTHER
:
c
.
getRelation
());
c
.
setCreatedAt
(
now
);
c
.
setCreatedAt
(
now
);
c
.
setUpdateAt
(
now
);
c
.
setUpdateAt
(
now
);
}
}
...
@@ -434,16 +516,16 @@ public class InnerController implements IBaseController {
...
@@ -434,16 +516,16 @@ public class InnerController implements IBaseController {
}
}
info
.
setUpdateAt
(
now
);
info
.
setUpdateAt
(
now
);
if
(
incomeEnum
!=
null
)
{
if
(
incomeEnum
!=
null
)
{
info
.
setIncomeEnum
(
cn
.
quantgroup
.
user
.
enums
.
IncomeEnum
.
valueOf
(
incomeEnum
.
name
()));
info
.
setIncomeEnum
(
cn
.
quantgroup
.
motan
.
enums
.
IncomeEnum
.
valueOf
(
incomeEnum
.
name
()));
}
}
if
(
incomeRangeEnum
!=
null
)
{
if
(
incomeRangeEnum
!=
null
)
{
info
.
setIncomeRangeEnum
(
cn
.
quantgroup
.
user
.
enums
.
IncomeRangeEnum
.
valueOf
(
incomeRangeEnum
.
name
()));
info
.
setIncomeRangeEnum
(
cn
.
quantgroup
.
motan
.
enums
.
IncomeRangeEnum
.
valueOf
(
incomeRangeEnum
.
name
()));
}
}
if
(
occupationEnum
!=
null
)
{
if
(
occupationEnum
!=
null
)
{
info
.
setOccupationEnum
(
cn
.
quantgroup
.
user
.
enums
.
OccupationEnum
.
valueOf
(
occupationEnum
.
name
()));
info
.
setOccupationEnum
(
cn
.
quantgroup
.
motan
.
enums
.
OccupationEnum
.
valueOf
(
occupationEnum
.
name
()));
}
}
if
(
educationEnum
!=
null
)
{
if
(
educationEnum
!=
null
)
{
info
.
setEducationEnum
(
cn
.
quantgroup
.
user
.
enums
.
EducationEnum
.
valueOf
(
educationEnum
.
name
()));
info
.
setEducationEnum
(
cn
.
quantgroup
.
motan
.
enums
.
EducationEnum
.
valueOf
(
educationEnum
.
name
()));
}
}
if
(
hasCar
!=
null
)
{
if
(
hasCar
!=
null
)
{
info
.
setHasCar
(
hasCar
);
info
.
setHasCar
(
hasCar
);
...
@@ -455,7 +537,7 @@ public class InnerController implements IBaseController {
...
@@ -455,7 +537,7 @@ public class InnerController implements IBaseController {
info
.
setHasHouse
(
hasHouse
);
info
.
setHasHouse
(
hasHouse
);
}
}
if
(
maritalStatus
!=
null
)
{
if
(
maritalStatus
!=
null
)
{
info
.
setMarryStatus
(
cn
.
quantgroup
.
user
.
enums
.
MaritalStatus
.
valueOf
(
maritalStatus
.
name
()));
info
.
setMarryStatus
(
cn
.
quantgroup
.
motan
.
enums
.
MaritalStatus
.
valueOf
(
maritalStatus
.
name
()));
}
}
info
=
userExtInfoService
.
save
(
info
);
info
=
userExtInfoService
.
save
(
info
);
return
JsonResult
.
buildSuccessResult
(
null
,
UserExtInfoRet
.
getUserExtInfoRet
(
info
));
return
JsonResult
.
buildSuccessResult
(
null
,
UserExtInfoRet
.
getUserExtInfoRet
(
info
));
...
@@ -568,7 +650,7 @@ public class InnerController implements IBaseController {
...
@@ -568,7 +650,7 @@ public class InnerController implements IBaseController {
}
}
userSpouse
.
setSpouseName
(
status
==
MaritalStatus
.
MARRIED
?
spouseName
:
""
);
userSpouse
.
setSpouseName
(
status
==
MaritalStatus
.
MARRIED
?
spouseName
:
""
);
userSpouse
.
setSpousePhone
(
status
==
MaritalStatus
.
MARRIED
?
spousePhone
:
""
);
userSpouse
.
setSpousePhone
(
status
==
MaritalStatus
.
MARRIED
?
spousePhone
:
""
);
userSpouse
.
setStatus
(
cn
.
quantgroup
.
user
.
enums
.
MaritalStatus
.
valueOf
(
status
.
name
()));
userSpouse
.
setStatus
(
cn
.
quantgroup
.
motan
.
enums
.
MaritalStatus
.
valueOf
(
status
.
name
()));
userSpouse
.
setUpdateAt
(
timestamp
);
userSpouse
.
setUpdateAt
(
timestamp
);
userSpouse
=
userSpouseService
.
save
(
userSpouse
);
userSpouse
=
userSpouseService
.
save
(
userSpouse
);
return
JsonResult
.
buildSuccessResult
(
null
,
UserSpouseRet
.
getUserSpouseRet
(
userSpouse
));
return
JsonResult
.
buildSuccessResult
(
null
,
UserSpouseRet
.
getUserSpouseRet
(
userSpouse
));
...
@@ -583,7 +665,7 @@ public class InnerController implements IBaseController {
...
@@ -583,7 +665,7 @@ public class InnerController implements IBaseController {
UserSpouse
userSpouse
=
userSpouseService
.
findByUserId
(
userId
);
UserSpouse
userSpouse
=
userSpouseService
.
findByUserId
(
userId
);
if
(
userSpouse
==
null
)
{
if
(
userSpouse
==
null
)
{
userSpouse
=
new
UserSpouse
(
userId
);
userSpouse
=
new
UserSpouse
(
userId
);
userSpouse
.
setStatus
(
cn
.
quantgroup
.
user
.
enums
.
MaritalStatus
.
UNKNOWN
);
userSpouse
.
setStatus
(
cn
.
quantgroup
.
motan
.
enums
.
MaritalStatus
.
UNKNOWN
);
}
}
return
JsonResult
.
buildSuccessResult
(
null
,
UserSpouseRet
.
getUserSpouseRet
(
userSpouse
));
return
JsonResult
.
buildSuccessResult
(
null
,
UserSpouseRet
.
getUserSpouseRet
(
userSpouse
));
}
}
...
@@ -715,6 +797,29 @@ public class InnerController implements IBaseController {
...
@@ -715,6 +797,29 @@ public class InnerController implements IBaseController {
return
JsonResult
.
buildSuccessResult
(
null
,
new
UserRet
(
user
));
return
JsonResult
.
buildSuccessResult
(
null
,
new
UserRet
(
user
));
}
}
public
static
XContactInfo
contact2ContactRet
(
Contact
c
)
{
if
(
c
==
null
)
{
return
null
;
}
XContactInfo
ret
=
new
XContactInfo
();
ret
.
setId
(
c
.
getId
());
ret
.
setUserId
(
c
.
getUserId
());
ret
.
setName
(
c
.
getName
());
ret
.
setPhoneNo
(
c
.
getPhoneNo
());
ret
.
setRelation
(
c
.
getRelation
().
getDescription
());
return
ret
;
}
public
static
List
<
XContactInfo
>
contacts2ContactRets
(
List
<
Contact
>
cs
)
{
if
(
org
.
apache
.
commons
.
collections
.
CollectionUtils
.
isEmpty
(
cs
))
{
return
Collections
.
emptyList
();
}
List
<
XContactInfo
>
contactRets
=
new
ArrayList
<>();
for
(
Contact
c
:
cs
)
{
contactRets
.
add
(
contact2ContactRet
(
c
));
}
return
contactRets
;
}
//根据日期时间段查询新注册用户信息并返回
//根据日期时间段查询新注册用户信息并返回
@RequestMapping
(
"/contract/queryRegisterUsers"
)
@RequestMapping
(
"/contract/queryRegisterUsers"
)
...
@@ -726,5 +831,4 @@ public class InnerController implements IBaseController {
...
@@ -726,5 +831,4 @@ public class InnerController implements IBaseController {
List
<
User
>
userList
=
userService
.
findRegisterUserByTime
(
beginTime
,
endTime
);
List
<
User
>
userList
=
userService
.
findRegisterUserByTime
(
beginTime
,
endTime
);
return
JsonResult
.
buildSuccessResult
(
null
,
userList
);
return
JsonResult
.
buildSuccessResult
(
null
,
userList
);
}
}
}
}
\ No newline at end of file
src/main/java/cn/quantgroup/xyqb/controller/external/user/center/UserCenterController.java
View file @
2d54b09e
...
@@ -6,11 +6,10 @@ import cn.quantgroup.xyqb.entity.*;
...
@@ -6,11 +6,10 @@ import cn.quantgroup.xyqb.entity.*;
//import cn.quantgroup.xyqb.entity.enumerate.IncomeRangeEnum;
//import cn.quantgroup.xyqb.entity.enumerate.IncomeRangeEnum;
//import cn.quantgroup.xyqb.entity.enumerate.MaritalStatus;
//import cn.quantgroup.xyqb.entity.enumerate.MaritalStatus;
//import cn.quantgroup.xyqb.entity.enumerate.OccupationEnum;
//import cn.quantgroup.xyqb.entity.enumerate.OccupationEnum;
import
cn.quantgroup.
user
.enums.*
;
import
cn.quantgroup.
motan
.enums.*
;
import
cn.quantgroup.xyqb.model.ContactRet
;
import
cn.quantgroup.xyqb.model.ContactRet
;
import
cn.quantgroup.xyqb.model.JsonResult
;
import
cn.quantgroup.xyqb.model.JsonResult
;
import
cn.quantgroup.xyqb.service.user.*
;
import
cn.quantgroup.xyqb.service.user.*
;
import
cn.quantgroup.user.enums.*
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.TypeReference
;
import
com.alibaba.fastjson.TypeReference
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.collections.CollectionUtils
;
...
...
src/main/java/cn/quantgroup/xyqb/entity/Contact.java
View file @
2d54b09e
package
cn
.
quantgroup
.
xyqb
.
entity
;
package
cn
.
quantgroup
.
xyqb
.
entity
;
import
cn.quantgroup.
user
.enums.Relation
;
import
cn.quantgroup.
motan
.enums.Relation
;
import
lombok.Data
;
import
lombok.Data
;
import
javax.persistence.*
;
import
javax.persistence.*
;
...
...
src/main/java/cn/quantgroup/xyqb/entity/UserDetail.java
View file @
2d54b09e
...
@@ -75,10 +75,10 @@ public class UserDetail implements Serializable {
...
@@ -75,10 +75,10 @@ public class UserDetail implements Serializable {
xUserDetail
.
setName
(
this
.
getName
());
xUserDetail
.
setName
(
this
.
getName
());
xUserDetail
.
setIdNo
(
this
.
getIdNo
());
xUserDetail
.
setIdNo
(
this
.
getIdNo
());
if
(
this
.
getIdType
()
!=
null
)
{
if
(
this
.
getIdType
()
!=
null
)
{
xUserDetail
.
setIdType
(
cn
.
quantgroup
.
user
.
enums
.
IdType
.
valueOf
(
this
.
getIdType
().
name
()));
xUserDetail
.
setIdType
(
cn
.
quantgroup
.
motan
.
enums
.
IdType
.
valueOf
(
this
.
getIdType
().
name
()));
}
}
if
(
this
.
getGender
()
!=
null
)
{
if
(
this
.
getGender
()
!=
null
)
{
xUserDetail
.
setGender
(
cn
.
quantgroup
.
user
.
enums
.
Gender
.
valueOf
(
this
.
getGender
().
name
()));
xUserDetail
.
setGender
(
cn
.
quantgroup
.
motan
.
enums
.
Gender
.
valueOf
(
this
.
getGender
().
name
()));
}
}
xUserDetail
.
setEmail
(
this
.
getEmail
());
xUserDetail
.
setEmail
(
this
.
getEmail
());
xUserDetail
.
setQq
(
this
.
getQq
());
xUserDetail
.
setQq
(
this
.
getQq
());
...
...
src/main/java/cn/quantgroup/xyqb/entity/UserExtInfo.java
View file @
2d54b09e
...
@@ -2,7 +2,7 @@ package cn.quantgroup.xyqb.entity;
...
@@ -2,7 +2,7 @@ package cn.quantgroup.xyqb.entity;
import
cn.quantgroup.motan.retbean.XUserExtInfo
;
import
cn.quantgroup.motan.retbean.XUserExtInfo
;
//import cn.quantgroup.xyqb.entity.enumerate.*;
//import cn.quantgroup.xyqb.entity.enumerate.*;
import
cn.quantgroup.
user
.enums.*
;
import
cn.quantgroup.
motan
.enums.*
;
import
lombok.Data
;
import
lombok.Data
;
import
javax.persistence.*
;
import
javax.persistence.*
;
...
@@ -51,14 +51,14 @@ public class UserExtInfo implements Serializable {
...
@@ -51,14 +51,14 @@ public class UserExtInfo implements Serializable {
XUserExtInfo
xUserExtInfo
=
new
XUserExtInfo
();
XUserExtInfo
xUserExtInfo
=
new
XUserExtInfo
();
xUserExtInfo
.
setId
(
this
.
id
);
xUserExtInfo
.
setId
(
this
.
id
);
xUserExtInfo
.
setUserId
(
this
.
userId
);
xUserExtInfo
.
setUserId
(
this
.
userId
);
xUserExtInfo
.
setEducationEnum
(
cn
.
quantgroup
.
user
.
enums
.
EducationEnum
.
valueOf
(
this
.
educationEnum
.
name
()));
xUserExtInfo
.
setEducationEnum
(
cn
.
quantgroup
.
motan
.
enums
.
EducationEnum
.
valueOf
(
this
.
educationEnum
.
name
()));
xUserExtInfo
.
setIncomeEnum
(
cn
.
quantgroup
.
user
.
enums
.
IncomeEnum
.
valueOf
(
this
.
incomeEnum
.
name
()));
xUserExtInfo
.
setIncomeEnum
(
cn
.
quantgroup
.
motan
.
enums
.
IncomeEnum
.
valueOf
(
this
.
incomeEnum
.
name
()));
xUserExtInfo
.
setIncomeRangeEnum
(
cn
.
quantgroup
.
user
.
enums
.
IncomeRangeEnum
.
valueOf
(
this
.
incomeRangeEnum
.
name
()));
xUserExtInfo
.
setIncomeRangeEnum
(
cn
.
quantgroup
.
motan
.
enums
.
IncomeRangeEnum
.
valueOf
(
this
.
incomeRangeEnum
.
name
()));
xUserExtInfo
.
setOccupationEnum
(
cn
.
quantgroup
.
user
.
enums
.
OccupationEnum
.
valueOf
(
this
.
occupationEnum
.
name
()));
xUserExtInfo
.
setOccupationEnum
(
cn
.
quantgroup
.
motan
.
enums
.
OccupationEnum
.
valueOf
(
this
.
occupationEnum
.
name
()));
xUserExtInfo
.
setHasCar
(
this
.
hasCar
);
xUserExtInfo
.
setHasCar
(
this
.
hasCar
);
xUserExtInfo
.
setHasSocialSecurity
(
this
.
hasSocialSecurity
);
xUserExtInfo
.
setHasSocialSecurity
(
this
.
hasSocialSecurity
);
xUserExtInfo
.
setHasCreditCard
(
this
.
hasCreditCard
);
xUserExtInfo
.
setHasCreditCard
(
this
.
hasCreditCard
);
xUserExtInfo
.
setMarryStatus
(
cn
.
quantgroup
.
user
.
enums
.
MaritalStatus
.
valueOf
(
this
.
marryStatus
.
name
()));
xUserExtInfo
.
setMarryStatus
(
cn
.
quantgroup
.
motan
.
enums
.
MaritalStatus
.
valueOf
(
this
.
marryStatus
.
name
()));
xUserExtInfo
.
setCreatedAt
(
this
.
createdAt
);
xUserExtInfo
.
setCreatedAt
(
this
.
createdAt
);
xUserExtInfo
.
setUpdateAt
(
this
.
updateAt
);
xUserExtInfo
.
setUpdateAt
(
this
.
updateAt
);
return
xUserExtInfo
;
return
xUserExtInfo
;
...
...
src/main/java/cn/quantgroup/xyqb/entity/UserSpouse.java
View file @
2d54b09e
package
cn
.
quantgroup
.
xyqb
.
entity
;
package
cn
.
quantgroup
.
xyqb
.
entity
;
import
cn.quantgroup.
user
.enums.MaritalStatus
;
import
cn.quantgroup.
motan
.enums.MaritalStatus
;
import
lombok.*
;
import
lombok.*
;
import
javax.persistence.*
;
import
javax.persistence.*
;
...
...
src/main/java/cn/quantgroup/xyqb/filter/RequestFilter.java
View file @
2d54b09e
...
@@ -26,7 +26,7 @@ import java.io.PrintWriter;
...
@@ -26,7 +26,7 @@ import java.io.PrintWriter;
public
class
RequestFilter
implements
Filter
{
public
class
RequestFilter
implements
Filter
{
private
static
final
String
[]
ALLOWED_PATTERNS
=
{
private
static
final
String
[]
ALLOWED_PATTERNS
=
{
"/innerapi/**"
,
"/user/exist"
,
"/motan/**"
,
"/user/register"
,
"/user/login"
,
"/user/register/fast"
,
"/auth/info/login"
,
"/
hello/**"
,
"/
innerapi/**"
,
"/user/exist"
,
"/motan/**"
,
"/user/register"
,
"/user/login"
,
"/user/register/fast"
,
"/auth/info/login"
,
"/user/login/fast"
,
"/user/reset_password"
,
"/user/exist_check"
,
"/user/center/**"
,
"/user/login/fast"
,
"/user/reset_password"
,
"/user/exist_check"
,
"/user/center/**"
,
"/jr58/**"
,
"/app/login"
,
"/app/login_super"
,
"/wechat/**"
,
"/config/**"
,
"/api/**"
,
"/user/exists_token"
,
"/query/**"
,
"/jr58/**"
,
"/app/login"
,
"/app/login_super"
,
"/wechat/**"
,
"/config/**"
,
"/api/**"
,
"/user/exists_token"
,
"/query/**"
,
"/platform/api/page/return_url"
,
"/MP_"
+
"/platform/api/page/return_url"
,
"/MP_"
+
...
...
src/main/java/cn/quantgroup/xyqb/model/ContactRet.java
View file @
2d54b09e
package
cn
.
quantgroup
.
xyqb
.
model
;
package
cn
.
quantgroup
.
xyqb
.
model
;
import
cn.quantgroup.xyqb.entity.Contact
;
import
cn.quantgroup.xyqb.entity.Contact
;
import
cn.quantgroup.
user
.enums.Relation
;
import
cn.quantgroup.
motan
.enums.Relation
;
import
lombok.Data
;
import
lombok.Data
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.collections.CollectionUtils
;
...
...
src/main/java/cn/quantgroup/xyqb/model/UserExtInfoRet.java
View file @
2d54b09e
package
cn
.
quantgroup
.
xyqb
.
model
;
package
cn
.
quantgroup
.
xyqb
.
model
;
import
cn.quantgroup.xyqb.entity.UserExtInfo
;
import
cn.quantgroup.xyqb.entity.UserExtInfo
;
import
cn.quantgroup.
user
.enums.*
;
import
cn.quantgroup.
motan
.enums.*
;
import
lombok.Data
;
import
lombok.Data
;
/**
/**
...
...
src/main/java/cn/quantgroup/xyqb/model/UserSpouseRet.java
View file @
2d54b09e
package
cn
.
quantgroup
.
xyqb
.
model
;
package
cn
.
quantgroup
.
xyqb
.
model
;
import
cn.quantgroup.xyqb.entity.UserSpouse
;
import
cn.quantgroup.xyqb.entity.UserSpouse
;
import
cn.quantgroup.
user
.enums.MaritalStatus
;
import
cn.quantgroup.
motan
.enums.MaritalStatus
;
import
lombok.Data
;
import
lombok.Data
;
/**
/**
...
...
src/main/java/cn/quantgroup/xyqb/service/user/impl/ContactServiceImpl.java
View file @
2d54b09e
...
@@ -20,13 +20,13 @@ public class ContactServiceImpl implements IContactService {
...
@@ -20,13 +20,13 @@ public class ContactServiceImpl implements IContactService {
private
IContactRepository
contactRepository
;
private
IContactRepository
contactRepository
;
@Override
@Override
@Cacheable
(
value
=
"contact"
,
key
=
"'contact' + #userId"
,
unless
=
"#result == null or #result.size() == 0"
,
cacheManager
=
"cacheManager"
)
@Cacheable
(
value
=
"contact
1
"
,
key
=
"'contact' + #userId"
,
unless
=
"#result == null or #result.size() == 0"
,
cacheManager
=
"cacheManager"
)
public
List
<
Contact
>
findByUserId
(
Long
userId
)
{
public
List
<
Contact
>
findByUserId
(
Long
userId
)
{
return
contactRepository
.
findByUserId
(
userId
);
return
contactRepository
.
findByUserId
(
userId
);
}
}
@Override
@Override
@CacheEvict
(
value
=
"contact"
,
key
=
"'contact' + #contacts.get(0).userId"
,
cacheManager
=
"cacheManager"
)
@CacheEvict
(
value
=
"contact
1
"
,
key
=
"'contact' + #contacts.get(0).userId"
,
cacheManager
=
"cacheManager"
)
public
List
<
Contact
>
save
(
List
<
Contact
>
contacts
)
{
public
List
<
Contact
>
save
(
List
<
Contact
>
contacts
)
{
return
contactRepository
.
save
(
contacts
);
return
contactRepository
.
save
(
contacts
);
}
}
...
...
src/main/java/cn/quantgroup/xyqb/service/user/impl/UserServiceImpl.java
View file @
2d54b09e
package
cn
.
quantgroup
.
xyqb
.
service
.
user
.
impl
;
package
cn
.
quantgroup
.
xyqb
.
service
.
user
.
impl
;
import
cn.quantgroup.
user
.enums.Relation
;
import
cn.quantgroup.
motan
.enums.Relation
;
import
cn.quantgroup.xyqb.Constants
;
import
cn.quantgroup.xyqb.Constants
;
import
cn.quantgroup.xyqb.entity.*
;
import
cn.quantgroup.xyqb.entity.*
;
import
cn.quantgroup.xyqb.model.IdCardInfo
;
import
cn.quantgroup.xyqb.model.IdCardInfo
;
...
...
src/main/java/cn/quantgroup/xyqb/service/user/vo/UserDetailVO.java
View file @
2d54b09e
...
@@ -68,10 +68,10 @@ public class UserDetailVO {
...
@@ -68,10 +68,10 @@ public class UserDetailVO {
xUserDetail
.
setName
(
this
.
getName
());
xUserDetail
.
setName
(
this
.
getName
());
xUserDetail
.
setIdNo
(
this
.
getIdNo
());
xUserDetail
.
setIdNo
(
this
.
getIdNo
());
if
(
this
.
getIdType
()
!=
null
)
{
if
(
this
.
getIdType
()
!=
null
)
{
xUserDetail
.
setIdType
(
cn
.
quantgroup
.
user
.
enums
.
IdType
.
valueOf
(
this
.
getIdType
().
name
()));
xUserDetail
.
setIdType
(
cn
.
quantgroup
.
motan
.
enums
.
IdType
.
valueOf
(
this
.
getIdType
().
name
()));
}
}
if
(
this
.
getGender
()
!=
null
)
{
if
(
this
.
getGender
()
!=
null
)
{
xUserDetail
.
setGender
(
cn
.
quantgroup
.
user
.
enums
.
Gender
.
valueOf
(
this
.
getGender
().
name
()));
xUserDetail
.
setGender
(
cn
.
quantgroup
.
motan
.
enums
.
Gender
.
valueOf
(
this
.
getGender
().
name
()));
}
}
xUserDetail
.
setEmail
(
this
.
getEmail
());
xUserDetail
.
setEmail
(
this
.
getEmail
());
xUserDetail
.
setQq
(
this
.
getQq
());
xUserDetail
.
setQq
(
this
.
getQq
());
...
...
src/main/resources/config/dev/xyqb.properties
View file @
2d54b09e
...
@@ -101,7 +101,7 @@ loanvest.rabbitmq.connection.virtual-host=/loan_order
...
@@ -101,7 +101,7 @@ loanvest.rabbitmq.connection.virtual-host=/loan_order
#loanvest.rabbitmq.stateMsgQueue=loan_vest_msg_queue
#loanvest.rabbitmq.stateMsgQueue=loan_vest_msg_queue
loanvest.rabbitmq.queue
=
loan_user_queue
loanvest.rabbitmq.queue
=
loan_user_queue
loanvest.rabbitmq.exchange
=
loan_vest_exchange
loanvest.rabbitmq.exchange
=
loan_vest_exchange
loanvest.rabbitmq.connection.host
=
192.168.4.15
5
loanvest.rabbitmq.connection.host
=
192.168.4.15
3
loanvest.rabbitmq.connection.port
=
5672
loanvest.rabbitmq.connection.port
=
5672
loanvest.rabbitmq.connection.user
=
qa
loanvest.rabbitmq.connection.user
=
qa
loanvest.rabbitmq.connection.password
=
qatest
loanvest.rabbitmq.connection.password
=
qatest
...
...
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