Commit d6fdb7878c61f42772e21c2d6a1eac82d0900fe6
1 parent
de4a1cd3
把常量配置放到manweb里面,增加缓存
Showing
30 changed files
with
483 additions
and
221 deletions
b2c-orders-client/pom.xml
@@ -86,50 +86,6 @@ | @@ -86,50 +86,6 @@ | ||
86 | <artifactId>http-request</artifactId> | 86 | <artifactId>http-request</artifactId> |
87 | </dependency> | 87 | </dependency> |
88 | <dependency> | 88 | <dependency> |
89 | - <groupId>org.slf4j</groupId> | ||
90 | - <artifactId>slf4j-api</artifactId> | ||
91 | - </dependency> | ||
92 | - <dependency> | ||
93 | - <groupId>com.fasterxml.jackson.core</groupId> | ||
94 | - <artifactId>jackson-core</artifactId> | ||
95 | - </dependency> | ||
96 | - | ||
97 | - <!-- Just the annotations; use this dependency if you want to attach annotations | ||
98 | - to classes without connecting them to the code. --> | ||
99 | - <dependency> | ||
100 | - <groupId>com.fasterxml.jackson.core</groupId> | ||
101 | - <artifactId>jackson-annotations</artifactId> | ||
102 | - </dependency> | ||
103 | - | ||
104 | - <!-- databinding; ObjectMapper, JsonNode and related classes are here --> | ||
105 | - <dependency> | ||
106 | - <groupId>com.fasterxml.jackson.core</groupId> | ||
107 | - <artifactId>jackson-databind</artifactId> | ||
108 | - </dependency> | ||
109 | - <!-- smile (binary JSON). Other artifacts in this group do other formats. --> | ||
110 | - <dependency> | ||
111 | - <groupId>com.fasterxml.jackson.dataformat</groupId> | ||
112 | - <artifactId>jackson-dataformat-smile</artifactId> | ||
113 | - </dependency> | ||
114 | - <dependency> | ||
115 | - <groupId>com.fasterxml.jackson.dataformat</groupId> | ||
116 | - <artifactId>jackson-dataformat-xml</artifactId> | ||
117 | - </dependency> | ||
118 | - <dependency> | ||
119 | - <groupId>org.codehaus.woodstox</groupId> | ||
120 | - <artifactId>woodstox-core-asl</artifactId> | ||
121 | - </dependency> | ||
122 | - <!-- JAX-RS provider --> | ||
123 | - <dependency> | ||
124 | - <groupId>com.fasterxml.jackson.jaxrs</groupId> | ||
125 | - <artifactId>jackson-jaxrs-json-provider</artifactId> | ||
126 | - </dependency> | ||
127 | - <!-- Support for JAX-B annotations as additional configuration --> | ||
128 | - <dependency> | ||
129 | - <groupId>com.fasterxml.jackson.module</groupId> | ||
130 | - <artifactId>jackson-module-jaxb-annotations</artifactId> | ||
131 | - </dependency> | ||
132 | - <dependency> | ||
133 | <groupId>junit</groupId> | 89 | <groupId>junit</groupId> |
134 | <artifactId>junit</artifactId> | 90 | <artifactId>junit</artifactId> |
135 | <scope>test</scope> | 91 | <scope>test</scope> |
b2c-orders-client/src/main/java/com/b2c/orders/enums/OrderStatus.java
@@ -93,6 +93,10 @@ public enum OrderStatus { | @@ -93,6 +93,10 @@ public enum OrderStatus { | ||
93 | public static boolean isRuningStatus(OrderStatus orderStatus) { | 93 | public static boolean isRuningStatus(OrderStatus orderStatus) { |
94 | return orderStatus.isRuningStatus; | 94 | return orderStatus.isRuningStatus; |
95 | } | 95 | } |
96 | + | ||
97 | + public static Map<Integer, OrderStatus> getInitMaps(){ | ||
98 | + return initMaps; | ||
99 | + } | ||
96 | 100 | ||
97 | @JsonValue | 101 | @JsonValue |
98 | public int getIndex() { | 102 | public int getIndex() { |
b2c-orders-commons/pom.xml
@@ -10,6 +10,54 @@ | @@ -10,6 +10,54 @@ | ||
10 | 10 | ||
11 | <dependencies> | 11 | <dependencies> |
12 | <dependency> | 12 | <dependency> |
13 | + <groupId>redis.clients</groupId> | ||
14 | + <artifactId>jedis</artifactId> | ||
15 | + </dependency> | ||
16 | + <dependency> | ||
17 | + <groupId>org.slf4j</groupId> | ||
18 | + <artifactId>slf4j-api</artifactId> | ||
19 | + </dependency> | ||
20 | + <dependency> | ||
21 | + <groupId>com.fasterxml.jackson.core</groupId> | ||
22 | + <artifactId>jackson-core</artifactId> | ||
23 | + </dependency> | ||
24 | + | ||
25 | + <!-- Just the annotations; use this dependency if you want to attach annotations | ||
26 | + to classes without connecting them to the code. --> | ||
27 | + <dependency> | ||
28 | + <groupId>com.fasterxml.jackson.core</groupId> | ||
29 | + <artifactId>jackson-annotations</artifactId> | ||
30 | + </dependency> | ||
31 | + | ||
32 | + <!-- databinding; ObjectMapper, JsonNode and related classes are here --> | ||
33 | + <dependency> | ||
34 | + <groupId>com.fasterxml.jackson.core</groupId> | ||
35 | + <artifactId>jackson-databind</artifactId> | ||
36 | + </dependency> | ||
37 | + <!-- smile (binary JSON). Other artifacts in this group do other formats. --> | ||
38 | + <dependency> | ||
39 | + <groupId>com.fasterxml.jackson.dataformat</groupId> | ||
40 | + <artifactId>jackson-dataformat-smile</artifactId> | ||
41 | + </dependency> | ||
42 | + <dependency> | ||
43 | + <groupId>com.fasterxml.jackson.dataformat</groupId> | ||
44 | + <artifactId>jackson-dataformat-xml</artifactId> | ||
45 | + </dependency> | ||
46 | + <dependency> | ||
47 | + <groupId>org.codehaus.woodstox</groupId> | ||
48 | + <artifactId>woodstox-core-asl</artifactId> | ||
49 | + </dependency> | ||
50 | + <!-- JAX-RS provider --> | ||
51 | + <dependency> | ||
52 | + <groupId>com.fasterxml.jackson.jaxrs</groupId> | ||
53 | + <artifactId>jackson-jaxrs-json-provider</artifactId> | ||
54 | + </dependency> | ||
55 | + <!-- Support for JAX-B annotations as additional configuration --> | ||
56 | + <dependency> | ||
57 | + <groupId>com.fasterxml.jackson.module</groupId> | ||
58 | + <artifactId>jackson-module-jaxb-annotations</artifactId> | ||
59 | + </dependency> | ||
60 | + <dependency> | ||
13 | <groupId>commons-lang</groupId> | 61 | <groupId>commons-lang</groupId> |
14 | <artifactId>commons-lang</artifactId> | 62 | <artifactId>commons-lang</artifactId> |
15 | </dependency> | 63 | </dependency> |
b2c-orders-commons/src/main/java/com/b2c/orders/commons/cache/CacheManager.java
0 → 100644
1 | +package com.b2c.orders.commons.cache; | ||
2 | + | ||
3 | +public interface CacheManager { | ||
4 | + | ||
5 | + <T> T get(String key, Class<T> type); | ||
6 | + | ||
7 | + void put(String key, Object value); | ||
8 | + | ||
9 | + void put(String key, Object value, int expire); | ||
10 | + | ||
11 | + void remove(String key); | ||
12 | + | ||
13 | +} | ||
0 | \ No newline at end of file | 14 | \ No newline at end of file |
b2c-orders-dao/src/main/java/com/b2c/orders/dao/cache/CacheManager.java renamed to b2c-orders-commons/src/main/java/com/b2c/orders/commons/cache/impl/CacheManagerBean.java
1 | -package com.b2c.orders.dao.cache; | 1 | +package com.b2c.orders.commons.cache.impl; |
2 | 2 | ||
3 | +import org.apache.commons.lang.StringUtils; | ||
3 | import org.slf4j.Logger; | 4 | import org.slf4j.Logger; |
4 | import org.slf4j.LoggerFactory; | 5 | import org.slf4j.LoggerFactory; |
5 | -import org.springframework.beans.factory.annotation.Autowired; | ||
6 | -import org.springframework.stereotype.Component; | ||
7 | -import org.springframework.util.StringUtils; | ||
8 | 6 | ||
9 | -import com.b2c.orders.dao.utils.JedisUtils; | 7 | +import com.b2c.orders.commons.cache.CacheManager; |
8 | +import com.b2c.orders.commons.utils.JedisUtils; | ||
10 | import com.fasterxml.jackson.annotation.JsonInclude.Include; | 9 | import com.fasterxml.jackson.annotation.JsonInclude.Include; |
11 | import com.fasterxml.jackson.databind.ObjectMapper; | 10 | import com.fasterxml.jackson.databind.ObjectMapper; |
12 | 11 | ||
13 | -@Component | ||
14 | -public class CacheManager { | 12 | +public class CacheManagerBean implements CacheManager { |
15 | 13 | ||
16 | - private static final Logger LOG = LoggerFactory.getLogger(CacheManager.class); | 14 | + private static final Logger LOG = LoggerFactory.getLogger(CacheManagerBean.class); |
17 | private static final ObjectMapper MAPPER = new ObjectMapper(); | 15 | private static final ObjectMapper MAPPER = new ObjectMapper(); |
18 | 16 | ||
19 | static { | 17 | static { |
20 | MAPPER.setSerializationInclusion(Include.NON_NULL); | 18 | MAPPER.setSerializationInclusion(Include.NON_NULL); |
21 | } | 19 | } |
22 | 20 | ||
23 | - @Autowired | ||
24 | private JedisUtils jedisUtils; | 21 | private JedisUtils jedisUtils; |
25 | 22 | ||
23 | + public CacheManagerBean(JedisUtils jedisUtils) { | ||
24 | + this.jedisUtils = jedisUtils; | ||
25 | + } | ||
26 | + | ||
27 | + /* | ||
28 | + * (non-Javadoc) | ||
29 | + * | ||
30 | + * @see com.b2c.orders.commons.cache.CacheManager#get(java.lang.String, | ||
31 | + * java.lang.Class) | ||
32 | + */ | ||
33 | + @Override | ||
26 | public <T> T get(String key, Class<T> type) { | 34 | public <T> T get(String key, Class<T> type) { |
27 | String value = this.jedisUtils.get(key); | 35 | String value = this.jedisUtils.get(key); |
28 | if (StringUtils.isEmpty(value)) { | 36 | if (StringUtils.isEmpty(value)) { |
@@ -36,6 +44,13 @@ public class CacheManager { | @@ -36,6 +44,13 @@ public class CacheManager { | ||
36 | } | 44 | } |
37 | } | 45 | } |
38 | 46 | ||
47 | + /* | ||
48 | + * (non-Javadoc) | ||
49 | + * | ||
50 | + * @see com.b2c.orders.commons.cache.CacheManager#put(java.lang.String, | ||
51 | + * java.lang.Object) | ||
52 | + */ | ||
53 | + @Override | ||
39 | public void put(String key, Object value) { | 54 | public void put(String key, Object value) { |
40 | try { | 55 | try { |
41 | this.jedisUtils.set(key, MAPPER.writeValueAsString(value)); | 56 | this.jedisUtils.set(key, MAPPER.writeValueAsString(value)); |
@@ -44,6 +59,13 @@ public class CacheManager { | @@ -44,6 +59,13 @@ public class CacheManager { | ||
44 | } | 59 | } |
45 | } | 60 | } |
46 | 61 | ||
62 | + /* | ||
63 | + * (non-Javadoc) | ||
64 | + * | ||
65 | + * @see com.b2c.orders.commons.cache.CacheManager#put(java.lang.String, | ||
66 | + * java.lang.Object, int) | ||
67 | + */ | ||
68 | + @Override | ||
47 | public void put(String key, Object value, int expire) { | 69 | public void put(String key, Object value, int expire) { |
48 | try { | 70 | try { |
49 | this.jedisUtils.set(key, MAPPER.writeValueAsString(value), expire); | 71 | this.jedisUtils.set(key, MAPPER.writeValueAsString(value), expire); |
@@ -52,6 +74,12 @@ public class CacheManager { | @@ -52,6 +74,12 @@ public class CacheManager { | ||
52 | } | 74 | } |
53 | } | 75 | } |
54 | 76 | ||
77 | + /* | ||
78 | + * (non-Javadoc) | ||
79 | + * | ||
80 | + * @see com.b2c.orders.commons.cache.CacheManager#remove(java.lang.String) | ||
81 | + */ | ||
82 | + @Override | ||
55 | public void remove(String key) { | 83 | public void remove(String key) { |
56 | this.jedisUtils.del(key); | 84 | this.jedisUtils.del(key); |
57 | } | 85 | } |
b2c-orders-commons/src/main/java/com/b2c/orders/commons/constant/Constant.java
@@ -2,28 +2,98 @@ package com.b2c.orders.commons.constant; | @@ -2,28 +2,98 @@ package com.b2c.orders.commons.constant; | ||
2 | 2 | ||
3 | public class Constant { | 3 | public class Constant { |
4 | 4 | ||
5 | - /** | ||
6 | - * 商家未接单,订单超时api接口地址 | ||
7 | - */ | ||
8 | - public static final String ORDER_TAKEN_TIMEOUT_CALL_URL = "http://orders.zandeapp.com/api/takenTimeout"; | ||
9 | - /** | ||
10 | - * 买家未付款,订单超时api接口 | ||
11 | - */ | ||
12 | - public static final String ORDER_PAYMENT_TIMEOUT_CALL_URL = "http://orders.zandeapp.com/api/paymentTimeout"; | ||
13 | - /** | ||
14 | - * 商家未接单,订单超时时间 | ||
15 | - */ | ||
16 | - public static final int ORDER_TAKEN_TIMEOUT_SECONDS = 2 * 60 * 60; | ||
17 | - /** | ||
18 | - * 买家未支付,订单超时时间 | ||
19 | - */ | ||
20 | - public static final int ORDER_PAYMENT_TIMEOUT_SECONDS = 24 * 60 * 60; | ||
21 | - /** | ||
22 | - * 买家超过{@link ORDER_CONFIRM_TIMEOUT_SECONDS}秒没有确认收货或者卖家超过{@link ORDER_CONFIRM_TIMEOUT_SECONDS}没有确认收款,dtms调用接口地址自动确认收货、收款 | ||
23 | - */ | ||
24 | - public static final String ORDER_CONFIRM_TIMEOUT_CALL_URL = "http://orders.zandeapp.com/api/dtmsConfirm"; | ||
25 | - /** | ||
26 | - * 买家超过这个时间(单位:秒)没有确认收货或者卖家超过这个时间(单位:秒)没有确认收款,dtms调用{@link ORDER_CONFIRM_TIMEOUT_CALL_URL}订单接口确认收货、收款 | ||
27 | - */ | ||
28 | - public static final int ORDER_CONFIRM_TIMEOUT_SECONDS = 24 * 60 * 60; | 5 | + // /** |
6 | + // * 商家未接单,订单超时api接口地址 | ||
7 | + // */ | ||
8 | + // public static final String ORDER_TAKEN_TIMEOUT_CALL_URL = | ||
9 | + // "http://orders.zandeapp.com/api/takenTimeout"; | ||
10 | + // /** | ||
11 | + // * 买家未付款,订单超时api接口 | ||
12 | + // */ | ||
13 | + // public static final String ORDER_PAYMENT_TIMEOUT_CALL_URL = | ||
14 | + // "http://orders.zandeapp.com/api/paymentTimeout"; | ||
15 | + // /** | ||
16 | + // * 商家未接单,订单超时时间 | ||
17 | + // */ | ||
18 | + // public static final int ORDER_TAKEN_TIMEOUT_SECONDS = 2 * 60 * 60; | ||
19 | + // /** | ||
20 | + // * 买家未支付,订单超时时间 | ||
21 | + // */ | ||
22 | + // public static final int ORDER_PAYMENT_TIMEOUT_SECONDS = 60; | ||
23 | + // /** | ||
24 | + // * 买家超过{@link ORDER_CONFIRM_TIMEOUT_SECONDS}秒没有确认收货或者卖家超过{@link | ||
25 | + // ORDER_CONFIRM_TIMEOUT_SECONDS}没有确认收款,dtms调用接口地址自动确认收货、收款 | ||
26 | + // */ | ||
27 | + // public static final String ORDER_CONFIRM_TIMEOUT_CALL_URL = | ||
28 | + // "http://orders.zandeapp.com/api/dtmsConfirm"; | ||
29 | + // /** | ||
30 | + // * 买家超过这个时间(单位:秒)没有确认收货或者卖家超过这个时间(单位:秒)没有确认收款,dtms调用{@link | ||
31 | + // ORDER_CONFIRM_TIMEOUT_CALL_URL}订单接口确认收货、收款 | ||
32 | + // */ | ||
33 | + // public static final int ORDER_CONFIRM_TIMEOUT_SECONDS = 24 * 60 * 60; | ||
34 | + | ||
35 | + private String domain; | ||
36 | + private String orderTakenTimeoutCallUrlKey; | ||
37 | + private String orderPaymentTimeoutCallUrlKey; | ||
38 | + private String orderTakenTimeoutSecondsKey; | ||
39 | + private String orderPaymentTimeoutSecondsKey; | ||
40 | + private String orderConfirmTimeoutCallUrlKey; | ||
41 | + private String orderConfirmTimeoutSecondsKey; | ||
42 | + | ||
43 | + public String getDomain() { | ||
44 | + return domain; | ||
45 | + } | ||
46 | + | ||
47 | + public void setDomain(String domain) { | ||
48 | + this.domain = domain; | ||
49 | + } | ||
50 | + | ||
51 | + public String getOrderTakenTimeoutCallUrlKey() { | ||
52 | + return orderTakenTimeoutCallUrlKey; | ||
53 | + } | ||
54 | + | ||
55 | + public void setOrderTakenTimeoutCallUrlKey(String orderTakenTimeoutCallUrlKey) { | ||
56 | + this.orderTakenTimeoutCallUrlKey = orderTakenTimeoutCallUrlKey; | ||
57 | + } | ||
58 | + | ||
59 | + public String getOrderPaymentTimeoutCallUrlKey() { | ||
60 | + return orderPaymentTimeoutCallUrlKey; | ||
61 | + } | ||
62 | + | ||
63 | + public void setOrderPaymentTimeoutCallUrlKey(String orderPaymentTimeoutCallUrlKey) { | ||
64 | + this.orderPaymentTimeoutCallUrlKey = orderPaymentTimeoutCallUrlKey; | ||
65 | + } | ||
66 | + | ||
67 | + public String getOrderTakenTimeoutSecondsKey() { | ||
68 | + return orderTakenTimeoutSecondsKey; | ||
69 | + } | ||
70 | + | ||
71 | + public void setOrderTakenTimeoutSecondsKey(String orderTakenTimeoutSecondsKey) { | ||
72 | + this.orderTakenTimeoutSecondsKey = orderTakenTimeoutSecondsKey; | ||
73 | + } | ||
74 | + | ||
75 | + public String getOrderPaymentTimeoutSecondsKey() { | ||
76 | + return orderPaymentTimeoutSecondsKey; | ||
77 | + } | ||
78 | + | ||
79 | + public void setOrderPaymentTimeoutSecondsKey(String orderPaymentTimeoutSecondsKey) { | ||
80 | + this.orderPaymentTimeoutSecondsKey = orderPaymentTimeoutSecondsKey; | ||
81 | + } | ||
82 | + | ||
83 | + public String getOrderConfirmTimeoutCallUrlKey() { | ||
84 | + return orderConfirmTimeoutCallUrlKey; | ||
85 | + } | ||
86 | + | ||
87 | + public void setOrderConfirmTimeoutCallUrlKey(String orderConfirmTimeoutCallUrlKey) { | ||
88 | + this.orderConfirmTimeoutCallUrlKey = orderConfirmTimeoutCallUrlKey; | ||
89 | + } | ||
90 | + | ||
91 | + public String getOrderConfirmTimeoutSecondsKey() { | ||
92 | + return orderConfirmTimeoutSecondsKey; | ||
93 | + } | ||
94 | + | ||
95 | + public void setOrderConfirmTimeoutSecondsKey(String orderConfirmTimeoutSecondsKey) { | ||
96 | + this.orderConfirmTimeoutSecondsKey = orderConfirmTimeoutSecondsKey; | ||
97 | + } | ||
98 | + | ||
29 | } | 99 | } |
b2c-orders-dao/src/main/java/com/b2c/orders/dao/utils/JedisUtils.java renamed to b2c-orders-commons/src/main/java/com/b2c/orders/commons/utils/JedisUtils.java
b2c-orders-dao/pom.xml
@@ -15,10 +15,6 @@ | @@ -15,10 +15,6 @@ | ||
15 | <version>${project.version}</version> | 15 | <version>${project.version}</version> |
16 | </dependency> | 16 | </dependency> |
17 | <dependency> | 17 | <dependency> |
18 | - <groupId>redis.clients</groupId> | ||
19 | - <artifactId>jedis</artifactId> | ||
20 | - </dependency> | ||
21 | - <dependency> | ||
22 | <groupId>com.b2c.website</groupId> | 18 | <groupId>com.b2c.website</groupId> |
23 | <artifactId>diligrp-website-util</artifactId> | 19 | <artifactId>diligrp-website-util</artifactId> |
24 | <exclusions> | 20 | <exclusions> |
b2c-orders-dao/src/main/java/com/b2c/orders/dao/impl/BuyerDaoBean.java
@@ -8,12 +8,12 @@ import com.b2c.myapp.common.api.shopBuyer.output.ShopBuyerKeyOutput; | @@ -8,12 +8,12 @@ import com.b2c.myapp.common.api.shopBuyer.output.ShopBuyerKeyOutput; | ||
8 | import com.b2c.myapp.common.utils.BaseOutput; | 8 | import com.b2c.myapp.common.utils.BaseOutput; |
9 | import com.b2c.myapp.sdk.MyAppClient; | 9 | import com.b2c.myapp.sdk.MyAppClient; |
10 | import com.b2c.myapp.sdk.service.BuyerInfoService; | 10 | import com.b2c.myapp.sdk.service.BuyerInfoService; |
11 | +import com.b2c.orders.commons.cache.impl.CacheManagerBean; | ||
11 | import com.b2c.orders.commons.exceptions.ApplicationException; | 12 | import com.b2c.orders.commons.exceptions.ApplicationException; |
12 | import com.b2c.orders.commons.exceptions.BuyerException; | 13 | import com.b2c.orders.commons.exceptions.BuyerException; |
13 | import com.b2c.orders.commons.exceptions.ShopBuyerException; | 14 | import com.b2c.orders.commons.exceptions.ShopBuyerException; |
14 | import com.b2c.orders.dao.BuyerDao; | 15 | import com.b2c.orders.dao.BuyerDao; |
15 | import com.b2c.orders.dao.ShopBuyerDao; | 16 | import com.b2c.orders.dao.ShopBuyerDao; |
16 | -import com.b2c.orders.dao.cache.CacheManager; | ||
17 | import com.b2c.orders.domain.Buyer; | 17 | import com.b2c.orders.domain.Buyer; |
18 | 18 | ||
19 | @Repository | 19 | @Repository |
@@ -22,7 +22,7 @@ public class BuyerDaoBean implements BuyerDao { | @@ -22,7 +22,7 @@ public class BuyerDaoBean implements BuyerDao { | ||
22 | private static final String BUYER_CACHE_KEY = "b2c_redis_buyer_"; | 22 | private static final String BUYER_CACHE_KEY = "b2c_redis_buyer_"; |
23 | 23 | ||
24 | @Autowired | 24 | @Autowired |
25 | - private CacheManager cacheManager; | 25 | + private CacheManagerBean cacheManager; |
26 | @Autowired | 26 | @Autowired |
27 | private MyAppClient myAppClient; | 27 | private MyAppClient myAppClient; |
28 | @Autowired | 28 | @Autowired |
b2c-orders-dao/src/main/java/com/b2c/orders/dao/impl/OrderDaoBean.java
@@ -3,11 +3,11 @@ package com.b2c.orders.dao.impl; | @@ -3,11 +3,11 @@ package com.b2c.orders.dao.impl; | ||
3 | import org.springframework.beans.factory.annotation.Autowired; | 3 | import org.springframework.beans.factory.annotation.Autowired; |
4 | import org.springframework.stereotype.Repository; | 4 | import org.springframework.stereotype.Repository; |
5 | 5 | ||
6 | +import com.b2c.orders.commons.cache.impl.CacheManagerBean; | ||
6 | import com.b2c.orders.commons.exceptions.ApplicationException; | 7 | import com.b2c.orders.commons.exceptions.ApplicationException; |
7 | import com.b2c.orders.commons.exceptions.OrderRepositoryException; | 8 | import com.b2c.orders.commons.exceptions.OrderRepositoryException; |
8 | import com.b2c.orders.dao.OrderDao; | 9 | import com.b2c.orders.dao.OrderDao; |
9 | import com.b2c.orders.dao.OrderItemDao; | 10 | import com.b2c.orders.dao.OrderItemDao; |
10 | -import com.b2c.orders.dao.cache.CacheManager; | ||
11 | import com.b2c.orders.domain.Order; | 11 | import com.b2c.orders.domain.Order; |
12 | import com.b2c.orders.domain.OrderItem; | 12 | import com.b2c.orders.domain.OrderItem; |
13 | import com.diligrp.website.util.dao.impl.BaseDaoImpl; | 13 | import com.diligrp.website.util.dao.impl.BaseDaoImpl; |
@@ -17,7 +17,7 @@ public class OrderDaoBean extends BaseDaoImpl<Order> implements OrderDao { | @@ -17,7 +17,7 @@ public class OrderDaoBean extends BaseDaoImpl<Order> implements OrderDao { | ||
17 | 17 | ||
18 | private static final String ORDER_CACHE_KEY = "b2c_redis_order_"; | 18 | private static final String ORDER_CACHE_KEY = "b2c_redis_order_"; |
19 | @Autowired | 19 | @Autowired |
20 | - private CacheManager cacheManager; | 20 | + private CacheManagerBean cacheManager; |
21 | @Autowired | 21 | @Autowired |
22 | private OrderItemDao orderItemDao; | 22 | private OrderItemDao orderItemDao; |
23 | 23 |
b2c-orders-dao/src/main/java/com/b2c/orders/dao/impl/SellerDaoBean.java
@@ -8,12 +8,12 @@ import com.b2c.myapp.common.api.shopBuyer.output.ShopBuyerKeyOutput; | @@ -8,12 +8,12 @@ import com.b2c.myapp.common.api.shopBuyer.output.ShopBuyerKeyOutput; | ||
8 | import com.b2c.myapp.common.utils.BaseOutput; | 8 | import com.b2c.myapp.common.utils.BaseOutput; |
9 | import com.b2c.myapp.sdk.MyAppClient; | 9 | import com.b2c.myapp.sdk.MyAppClient; |
10 | import com.b2c.myapp.sdk.service.SellerInfoService; | 10 | import com.b2c.myapp.sdk.service.SellerInfoService; |
11 | +import com.b2c.orders.commons.cache.impl.CacheManagerBean; | ||
11 | import com.b2c.orders.commons.exceptions.ApplicationException; | 12 | import com.b2c.orders.commons.exceptions.ApplicationException; |
12 | import com.b2c.orders.commons.exceptions.SellerException; | 13 | import com.b2c.orders.commons.exceptions.SellerException; |
13 | import com.b2c.orders.commons.exceptions.ShopBuyerException; | 14 | import com.b2c.orders.commons.exceptions.ShopBuyerException; |
14 | import com.b2c.orders.dao.SellerDao; | 15 | import com.b2c.orders.dao.SellerDao; |
15 | import com.b2c.orders.dao.ShopBuyerDao; | 16 | import com.b2c.orders.dao.ShopBuyerDao; |
16 | -import com.b2c.orders.dao.cache.CacheManager; | ||
17 | import com.b2c.orders.domain.Seller; | 17 | import com.b2c.orders.domain.Seller; |
18 | 18 | ||
19 | @Repository | 19 | @Repository |
@@ -24,7 +24,7 @@ public class SellerDaoBean implements SellerDao { | @@ -24,7 +24,7 @@ public class SellerDaoBean implements SellerDao { | ||
24 | @Autowired | 24 | @Autowired |
25 | private MyAppClient myAppClient; | 25 | private MyAppClient myAppClient; |
26 | @Autowired | 26 | @Autowired |
27 | - private CacheManager cacheManager; | 27 | + private CacheManagerBean cacheManager; |
28 | @Autowired | 28 | @Autowired |
29 | private ShopBuyerDao shopBuyerDao; | 29 | private ShopBuyerDao shopBuyerDao; |
30 | 30 |
b2c-orders-dao/src/main/java/com/b2c/orders/dao/impl/ShopBuyerDaoBean.java
@@ -7,10 +7,10 @@ import com.b2c.myapp.common.api.shopBuyer.output.ShopBuyerKeyOutput; | @@ -7,10 +7,10 @@ import com.b2c.myapp.common.api.shopBuyer.output.ShopBuyerKeyOutput; | ||
7 | import com.b2c.myapp.common.utils.BaseOutput; | 7 | import com.b2c.myapp.common.utils.BaseOutput; |
8 | import com.b2c.myapp.sdk.MyAppClient; | 8 | import com.b2c.myapp.sdk.MyAppClient; |
9 | import com.b2c.myapp.sdk.service.ShopBuyerService; | 9 | import com.b2c.myapp.sdk.service.ShopBuyerService; |
10 | +import com.b2c.orders.commons.cache.impl.CacheManagerBean; | ||
10 | import com.b2c.orders.commons.exceptions.ApplicationException; | 11 | import com.b2c.orders.commons.exceptions.ApplicationException; |
11 | import com.b2c.orders.commons.exceptions.ShopBuyerException; | 12 | import com.b2c.orders.commons.exceptions.ShopBuyerException; |
12 | import com.b2c.orders.dao.ShopBuyerDao; | 13 | import com.b2c.orders.dao.ShopBuyerDao; |
13 | -import com.b2c.orders.dao.cache.CacheManager; | ||
14 | 14 | ||
15 | @Repository | 15 | @Repository |
16 | public class ShopBuyerDaoBean implements ShopBuyerDao { | 16 | public class ShopBuyerDaoBean implements ShopBuyerDao { |
@@ -20,7 +20,7 @@ public class ShopBuyerDaoBean implements ShopBuyerDao { | @@ -20,7 +20,7 @@ public class ShopBuyerDaoBean implements ShopBuyerDao { | ||
20 | @Autowired | 20 | @Autowired |
21 | private MyAppClient myAppClient; | 21 | private MyAppClient myAppClient; |
22 | @Autowired | 22 | @Autowired |
23 | - private CacheManager cacheManager; | 23 | + private CacheManagerBean cacheManager; |
24 | 24 | ||
25 | @Override | 25 | @Override |
26 | public ShopBuyerKeyOutput findByShopBuyerId(Long buyerShopId) throws ShopBuyerException { | 26 | public ShopBuyerKeyOutput findByShopBuyerId(Long buyerShopId) throws ShopBuyerException { |
b2c-orders-dao/src/main/java/com/b2c/orders/dao/impl/ShopDaoBean.java
@@ -10,12 +10,12 @@ import com.b2c.myapp.common.api.shopBuyer.output.ShopBuyerKeyOutput; | @@ -10,12 +10,12 @@ import com.b2c.myapp.common.api.shopBuyer.output.ShopBuyerKeyOutput; | ||
10 | import com.b2c.myapp.common.utils.BaseOutput; | 10 | import com.b2c.myapp.common.utils.BaseOutput; |
11 | import com.b2c.myapp.sdk.MyAppClient; | 11 | import com.b2c.myapp.sdk.MyAppClient; |
12 | import com.b2c.myapp.sdk.service.ShopInfoService; | 12 | import com.b2c.myapp.sdk.service.ShopInfoService; |
13 | +import com.b2c.orders.commons.cache.impl.CacheManagerBean; | ||
13 | import com.b2c.orders.commons.exceptions.ApplicationException; | 14 | import com.b2c.orders.commons.exceptions.ApplicationException; |
14 | import com.b2c.orders.commons.exceptions.ShopBuyerException; | 15 | import com.b2c.orders.commons.exceptions.ShopBuyerException; |
15 | import com.b2c.orders.commons.exceptions.ShopException; | 16 | import com.b2c.orders.commons.exceptions.ShopException; |
16 | import com.b2c.orders.dao.ShopBuyerDao; | 17 | import com.b2c.orders.dao.ShopBuyerDao; |
17 | import com.b2c.orders.dao.ShopDao; | 18 | import com.b2c.orders.dao.ShopDao; |
18 | -import com.b2c.orders.dao.cache.CacheManager; | ||
19 | import com.b2c.orders.domain.Shop; | 19 | import com.b2c.orders.domain.Shop; |
20 | 20 | ||
21 | @Repository | 21 | @Repository |
@@ -25,7 +25,7 @@ public class ShopDaoBean implements ShopDao { | @@ -25,7 +25,7 @@ public class ShopDaoBean implements ShopDao { | ||
25 | private static final String SHOP_CACHE_KEY = "b2c_redis_shop_"; | 25 | private static final String SHOP_CACHE_KEY = "b2c_redis_shop_"; |
26 | 26 | ||
27 | @Autowired | 27 | @Autowired |
28 | - private CacheManager cacheManager; | 28 | + private CacheManagerBean cacheManager; |
29 | @Autowired | 29 | @Autowired |
30 | private ShopBuyerDao shopBuyerDao; | 30 | private ShopBuyerDao shopBuyerDao; |
31 | @Autowired | 31 | @Autowired |
b2c-orders-dao/src/main/resources/spring-redis.xml
@@ -34,7 +34,7 @@ | @@ -34,7 +34,7 @@ | ||
34 | <constructor-arg index="1" value="${redis.port}" /> | 34 | <constructor-arg index="1" value="${redis.port}" /> |
35 | </bean> | 35 | </bean> |
36 | 36 | ||
37 | - <bean id="jedisUtils" class="com.b2c.orders.dao.utils.JedisUtils"> | 37 | + <bean id="jedisUtils" class="com.b2c.orders.commons.utils.JedisUtils"> |
38 | <property name="poolConfig" ref="jedisPoolConfig" /> | 38 | <property name="poolConfig" ref="jedisPoolConfig" /> |
39 | <property name="shardInfo" ref="jedisShardInfo" /> | 39 | <property name="shardInfo" ref="jedisShardInfo" /> |
40 | </bean> | 40 | </bean> |
b2c-orders-dao/src/main/resources/sqlmap/OrderMapper.xml
@@ -264,7 +264,7 @@ | @@ -264,7 +264,7 @@ | ||
264 | </update> | 264 | </update> |
265 | 265 | ||
266 | <select id="countByCondition" parameterType="Query" resultType="Integer"> | 266 | <select id="countByCondition" parameterType="Query" resultType="Integer"> |
267 | - SELECT count(1) FROM t_order | 267 | + SELECT count(1) FROM t_order t1 |
268 | <include refid="joinOrderItem" /> | 268 | <include refid="joinOrderItem" /> |
269 | where 1=1 | 269 | where 1=1 |
270 | <include refid="selectCondition" /> | 270 | <include refid="selectCondition" /> |
b2c-orders-domain/src/main/java/com/b2c/orders/domain/Order.java
@@ -208,8 +208,8 @@ public class Order extends BaseDomain { | @@ -208,8 +208,8 @@ public class Order extends BaseDomain { | ||
208 | * @throws OrderException | 208 | * @throws OrderException |
209 | */ | 209 | */ |
210 | public void takenTimeout() throws OrderException { | 210 | public void takenTimeout() throws OrderException { |
211 | - if (this.orderStatus.equals(OrderStatus.PendingTake)) { | ||
212 | - throw new OrderException(ApplicationException.DATA_EXCEPTION, "当前状态不能设置支付超时"); | 211 | + if (!this.orderStatus.equals(OrderStatus.PendingTake)) { |
212 | + throw new OrderException(ApplicationException.DATA_EXCEPTION, "当前状态不能设置接单超时"); | ||
213 | } | 213 | } |
214 | this.orderStatus = OrderStatus.TakenTimeout; | 214 | this.orderStatus = OrderStatus.TakenTimeout; |
215 | } | 215 | } |
@@ -220,7 +220,7 @@ public class Order extends BaseDomain { | @@ -220,7 +220,7 @@ public class Order extends BaseDomain { | ||
220 | * @throws OrderException | 220 | * @throws OrderException |
221 | */ | 221 | */ |
222 | public void paymentTimeout() throws OrderException { | 222 | public void paymentTimeout() throws OrderException { |
223 | - if (this.orderStatus.equals(OrderStatus.PendingPayment)) { | 223 | + if (!this.orderStatus.equals(OrderStatus.PendingPayment)) { |
224 | throw new OrderException(ApplicationException.DATA_EXCEPTION, "当前状态不能设置接单超时"); | 224 | throw new OrderException(ApplicationException.DATA_EXCEPTION, "当前状态不能设置接单超时"); |
225 | } | 225 | } |
226 | this.orderStatus = OrderStatus.PaymentTimeout; | 226 | this.orderStatus = OrderStatus.PaymentTimeout; |
b2c-orders-domain/src/main/java/com/b2c/orders/domain/OrderLog.java
@@ -24,7 +24,10 @@ public class OrderLog extends BaseDomain { | @@ -24,7 +24,10 @@ public class OrderLog extends BaseDomain { | ||
24 | private OrderStatus previousStatus; | 24 | private OrderStatus previousStatus; |
25 | private OrderStatus currentStatus; | 25 | private OrderStatus currentStatus; |
26 | private Timestamp actionTime; | 26 | private Timestamp actionTime; |
27 | - private Long userId; | 27 | + /** |
28 | + * 0表示dtms操作订单 | ||
29 | + */ | ||
30 | + private Long userId = 0L; | ||
28 | private UserType userType; | 31 | private UserType userType; |
29 | private Long orderId; | 32 | private Long orderId; |
30 | private String description; | 33 | private String description; |
b2c-orders-manager/src/main/java/com/b2c/orders/manager/impl/OrderManagerBean.java
@@ -345,7 +345,7 @@ public class OrderManagerBean implements OrderManager { | @@ -345,7 +345,7 @@ public class OrderManagerBean implements OrderManager { | ||
345 | OrderLog log = new OrderLog(); | 345 | OrderLog log = new OrderLog(); |
346 | log.setPreviousStatus(po.getOrderStatus()); | 346 | log.setPreviousStatus(po.getOrderStatus()); |
347 | po.cancel(); | 347 | po.cancel(); |
348 | - log.setPreviousStatus(po.getOrderStatus()); | 348 | + log.setCurrentStatus(po.getOrderStatus()); |
349 | this.orderDao.update(po); | 349 | this.orderDao.update(po); |
350 | log.setAction(Action.BUYER_CANCEL); | 350 | log.setAction(Action.BUYER_CANCEL); |
351 | log.setOrderId(orderId); | 351 | log.setOrderId(orderId); |
@@ -366,15 +366,11 @@ public class OrderManagerBean implements OrderManager { | @@ -366,15 +366,11 @@ public class OrderManagerBean implements OrderManager { | ||
366 | throw new OrderRepositoryException(OrderRepositoryException.ENTITY_NOT_FOUND, | 366 | throw new OrderRepositoryException(OrderRepositoryException.ENTITY_NOT_FOUND, |
367 | String.format("未找到id为%s的订单", orderId)); | 367 | String.format("未找到id为%s的订单", orderId)); |
368 | } | 368 | } |
369 | - try { | ||
370 | - po.takenTimeout(); | ||
371 | - } catch (OrderException e) { | ||
372 | - throw e; | ||
373 | - } | ||
374 | OrderLog log = new OrderLog(); | 369 | OrderLog log = new OrderLog(); |
375 | log.setPreviousStatus(po.getOrderStatus()); | 370 | log.setPreviousStatus(po.getOrderStatus()); |
371 | + po.takenTimeout(); | ||
372 | + log.setCurrentStatus(po.getOrderStatus()); | ||
376 | this.orderDao.update(po); | 373 | this.orderDao.update(po); |
377 | - log.setPreviousStatus(po.getOrderStatus()); | ||
378 | log.setAction(Action.TAKEN_TIMEOUT); | 374 | log.setAction(Action.TAKEN_TIMEOUT); |
379 | log.setDescription("商家接单超时"); | 375 | log.setDescription("商家接单超时"); |
380 | log.setOrderId(orderId); | 376 | log.setOrderId(orderId); |
@@ -389,15 +385,11 @@ public class OrderManagerBean implements OrderManager { | @@ -389,15 +385,11 @@ public class OrderManagerBean implements OrderManager { | ||
389 | throw new OrderRepositoryException(OrderRepositoryException.ENTITY_NOT_FOUND, | 385 | throw new OrderRepositoryException(OrderRepositoryException.ENTITY_NOT_FOUND, |
390 | String.format("未找到id为%s的订单", orderId)); | 386 | String.format("未找到id为%s的订单", orderId)); |
391 | } | 387 | } |
392 | - try { | ||
393 | - po.paymentTimeout(); | ||
394 | - } catch (OrderException e) { | ||
395 | - throw e; | ||
396 | - } | ||
397 | OrderLog log = new OrderLog(); | 388 | OrderLog log = new OrderLog(); |
398 | log.setPreviousStatus(po.getOrderStatus()); | 389 | log.setPreviousStatus(po.getOrderStatus()); |
390 | + po.paymentTimeout(); | ||
391 | + log.setCurrentStatus(po.getOrderStatus()); | ||
399 | this.orderDao.update(po); | 392 | this.orderDao.update(po); |
400 | - log.setPreviousStatus(po.getOrderStatus()); | ||
401 | log.setAction(Action.PAYMENT_TIMEOUT); | 393 | log.setAction(Action.PAYMENT_TIMEOUT); |
402 | log.setDescription("买家付款超时"); | 394 | log.setDescription("买家付款超时"); |
403 | log.setOrderId(orderId); | 395 | log.setOrderId(orderId); |
@@ -412,15 +404,11 @@ public class OrderManagerBean implements OrderManager { | @@ -412,15 +404,11 @@ public class OrderManagerBean implements OrderManager { | ||
412 | throw new OrderRepositoryException(OrderRepositoryException.ENTITY_NOT_FOUND, | 404 | throw new OrderRepositoryException(OrderRepositoryException.ENTITY_NOT_FOUND, |
413 | String.format("未找到id为%s的订单", orderId)); | 405 | String.format("未找到id为%s的订单", orderId)); |
414 | } | 406 | } |
415 | - try { | ||
416 | - po.confirm(); | ||
417 | - } catch (OrderException e) { | ||
418 | - throw e; | ||
419 | - } | ||
420 | OrderLog log = new OrderLog(); | 407 | OrderLog log = new OrderLog(); |
421 | log.setPreviousStatus(po.getOrderStatus()); | 408 | log.setPreviousStatus(po.getOrderStatus()); |
409 | + po.confirm(); | ||
410 | + log.setCurrentStatus(po.getOrderStatus()); | ||
422 | this.orderDao.update(po); | 411 | this.orderDao.update(po); |
423 | - log.setPreviousStatus(po.getOrderStatus()); | ||
424 | log.setAction(Action.SYSTEM_CONFIRM); | 412 | log.setAction(Action.SYSTEM_CONFIRM); |
425 | log.setDescription("买家确认收货超时或商家确认收款超时,系统自动确认收货、收款"); | 413 | log.setDescription("买家确认收货超时或商家确认收款超时,系统自动确认收货、收款"); |
426 | log.setOrderId(orderId); | 414 | log.setOrderId(orderId); |
b2c-orders-rpc/pom.xml
@@ -10,6 +10,10 @@ | @@ -10,6 +10,10 @@ | ||
10 | 10 | ||
11 | <dependencies> | 11 | <dependencies> |
12 | <dependency> | 12 | <dependency> |
13 | + <groupId>com.b2c.website.web</groupId> | ||
14 | + <artifactId>diligrp-website-api</artifactId> | ||
15 | + </dependency> | ||
16 | + <dependency> | ||
13 | <groupId>${project.groupId}</groupId> | 17 | <groupId>${project.groupId}</groupId> |
14 | <artifactId>b2c-orders-commons</artifactId> | 18 | <artifactId>b2c-orders-commons</artifactId> |
15 | <version>${project.parent.version}</version> | 19 | <version>${project.parent.version}</version> |
@@ -17,7 +21,6 @@ | @@ -17,7 +21,6 @@ | ||
17 | <dependency> | 21 | <dependency> |
18 | <groupId>com.b2c.dtms</groupId> | 22 | <groupId>com.b2c.dtms</groupId> |
19 | <artifactId>dtms-client</artifactId> | 23 | <artifactId>dtms-client</artifactId> |
20 | - <version>0.0.1-SNAPSHOT</version> | ||
21 | </dependency> | 24 | </dependency> |
22 | <dependency> | 25 | <dependency> |
23 | <groupId>org.springframework</groupId> | 26 | <groupId>org.springframework</groupId> |
b2c-orders-rpc/src/main/java/com/b2c/orders/rpc/SystemConfigRPCService.java
0 → 100644
1 | +package com.b2c.orders.rpc; | ||
2 | + | ||
3 | +public interface SystemConfigRPCService { | ||
4 | + | ||
5 | + String getOrderTakenTimeoutCallUrl(); | ||
6 | + | ||
7 | + String getOrderPaymentTimeoutCallUrl(); | ||
8 | + | ||
9 | + String getOrderConfirmTimeoutCallUrl(); | ||
10 | + | ||
11 | + int getOrderTakenTimeoutSeconds(); | ||
12 | + | ||
13 | + int getOrderPaymentTimeoutSeconds(); | ||
14 | + | ||
15 | + int getOrderConfirmTimeoutSeconds(); | ||
16 | + | ||
17 | +} |
b2c-orders-rpc/src/main/java/com/b2c/orders/rpc/impl/DtmsRPCServiceBean.java
@@ -4,17 +4,19 @@ import com.b2c.dtms.client.DtmsClient; | @@ -4,17 +4,19 @@ import com.b2c.dtms.client.DtmsClient; | ||
4 | import com.b2c.dtms.client.domain.dto.request.DtmsProduceRequestDto; | 4 | import com.b2c.dtms.client.domain.dto.request.DtmsProduceRequestDto; |
5 | import com.b2c.dtms.client.domain.dto.response.DtmsResponseDto; | 5 | import com.b2c.dtms.client.domain.dto.response.DtmsResponseDto; |
6 | import com.b2c.dtms.common.enums.dtms.DtmsMessageType; | 6 | import com.b2c.dtms.common.enums.dtms.DtmsMessageType; |
7 | -import com.b2c.orders.commons.constant.Constant; | ||
8 | import com.b2c.orders.commons.exceptions.ApplicationException; | 7 | import com.b2c.orders.commons.exceptions.ApplicationException; |
9 | import com.b2c.orders.rpc.DtmsRPCService; | 8 | import com.b2c.orders.rpc.DtmsRPCService; |
9 | +import com.b2c.orders.rpc.SystemConfigRPCService; | ||
10 | import com.b2c.orders.rpc.exception.DtmsRPCException; | 10 | import com.b2c.orders.rpc.exception.DtmsRPCException; |
11 | 11 | ||
12 | public class DtmsRPCServiceBean implements DtmsRPCService { | 12 | public class DtmsRPCServiceBean implements DtmsRPCService { |
13 | 13 | ||
14 | private DtmsClient dtmsClient; | 14 | private DtmsClient dtmsClient; |
15 | + private SystemConfigRPCService systemConfigService; | ||
15 | 16 | ||
16 | - public DtmsRPCServiceBean(String baseUrl, String token) { | 17 | + public DtmsRPCServiceBean(String baseUrl, String token, SystemConfigRPCService systemConfigService) { |
17 | this.dtmsClient = new DtmsClient(baseUrl, token); | 18 | this.dtmsClient = new DtmsClient(baseUrl, token); |
19 | + this.systemConfigService = systemConfigService; | ||
18 | } | 20 | } |
19 | 21 | ||
20 | @Override | 22 | @Override |
@@ -29,8 +31,8 @@ public class DtmsRPCServiceBean implements DtmsRPCService { | @@ -29,8 +31,8 @@ public class DtmsRPCServiceBean implements DtmsRPCService { | ||
29 | public void sendOrderPayTimeoutDtms(Long orderId) throws DtmsRPCException { | 31 | public void sendOrderPayTimeoutDtms(Long orderId) throws DtmsRPCException { |
30 | DtmsProduceRequestDto request = new DtmsProduceRequestDto(); | 32 | DtmsProduceRequestDto request = new DtmsProduceRequestDto(); |
31 | request.setBizId(orderId.toString()); | 33 | request.setBizId(orderId.toString()); |
32 | - request.setCallUrl(Constant.ORDER_PAYMENT_TIMEOUT_CALL_URL); | ||
33 | - request.setDelaySeconds(Constant.ORDER_PAYMENT_TIMEOUT_SECONDS); | 34 | + request.setCallUrl(this.systemConfigService.getOrderPaymentTimeoutCallUrl()); |
35 | + request.setDelaySeconds(this.systemConfigService.getOrderPaymentTimeoutSeconds()); | ||
34 | request.setType(DtmsMessageType.Timer.code()); | 36 | request.setType(DtmsMessageType.Timer.code()); |
35 | this.produceDtmsMessage(request); | 37 | this.produceDtmsMessage(request); |
36 | } | 38 | } |
@@ -39,8 +41,8 @@ public class DtmsRPCServiceBean implements DtmsRPCService { | @@ -39,8 +41,8 @@ public class DtmsRPCServiceBean implements DtmsRPCService { | ||
39 | public void sendOrderConfirmDtms(Long id) throws DtmsRPCException { | 41 | public void sendOrderConfirmDtms(Long id) throws DtmsRPCException { |
40 | DtmsProduceRequestDto request = new DtmsProduceRequestDto(); | 42 | DtmsProduceRequestDto request = new DtmsProduceRequestDto(); |
41 | request.setBizId(id.toString()); | 43 | request.setBizId(id.toString()); |
42 | - request.setCallUrl(Constant.ORDER_CONFIRM_TIMEOUT_CALL_URL); | ||
43 | - request.setDelaySeconds(Constant.ORDER_CONFIRM_TIMEOUT_SECONDS); | 44 | + request.setCallUrl(this.systemConfigService.getOrderConfirmTimeoutCallUrl()); |
45 | + request.setDelaySeconds(this.systemConfigService.getOrderConfirmTimeoutSeconds()); | ||
44 | request.setType(DtmsMessageType.Timer.code()); | 46 | request.setType(DtmsMessageType.Timer.code()); |
45 | this.produceDtmsMessage(request); | 47 | this.produceDtmsMessage(request); |
46 | } | 48 | } |
@@ -49,8 +51,8 @@ public class DtmsRPCServiceBean implements DtmsRPCService { | @@ -49,8 +51,8 @@ public class DtmsRPCServiceBean implements DtmsRPCService { | ||
49 | public void sendOrderTakenTimeoutDtms(Long orderId) throws DtmsRPCException { | 51 | public void sendOrderTakenTimeoutDtms(Long orderId) throws DtmsRPCException { |
50 | DtmsProduceRequestDto request = new DtmsProduceRequestDto(); | 52 | DtmsProduceRequestDto request = new DtmsProduceRequestDto(); |
51 | request.setBizId(orderId.toString()); | 53 | request.setBizId(orderId.toString()); |
52 | - request.setCallUrl(Constant.ORDER_TAKEN_TIMEOUT_CALL_URL); | ||
53 | - request.setDelaySeconds(Constant.ORDER_TAKEN_TIMEOUT_SECONDS); | 54 | + request.setCallUrl(this.systemConfigService.getOrderTakenTimeoutCallUrl()); |
55 | + request.setDelaySeconds(this.systemConfigService.getOrderTakenTimeoutSeconds()); | ||
54 | request.setType(DtmsMessageType.Timer.code()); | 56 | request.setType(DtmsMessageType.Timer.code()); |
55 | this.produceDtmsMessage(request); | 57 | this.produceDtmsMessage(request); |
56 | } | 58 | } |
b2c-orders-rpc/src/main/java/com/b2c/orders/rpc/impl/SystemConfigRPCServiceBean.java
0 → 100644
1 | +package com.b2c.orders.rpc.impl; | ||
2 | + | ||
3 | +import org.springframework.util.StringUtils; | ||
4 | + | ||
5 | +import com.b2c.orders.commons.cache.CacheManager; | ||
6 | +import com.b2c.orders.commons.constant.Constant; | ||
7 | +import com.b2c.orders.rpc.SystemConfigRPCService; | ||
8 | +import com.diligrp.website.web.interfaces.domain.output.BaseResp; | ||
9 | +import com.diligrp.website.web.interfaces.domain.output.SysConfigResp; | ||
10 | +import com.diligrp.website.web.interfaces.service.SysConfigService; | ||
11 | + | ||
12 | +public class SystemConfigRPCServiceBean implements SystemConfigRPCService { | ||
13 | + | ||
14 | + private SysConfigService sysConfigService; | ||
15 | + private Constant constant; | ||
16 | + private CacheManager cacheManager; | ||
17 | + private static final String KEY_PREFIX = "b2c_"; | ||
18 | + | ||
19 | + public SystemConfigRPCServiceBean(SysConfigService sysConfigService, Constant constant, CacheManager cacheManager) { | ||
20 | + this.sysConfigService = sysConfigService; | ||
21 | + this.constant = constant; | ||
22 | + this.cacheManager = cacheManager; | ||
23 | + } | ||
24 | + | ||
25 | + @Override | ||
26 | + public String getOrderTakenTimeoutCallUrl() { | ||
27 | + String key = KEY_PREFIX + this.constant.getOrderTakenTimeoutCallUrlKey(); | ||
28 | + String url = this.cacheManager.get(key, String.class); | ||
29 | + if (!StringUtils.isEmpty(url)) { | ||
30 | + return url; | ||
31 | + } | ||
32 | + SysConfigResp response = this.sysConfigService.getSysConfig(this.constant.getOrderTakenTimeoutCallUrlKey()); | ||
33 | + if (response == null) { | ||
34 | + throw new RuntimeException("获取接单超时dtms调用地址失败"); | ||
35 | + } | ||
36 | + if (response.getCode() != BaseResp.CODE_SUCCESS) { | ||
37 | + throw new RuntimeException("获取接单超时dtms调用地址失败"); | ||
38 | + } | ||
39 | + StringBuilder sb = new StringBuilder("http://").append(this.constant.getDomain()).append("/") | ||
40 | + .append(response.getValue()); | ||
41 | + url = sb.toString(); | ||
42 | + this.cacheManager.put(key, url); | ||
43 | + return url; | ||
44 | + } | ||
45 | + | ||
46 | + @Override | ||
47 | + public String getOrderPaymentTimeoutCallUrl() { | ||
48 | + String key = KEY_PREFIX + this.constant.getOrderPaymentTimeoutCallUrlKey(); | ||
49 | + String url = this.cacheManager.get(key, String.class); | ||
50 | + if (!StringUtils.isEmpty(url)) { | ||
51 | + return url; | ||
52 | + } | ||
53 | + SysConfigResp response = this.sysConfigService.getSysConfig(this.constant.getOrderPaymentTimeoutCallUrlKey()); | ||
54 | + if (response == null) { | ||
55 | + throw new RuntimeException("获取支付超时dtms调用地址失败"); | ||
56 | + } | ||
57 | + if (response.getCode() != BaseResp.CODE_SUCCESS) { | ||
58 | + throw new RuntimeException("获取支付超时dtms调用地址失败"); | ||
59 | + } | ||
60 | + StringBuilder sb = new StringBuilder("http://").append(this.constant.getDomain()).append("/") | ||
61 | + .append(response.getValue()); | ||
62 | + url = sb.toString(); | ||
63 | + this.cacheManager.put(key, url); | ||
64 | + return url; | ||
65 | + } | ||
66 | + | ||
67 | + @Override | ||
68 | + public String getOrderConfirmTimeoutCallUrl() { | ||
69 | + String key = KEY_PREFIX + this.constant.getOrderConfirmTimeoutCallUrlKey(); | ||
70 | + String url = this.cacheManager.get(key, String.class); | ||
71 | + if (!StringUtils.isEmpty(url)) { | ||
72 | + return url; | ||
73 | + } | ||
74 | + SysConfigResp response = this.sysConfigService.getSysConfig(this.constant.getOrderConfirmTimeoutCallUrlKey()); | ||
75 | + if (response == null) { | ||
76 | + throw new RuntimeException("获取订单确认超时dtms调用地址失败"); | ||
77 | + } | ||
78 | + if (response.getCode() != BaseResp.CODE_SUCCESS) { | ||
79 | + throw new RuntimeException("获取订单确认超时dtms调用地址失败"); | ||
80 | + } | ||
81 | + StringBuilder sb = new StringBuilder("http://").append(this.constant.getDomain()).append("/") | ||
82 | + .append(response.getValue()); | ||
83 | + url = sb.toString(); | ||
84 | + this.cacheManager.put(key, url); | ||
85 | + return url; | ||
86 | + } | ||
87 | + | ||
88 | + @Override | ||
89 | + public int getOrderTakenTimeoutSeconds() { | ||
90 | + String key = KEY_PREFIX + this.constant.getOrderTakenTimeoutSecondsKey(); | ||
91 | + Integer value = this.cacheManager.get(key, Integer.class); | ||
92 | + if (value != null && value > 0) { | ||
93 | + return Integer.valueOf(value); | ||
94 | + } | ||
95 | + SysConfigResp response = this.sysConfigService.getSysConfig(this.constant.getOrderTakenTimeoutSecondsKey()); | ||
96 | + if (response == null) { | ||
97 | + throw new RuntimeException("获取订单确认超时dtms调用地址失败"); | ||
98 | + } | ||
99 | + if (response.getCode() != BaseResp.CODE_SUCCESS) { | ||
100 | + throw new RuntimeException("获取订单确认超时dtms调用地址失败"); | ||
101 | + } | ||
102 | + value = Integer.valueOf(response.getValue()); | ||
103 | + this.cacheManager.put(key, value); | ||
104 | + return value; | ||
105 | + } | ||
106 | + | ||
107 | + @Override | ||
108 | + public int getOrderPaymentTimeoutSeconds() { | ||
109 | + String key = KEY_PREFIX + this.constant.getOrderPaymentTimeoutSecondsKey(); | ||
110 | + Integer value = this.cacheManager.get(key, Integer.class); | ||
111 | + if (value != null && value > 0) { | ||
112 | + return Integer.valueOf(value); | ||
113 | + } | ||
114 | + SysConfigResp response = this.sysConfigService.getSysConfig(this.constant.getOrderPaymentTimeoutSecondsKey()); | ||
115 | + if (response == null) { | ||
116 | + throw new RuntimeException("获取订单确认超时dtms调用地址失败"); | ||
117 | + } | ||
118 | + if (response.getCode() != BaseResp.CODE_SUCCESS) { | ||
119 | + throw new RuntimeException("获取订单确认超时dtms调用地址失败"); | ||
120 | + } | ||
121 | + value = Integer.valueOf(response.getValue()); | ||
122 | + this.cacheManager.put(key, value); | ||
123 | + return value; | ||
124 | + } | ||
125 | + | ||
126 | + @Override | ||
127 | + public int getOrderConfirmTimeoutSeconds() { | ||
128 | + String key = KEY_PREFIX + this.constant.getOrderConfirmTimeoutSecondsKey(); | ||
129 | + Integer value = this.cacheManager.get(key, Integer.class); | ||
130 | + if (value != null && value > 0) { | ||
131 | + return Integer.valueOf(value); | ||
132 | + } | ||
133 | + SysConfigResp response = this.sysConfigService.getSysConfig(this.constant.getOrderConfirmTimeoutSecondsKey()); | ||
134 | + if (response == null) { | ||
135 | + throw new RuntimeException("获取订单确认超时dtms调用地址失败"); | ||
136 | + } | ||
137 | + if (response.getCode() != BaseResp.CODE_SUCCESS) { | ||
138 | + throw new RuntimeException("获取订单确认超时dtms调用地址失败"); | ||
139 | + } | ||
140 | + value = Integer.valueOf(response.getValue()); | ||
141 | + this.cacheManager.put(key, value); | ||
142 | + return value; | ||
143 | + } | ||
144 | + | ||
145 | +} |
b2c-orders-rpc/src/main/resources/spring-rpc.xml
@@ -31,4 +31,33 @@ | @@ -31,4 +31,33 @@ | ||
31 | <constructor-arg name="baseUrl" value="http://www.zandeapp.com" /> | 31 | <constructor-arg name="baseUrl" value="http://www.zandeapp.com" /> |
32 | </bean> | 32 | </bean> |
33 | 33 | ||
34 | + <bean id="websiteClient" class="com.diligrp.website.web.interfaces.WebsiteClient"> | ||
35 | + <constructor-arg name="token" value="${manweb.token}" /> | ||
36 | + <constructor-arg name="baseUrl" value="${manweb.baseUrl}" /> | ||
37 | + </bean> | ||
38 | + | ||
39 | + <bean id="sysConfigService" | ||
40 | + class="com.diligrp.website.web.interfaces.service.SysConfigService" | ||
41 | + factory-bean="websiteClient" factory-method="getSysConfigService" /> | ||
42 | + | ||
43 | + <bean id="constant" class="com.b2c.orders.commons.constant.Constant"> | ||
44 | + <property name="domain" value="${orders.domain}" /> | ||
45 | + <property name="orderTakenTimeoutCallUrlKey" value="${orders.takenTimeoutCallUrlKey}" /> | ||
46 | + <property name="orderPaymentTimeoutCallUrlKey" value="${orders.paymentTimeoutCallUrlKey}" /> | ||
47 | + <property name="orderTakenTimeoutSecondsKey" value="${orders.takenTimeoutSecondsKey}" /> | ||
48 | + <property name="orderPaymentTimeoutSecondsKey" value="${orders.paymentTimeoutSecondsKey}" /> | ||
49 | + <property name="orderConfirmTimeoutCallUrlKey" value="${orders.confirmTimeoutCallUrlKey}" /> | ||
50 | + <property name="orderConfirmTimeoutSecondsKey" value="${orders.confirmTimeoutSecondsKey}" /> | ||
51 | + </bean> | ||
52 | + | ||
53 | + <bean id="cacheManager" class="com.b2c.orders.commons.cache.impl.CacheManagerBean"> | ||
54 | + <constructor-arg name="jedisUtils" ref="jedisUtils" /> | ||
55 | + </bean> | ||
56 | + | ||
57 | + <bean id="systemConfigRPCService" class="com.b2c.orders.rpc.impl.SystemConfigRPCServiceBean"> | ||
58 | + <constructor-arg name="sysConfigService" ref="sysConfigService" /> | ||
59 | + <constructor-arg name="constant" ref="constant" /> | ||
60 | + <constructor-arg name="cacheManager" ref="cacheManager" /> | ||
61 | + </bean> | ||
62 | + | ||
34 | </beans> | 63 | </beans> |
35 | \ No newline at end of file | 64 | \ No newline at end of file |
b2c-orders-web/pom.xml
@@ -83,11 +83,6 @@ | @@ -83,11 +83,6 @@ | ||
83 | <artifactId>swagger-annotations</artifactId> | 83 | <artifactId>swagger-annotations</artifactId> |
84 | </dependency> | 84 | </dependency> |
85 | <dependency> | 85 | <dependency> |
86 | - <groupId>com.b2c.dtms</groupId> | ||
87 | - <artifactId>dtms-client</artifactId> | ||
88 | - <version>0.0.1-SNAPSHOT</version> | ||
89 | - </dependency> | ||
90 | - <dependency> | ||
91 | <groupId>org.springframework</groupId> | 86 | <groupId>org.springframework</groupId> |
92 | <artifactId>spring-context-support</artifactId> | 87 | <artifactId>spring-context-support</artifactId> |
93 | </dependency> | 88 | </dependency> |
b2c-orders-web/src/main/java/com/b2c/orders/web/controller/OrderController.java
@@ -6,6 +6,7 @@ import java.util.Map; | @@ -6,6 +6,7 @@ import java.util.Map; | ||
6 | 6 | ||
7 | import org.springframework.beans.factory.annotation.Autowired; | 7 | import org.springframework.beans.factory.annotation.Autowired; |
8 | import org.springframework.stereotype.Controller; | 8 | import org.springframework.stereotype.Controller; |
9 | +import org.springframework.web.bind.annotation.ModelAttribute; | ||
9 | import org.springframework.web.bind.annotation.RequestMapping; | 10 | import org.springframework.web.bind.annotation.RequestMapping; |
10 | import org.springframework.web.bind.annotation.RequestMethod; | 11 | import org.springframework.web.bind.annotation.RequestMethod; |
11 | import org.springframework.web.bind.annotation.RequestParam; | 12 | import org.springframework.web.bind.annotation.RequestParam; |
@@ -13,6 +14,8 @@ import org.springframework.web.servlet.ModelAndView; | @@ -13,6 +14,8 @@ import org.springframework.web.servlet.ModelAndView; | ||
13 | 14 | ||
14 | import com.b2c.orders.domain.Order; | 15 | import com.b2c.orders.domain.Order; |
15 | import com.b2c.orders.domain.OrderLog; | 16 | import com.b2c.orders.domain.OrderLog; |
17 | +import com.b2c.orders.enums.OrderStatus; | ||
18 | +import com.b2c.orders.enums.PayType; | ||
16 | import com.b2c.orders.enums.UserType; | 19 | import com.b2c.orders.enums.UserType; |
17 | import com.b2c.orders.service.OrderLogService; | 20 | import com.b2c.orders.service.OrderLogService; |
18 | import com.b2c.orders.service.OrderService; | 21 | import com.b2c.orders.service.OrderService; |
@@ -20,7 +23,6 @@ import com.b2c.orders.web.common.VelocitySupport; | @@ -20,7 +23,6 @@ import com.b2c.orders.web.common.VelocitySupport; | ||
20 | import com.diligrp.website.util.dao.BaseQuery; | 23 | import com.diligrp.website.util.dao.BaseQuery; |
21 | import com.diligrp.website.util.web.PageTemplate; | 24 | import com.diligrp.website.util.web.PageTemplate; |
22 | 25 | ||
23 | -@RequestMapping("/order") | ||
24 | @Controller | 26 | @Controller |
25 | public class OrderController extends VelocitySupport { | 27 | public class OrderController extends VelocitySupport { |
26 | 28 | ||
@@ -37,12 +39,13 @@ public class OrderController extends VelocitySupport { | @@ -37,12 +39,13 @@ public class OrderController extends VelocitySupport { | ||
37 | @RequestMapping(value = "/list", method = RequestMethod.GET) | 39 | @RequestMapping(value = "/list", method = RequestMethod.GET) |
38 | public ModelAndView list(BaseQuery query) { | 40 | public ModelAndView list(BaseQuery query) { |
39 | PageTemplate pt = this.orderService.list(query, UserType.SYSTEM); | 41 | PageTemplate pt = this.orderService.list(query, UserType.SYSTEM); |
40 | - return this.toVM("list", pt); | 42 | + return this.toVM("list", pt).addObject("queryParam", query).addObject("orderStatusMap", |
43 | + OrderStatus.getInitMaps()).addObject("payTypes", PayType.values()); | ||
41 | } | 44 | } |
42 | 45 | ||
43 | @RequestMapping(value = "/detail", method = RequestMethod.GET) | 46 | @RequestMapping(value = "/detail", method = RequestMethod.GET) |
44 | public ModelAndView detail(@RequestParam Long id, @RequestParam(defaultValue = "tabbasic") String tabType) { | 47 | public ModelAndView detail(@RequestParam Long id, @RequestParam(defaultValue = "tabbasic") String tabType) { |
45 | - ModelAndView mav = this.toVM("detail").addObject("tabType", tabType); | 48 | + ModelAndView mav = this.toVM("detail").addObject("tabType", tabType).addObject("id", id); |
46 | if (tabType.equals("tabbasic")) { | 49 | if (tabType.equals("tabbasic")) { |
47 | Order order = this.orderService.detail(id); | 50 | Order order = this.orderService.detail(id); |
48 | return mav.addObject("model", order); | 51 | return mav.addObject("model", order); |
b2c-orders-web/src/main/java/com/b2c/orders/web/restful/OrderRestController.java
@@ -18,18 +18,15 @@ import org.springframework.web.bind.annotation.RequestMapping; | @@ -18,18 +18,15 @@ import org.springframework.web.bind.annotation.RequestMapping; | ||
18 | import org.springframework.web.bind.annotation.RequestMethod; | 18 | import org.springframework.web.bind.annotation.RequestMethod; |
19 | import org.springframework.web.bind.annotation.RestController; | 19 | import org.springframework.web.bind.annotation.RestController; |
20 | 20 | ||
21 | +import com.b2c.dtms.client.domain.dto.DtmsCallbackMessage; | ||
21 | import com.b2c.dtms.common.enums.dtms.HandleCode; | 22 | import com.b2c.dtms.common.enums.dtms.HandleCode; |
22 | import com.b2c.dtms.domain.DtmsCallBackReturn; | 23 | import com.b2c.dtms.domain.DtmsCallBackReturn; |
23 | import com.b2c.orders.commons.exceptions.ApplicationException; | 24 | import com.b2c.orders.commons.exceptions.ApplicationException; |
24 | -import com.b2c.orders.commons.exceptions.OrderException; | ||
25 | -import com.b2c.orders.commons.exceptions.OrderRepositoryException; | ||
26 | import com.b2c.orders.dao.utils.Query; | 25 | import com.b2c.orders.dao.utils.Query; |
27 | import com.b2c.orders.domain.Order; | 26 | import com.b2c.orders.domain.Order; |
28 | import com.b2c.orders.domain.OrderItem; | 27 | import com.b2c.orders.domain.OrderItem; |
29 | import com.b2c.orders.domain.client.dto.request.BuyerCancelRequestDto; | 28 | import com.b2c.orders.domain.client.dto.request.BuyerCancelRequestDto; |
30 | import com.b2c.orders.domain.client.dto.request.BuyerConfirmRequestDto; | 29 | import com.b2c.orders.domain.client.dto.request.BuyerConfirmRequestDto; |
31 | -import com.b2c.orders.domain.client.dto.request.DtmsConfirmRequestDto; | ||
32 | -import com.b2c.orders.domain.client.dto.request.DtmsTimeoutRequestDto; | ||
33 | import com.b2c.orders.domain.client.dto.request.OrderDetailRequestDto; | 30 | import com.b2c.orders.domain.client.dto.request.OrderDetailRequestDto; |
34 | import com.b2c.orders.domain.client.dto.request.OrderListRequestDto; | 31 | import com.b2c.orders.domain.client.dto.request.OrderListRequestDto; |
35 | import com.b2c.orders.domain.client.dto.request.OrderRemoveRequestDto; | 32 | import com.b2c.orders.domain.client.dto.request.OrderRemoveRequestDto; |
@@ -135,10 +132,10 @@ public class OrderRestController { | @@ -135,10 +132,10 @@ public class OrderRestController { | ||
135 | } | 132 | } |
136 | 133 | ||
137 | @RequestMapping(value = "/dtmsConfirm", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) | 134 | @RequestMapping(value = "/dtmsConfirm", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) |
138 | - public DtmsCallBackReturn dtmsConfirm(@RequestBody @Valid DtmsConfirmRequestDto dto, BindingResult br) { | 135 | + public DtmsCallBackReturn dtmsConfirm(@RequestBody DtmsCallbackMessage request, BindingResult br) { |
139 | DtmsCallBackReturn response = new DtmsCallBackReturn(); | 136 | DtmsCallBackReturn response = new DtmsCallBackReturn(); |
140 | try { | 137 | try { |
141 | - this.orderService.dtmsConfirm(dto.getOrderId()); | 138 | + this.orderService.dtmsConfirm(Long.valueOf(request.getBizId())); |
142 | response.setCode(HandleCode.SUCCESS.code()); | 139 | response.setCode(HandleCode.SUCCESS.code()); |
143 | } catch (ApplicationException e) { | 140 | } catch (ApplicationException e) { |
144 | response.setCode(HandleCode.FAILED.code()); | 141 | response.setCode(HandleCode.FAILED.code()); |
@@ -176,10 +173,10 @@ public class OrderRestController { | @@ -176,10 +173,10 @@ public class OrderRestController { | ||
176 | } | 173 | } |
177 | 174 | ||
178 | @RequestMapping(value = "/takenTimeout", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) | 175 | @RequestMapping(value = "/takenTimeout", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) |
179 | - public DtmsCallBackReturn takenTimeout(@RequestBody @Valid DtmsTimeoutRequestDto request, BindingResult br) { | 176 | + public DtmsCallBackReturn takenTimeout(@RequestBody DtmsCallbackMessage request, BindingResult br) { |
180 | DtmsCallBackReturn response = new DtmsCallBackReturn(); | 177 | DtmsCallBackReturn response = new DtmsCallBackReturn(); |
181 | try { | 178 | try { |
182 | - this.orderService.takenTimeout(request.getOrderId()); | 179 | + this.orderService.takenTimeout(Long.valueOf(request.getBizId())); |
183 | response.setCode(HandleCode.SUCCESS.code()); | 180 | response.setCode(HandleCode.SUCCESS.code()); |
184 | } catch (ApplicationException e) { | 181 | } catch (ApplicationException e) { |
185 | response.setCode(HandleCode.FAILED.code()); | 182 | response.setCode(HandleCode.FAILED.code()); |
@@ -189,10 +186,10 @@ public class OrderRestController { | @@ -189,10 +186,10 @@ public class OrderRestController { | ||
189 | } | 186 | } |
190 | 187 | ||
191 | @RequestMapping(value = "/paymentTimeout", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) | 188 | @RequestMapping(value = "/paymentTimeout", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) |
192 | - public DtmsCallBackReturn paymentTimeout(@RequestBody @Valid DtmsTimeoutRequestDto request, BindingResult br) { | 189 | + public DtmsCallBackReturn paymentTimeout(@RequestBody DtmsCallbackMessage request, BindingResult br) { |
193 | DtmsCallBackReturn response = new DtmsCallBackReturn(); | 190 | DtmsCallBackReturn response = new DtmsCallBackReturn(); |
194 | try { | 191 | try { |
195 | - this.orderService.paymentTimeout(request.getOrderId()); | 192 | + this.orderService.paymentTimeout(Long.valueOf(request.getBizId())); |
196 | response.setCode(HandleCode.SUCCESS.code()); | 193 | response.setCode(HandleCode.SUCCESS.code()); |
197 | } catch (ApplicationException e) { | 194 | } catch (ApplicationException e) { |
198 | response.setCode(HandleCode.FAILED.code()); | 195 | response.setCode(HandleCode.FAILED.code()); |
b2c-orders-web/src/main/webapp/WEB-INF/vm/detail.vm
@@ -19,10 +19,10 @@ | @@ -19,10 +19,10 @@ | ||
19 | <span style="font-size:16px;font-weight:bold;" class="red">$!{model.id}</span> | 19 | <span style="font-size:16px;font-weight:bold;" class="red">$!{model.id}</span> |
20 | <ul id="tab" class="nav nav-tabs"> | 20 | <ul id="tab" class="nav nav-tabs"> |
21 | <li #if($!{tabType}=="tabbasic")class="active"#end> | 21 | <li #if($!{tabType}=="tabbasic")class="active"#end> |
22 | - <a href="$!{domain}/order/detail?id=$!{model.id}&tabType=tabbasic">基本信息</a> | 22 | + <a href="$!{domain}/detail?id=$!{id}&tabType=tabbasic">基本信息</a> |
23 | </li> | 23 | </li> |
24 | <li #if($!{tabType}=="tablog")class="active"#end> | 24 | <li #if($!{tabType}=="tablog")class="active"#end> |
25 | - <a href="$!{domain}/order/detail?id=$!{model.id}&tabType=tablog">订单日志</a> | 25 | + <a href="$!{domain}/detail?id=$!{id}&tabType=tablog">订单日志</a> |
26 | </li> | 26 | </li> |
27 | </ul> | 27 | </ul> |
28 | <div class="tab-content"> | 28 | <div class="tab-content"> |
b2c-orders-web/src/main/webapp/WEB-INF/vm/list.vm
1 | -##<script src="$!{webUtils.getAssetsPath("/order/orderThird.js")}"></script> | 1 | +<script src="$!{webUtils.getAssetsPath("/order/orderThird.js")}"></script> |
2 | <script src="$!{webUtils.getAssetsPath("/js/template.js")}"></script> | 2 | <script src="$!{webUtils.getAssetsPath("/js/template.js")}"></script> |
3 | <div class="page-content"> | 3 | <div class="page-content"> |
4 | <div id="navBar" class="page-header"> | 4 | <div id="navBar" class="page-header"> |
5 | 当前位置:<a href="$!{domain}/orderThird">买卖对接订单</a> | 5 | 当前位置:<a href="$!{domain}/orderThird">买卖对接订单</a> |
6 | </div> | 6 | </div> |
7 | - <form class="well form-search" role="form" id="queryForm" action="orderThird" method="POST"> | 7 | + <form class="well form-search" role="form" id="queryForm" method="get" > |
8 | <table class="table-condensed table-width"> | 8 | <table class="table-condensed table-width"> |
9 | <tr> | 9 | <tr> |
10 | <td class="col-md-1">订单编号</td> | 10 | <td class="col-md-1">订单编号</td> |
11 | - <td class="col-md-2"><input type="text" name="orderId" placeholder="最大允许输入19位数字" value="$!{queryParam.orderId}"></td> | 11 | + <td class="col-md-2"><input type="text" id="orderId" name="param[id]" placeholder="最大允许输入19位数字" value="$!{queryParam.param.id}"></td> |
12 | <td class="col-md-1">买家手机号</td> | 12 | <td class="col-md-1">买家手机号</td> |
13 | - <td class="col-md-2"><input type="text" name="buyerMobile" placeholder="请输入11位手机号码" value="$!{queryParam.buyerMobile}"></td> | ||
14 | - <td class="col-md-1">店铺类型:</td> | ||
15 | - <td class="col-md-1"> <select name="shopType"> | ||
16 | - <option value="">全部</option> | ||
17 | - <option value="1" #if($!queryParam.shopType == 1) selected="selected" #end>批发商户</option> | ||
18 | - <option value="2" #if($!queryParam.shopType == 2) selected="selected" #end>产地商户</option> | ||
19 | - <option value="3" #if($!queryParam.shopType == 3) selected="selected" #end>农户商户</option> | ||
20 | - <option value="4" #if($!queryParam.shopType == 4) selected="selected" #end>零售商户</option> | ||
21 | - </select> | ||
22 | - </td> | 13 | + <td class="col-md-2"><input type="text" id="buyerPhoneNumber" name="param[buyerPhoneNumber]" placeholder="请输入11位手机号码" value="$!{queryParam.param.buyerPhoneNumber}"></td> |
23 | </tr> | 14 | </tr> |
24 | <tr> | 15 | <tr> |
25 | <td class="col-md-1">卖家手机号</td> | 16 | <td class="col-md-1">卖家手机号</td> |
26 | - <td class="col-md-2"><input type="text" name="sellerMobile" placeholder="请输入11位手机号码" value="$!{queryParam.sellerMobile}"></td> | 17 | + <td class="col-md-2"><input type="text" id="sellerPhoneNumber" name="param[sellerPhoneNumber]" placeholder="请输入11位手机号码" value="$!{queryParam.param.sellerPhoneNumber}"></td> |
27 | <td class="col-md-1">订单状态</td> | 18 | <td class="col-md-1">订单状态</td> |
28 | <td class="col-md-2"> | 19 | <td class="col-md-2"> |
29 | - <select name="orderState"> | 20 | + <select name="param[orderStatus]"> |
30 | <option value="">全部</option> | 21 | <option value="">全部</option> |
31 | - #foreach(${item} in ${queryParam.orderManStatusList}) | ||
32 | - #if($!{queryParam.orderState}==$!{item.code}) | ||
33 | - <option value="$!{item.code}" selected = "selected">$!{item.name}</option> | 22 | + #foreach(${item} in ${orderStatusMap.entrySet()}) |
23 | + #if($!{queryParam.orderStatus}==$!{item.key}) | ||
24 | + <option value="$!{item.key}" selected = "selected">$!{item.value.name}</option> | ||
34 | #else | 25 | #else |
35 | - <option value="$!{item.code}">$!{item.name}</option> | 26 | + <option value="$!{item.key}">$!{item.value.name}</option> |
36 | #end | 27 | #end |
37 | #end | 28 | #end |
38 | </select> | 29 | </select> |
39 | </td> | 30 | </td> |
40 | <td class="col-md-1">付款方式</td> | 31 | <td class="col-md-1">付款方式</td> |
41 | <td class="col-md-2"> | 32 | <td class="col-md-2"> |
42 | - <select name="payWay" id="payType"> | 33 | + <select name="param[payType]" id="payType"> |
43 | <option value="">全部</option> | 34 | <option value="">全部</option> |
44 | - #foreach(${item} in ${queryParam.payTypeList}) | ||
45 | - #if($!{queryParam.payWay}==$!{item.code}) | ||
46 | - <option value="$!{item.code}" selected = "selected">$!{item.name}</option> | 35 | + #foreach(${item} in ${payTypes}) |
36 | + #if($!{queryParam.payType}==$!{item.index}) | ||
37 | + <option value="$!{item.index}" selected = "selected">$!{item.name}</option> | ||
47 | #else | 38 | #else |
48 | - <option value="$!{item.code}">$!{item.name}</option> | 39 | + <option value="$!{item.index}">$!{item.name}</option> |
49 | #end | 40 | #end |
50 | #end | 41 | #end |
51 | </select> | 42 | </select> |
@@ -82,57 +73,12 @@ | @@ -82,57 +73,12 @@ | ||
82 | <input type="text" name="shopName" value="$!{queryParam.shopName}"> | 73 | <input type="text" name="shopName" value="$!{queryParam.shopName}"> |
83 | </td> | 74 | </td> |
84 | </tr> | 75 | </tr> |
85 | - <tr> | ||
86 | - <td> | ||
87 | - 店铺所属地 | ||
88 | - </td> | ||
89 | - <td> | ||
90 | - <input type="text" name="shipingAddress" value="$!{queryParam.shipingAddress}"> | ||
91 | - </td> | ||
92 | - <td>交货方式</td> | ||
93 | - <td > | ||
94 | - <select name="deliveryType" id="deliveryType"> | ||
95 | - <option value="">全部</option> | ||
96 | - #foreach(${item} in ${queryParam.deliveryTypeList}) | ||
97 | - #if($!{queryParam.deliveryType}==$!{item.code}) | ||
98 | - <option value="$!{item.code}" selected = "selected">$!{item.name}</option> | ||
99 | - #else | ||
100 | - <option value="$!{item.code}">$!{item.name}</option> | ||
101 | - #end | ||
102 | - #end | ||
103 | - </select> | ||
104 | - </td> | ||
105 | - <td>下单终端</td> | ||
106 | - <td> | ||
107 | - #if($!{queryParam.selectedComeFromList} && $!{queryParam.selectedComeFromList.size()}>0) | ||
108 | - #foreach(${item} in ${queryParam.comeFromList}) | ||
109 | - #foreach(${selectedComeFromValue} in ${queryParam.selectedComeFromList}) | ||
110 | - #if(${item.index}==${selectedComeFromValue}) | ||
111 | - #set($isSelected=1) | ||
112 | - #break | ||
113 | - #else | ||
114 | - #set($isSelected=0) | ||
115 | - #end | ||
116 | - #end | ||
117 | - #if($isSelected==1) | ||
118 | - <input type="checkbox" name="selectedComeFromList" checked value="${item.index}"/>${item.name} | ||
119 | - #else | ||
120 | - <input type="checkbox" name="selectedComeFromList" value="${item.index}"/>${item.name} | ||
121 | - #end | ||
122 | - #end | ||
123 | - #else | ||
124 | - #foreach(${item} in ${queryParam.comeFromList}) | ||
125 | - <input type="checkbox" name="selectedComeFromList" value="${item.index}"/>${item.name} | ||
126 | - #end | ||
127 | - #end | ||
128 | - </td> | ||
129 | - </tr> | ||
130 | <tr> | 76 | <tr> |
131 | <td>下单日期</td> | 77 | <td>下单日期</td> |
132 | <td colspan='5'> | 78 | <td colspan='5'> |
133 | - <input name="orderBeginTime" id="orderBeginTime" readonly value="$!{queryParam.orderBeginTime}" onClick="WdatePicker({dateFmt:'yyyy-M-d HH:mm:ss',startDate:'%y-%M-%d 00:00:00'})" type="text" placeholder="开始时间"/> | 79 | + <input name="param[submitBeginTime]" id="submitBeginTime" readonly value="$!{queryParam.submitBeginTime}" onClick="WdatePicker({dateFmt:'yyyy-M-d HH:mm:ss',startDate:'%y-%M-%d 00:00:00'})" type="text" placeholder="开始时间"/> |
134 | - | 80 | - |
135 | - <input name="orderEndTime" id="orderEndTime" readonly value="$!{queryParam.orderEndTime}" onClick="WdatePicker({dateFmt:'yyyy-M-d HH:mm:ss',startDate:'%y-%M-%d 23:59:59'})" type="text" placeholder="结束时间"/> | 81 | + <input name="param[submitBeginTime]" id="submitEndTime" readonly value="$!{queryParam.submitEndTime}" onClick="WdatePicker({dateFmt:'yyyy-M-d HH:mm:ss',startDate:'%y-%M-%d 23:59:59'})" type="text" placeholder="结束时间"/> |
136 | </td> | 82 | </td> |
137 | </tr> | 83 | </tr> |
138 | </table> | 84 | </table> |
@@ -182,7 +128,7 @@ | @@ -182,7 +128,7 @@ | ||
182 | $dateTool.format('yyyy-MM-dd HH:mm:ss',$!{item.submitTime}) | 128 | $dateTool.format('yyyy-MM-dd HH:mm:ss',$!{item.submitTime}) |
183 | </td> | 129 | </td> |
184 | <td class="textC"> | 130 | <td class="textC"> |
185 | - <a data="$!{item.id}" href="$!{domain}/order/detail?id=$!{item.id}">查看</a> | 131 | + <a data="$!{item.id}" href="$!{domain}/detail?id=$!{item.id}">查看</a> |
186 | </td> | 132 | </td> |
187 | </tr> | 133 | </tr> |
188 | <tr id="collapseOrderItem$!{item.id}" class="accordion-body collapse"> | 134 | <tr id="collapseOrderItem$!{item.id}" class="accordion-body collapse"> |
b2c-orders-web/src/main/webapp/assets/order/orderThird.js
@@ -9,12 +9,12 @@ $(document).ready(function(){ | @@ -9,12 +9,12 @@ $(document).ready(function(){ | ||
9 | minlength:0, | 9 | minlength:0, |
10 | digits:true | 10 | digits:true |
11 | }, | 11 | }, |
12 | - buyerMobile:{ | 12 | + buyerPhoneNumber:{ |
13 | maxlength:11, | 13 | maxlength:11, |
14 | minlength:11, | 14 | minlength:11, |
15 | digits:true | 15 | digits:true |
16 | }, | 16 | }, |
17 | - sellerMobile:{ | 17 | + sellerPhoneNumber:{ |
18 | maxlength:11, | 18 | maxlength:11, |
19 | minlength:11, | 19 | minlength:11, |
20 | digits:true | 20 | digits:true |
pom.xml
@@ -8,7 +8,16 @@ | @@ -8,7 +8,16 @@ | ||
8 | 8 | ||
9 | <properties> | 9 | <properties> |
10 | 10 | ||
11 | - <orders.cache.main.key>1n4j_orders:data</orders.cache.main.key> | 11 | + <manweb.token></manweb.token> |
12 | + <manweb.baseUrl>http://manweb.zandeapp.com/</manweb.baseUrl> | ||
13 | + <orders.cache.main.key>zandeapp_orders:data</orders.cache.main.key> | ||
14 | + <orders.domain>orders.zandeapp.com</orders.domain> | ||
15 | + <orders.takenTimeoutCallUrlKey>ORDER_TAKEN_TIMEOUT_CALL_URL</orders.takenTimeoutCallUrlKey> | ||
16 | + <orders.paymentTimeoutCallUrlKey>ORDER_PAYMENT_TIMEOUT_CALL_URL</orders.paymentTimeoutCallUrlKey> | ||
17 | + <orders.takenTimeoutSecondsKey>ORDER_TAKEN_TIMEOUT_SECONDS</orders.takenTimeoutSecondsKey> | ||
18 | + <orders.paymentTimeoutSecondsKey>ORDER_PAYMENT_TIMEOUT_SECONDS</orders.paymentTimeoutSecondsKey> | ||
19 | + <orders.confirmTimeoutCallUrlKey>ORDER_CONFIRM_TIMEOUT_CALL_URL</orders.confirmTimeoutCallUrlKey> | ||
20 | + <orders.confirmTimeoutSecondsKey>ORDER_CONFIRM_TIMEOUT_SECONDS</orders.confirmTimeoutSecondsKey> | ||
12 | <!--订单获系统缓存开关 --> | 21 | <!--订单获系统缓存开关 --> |
13 | <orders.cache.enabled>true</orders.cache.enabled> | 22 | <orders.cache.enabled>true</orders.cache.enabled> |
14 | <!--统一管理平台配置 --> | 23 | <!--统一管理平台配置 --> |
@@ -72,6 +81,16 @@ | @@ -72,6 +81,16 @@ | ||
72 | <dependencyManagement> | 81 | <dependencyManagement> |
73 | <dependencies> | 82 | <dependencies> |
74 | <dependency> | 83 | <dependency> |
84 | + <groupId>com.b2c.website.web</groupId> | ||
85 | + <artifactId>diligrp-website-api</artifactId> | ||
86 | + <version>1.0.5-SNAPSHOT</version> | ||
87 | + </dependency> | ||
88 | + <dependency> | ||
89 | + <groupId>com.b2c.dtms</groupId> | ||
90 | + <artifactId>dtms-client</artifactId> | ||
91 | + <version>0.0.2-SNAPSHOT</version> | ||
92 | + </dependency> | ||
93 | + <dependency> | ||
75 | <groupId>redis.clients</groupId> | 94 | <groupId>redis.clients</groupId> |
76 | <artifactId>jedis</artifactId> | 95 | <artifactId>jedis</artifactId> |
77 | <version>2.9.0</version> | 96 | <version>2.9.0</version> |