Commit 40c2f9d37fb9d0e626956d4db4d9fbe2efcd4c4d

Authored by Jiang
1 parent d56dd93a

购物车接口开发

mobsite-getway-domain/src/main/java/com/diligrp/mobsite/getway/domain/protocol/ProductSku.java
@@ -3,214 +3,223 @@ package com.diligrp.mobsite.getway.domain.protocol; @@ -3,214 +3,223 @@ package com.diligrp.mobsite.getway.domain.protocol;
3 import java.util.List; 3 import java.util.List;
4 import java.util.Map; 4 import java.util.Map;
5 5
  6 +import io.swagger.annotations.ApiModelProperty;
6 7
7 /** 8 /**
8 * <B>Description</B> 商品属性 <br /> 9 * <B>Description</B> 商品属性 <br />
9 - * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved. <br /> 10 + * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved.
  11 + * <br />
10 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br /> 12 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br />
11 * <B>Company</B> 地利集团 13 * <B>Company</B> 地利集团
  14 + *
12 * @createTime 2014年9月17日 下午6:19:19 15 * @createTime 2014年9月17日 下午6:19:19
13 * @author zhangshirui 16 * @author zhangshirui
14 */ 17 */
15 public class ProductSku { 18 public class ProductSku {
16 -  
17 - /**  
18 - * 商品状态:1-库存为零,销售完毕,2-商品状态:已下架或删除,3-在售并且正常  
19 - * 1-库存为零,销售完毕  
20 - */  
21 - public static final int STATE_SOLD_OUT = 1;  
22 - /**  
23 - * 2-已下架或删除  
24 - */  
25 - public static final int STATE_DOWN_DEL=2;  
26 - /**  
27 - * 3-在售并且正常  
28 - */  
29 - public static final int STATE_ON_SALE = 3;  
30 -  
31 - /**  
32 - * 购物车项sk  
33 - */  
34 - private String sku;  
35 -  
36 - /**  
37 - * 属性map  
38 - */  
39 - private Map<String,String> attributeMap;  
40 -  
41 - /**  
42 - * 价格类型  
43 - */  
44 - private Integer priceType;  
45 -  
46 - /**  
47 - * 最新价格  
48 - */  
49 - private Long price;  
50 -  
51 - /**  
52 - * 之前的价格  
53 - */  
54 - private Long oldPrice;  
55 -  
56 - /**  
57 - * 购买数量  
58 - */  
59 - private Integer buyNum;  
60 -  
61 - /**  
62 - * sku商品的状态  
63 - */  
64 - private Integer state;  
65 -  
66 - /**  
67 - * 选择的服务  
68 - */  
69 - private List<Service> serviceList;  
70 -  
71 -  
72 - /**  
73 - * get value of ProductAttribute.sku  
74 - * @return the sku  
75 - * @createTime 2014年9月17日 下午6:27:08  
76 - * @author zhangshirui  
77 - */  
78 - public String getSku() {  
79 - return sku;  
80 - }  
81 -  
82 -  
83 - /**  
84 - * set value of ProductAttribute.sku  
85 - * @param sku the sku to set  
86 - * @createTime 2014年9月17日 下午6:27:08  
87 - * @author zhangshirui  
88 - */  
89 - public void setSku(String sku) {  
90 - this.sku = sku;  
91 - }  
92 -  
93 -  
94 - /**  
95 - * get value of ProductAttribute.attributeMap  
96 - * @return the attributeMap  
97 - * @createTime 2014年9月17日 下午6:27:08  
98 - * @author zhangshirui  
99 - */  
100 - public Map<String, String> getAttributeMap() {  
101 - return attributeMap;  
102 - }  
103 -  
104 -  
105 - /**  
106 - * set value of ProductAttribute.attributeMap  
107 - * @param attributeMap the attributeMap to set  
108 - * @createTime 2014年9月17日 下午6:27:08  
109 - * @author zhangshirui  
110 - */  
111 - public void setAttributeMap(Map<String, String> attributeMap) {  
112 - this.attributeMap = attributeMap;  
113 - }  
114 -  
115 -  
116 - /**  
117 - * get value of ProductAttribute.priceType  
118 - * @return the priceType  
119 - * @createTime 2014年9月17日 下午6:27:08  
120 - * @author zhangshirui  
121 - */  
122 - public Integer getPriceType() {  
123 - return priceType;  
124 - }  
125 -  
126 -  
127 - /**  
128 - * set value of ProductAttribute.priceType  
129 - * @param priceType the priceType to set  
130 - * @createTime 2014年9月17日 下午6:27:08  
131 - * @author zhangshirui  
132 - */  
133 - public void setPriceType(Integer priceType) {  
134 - this.priceType = priceType;  
135 - }  
136 -  
137 -  
138 - /**  
139 - * get value of ProductAttribute.price  
140 - * @return the price  
141 - * @createTime 2014年9月17日 下午6:27:08  
142 - * @author zhangshirui  
143 - */  
144 - public Long getPrice() {  
145 - return price;  
146 - }  
147 -  
148 -  
149 - /**  
150 - * set value of ProductAttribute.price  
151 - * @param price the price to set  
152 - * @createTime 2014年9月17日 下午6:27:08  
153 - * @author zhangshirui  
154 - */  
155 - public void setPrice(Long price) {  
156 - this.price = price;  
157 - }  
158 -  
159 -  
160 - /**  
161 - * get value of ProductAttribute.buyNum  
162 - * @return the buyNum  
163 - * @createTime 2014年9月17日 下午6:27:08  
164 - * @author zhangshirui  
165 - */  
166 - public Integer getBuyNum() {  
167 - return buyNum;  
168 - }  
169 -  
170 -  
171 - /**  
172 - * set value of ProductAttribute.buyNum  
173 - * @param buyNum the buyNum to set  
174 - * @createTime 2014年9月17日 下午6:27:08  
175 - * @author zhangshirui  
176 - */  
177 - public void setBuyNum(Integer buyNum) {  
178 - this.buyNum = buyNum;  
179 - }  
180 -  
181 -  
182 - /**  
183 - * get value of ProductAttribute.serviceList  
184 - * @return the serviceList  
185 - * @createTime 2014年9月17日 下午6:27:08  
186 - * @author zhangshirui  
187 - */  
188 - public List<Service> getServiceList() {  
189 - return serviceList;  
190 - }  
191 -  
192 -  
193 - /**  
194 - * set value of ProductAttribute.serviceList  
195 - * @param serviceList the serviceList to set  
196 - * @createTime 2014年9月17日 下午6:27:08  
197 - * @author zhangshirui  
198 - */  
199 - public void setServiceList(List<Service> serviceList) {  
200 - this.serviceList = serviceList;  
201 - }  
202 19
  20 + /**
  21 + * 商品状态:1-库存为零,销售完毕,2-商品状态:已下架或删除,3-在售并且正常 1-库存为零,销售完毕
  22 + */
  23 + public static final int STATE_SOLD_OUT = 1;
  24 + /**
  25 + * 2-已下架或删除
  26 + */
  27 + public static final int STATE_DOWN_DEL = 2;
  28 + /**
  29 + * 3-在售并且正常
  30 + */
  31 + public static final int STATE_ON_SALE = 3;
  32 +
  33 + /**
  34 + * 购物车项sk
  35 + */
  36 + private String sku;
  37 +
  38 + /**
  39 + * 属性map
  40 + */
  41 + private Map<String, String> attributeMap;
  42 +
  43 + /**
  44 + * 价格类型
  45 + */
  46 + private Integer priceType;
  47 +
  48 + /**
  49 + * 最新价格
  50 + */
  51 + private Long price;
  52 +
  53 + /**
  54 + * 之前的价格
  55 + */
  56 + private Long oldPrice;
  57 +
  58 + /**
  59 + * 购买数量
  60 + */
  61 + private Integer buyNum;
  62 +
  63 + /**
  64 + * sku商品的状态
  65 + */
  66 + private Integer state;
  67 +
  68 + /**
  69 + * 选择的服务
  70 + */
  71 + private List<Service> serviceList;
  72 + @ApiModelProperty("商品id")
  73 + private Long productId;
  74 + @ApiModelProperty("商品名称")
  75 + private String productName;
  76 +
  77 + /**
  78 + * get value of ProductAttribute.sku
  79 + *
  80 + * @return the sku
  81 + * @createTime 2014年9月17日 下午6:27:08
  82 + * @author zhangshirui
  83 + */
  84 + public String getSku() {
  85 + return sku;
  86 + }
  87 +
  88 + /**
  89 + * set value of ProductAttribute.sku
  90 + *
  91 + * @param sku
  92 + * the sku to set
  93 + * @createTime 2014年9月17日 下午6:27:08
  94 + * @author zhangshirui
  95 + */
  96 + public void setSku(String sku) {
  97 + this.sku = sku;
  98 + }
  99 +
  100 + /**
  101 + * get value of ProductAttribute.attributeMap
  102 + *
  103 + * @return the attributeMap
  104 + * @createTime 2014年9月17日 下午6:27:08
  105 + * @author zhangshirui
  106 + */
  107 + public Map<String, String> getAttributeMap() {
  108 + return attributeMap;
  109 + }
  110 +
  111 + /**
  112 + * set value of ProductAttribute.attributeMap
  113 + *
  114 + * @param attributeMap
  115 + * the attributeMap to set
  116 + * @createTime 2014年9月17日 下午6:27:08
  117 + * @author zhangshirui
  118 + */
  119 + public void setAttributeMap(Map<String, String> attributeMap) {
  120 + this.attributeMap = attributeMap;
  121 + }
  122 +
  123 + /**
  124 + * get value of ProductAttribute.priceType
  125 + *
  126 + * @return the priceType
  127 + * @createTime 2014年9月17日 下午6:27:08
  128 + * @author zhangshirui
  129 + */
  130 + public Integer getPriceType() {
  131 + return priceType;
  132 + }
  133 +
  134 + /**
  135 + * set value of ProductAttribute.priceType
  136 + *
  137 + * @param priceType
  138 + * the priceType to set
  139 + * @createTime 2014年9月17日 下午6:27:08
  140 + * @author zhangshirui
  141 + */
  142 + public void setPriceType(Integer priceType) {
  143 + this.priceType = priceType;
  144 + }
  145 +
  146 + /**
  147 + * get value of ProductAttribute.price
  148 + *
  149 + * @return the price
  150 + * @createTime 2014年9月17日 下午6:27:08
  151 + * @author zhangshirui
  152 + */
  153 + public Long getPrice() {
  154 + return price;
  155 + }
  156 +
  157 + /**
  158 + * set value of ProductAttribute.price
  159 + *
  160 + * @param price
  161 + * the price to set
  162 + * @createTime 2014年9月17日 下午6:27:08
  163 + * @author zhangshirui
  164 + */
  165 + public void setPrice(Long price) {
  166 + this.price = price;
  167 + }
  168 +
  169 + /**
  170 + * get value of ProductAttribute.buyNum
  171 + *
  172 + * @return the buyNum
  173 + * @createTime 2014年9月17日 下午6:27:08
  174 + * @author zhangshirui
  175 + */
  176 + public Integer getBuyNum() {
  177 + return buyNum;
  178 + }
  179 +
  180 + /**
  181 + * set value of ProductAttribute.buyNum
  182 + *
  183 + * @param buyNum
  184 + * the buyNum to set
  185 + * @createTime 2014年9月17日 下午6:27:08
  186 + * @author zhangshirui
  187 + */
  188 + public void setBuyNum(Integer buyNum) {
  189 + this.buyNum = buyNum;
  190 + }
  191 +
  192 + /**
  193 + * get value of ProductAttribute.serviceList
  194 + *
  195 + * @return the serviceList
  196 + * @createTime 2014年9月17日 下午6:27:08
  197 + * @author zhangshirui
  198 + */
  199 + public List<Service> getServiceList() {
  200 + return serviceList;
  201 + }
  202 +
  203 + /**
  204 + * set value of ProductAttribute.serviceList
  205 + *
  206 + * @param serviceList
  207 + * the serviceList to set
  208 + * @createTime 2014年9月17日 下午6:27:08
  209 + * @author zhangshirui
  210 + */
  211 + public void setServiceList(List<Service> serviceList) {
  212 + this.serviceList = serviceList;
  213 + }
203 214
204 public Integer getState() { 215 public Integer getState() {
205 return state; 216 return state;
206 } 217 }
207 218
208 -  
209 public void setState(Integer state) { 219 public void setState(Integer state) {
210 this.state = state; 220 this.state = state;
211 } 221 }
212 222
213 -  
214 /** 223 /**
215 * @return the oldPrice 224 * @return the oldPrice
216 */ 225 */
@@ -218,11 +227,27 @@ public class ProductSku { @@ -218,11 +227,27 @@ public class ProductSku {
218 return oldPrice; 227 return oldPrice;
219 } 228 }
220 229
221 -  
222 /** 230 /**
223 - * @param oldPrice the oldPrice to set 231 + * @param oldPrice
  232 + * the oldPrice to set
224 */ 233 */
225 public void setOldPrice(Long oldPrice) { 234 public void setOldPrice(Long oldPrice) {
226 this.oldPrice = oldPrice; 235 this.oldPrice = oldPrice;
227 } 236 }
  237 +
  238 + public Long getProductId() {
  239 + return productId;
  240 + }
  241 +
  242 + public void setProductId(Long productId) {
  243 + this.productId = productId;
  244 + }
  245 +
  246 + public String getProductName() {
  247 + return productName;
  248 + }
  249 +
  250 + public void setProductName(String productName) {
  251 + this.productName = productName;
  252 + }
228 } 253 }
mobsite-getway-domain/src/main/java/com/diligrp/mobsite/getway/domain/protocol/cart/ConfirmCartReq.java
1 package com.diligrp.mobsite.getway.domain.protocol.cart; 1 package com.diligrp.mobsite.getway.domain.protocol.cart;
2 2
3 -import com.diligrp.mobsite.getway.domain.protocol.BaseReq;  
4 -  
5 import java.util.List; 3 import java.util.List;
6 4
  5 +import com.diligrp.mobsite.getway.domain.protocol.BaseReq;
  6 +
  7 +import io.swagger.annotations.ApiModelProperty;
