Commit 19148fe13283336f8d094b15449260c72ab440cc
1 parent
70f1ae18
初始化工程-接口定义
Showing
13 changed files
with
811 additions
and
104 deletions
mobsite-getway-domain/src/main/java/com/diligrp/mobsite/getway/domain/protocol/login/CheckVeriCodeReq.java
@@ -19,12 +19,12 @@ public class CheckVeriCodeReq extends BaseReq { | @@ -19,12 +19,12 @@ public class CheckVeriCodeReq extends BaseReq { | ||
19 | /** | 19 | /** |
20 | * 手机验证码 | 20 | * 手机验证码 |
21 | */ | 21 | */ |
22 | - @ApiModelProperty(value = "验证码") | 22 | + @ApiModelProperty(value = "验证码",required = true) |
23 | private String veriCode; | 23 | private String veriCode; |
24 | /** | 24 | /** |
25 | * 手机号码 | 25 | * 手机号码 |
26 | */ | 26 | */ |
27 | - @ApiModelProperty(value = "手机号码") | 27 | + @ApiModelProperty(value = "手机号码",required = true) |
28 | private String mobile; | 28 | private String mobile; |
29 | /** | 29 | /** |
30 | * 消息类型 | 30 | * 消息类型 |
mobsite-getway-domain/src/main/java/com/diligrp/mobsite/getway/domain/protocol/login/CheckVeriCodeResp.java
1 | package com.diligrp.mobsite.getway.domain.protocol.login; | 1 | package com.diligrp.mobsite.getway.domain.protocol.login; |
2 | 2 | ||
3 | import com.diligrp.mobsite.getway.domain.protocol.BaseResp; | 3 | import com.diligrp.mobsite.getway.domain.protocol.BaseResp; |
4 | - | 4 | +import io.swagger.annotations.ApiModelProperty; |
5 | 5 | ||
6 | 6 | ||
7 | /** | 7 | /** |
@@ -22,7 +22,7 @@ public class CheckVeriCodeResp extends BaseResp { | @@ -22,7 +22,7 @@ public class CheckVeriCodeResp extends BaseResp { | ||
22 | /** | 22 | /** |
23 | * 验证结果:1-验证码正确,2验证码错误 | 23 | * 验证结果:1-验证码正确,2验证码错误 |
24 | */ | 24 | */ |
25 | - @Deprecated | 25 | + @ApiModelProperty(value = "验证结果:1-验证码正确,2验证码错误") |
26 | private Integer checkFlag = CHECK_FLAG_RIGHT; | 26 | private Integer checkFlag = CHECK_FLAG_RIGHT; |
27 | 27 | ||
28 | 28 |
mobsite-getway-domain/src/main/java/com/diligrp/mobsite/getway/domain/protocol/login/SendVeriCodeResp.java
@@ -28,11 +28,12 @@ public class SendVeriCodeResp extends BaseResp { | @@ -28,11 +28,12 @@ public class SendVeriCodeResp extends BaseResp { | ||
28 | /** | 28 | /** |
29 | * 发送结果 | 29 | * 发送结果 |
30 | */ | 30 | */ |
31 | - @ApiModelProperty(value = "发送结果") | 31 | + @ApiModelProperty(value = "发送结果:1成功") |
32 | private Integer sendCode = SEND_CODE_ERROR; | 32 | private Integer sendCode = SEND_CODE_ERROR; |
33 | /** | 33 | /** |
34 | * 万能验证码 | 34 | * 万能验证码 |
35 | */ | 35 | */ |
36 | + @ApiModelProperty(value = "万能验证码") | ||
36 | private String passKey; | 37 | private String passKey; |
37 | 38 | ||
38 | /** | 39 | /** |
mobsite-getway-domain/src/main/java/com/diligrp/mobsite/getway/domain/protocol/user/ModifyPwdReq.java
@@ -19,23 +19,25 @@ public class ModifyPwdReq extends BaseReq { | @@ -19,23 +19,25 @@ public class ModifyPwdReq extends BaseReq { | ||
19 | /** | 19 | /** |
20 | * 验证码 | 20 | * 验证码 |
21 | */ | 21 | */ |
22 | + @ApiModelProperty(value = "验证码",required = true) | ||
22 | private String authCode; | 23 | private String authCode; |
23 | 24 | ||
24 | /** | 25 | /** |
25 | * 新的密码 | 26 | * 新的密码 |
26 | */ | 27 | */ |
27 | - @ApiModelProperty(value = "新密码") | 28 | + @ApiModelProperty(value = "新密码",required = true) |
28 | private String password; | 29 | private String password; |
29 | 30 | ||
30 | /** | 31 | /** |
31 | * 重复新密码 | 32 | * 重复新密码 |
32 | */ | 33 | */ |
33 | - @ApiModelProperty(value = "重复新密码") | 34 | + @ApiModelProperty(value = "重复新密码",required = true) |
34 | private String repPassword; | 35 | private String repPassword; |
35 | 36 | ||
36 | /** | 37 | /** |
37 | - * 用户账号 | 38 | + * 手机号 |
38 | */ | 39 | */ |
40 | + @ApiModelProperty(value = "账号(手机号)",required = true) | ||
39 | private String accountName; | 41 | private String accountName; |
40 | 42 | ||
41 | /** | 43 | /** |
mobsite-getway-rpc/src/main/java/com/diligrp/mobsite/getway/rpc/buyer/UserRPC.java
1 | package com.diligrp.mobsite.getway.rpc.buyer; | 1 | package com.diligrp.mobsite.getway.rpc.buyer; |
2 | 2 | ||
3 | +import com.b2c.myapp.common.api.buyerInfo.output.BuyerInfoOutput; | ||
3 | import com.diligrp.mobsite.getway.domain.protocol.AddCartProduct; | 4 | import com.diligrp.mobsite.getway.domain.protocol.AddCartProduct; |
4 | import com.diligrp.mobsite.getway.domain.protocol.ConsigneeInfo; | 5 | import com.diligrp.mobsite.getway.domain.protocol.ConsigneeInfo; |
5 | import com.diligrp.mobsite.getway.domain.protocol.cart.ModifyAmountReq; | 6 | import com.diligrp.mobsite.getway.domain.protocol.cart.ModifyAmountReq; |
@@ -138,4 +139,5 @@ public interface UserRPC { | @@ -138,4 +139,5 @@ public interface UserRPC { | ||
138 | boolean checkPassword(Long userId, String password); | 139 | boolean checkPassword(Long userId, String password); |
139 | 140 | ||
140 | 141 | ||
142 | + BuyerInfoOutput getUserByMobile(String accountName); | ||
141 | } | 143 | } |
mobsite-getway-rpc/src/main/java/com/diligrp/mobsite/getway/rpc/buyer/impl/UserRPCImpl.java
@@ -3,6 +3,7 @@ package com.diligrp.mobsite.getway.rpc.buyer.impl; | @@ -3,6 +3,7 @@ package com.diligrp.mobsite.getway.rpc.buyer.impl; | ||
3 | import com.b2c.myapp.common.api.buyerInfo.output.BuyerInfoOutput; | 3 | import com.b2c.myapp.common.api.buyerInfo.output.BuyerInfoOutput; |
4 | import com.b2c.myapp.common.utils.BaseOutput; | 4 | import com.b2c.myapp.common.utils.BaseOutput; |
5 | import com.b2c.myapp.sdk.MyAppClient; | 5 | import com.b2c.myapp.sdk.MyAppClient; |
6 | +import com.diligrp.mobsite.getway.domain.common.ErrorMessage; | ||
6 | import com.diligrp.mobsite.getway.domain.common.ResultCode; | 7 | import com.diligrp.mobsite.getway.domain.common.ResultCode; |
7 | import com.diligrp.mobsite.getway.domain.except.ServiceException; | 8 | import com.diligrp.mobsite.getway.domain.except.ServiceException; |
8 | import com.diligrp.mobsite.getway.domain.protocol.AddCartProduct; | 9 | import com.diligrp.mobsite.getway.domain.protocol.AddCartProduct; |
@@ -154,4 +155,27 @@ public class UserRPCImpl implements UserRPC { | @@ -154,4 +155,27 @@ public class UserRPCImpl implements UserRPC { | ||
154 | public boolean checkPassword(Long userId, String password) { | 155 | public boolean checkPassword(Long userId, String password) { |
155 | return false; | 156 | return false; |
156 | } | 157 | } |
158 | + | ||
159 | + @Override | ||
160 | + public BuyerInfoOutput getUserByMobile(String accountName) { | ||
161 | + BaseOutput<BuyerInfoOutput> output = null; | ||
162 | + boolean flag = false; | ||
163 | + try { | ||
164 | + output = userClient.getBuyerInfoService().getBuyerInfoByMobilePhone(accountName); | ||
165 | + } catch (Exception e) { | ||
166 | + logger.error("检测电话号码接口挂掉:msg={}",e.getMessage()); | ||
167 | + throw new ServiceException(); | ||
168 | + } | ||
169 | + | ||
170 | + if (output==null||!output.getCode().equals(ResultCode.SUCCESS)){ | ||
171 | + logger.error("手机号查询买家接口失败:[userId={},code={},result={}]",new Object[]{accountName,output.getCode(),output.getResult()}); | ||
172 | + throw new ServiceException(); | ||
173 | + } | ||
174 | + | ||
175 | + if(Validator.isNull(output.getData())){ | ||
176 | + logger.info("查询用户为空:[mobile={}]",new Object[]{accountName}); | ||
177 | + throw new ServiceException(ResultCode.BUSINESS_FAILED, ErrorMessage.USER_NOT_EXIST); | ||
178 | + } | ||
179 | + return output.getData(); | ||
180 | + } | ||
157 | } | 181 | } |
mobsite-getway-rpc/src/main/java/com/diligrp/mobsite/getway/rpc/seller/SellerRPC.java
0 → 100644
1 | +package com.diligrp.mobsite.getway.rpc.seller; | ||
2 | + | ||
3 | +import com.b2c.myapp.common.api.buyerInfo.output.BuyerInfoOutput; | ||
4 | +import com.diligrp.mobsite.getway.domain.protocol.ConsigneeInfo; | ||
5 | +import com.diligrp.mobsite.getway.domain.protocol.cart.ModifyAmountReq; | ||
6 | + | ||
7 | +import java.util.List; | ||
8 | + | ||
9 | + | ||
10 | +/** | ||
11 | + * <B>Description</B> userrpc <br /> | ||
12 | + * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved. <br /> | ||
13 | + * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br /> | ||
14 | + * <B>Company</B> 地利集团 | ||
15 | + * | ||
16 | + * @author wujianjun | ||
17 | + * @createTime Aug 19, 2014 2:33:16 PM | ||
18 | + */ | ||
19 | +public interface SellerRPC { | ||
20 | + | ||
21 | + | ||
22 | + | ||
23 | + /** | ||
24 | + * 验证电话号码是否存在 | ||
25 | + * | ||
26 | + * 没有被使用:true | ||
27 | + * 已经被使用:false | ||
28 | + * | ||
29 | + * @param mobile | ||
30 | + * @return | ||
31 | + * @createTime 2014年8月27日 下午2:31:07 | ||
32 | + * @author zhangshirui | ||
33 | + */ | ||
34 | + boolean checkMobile(String mobile); | ||
35 | + | ||
36 | + | ||
37 | + /** | ||
38 | + * 修改进货单数量 | ||
39 | + * @param req | ||
40 | + * @return | ||
41 | + * @createTime 2015年3月9日 下午2:49:27 | ||
42 | + * @author zhangshirui | ||
43 | + */ | ||
44 | + boolean modifyAmount(ModifyAmountReq req); | ||
45 | + | ||
46 | + /** | ||
47 | + * 修改密码 | ||
48 | + * @param accountName | ||
49 | + * @param newPassword | ||
50 | + * @return | ||
51 | + * @createTime 2014年8月28日 下午3:01:49 | ||
52 | + * @author zhangshirui | ||
53 | + */ | ||
54 | + boolean modifyPwd(String accountName, String newPassword); | ||
55 | + | ||
56 | + Long addConsignee(ConsigneeInfo consigneeInfo, Long userId); | ||
57 | + | ||
58 | + boolean updateConsignee(ConsigneeInfo consigneeInfo, Long userId); | ||
59 | + | ||
60 | + ConsigneeInfo getConsignee(Long id); | ||
61 | + | ||
62 | + boolean delConsignee(Long id); | ||
63 | + | ||
64 | + List<ConsigneeInfo> getConsigneeByUserId(Long userId); | ||
65 | + | ||
66 | + ConsigneeInfo getDefaultConsignee(Long userId); | ||
67 | + | ||
68 | + boolean setDefaultConsignee(Long id, Long userId); | ||
69 | + | ||
70 | + | ||
71 | + /** | ||
72 | + * 密码加密 | ||
73 | + * @param pwd | ||
74 | + * @return | ||
75 | + * @createTime 2014年9月19日 上午10:04:35 | ||
76 | + * @author zhangshirui | ||
77 | + */ | ||
78 | + String getEncryptPwd(String pwd); | ||
79 | + | ||
80 | + | ||
81 | + | ||
82 | + /** | ||
83 | + * 验证用户密码 | ||
84 | + * @param userId | ||
85 | + * @param password | ||
86 | + * @return | ||
87 | + * @createTime 2015年6月24日 下午1:45:53 | ||
88 | + * @author zhangshirui | ||
89 | + */ | ||
90 | + boolean checkPassword(Long userId, String password); | ||
91 | + | ||
92 | + | ||
93 | + BuyerInfoOutput getUserByMobile(String accountName); | ||
94 | +} |
mobsite-getway-rpc/src/main/java/com/diligrp/mobsite/getway/rpc/seller/impl/SellerRPCImpl.java
0 → 100644
1 | +package com.diligrp.mobsite.getway.rpc.seller.impl; | ||
2 | + | ||
3 | +import com.b2c.myapp.common.api.buyerInfo.output.BuyerInfoOutput; | ||
4 | +import com.b2c.myapp.common.api.sellerInfo.output.SellerInfoOutput; | ||
5 | +import com.b2c.myapp.common.utils.BaseOutput; | ||
6 | +import com.b2c.myapp.sdk.MyAppClient; | ||
7 | +import com.diligrp.mobsite.getway.domain.common.ErrorMessage; | ||
8 | +import com.diligrp.mobsite.getway.domain.common.ResultCode; | ||
9 | +import com.diligrp.mobsite.getway.domain.except.ServiceException; | ||
10 | +import com.diligrp.mobsite.getway.domain.protocol.ConsigneeInfo; | ||
11 | +import com.diligrp.mobsite.getway.domain.protocol.cart.ModifyAmountReq; | ||
12 | +import com.diligrp.mobsite.getway.rpc.buyer.GoodsRPC; | ||
13 | +import com.diligrp.mobsite.getway.rpc.seller.SellerRPC; | ||
14 | +import com.diligrp.website.util.redis.RedisUtil; | ||
15 | +import com.diligrp.website.util.security.Validator; | ||
16 | +import com.diligrp.website.web.interfaces.WebsiteClient; | ||
17 | +import org.slf4j.Logger; | ||
18 | +import org.slf4j.LoggerFactory; | ||
19 | +import org.springframework.stereotype.Service; | ||
20 | + | ||
21 | +import javax.annotation.Resource; | ||
22 | +import java.util.List; | ||
23 | + | ||
24 | + | ||
25 | +/** | ||
26 | + * <B>Description</B> 用户rpc <br /> | ||
27 | + * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved. <br /> | ||
28 | + * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br /> | ||
29 | + * <B>Company</B> 地利集团 | ||
30 | + * | ||
31 | + * @author zhangshirui | ||
32 | + * @createTime Aug 19, 2014 2:34:13 PM | ||
33 | + */ | ||
34 | +@Service | ||
35 | +public class SellerRPCImpl implements SellerRPC { | ||
36 | + | ||
37 | + | ||
38 | + @Resource | ||
39 | + private RedisUtil redisUtil; | ||
40 | + @Resource | ||
41 | + private MyAppClient userClient; | ||
42 | + @Resource | ||
43 | + private WebsiteClient websiteClient; | ||
44 | + @Resource | ||
45 | + private GoodsRPC goodsRPC; | ||
46 | + | ||
47 | + | ||
48 | + private static final Logger logger = LoggerFactory.getLogger(SellerRPCImpl.class); | ||
49 | + | ||
50 | + | ||
51 | + | ||
52 | + @Override | ||
53 | + public boolean checkMobile(String mobile) { | ||
54 | + BaseOutput<SellerInfoOutput> output = null; | ||
55 | + boolean flag = false; | ||
56 | + try { | ||
57 | + output = userClient.getSellerInfoService().getSellerInfoByMobilePhone(mobile); | ||
58 | + } catch (Exception e) { | ||
59 | + logger.error("检测电话号码接口挂掉:msg={}",e.getMessage()); | ||
60 | + throw new ServiceException(); | ||
61 | + } | ||
62 | + | ||
63 | + if (output==null||!output.getCode().equals(ResultCode.SUCCESS)){ | ||
64 | + logger.error("手机号查询卖家接口失败:[userId={},code={},result={}]",new Object[]{mobile,output.getCode(),output.getResult()}); | ||
65 | + throw new ServiceException(); | ||
66 | + } | ||
67 | + flag = !Validator.isNull(output.getData()); | ||
68 | + if(flag){ | ||
69 | + logger.info("success:电话号码没有被注册:mobile={}",mobile); | ||
70 | + }else { | ||
71 | + logger.info("error:电话号码已经被注册:mobile={}",mobile); | ||
72 | + } | ||
73 | + return flag; | ||
74 | + } | ||
75 | + | ||
76 | + @Override | ||
77 | + public boolean modifyAmount(ModifyAmountReq req) { | ||
78 | + return false; | ||
79 | + } | ||
80 | + | ||
81 | + @Override | ||
82 | + public boolean modifyPwd(String accountName, String newPassword) { | ||
83 | + return false; | ||
84 | + } | ||
85 | + | ||
86 | + @Override | ||
87 | + public Long addConsignee(ConsigneeInfo consigneeInfo, Long userId) { | ||
88 | + return null; | ||
89 | + } | ||
90 | + | ||
91 | + @Override | ||
92 | + public boolean updateConsignee(ConsigneeInfo consigneeInfo, Long userId) { | ||
93 | + return false; | ||
94 | + } | ||
95 | + | ||
96 | + @Override | ||
97 | + public ConsigneeInfo getConsignee(Long id) { | ||
98 | + return null; | ||
99 | + } | ||
100 | + | ||
101 | + @Override | ||
102 | + public boolean delConsignee(Long id) { | ||
103 | + return false; | ||
104 | + } | ||
105 | + | ||
106 | + @Override | ||
107 | + public List<ConsigneeInfo> getConsigneeByUserId(Long userId) { | ||
108 | + return null; | ||
109 | + } | ||
110 | + | ||
111 | + @Override | ||
112 | + public ConsigneeInfo getDefaultConsignee(Long userId) { | ||
113 | + return null; | ||
114 | + } | ||
115 | + | ||
116 | + @Override | ||
117 | + public boolean setDefaultConsignee(Long id, Long userId) { | ||
118 | + return false; | ||
119 | + } | ||
120 | + | ||
121 | + @Override | ||
122 | + public String getEncryptPwd(String pwd) { | ||
123 | + return null; | ||
124 | + } | ||
125 | + | ||
126 | + @Override | ||
127 | + public boolean checkPassword(Long userId, String password) { | ||
128 | + return false; | ||
129 | + } | ||
130 | + | ||
131 | + @Override | ||
132 | + public BuyerInfoOutput getUserByMobile(String accountName) { | ||
133 | + BaseOutput<BuyerInfoOutput> output = null; | ||
134 | + boolean flag = false; | ||
135 | + try { | ||
136 | + output = userClient.getBuyerInfoService().getBuyerInfoByMobilePhone(accountName); | ||
137 | + } catch (Exception e) { | ||
138 | + logger.error("检测电话号码接口挂掉:msg={}",e.getMessage()); | ||
139 | + throw new ServiceException(); | ||
140 | + } | ||
141 | + | ||
142 | + if (output==null||!output.getCode().equals(ResultCode.SUCCESS)){ | ||
143 | + logger.error("手机号查询买家接口失败:[userId={},code={},result={}]",new Object[]{accountName,output.getCode(),output.getResult()}); | ||
144 | + throw new ServiceException(); | ||
145 | + } | ||
146 | + | ||
147 | + if(Validator.isNull(output.getData())){ | ||
148 | + logger.info("查询用户为空:[mobile={}]",new Object[]{accountName}); | ||
149 | + throw new ServiceException(ResultCode.BUSINESS_FAILED, ErrorMessage.USER_NOT_EXIST); | ||
150 | + } | ||
151 | + return output.getData(); | ||
152 | + } | ||
153 | +} |
mobsite-getway-service/src/main/java/com/diligrp/mobsite/getway/service/buyer/user/impl/UserServiceImpl.java
1 | package com.diligrp.mobsite.getway.service.buyer.user.impl; | 1 | package com.diligrp.mobsite.getway.service.buyer.user.impl; |
2 | 2 | ||
3 | +import com.alibaba.fastjson.JSONObject; | ||
4 | +import com.b2c.myapp.common.api.buyerInfo.output.BuyerInfoOutput; | ||
3 | import com.diligrp.mobsite.getway.domain.common.Constant; | 5 | import com.diligrp.mobsite.getway.domain.common.Constant; |
4 | import com.diligrp.mobsite.getway.domain.common.ErrorMessage; | 6 | import com.diligrp.mobsite.getway.domain.common.ErrorMessage; |
5 | import com.diligrp.mobsite.getway.domain.common.RedisKey; | 7 | import com.diligrp.mobsite.getway.domain.common.RedisKey; |
@@ -22,6 +24,8 @@ import org.springframework.beans.factory.annotation.Autowired; | @@ -22,6 +24,8 @@ import org.springframework.beans.factory.annotation.Autowired; | ||
22 | import org.springframework.stereotype.Service; | 24 | import org.springframework.stereotype.Service; |
23 | 25 | ||
24 | import javax.annotation.Resource; | 26 | import javax.annotation.Resource; |
27 | +import java.util.HashMap; | ||
28 | +import java.util.Map; | ||
25 | 29 | ||
26 | /** | 30 | /** |
27 | * <B>Description</B> 用户 服务层 <br /> | 31 | * <B>Description</B> 用户 服务层 <br /> |
@@ -71,7 +75,11 @@ public class UserServiceImpl implements UserService { | @@ -71,7 +75,11 @@ public class UserServiceImpl implements UserService { | ||
71 | 75 | ||
72 | @Override | 76 | @Override |
73 | public CheckVeriCodeResp checkVeriCode(CheckVeriCodeReq req) { | 77 | public CheckVeriCodeResp checkVeriCode(CheckVeriCodeReq req) { |
74 | - return null; | 78 | + CheckVeriCodeResp resp = new CheckVeriCodeResp(); |
79 | + | ||
80 | + checkVeriCode(req.getVeriCode(), req.getMobile(),req.getMsgType()); | ||
81 | + | ||
82 | + return resp; | ||
75 | } | 83 | } |
76 | 84 | ||
77 | @Override | 85 | @Override |
@@ -157,7 +165,71 @@ public class UserServiceImpl implements UserService { | @@ -157,7 +165,71 @@ public class UserServiceImpl implements UserService { | ||
157 | 165 | ||
158 | @Override | 166 | @Override |
159 | public UserRegisterResp userRegister(UserRegisterReq req) { | 167 | public UserRegisterResp userRegister(UserRegisterReq req) { |
160 | - return null; | 168 | + UserRegisterResp resp = new UserRegisterResp(); |
169 | + | ||
170 | + //手机号码和账号验证、验证码 | ||
171 | + if (!checkRegisterInfo(resp, req)) { | ||
172 | + return resp; | ||
173 | + } | ||
174 | + | ||
175 | + resp = passportRPC.register(req); | ||
176 | + | ||
177 | + return resp; | ||
178 | + } | ||
179 | + | ||
180 | + | ||
181 | + /** | ||
182 | + * 检测注册信息是否正确 | ||
183 | + * 1.电话号码 | ||
184 | + * 2.账号,会员名 | ||
185 | + * 3.验证码 | ||
186 | + * @createTime 2014年10月31日 下午2:37:16 | ||
187 | + * @author zhangshirui | ||
188 | + */ | ||
189 | + private boolean checkRegisterInfo(UserRegisterResp resp, UserRegisterReq req){ | ||
190 | + if(!userRPC.checkMobile(req.getMobile())){ | ||
191 | + throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_MOBILE_EXIST); | ||
192 | + } | ||
193 | + //验证万能验证码 | ||
194 | + String passkey = configRPC.getSystemConfig(Constant.USER_REGISTER_PASS_KEY); | ||
195 | + if (req.getVeriCode().equals(passkey)) { | ||
196 | + return true; | ||
197 | + } | ||
198 | + | ||
199 | + checkVeriCode(req.getVeriCode(), req.getMobile(),SendVeriCodeReq.MSG_TYPE_REGISTER); | ||
200 | + | ||
201 | + return true; | ||
202 | + } | ||
203 | + | ||
204 | + /** | ||
205 | + * 根据验证码和电话号码,验证收到的验证码 | ||
206 | + * | ||
207 | + * @param code | ||
208 | + * @param mobile | ||
209 | + * @return | ||
210 | + * @createTime 2014年8月28日 下午5:44:48 | ||
211 | + * @author zhangshirui | ||
212 | + */ | ||
213 | + private void checkVeriCode(String code, String mobile,Integer msgType) { | ||
214 | + | ||
215 | + String redisKey = redisUtil.makeKey(RedisKey.USER_AUTH_CODE + String.valueOf(msgType), mobile); | ||
216 | + | ||
217 | + String redisCode = redisUtil.getString(redisKey); | ||
218 | + | ||
219 | + if(Validator.isEmpty(code)){ | ||
220 | + throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_AUTH_CODE_EMPTY); | ||
221 | + } | ||
222 | + | ||
223 | + //验证码为空 | ||
224 | + if (Validator.isEmpty(redisCode)) { | ||
225 | + throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_AUTH_CODE_OVERTIME); | ||
226 | + } | ||
227 | + | ||
228 | + //验证码不为空,并且和redis中的验证码相同 | ||
229 | + if (!code.equals(redisCode)) { | ||
230 | + throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_AUTH_CODE_WRONG); | ||
231 | + } | ||
232 | + | ||
161 | } | 233 | } |
162 | 234 | ||
163 | @Override | 235 | @Override |
@@ -217,7 +289,36 @@ public class UserServiceImpl implements UserService { | @@ -217,7 +289,36 @@ public class UserServiceImpl implements UserService { | ||
217 | 289 | ||
218 | @Override | 290 | @Override |
219 | public ModifyPwdResp modifyPwd(ModifyPwdReq req) { | 291 | public ModifyPwdResp modifyPwd(ModifyPwdReq req) { |
220 | - return null; | 292 | + BuyerInfoOutput userInfo = userRPC.getUserByMobile(req.getAccountName()); |
293 | + Long userId = userInfo.getId(); | ||
294 | + | ||
295 | + | ||
296 | + Map<String,String> params = new HashMap<String, String>(); | ||
297 | + params.put("password", req.getPassword()); | ||
298 | + params.put("accountId", String.valueOf(userId)); | ||
299 | + | ||
300 | + | ||
301 | + String result = passportRPC.modifyPwd(params); | ||
302 | + | ||
303 | + JSONObject jsonBody = JSONObject.parseObject(result); | ||
304 | + int code = jsonBody.getIntValue("code"); | ||
305 | + ModifyPwdResp resp = new ModifyPwdResp(); | ||
306 | + resp.setMsg(jsonBody.getString("msg")); | ||
307 | + | ||
308 | + if(code != ResultCode.SUCCESS){ | ||
309 | + //失败 | ||
310 | + resp.setCode(ResultCode.BUSINESS_FAILED); | ||
311 | + resp.setResultFlag(ModifyPwdResp.RESULT_FLAG_FAILED); | ||
312 | + return resp; | ||
313 | + }else { | ||
314 | + //修改成功,退出所有账号信息 | ||
315 | + String cookieRedisKey = redisUtil.makeKey(RedisKey.USER_LOGININFO, String.valueOf(userId)); | ||
316 | + redisUtil.deleteByKey(cookieRedisKey); | ||
317 | + } | ||
318 | + | ||
319 | + logger.info("修改用户密码"+jsonBody.getString("msg")); | ||
320 | + | ||
321 | + return resp; | ||
221 | } | 322 | } |
222 | 323 | ||
223 | @Override | 324 | @Override |
mobsite-getway-service/src/main/java/com/diligrp/mobsite/getway/service/seller/SellerUserService.java
1 | package com.diligrp.mobsite.getway.service.seller; | 1 | package com.diligrp.mobsite.getway.service.seller; |
2 | 2 | ||
3 | -import com.diligrp.mobsite.getway.domain.protocol.BaseResp; | ||
4 | -import com.diligrp.mobsite.getway.domain.protocol.saler.user.*; | 3 | +import com.diligrp.mobsite.getway.domain.protocol.login.*; |
4 | +import com.diligrp.mobsite.getway.domain.protocol.register.CheckMobileReq; | ||
5 | +import com.diligrp.mobsite.getway.domain.protocol.register.CheckMobileResp; | ||
6 | +import com.diligrp.mobsite.getway.domain.protocol.register.UserRegisterReq; | ||
7 | +import com.diligrp.mobsite.getway.domain.protocol.register.UserRegisterResp; | ||
8 | +import com.diligrp.mobsite.getway.domain.protocol.saler.user.SellerLoginReq; | ||
9 | +import com.diligrp.mobsite.getway.domain.protocol.saler.user.SellerLoginResp; | ||
10 | +import com.diligrp.mobsite.getway.domain.protocol.user.*; | ||
5 | 11 | ||
6 | 12 | ||
7 | /** | 13 | /** |
@@ -23,61 +29,22 @@ public interface SellerUserService { | @@ -23,61 +29,22 @@ public interface SellerUserService { | ||
23 | */ | 29 | */ |
24 | SellerLoginResp login(SellerLoginReq req) throws RuntimeException; | 30 | SellerLoginResp login(SellerLoginReq req) throws RuntimeException; |
25 | 31 | ||
26 | - /** | ||
27 | - *卖家申请开店 | ||
28 | - * */ | ||
29 | - @Deprecated | ||
30 | - BaseResp sellerAplyShop(SellerApplyShopReq req) throws RuntimeException; | ||
31 | - | ||
32 | - /** | ||
33 | - *卖家申请开店 | ||
34 | - * */ | ||
35 | - BaseResp sellerAplyShopNew(SellerApplyShopNewReq req); | ||
36 | 32 | ||
37 | - /** | ||
38 | - *卖家修改店铺信息 | ||
39 | - * */ | ||
40 | - BaseResp sellerModifyShop(SellerModifyShopRequest req); | ||
41 | - | ||
42 | - /** | ||
43 | - *获取店铺详情 | ||
44 | - * */ | ||
45 | - SellerShopResp getShopDetail(GetSellerShopReq req) throws RuntimeException; | ||
46 | 33 | ||
47 | - /*** | ||
48 | - * 开启或关闭赊销功能 1开启 2 关闭 | ||
49 | - * */ | ||
50 | - BaseResp openOrCloseShopCredit(OpenOrCloseReq req) throws RuntimeException; | ||
51 | 34 | ||
52 | - /*** | ||
53 | - * 增加vip用户 | ||
54 | - * */ | ||
55 | - BaseResp saveVipUser(VipUserReq req) throws RuntimeException; | 35 | + SendVeriCodeResp sendVeriCode(SendVeriCodeReq req); |
56 | 36 | ||
57 | - /*** | ||
58 | - * 删除vip用户 | ||
59 | - * */ | ||
60 | - BaseResp deleteVipUser(VipUserReq req) throws RuntimeException; | 37 | + CheckVeriCodeResp checkVeriCode(CheckVeriCodeReq req); |
61 | 38 | ||
62 | - /*** | ||
63 | - * 修改vip用户 | ||
64 | - * */ | ||
65 | - BaseResp updateVipUser(VipUserReq req) throws RuntimeException; | 39 | + CheckMobileResp checkMobile(CheckMobileReq req); |
66 | 40 | ||
67 | - /*** | ||
68 | - * 查询vip用户号码在店铺是否存在 | ||
69 | - * */ | ||
70 | - CheckVipExisitResp isExistsNumber(VipUserReq req) throws RuntimeException; | 41 | + ModifyPwdResp modifyPwd(ModifyPwdReq req); |
71 | 42 | ||
72 | - /*** | ||
73 | - * 获取赊账用户列表 | ||
74 | - * */ | ||
75 | - SellerShopVipListResp queryVipUser(VipUserQueryReq req) throws RuntimeException; | 43 | + UserRegisterResp sellerRegister(UserRegisterReq req); |
76 | 44 | ||
77 | - /*** | ||
78 | - * 开启或关闭vip用户 | ||
79 | - * */ | ||
80 | - OpenOrCloseVipUserResp closeOrOpenVipUser(CloseOrOpenVipUserReq req); | 45 | + LogoutResp logout(LogoutReq req); |
81 | 46 | ||
47 | + UpdateUserInfoResp updateUserInfo(UpdateUserInfoReq req); | ||
82 | 48 | ||
49 | + GetUserInfoResp getUserIntroduction(GetUserInfoReq req); | ||
83 | } | 50 | } |
mobsite-getway-service/src/main/java/com/diligrp/mobsite/getway/service/seller/impl/SellerUserServiceImpl.java
1 | package com.diligrp.mobsite.getway.service.seller.impl; | 1 | package com.diligrp.mobsite.getway.service.seller.impl; |
2 | 2 | ||
3 | -import com.diligrp.mobsite.getway.domain.protocol.BaseResp; | ||
4 | -import com.diligrp.mobsite.getway.domain.protocol.saler.user.*; | 3 | +import com.diligrp.mobsite.getway.domain.common.Constant; |
4 | +import com.diligrp.mobsite.getway.domain.common.ErrorMessage; | ||
5 | +import com.diligrp.mobsite.getway.domain.common.RedisKey; | ||
6 | +import com.diligrp.mobsite.getway.domain.common.ResultCode; | ||
7 | +import com.diligrp.mobsite.getway.domain.except.ServiceException; | ||
8 | +import com.diligrp.mobsite.getway.domain.protocol.login.*; | ||
9 | +import com.diligrp.mobsite.getway.domain.protocol.register.CheckMobileReq; | ||
10 | +import com.diligrp.mobsite.getway.domain.protocol.register.CheckMobileResp; | ||
11 | +import com.diligrp.mobsite.getway.domain.protocol.register.UserRegisterReq; | ||
12 | +import com.diligrp.mobsite.getway.domain.protocol.register.UserRegisterResp; | ||
13 | +import com.diligrp.mobsite.getway.domain.protocol.saler.user.SellerLoginReq; | ||
14 | +import com.diligrp.mobsite.getway.domain.protocol.saler.user.SellerLoginResp; | ||
15 | +import com.diligrp.mobsite.getway.domain.protocol.user.*; | ||
16 | +import com.diligrp.mobsite.getway.manager.common.RegisterNoMapperManager; | ||
17 | +import com.diligrp.mobsite.getway.rpc.buyer.*; | ||
18 | +import com.diligrp.mobsite.getway.rpc.seller.SellerRPC; | ||
19 | +import com.diligrp.mobsite.getway.rpc.utils.UserRedisUtil; | ||
20 | +import com.diligrp.mobsite.getway.service.common.utils.PassportUtils; | ||
5 | import com.diligrp.mobsite.getway.service.seller.SellerUserService; | 21 | import com.diligrp.mobsite.getway.service.seller.SellerUserService; |
22 | +import com.diligrp.website.util.redis.impl.RedisUtilImpl; | ||
23 | +import com.diligrp.website.util.security.Validator; | ||
24 | +import com.diligrp.website.web.interfaces.domain.output.DataDictionaryResp; | ||
25 | +import org.slf4j.Logger; | ||
26 | +import org.slf4j.LoggerFactory; | ||
27 | +import org.springframework.beans.factory.annotation.Autowired; | ||
6 | import org.springframework.stereotype.Service; | 28 | import org.springframework.stereotype.Service; |
7 | 29 | ||
30 | +import javax.annotation.Resource; | ||
31 | + | ||
8 | 32 | ||
9 | /** | 33 | /** |
10 | * <B>Description</B> 卖家用户信息 <br /> | 34 | * <B>Description</B> 卖家用户信息 <br /> |
@@ -17,6 +41,29 @@ import org.springframework.stereotype.Service; | @@ -17,6 +41,29 @@ import org.springframework.stereotype.Service; | ||
17 | @Service | 41 | @Service |
18 | public class SellerUserServiceImpl implements SellerUserService { | 42 | public class SellerUserServiceImpl implements SellerUserService { |
19 | 43 | ||
44 | + @Resource | ||
45 | + private SellerRPC sellerRPC; | ||
46 | + @Resource | ||
47 | + private GoodsRPC goodsRPC; | ||
48 | + @Autowired | ||
49 | + private RedisUtilImpl redisUtil; | ||
50 | + @Autowired | ||
51 | + private UserRedisUtil userRedisUtil; | ||
52 | + | ||
53 | + @Resource | ||
54 | + private RegisterNoMapperManager registerNoMapperManager; | ||
55 | + @Resource | ||
56 | + private PassportRPC passportRPC; | ||
57 | + @Resource | ||
58 | + private ConfigRPC configRPC; | ||
59 | + | ||
60 | + @Resource | ||
61 | + private ShopRPC shopRPC; | ||
62 | + @Autowired | ||
63 | + private MessageRPC messageRPC; | ||
64 | + | ||
65 | + | ||
66 | + private static Logger logger = LoggerFactory.getLogger(SellerUserServiceImpl.class); | ||
20 | 67 | ||
21 | @Override | 68 | @Override |
22 | public SellerLoginResp login(SellerLoginReq req) throws RuntimeException { | 69 | public SellerLoginResp login(SellerLoginReq req) throws RuntimeException { |
@@ -24,57 +71,109 @@ public class SellerUserServiceImpl implements SellerUserService { | @@ -24,57 +71,109 @@ public class SellerUserServiceImpl implements SellerUserService { | ||
24 | } | 71 | } |
25 | 72 | ||
26 | @Override | 73 | @Override |
27 | - public BaseResp sellerAplyShop(SellerApplyShopReq req) throws RuntimeException { | ||
28 | - return null; | 74 | + public SendVeriCodeResp sendVeriCode(SendVeriCodeReq req) { |
75 | + SendVeriCodeResp resp = new SendVeriCodeResp(); | ||
76 | + | ||
77 | + String mobile = req.getMobile(); | ||
78 | + boolean existFlag = !sellerRPC.checkMobile(mobile); | ||
79 | + | ||
80 | + Integer msgType = req.getMsgType(); | ||
81 | + String code = null; | ||
82 | + String message = null; | ||
83 | + | ||
84 | + String redisKey = redisUtil.makeKey(RedisKey.USER_AUTH_CODE + String.valueOf(msgType), mobile); | ||
85 | + String veriCode = redisUtil.getString(redisKey); | ||
86 | + | ||
87 | + if (Validator.isEmpty(veriCode)) { | ||
88 | + //生成验证码 | ||
89 | + veriCode = PassportUtils.generateMobileRandomNumber(); | ||
90 | + redisUtil.setStringByExpire(redisKey, String.valueOf(veriCode), RedisKey.USER_SEND_VERICODE_EXPIRE_TIME); | ||
91 | + } | ||
92 | + | ||
93 | + if (!Validator.isNull(msgType) && msgType != SendVeriCodeReq.MSG_TYPE_DEFAULT) { | ||
94 | + if (msgType==SendVeriCodeReq.MSG_TYPE_REGISTER) { | ||
95 | + //注册,电话号码已经存在 | ||
96 | + if(existFlag){ | ||
97 | + throw new ServiceException(ResultCode.BUSINESS_FAILED, ErrorMessage.USER_MOBILE_EXIST); | ||
98 | + } | ||
99 | + String passkey = configRPC.getSystemConfig(Constant.USER_REGISTER_PASS_KEY); | ||
100 | + resp.setPassKey(passkey); | ||
101 | + | ||
102 | + messageRPC.sendSMSMsg(mobile, veriCode, Constant.SMS_CONTENT_ACCOUNT_REGISTRATION); | ||
103 | + resp.setSendCode(SendVeriCodeResp.SEND_CODE_SUCCESS); | ||
104 | + return resp; | ||
105 | + }else if(msgType==SendVeriCodeReq.MSG_TYPE_RETRIEVE_PASSWORD) { | ||
106 | + //找回密码,电话号码没有存在 | ||
107 | + if (!existFlag) { | ||
108 | + throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_MOBILE_NOT_EXIST); | ||
109 | + } | ||
110 | + messageRPC.sendSMSMsg(mobile, veriCode,Constant.SMS_CONTENT_RETRIEVE_PASSWORD); | ||
111 | + resp.setSendCode(SendVeriCodeResp.SEND_CODE_SUCCESS); | ||
112 | + return resp; | ||
113 | + }else if(msgType==SendVeriCodeReq.MSG_TYPE_MODIFY_NEW_MOBILE) { | ||
114 | + //修改手机号,电话号码已经存在 | ||
115 | + if (existFlag) { | ||
116 | + throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_MOBILE_EXIST); | ||
117 | + } | ||
118 | + code = Constant.SMS_CONTENT_MODIFY_OLD_PHONE; | ||
119 | + }else if (msgType==SendVeriCodeReq.MSG_TYPE_CHECK_OLD_MOBILE) { | ||
120 | + //验证旧的手机号,手机不存在 | ||
121 | + if (!existFlag) { | ||
122 | + throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_MOBILE_NOT_EXIST); | ||
123 | + } | ||
124 | + code = Constant.SMS_CONTENT_MODIFY_OLD_PHONE; | ||
125 | + } | ||
126 | + DataDictionaryResp dataDic = configRPC.getMessageTemplate(Constant.DIC_SMS_CONTENT); | ||
127 | + message = dataDic.getValueByCode(code).getRemark().replace("{code}", veriCode); | ||
128 | + }else { | ||
129 | + message = Constant.SMS_CONTENT_DEFAULT.replace("{code}", veriCode); | ||
130 | + } | ||
131 | + | ||
132 | + messageRPC.sendSMS(mobile, message); | ||
133 | + | ||
134 | + resp.setSendCode(SendVeriCodeResp.SEND_CODE_SUCCESS); | ||
135 | + | ||
136 | + return resp; | ||
29 | } | 137 | } |
30 | 138 | ||
31 | @Override | 139 | @Override |
32 | - public BaseResp sellerAplyShopNew(SellerApplyShopNewReq req) { | 140 | + public CheckVeriCodeResp checkVeriCode(CheckVeriCodeReq req) { |
33 | return null; | 141 | return null; |
34 | } | 142 | } |
35 | 143 | ||
36 | @Override | 144 | @Override |
37 | - public BaseResp sellerModifyShop(SellerModifyShopRequest req) { | ||
38 | - return null; | ||
39 | - } | 145 | + public CheckMobileResp checkMobile(CheckMobileReq req) { |
146 | + CheckMobileResp resp = new CheckMobileResp(); | ||
40 | 147 | ||
41 | - @Override | ||
42 | - public SellerShopResp getShopDetail(GetSellerShopReq req) throws RuntimeException { | ||
43 | - return null; | ||
44 | - } | 148 | + boolean flag = sellerRPC.checkMobile(req.getMobile()); |
45 | 149 | ||
46 | - @Override | ||
47 | - public BaseResp openOrCloseShopCredit(OpenOrCloseReq req) throws RuntimeException { | ||
48 | - return null; | ||
49 | - } | 150 | + resp.setCheckFlag(flag ? CheckMobileResp.CHECK_FLAG_OK : CheckMobileResp.CHECK_FLAG_ERROR); |
50 | 151 | ||
51 | - @Override | ||
52 | - public BaseResp saveVipUser(VipUserReq req) throws RuntimeException { | ||
53 | - return null; | 152 | + return resp; |
54 | } | 153 | } |
55 | 154 | ||
56 | @Override | 155 | @Override |
57 | - public BaseResp deleteVipUser(VipUserReq req) throws RuntimeException { | 156 | + public ModifyPwdResp modifyPwd(ModifyPwdReq req) { |
58 | return null; | 157 | return null; |
59 | } | 158 | } |
60 | 159 | ||
61 | @Override | 160 | @Override |
62 | - public BaseResp updateVipUser(VipUserReq req) throws RuntimeException { | 161 | + public UserRegisterResp sellerRegister(UserRegisterReq req) { |
63 | return null; | 162 | return null; |
64 | } | 163 | } |
65 | 164 | ||
66 | @Override | 165 | @Override |
67 | - public CheckVipExisitResp isExistsNumber(VipUserReq req) throws RuntimeException { | 166 | + public LogoutResp logout(LogoutReq req) { |
68 | return null; | 167 | return null; |
69 | } | 168 | } |
70 | 169 | ||
71 | @Override | 170 | @Override |
72 | - public SellerShopVipListResp queryVipUser(VipUserQueryReq req) throws RuntimeException { | 171 | + public UpdateUserInfoResp updateUserInfo(UpdateUserInfoReq req) { |
73 | return null; | 172 | return null; |
74 | } | 173 | } |
75 | 174 | ||
76 | @Override | 175 | @Override |
77 | - public OpenOrCloseVipUserResp closeOrOpenVipUser(CloseOrOpenVipUserReq req) { | 176 | + public GetUserInfoResp getUserIntroduction(GetUserInfoReq req) { |
78 | return null; | 177 | return null; |
79 | } | 178 | } |
80 | } | 179 | } |
mobsite-getway-web/src/main/java/com/diligrp/mobsite/getway/web/api/buyer/user/UserController.java
@@ -165,28 +165,28 @@ public class UserController extends BaseApiController { | @@ -165,28 +165,28 @@ public class UserController extends BaseApiController { | ||
165 | } | 165 | } |
166 | 166 | ||
167 | /** | 167 | /** |
168 | - * 验证手机收到的验证码 | 168 | + * 忘记密码:验证手机收到的验证码 |
169 | * @createTime 2014年8月24日 下午10:55:03 | 169 | * @createTime 2014年8月24日 下午10:55:03 |
170 | * @author weili | 170 | * @author weili |
171 | */ | 171 | */ |
172 | - //@ApiOperation(value = "验证手机收到的验证码", httpMethod = "POST" , notes = "验证手机收到的验证码",response = CheckVeriCodeResp.class) | ||
173 | - //@RequestMapping(value = "/checkAuthCode",method = RequestMethod.POST) | ||
174 | - //@ResponseBody | ||
175 | - //public void checkAuthCode(@RequestBody CheckVeriCodeReq temp){ | ||
176 | - // CheckVeriCodeReq req= super.getRequest(CheckVeriCodeReq.class); | ||
177 | - // try { | ||
178 | - // BeanValidator.validator(req); | ||
179 | - // CheckVeriCodeResp resp = userService.checkVeriCode(req); | ||
180 | - // super.sendSuccessResp(resp); | ||
181 | - // } catch (ServiceException e){ | ||
182 | - // LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s", | ||
183 | - // e.getCode(), e.getMessage(), req.getUserId()), e); | ||
184 | - // sendError(e.getCode(), e.getMessage()); | ||
185 | - // } catch (Exception e) { | ||
186 | - // LOGGER.error("验证手机收到的验证码:", e); | ||
187 | - // super.sendError(e.getMessage()); | ||
188 | - // } | ||
189 | - //} | 172 | + @ApiOperation(value = "忘记密码:验证手机号和验证码", httpMethod = "POST" , notes = "验证手机收到的验证码",response = CheckVeriCodeResp.class) |
173 | + @RequestMapping(value = "/checkAuthCode",method = RequestMethod.POST) | ||
174 | + @ResponseBody | ||
175 | + public void checkAuthCode(@RequestBody CheckVeriCodeReq temp){ | ||
176 | + CheckVeriCodeReq req= super.getRequest(CheckVeriCodeReq.class); | ||
177 | + try { | ||
178 | + BeanValidator.validator(req); | ||
179 | + CheckVeriCodeResp resp = userService.checkVeriCode(req); | ||
180 | + super.sendSuccessResp(resp); | ||
181 | + } catch (ServiceException e){ | ||
182 | + LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s", | ||
183 | + e.getCode(), e.getMessage(), req.getUserId()), e); | ||
184 | + sendError(e.getCode(), e.getMessage()); | ||
185 | + } catch (Exception e) { | ||
186 | + LOGGER.error("验证手机收到的验证码:", e); | ||
187 | + super.sendError(e.getMessage()); | ||
188 | + } | ||
189 | + } | ||
190 | 190 | ||
191 | 191 | ||
192 | /** | 192 | /** |
@@ -194,7 +194,7 @@ public class UserController extends BaseApiController { | @@ -194,7 +194,7 @@ public class UserController extends BaseApiController { | ||
194 | * @createTime 2014年8月24日 下午10:55:03 | 194 | * @createTime 2014年8月24日 下午10:55:03 |
195 | * @author weili | 195 | * @author weili |
196 | */ | 196 | */ |
197 | - @ApiOperation(value = "找回密码-修改用户密码", httpMethod = "POST" ,response = SendVeriCodeResp.class) | 197 | + @ApiOperation(value = "找回密码-设置用户新密码", httpMethod = "POST" ,response = SendVeriCodeResp.class) |
198 | @RequestMapping(value = "/modifyPwd",method = RequestMethod.POST) | 198 | @RequestMapping(value = "/modifyPwd",method = RequestMethod.POST) |
199 | @ResponseBody | 199 | @ResponseBody |
200 | public void modifyPwd(@RequestBody ModifyPwdReq temp){ | 200 | public void modifyPwd(@RequestBody ModifyPwdReq temp){ |
mobsite-getway-web/src/main/java/com/diligrp/mobsite/getway/web/api/seller/user/SellerUserController.java
1 | package com.diligrp.mobsite.getway.web.api.seller.user; | 1 | package com.diligrp.mobsite.getway.web.api.seller.user; |
2 | 2 | ||
3 | import com.diligrp.mobsite.getway.domain.except.ServiceException; | 3 | import com.diligrp.mobsite.getway.domain.except.ServiceException; |
4 | +import com.diligrp.mobsite.getway.domain.protocol.login.*; | ||
5 | +import com.diligrp.mobsite.getway.domain.protocol.register.CheckMobileReq; | ||
6 | +import com.diligrp.mobsite.getway.domain.protocol.register.CheckMobileResp; | ||
7 | +import com.diligrp.mobsite.getway.domain.protocol.register.UserRegisterReq; | ||
8 | +import com.diligrp.mobsite.getway.domain.protocol.register.UserRegisterResp; | ||
4 | import com.diligrp.mobsite.getway.domain.protocol.saler.user.SellerLoginReq; | 9 | import com.diligrp.mobsite.getway.domain.protocol.saler.user.SellerLoginReq; |
5 | import com.diligrp.mobsite.getway.domain.protocol.saler.user.SellerLoginResp; | 10 | import com.diligrp.mobsite.getway.domain.protocol.saler.user.SellerLoginResp; |
11 | +import com.diligrp.mobsite.getway.domain.protocol.user.*; | ||
6 | import com.diligrp.mobsite.getway.service.seller.SellerUserService; | 12 | import com.diligrp.mobsite.getway.service.seller.SellerUserService; |
7 | import com.diligrp.mobsite.getway.web.api.base.BaseApiController; | 13 | import com.diligrp.mobsite.getway.web.api.base.BaseApiController; |
14 | +import com.diligrp.mobsite.getway.web.utils.BeanValidator; | ||
15 | +import com.diligrp.mobsite.getway.web.utils.DiligrpEndpoint; | ||
16 | +import com.diligrp.website.util.security.Validator; | ||
8 | import io.swagger.annotations.Api; | 17 | import io.swagger.annotations.Api; |
9 | import io.swagger.annotations.ApiOperation; | 18 | import io.swagger.annotations.ApiOperation; |
10 | import org.apache.log4j.Logger; | 19 | import org.apache.log4j.Logger; |
@@ -59,4 +68,259 @@ public class SellerUserController extends BaseApiController { | @@ -59,4 +68,259 @@ public class SellerUserController extends BaseApiController { | ||
59 | } | 68 | } |
60 | 69 | ||
61 | 70 | ||
71 | + /** | ||
72 | + * 加密用户登录(加密) | ||
73 | + * @createTime 2014年8月24日 下午10:55:03 | ||
74 | + * @author weili | ||
75 | + */ | ||
76 | + @ApiOperation(value = "卖家登录", httpMethod = "POST",response = SellerLoginResp.class) | ||
77 | + @RequestMapping(value = "/sellerLogins",method = RequestMethod.POST) | ||
78 | + @ResponseBody | ||
79 | + public void sellerLogins(@RequestBody SellerLoginReq temp){ | ||
80 | + SellerLoginReq req = super.getRequest(SellerLoginReq.class); | ||
81 | + try { | ||
82 | + BeanValidator.validator(req); | ||
83 | + req.setPassword(decodeStr(req.getPassword())); | ||
84 | + SellerLoginResp resp = sellerUserService.login(req); | ||
85 | + super.sendSuccessResp(resp); | ||
86 | + } catch (ServiceException e){ | ||
87 | + log.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s", | ||
88 | + e.getCode(), e.getMessage(), req.getUserId()), e); | ||
89 | + super.sendError(e.getCode(), e.getMessage()); | ||
90 | + } catch (Exception e) { | ||
91 | + log.error("用户登录失败:", e); | ||
92 | + super.sendError(e.getMessage()); | ||
93 | + } | ||
94 | + } | ||
95 | + | ||
96 | + | ||
97 | + /** | ||
98 | + * 验证手机号是否已经被注册 | ||
99 | + * @createTime 2014年8月28日 下午3:41:02 | ||
100 | + * @author zhangshirui | ||
101 | + */ | ||
102 | + @RequestMapping("/checkMobile") | ||
103 | + @ResponseBody | ||
104 | + @DiligrpEndpoint(req = CheckMobileReq.class, resp=CheckMobileResp.class,group = "手机端个人中心",desc = "验证指定手机号是否已被注册") | ||
105 | + public void checkMobile(){ | ||
106 | + CheckMobileReq req = super.getRequest(CheckMobileReq.class); | ||
107 | + CheckMobileResp resp = null; | ||
108 | + try { | ||
109 | + if(!Validator.isNull(req) && !Validator.isNull(req.getMobile())){ | ||
110 | + resp = sellerUserService.checkMobile(req); | ||
111 | + } else { | ||
112 | + resp = new CheckMobileResp(); | ||
113 | + } | ||
114 | + super.sendSuccessResp(resp); | ||
115 | + } catch (ServiceException e){ | ||
116 | + log.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s", | ||
117 | + e.getCode(), e.getMessage(), req.getUserId()), e); | ||
118 | + sendError(e.getCode(), e.getMessage()); | ||
119 | + } catch (Exception e) { | ||
120 | + log.error("验证手机失败:", e); | ||
121 | + super.sendError(e.getMessage()); | ||
122 | + } | ||
123 | + } | ||
124 | + | ||
125 | + /** | ||
126 | + * 发送验证码到手机 | ||
127 | + * @createTime 2014年8月24日 下午10:55:03 | ||
128 | + * @author weili | ||
129 | + */ | ||
130 | + @ApiOperation(value = "发送验证码到手机", httpMethod = "POST" , notes = "发送验证码到手机",response = SendVeriCodeResp.class) | ||
131 | + @RequestMapping(value = "/sendAuthCode",method = RequestMethod.POST) | ||
132 | + @ResponseBody | ||
133 | + public void sendAuthCode(@RequestBody SendVeriCodeReq temp){ | ||
134 | + SendVeriCodeReq req= super.getRequest(SendVeriCodeReq.class); | ||
135 | + try { | ||
136 | + BeanValidator.validator(req); | ||
137 | + SendVeriCodeResp resp = sellerUserService.sendVeriCode(req); | ||
138 | + super.sendSuccessResp(resp); | ||
139 | + } catch (ServiceException e){ | ||
140 | + log.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s", | ||
141 | + e.getCode(), e.getMessage(), req.getUserId()), e); | ||
142 | + sendError(e.getMessage()); | ||
143 | + } catch (Exception e) { | ||
144 | + log.error("发送验证码失败:", e); | ||
145 | + super.sendError(e.getMessage()); | ||
146 | + } | ||
147 | + } | ||
148 | + | ||
149 | + /** | ||
150 | + * 忘记密码:验证手机收到的验证码 | ||
151 | + * @createTime 2014年8月24日 下午10:55:03 | ||
152 | + * @author weili | ||
153 | + */ | ||
154 | + @ApiOperation(value = "忘记密码:验证手机号和验证码", httpMethod = "POST" , notes = "验证手机收到的验证码",response = CheckVeriCodeResp.class) | ||
155 | + @RequestMapping(value = "/checkAuthCode",method = RequestMethod.POST) | ||
156 | + @ResponseBody | ||
157 | + public void checkAuthCode(@RequestBody CheckVeriCodeReq temp){ | ||
158 | + CheckVeriCodeReq req= super.getRequest(CheckVeriCodeReq.class); | ||
159 | + try { | ||
160 | + BeanValidator.validator(req); | ||
161 | + CheckVeriCodeResp resp = sellerUserService.checkVeriCode(req); | ||
162 | + super.sendSuccessResp(resp); | ||
163 | + } catch (ServiceException e){ | ||
164 | + log.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s", | ||
165 | + e.getCode(), e.getMessage(), req.getUserId()), e); | ||
166 | + sendError(e.getCode(), e.getMessage()); | ||
167 | + } catch (Exception e) { | ||
168 | + log.error("验证手机收到的验证码:", e); | ||
169 | + super.sendError(e.getMessage()); | ||
170 | + } | ||
171 | + } | ||
172 | + | ||
173 | + | ||
174 | + /** | ||
175 | + * 找回密码-修改用户密码 | ||
176 | + * @createTime 2014年8月24日 下午10:55:03 | ||
177 | + * @author weili | ||
178 | + */ | ||
179 | + @ApiOperation(value = "找回密码-设置用户新密码", httpMethod = "POST" ,response = SendVeriCodeResp.class) | ||
180 | + @RequestMapping(value = "/modifyPwd",method = RequestMethod.POST) | ||
181 | + @ResponseBody | ||
182 | + public void modifyPwd(@RequestBody ModifyPwdReq temp){ | ||
183 | + ModifyPwdReq req = super.getRequest(ModifyPwdReq.class); | ||
184 | + ModifyPwdResp resp = null; | ||
185 | + try { | ||
186 | + BeanValidator.validator(req); | ||
187 | + resp = sellerUserService.modifyPwd(req); | ||
188 | + super.sendSuccessResp(resp); | ||
189 | + } catch (ServiceException e){ | ||
190 | + log.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s", | ||
191 | + e.getCode(), e.getMessage(), req.getUserId()), e); | ||
192 | + sendError(e.getCode(), e.getMessage()); | ||
193 | + } catch (Exception e) { | ||
194 | + log.error("修改密码:", e); | ||
195 | + super.sendError(e.getMessage()); | ||
196 | + } | ||
197 | + | ||
198 | + } | ||
199 | + | ||
200 | + /** | ||
201 | + * 卖家注册 | ||
202 | + * @createTime 2014年8月28日 下午3:41:02 | ||
203 | + * @author weili | ||
204 | + */ | ||
205 | + @ApiOperation(value = "卖家注册", httpMethod = "POST" ,response = UserRegisterResp.class) | ||
206 | + @RequestMapping(value = "/sellerRegister",method = RequestMethod.POST) | ||
207 | + @ResponseBody | ||
208 | + public void sellerRegister(@RequestBody UserRegisterReq temp){ | ||
209 | + UserRegisterReq req = super.getRequest(UserRegisterReq.class); | ||
210 | + try { | ||
211 | + BeanValidator.validator(req); | ||
212 | + UserRegisterResp resp = sellerUserService.sellerRegister(req); | ||
213 | + super.sendSuccessResp(resp); | ||
214 | + } catch (ServiceException e){ | ||
215 | + log.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s", | ||
216 | + e.getCode(), e.getMessage(), req.getUserId()), e); | ||
217 | + sendError(e.getCode(), e.getMessage()); | ||
218 | + } catch (Exception e) { | ||
219 | + log.error("用户注册失败:", e); | ||
220 | + super.sendError(e.getMessage()); | ||
221 | + } | ||
222 | + } | ||
223 | + | ||
224 | + /** | ||
225 | + * 卖家注册(加密) | ||
226 | + * @createTime 2014年8月28日 下午3:41:02 | ||
227 | + * @author weili | ||
228 | + */ | ||
229 | + @ApiOperation(value = "卖家注册", httpMethod = "POST" ,response = UserRegisterResp.class) | ||
230 | + @RequestMapping(value = "/sellerRegisters",method = RequestMethod.POST) | ||
231 | + @ResponseBody | ||
232 | + public void sellerRegisters(@RequestBody UserRegisterReq temp){ | ||
233 | + UserRegisterReq req = super.getRequest(UserRegisterReq.class); | ||
234 | + try { | ||
235 | + BeanValidator.validator(req); | ||
236 | + req.setPassword(decodeStr(req.getPassword())); | ||
237 | + UserRegisterResp resp = sellerUserService.sellerRegister(req); | ||
238 | + super.sendSuccessResp(resp); | ||
239 | + } catch (ServiceException e){ | ||
240 | + log.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s", | ||
241 | + e.getCode(), e.getMessage(), req.getUserId()), e); | ||
242 | + sendError(e.getCode(), e.getMessage()); | ||
243 | + } catch (Exception e) { | ||
244 | + log.error("用户注册失败:", e); | ||
245 | + super.sendError(e.getMessage()); | ||
246 | + } | ||
247 | + } | ||
248 | + | ||
249 | + /** | ||
250 | + * 退出操作 | ||
251 | + * | ||
252 | + * @createTime 2014年8月29日 上午9:30:10 | ||
253 | + * @author weili | ||
254 | + */ | ||
255 | + @ApiOperation(value = "退出", httpMethod = "POST" ,response = LogoutResp.class) | ||
256 | + @RequestMapping(value = "/logout",method = RequestMethod.POST) | ||
257 | + @ResponseBody | ||
258 | + public void logout(@RequestBody LogoutReq temp){ | ||
259 | + LogoutReq req = super.getRequest(LogoutReq.class); | ||
260 | + try { | ||
261 | + if(Validator.isNull(req) || !Validator.isNumber(req.getUserId()+"")) { | ||
262 | + throw new NullPointerException("参数传递错误"); | ||
263 | + } | ||
264 | + LogoutResp resp = sellerUserService.logout(req); | ||
265 | + super.sendSuccessResp(resp); | ||
266 | + } catch (ServiceException e){ | ||
267 | + log.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s", | ||
268 | + e.getCode(), e.getMessage(), req.getUserId()), e); | ||
269 | + sendError(e.getCode(), e.getMessage()); | ||
270 | + } | ||
271 | + catch (Exception e) { | ||
272 | + log.error("用户退出失败:", e); | ||
273 | + super.sendError(e.getMessage()); | ||
274 | + } | ||
275 | + } | ||
276 | + | ||
277 | + /** | ||
278 | + * 个人信息维护 | ||
279 | + * @createTime 2016年8月24日 下午10:55:03 | ||
280 | + * @author weili | ||
281 | + */ | ||
282 | + @ApiOperation(value = "个人信息维护", httpMethod = "POST" ,response = UpdateUserInfoResp.class) | ||
283 | + @RequestMapping(value = "/updateUserInfo",method = RequestMethod.POST) | ||
284 | + @ResponseBody | ||
285 | + public void updateUserInfo(@RequestBody UpdateUserInfoReq temp){ | ||
286 | + UpdateUserInfoReq req = super.getRequest(UpdateUserInfoReq.class); | ||
287 | + try { | ||
288 | + UpdateUserInfoResp resp = sellerUserService.updateUserInfo(req); | ||
289 | + super.sendSuccessResp(resp); | ||
290 | + } catch (ServiceException e){ | ||
291 | + log.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s", | ||
292 | + e.getCode(), e.getMessage(), req.getUserId()), e); | ||
293 | + sendError(e.getCode(), e.getMessage()); | ||
294 | + } catch (Exception e) { | ||
295 | + log.error("个人信息维护:", e); | ||
296 | + super.sendError(e.getMessage()); | ||
297 | + } | ||
298 | + | ||
299 | + } | ||
300 | + | ||
301 | + | ||
302 | + | ||
303 | + | ||
304 | + /** | ||
305 | + * 查询用户信息 | ||
306 | + * GetUserInfoReq | ||
307 | + */ | ||
308 | + @ApiOperation(value = "查询卖家用户信息", httpMethod = "POST" ,response = GetDepositCardAmountResp.class) | ||
309 | + @RequestMapping(value = "/getsellerInfo",method = RequestMethod.POST) | ||
310 | + @ResponseBody | ||
311 | + public void getsellerInfo() { | ||
312 | + GetUserInfoReq req = getRequest(GetUserInfoReq.class); | ||
313 | + try { | ||
314 | + GetUserInfoResp resp = sellerUserService.getUserIntroduction(req); | ||
315 | + super.sendSuccessResp(resp); | ||
316 | + } catch (ServiceException e){ | ||
317 | + log.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s", | ||
318 | + e.getCode(), e.getMessage(), req.getUserId()), e); | ||
319 | + sendError(e.getCode(), e.getMessage()); | ||
320 | + } catch (Exception e) { | ||
321 | + log.error(String.format("ErrorMessage=%s,UserId=%s", e.getMessage(), req.getUserId()), e); | ||
322 | + sendError(e.getMessage()); | ||
323 | + } | ||
324 | + } | ||
325 | + | ||
62 | } | 326 | } |