7 8
8 /** 9 /**
9 * <B>Description</B> 进货单确认请求 <br /> 10 * <B>Description</B> 进货单确认请求 <br />
10 - * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved. <br /> 11 + * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved.
  12 + * <br />
11 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br /> 13 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br />
12 * <B>Company</B> 地利集团 14 * <B>Company</B> 地利集团
  15 + *
13 * @createTime 2014年9月17日 上午11:54:10 16 * @createTime 2014年9月17日 上午11:54:10
14 * @author zhangshirui 17 * @author zhangshirui
15 */ 18 */
16 @SuppressWarnings("serial") 19 @SuppressWarnings("serial")
17 -public class ConfirmCartReq extends BaseReq{  
18 -  
19 - /**  
20 - * 商品sku进货单id  
21 - */ 20 +public class ConfirmCartReq extends BaseReq {
  21 +
  22 + @ApiModelProperty("买家id")
  23 + private Long shopBuyerId;
  24 + @ApiModelProperty("选择的sku")
22 private List<String> skus; 25 private List<String> skus;
23 26
24 - public List<String> getSkus() {  
25 - return skus;  
26 - } 27 + public Long getShopBuyerId() {
  28 + return shopBuyerId;
  29 + }
  30 +
  31 + public void setShopBuyerId(Long shopBuyerId) {
  32 + this.shopBuyerId = shopBuyerId;
  33 + }
  34 +
  35 + public List<String> getSkus() {
  36 + return skus;
  37 + }
  38 +
  39 + public void setSkus(List<String> skus) {
  40 + this.skus = skus;
  41 + }
27 42
28 - public void setSkus(List<String> skus) {  
29 - this.skus = skus;  
30 - }  
31 } 43 }
mobsite-getway-domain/src/main/java/com/diligrp/mobsite/getway/domain/protocol/cart/ConfirmCartResp.java
@@ -3,118 +3,33 @@ package com.diligrp.mobsite.getway.domain.protocol.cart; @@ -3,118 +3,33 @@ package com.diligrp.mobsite.getway.domain.protocol.cart;
3 import java.util.List; 3 import java.util.List;
4 4
5 import com.diligrp.mobsite.getway.domain.protocol.BaseResp; 5 import com.diligrp.mobsite.getway.domain.protocol.BaseResp;
6 -import com.diligrp.mobsite.getway.domain.protocol.PickInfo;  
7 -import com.diligrp.mobsite.getway.domain.protocol.cart.model.ConfirmCartShopInfo;  
8 - 6 +import com.diligrp.mobsite.getway.domain.protocol.cart.model.CartProductSku;
9 7
10 /** 8 /**
11 * <B>Description</B> 确认订单 <br /> 9 * <B>Description</B> 确认订单 <br />
12 - * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved. <br /> 10 + * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved.
  11 + * <br />
13 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br /> 12 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br />
14 * <B>Company</B> 地利集团 13 * <B>Company</B> 地利集团
  14 + *
15 * @createTime 2014年9月17日 上午11:55:09 15 * @createTime 2014年9月17日 上午11:55:09
16 - * @author zhangshirui 16 + * @author jiang
17 */ 17 */
18 -@SuppressWarnings("serial")  
19 public class ConfirmCartResp extends BaseResp { 18 public class ConfirmCartResp extends BaseResp {
20 -  
21 - /**  
22 - * 提货人信息  
23 - */  
24 - private PickInfo pickInfo;  
25 -  
26 - /**  
27 - * 购物单店铺信息  
28 - */  
29 - private List<ConfirmCartShopInfo> cartShops;  
30 -  
31 - /**  
32 - * 总价  
33 - */  
34 - private Long totalPrice;  
35 -  
36 - /**  
37 - * 信用额度  
38 - */  
39 - private Long creditAmount;  
40 - /**  
41 - * 进货单类型  
42 - * 1.普通支付  
43 - * 2.赊账支付  
44 - */  
45 - private Integer cartType;  
46 -  
47 - /**  
48 - * @return the pickInfo  
49 - */  
50 - public PickInfo getPickInfo() {  
51 - return pickInfo;  
52 - }  
53 -  
54 - /**  
55 - * @param pickInfo the pickInfo to set  
56 - */  
57 - public void setPickInfo(PickInfo pickInfo) {  
58 - this.pickInfo = pickInfo;  
59 - }  
60 -  
61 - /**  
62 - * @return the totalPrice  
63 - */  
64 - public Long getTotalPrice() {  
65 - return totalPrice;  
66 - }  
67 -  
68 - /**  
69 - * @param totalPrice the totalPrice to set  
70 - */  
71 - public void setTotalPrice(Long totalPrice) {  
72 - this.totalPrice = totalPrice;  
73 - }  
74 -  
75 - /**  
76 - * @return the cartShops  
77 - */  
78 - public List<ConfirmCartShopInfo> getCartShops() {  
79 - return cartShops;  
80 - }  
81 -  
82 - /**  
83 - * @param cartShops the cartShops to set  
84 - */  
85 - public void setCartShops(List<ConfirmCartShopInfo> cartShops) {  
86 - this.cartShops = cartShops;  
87 - }  
88 19
89 - /**  
90 - * get value of ConfirmCartResp.creditAmount  
91 - * @return the creditAmount  
92 - * @createTime 2014年11月5日 上午11:51:01  
93 - * @author zhangshirui  
94 - */  
95 - public Long getCreditAmount() {  
96 - return creditAmount;  
97 - } 20 + /**
  21 + *
  22 + */
  23 + private static final long serialVersionUID = -5717619810514850072L;
98 24
99 -  
100 - /**  
101 - * set value of ConfirmCartResp.creditAmount  
102 - * @param creditAmount the creditAmount to set  
103 - * @createTime 2014年11月5日 上午11:51:01  
104 - * @author zhangshirui  
105 - */  
106 - public void setCreditAmount(Long creditAmount) {  
107 - this.creditAmount = creditAmount;  
108 - } 25 + private List<CartProductSku> skus;
109 26
110 -  
111 - public Integer getCartType() {  
112 - return cartType;  
113 - } 27 + public List<CartProductSku> getSkus() {
  28 + return skus;
  29 + }
114 30
115 -  
116 - public void setCartType(Integer cartType) {  
117 - this.cartType = cartType;  
118 - } 31 + public void setSkus(List<CartProductSku> skus) {
  32 + this.skus = skus;
  33 + }
119 34
120 } 35 }
mobsite-getway-domain/src/main/java/com/diligrp/mobsite/getway/domain/protocol/cart/model/CartProductSku.java
@@ -2,204 +2,99 @@ package com.diligrp.mobsite.getway.domain.protocol.cart.model; @@ -2,204 +2,99 @@ package com.diligrp.mobsite.getway.domain.protocol.cart.model;
2 2
3 import com.diligrp.mobsite.getway.domain.protocol.ProductSku; 3 import com.diligrp.mobsite.getway.domain.protocol.ProductSku;
4 4
5 -  
6 /** 5 /**
7 * <B>Description</B> 购物单商品属性 <br /> 6 * <B>Description</B> 购物单商品属性 <br />
8 - * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved. <br /> 7 + * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved.
  8 + * <br />
9 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br /> 9 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br />
10 * <B>Company</B> 地利集团 10 * <B>Company</B> 地利集团
  11 + *
11 * @createTime 2014年9月11日 下午5:51:30 12 * @createTime 2014年9月11日 下午5:51:30
12 * @author zhangshirui 13 * @author zhangshirui
13 */ 14 */
14 -public class CartProductSku extends ProductSku{  
15 - 15 +public class CartProductSku extends ProductSku {
  16 +
16 /** 17 /**
17 - * 价格变化  
18 - * 1-价格变化 18 + * 价格变化 1-价格变化
19 */ 19 */
20 public static final int PRICE_CHANGE = 1; 20 public static final int PRICE_CHANGE = 1;
21 /** 21 /**
22 * 2-价格未变化 22 * 2-价格未变化
23 */ 23 */
24 public static final int PRICE_NO_CHANGE = 2; 24 public static final int PRICE_NO_CHANGE = 2;
25 - 25 +
26 /** 26 /**
27 - * 购买数量变化  
28 - * 1-购买数量变化  
29 - */  
30 - public static final int BUY_NUM_CHANGE = 1;  
31 - /**  
32 - * 2-购买数量未变化  
33 - */  
34 - public static final int BUY_NUM_NO_CHANGE = 2;  
35 - 27 + * 购买数量变化 1-购买数量变化
  28 + */
  29 + public static final int BUY_NUM_CHANGE = 1;
36 /** 30 /**
37 - * 商品sku进货单id  
38 - */  
39 - private Long skuCartId;  
40 -  
41 - /**  
42 - * 起批量-最少购买量  
43 - */  
44 - private Integer minWholesale;  
45 -  
46 - /**  
47 - * 库存  
48 - */  
49 - private Integer stockNum;  
50 -  
51 - /**  
52 - * 添加到进货单的时间  
53 - */  
54 - private String addToCartTime;  
55 -  
56 - /**  
57 - * 单位  
58 - */  
59 - private String unit;  
60 -  
61 -  
62 -  
63 - /** 是否允许市场外交割: 1-允许 ,2- 不允许 **/  
64 - private int isAllowDelivery;  
65 -  
66 -  
67 - public int getIsAllowDelivery() {  
68 - return isAllowDelivery;  
69 - }  
70 -  
71 - public void setIsAllowDelivery(int isAllowDelivery) {  
72 - this.isAllowDelivery = isAllowDelivery;  
73 - }  
74 -  
75 -  
76 - /**  
77 - * 购买数量是否变化  
78 - * 默认2,没变化  
79 - */  
80 - private Integer isBuyNumChange = BUY_NUM_NO_CHANGE;  
81 -  
82 - /**  
83 - * 价格是否变化  
84 - * 默认2,没变化  
85 - */  
86 - private Integer isPriceChange = PRICE_NO_CHANGE;  
87 -  
88 - /**  
89 - * get value of CartProductAttribute.minWholesale  
90 - * @return the minWholesale  
91 - * @createTime 2014年9月17日 下午6:14:30  
92 - * @author zhangshirui  
93 - */  
94 - public Integer getMinWholesale() {  
95 - return minWholesale;  
96 - }  
97 -  
98 -  
99 - /**  
100 - * set value of CartProductAttribute.minWholesale  
101 - * @param minWholesale the minWholesale to set  
102 - * @createTime 2014年9月17日 下午6:14:30  
103 - * @author zhangshirui  
104 - */  
105 - public void setMinWholesale(Integer minWholesale) {  
106 - this.minWholesale = minWholesale;  
107 - }  
108 -  
109 - /**  
110 - * get value of CartProductAttribute.stockNum  
111 - * @return the stockNum  
112 - * @createTime 2014年9月17日 下午6:27:40  
113 - * @author zhangshirui  
114 - */  
115 - public Integer getStockNum() {  
116 - return stockNum;  
117 - }  
118 -  
119 -  
120 -  
121 - /**  
122 - * set value of CartProductAttribute.stockNum  
123 - * @param stockNum the stockNum to set  
124 - * @createTime 2014年9月17日 下午6:27:40  
125 - * @author zhangshirui  
126 - */  
127 - public void setStockNum(Integer stockNum) {  
128 - this.stockNum = stockNum;  
129 - }  
130 - 31 + * 2-购买数量未变化
  32 + */
  33 + public static final int BUY_NUM_NO_CHANGE = 2;
131 34
132 /** 35 /**
133 - * @return the addToCartTime 36 + * 库存
134 */ 37 */
135 - public String getAddToCartTime() {  
136 - return addToCartTime;  
137 - }  
138 - 38 + private Integer stockNum;
139 39
140 /** 40 /**
141 - * @param addToCartTime the addToCartTime to set 41 + * 添加到进货单的时间
142 */ 42 */
143 - public void setAddToCartTime(String addToCartTime) {  
144 - this.addToCartTime = addToCartTime;  
145 - } 43 + private String addToCartTime;
146 44
  45 + /**
  46 + * 单位
  47 + */
  48 + private String unit;
147 49
148 -  
149 - /**  
150 - * get value of CartProductSku.unit  
151 - * @return the unit  
152 - * @createTime 2014年10月13日 下午4:12:23  
153 - * @author zhangshirui  
154 - */  
155 - public String getUnit() {  
156 - return unit;  
157 - }  
158 - 50 + /**
  51 + * 购买数量是否变化 默认2,没变化
  52 + */
  53 + private Integer isBuyNumChange = BUY_NUM_NO_CHANGE;
159 54
160 -  
161 - /**  
162 - * set value of CartProductSku.unit  
163 - * @param unit the unit to set  
164 - * @createTime 2014年10月13日 下午4:12:23  
165 - * @author zhangshirui  
166 - */  
167 - public void setUnit(String unit) {  
168 - this.unit = unit;  
169 - }  
170 -  
171 - public Long getSkuCartId() {  
172 - return skuCartId;  
173 - } 55 + /**
  56 + * 价格是否变化 默认2,没变化
  57 + */
  58 + private Integer isPriceChange = PRICE_NO_CHANGE;
174 59
  60 + public Integer getStockNum() {
  61 + return stockNum;
  62 + }
175 63
176 -  
177 - public void setSkuCartId(Long skuCartId) {  
178 - this.skuCartId = skuCartId;  
179 - } 64 + public void setStockNum(Integer stockNum) {
  65 + this.stockNum = stockNum;
  66 + }
180 67
  68 + public String getAddToCartTime() {
  69 + return addToCartTime;
  70 + }
181 71
182 -  
183 - public Integer getIsBuyNumChange() {  
184 - return isBuyNumChange;  
185 - } 72 + public void setAddToCartTime(String addToCartTime) {
  73 + this.addToCartTime = addToCartTime;
  74 + }
186 75
  76 + public String getUnit() {
  77 + return unit;
  78 + }
187 79
188 -  
189 - public void setIsBuyNumChange(Integer isBuyNumChange) {  
190 - this.isBuyNumChange = isBuyNumChange;  
191 - } 80 + public void setUnit(String unit) {
  81 + this.unit = unit;
  82 + }
192 83
  84 + public Integer getIsBuyNumChange() {
  85 + return isBuyNumChange;
  86 + }
193 87
194 -  
195 - public Integer getIsPriceChange() {  
196 - return isPriceChange;  
197 - } 88 + public void setIsBuyNumChange(Integer isBuyNumChange) {
  89 + this.isBuyNumChange = isBuyNumChange;
  90 + }
198 91
  92 + public Integer getIsPriceChange() {
  93 + return isPriceChange;
  94 + }
199 95
200 -  
201 - public void setIsPriceChange(Integer isPriceChange) {  
202 - this.isPriceChange = isPriceChange;  
203 - } 96 + public void setIsPriceChange(Integer isPriceChange) {
  97 + this.isPriceChange = isPriceChange;
  98 + }
204 99
205 } 100 }
mobsite-getway-domain/src/main/java/com/diligrp/mobsite/getway/domain/protocol/user/GetDeliveryAddressReq.java 0 → 100644
  1 +package com.diligrp.mobsite.getway.domain.protocol.user;
  2 +
  3 +import com.diligrp.mobsite.getway.domain.protocol.BaseReq;
  4 +
  5 +import io.swagger.annotations.ApiModelProperty;
  6 +
  7 +public class GetDeliveryAddressReq extends BaseReq {
  8 +
  9 + /**
  10 + *
  11 + */
  12 + private static final long serialVersionUID = -3406556869427158247L;
  13 +
  14 + @ApiModelProperty("买家id")
  15 + private Long shopBuyerId;
  16 +
  17 + public Long getShopBuyerId() {
  18 + return shopBuyerId;
  19 + }
  20 +
  21 + public void setShopBuyerId(Long shopBuyerId) {
  22 + this.shopBuyerId = shopBuyerId;
  23 + }
  24 +
  25 +}
mobsite-getway-domain/src/main/java/com/diligrp/mobsite/getway/domain/protocol/user/GetDeliveryAddressResp.java 0 → 100644
  1 +package com.diligrp.mobsite.getway.domain.protocol.user;
  2 +
  3 +import com.diligrp.mobsite.getway.domain.protocol.BaseResp;
  4 +import com.diligrp.mobsite.getway.domain.protocol.PickInfo;
  5 +
  6 +import io.swagger.annotations.ApiModelProperty;
  7 +
  8 +public class GetDeliveryAddressResp extends BaseResp {
  9 +
  10 + /**
  11 + *
  12 + */
  13 + private static final long serialVersionUID = 322459069347665875L;
  14 +
  15 + @ApiModelProperty("送货地址")
  16 + private PickInfo pickInfo;
  17 +
  18 + public PickInfo getPickInfo() {
  19 + return pickInfo;
  20 + }
  21 +
  22 + public void setPickInfo(PickInfo pickInfo) {
  23 + this.pickInfo = pickInfo;
  24 + }
  25 +
  26 +}
mobsite-getway-rpc/src/main/java/com/diligrp/mobsite/getway/rpc/ShoppingCartRPC.java 0 → 100644
  1 +package com.diligrp.mobsite.getway.rpc;
  2 +
  3 +import com.diligrp.mobsite.getway.domain.protocol.cart.AddCartProductReq;
  4 +import com.diligrp.mobsite.getway.domain.protocol.cart.AddCartProductResp;
  5 +import com.diligrp.mobsite.getway.domain.protocol.cart.ConfirmCartReq;
  6 +import com.diligrp.mobsite.getway.domain.protocol.cart.ConfirmCartResp;
  7 +import com.diligrp.mobsite.getway.domain.protocol.cart.DelCartsReq;
  8 +import com.diligrp.mobsite.getway.domain.protocol.cart.DelCartsResp;
  9 +import com.diligrp.mobsite.getway.domain.protocol.cart.GetCartByUserReq;
  10 +import com.diligrp.mobsite.getway.domain.protocol.cart.GetCartByUserResp;
  11 +import com.diligrp.mobsite.getway.domain.protocol.cart.ModifyAmountReq;
  12 +import com.diligrp.mobsite.getway.domain.protocol.cart.ModifyAmountResp;
  13 +
  14 +public interface ShoppingCartRPC {
  15 +
  16 + GetCartByUserResp getCart(GetCartByUserReq req);
  17 +
  18 + AddCartProductResp addCartProduct(AddCartProductReq req);
  19 +
  20 + DelCartsResp delCartByIds(DelCartsReq req);
  21 +
  22 + ModifyAmountResp modifyAmount(ModifyAmountReq req);
  23 +
  24 + ConfirmCartResp confirmCartInfo(ConfirmCartReq req);
  25 +
  26 +}
mobsite-getway-rpc/src/main/java/com/diligrp/mobsite/getway/rpc/impl/ShoppingCartRPCImpl.java 0 → 100644
  1 +package com.diligrp.mobsite.getway.rpc.impl;
  2 +
  3 +import java.util.ArrayList;
  4 +import java.util.HashMap;
  5 +import java.util.List;
  6 +import java.util.Map;
  7 +
  8 +import javax.annotation.Resource;
  9 +
  10 +import org.springframework.util.CollectionUtils;
  11 +
  12 +import com.b2c.myapp.common.api.shoppingCart.input.ShoppingCartListInput;
  13 +import com.b2c.myapp.common.api.shoppingCart.input.ShoppingCartSaveInput;
  14 +import com.b2c.myapp.common.api.shoppingCart.input.ShoppingCartUpdateInput;
  15 +import com.b2c.myapp.common.api.shoppingCart.output.ShoppingCartOutput;
  16 +import com.b2c.myapp.common.utils.BaseOutput;
  17 +import com.b2c.myapp.sdk.service.ShoppingCartService;
  18 +import com.diligrp.mobsite.getway.domain.common.ResultCode;
  19 +import com.diligrp.mobsite.getway.domain.except.ServiceException;
  20 +import com.diligrp.mobsite.getway.domain.protocol.AddCartProduct;
  21 +import com.diligrp.mobsite.getway.domain.protocol.cart.AddCartProductReq;
  22 +import com.diligrp.mobsite.getway.domain.protocol.cart.AddCartProductResp;
  23 +import com.diligrp.mobsite.getway.domain.protocol.cart.ConfirmCartReq;
  24 +import com.diligrp.mobsite.getway.domain.protocol.cart.ConfirmCartResp;
  25 +import com.diligrp.mobsite.getway.domain.protocol.cart.DelCartsReq;
  26 +import com.diligrp.mobsite.getway.domain.protocol.cart.DelCartsResp;
  27 +import com.diligrp.mobsite.getway.domain.protocol.cart.GetCartByUserReq;
  28 +import com.diligrp.mobsite.getway.domain.protocol.cart.GetCartByUserResp;
  29 +import com.diligrp.mobsite.getway.domain.protocol.cart.ModifyAmountReq;
  30 +import com.diligrp.mobsite.getway.domain.protocol.cart.ModifyAmountResp;
  31 +import com.diligrp.mobsite.getway.domain.protocol.cart.model.CartProduct;
  32 +import com.diligrp.mobsite.getway.domain.protocol.cart.model.CartProductSku;
  33 +import com.diligrp.mobsite.getway.domain.protocol.cart.model.ConfirmCartShopInfo;
  34 +import com.diligrp.mobsite.getway.rpc.ShoppingCartRPC;
  35 +
  36 +public class ShoppingCartRPCImpl implements ShoppingCartRPC {
  37 +
  38 + @Resource
  39 + private ShoppingCartService cartService;
  40 +
  41 + @Override
  42 + public GetCartByUserResp getCart(GetCartByUserReq req) {
  43 + GetCartByUserResp resp = new GetCartByUserResp();
  44 + ShoppingCartListInput input = new ShoppingCartListInput();
  45 + input.setShopBuyerId(req.getUserId());
  46 + BaseOutput<List<ShoppingCartOutput>> response = this.cartService.getCarts(input);
  47 + if (response == null) {
  48 + throw new ServiceException(ResultCode.NETWORK_FAILED, "获取购物车失败");
  49 + }
  50 + if (response.getCode() != com.b2c.myapp.common.utils.ResultCode.OK) {
  51 + throw new ServiceException(ResultCode.BUSINESS_FAILED, response.getResult());
  52 + }
  53 + if (CollectionUtils.isEmpty(response.getData())) {
  54 + List<CartProduct> cartGoods = new ArrayList<>(response.getData().size());
  55 + for (ShoppingCartOutput output : response.getData()) {
  56 + CartProduct cartProduct = new CartProduct();
  57 + cartProduct.setCid(output.getCid());
  58 + cartProduct.setPid(Long.valueOf(output.getPid()));
  59 + List<CartProductSku> skus = new ArrayList<>(1);
  60 + CartProductSku sku = new CartProductSku();
  61 + sku.setPrice(output.getCurrentPrice());
  62 + skus.add(sku);
  63 + cartProduct.setCartGoodsSkus(skus);
  64 + cartProduct.setName(output.getProductName());
  65 + cartProduct.setQuantity(output.getQuantity().intValue());
  66 + cartProduct.setUnit(output.getSaleUnit());
  67 + cartGoods.add(cartProduct);
  68 + }
  69 + resp.setCartGoods(cartGoods);
  70 + }
  71 + return resp;
  72 + }
  73 +
  74 + @Override
  75 + public AddCartProductResp addCartProduct(AddCartProductReq req) {
  76 + ShoppingCartSaveInput input = new ShoppingCartSaveInput();
  77 + AddCartProduct reqProduct = req.getCartProduct();
  78 + input.setPid(reqProduct.getPid().toString());
  79 + input.setPrice(reqProduct.getPrice());
  80 + input.setShopBuyerId(req.getUserId());
  81 + input.setSku(reqProduct.getSku());
  82 + BaseOutput<ShoppingCartOutput> response = this.cartService.addCart(input);
  83 + if (response == null) {
  84 + throw new ServiceException(ResultCode.NETWORK_FAILED, "获取购物车失败");
  85 + }
  86 + if (response.getCode() != com.b2c.myapp.common.utils.ResultCode.OK) {
  87 + throw new ServiceException(ResultCode.BUSINESS_FAILED, response.getResult());
  88 + }
  89 + AddCartProductResp resp = new AddCartProductResp();
  90 + return resp;
  91 + }
  92 +
  93 + @Override
  94 + public DelCartsResp delCartByIds(DelCartsReq req) {
  95 + String[] skus = req.getSkus().toArray(new String[req.getSkus().size()]);
  96 + BaseOutput<Boolean> response = this.cartService.delCarts(req.getUserId(), skus);
  97 + if (response == null) {
  98 + throw new ServiceException(ResultCode.NETWORK_FAILED, "获取购物车失败");
  99 + }
  100 + if (response.getCode() != com.b2c.myapp.common.utils.ResultCode.OK) {
  101 + throw new ServiceException(ResultCode.BUSINESS_FAILED, response.getResult());
  102 + }
  103 + if (!response.getData()) {
  104 + throw new ServiceException(ResultCode.BUSINESS_FAILED, response.getResult());
  105 + }
  106 + DelCartsResp resp = new DelCartsResp();
  107 + return resp;
  108 + }
  109 +
  110 + @Override
  111 + public ModifyAmountResp modifyAmount(ModifyAmountReq req) {
  112 + ShoppingCartUpdateInput input = new ShoppingCartUpdateInput();
  113 + input.setQuantity(req.getAmount().longValue());
  114 + input.setShopBuyerId(req.getUserId());
  115 + input.setSku(req.getSku());
  116 + BaseOutput<Boolean> response = this.cartService.modifyCart(input);
  117 + if (response == null) {
  118 + throw new ServiceException(ResultCode.NETWORK_FAILED, "获取购物车失败");
  119 + }
  120 + if (response.getCode() != com.b2c.myapp.common.utils.ResultCode.OK) {
  121 + throw new ServiceException(ResultCode.BUSINESS_FAILED, response.getResult());
  122 + }
  123 + if (!response.getData()) {
  124 + throw new ServiceException(ResultCode.BUSINESS_FAILED, response.getResult());
  125 + }
  126 + ModifyAmountResp resp = new ModifyAmountResp();
  127 + return resp;
  128 + }
  129 +
  130 + @Override
  131 + public ConfirmCartResp confirmCartInfo(ConfirmCartReq req) {
  132 + GetCartByUserReq cartReq = new GetCartByUserReq();
  133 + ShoppingCartListInput input = new ShoppingCartListInput();
  134 + input.setShopBuyerId(req.getShopBuyerId());
  135 + input.setSkus(req.getSkus().toArray(new String[req.getSkus().size()]));
  136 + BaseOutput<List<ShoppingCartOutput>> response = this.cartService.getCarts(input);
  137 + if (response == null) {
  138 + throw new ServiceException(ResultCode.NETWORK_FAILED, "获取购物车失败");
  139 + }
  140 + if (response.getCode() != com.b2c.myapp.common.utils.ResultCode.OK) {
  141 + throw new ServiceException(ResultCode.BUSINESS_FAILED, response.getResult());
  142 + }
  143 + ConfirmCartResp resp = new ConfirmCartResp();
  144 + List<CartProductSku> skus = new ArrayList<>(response.getData().size());
  145 + for (ShoppingCartOutput output : response.getData()) {
  146 + CartProductSku sku = new CartProductSku();
  147 + sku.setPrice(output.getCurrentPrice());
  148 + sku.setOldPrice(output.getPrice());
  149 + sku.setProductId(Long.valueOf(output.getPid()));
  150 + sku.setProductName(output.getProductName());
  151 + sku.setSku(output.getSku());
  152 + sku.setBuyNum(output.getQuantity().intValue());
  153 + sku.setUnit(output.getSaleUnit());
  154 + skus.add(sku);
  155 + }
  156 + resp.setSkus(skus);
  157 + return resp;
  158 + }
  159 +
  160 +}
mobsite-getway-service/src/main/java/com/diligrp/mobsite/getway/service/buyer/settle/impl/CartServiceImpl.java
1 package com.diligrp.mobsite.getway.service.buyer.settle.impl; 1 package com.diligrp.mobsite.getway.service.buyer.settle.impl;
2 2
3 -import com.diligrp.mobsite.getway.domain.protocol.cart.*; 3 +import javax.annotation.Resource;
  4 +
  5 +import org.springframework.stereotype.Service;
  6 +
  7 +import com.b2c.myapp.sdk.service.ShoppingCartService;
  8 +import com.diligrp.mobsite.getway.domain.protocol.cart.AddCartImmediatelyReq;
  9 +import com.diligrp.mobsite.getway.domain.protocol.cart.AddCartImmediatelyResp;
  10 +import com.diligrp.mobsite.getway.domain.protocol.cart.AddCartProductReq;
  11 +import com.diligrp.mobsite.getway.domain.protocol.cart.AddCartProductResp;
  12 +import com.diligrp.mobsite.getway.domain.protocol.cart.ConfirmCartReq;
  13 +import com.diligrp.mobsite.getway.domain.protocol.cart.ConfirmCartResp;
  14 +import com.diligrp.mobsite.getway.domain.protocol.cart.DelCartsReq;
  15 +import com.diligrp.mobsite.getway.domain.protocol.cart.DelCartsResp;
  16 +import com.diligrp.mobsite.getway.domain.protocol.cart.GetCartByUserReq;
  17 +import com.diligrp.mobsite.getway.domain.protocol.cart.GetCartByUserResp;
  18 +import com.diligrp.mobsite.getway.domain.protocol.cart.GetCartNumResp;
  19 +import com.diligrp.mobsite.getway.domain.protocol.cart.GetProductSaleInfoReq;
  20 +import com.diligrp.mobsite.getway.domain.protocol.cart.GetProductSaleInfoResp;
  21 +import com.diligrp.mobsite.getway.domain.protocol.cart.GetSpotSaleInfoReq;
  22 +import com.diligrp.mobsite.getway.domain.protocol.cart.GetSpotSaleInfoResp;
  23 +import com.diligrp.mobsite.getway.domain.protocol.cart.MargeCartReq;
  24 +import com.diligrp.mobsite.getway.domain.protocol.cart.MargeCartResp;
  25 +import com.diligrp.mobsite.getway.domain.protocol.cart.ModifyAmountReq;
  26 +import com.diligrp.mobsite.getway.domain.protocol.cart.ModifyAmountResp;
  27 +import com.diligrp.mobsite.getway.domain.protocol.cart.MoveToFavoriteReq;
  28 +import com.diligrp.mobsite.getway.domain.protocol.cart.MoveToFavoriteResp;
4 import com.diligrp.mobsite.getway.domain.protocol.detail.GetServiceByPickupReq; 29 import com.diligrp.mobsite.getway.domain.protocol.detail.GetServiceByPickupReq;
5 import com.diligrp.mobsite.getway.domain.protocol.detail.GetServiceByPickupResp; 30 import com.diligrp.mobsite.getway.domain.protocol.detail.GetServiceByPickupResp;
  31 +import com.diligrp.mobsite.getway.rpc.ShoppingCartRPC;
6 import com.diligrp.mobsite.getway.service.buyer.settle.CartService; 32 import com.diligrp.mobsite.getway.service.buyer.settle.CartService;
7 -import org.springframework.stereotype.Service;  
8 33
9 /** 34 /**
10 * <B>Description</B> 进货单业务层 <br /> 35 * <B>Description</B> 进货单业务层 <br />
11 - * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved. <br /> 36 + * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved.
  37 + * <br />
12 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br /> 38 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br />
13 * <B>Company</B> 地利集团 39 * <B>Company</B> 地利集团
14 * 40 *
@@ -18,69 +44,74 @@ import org.springframework.stereotype.Service; @@ -18,69 +44,74 @@ import org.springframework.stereotype.Service;
18 @Service 44 @Service
19 public class CartServiceImpl implements CartService { 45 public class CartServiceImpl implements CartService {
20 46
21 -  
22 - @Override  
23 - public GetCartByUserResp getCart(GetCartByUserReq req) {  
24 - return null;  
25 - }  
26 -  
27 - @Override  
28 - public AddCartProductResp addCartProduct(AddCartProductReq req) {  
29 - return null;  
30 - }  
31 -  
32 - @Override  
33 - public GetProductSaleInfoResp getProductSaleInfo(GetProductSaleInfoReq req) {  
34 - return null;  
35 - }  
36 -  
37 - @Override  
38 - public MargeCartResp margeCart(MargeCartReq req) {  
39 - return null;  
40 - }  
41 -  
42 - @Override  
43 - public ModifyAmountResp modifyAmount(ModifyAmountReq req) {  
44 - return null;  
45 - }  
46 -  
47 - @Override  
48 - public GetServiceByPickupResp getServiceByPickup(Long pickupId) {  
49 - return null;  
50 - }  
51 -  
52 - @Override  
53 - public GetServiceByPickupResp getOrderServiceByPickup(GetServiceByPickupReq req) {  
54 - return null;  
55 - }  
56 -  
57 - @Override  
58 - public ConfirmCartResp confirmCartInfo(ConfirmCartReq req) {  
59 - return null;  
60 - }  
61 -  
62 - @Override  
63 - public DelCartsResp delCartByIds(DelCartsReq req) {  
64 - return null;  
65 - }  
66 -  
67 - @Override  
68 - public GetCartNumResp getCartNum(Long userId) {  
69 - return null;  
70 - }  
71 -  
72 - @Override  
73 - public AddCartImmediatelyResp addCartImmediately(AddCartImmediatelyReq req) {  
74 - return null;  
75 - }  
76 -  
77 - @Override  
78 - public GetSpotSaleInfoResp getSpotSaleInfo(GetSpotSaleInfoReq req) {  
79 - return null;  
80 - }  
81 -  
82 - @Override  
83 - public MoveToFavoriteResp moveToFavorite(MoveToFavoriteReq req) {  
84 - return null;  
85 - } 47 + // private MyAppClient mac;
  48 + // @Resource
  49 + // private ShoppingCartService cartService;
  50 + @Resource
  51 + private ShoppingCartRPC cartRPC;
  52 +
  53 + @Override
  54 + public GetCartByUserResp getCart(GetCartByUserReq req) {
  55 + return this.cartRPC.getCart(req);
  56 + }
  57 +
  58 + @Override
  59 + public AddCartProductResp addCartProduct(AddCartProductReq req) {
  60 + return this.cartRPC.addCartProduct(req);
  61 + }
  62 +
  63 + @Override
  64 + public GetProductSaleInfoResp getProductSaleInfo(GetProductSaleInfoReq req) {
  65 + return null;
  66 + }
  67 +
  68 + @Override
  69 + public MargeCartResp margeCart(MargeCartReq req) {
  70 + return null;
  71 + }
  72 +
  73 + @Override
  74 + public ModifyAmountResp modifyAmount(ModifyAmountReq req) {
  75 + return this.cartRPC.modifyAmount(req);
  76 + }
  77 +
  78 + @Override
  79 + public GetServiceByPickupResp getServiceByPickup(Long pickupId) {
  80 + return null;
  81 + }
  82 +
  83 + @Override
  84 + public GetServiceByPickupResp getOrderServiceByPickup(GetServiceByPickupReq req) {
  85 + return null;
  86 + }
  87 +
  88 + @Override
  89 + public ConfirmCartResp confirmCartInfo(ConfirmCartReq req) {
  90 + return this.cartRPC.confirmCartInfo(req);
  91 + }
  92 +
  93 + @Override
  94 + public DelCartsResp delCartByIds(DelCartsReq req) {
  95 + return this.cartRPC.delCartByIds(req);
  96 + }
  97 +
  98 + @Override
  99 + public GetCartNumResp getCartNum(Long userId) {
  100 + return null;
  101 + }
  102 +
  103 + @Override
  104 + public AddCartImmediatelyResp addCartImmediately(AddCartImmediatelyReq req) {
  105 + return null;
  106 + }
  107 +
  108 + @Override
  109 + public GetSpotSaleInfoResp getSpotSaleInfo(GetSpotSaleInfoReq req) {
  110 + return null;
  111 + }
  112 +
  113 + @Override
  114 + public MoveToFavoriteResp moveToFavorite(MoveToFavoriteReq req) {
  115 + return null;
  116 + }
86 } 117 }
mobsite-getway-service/src/main/java/com/diligrp/mobsite/getway/service/buyer/user/UserService.java
@@ -9,129 +9,140 @@ import com.diligrp.mobsite.getway.domain.protocol.register.UserRegisterReq; @@ -9,129 +9,140 @@ import com.diligrp.mobsite.getway.domain.protocol.register.UserRegisterReq;
9 import com.diligrp.mobsite.getway.domain.protocol.register.UserRegisterResp; 9 import com.diligrp.mobsite.getway.domain.protocol.register.UserRegisterResp;
10 import com.diligrp.mobsite.getway.domain.protocol.user.*; 10 import com.diligrp.mobsite.getway.domain.protocol.user.*;
11 11
12 -  
13 /** 12 /**
14 * <B>Description</B> userservice <br /> 13 * <B>Description</B> userservice <br />
15 - * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved. <br /> 14 + * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved.
  15 + * <br />
16 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br /> 16 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br />
17 * <B>Company</B> 地利集团 17 * <B>Company</B> 地利集团
  18 + *
18 * @createTime 2014年8月26日 下午5:34:42 19 * @createTime 2014年8月26日 下午5:34:42
19 * @author zhangshirui 20 * @author zhangshirui
20 */ 21 */
21 public interface UserService { 22 public interface UserService {
22 23
23 - /**  
24 - * 用户登录  
25 - * @param req  
26 - * @return  
27 - * @createTime 2014年8月26日 下午5:37:05  
28 - * @author zhangshirui  
29 - */  
30 - LoginResp login(LoginReq req);  
31 -  
32 - /**  
33 - * 验证用户名是否合法  
34 - * @param req  
35 - * @return  
36 - * @createTime 2014年8月26日 下午6:32:14  
37 - * @author zhangshirui  
38 - */  
39 - CheckUserInvalidResp checkUserInvalid(CheckUserInvalidReq req);  
40 -  
41 - /**  
42 - * 验证手机收到的验证码  
43 - * @param req  
44 - * @return  
45 - * @createTime 2014年8月27日 下午4:25:11  
46 - * @author zhangshirui  
47 - */  
48 - CheckVeriCodeResp checkVeriCode(CheckVeriCodeReq req);  
49 -  
50 - /**  
51 - * 发送手机验证码  
52 - * @createTime 2014年8月27日 下午4:50:38  
53 - * @author zhangshirui  
54 - */  
55 - SendVeriCodeResp sendVeriCode(SendVeriCodeReq req);  
56 -  
57 - /**  
58 - * 修改用户信息  
59 - * @param req  
60 - * @return  
61 - * @createTime 2014年8月28日 下午3:15:53  
62 - * @author zhangshirui  
63 - */  
64 - UpdateUserInfoResp updateUserInfo(UpdateUserInfoReq req);  
65 -  
66 - /**  
67 - *  
68 - * @createTime 2014年8月28日 下午3:45:48  
69 - * @author zhangshirui  
70 - * @param req  
71 - * @return  
72 - */  
73 - CheckAccountNameResp checkAccountName(CheckAccountNameReq req);  
74 -  
75 - /**  
76 - * 验证手机号  
77 - * @param req  
78 - * @return  
79 - * @createTime 2014年8月28日 下午4:03:59  
80 - * @author zhangshirui  
81 - */  
82 - CheckMobileResp checkMobile(CheckMobileReq req);  
83 -  
84 - /**  
85 - *用户注册  
86 - * @param req  
87 - * @return  
88 - * @createTime 2014年8月28日 下午4:37:08  
89 - * @author zhangshirui  
90 - */  
91 - UserRegisterResp userRegister(UserRegisterReq req);  
92 -  
93 - GetUserInfoResp getUserIntroduction(GetUserInfoReq req);  
94 -  
95 - UpdateMobileResp updateMobile(UpdateMobileReq req);  
96 -  
97 - SubmitIdentityAuthResp submitIdentityAuth(SubmitIdentityAuthReq req);  
98 -  
99 - SubmitEnterpriseAuthResp submitEnterpriseAuth(SubmitEnterpriseAuthReq req);  
100 -  
101 - GetFavoriteProductResp getFavoriteProducts(GetFavoriteProductReq req);  
102 -  
103 - GetFavoriteShopResp getFavoriteShop(GetFavoriteShopReq req);  
104 -  
105 - DelFavoriteShopResp delFavoriteShop(DelFavoriteShopReq req);  
106 -  
107 - DelFavoriteProductResp delFavoriteProduct(DelFavoriteProductReq req);  
108 -  
109 - GetIdentityAuthResp getIdentityAuth(GetIdentityAuthReq req);  
110 -  
111 - GetEnterpriseAuthResp getEnterpriseAuth(GetEnterpriseAuthReq req); 24 + /**
  25 + * 用户登录
  26 + *
  27 + * @param req
  28 + * @return
  29 + * @createTime 2014年8月26日 下午5:37:05
  30 + * @author zhangshirui
  31 + */
  32 + LoginResp login(LoginReq req);
  33 +
  34 + /**
  35 + * 验证用户名是否合法
  36 + *
  37 + * @param req
  38 + * @return
  39 + * @createTime 2014年8月26日 下午6:32:14
  40 + * @author zhangshirui
  41 + */
  42 + CheckUserInvalidResp checkUserInvalid(CheckUserInvalidReq req);
  43 +
  44 + /**
  45 + * 验证手机收到的验证码
  46 + *
  47 + * @param req
  48 + * @return
  49 + * @createTime 2014年8月27日 下午4:25:11
  50 + * @author zhangshirui
  51 + */
  52 + CheckVeriCodeResp checkVeriCode(CheckVeriCodeReq req);
  53 +
  54 + /**
  55 + * 发送手机验证码
  56 + *
  57 + * @createTime 2014年8月27日 下午4:50:38
  58 + * @author zhangshirui
  59 + */
  60 + SendVeriCodeResp sendVeriCode(SendVeriCodeReq req);
  61 +
  62 + /**
  63 + * 修改用户信息
  64 + *
  65 + * @param req
  66 + * @return
  67 + * @createTime 2014年8月28日 下午3:15:53
  68 + * @author zhangshirui
  69 + */
  70 + UpdateUserInfoResp updateUserInfo(UpdateUserInfoReq req);
  71 +
  72 + /**
  73 + *
  74 + * @createTime 2014年8月28日 下午3:45:48
  75 + * @author zhangshirui
  76 + * @param req
  77 + * @return
  78 + */
  79 + CheckAccountNameResp checkAccountName(CheckAccountNameReq req);
  80 +
  81 + /**
  82 + * 验证手机号
  83 + *
  84 + * @param req
  85 + * @return
  86 + * @createTime 2014年8月28日 下午4:03:59
  87 + * @author zhangshirui
  88 + */
  89 + CheckMobileResp checkMobile(CheckMobileReq req);
  90 +
  91 + /**
  92 + * 用户注册
  93 + *
  94 + * @param req
  95 + * @return
  96 + * @createTime 2014年8月28日 下午4:37:08
  97 + * @author zhangshirui
  98 + */
  99 + UserRegisterResp userRegister(UserRegisterReq req);
  100 +
  101 + GetUserInfoResp getUserIntroduction(GetUserInfoReq req);
  102 +
  103 + UpdateMobileResp updateMobile(UpdateMobileReq req);
  104 +
  105 + SubmitIdentityAuthResp submitIdentityAuth(SubmitIdentityAuthReq req);
  106 +
  107 + SubmitEnterpriseAuthResp submitEnterpriseAuth(SubmitEnterpriseAuthReq req);
  108 +
  109 + GetFavoriteProductResp getFavoriteProducts(GetFavoriteProductReq req);
  110 +
  111 + GetFavoriteShopResp getFavoriteShop(GetFavoriteShopReq req);
  112 +
  113 + DelFavoriteShopResp delFavoriteShop(DelFavoriteShopReq req);
  114 +
  115 + DelFavoriteProductResp delFavoriteProduct(DelFavoriteProductReq req);
  116 +
  117 + GetIdentityAuthResp getIdentityAuth(GetIdentityAuthReq req);
  118 +
  119 + GetEnterpriseAuthResp getEnterpriseAuth(GetEnterpriseAuthReq req);
112 120
113 LogoutResp logout(LogoutReq req); 121 LogoutResp logout(LogoutReq req);
114 122
115 /** 123 /**
116 * 修改密码 124 * 修改密码
  125 + *
117 * @param req 126 * @param req
118 * @return 127 * @return
119 * @createTime 2015年1月24日 下午4:29:26 128 * @createTime 2015年1月24日 下午4:29:26
120 * @author zhangshirui 129 * @author zhangshirui
121 */ 130 */
122 - ModifyPwdResp modifyPwd(ModifyPwdReq req); 131 + ModifyPwdResp modifyPwd(ModifyPwdReq req);
123 132
124 - /**  
125 - * 查询用户认证信息  
126 - * @param req  
127 - * @return  
128 - * @createTime 2015年7月9日 上午11:04:45  
129 - * @author zhangshirui  
130 - */ 133 + /**
  134 + * 查询用户认证信息
  135 + *
  136 + * @param req
  137 + * @return
  138 + * @createTime 2015年7月9日 上午11:04:45
  139 + * @author zhangshirui
  140 + */
131 GetAuthInfoResp getAuthInfo(GetAuthInfoReq req); 141 GetAuthInfoResp getAuthInfo(GetAuthInfoReq req);
132 142
133 /** 143 /**
134 * 删除收藏的信息 144 * 删除收藏的信息
  145 + *
135 * @param req 146 * @param req
136 * @return 147 * @return
137 */ 148 */
@@ -139,6 +150,7 @@ public interface UserService { @@ -139,6 +150,7 @@ public interface UserService {
139 150
140 /** 151 /**
141 * 查询收藏的信息 152 * 查询收藏的信息
  153 + *
142 * @param req 154 * @param req
143 * @return 155 * @return
144 */ 156 */
@@ -146,25 +158,28 @@ public interface UserService { @@ -146,25 +158,28 @@ public interface UserService {
146 158
147 /** 159 /**
148 * 添加收藏信息 160 * 添加收藏信息
  161 + *
149 * @param req 162 * @param req
150 * @return 163 * @return
151 */ 164 */
152 AddFavoriteInfoResp addFavoriteInfo(AddFavoriteInfoReq req); 165 AddFavoriteInfoResp addFavoriteInfo(AddFavoriteInfoReq req);
153 - 166 +
154 /** 167 /**
155 - * 查询用户极光号  
156 - * @param req  
157 - * @return  
158 - * @createTime 2015-11-10 19:43:18  
159 - */ 168 + * 查询用户极光号
  169 + *
  170 + * @param req
  171 + * @return
  172 + * @createTime 2015-11-10 19:43:18
  173 + */
160 GetRegisterNoResp getRegisterNo(GetRegisterNoReq req); 174 GetRegisterNoResp getRegisterNo(GetRegisterNoReq req);
161 - 175 +
162 /** 176 /**
163 - * 批量查询用户极光号  
164 - * @param req  
165 - * @return  
166 - * @createTime 2015-11-10 19:43:18  
167 - */ 177 + * 批量查询用户极光号
  178 + *
  179 + * @param req
  180 + * @return
  181 + * @createTime 2015-11-10 19:43:18
  182 + */
168 GetRegisterNobyUidsResp getRegisterNobyUids(GetRegisterNobyUidsReq req); 183 GetRegisterNobyUidsResp getRegisterNobyUids(GetRegisterNobyUidsReq req);
169 184
170 GetMemberListResp getMemberList(GetMemberListReq req); 185 GetMemberListResp getMemberList(GetMemberListReq req);
@@ -178,4 +193,12 @@ public interface UserService { @@ -178,4 +193,12 @@ public interface UserService {
178 SearchUserInfoResp searchBuyerInfo(SearchUserInfoReq req); 193 SearchUserInfoResp searchBuyerInfo(SearchUserInfoReq req);
179 194
180 LoginResp authlogin(AuthLoginReq req); 195 LoginResp authlogin(AuthLoginReq req);
  196 +
  197 + /**
  198 + * 获取买家收货地址信息
  199 + *
  200 + * @param req
  201 + * @return
  202 + */
  203 + GetDeliveryAddressResp getDeliveryAddresses(GetDeliveryAddressReq req);
181 } 204 }
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 java.util.ArrayList;
  4 +import java.util.HashMap;
  5 +import java.util.List;
  6 +import java.util.Map;
  7 +
  8 +import javax.annotation.Resource;
  9 +
  10 +import org.slf4j.Logger;
  11 +import org.slf4j.LoggerFactory;
  12 +import org.springframework.beans.factory.annotation.Autowired;
  13 +import org.springframework.stereotype.Service;
  14 +
3 import com.alibaba.fastjson.JSONObject; 15 import com.alibaba.fastjson.JSONObject;
4 import com.b2c.myapp.common.api.buyerInfo.output.BuyerInfoOutput; 16 import com.b2c.myapp.common.api.buyerInfo.output.BuyerInfoOutput;
  17 +import com.b2c.myapp.common.api.pickingInfo.output.PickingInfoOutput;
5 import com.diligrp.mobsite.getway.domain.RegisterNoMapper; 18 import com.diligrp.mobsite.getway.domain.RegisterNoMapper;
6 import com.diligrp.mobsite.getway.domain.common.Constant; 19 import com.diligrp.mobsite.getway.domain.common.Constant;
7 import com.diligrp.mobsite.getway.domain.common.ErrorMessage; 20 import com.diligrp.mobsite.getway.domain.common.ErrorMessage;
8 import com.diligrp.mobsite.getway.domain.common.RedisKey; 21 import com.diligrp.mobsite.getway.domain.common.RedisKey;
9 import com.diligrp.mobsite.getway.domain.common.ResultCode; 22 import com.diligrp.mobsite.getway.domain.common.ResultCode;
10 import com.diligrp.mobsite.getway.domain.except.ServiceException; 23 import com.diligrp.mobsite.getway.domain.except.ServiceException;
11 -import com.diligrp.mobsite.getway.domain.protocol.login.*;  
12 -import com.diligrp.mobsite.getway.domain.protocol.register.*;  
13 -import com.diligrp.mobsite.getway.domain.protocol.user.*; 24 +import com.diligrp.mobsite.getway.domain.protocol.PickInfo;
  25 +import com.diligrp.mobsite.getway.domain.protocol.login.AuthLoginReq;
  26 +import com.diligrp.mobsite.getway.domain.protocol.login.CheckVeriCodeReq;
  27 +import com.diligrp.mobsite.getway.domain.protocol.login.CheckVeriCodeResp;
  28 +import com.diligrp.mobsite.getway.domain.protocol.login.LoginReq;
  29 +import com.diligrp.mobsite.getway.domain.protocol.login.LoginResp;
  30 +import com.diligrp.mobsite.getway.domain.protocol.login.LogoutReq;
  31 +import com.diligrp.mobsite.getway.domain.protocol.login.LogoutResp;
  32 +import com.diligrp.mobsite.getway.domain.protocol.login.SendVeriCodeReq;
  33 +import com.diligrp.mobsite.getway.domain.protocol.login.SendVeriCodeResp;
  34 +import com.diligrp.mobsite.getway.domain.protocol.register.CheckAccountNameReq;
  35 +import com.diligrp.mobsite.getway.domain.protocol.register.CheckAccountNameResp;
  36 +import com.diligrp.mobsite.getway.domain.protocol.register.CheckMobileReq;
  37 +import com.diligrp.mobsite.getway.domain.protocol.register.CheckMobileResp;
  38 +import com.diligrp.mobsite.getway.domain.protocol.register.UserRegisterReq;
  39 +import com.diligrp.mobsite.getway.domain.protocol.register.UserRegisterResp;
  40 +import com.diligrp.mobsite.getway.domain.protocol.user.AddFavoriteInfoReq;
  41 +import com.diligrp.mobsite.getway.domain.protocol.user.AddFavoriteInfoResp;
  42 +import com.diligrp.mobsite.getway.domain.protocol.user.CheckUserInvalidReq;
  43 +import com.diligrp.mobsite.getway.domain.protocol.user.CheckUserInvalidResp;
  44 +import com.diligrp.mobsite.getway.domain.protocol.user.CompleteUserInfoReq;
  45 +import com.diligrp.mobsite.getway.domain.protocol.user.DelFavoriteInfoReq;
  46 +import com.diligrp.mobsite.getway.domain.protocol.user.DelFavoriteInfoResp;
  47 +import com.diligrp.mobsite.getway.domain.protocol.user.DelFavoriteProductReq;
  48 +import com.diligrp.mobsite.getway.domain.protocol.user.DelFavoriteProductResp;
  49 +import com.diligrp.mobsite.getway.domain.protocol.user.DelFavoriteShopReq;
  50 +import com.diligrp.mobsite.getway.domain.protocol.user.DelFavoriteShopResp;
  51 +import com.diligrp.mobsite.getway.domain.protocol.user.GetAuthInfoReq;
  52 +import com.diligrp.mobsite.getway.domain.protocol.user.GetAuthInfoResp;
  53 +import com.diligrp.mobsite.getway.domain.protocol.user.GetDeliveryAddressReq;
  54 +import com.diligrp.mobsite.getway.domain.protocol.user.GetDeliveryAddressResp;
  55 +import com.diligrp.mobsite.getway.domain.protocol.user.GetDepositCardAmountReq;
  56 +import com.diligrp.mobsite.getway.domain.protocol.user.GetDepositCardAmountResp;
  57 +import com.diligrp.mobsite.getway.domain.protocol.user.GetEnterpriseAuthReq;
  58 +import com.diligrp.mobsite.getway.domain.protocol.user.GetEnterpriseAuthResp;
  59 +import com.diligrp.mobsite.getway.domain.protocol.user.GetFavoriteInfoReq;
  60 +import com.diligrp.mobsite.getway.domain.protocol.user.GetFavoriteInfoResp;
  61 +import com.diligrp.mobsite.getway.domain.protocol.user.GetFavoriteProductReq;
  62 +import com.diligrp.mobsite.getway.domain.protocol.user.GetFavoriteProductResp;
  63 +import com.diligrp.mobsite.getway.domain.protocol.user.GetFavoriteShopReq;
  64 +import com.diligrp.mobsite.getway.domain.protocol.user.GetFavoriteShopResp;
  65 +import com.diligrp.mobsite.getway.domain.protocol.user.GetIdentityAuthReq;
  66 +import com.diligrp.mobsite.getway.domain.protocol.user.GetIdentityAuthResp;
  67 +import com.diligrp.mobsite.getway.domain.protocol.user.GetMemberListReq;
  68 +import com.diligrp.mobsite.getway.domain.protocol.user.GetMemberListResp;
  69 +import com.diligrp.mobsite.getway.domain.protocol.user.GetRegisterNoReq;
  70 +import com.diligrp.mobsite.getway.domain.protocol.user.GetRegisterNoResp;
  71 +import com.diligrp.mobsite.getway.domain.protocol.user.GetRegisterNobyUidsReq;
  72 +import com.diligrp.mobsite.getway.domain.protocol.user.GetRegisterNobyUidsResp;
  73 +import com.diligrp.mobsite.getway.domain.protocol.user.GetUserInfoReq;
  74 +import com.diligrp.mobsite.getway.domain.protocol.user.GetUserInfoResp;
  75 +import com.diligrp.mobsite.getway.domain.protocol.user.ModifyPwdReq;
  76 +import com.diligrp.mobsite.getway.domain.protocol.user.ModifyPwdResp;
  77 +import com.diligrp.mobsite.getway.domain.protocol.user.SearchUserInfoReq;
  78 +import com.diligrp.mobsite.getway.domain.protocol.user.SearchUserInfoResp;
  79 +import com.diligrp.mobsite.getway.domain.protocol.user.SubmitEnterpriseAuthReq;
  80 +import com.diligrp.mobsite.getway.domain.protocol.user.SubmitEnterpriseAuthResp;
  81 +import com.diligrp.mobsite.getway.domain.protocol.user.SubmitIdentityAuthReq;
  82 +import com.diligrp.mobsite.getway.domain.protocol.user.SubmitIdentityAuthResp;
  83 +import com.diligrp.mobsite.getway.domain.protocol.user.TradeRecordReq;
  84 +import com.diligrp.mobsite.getway.domain.protocol.user.TradeRecordResp;
  85 +import com.diligrp.mobsite.getway.domain.protocol.user.UpdateMobileReq;
  86 +import com.diligrp.mobsite.getway.domain.protocol.user.UpdateMobileResp;
  87 +import com.diligrp.mobsite.getway.domain.protocol.user.UpdateUserInfoReq;
  88 +import com.diligrp.mobsite.getway.domain.protocol.user.UpdateUserInfoResp;
14 import com.diligrp.mobsite.getway.domain.protocol.user.model.RegisterNoPlatform; 89 import com.diligrp.mobsite.getway.domain.protocol.user.model.RegisterNoPlatform;
15 import com.diligrp.mobsite.getway.manager.common.RegisterNoMapperManager; 90 import com.diligrp.mobsite.getway.manager.common.RegisterNoMapperManager;
16 -import com.diligrp.mobsite.getway.rpc.*; 91 +import com.diligrp.mobsite.getway.rpc.ConfigRPC;
  92 +import com.diligrp.mobsite.getway.rpc.GoodsRPC;
  93 +import com.diligrp.mobsite.getway.rpc.MessageRPC;
  94 +import com.diligrp.mobsite.getway.rpc.PassportRPC;
  95 +import com.diligrp.mobsite.getway.rpc.PickInfoRPC;
  96 +import com.diligrp.mobsite.getway.rpc.ShopRPC;
  97 +import com.diligrp.mobsite.getway.rpc.UserRPC;
17 import com.diligrp.mobsite.getway.rpc.utils.UserRedisUtil; 98 import com.diligrp.mobsite.getway.rpc.utils.UserRedisUtil;
18 import com.diligrp.mobsite.getway.service.buyer.user.UserService; 99 import com.diligrp.mobsite.getway.service.buyer.user.UserService;
19 import com.diligrp.mobsite.getway.service.common.utils.PassportUtils; 100 import com.diligrp.mobsite.getway.service.common.utils.PassportUtils;
20 import com.diligrp.website.util.redis.impl.RedisUtilImpl; 101 import com.diligrp.website.util.redis.impl.RedisUtilImpl;
21 import com.diligrp.website.util.security.Validator; 102 import com.diligrp.website.util.security.Validator;
22 import com.diligrp.website.web.interfaces.domain.output.DataDictionaryResp; 103 import com.diligrp.website.web.interfaces.domain.output.DataDictionaryResp;
23 -import org.slf4j.Logger;  
24 -import org.slf4j.LoggerFactory;  
25 -import org.springframework.beans.factory.annotation.Autowired;  
26 -import org.springframework.stereotype.Service;  
27 -  
28 -import javax.annotation.Resource;  
29 -import java.util.ArrayList;  
30 -import java.util.HashMap;  
31 -import java.util.List;  
32 -import java.util.Map;  
33 104
34 /** 105 /**
35 * <B>Description</B> 用户 服务层 <br /> 106 * <B>Description</B> 用户 服务层 <br />
36 - * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved. <br /> 107 + * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved.
  108 + * <br />
37 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br /> 109 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br />
38 * <B>Company</B> 地利集团 110 * <B>Company</B> 地利集团
39 * 111 *
@@ -43,485 +115,492 @@ import java.util.Map; @@ -43,485 +115,492 @@ import java.util.Map;
43 @Service("userService") 115 @Service("userService")
44 public class UserServiceImpl implements UserService { 116 public class UserServiceImpl implements UserService {
45 117
46 - @Resource  
47 - private UserRPC userRPC;  
48 - @Resource  
49 - private GoodsRPC goodsRPC;  
50 - @Autowired  
51 - private RedisUtilImpl redisUtil;  
52 - @Autowired  
53 - private UserRedisUtil userRedisUtil;  
54 -  
55 - @Resource  
56 - private RegisterNoMapperManager registerNoMapperManager;  
57 - @Resource  
58 - private PassportRPC passportRPC;  
59 - @Resource  
60 - private ConfigRPC configRPC;  
61 -  
62 - @Resource  
63 - private ShopRPC shopRPC;  
64 - @Autowired  
65 - private MessageRPC messageRPC;  
66 -  
67 -  
68 - private static Logger logger = LoggerFactory.getLogger(UserServiceImpl.class);  
69 -  
70 - @Override  
71 - public LoginResp login(LoginReq req) {  
72 - LoginResp resp = (LoginResp) passportRPC.buyerLogin(req);  
73 -  
74 - if (!Validator.isEmpty(req.getRegisterNo())) {  
75 - // 缓存  
76 - String redisKey = redisUtil.makeKey(RedisKey.USER_REGISTERNO,Constant.USER_ROLE_BUYER+  
77 - String.valueOf(resp.getAccountId()));  
78 -  
79 - GetRegisterNoResp mappers = redisUtil.getObject(redisKey,  
80 - GetRegisterNoResp.class);  
81 - // 绑定极光ID  
82 - RegisterNoMapper mapper = new RegisterNoMapper();  
83 - mapper.setRegisterNo(req.getRegisterNo());  
84 - mapper.setSysFlag(RegisterNoMapper.SYS_FLAG_JPUSH);  
85 - mapper.setUserid(resp.getAccountId());  
86 - mapper.setDeviceType(req.getDeviceType());  
87 - try {  
88 - //清除当前极光号userid缓存  
89 - cleanOldredis(mapper);  
90 - //构建缓存信息  
91 - buildRedisInfo(mappers, mapper);  
92 - redisUtil.setObjectByExpire(redisKey, mappers,  
93 - RedisKey.REGISTERNO_EXPIRE_TIME);  
94 - } catch (Exception e) {  
95 - throw new ServiceException(ResultCode.PUSH_MESSAGE_NO,  
96 - "绑定极光推送系统注册号失败");  
97 - }  
98 - }  
99 - return resp;  
100 - }  
101 -  
102 -  
103 - /**  
104 - * 清除当前极光号下userid缓存  
105 - * @param mapper  
106 - */  
107 - private void cleanOldredis(RegisterNoMapper mapper) {  
108 - RegisterNoMapper oldmapper = registerNoMapperManager  
109 - .bindRegisterNo(mapper);  
110 - if (!Validator.isNull(oldmapper)){  
111 - String oldKey = redisUtil.makeKey(RedisKey.USER_REGISTERNO,  
112 - String.valueOf(oldmapper.getUserid()));  
113 - redisUtil.deleteByKey(oldKey);  
114 - }  
115 - }  
116 -  
117 - /**  
118 - * 建立缓存信息  
119 - * @param mappers  
120 - * @param mapper  
121 - */  
122 - private void buildRedisInfo(GetRegisterNoResp mappers,  
123 - RegisterNoMapper mapper) {  
124 - // 如果缓存没有重新建  
125 - List<RegisterNoMapper> renolist = new ArrayList<RegisterNoMapper>();  
126 -  
127 - if (Validator.isNull(mappers)) {  
128 - mappers = new GetRegisterNoResp();  
129 - }  
130 - renolist.add(mapper);  
131 - mappers.setRegisterNos(renolist);  
132 - }  
133 -  
134 -  
135 -  
136 - @Override  
137 - public CheckUserInvalidResp checkUserInvalid(CheckUserInvalidReq req) {  
138 - return null;  
139 - }  
140 -  
141 - @Override  
142 - public CheckVeriCodeResp checkVeriCode(CheckVeriCodeReq req) {  
143 - CheckVeriCodeResp resp = new CheckVeriCodeResp();  
144 -  
145 - checkVeriCode(req.getVeriCode(), req.getMobile(),req.getMsgType());  
146 -  
147 - return resp;  
148 - }  
149 -  
150 - @Override  
151 - public SendVeriCodeResp sendVeriCode(SendVeriCodeReq req) {  
152 - SendVeriCodeResp resp = new SendVeriCodeResp();  
153 -  
154 - String mobile = req.getMobile();  
155 - boolean existFlag = !userRPC.checkMobile(mobile);  
156 -  
157 - Integer msgType = req.getMsgType();  
158 - String code = null;  
159 - String message = null;  
160 -  
161 - String redisKey = redisUtil.makeKey(RedisKey.USER_AUTH_CODE + String.valueOf(msgType), mobile);  
162 - String veriCode = redisUtil.getString(redisKey);  
163 -  
164 - if (Validator.isEmpty(veriCode)) {  
165 - //生成验证码  
166 - veriCode = PassportUtils.generateMobileRandomNumber();  
167 - redisUtil.setStringByExpire(redisKey, String.valueOf(veriCode), RedisKey.USER_SEND_VERICODE_EXPIRE_TIME);  
168 - }  
169 -  
170 - if (!Validator.isNull(msgType) && msgType != SendVeriCodeReq.MSG_TYPE_DEFAULT) {  
171 - if (msgType==SendVeriCodeReq.MSG_TYPE_REGISTER) {  
172 - //注册,电话号码已经存在  
173 - if(existFlag){  
174 - throw new ServiceException(ResultCode.BUSINESS_FAILED, ErrorMessage.USER_MOBILE_EXIST);  
175 - }  
176 - String passkey = configRPC.getSystemConfig(Constant.USER_REGISTER_PASS_KEY);  
177 - resp.setPassKey(passkey);  
178 -  
179 - messageRPC.sendSMSMsg(mobile, veriCode, Constant.SMS_CONTENT_ACCOUNT_REGISTRATION);  
180 - resp.setSendCode(SendVeriCodeResp.SEND_CODE_SUCCESS);  
181 - return resp;  
182 - }else if(msgType==SendVeriCodeReq.MSG_TYPE_RETRIEVE_PASSWORD) {  
183 - //找回密码,电话号码没有存在  
184 - if (!existFlag) {  
185 - throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_MOBILE_NOT_EXIST);  
186 - }  
187 - messageRPC.sendSMSMsg(mobile, veriCode,Constant.SMS_CONTENT_RETRIEVE_PASSWORD);  
188 - resp.setSendCode(SendVeriCodeResp.SEND_CODE_SUCCESS);  
189 - return resp;  
190 - }else if(msgType==SendVeriCodeReq.MSG_TYPE_MODIFY_NEW_MOBILE) {  
191 - //修改手机号,电话号码已经存在  
192 - if (existFlag) {  
193 - throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_MOBILE_EXIST);  
194 - }  
195 - code = Constant.SMS_CONTENT_MODIFY_OLD_PHONE;  
196 - }else if (msgType==SendVeriCodeReq.MSG_TYPE_CHECK_OLD_MOBILE) {  
197 - //验证旧的手机号,手机不存在  
198 - if (!existFlag) {  
199 - throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_MOBILE_NOT_EXIST);  
200 - }  
201 - code = Constant.SMS_CONTENT_MODIFY_OLD_PHONE;  
202 - }  
203 - DataDictionaryResp dataDic = configRPC.getMessageTemplate(Constant.DIC_SMS_CONTENT);  
204 - message = dataDic.getValueByCode(code).getRemark().replace("{code}", veriCode);  
205 - }else {  
206 - message = Constant.SMS_CONTENT_DEFAULT.replace("{code}", veriCode);  
207 - }  
208 -  
209 - messageRPC.sendSMS(mobile, message);  
210 -  
211 - resp.setSendCode(SendVeriCodeResp.SEND_CODE_SUCCESS);  
212 -  
213 - return resp;  
214 - }  
215 -  
216 - @Override  
217 - public UpdateUserInfoResp updateUserInfo(UpdateUserInfoReq req) {  
218 - return null;  
219 - }  
220 -  
221 - @Override  
222 - public CheckAccountNameResp checkAccountName(CheckAccountNameReq req) {  
223 - return null;  
224 - }  
225 -  
226 - @Override  
227 - public CheckMobileResp checkMobile(CheckMobileReq req) {  
228 - return null;  
229 - }  
230 -  
231 - @Override  
232 - public UserRegisterResp userRegister(UserRegisterReq req) {  
233 - UserRegisterResp resp = new UserRegisterResp();  
234 -  
235 - //手机号码和账号验证、验证码  
236 - //if (!checkRegisterInfo(resp, req)) {  
237 - // return resp;  
238 - //}  
239 -  
240 - resp = passportRPC.register(req);  
241 -  
242 - return resp;  
243 - }  
244 -  
245 -  
246 - /**  
247 - * 检测注册信息是否正确  
248 - * 1.电话号码  
249 - * 2.账号,会员名  
250 - * 3.验证码  
251 - * @createTime 2014年10月31日 下午2:37:16  
252 - * @author zhangshirui  
253 - */  
254 - private boolean checkRegisterInfo(UserRegisterResp resp, UserRegisterReq req){  
255 - if(!userRPC.checkMobile(req.getMobile())){  
256 - throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_MOBILE_EXIST);  
257 - }  
258 - //验证万能验证码  
259 - String passkey = configRPC.getSystemConfig(Constant.USER_REGISTER_PASS_KEY);  
260 - if (req.getVeriCode().equals(passkey)) {  
261 - return true;  
262 - }  
263 -  
264 - checkVeriCode(req.getVeriCode(), req.getMobile(),SendVeriCodeReq.MSG_TYPE_REGISTER);  
265 -  
266 - return true;  
267 - }  
268 -  
269 - /**  
270 - * 根据验证码和电话号码,验证收到的验证码  
271 - *  
272 - * @param code  
273 - * @param mobile  
274 - * @return  
275 - * @createTime 2014年8月28日 下午5:44:48  
276 - * @author zhangshirui  
277 - */  
278 - private void checkVeriCode(String code, String mobile,Integer msgType) {  
279 -  
280 - String redisKey = redisUtil.makeKey(RedisKey.USER_AUTH_CODE + String.valueOf(msgType), mobile);  
281 -  
282 - String redisCode = redisUtil.getString(redisKey);  
283 -  
284 - if(Validator.isEmpty(code)){  
285 - throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_AUTH_CODE_EMPTY);  
286 - }  
287 -  
288 - //验证码为空  
289 - if (Validator.isEmpty(redisCode)) {  
290 - throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_AUTH_CODE_OVERTIME);  
291 - }  
292 -  
293 - //验证码不为空,并且和redis中的验证码相同  
294 - if (!code.equals(redisCode)) {  
295 - throw new ServiceException(ResultCode.BUSINESS_FAILED,ErrorMessage.USER_AUTH_CODE_WRONG);  
296 - }  
297 -  
298 - }  
299 -  
300 - @Override  
301 - public GetUserInfoResp getUserIntroduction(GetUserInfoReq req) {  
302 - return null;  
303 - }  
304 -  
305 - @Override  
306 - public UpdateMobileResp updateMobile(UpdateMobileReq req) {  
307 - return null;  
308 - }  
309 -  
310 - @Override  
311 - public SubmitIdentityAuthResp submitIdentityAuth(SubmitIdentityAuthReq req) {  
312 - return null;  
313 - }  
314 -  
315 - @Override  
316 - public SubmitEnterpriseAuthResp submitEnterpriseAuth(SubmitEnterpriseAuthReq req) {  
317 - return null;  
318 - }  
319 -  
320 - @Override  
321 - public GetFavoriteProductResp getFavoriteProducts(GetFavoriteProductReq req) {  
322 - return null;  
323 - }  
324 -  
325 - @Override  
326 - public GetFavoriteShopResp getFavoriteShop(GetFavoriteShopReq req) {  
327 - return null;  
328 - }  
329 -  
330 - @Override  
331 - public DelFavoriteShopResp delFavoriteShop(DelFavoriteShopReq req) {  
332 - return null;  
333 - }  
334 -  
335 - @Override  
336 - public DelFavoriteProductResp delFavoriteProduct(DelFavoriteProductReq req) {  
337 - return null;  
338 - }  
339 -  
340 - @Override  
341 - public GetIdentityAuthResp getIdentityAuth(GetIdentityAuthReq req) {  
342 - return null;  
343 - }  
344 -  
345 - @Override  
346 - public GetEnterpriseAuthResp getEnterpriseAuth(GetEnterpriseAuthReq req) {  
347 - return null;  
348 - }  
349 -  
350 - @Override  
351 - public LogoutResp logout(LogoutReq req) {  
352 - LogoutResp resp = new LogoutResp();  
353 -  
354 -  
355 - // 解除绑定极光ID  
356 - if(!Validator.isEmpty(req.getRegisterNo())){  
357 -  
358 - String userId = req.getUserId().toString();  
359 - //先清缓存再清数据库  
360 - String reNOCache = redisUtil.makeKey(RedisKey.USER_REGISTERNO, Constant.USER_ROLE_BUYER+userId);  
361 -  
362 - RegisterNoMapper mapper = new RegisterNoMapper();  
363 - mapper.setRegisterNo(req.getRegisterNo());  
364 - mapper.setSysFlag(RegisterNoMapper.SYS_FLAG_JPUSH);  
365 - mapper.setUserid(req.getUserId());  
366 - mapper.setDeviceType(req.getDeviceType());  
367 - try {  
368 - redisUtil.deleteByKey(reNOCache);  
369 - registerNoMapperManager.unBindRegisterNo(mapper);  
370 - }  
371 - catch(Exception e) {  
372 - logger.error("解除极光推送系统绑定的注册号失败",e);  
373 - }  
374 - }  
375 -  
376 - return resp;  
377 - }  
378 -  
379 - @Override  
380 - public ModifyPwdResp modifyPwd(ModifyPwdReq req) {  
381 - BuyerInfoOutput userInfo = userRPC.getUserByMobile(req.getAccountName());  
382 - Long userId = userInfo.getId();  
383 -  
384 -  
385 - Map<String,String> params = new HashMap<String, String>();  
386 - params.put("password", req.getPassword());  
387 - params.put("accountId", String.valueOf(userId));  
388 -  
389 -  
390 - String result = passportRPC.modifyPwd(params);  
391 -  
392 - JSONObject jsonBody = JSONObject.parseObject(result);  
393 - int code = jsonBody.getIntValue("code");  
394 - ModifyPwdResp resp = new ModifyPwdResp();  
395 - resp.setMsg(jsonBody.getString("msg"));  
396 -  
397 - if(code != ResultCode.SUCCESS){  
398 - //失败  
399 - resp.setCode(ResultCode.BUSINESS_FAILED);  
400 - resp.setResultFlag(ModifyPwdResp.RESULT_FLAG_FAILED);  
401 - return resp;  
402 - }else {  
403 - //修改成功,退出所有账号信息  
404 - String cookieRedisKey = redisUtil.makeKey(RedisKey.USER_LOGININFO, Constant.USER_ROLE_BUYER+String.valueOf(userId));  
405 - redisUtil.deleteByKey(cookieRedisKey);  
406 - }  
407 -  
408 - logger.info("修改用户密码"+jsonBody.getString("msg"));  
409 -  
410 - return resp;  
411 - }  
412 -  
413 - @Override  
414 - public GetAuthInfoResp getAuthInfo(GetAuthInfoReq req) {  
415 - return null;  
416 - }  
417 -  
418 - @Override  
419 - public DelFavoriteInfoResp delFavoriteInfo(DelFavoriteInfoReq req) {  
420 - return null;  
421 - }  
422 -  
423 - @Override  
424 - public GetFavoriteInfoResp getFavoriteInfo(GetFavoriteInfoReq req) {  
425 - return null;  
426 - }  
427 -  
428 - @Override  
429 - public AddFavoriteInfoResp addFavoriteInfo(AddFavoriteInfoReq req) {  
430 - return null;  
431 - }  
432 -  
433 - @Override  
434 - public GetRegisterNoResp getRegisterNo(GetRegisterNoReq req) {  
435 - GetRegisterNoResp resp = new GetRegisterNoResp();  
436 - if (Validator.isNull(req.getUserId())||Validator.isNull(req.getUserRole())) {  
437 - resp.setCode(ResultCode.REQUET_PARAMS_ERROR);  
438 - resp.setMsg("用户ID和用户角色不能为空");  
439 - return resp;  
440 - }  
441 - //先从缓存取  
442 - String redisKey = redisUtil.makeKey(RedisKey.USER_REGISTERNO, req.getUserRole()+String.valueOf(req.getUserId()));  
443 - GetRegisterNoResp recache = redisUtil.getObject(redisKey, GetRegisterNoResp.class);  
444 - if (!Validator.isNull(recache) && !Validator.isEmpty(recache.getRegisterNos())) {  
445 - resp.setRegisterNos(recache.getRegisterNos());  
446 - }else {  
447 - List<RegisterNoMapper> mapppers = registerNoMapperManager.getRegisterNo(req.getUserId());  
448 - if (!Validator.isEmpty(mapppers)) {  
449 -  
450 - resp.setRegisterNos(mapppers);  
451 - redisUtil.setObjectByExpire(redisKey, resp, RedisKey.REGISTERNO_EXPIRE_TIME);  
452 - }else {  
453 - resp.setCode(ResultCode.BUSINESS_FAILED);  
454 - resp.setMsg("该用户没有绑定极光号");  
455 - }  
456 - }  
457 - return resp;  
458 - }  
459 -  
460 - @Override  
461 - public GetRegisterNobyUidsResp getRegisterNobyUids(GetRegisterNobyUidsReq req) {  
462 - GetRegisterNobyUidsResp resp = new GetRegisterNobyUidsResp();  
463 - Map<String, Object> param = new HashMap<String, Object>();  
464 - param.put("userids", req.getUserIds());  
465 - if (!Validator.isNull(req.getPlatform())) {  
466 - param.put("device_type",req.getPlatform().toString());  
467 - }  
468 - List<RegisterNoMapper> mappers = registerNoMapperManager.batchQuery(param);  
469 -  
470 - List<RegisterNoPlatform> registerNos = new ArrayList<RegisterNoPlatform>();  
471 - RegisterNoPlatform androidPlatform = new RegisterNoPlatform();  
472 - androidPlatform.setPlatform("android");  
473 - List<String> androids = new ArrayList<String>();  
474 - RegisterNoPlatform iosPlatform = new RegisterNoPlatform();  
475 - iosPlatform.setPlatform("ios");  
476 - List<String> iosids = new ArrayList<String>();  
477 - if (!Validator.isEmpty(mappers)) {  
478 - for (RegisterNoMapper registerNoMapper : mappers) {  
479 - if (!Validator.isNull(registerNoMapper.getDeviceType())) {  
480 - if (registerNoMapper.getDeviceType().equals(1)) {  
481 - androids.add(registerNoMapper.getRegisterNo());  
482 - }  
483 - if (registerNoMapper.getDeviceType().equals(2)) {  
484 - iosids.add(registerNoMapper.getRegisterNo());  
485 - }  
486 - }  
487 - }  
488 - }  
489 - androidPlatform.setIds(androids);  
490 - iosPlatform.setIds(iosids);  
491 - registerNos.add(androidPlatform);  
492 - registerNos.add(iosPlatform);  
493 - resp.setRegisterNos(registerNos);  
494 - resp.setCode(ResultCode.SUCCESS);  
495 - return resp;  
496 - }  
497 -  
498 - @Override  
499 - public GetMemberListResp getMemberList(GetMemberListReq req) {  
500 - return null;  
501 - }  
502 -  
503 - @Override  
504 - public UpdateUserInfoResp completeUserInfo(CompleteUserInfoReq req) {  
505 - return null;  
506 - }  
507 -  
508 - @Override  
509 - public GetDepositCardAmountResp getDepositCardAmount(GetDepositCardAmountReq req) {  
510 - return null;  
511 - }  
512 -  
513 - @Override  
514 - public TradeRecordResp getTradeRecord(TradeRecordReq req) {  
515 - return null;  
516 - }  
517 -  
518 - @Override  
519 - public SearchUserInfoResp searchBuyerInfo(SearchUserInfoReq req) {  
520 - return null;  
521 - }  
522 -  
523 - @Override  
524 - public LoginResp authlogin(AuthLoginReq req) {  
525 - return null;  
526 - } 118 + @Resource
  119 + private UserRPC userRPC;
  120 + @Resource
  121 + private GoodsRPC goodsRPC;
  122 + @Autowired
  123 + private RedisUtilImpl redisUtil;
  124 + @Autowired
  125 + private UserRedisUtil userRedisUtil;
  126 +
  127 + @Resource
  128 + private RegisterNoMapperManager registerNoMapperManager;
  129 + @Resource
  130 + private PassportRPC passportRPC;
  131 + @Resource
  132 + private ConfigRPC configRPC;
  133 +
  134 + @Resource
  135 + private ShopRPC shopRPC;
  136 + @Autowired
  137 + private MessageRPC messageRPC;
  138 + @Resource
  139 + private PickInfoRPC pickInfoRPC;
  140 +
  141 + private static Logger logger = LoggerFactory.getLogger(UserServiceImpl.class);
  142 +
  143 + @Override
  144 + public LoginResp login(LoginReq req) {
  145 + LoginResp resp = (LoginResp) passportRPC.buyerLogin(req);
  146 +
  147 + if (!Validator.isEmpty(req.getRegisterNo())) {
  148 + // 缓存
  149 + String redisKey = redisUtil.makeKey(RedisKey.USER_REGISTERNO,
  150 + Constant.USER_ROLE_BUYER + String.valueOf(resp.getAccountId()));
  151 +
  152 + GetRegisterNoResp mappers = redisUtil.getObject(redisKey, GetRegisterNoResp.class);
  153 + // 绑定极光ID
  154 + RegisterNoMapper mapper = new RegisterNoMapper();
  155 + mapper.setRegisterNo(req.getRegisterNo());
  156 + mapper.setSysFlag(RegisterNoMapper.SYS_FLAG_JPUSH);
  157 + mapper.setUserid(resp.getAccountId());
  158 + mapper.setDeviceType(req.getDeviceType());
  159 + try {
  160 + // 清除当前极光号userid缓存
  161 + cleanOldredis(mapper);
  162 + // 构建缓存信息
  163 + buildRedisInfo(mappers, mapper);
  164 + redisUtil.setObjectByExpire(redisKey, mappers, RedisKey.REGISTERNO_EXPIRE_TIME);
  165 + } catch (Exception e) {
  166 + throw new ServiceException(ResultCode.PUSH_MESSAGE_NO, "绑定极光推送系统注册号失败");
  167 + }
  168 + }
  169 + return resp;
  170 + }
  171 +
  172 + /**
  173 + * 清除当前极光号下userid缓存
  174 + *
  175 + * @param mapper
  176 + */
  177 + private void cleanOldredis(RegisterNoMapper mapper) {
  178 + RegisterNoMapper oldmapper = registerNoMapperManager.bindRegisterNo(mapper);
  179 + if (!Validator.isNull(oldmapper)) {
  180 + String oldKey = redisUtil.makeKey(RedisKey.USER_REGISTERNO, String.valueOf(oldmapper.getUserid()));
  181 + redisUtil.deleteByKey(oldKey);
  182 + }
  183 + }
  184 +
  185 + /**
  186 + * 建立缓存信息
  187 + *
  188 + * @param mappers
  189 + * @param mapper
  190 + */
  191 + private void buildRedisInfo(GetRegisterNoResp mappers, RegisterNoMapper mapper) {
  192 + // 如果缓存没有重新建
  193 + List<RegisterNoMapper> renolist = new ArrayList<RegisterNoMapper>();
  194 +
  195 + if (Validator.isNull(mappers)) {
  196 + mappers = new GetRegisterNoResp();
  197 + }
  198 + renolist.add(mapper);
  199 + mappers.setRegisterNos(renolist);
  200 + }
  201 +
  202 + @Override
  203 + public CheckUserInvalidResp checkUserInvalid(CheckUserInvalidReq req) {
  204 + return null;
  205 + }
  206 +
  207 + @Override
  208 + public CheckVeriCodeResp checkVeriCode(CheckVeriCodeReq req) {
  209 + CheckVeriCodeResp resp = new CheckVeriCodeResp();
  210 +
  211 + checkVeriCode(req.getVeriCode(), req.getMobile(), req.getMsgType());
  212 +
  213 + return resp;
  214 + }
  215 +
  216 + @Override
  217 + public SendVeriCodeResp sendVeriCode(SendVeriCodeReq req) {
  218 + SendVeriCodeResp resp = new SendVeriCodeResp();
  219 +
  220 + String mobile = req.getMobile();
  221 + boolean existFlag = !userRPC.checkMobile(mobile);
  222 +
  223 + Integer msgType = req.getMsgType();
  224 + String code = null;
  225 + String message = null;
  226 +
  227 + String redisKey = redisUtil.makeKey(RedisKey.USER_AUTH_CODE + String.valueOf(msgType), mobile);
  228 + String veriCode = redisUtil.getString(redisKey);
  229 +
  230 + if (Validator.isEmpty(veriCode)) {
  231 + // 生成验证码
  232 + veriCode = PassportUtils.generateMobileRandomNumber();
  233 + redisUtil.setStringByExpire(redisKey, String.valueOf(veriCode), RedisKey.USER_SEND_VERICODE_EXPIRE_TIME);
  234 + }
  235 +
  236 + if (!Validator.isNull(msgType) && msgType != SendVeriCodeReq.MSG_TYPE_DEFAULT) {
  237 + if (msgType == SendVeriCodeReq.MSG_TYPE_REGISTER) {
  238 + // 注册,电话号码已经存在
  239 + if (existFlag) {
  240 + throw new ServiceException(ResultCode.BUSINESS_FAILED, ErrorMessage.USER_MOBILE_EXIST);
  241 + }
  242 + String passkey = configRPC.getSystemConfig(Constant.USER_REGISTER_PASS_KEY);
  243 + resp.setPassKey(passkey);
  244 +
  245 + messageRPC.sendSMSMsg(mobile, veriCode, Constant.SMS_CONTENT_ACCOUNT_REGISTRATION);
  246 + resp.setSendCode(SendVeriCodeResp.SEND_CODE_SUCCESS);
  247 + return resp;
  248 + } else if (msgType == SendVeriCodeReq.MSG_TYPE_RETRIEVE_PASSWORD) {
  249 + // 找回密码,电话号码没有存在
  250 + if (!existFlag) {
  251 + throw new ServiceException(ResultCode.BUSINESS_FAILED, ErrorMessage.USER_MOBILE_NOT_EXIST);
  252 + }
  253 + messageRPC.sendSMSMsg(mobile, veriCode, Constant.SMS_CONTENT_RETRIEVE_PASSWORD);
  254 + resp.setSendCode(SendVeriCodeResp.SEND_CODE_SUCCESS);
  255 + return resp;
  256 + } else if (msgType == SendVeriCodeReq.MSG_TYPE_MODIFY_NEW_MOBILE) {
  257 + // 修改手机号,电话号码已经存在
  258 + if (existFlag) {
  259 + throw new ServiceException(ResultCode.BUSINESS_FAILED, ErrorMessage.USER_MOBILE_EXIST);
  260 + }
  261 + code = Constant.SMS_CONTENT_MODIFY_OLD_PHONE;
  262 + } else if (msgType == SendVeriCodeReq.MSG_TYPE_CHECK_OLD_MOBILE) {
  263 + // 验证旧的手机号,手机不存在
  264 + if (!existFlag) {
  265 + throw new ServiceException(ResultCode.BUSINESS_FAILED, ErrorMessage.USER_MOBILE_NOT_EXIST);
  266 + }
  267 + code = Constant.SMS_CONTENT_MODIFY_OLD_PHONE;
  268 + }
  269 + DataDictionaryResp dataDic = configRPC.getMessageTemplate(Constant.DIC_SMS_CONTENT);
  270 + message = dataDic.getValueByCode(code).getRemark().replace("{code}", veriCode);
  271 + } else {
  272 + message = Constant.SMS_CONTENT_DEFAULT.replace("{code}", veriCode);
  273 + }
  274 +
  275 + messageRPC.sendSMS(mobile, message);
  276 +
  277 + resp.setSendCode(SendVeriCodeResp.SEND_CODE_SUCCESS);
  278 +
  279 + return resp;
  280 + }
  281 +
  282 + @Override
  283 + public UpdateUserInfoResp updateUserInfo(UpdateUserInfoReq req) {
  284 + return null;
  285 + }
  286 +
  287 + @Override
  288 + public CheckAccountNameResp checkAccountName(CheckAccountNameReq req) {
  289 + return null;
  290 + }
  291 +
  292 + @Override
  293 + public CheckMobileResp checkMobile(CheckMobileReq req) {
  294 + return null;
  295 + }
  296 +
  297 + @Override
  298 + public UserRegisterResp userRegister(UserRegisterReq req) {
  299 + UserRegisterResp resp = new UserRegisterResp();
  300 +
  301 + // 手机号码和账号验证、验证码
  302 + // if (!checkRegisterInfo(resp, req)) {
  303 + // return resp;
  304 + // }
  305 +
  306 + resp = passportRPC.register(req);
  307 +
  308 + return resp;
  309 + }
  310 +
  311 + /**
  312 + * 检测注册信息是否正确 1.电话号码 2.账号,会员名 3.验证码
  313 + *
  314 + * @createTime 2014年10月31日 下午2:37:16
  315 + * @author zhangshirui
  316 + */
  317 + private boolean checkRegisterInfo(UserRegisterResp resp, UserRegisterReq req) {
  318 + if (!userRPC.checkMobile(req.getMobile())) {
  319 + throw new ServiceException(ResultCode.BUSINESS_FAILED, ErrorMessage.USER_MOBILE_EXIST);
  320 + }
  321 + // 验证万能验证码
  322 + String passkey = configRPC.getSystemConfig(Constant.USER_REGISTER_PASS_KEY);
  323 + if (req.getVeriCode().equals(passkey)) {
  324 + return true;
  325 + }
  326 +
  327 + checkVeriCode(req.getVeriCode(), req.getMobile(), SendVeriCodeReq.MSG_TYPE_REGISTER);
  328 +
  329 + return true;
  330 + }
  331 +
  332 + /**
  333 + * 根据验证码和电话号码,验证收到的验证码
  334 + *
  335 + * @param code
  336 + * @param mobile
  337 + * @return
  338 + * @createTime 2014年8月28日 下午5:44:48
  339 + * @author zhangshirui
  340 + */
  341 + private void checkVeriCode(String code, String mobile, Integer msgType) {
  342 +
  343 + String redisKey = redisUtil.makeKey(RedisKey.USER_AUTH_CODE + String.valueOf(msgType), mobile);
  344 +
  345 + String redisCode = redisUtil.getString(redisKey);
  346 +
  347 + if (Validator.isEmpty(code)) {
  348 + throw new ServiceException(ResultCode.BUSINESS_FAILED, ErrorMessage.USER_AUTH_CODE_EMPTY);
  349 + }
  350 +
  351 + // 验证码为空
  352 + if (Validator.isEmpty(redisCode)) {
  353 + throw new ServiceException(ResultCode.BUSINESS_FAILED, ErrorMessage.USER_AUTH_CODE_OVERTIME);
  354 + }
  355 +
  356 + // 验证码不为空,并且和redis中的验证码相同
  357 + if (!code.equals(redisCode)) {
  358 + throw new ServiceException(ResultCode.BUSINESS_FAILED, ErrorMessage.USER_AUTH_CODE_WRONG);
  359 + }
  360 +
  361 + }
  362 +
  363 + @Override
  364 + public GetUserInfoResp getUserIntroduction(GetUserInfoReq req) {
  365 + return null;
  366 + }
  367 +
  368 + @Override
  369 + public UpdateMobileResp updateMobile(UpdateMobileReq req) {
  370 + return null;
  371 + }
  372 +
  373 + @Override
  374 + public SubmitIdentityAuthResp submitIdentityAuth(SubmitIdentityAuthReq req) {
  375 + return null;
  376 + }
  377 +
  378 + @Override
  379 + public SubmitEnterpriseAuthResp submitEnterpriseAuth(SubmitEnterpriseAuthReq req) {
  380 + return null;
  381 + }
  382 +
  383 + @Override
  384 + public GetFavoriteProductResp getFavoriteProducts(GetFavoriteProductReq req) {
  385 + return null;
  386 + }
  387 +
  388 + @Override
  389 + public GetFavoriteShopResp getFavoriteShop(GetFavoriteShopReq req) {
  390 + return null;
  391 + }
  392 +
  393 + @Override
  394 + public DelFavoriteShopResp delFavoriteShop(DelFavoriteShopReq req) {
  395 + return null;
  396 + }
  397 +
  398 + @Override
  399 + public DelFavoriteProductResp delFavoriteProduct(DelFavoriteProductReq req) {
  400 + return null;
  401 + }
  402 +
  403 + @Override
  404 + public GetIdentityAuthResp getIdentityAuth(GetIdentityAuthReq req) {
  405 + return null;
  406 + }
  407 +
  408 + @Override
  409 + public GetEnterpriseAuthResp getEnterpriseAuth(GetEnterpriseAuthReq req) {
  410 + return null;
  411 + }
  412 +
  413 + @Override
  414 + public LogoutResp logout(LogoutReq req) {
  415 + LogoutResp resp = new LogoutResp();
  416 +
  417 + // 解除绑定极光ID
  418 + if (!Validator.isEmpty(req.getRegisterNo())) {
  419 +
  420 + String userId = req.getUserId().toString();
  421 + // 先清缓存再清数据库
  422 + String reNOCache = redisUtil.makeKey(RedisKey.USER_REGISTERNO, Constant.USER_ROLE_BUYER + userId);
  423 +
  424 + RegisterNoMapper mapper = new RegisterNoMapper();
  425 + mapper.setRegisterNo(req.getRegisterNo());
  426 + mapper.setSysFlag(RegisterNoMapper.SYS_FLAG_JPUSH);
  427 + mapper.setUserid(req.getUserId());
  428 + mapper.setDeviceType(req.getDeviceType());
  429 + try {
  430 + redisUtil.deleteByKey(reNOCache);
  431 + registerNoMapperManager.unBindRegisterNo(mapper);
  432 + } catch (Exception e) {
  433 + logger.error("解除极光推送系统绑定的注册号失败", e);
  434 + }
  435 + }
  436 +
  437 + return resp;
  438 + }
  439 +
  440 + @Override
  441 + public ModifyPwdResp modifyPwd(ModifyPwdReq req) {
  442 + BuyerInfoOutput userInfo = userRPC.getUserByMobile(req.getAccountName());
  443 + Long userId = userInfo.getId();
  444 +
  445 + Map<String, String> params = new HashMap<String, String>();
  446 + params.put("password", req.getPassword());
  447 + params.put("accountId", String.valueOf(userId));
  448 +
  449 + String result = passportRPC.modifyPwd(params);
  450 +
  451 + JSONObject jsonBody = JSONObject.parseObject(result);
  452 + int code = jsonBody.getIntValue("code");
  453 + ModifyPwdResp resp = new ModifyPwdResp();
  454 + resp.setMsg(jsonBody.getString("msg"));
  455 +
  456 + if (code != ResultCode.SUCCESS) {
  457 + // 失败
  458 + resp.setCode(ResultCode.BUSINESS_FAILED);
  459 + resp.setResultFlag(ModifyPwdResp.RESULT_FLAG_FAILED);
  460 + return resp;
  461 + } else {
  462 + // 修改成功,退出所有账号信息
  463 + String cookieRedisKey = redisUtil.makeKey(RedisKey.USER_LOGININFO,
  464 + Constant.USER_ROLE_BUYER + String.valueOf(userId));
  465 + redisUtil.deleteByKey(cookieRedisKey);
  466 + }
  467 +
  468 + logger.info("修改用户密码" + jsonBody.getString("msg"));
  469 +
  470 + return resp;
  471 + }
  472 +
  473 + @Override
  474 + public GetAuthInfoResp getAuthInfo(GetAuthInfoReq req) {
  475 + return null;
  476 + }
  477 +
  478 + @Override
  479 + public DelFavoriteInfoResp delFavoriteInfo(DelFavoriteInfoReq req) {
  480 + return null;
  481 + }
  482 +
  483 + @Override
  484 + public GetFavoriteInfoResp getFavoriteInfo(GetFavoriteInfoReq req) {
  485 + return null;
  486 + }
  487 +
  488 + @Override
  489 + public AddFavoriteInfoResp addFavoriteInfo(AddFavoriteInfoReq req) {
  490 + return null;
  491 + }
  492 +
  493 + @Override
  494 + public GetRegisterNoResp getRegisterNo(GetRegisterNoReq req) {
  495 + GetRegisterNoResp resp = new GetRegisterNoResp();
  496 + if (Validator.isNull(req.getUserId()) || Validator.isNull(req.getUserRole())) {
  497 + resp.setCode(ResultCode.REQUET_PARAMS_ERROR);
  498 + resp.setMsg("用户ID和用户角色不能为空");
  499 + return resp;
  500 + }
  501 + // 先从缓存取
  502 + String redisKey = redisUtil.makeKey(RedisKey.USER_REGISTERNO,
  503 + req.getUserRole() + String.valueOf(req.getUserId()));
  504 + GetRegisterNoResp recache = redisUtil.getObject(redisKey, GetRegisterNoResp.class);
  505 + if (!Validator.isNull(recache) && !Validator.isEmpty(recache.getRegisterNos())) {
  506 + resp.setRegisterNos(recache.getRegisterNos());
  507 + } else {
  508 + List<RegisterNoMapper> mapppers = registerNoMapperManager.getRegisterNo(req.getUserId());
  509 + if (!Validator.isEmpty(mapppers)) {
  510 +
  511 + resp.setRegisterNos(mapppers);
  512 + redisUtil.setObjectByExpire(redisKey, resp, RedisKey.REGISTERNO_EXPIRE_TIME);
  513 + } else {
  514 + resp.setCode(ResultCode.BUSINESS_FAILED);
  515 + resp.setMsg("该用户没有绑定极光号");
  516 + }
  517 + }
  518 + return resp;
  519 + }
  520 +
  521 + @Override
  522 + public GetRegisterNobyUidsResp getRegisterNobyUids(GetRegisterNobyUidsReq req) {
  523 + GetRegisterNobyUidsResp resp = new GetRegisterNobyUidsResp();
  524 + Map<String, Object> param = new HashMap<String, Object>();
  525 + param.put("userids", req.getUserIds());
  526 + if (!Validator.isNull(req.getPlatform())) {
  527 + param.put("device_type", req.getPlatform().toString());
  528 + }
  529 + List<RegisterNoMapper> mappers = registerNoMapperManager.batchQuery(param);
  530 +
  531 + List<RegisterNoPlatform> registerNos = new ArrayList<RegisterNoPlatform>();
  532 + RegisterNoPlatform androidPlatform = new RegisterNoPlatform();
  533 + androidPlatform.setPlatform("android");
  534 + List<String> androids = new ArrayList<String>();
  535 + RegisterNoPlatform iosPlatform = new RegisterNoPlatform();
  536 + iosPlatform.setPlatform("ios");
  537 + List<String> iosids = new ArrayList<String>();
  538 + if (!Validator.isEmpty(mappers)) {
  539 + for (RegisterNoMapper registerNoMapper : mappers) {
  540 + if (!Validator.isNull(registerNoMapper.getDeviceType())) {
  541 + if (registerNoMapper.getDeviceType().equals(1)) {
  542 + androids.add(registerNoMapper.getRegisterNo());
  543 + }
  544 + if (registerNoMapper.getDeviceType().equals(2)) {
  545 + iosids.add(registerNoMapper.getRegisterNo());
  546 + }
  547 + }
  548 + }
  549 + }
  550 + androidPlatform.setIds(androids);
  551 + iosPlatform.setIds(iosids);
  552 + registerNos.add(androidPlatform);
  553 + registerNos.add(iosPlatform);
  554 + resp.setRegisterNos(registerNos);
  555 + resp.setCode(ResultCode.SUCCESS);
  556 + return resp;
  557 + }
  558 +
  559 + @Override
  560 + public GetMemberListResp getMemberList(GetMemberListReq req) {
  561 + return null;
  562 + }
  563 +
  564 + @Override
  565 + public UpdateUserInfoResp completeUserInfo(CompleteUserInfoReq req) {
  566 + return null;
  567 + }
  568 +
  569 + @Override
  570 + public GetDepositCardAmountResp getDepositCardAmount(GetDepositCardAmountReq req) {
  571 + return null;
  572 + }
  573 +
  574 + @Override
  575 + public TradeRecordResp getTradeRecord(TradeRecordReq req) {
  576 + return null;
  577 + }
  578 +
  579 + @Override
  580 + public SearchUserInfoResp searchBuyerInfo(SearchUserInfoReq req) {
  581 + return null;
  582 + }
  583 +
  584 + @Override
  585 + public LoginResp authlogin(AuthLoginReq req) {
  586 + return null;
  587 + }
  588 +
  589 + @Override
  590 + public GetDeliveryAddressResp getDeliveryAddresses(GetDeliveryAddressReq req) {
  591 + PickingInfoOutput response = this.pickInfoRPC.getDefaultPickingInfoByBuyerId(req.getShopBuyerId());
  592 + if (response == null) {
  593 + throw new ServiceException(ResultCode.NETWORK_FAILED, "获取默认收货地址失败");
  594 + }
  595 + GetDeliveryAddressResp resp = new GetDeliveryAddressResp();
  596 + PickInfo pickInfo = new PickInfo();
  597 + pickInfo.setCityAddress(response.getAddressText());
  598 + pickInfo.setCityId(response.getAddressId());
  599 + pickInfo.setIsDefault(response.getDef());
  600 + pickInfo.setMobile(response.getTelphone());
  601 + pickInfo.setName(response.getName());
  602 + pickInfo.setStreetAddress(response.getAddressDetail());
  603 + resp.setPickInfo(pickInfo);
  604 + return resp;
  605 + }
527 } 606 }
mobsite-getway-web/src/main/java/com/diligrp/mobsite/getway/web/api/buyer/user/UserController.java
@@ -21,12 +21,13 @@ import org.springframework.web.bind.annotation.ResponseBody; @@ -21,12 +21,13 @@ import org.springframework.web.bind.annotation.ResponseBody;
21 import javax.annotation.Resource; 21 import javax.annotation.Resource;
22 import javax.servlet.http.HttpServletRequest; 22 import javax.servlet.http.HttpServletRequest;
23 23
24 -  
25 /** 24 /**
26 * <B>Description</B> 用户Controller <br /> 25 * <B>Description</B> 用户Controller <br />
27 - * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved. <br /> 26 + * <B>Copyright</B> Copyright (c) 2014 www.diligrp.com All rights reserved.
  27 + * <br />
28 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br /> 28 * 本软件源代码版权归地利集团,未经许可不得任意复制与传播.<br />
29 * <B>Company</B> 地利集团 29 * <B>Company</B> 地利集团
  30 + *
30 * @createTime 2014年8月24日 下午10:53:27 31 * @createTime 2014年8月24日 下午10:53:27
31 * @author weili 32 * @author weili
32 */ 33 */
@@ -34,492 +35,513 @@ import javax.servlet.http.HttpServletRequest; @@ -34,492 +35,513 @@ import javax.servlet.http.HttpServletRequest;
34 @RequestMapping("/mobsiteApp/user") 35 @RequestMapping("/mobsiteApp/user")
35 @Api(value = "/mobsiteApp-user", description = "用户接口-买家") 36 @Api(value = "/mobsiteApp-user", description = "用户接口-买家")
36 public class UserController extends BaseApiController { 37 public class UserController extends BaseApiController {
37 -  
38 - @Resource  
39 - private UserService userService;  
40 -  
41 - private final Logger LOGGER = Logger.getLogger(UserController.class);  
42 -  
43 - /**  
44 - * 买家登录  
45 - * @createTime 2014年8月24日 下午10:55:03  
46 - * @author weili  
47 - */  
48 - @ApiOperation(value = "买家登录", httpMethod = "POST",response = LoginResp.class)  
49 - @RequestMapping(value = "/buyerLogin",method = RequestMethod.POST)  
50 - @ResponseBody  
51 - public void buyerLogin(HttpServletRequest request,@RequestBody LoginReq temp ){  
52 - LoginReq req = super.getRequest(LoginReq.class);  
53 - try {  
54 - BeanValidator.validator(req);  
55 - LoginResp resp = userService.login(req);  
56 - super.sendSuccessResp(resp);  
57 - LOGGER.info(String.format("用户登陆:[ 设备id<%s>用户名<%s>用户id<%s>ip<%s> ]"  
58 - , req.getDeviceId(), req.getAccountName(), req.getUserId(), request.getRemoteAddr()));  
59 - } catch (ServiceException e){  
60 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
61 - e.getCode(), e.getMessage(), req.getUserId()), e);  
62 - super.sendError(e.getCode(), e.getMessage());  
63 - } catch (Exception e) {  
64 - LOGGER.error("用户登录失败:", e);  
65 - super.sendError(e.getMessage());  
66 - }  
67 - }  
68 -  
69 -  
70 - /**  
71 - * 加密用户登录(加密)  
72 - * @createTime 2014年8月24日 下午10:55:03  
73 - * @author weili  
74 - */  
75 - @ApiOperation(value = "买家登录", httpMethod = "POST",response = LoginResp.class)  
76 - @RequestMapping(value = "/buyerLogins",method = RequestMethod.POST)  
77 - @ResponseBody  
78 - public void buyerLogins(@RequestBody LoginReq temp){  
79 - LoginReq req = super.getRequest(LoginReq.class);  
80 - try {  
81 - BeanValidator.validator(req);  
82 - req.setPassword(decodeStr(req.getPassword()));  
83 - LoginResp resp = userService.login(req);  
84 - super.sendSuccessResp(resp);  
85 - } catch (ServiceException e){  
86 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
87 - e.getCode(), e.getMessage(), req.getUserId()), e);  
88 - super.sendError(e.getCode(), e.getMessage());  
89 - } catch (Exception e) {  
90 - LOGGER.error("用户登录失败:", e);  
91 - super.sendError(e.getMessage());  
92 - }  
93 - }  
94 -  
95 - /**  
96 - * 验证码登录  
97 - * @createTime 2014年8月24日 下午10:55:03  
98 - * @author weili  
99 - */  
100 - @ApiOperation(value = "买家验证码登录", httpMethod = "POST" , notes = "买家验证码登录",response = LoginResp.class)  
101 - @RequestMapping(value = "/loginForAuth",method = RequestMethod.POST)  
102 - @ResponseBody  
103 - public void loginForAuth(@RequestBody AuthLoginReq temp){  
104 - AuthLoginReq req = super.getRequest(AuthLoginReq.class);  
105 - try {  
106 - BeanValidator.validator(req);  
107 - LoginResp resp = userService.authlogin(req);  
108 - super.sendSuccessResp(resp);  
109 - } catch (ServiceException e){  
110 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
111 - e.getCode(), e.getMessage(), req.getUserId()), e);  
112 - super.sendError(e.getCode(), e.getMessage());  
113 - } catch (Exception e) {  
114 - LOGGER.error("用户登录失败:", e);  
115 - super.sendError(e.getMessage());  
116 - }  
117 - }  
118 -  
119 - ///**  
120 - // * 找回密码:验证用户名是否可用  
121 - // * @createTime 2014年8月24日 下午10:55:03  
122 - // * @author weili  
123 - // */  
124 - //@ApiOperation(value = "买家登录", httpMethod = "POST" , notes = "买家登录",response = LoginResp.class)  
125 - //@RequestMapping(value = "/checkUserInvalid",method = RequestMethod.POST)  
126 - //@ResponseBody  
127 - //public void checkUserInvalid(){  
128 - // CheckUserInvalidReq req= super.getRequest(CheckUserInvalidReq.class);  
129 - // try {  
130 - // CheckUserInvalidResp resp = userService.checkUserInvalid(req);  
131 - // super.sendSuccessResp(resp);  
132 - // } catch (ServiceException e){  
133 - // LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
134 - // e.getCode(), e.getMessage(), req.getUserId()), e);  
135 - // sendError(e.getCode(), e.getMessage());  
136 - // } catch (Exception e) {  
137 - // LOGGER.error("验证用户名失败:", e);  
138 - // super.sendError(e.getMessage());  
139 - // }  
140 - //}  
141 -  
142 - /**  
143 - * 发送验证码到手机  
144 - * @createTime 2014年8月24日 下午10:55:03  
145 - * @author weili  
146 - */  
147 - @ApiOperation(value = "发送验证码到手机", httpMethod = "POST" , notes = "发送验证码到手机",response = SendVeriCodeResp.class)  
148 - @RequestMapping(value = "/sendAuthCode",method = RequestMethod.POST)  
149 - @ResponseBody  
150 - public void sendAuthCode(@RequestBody SendVeriCodeReq temp){  
151 - SendVeriCodeReq req= super.getRequest(SendVeriCodeReq.class);  
152 - try {  
153 - BeanValidator.validator(req);  
154 - SendVeriCodeResp resp = userService.sendVeriCode(req);  
155 - super.sendSuccessResp(resp);  
156 - } catch (ServiceException e){  
157 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
158 - e.getCode(), e.getMessage(), req.getUserId()), e);  
159 - sendError(e.getMessage());  
160 - } catch (Exception e) {  
161 - LOGGER.error("发送验证码失败:", e);  
162 - super.sendError(e.getMessage());  
163 - }  
164 - }  
165 -  
166 - /**  
167 - * 忘记密码:验证手机收到的验证码  
168 - * @createTime 2014年8月24日 下午10:55:03  
169 - * @author weili  
170 - */  
171 - @ApiOperation(value = "忘记密码:验证手机号和验证码", httpMethod = "POST" , notes = "验证手机收到的验证码",response = CheckVeriCodeResp.class)  
172 - @RequestMapping(value = "/checkAuthCode",method = RequestMethod.POST)  
173 - @ResponseBody  
174 - public void checkAuthCode(@RequestBody CheckVeriCodeReq temp){  
175 - CheckVeriCodeReq req= super.getRequest(CheckVeriCodeReq.class);  
176 - try {  
177 - BeanValidator.validator(req);  
178 - CheckVeriCodeResp resp = userService.checkVeriCode(req);  
179 - super.sendSuccessResp(resp);  
180 - } catch (ServiceException e){  
181 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
182 - e.getCode(), e.getMessage(), req.getUserId()), e);  
183 - sendError(e.getCode(), e.getMessage());  
184 - } catch (Exception e) {  
185 - LOGGER.error("验证手机收到的验证码:", e);  
186 - super.sendError(e.getMessage());  
187 - }  
188 - }  
189 -  
190 -  
191 - /**  
192 - * 找回密码-修改用户密码  
193 - * @createTime 2014年8月24日 下午10:55:03  
194 - * @author weili  
195 - */  
196 - @ApiOperation(value = "找回密码-设置用户新密码", httpMethod = "POST" ,response = SendVeriCodeResp.class)  
197 - @RequestMapping(value = "/modifyPwd",method = RequestMethod.POST)  
198 - @ResponseBody  
199 - public void modifyPwd(@RequestBody ModifyPwdReq temp){  
200 - ModifyPwdReq req = super.getRequest(ModifyPwdReq.class);  
201 - ModifyPwdResp resp = null;  
202 - try {  
203 - BeanValidator.validator(req);  
204 - resp = userService.modifyPwd(req);  
205 - super.sendSuccessResp(resp);  
206 - } catch (ServiceException e){  
207 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
208 - e.getCode(), e.getMessage(), req.getUserId()), e);  
209 - sendError(e.getCode(), e.getMessage());  
210 - } catch (Exception e) {  
211 - LOGGER.error("修改密码:", e);  
212 - super.sendError(e.getMessage());  
213 - }  
214 -  
215 - }  
216 -  
217 - /**  
218 - * 买家注册  
219 - * @createTime 2014年8月28日 下午3:41:02  
220 - * @author weili  
221 - */  
222 - @ApiOperation(value = "买家注册", httpMethod = "POST" ,response = UserRegisterResp.class)  
223 - @RequestMapping(value = "/buyerRegister",method = RequestMethod.POST)  
224 - @ResponseBody  
225 - public void buyerRegister(@RequestBody UserRegisterReq temp){  
226 - UserRegisterReq req = super.getRequest(UserRegisterReq.class);  
227 - try {  
228 - BeanValidator.validator(req);  
229 - UserRegisterResp resp = userService.userRegister(req);  
230 - super.sendSuccessResp(resp);  
231 - } catch (ServiceException e){  
232 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
233 - e.getCode(), e.getMessage(), req.getUserId()), e);  
234 - sendError(e.getCode(), e.getMessage());  
235 - } catch (Exception e) {  
236 - LOGGER.error("用户注册失败:", e);  
237 - super.sendError(e.getMessage());  
238 - }  
239 - }  
240 -  
241 - /**  
242 - * 买家注册(加密)  
243 - * @createTime 2014年8月28日 下午3:41:02  
244 - * @author weili  
245 - */  
246 - @ApiOperation(value = "买家注册", httpMethod = "POST" ,response = UserRegisterResp.class)  
247 - @RequestMapping(value = "/buyerRegisters",method = RequestMethod.POST)  
248 - @ResponseBody  
249 - public void buyerRegisters(@RequestBody UserRegisterReq temp){  
250 - UserRegisterReq req = super.getRequest(UserRegisterReq.class);  
251 - try {  
252 - BeanValidator.validator(req);  
253 - req.setPassword(decodeStr(req.getPassword()));  
254 - UserRegisterResp resp = userService.userRegister(req);  
255 - super.sendSuccessResp(resp);  
256 - } catch (ServiceException e){  
257 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
258 - e.getCode(), e.getMessage(), req.getUserId()), e);  
259 - sendError(e.getCode(), e.getMessage());  
260 - } catch (Exception e) {  
261 - LOGGER.error("用户注册失败:", e);  
262 - super.sendError(e.getMessage());  
263 - }  
264 - }  
265 -  
266 - /**  
267 - * 退出操作  
268 - *  
269 - * @createTime 2014年8月29日 上午9:30:10  
270 - * @author weili  
271 - */  
272 - @ApiOperation(value = "退出", httpMethod = "POST" ,response = LogoutResp.class)  
273 - @RequestMapping(value = "/logout",method = RequestMethod.POST)  
274 - @ResponseBody  
275 - public void logout(@RequestBody LogoutReq temp){  
276 - LogoutReq req = super.getRequest(LogoutReq.class);  
277 - try {  
278 - if(Validator.isNull(req) || !Validator.isNumber(req.getUserId()+"")) {  
279 - throw new NullPointerException("参数传递错误");  
280 - }  
281 - LogoutResp resp = userService.logout(req);  
282 - super.sendSuccessResp(resp);  
283 - } catch (ServiceException e){  
284 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
285 - e.getCode(), e.getMessage(), req.getUserId()), e);  
286 - sendError(e.getCode(), e.getMessage());  
287 - }  
288 - catch (Exception e) {  
289 - LOGGER.error("用户退出失败:", e);  
290 - super.sendError(e.getMessage());  
291 - }  
292 - }  
293 -  
294 - /**  
295 - * 个人信息维护  
296 - * @createTime 2016年8月24日 下午10:55:03  
297 - * @author weili  
298 - */  
299 - @ApiOperation(value = "个人信息维护", httpMethod = "POST" ,response = UpdateUserInfoResp.class)  
300 - @RequestMapping(value = "/updateUserInfo",method = RequestMethod.POST)  
301 - @ResponseBody  
302 - public void updateUserInfo(@RequestBody UpdateUserInfoReq temp){  
303 - UpdateUserInfoReq req = super.getRequest(UpdateUserInfoReq.class);  
304 - try {  
305 - UpdateUserInfoResp resp = userService.updateUserInfo(req);  
306 - super.sendSuccessResp(resp);  
307 - } catch (ServiceException e){  
308 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
309 - e.getCode(), e.getMessage(), req.getUserId()), e);  
310 - sendError(e.getCode(), e.getMessage());  
311 - } catch (Exception e) {  
312 - LOGGER.error("个人信息维护:", e);  
313 - super.sendError(e.getMessage());  
314 - }  
315 -  
316 - }  
317 -  
318 -  
319 - /**  
320 - * 查看储值卡余额  
321 - * @createTime 2016年8月24日 下午10:55:03  
322 - * @author weili  
323 - */  
324 - @ApiOperation(value = "查看储值卡余额", httpMethod = "POST" ,response = GetDepositCardAmountResp.class)  
325 - @RequestMapping(value = "/getDepositCardAmount",method = RequestMethod.POST)  
326 - @ResponseBody  
327 - public void getDepositCardAmount(){  
328 - GetDepositCardAmountReq req = super.getRequest(GetDepositCardAmountReq.class);  
329 - try {  
330 - GetDepositCardAmountResp resp = userService.getDepositCardAmount(req);  
331 - super.sendSuccessResp(resp);  
332 - } catch (ServiceException e){  
333 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
334 - e.getCode(), e.getMessage(), req.getUserId()), e);  
335 - sendError(e.getCode(), e.getMessage());  
336 - } catch (Exception e) {  
337 - LOGGER.error("个人信息维护:", e);  
338 - super.sendError(e.getMessage());  
339 - }  
340 -  
341 - }  
342 -  
343 -  
344 - /**  
345 - * 查询用户信息  
346 - * GetUserInfoReq  
347 - */  
348 - @ApiOperation(value = "查询买家用户信息", httpMethod = "POST" ,response = GetDepositCardAmountResp.class)  
349 - @RequestMapping(value = "/getBuyerInfo",method = RequestMethod.POST)  
350 - @ResponseBody  
351 - public void getBuyerInfo() {  
352 - GetUserInfoReq req = getRequest(GetUserInfoReq.class);  
353 - try {  
354 - GetUserInfoResp resp = userService.getUserIntroduction(req);  
355 - super.sendSuccessResp(resp);  
356 - } catch (ServiceException e){  
357 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
358 - e.getCode(), e.getMessage(), req.getUserId()), e);  
359 - sendError(e.getCode(), e.getMessage());  
360 - } catch (Exception e) {  
361 - LOGGER.error(String.format("ErrorMessage=%s,UserId=%s", e.getMessage(), req.getUserId()), e);  
362 - sendError(e.getMessage());  
363 - }  
364 - }  
365 -  
366 -  
367 - /**  
368 - * 搜索买家用户信息  
369 - * GetUserInfoReq  
370 - */  
371 - @ApiOperation(value = "搜索买家用户信息", httpMethod = "POST" ,response = SearchUserInfoResp.class)  
372 - @RequestMapping(value = "/searchBuyerInfo",method = RequestMethod.POST)  
373 - @ResponseBody  
374 - public void searchBuyerInfo(@RequestBody SearchUserInfoReq temp) {  
375 - SearchUserInfoReq req = getRequest(SearchUserInfoReq.class);  
376 - try {  
377 - SearchUserInfoResp resp = userService.searchBuyerInfo(req);  
378 - super.sendSuccessResp(resp);  
379 - } catch (ServiceException e){  
380 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
381 - e.getCode(), e.getMessage(), req.getUserId()), e);  
382 - sendError(e.getCode(), e.getMessage());  
383 - } catch (Exception e) {  
384 - LOGGER.error(String.format("ErrorMessage=%s,UserId=%s", e.getMessage(), req.getUserId()), e);  
385 - sendError(e.getMessage());  
386 - }  
387 - }  
388 -  
389 -  
390 - /**  
391 - * 查询极光推送号  
392 - *  
393 - * getRegisterNo  
394 - */  
395 - @ApiOperation(value = "查询极光推送号", httpMethod = "POST" ,response = GetRegisterNoResp.class)  
396 - @RequestMapping(value = "/getRegisterNo",method = RequestMethod.POST)  
397 - @ResponseBody  
398 - public void getRegisterNo(@RequestBody GetRegisterNoReq temp) {  
399 - GetRegisterNoReq req = getRequest(GetRegisterNoReq.class);  
400 - try {  
401 - GetRegisterNoResp resp = userService.getRegisterNo(req);  
402 - sendSuccessResp(resp);  
403 - } catch (ServiceException e){  
404 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s",  
405 - e.getCode(), e.getMessage()), e);  
406 - sendError(e.getCode(), e.getMessage());  
407 - } catch (Exception e) {  
408 - LOGGER.error(String.format("ErrorMessage=%s", e.getMessage()), e);  
409 - sendError(e.getMessage());  
410 - }  
411 - }  
412 -  
413 - /**  
414 - * 批量查询极光推送号  
415 - *  
416 - * getNosByUserids  
417 - */  
418 - @ApiOperation(value = "批量查询极光推送号", httpMethod = "POST" ,response = GetRegisterNobyUidsResp.class)  
419 - @RequestMapping(value = "/getRegisterNobyUids",method = RequestMethod.POST)  
420 - @ResponseBody  
421 - public void getRegisterNobyUids(@RequestBody GetRegisterNobyUidsReq temp) {  
422 - GetRegisterNobyUidsReq req = getRequest(GetRegisterNobyUidsReq.class);  
423 - try {  
424 - GetRegisterNobyUidsResp resp = userService.getRegisterNobyUids(req);  
425 - sendSuccessResp(resp);  
426 - } catch (ServiceException e){  
427 - LOGGER.error(String.format("Code=%s,ErrorMessage=%s",  
428 - e.getCode(), e.getMessage()), e);  
429 - sendError(e.getCode(), e.getMessage());  
430 - } catch (Exception e) {  
431 - LOGGER.error(String.format("ErrorMessage=%s", e.getMessage()), e);  
432 - sendError(e.getMessage());  
433 - }  
434 - }  
435 -  
436 -  
437 - ///**  
438 - // * 查看交易记录  
439 - // * @createTime 2016年8月24日 下午10:55:03  
440 - // * @author weili  
441 - // */  
442 - //@ApiOperation(value = "查看交易记录", httpMethod = "POST" ,response = TradeRecordResp.class)  
443 - //@RequestMapping(value = "/getTradeRecord",method = RequestMethod.POST)  
444 - //@ResponseBody  
445 - //public void getTradeRecord(){  
446 - // TradeRecordReq req = super.getRequest(TradeRecordReq.class);  
447 - // try {  
448 - // TradeRecordResp resp = userService.getTradeRecord(req);  
449 - // super.sendSuccessResp(resp);  
450 - // } catch (ServiceException e){  
451 - // LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
452 - // e.getCode(), e.getMessage(), req.getUserId()), e);  
453 - // sendError(e.getCode(), e.getMessage());  
454 - // } catch (Exception e) {  
455 - // LOGGER.error("查看交易记录:", e);  
456 - // super.sendError(e.getMessage());  
457 - // }  
458 - //  
459 - //}  
460 -  
461 - ///**  
462 - // * 验证用户账号是否可用  
463 - // * @createTime 2014年8月28日 下午3:41:02  
464 - // * @author weili  
465 - // */  
466 - //@RequestMapping("/checkAccountName")  
467 - //@ResponseBody  
468 - //public void checkAccountName(){  
469 - // CheckAccountNameReq req = super.getRequest(CheckAccountNameReq.class);  
470 - // CheckAccountNameResp resp = null;  
471 - // try {  
472 - // if(!Validator.isNull(req) && !Validator.isNull(req.getAccountName())){  
473 - // resp = userService.checkAccountName(req);  
474 - // }  
475 - // else {  
476 - // resp = new CheckAccountNameResp();  
477 - // }  
478 - // super.sendSuccessResp(resp);  
479 - // } catch (ServiceException e){  
480 - // LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
481 - // e.getCode(), e.getMessage(), req.getUserId()), e);  
482 - // sendError(e.getCode(), e.getMessage());  
483 - // } catch (Exception e) {  
484 - // LOGGER.error("验证用户账号失败:", e);  
485 - // super.sendError(e.getMessage());  
486 - // }  
487 - //}  
488 - //  
489 -  
490 - /**  
491 - * 验证手机号是否已经被注册  
492 - * @createTime 2014年8月28日 下午3:41:02  
493 - * @author weili  
494 - */  
495 - //@RequestMapping("/checkMobile")  
496 - //@ResponseBody  
497 - //@ApiOperation(value = "", httpMethod = "POST")  
498 - //public void checkMobile(){  
499 - // CheckMobileReq req = super.getRequest(CheckMobileReq.class);  
500 - // CheckMobileResp resp = null;  
501 - // try {  
502 - // if(!Validator.isNull(req) && !Validator.isNull(req.getMobile())){  
503 - // resp = userService.checkMobile(req);  
504 - // } else {  
505 - // resp = new CheckMobileResp();  
506 - // }  
507 - // super.sendSuccessResp(resp);  
508 - // } catch (ServiceException e){  
509 - // LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",  
510 - // e.getCode(), e.getMessage(), req.getUserId()), e);  
511 - // sendError(e.getCode(), e.getMessage());  
512 - // } catch (Exception e) {  
513 - // LOGGER.error("验证手机失败:", e);  
514 - // super.sendError(e.getMessage());  
515 - // }  
516 - //}  
517 -  
518 -  
519 -  
520 -  
521 -  
522 -  
523 38
  39 + @Resource
  40 + private UserService userService;
  41 +
  42 + private final Logger LOGGER = Logger.getLogger(UserController.class);
  43 +
  44 + /**
  45 + * 买家登录
  46 + *
  47 + * @createTime 2014年8月24日 下午10:55:03
  48 + * @author weili
  49 + */
  50 + @ApiOperation(value = "买家登录", httpMethod = "POST", response = LoginResp.class)
  51 + @RequestMapping(value = "/buyerLogin", method = RequestMethod.POST)
  52 + @ResponseBody
  53 + public void buyerLogin(HttpServletRequest request, @RequestBody LoginReq temp) {
  54 + LoginReq req = super.getRequest(LoginReq.class);
  55 + try {
  56 + BeanValidator.validator(req);
  57 + LoginResp resp = userService.login(req);
  58 + super.sendSuccessResp(resp);
  59 + LOGGER.info(String.format("用户登陆:[ 设备id<%s>用户名<%s>用户id<%s>ip<%s> ]", req.getDeviceId(), req.getAccountName(),
  60 + req.getUserId(), request.getRemoteAddr()));
  61 + } catch (ServiceException e) {
  62 + LOGGER.error(
  63 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  64 + e);
  65 + super.sendError(e.getCode(), e.getMessage());
  66 + } catch (Exception e) {
  67 + LOGGER.error("用户登录失败:", e);
  68 + super.sendError(e.getMessage());
  69 + }
  70 + }
  71 +
  72 + /**
  73 + * 加密用户登录(加密)
  74 + *
  75 + * @createTime 2014年8月24日 下午10:55:03
  76 + * @author weili
  77 + */
  78 + @ApiOperation(value = "买家登录", httpMethod = "POST", response = LoginResp.class)
  79 + @RequestMapping(value = "/buyerLogins", method = RequestMethod.POST)
  80 + @ResponseBody
  81 + public void buyerLogins(@RequestBody LoginReq temp) {
  82 + LoginReq req = super.getRequest(LoginReq.class);
  83 + try {
  84 + BeanValidator.validator(req);
  85 + req.setPassword(decodeStr(req.getPassword()));
  86 + LoginResp resp = userService.login(req);
  87 + super.sendSuccessResp(resp);
  88 + } catch (ServiceException e) {
  89 + LOGGER.error(
  90 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  91 + e);
  92 + super.sendError(e.getCode(), e.getMessage());
  93 + } catch (Exception e) {
  94 + LOGGER.error("用户登录失败:", e);
  95 + super.sendError(e.getMessage());
  96 + }
  97 + }
  98 +
  99 + /**
  100 + * 验证码登录
  101 + *
  102 + * @createTime 2014年8月24日 下午10:55:03
  103 + * @author weili
  104 + */
  105 + @ApiOperation(value = "买家验证码登录", httpMethod = "POST", notes = "买家验证码登录", response = LoginResp.class)
  106 + @RequestMapping(value = "/loginForAuth", method = RequestMethod.POST)
  107 + @ResponseBody
  108 + public void loginForAuth(@RequestBody AuthLoginReq temp) {
  109 + AuthLoginReq req = super.getRequest(AuthLoginReq.class);
  110 + try {
  111 + BeanValidator.validator(req);
  112 + LoginResp resp = userService.authlogin(req);
  113 + super.sendSuccessResp(resp);
  114 + } catch (ServiceException e) {
  115 + LOGGER.error(
  116 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  117 + e);
  118 + super.sendError(e.getCode(), e.getMessage());
  119 + } catch (Exception e) {
  120 + LOGGER.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 =
  131 + /// "买家登录",response = LoginResp.class)
  132 + // @RequestMapping(value = "/checkUserInvalid",method = RequestMethod.POST)
  133 + // @ResponseBody
  134 + // public void checkUserInvalid(){
  135 + // CheckUserInvalidReq req= super.getRequest(CheckUserInvalidReq.class);
  136 + // try {
  137 + // CheckUserInvalidResp resp = userService.checkUserInvalid(req);
  138 + // super.sendSuccessResp(resp);
  139 + // } catch (ServiceException e){
  140 + // LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",
  141 + // e.getCode(), e.getMessage(), req.getUserId()), e);
  142 + // sendError(e.getCode(), e.getMessage());
  143 + // } catch (Exception e) {
  144 + // LOGGER.error("验证用户名失败:", e);
  145 + // super.sendError(e.getMessage());
  146 + // }
  147 + // }
  148 +
  149 + /**
  150 + * 发送验证码到手机
  151 + *
  152 + * @createTime 2014年8月24日 下午10:55:03
  153 + * @author weili
  154 + */
  155 + @ApiOperation(value = "发送验证码到手机", httpMethod = "POST", notes = "发送验证码到手机", response = SendVeriCodeResp.class)
  156 + @RequestMapping(value = "/sendAuthCode", method = RequestMethod.POST)
  157 + @ResponseBody
  158 + public void sendAuthCode(@RequestBody SendVeriCodeReq temp) {
  159 + SendVeriCodeReq req = super.getRequest(SendVeriCodeReq.class);
  160 + try {
  161 + BeanValidator.validator(req);
  162 + SendVeriCodeResp resp = userService.sendVeriCode(req);
  163 + super.sendSuccessResp(resp);
  164 + } catch (ServiceException e) {
  165 + LOGGER.error(
  166 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  167 + e);
  168 + sendError(e.getMessage());
  169 + } catch (Exception e) {
  170 + LOGGER.error("发送验证码失败:", e);
  171 + super.sendError(e.getMessage());
  172 + }
  173 + }
  174 +
  175 + /**
  176 + * 忘记密码:验证手机收到的验证码
  177 + *
  178 + * @createTime 2014年8月24日 下午10:55:03
  179 + * @author weili
  180 + */
  181 + @ApiOperation(value = "忘记密码:验证手机号和验证码", httpMethod = "POST", notes = "验证手机收到的验证码", response = CheckVeriCodeResp.class)
  182 + @RequestMapping(value = "/checkAuthCode", method = RequestMethod.POST)
  183 + @ResponseBody
  184 + public void checkAuthCode(@RequestBody CheckVeriCodeReq temp) {
  185 + CheckVeriCodeReq req = super.getRequest(CheckVeriCodeReq.class);
  186 + try {
  187 + BeanValidator.validator(req);
  188 + CheckVeriCodeResp resp = userService.checkVeriCode(req);
  189 + super.sendSuccessResp(resp);
  190 + } catch (ServiceException e) {
  191 + LOGGER.error(
  192 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  193 + e);
  194 + sendError(e.getCode(), e.getMessage());
  195 + } catch (Exception e) {
  196 + LOGGER.error("验证手机收到的验证码:", e);
  197 + super.sendError(e.getMessage());
  198 + }
  199 + }
  200 +
  201 + /**
  202 + * 找回密码-修改用户密码
  203 + *
  204 + * @createTime 2014年8月24日 下午10:55:03
  205 + * @author weili
  206 + */
  207 + @ApiOperation(value = "找回密码-设置用户新密码", httpMethod = "POST", response = SendVeriCodeResp.class)
  208 + @RequestMapping(value = "/modifyPwd", method = RequestMethod.POST)
  209 + @ResponseBody
  210 + public void modifyPwd(@RequestBody ModifyPwdReq temp) {
  211 + ModifyPwdReq req = super.getRequest(ModifyPwdReq.class);
  212 + ModifyPwdResp resp = null;
  213 + try {
  214 + BeanValidator.validator(req);
  215 + resp = userService.modifyPwd(req);
  216 + super.sendSuccessResp(resp);
  217 + } catch (ServiceException e) {
  218 + LOGGER.error(
  219 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  220 + e);
  221 + sendError(e.getCode(), e.getMessage());
  222 + } catch (Exception e) {
  223 + LOGGER.error("修改密码:", e);
  224 + super.sendError(e.getMessage());
  225 + }
  226 +
  227 + }
  228 +
  229 + /**
  230 + * 买家注册
  231 + *
  232 + * @createTime 2014年8月28日 下午3:41:02
  233 + * @author weili
  234 + */
  235 + @ApiOperation(value = "买家注册", httpMethod = "POST", response = UserRegisterResp.class)
  236 + @RequestMapping(value = "/buyerRegister", method = RequestMethod.POST)
  237 + @ResponseBody
  238 + public void buyerRegister(@RequestBody UserRegisterReq temp) {
  239 + UserRegisterReq req = super.getRequest(UserRegisterReq.class);
  240 + try {
  241 + BeanValidator.validator(req);
  242 + UserRegisterResp resp = userService.userRegister(req);
  243 + super.sendSuccessResp(resp);
  244 + } catch (ServiceException e) {
  245 + LOGGER.error(
  246 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  247 + e);
  248 + sendError(e.getCode(), e.getMessage());
  249 + } catch (Exception e) {
  250 + LOGGER.error("用户注册失败:", e);
  251 + super.sendError(e.getMessage());
  252 + }
  253 + }
  254 +
  255 + /**
  256 + * 买家注册(加密)
  257 + *
  258 + * @createTime 2014年8月28日 下午3:41:02
  259 + * @author weili
  260 + */
  261 + @ApiOperation(value = "买家注册", httpMethod = "POST", response = UserRegisterResp.class)
  262 + @RequestMapping(value = "/buyerRegisters", method = RequestMethod.POST)
  263 + @ResponseBody
  264 + public void buyerRegisters(@RequestBody UserRegisterReq temp) {
  265 + UserRegisterReq req = super.getRequest(UserRegisterReq.class);
  266 + try {
  267 + BeanValidator.validator(req);
  268 + req.setPassword(decodeStr(req.getPassword()));
  269 + UserRegisterResp resp = userService.userRegister(req);
  270 + super.sendSuccessResp(resp);
  271 + } catch (ServiceException e) {
  272 + LOGGER.error(
  273 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  274 + e);
  275 + sendError(e.getCode(), e.getMessage());
  276 + } catch (Exception e) {
  277 + LOGGER.error("用户注册失败:", e);
  278 + super.sendError(e.getMessage());
  279 + }
  280 + }
  281 +
  282 + /**
  283 + * 退出操作
  284 + *
  285 + * @createTime 2014年8月29日 上午9:30:10
  286 + * @author weili
  287 + */
  288 + @ApiOperation(value = "退出", httpMethod = "POST", response = LogoutResp.class)
  289 + @RequestMapping(value = "/logout", method = RequestMethod.POST)
  290 + @ResponseBody
  291 + public void logout(@RequestBody LogoutReq temp) {
  292 + LogoutReq req = super.getRequest(LogoutReq.class);
  293 + try {
  294 + if (Validator.isNull(req) || !Validator.isNumber(req.getUserId() + "")) {
  295 + throw new NullPointerException("参数传递错误");
  296 + }
  297 + LogoutResp resp = userService.logout(req);
  298 + super.sendSuccessResp(resp);
  299 + } catch (ServiceException e) {
  300 + LOGGER.error(
  301 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  302 + e);
  303 + sendError(e.getCode(), e.getMessage());
  304 + } catch (Exception e) {
  305 + LOGGER.error("用户退出失败:", e);
  306 + super.sendError(e.getMessage());
  307 + }
  308 + }
  309 +
  310 + /**
  311 + * 个人信息维护
  312 + *
  313 + * @createTime 2016年8月24日 下午10:55:03
  314 + * @author weili
  315 + */
  316 + @ApiOperation(value = "个人信息维护", httpMethod = "POST", response = UpdateUserInfoResp.class)
  317 + @RequestMapping(value = "/updateUserInfo", method = RequestMethod.POST)
  318 + @ResponseBody
  319 + public void updateUserInfo(@RequestBody UpdateUserInfoReq temp) {
  320 + UpdateUserInfoReq req = super.getRequest(UpdateUserInfoReq.class);
  321 + try {
  322 + UpdateUserInfoResp resp = userService.updateUserInfo(req);
  323 + super.sendSuccessResp(resp);
  324 + } catch (ServiceException e) {
  325 + LOGGER.error(
  326 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  327 + e);
  328 + sendError(e.getCode(), e.getMessage());
  329 + } catch (Exception e) {
  330 + LOGGER.error("个人信息维护:", e);
  331 + super.sendError(e.getMessage());
  332 + }
  333 +
  334 + }
  335 +
  336 + /**
  337 + * 查看储值卡余额
  338 + *
  339 + * @createTime 2016年8月24日 下午10:55:03
  340 + * @author weili
  341 + */
  342 + @ApiOperation(value = "查看储值卡余额", httpMethod = "POST", response = GetDepositCardAmountResp.class)
  343 + @RequestMapping(value = "/getDepositCardAmount", method = RequestMethod.POST)
  344 + @ResponseBody
  345 + public void getDepositCardAmount() {
  346 + GetDepositCardAmountReq req = super.getRequest(GetDepositCardAmountReq.class);
  347 + try {
  348 + GetDepositCardAmountResp resp = userService.getDepositCardAmount(req);
  349 + super.sendSuccessResp(resp);
  350 + } catch (ServiceException e) {
  351 + LOGGER.error(
  352 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  353 + e);
  354 + sendError(e.getCode(), e.getMessage());
  355 + } catch (Exception e) {
  356 + LOGGER.error("个人信息维护:", e);
  357 + super.sendError(e.getMessage());
  358 + }
  359 +
  360 + }
  361 +
  362 + /**
  363 + * 查询用户信息 GetUserInfoReq
  364 + */
  365 + @ApiOperation(value = "查询买家用户信息", httpMethod = "POST", response = GetDepositCardAmountResp.class)
  366 + @RequestMapping(value = "/getBuyerInfo", method = RequestMethod.POST)
  367 + @ResponseBody
  368 + public void getBuyerInfo() {
  369 + GetUserInfoReq req = getRequest(GetUserInfoReq.class);
  370 + try {
  371 + GetUserInfoResp resp = userService.getUserIntroduction(req);
  372 + super.sendSuccessResp(resp);
  373 + } catch (ServiceException e) {
  374 + LOGGER.error(
  375 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  376 + e);
  377 + sendError(e.getCode(), e.getMessage());
  378 + } catch (Exception e) {
  379 + LOGGER.error(String.format("ErrorMessage=%s,UserId=%s", e.getMessage(), req.getUserId()), e);
  380 + sendError(e.getMessage());
  381 + }
  382 + }
  383 +
  384 + /**
  385 + * 搜索买家用户信息 GetUserInfoReq
  386 + */
  387 + @ApiOperation(value = "搜索买家用户信息", httpMethod = "POST", response = SearchUserInfoResp.class)
  388 + @RequestMapping(value = "/searchBuyerInfo", method = RequestMethod.POST)
  389 + @ResponseBody
  390 + public void searchBuyerInfo(@RequestBody SearchUserInfoReq temp) {
  391 + SearchUserInfoReq req = getRequest(SearchUserInfoReq.class);
  392 + try {
  393 + SearchUserInfoResp resp = userService.searchBuyerInfo(req);
  394 + super.sendSuccessResp(resp);
  395 + } catch (ServiceException e) {
  396 + LOGGER.error(
  397 + String.format("Code=%s,ErrorMessage=%s,UserId=%s", e.getCode(), e.getMessage(), req.getUserId()),
  398 + e);
  399 + sendError(e.getCode(), e.getMessage());
  400 + } catch (Exception e) {
  401 + LOGGER.error(String.format("ErrorMessage=%s,UserId=%s", e.getMessage(), req.getUserId()), e);
  402 + sendError(e.getMessage());
  403 + }
  404 + }
  405 +
  406 + /**
  407 + * 查询极光推送号
  408 + *
  409 + * getRegisterNo
  410 + */
  411 + @ApiOperation(value = "查询极光推送号", httpMethod = "POST", response = GetRegisterNoResp.class)
  412 + @RequestMapping(value = "/getRegisterNo", method = RequestMethod.POST)
  413 + @ResponseBody
  414 + public void getRegisterNo(@RequestBody GetRegisterNoReq temp) {
  415 + GetRegisterNoReq req = getRequest(GetRegisterNoReq.class);
  416 + try {
  417 + GetRegisterNoResp resp = userService.getRegisterNo(req);
  418 + sendSuccessResp(resp);
  419 + } catch (ServiceException e) {
  420 + LOGGER.error(String.format("Code=%s,ErrorMessage=%s", e.getCode(), e.getMessage()), e);
  421 + sendError(e.getCode(), e.getMessage());
  422 + } catch (Exception e) {
  423 + LOGGER.error(String.format("ErrorMessage=%s", e.getMessage()), e);
  424 + sendError(e.getMessage());
  425 + }
  426 + }
  427 +
  428 + /**
  429 + * 批量查询极光推送号
  430 + *
  431 + * getNosByUserids
  432 + */
  433 + @ApiOperation(value = "批量查询极光推送号", httpMethod = "POST", response = GetRegisterNobyUidsResp.class)
  434 + @RequestMapping(value = "/getRegisterNobyUids", method = RequestMethod.POST)
  435 + @ResponseBody
  436 + public void getRegisterNobyUids(@RequestBody GetRegisterNobyUidsReq temp) {
  437 + GetRegisterNobyUidsReq req = getRequest(GetRegisterNobyUidsReq.class);
  438 + try {
  439 + GetRegisterNobyUidsResp resp = userService.getRegisterNobyUids(req);
  440 + sendSuccessResp(resp);
  441 + } catch (ServiceException e) {
  442 + LOGGER.error(String.format("Code=%s,ErrorMessage=%s", e.getCode(), e.getMessage()), e);
  443 + sendError(e.getCode(), e.getMessage());
  444 + } catch (Exception e) {
  445 + LOGGER.error(String.format("ErrorMessage=%s", e.getMessage()), e);
  446 + sendError(e.getMessage());
  447 + }
  448 + }
  449 +
  450 + public void getDeliveryAddress(@RequestBody GetDeliveryAddressReq temp) {
  451 + GetDeliveryAddressReq req = getRequest(GetDeliveryAddressReq.class);
  452 + try {
  453 + GetDeliveryAddressResp resp = userService.getDeliveryAddresses(req);
  454 + sendSuccessResp(resp);
  455 + } catch (ServiceException e) {
  456 + LOGGER.error(String.format("Code=%s,ErrorMessage=%s", e.getCode(), e.getMessage()), e);
  457 + sendError(e.getCode(), e.getMessage());
  458 + } catch (Exception e) {
  459 + LOGGER.error(String.format("ErrorMessage=%s", e.getMessage()), e);
  460 + sendError(e.getMessage());
  461 + }
  462 + }
  463 +
  464 + /// **
  465 + // * 查看交易记录
  466 + // * @createTime 2016年8月24日 下午10:55:03
  467 + // * @author weili
  468 + // */
  469 + // @ApiOperation(value = "查看交易记录", httpMethod = "POST" ,response =
  470 + /// TradeRecordResp.class)
  471 + // @RequestMapping(value = "/getTradeRecord",method = RequestMethod.POST)
  472 + // @ResponseBody
  473 + // public void getTradeRecord(){
  474 + // TradeRecordReq req = super.getRequest(TradeRecordReq.class);
  475 + // try {
  476 + // TradeRecordResp resp = userService.getTradeRecord(req);
  477 + // super.sendSuccessResp(resp);
  478 + // } catch (ServiceException e){
  479 + // LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",
  480 + // e.getCode(), e.getMessage(), req.getUserId()), e);
  481 + // sendError(e.getCode(), e.getMessage());
  482 + // } catch (Exception e) {
  483 + // LOGGER.error("查看交易记录:", e);
  484 + // super.sendError(e.getMessage());
  485 + // }
  486 + //
  487 + // }
  488 +
  489 + /// **
  490 + // * 验证用户账号是否可用
  491 + // * @createTime 2014年8月28日 下午3:41:02
  492 + // * @author weili
  493 + // */
  494 + // @RequestMapping("/checkAccountName")
  495 + // @ResponseBody
  496 + // public void checkAccountName(){
  497 + // CheckAccuntNameReq req = super.getRequest(CheckAccountNameReq.class);
  498 + // CheckAccountNameResp resp = null;
  499 + // try {
  500 + // if(!Validator.isNull(req) && !Validator.isNull(req.getAccountName())){
  501 + // resp = userService.checkAccountName(req);
  502 + // }
  503 + // else {
  504 + // resp = new CheckAccountNameResp();
  505 + // }
  506 + // super.sendSuccessResp(resp);
  507 + // } catch (ServiceException e){
  508 + // LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",
  509 + // e.getCode(), e.getMessage(), req.getUserId()), e);
  510 + // sendError(e.getCode(), e.getMessage());
  511 + // } catch (Exception e) {
  512 + // LOGGER.error("验证用户账号失败:", e);
  513 + // super.sendError(e.getMessage());
  514 + // }
  515 + // }
  516 + //
  517 +
  518 + /**
  519 + * 验证手机号是否已经被注册
  520 + *
  521 + * @createTime 2014年8月28日 下午3:41:02
  522 + * @author weili
  523 + */
  524 + // @RequestMapping("/checkMobile")
  525 + // @ResponseBody
  526 + // @ApiOperation(value = "", httpMethod = "POST")
  527 + // public void checkMobile(){
  528 + // CheckMobileReq req = super.getRequest(CheckMobileReq.class);
  529 + // CheckMobileResp resp = null;
  530 + // try {
  531 + // if(!Validator.isNull(req) && !Validator.isNull(req.getMobile())){
  532 + // resp = userService.checkMobile(req);
  533 + // } else {
  534 + // resp = new CheckMobileResp();
  535 + // }
  536 + // super.sendSuccessResp(resp);
  537 + // } catch (ServiceException e){
  538 + // LOGGER.error(String.format("Code=%s,ErrorMessage=%s,UserId=%s",
  539 + // e.getCode(), e.getMessage(), req.getUserId()), e);
  540 + // sendError(e.getCode(), e.getMessage());
  541 + // } catch (Exception e) {
  542 + // LOGGER.error("验证手机失败:", e);
  543 + // super.sendError(e.getMessage());
  544 + // }
  545 + // }
524 546
525 } 547 }