提交 ee0bb010 authored 作者: luojie's avatar luojie

Merge branch 'master' of E:\Git\zion with conflicts.

上级 ee54e456
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
2019-11-01 17:57:33.043 [restartedMain] INFO com.diaoyun.zion.ZionApplication - Starting ZionApplication on USER-20181114WP with PID 11688 (E:\JavaProject\zion\target\classes started by Administrator in E:\JavaProject\zion)
2019-11-01 17:57:33.045 [restartedMain] INFO com.diaoyun.zion.ZionApplication - No active profile set, falling back to default profiles: default
2019-11-01 17:57:33.073 [restartedMain] INFO o.s.b.d.env.DevToolsPropertyDefaultsPostProcessor - Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2019-11-01 17:57:33.073 [restartedMain] INFO o.s.b.d.env.DevToolsPropertyDefaultsPostProcessor - For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2019-11-01 17:57:34.545 [restartedMain] INFO o.s.d.r.config.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode!
2019-11-01 17:57:34.547 [restartedMain] INFO o.s.d.r.config.RepositoryConfigurationDelegate - Bootstrapping Spring Data repositories in DEFAULT mode.
2019-11-01 17:57:34.639 [restartedMain] INFO o.s.d.r.config.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 75ms. Found 0 repository interfaces.
2019-11-01 17:57:35.032 [restartedMain] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'com.alibaba.druid.spring.boot.autoconfigure.stat.DruidSpringAopConfiguration' of type [com.alibaba.druid.spring.boot.autoconfigure.stat.DruidSpringAopConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-11-01 17:57:35.101 [restartedMain] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$8c04674c] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-11-01 17:57:35.223 [restartedMain] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'spring.datasource.druid-com.alibaba.druid.spring.boot.autoconfigure.properties.DruidStatProperties' of type [com.alibaba.druid.spring.boot.autoconfigure.properties.DruidStatProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-11-01 17:57:35.234 [restartedMain] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'advisor' of type [org.springframework.aop.support.RegexpMethodPointcutAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-11-01 17:57:35.258 [restartedMain] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.security.config.annotation.configuration.ObjectPostProcessorConfiguration' of type [org.springframework.security.config.annotation.configuration.ObjectPostProcessorConfiguration$$EnhancerBySpringCGLIB$$24b22f86] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-11-01 17:57:35.264 [restartedMain] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'objectPostProcessor' of type [org.springframework.security.config.annotation.configuration.AutowireBeanFactoryObjectPostProcessor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-11-01 17:57:35.267 [restartedMain] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler@1f430b42' of type [org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-11-01 17:57:35.271 [restartedMain] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.security.config.annotation.method.configuration.GlobalMethodSecurityConfiguration' of type [org.springframework.security.config.annotation.method.configuration.GlobalMethodSecurityConfiguration$$EnhancerBySpringCGLIB$$4986d238] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-11-01 17:57:35.274 [restartedMain] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'methodSecurityMetadataSource' of type [org.springframework.security.access.method.DelegatingMethodSecurityMetadataSource] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-11-01 17:57:35.289 [restartedMain] INFO o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'redisConfig' of type [com.diaoyun.zion.master.config.RedisConfig$$EnhancerBySpringCGLIB$$7653076a] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2019-11-01 17:57:35.682 [restartedMain] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8083 (http)
2019-11-01 17:57:35.697 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-8083"]
2019-11-01 17:57:35.706 [restartedMain] INFO org.apache.catalina.core.StandardService - Starting service [Tomcat]
2019-11-01 17:57:35.707 [restartedMain] INFO org.apache.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.21]
2019-11-01 17:57:35.867 [restartedMain] INFO o.a.c.c.ContainerBase.[Tomcat].[localhost].[/zion] - Initializing Spring embedded WebApplicationContext
2019-11-01 17:57:35.867 [restartedMain] INFO org.springframework.web.context.ContextLoader - Root WebApplicationContext: initialization completed in 2794 ms
2019-11-01 17:57:37.423 [restartedMain] INFO io.lettuce.core.EpollProvider - Starting without optional epoll library
2019-11-01 17:57:37.425 [restartedMain] INFO io.lettuce.core.KqueueProvider - Starting without optional kqueue library
2019-11-01 17:57:38.106 [restartedMain] INFO s.d.s.w.PropertySourcedRequestMappingHandlerMapping - Mapped URL path [/v2/api-docs] onto method [public org.springframework.http.ResponseEntity<springfox.documentation.spring.web.json.Json> springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(java.lang.String,javax.servlet.http.HttpServletRequest)]
2019-11-01 17:57:38.269 [restartedMain] INFO o.s.b.d.autoconfigure.OptionalLiveReloadServer - LiveReload server is running on port 35729
2019-11-01 17:57:38.471 [restartedMain] INFO o.s.security.web.DefaultSecurityFilterChain - Creating filter chain: Ant [pattern='/v2/api-docs'], []
2019-11-01 17:57:38.471 [restartedMain] INFO o.s.security.web.DefaultSecurityFilterChain - Creating filter chain: Ant [pattern='/swagger-resources/**'], []
2019-11-01 17:57:38.471 [restartedMain] INFO o.s.security.web.DefaultSecurityFilterChain - Creating filter chain: Ant [pattern='/swagger-ui.html'], []
2019-11-01 17:57:38.471 [restartedMain] INFO o.s.security.web.DefaultSecurityFilterChain - Creating filter chain: Ant [pattern='/configuration/**'], []
2019-11-01 17:57:38.471 [restartedMain] INFO o.s.security.web.DefaultSecurityFilterChain - Creating filter chain: Ant [pattern='/webjars/**'], []
2019-11-01 17:57:38.471 [restartedMain] INFO o.s.security.web.DefaultSecurityFilterChain - Creating filter chain: Ant [pattern='/public'], []
2019-11-01 17:57:38.471 [restartedMain] INFO o.s.security.web.DefaultSecurityFilterChain - Creating filter chain: Ant [pattern='/h2-console/**/**'], []
2019-11-01 17:57:38.514 [restartedMain] INFO o.s.security.web.DefaultSecurityFilterChain - Creating filter chain: any request, [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@6f173fdc, org.springframework.security.web.context.SecurityContextPersistenceFilter@39d5de4b, org.springframework.security.web.header.HeaderWriterFilter@4d951bec, org.springframework.web.filter.CorsFilter@5a1c4bbc, org.springframework.security.web.authentication.logout.LogoutFilter@168763c4, com.diaoyun.zion.master.security.JwtTokenFilter@4dc69a0e, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@52aa2eed, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@347e0373, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@14c8d92f, org.springframework.security.web.session.SessionManagementFilter@50281a86, org.springframework.security.web.access.ExceptionTranslationFilter@23e63a3d, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@16cf219e]
2019-11-01 17:57:39.323 [restartedMain] INFO s.d.s.web.plugins.DocumentationPluginsBootstrapper - Context refreshed
2019-11-01 17:57:39.343 [restartedMain] INFO s.d.s.web.plugins.DocumentationPluginsBootstrapper - Found 1 custom documentation plugin(s)
2019-11-01 17:57:39.395 [restartedMain] INFO s.d.spring.web.scanners.ApiListingReferenceScanner - Scanning for api listing references
2019-11-01 17:57:39.704 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: queryAllUsingGET_1
2019-11-01 17:57:39.704 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: queryAllUsingHEAD_1
2019-11-01 17:57:39.705 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: queryAllUsingPOST_1
2019-11-01 17:57:39.706 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: queryAllUsingPUT_1
2019-11-01 17:57:39.707 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: queryAllUsingPATCH_1
2019-11-01 17:57:39.707 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: queryAllUsingDELETE_1
2019-11-01 17:57:39.708 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: queryAllUsingOPTIONS_1
2019-11-01 17:57:39.708 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: queryAllUsingTRACE_1
2019-11-01 17:57:39.787 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: updateUserInfoUsingPUT_1
2019-11-01 17:57:39.793 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: getGoodsTypeListUsingGET_1
2019-11-01 17:57:39.794 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: getGoodsTypeListUsingHEAD_1
2019-11-01 17:57:39.795 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: getGoodsTypeListUsingPOST_1
2019-11-01 17:57:39.795 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: getGoodsTypeListUsingPUT_1
2019-11-01 17:57:39.797 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: getGoodsTypeListUsingPATCH_1
2019-11-01 17:57:39.798 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: getGoodsTypeListUsingDELETE_1
2019-11-01 17:57:39.799 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: getGoodsTypeListUsingOPTIONS_1
2019-11-01 17:57:39.800 [restartedMain] INFO s.d.s.w.r.operation.CachingOperationNameGenerator - Generating unique operation named: getGoodsTypeListUsingTRACE_1
2019-11-01 17:57:39.907 [restartedMain] INFO org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8083"]
2019-11-01 17:57:39.925 [restartedMain] INFO o.s.boot.web.embedded.tomcat.TomcatWebServer - Tomcat started on port(s): 8083 (http) with context path '/zion'
2019-11-01 17:57:39.929 [restartedMain] INFO com.diaoyun.zion.ZionApplication - Started ZionApplication in 7.513 seconds (JVM running for 9.047)
2019-11-01 18:04:54.706 [Thread-6] INFO com.alibaba.druid.pool.DruidDataSource - {dataSource-0} closing ...
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
package com.diaoyun.zion.chinafrica.api;
public class Test {
}
...@@ -21,4 +21,11 @@ public interface TbCfToiCouponDao extends BaseDao<TbCfToiCouponEntity> { ...@@ -21,4 +21,11 @@ public interface TbCfToiCouponDao extends BaseDao<TbCfToiCouponEntity> {
List<TbCfToiCouponEntityExtends> queryCouponByUserId(String userId); List<TbCfToiCouponEntityExtends> queryCouponByUserId(String userId);
int changeCoupnStatus(String userId, String couponId); int changeCoupnStatus(String userId, String couponId);
/**
* 更改使用状态
* @param userId
* @param couponId
* @return
*/
int updateEnableFlag(String userId, String couponId, Integer invalid);
} }
...@@ -4,6 +4,7 @@ import com.diaoyun.zion.chinafrica.constant.KeyConstant; ...@@ -4,6 +4,7 @@ import com.diaoyun.zion.chinafrica.constant.KeyConstant;
import com.diaoyun.zion.chinafrica.dao.TbCfFinanceDao; import com.diaoyun.zion.chinafrica.dao.TbCfFinanceDao;
import com.diaoyun.zion.chinafrica.dao.TbCfIssueCouponDao; import com.diaoyun.zion.chinafrica.dao.TbCfIssueCouponDao;
import com.diaoyun.zion.chinafrica.dao.TbCfOrderDao; import com.diaoyun.zion.chinafrica.dao.TbCfOrderDao;
import com.diaoyun.zion.chinafrica.dao.TbCfToiCouponDao;
import com.diaoyun.zion.chinafrica.entity.TbCfFinanceEntity; import com.diaoyun.zion.chinafrica.entity.TbCfFinanceEntity;
import com.diaoyun.zion.chinafrica.entity.TbCfOrderEntity; import com.diaoyun.zion.chinafrica.entity.TbCfOrderEntity;
import com.diaoyun.zion.chinafrica.enums.DeliveryStatusEnum; import com.diaoyun.zion.chinafrica.enums.DeliveryStatusEnum;
...@@ -29,6 +30,7 @@ import org.springframework.beans.BeanUtils; ...@@ -29,6 +30,7 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.io.IOException; import java.io.IOException;
import java.util.Date; import java.util.Date;
...@@ -50,6 +52,8 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -50,6 +52,8 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
@Autowired @Autowired
private TbCfIssueCouponDao tbCfIssueCouponDao; private TbCfIssueCouponDao tbCfIssueCouponDao;
@Autowired @Autowired
private TbCfToiCouponDao TbCfToiCouponDao;
@Autowired
private DomainProperties domainProperties; private DomainProperties domainProperties;
@Resource @Resource
private RedisCache<Object> orderRedisCache; private RedisCache<Object> orderRedisCache;
...@@ -107,7 +111,7 @@ public class FlutterWaveServiceImpl implements FlutterWaveService { ...@@ -107,7 +111,7 @@ public class FlutterWaveServiceImpl implements FlutterWaveService {
changeOrderState(paymentId, tbCfOrderVo); changeOrderState(paymentId, tbCfOrderVo);
//修改优惠券状态 //修改优惠券状态
if (tbCfOrderVo.getCouponId() != null && tbCfOrderVo.getPayStatus() == 20) { if (tbCfOrderVo.getCouponId() != null && tbCfOrderVo.getPayStatus() == 20) {
tbCfIssueCouponDao.changeCoupnStatus(tbCfOrderVo.getUserId(), tbCfOrderVo.getCouponId()); TbCfToiCouponDao.changeCoupnStatus(tbCfOrderVo.getUserId(), tbCfOrderVo.getCouponId());
} }
//生成支付流水 //生成支付流水
TbCfFinanceEntity finance = createFinance(paymentId, url, tbCfOrderVo); TbCfFinanceEntity finance = createFinance(paymentId, url, tbCfOrderVo);
......
...@@ -4,6 +4,7 @@ import com.diaoyun.zion.chinafrica.constant.KeyConstant; ...@@ -4,6 +4,7 @@ import com.diaoyun.zion.chinafrica.constant.KeyConstant;
import com.diaoyun.zion.chinafrica.dao.TbCfFinanceDao; import com.diaoyun.zion.chinafrica.dao.TbCfFinanceDao;
import com.diaoyun.zion.chinafrica.dao.TbCfIssueCouponDao; import com.diaoyun.zion.chinafrica.dao.TbCfIssueCouponDao;
import com.diaoyun.zion.chinafrica.dao.TbCfOrderDao; import com.diaoyun.zion.chinafrica.dao.TbCfOrderDao;
import com.diaoyun.zion.chinafrica.dao.TbCfToiCouponDao;
import com.diaoyun.zion.chinafrica.entity.TbCfFinanceEntity; import com.diaoyun.zion.chinafrica.entity.TbCfFinanceEntity;
import com.diaoyun.zion.chinafrica.entity.TbCfOrderEntity; import com.diaoyun.zion.chinafrica.entity.TbCfOrderEntity;
import com.diaoyun.zion.chinafrica.enums.DeliveryStatusEnum; import com.diaoyun.zion.chinafrica.enums.DeliveryStatusEnum;
...@@ -19,14 +20,11 @@ import com.diaoyun.zion.master.enums.ResultCodeEnum; ...@@ -19,14 +20,11 @@ import com.diaoyun.zion.master.enums.ResultCodeEnum;
import com.diaoyun.zion.master.util.IdUtil; import com.diaoyun.zion.master.util.IdUtil;
import com.diaoyun.zion.master.util.JsoupUtil; import com.diaoyun.zion.master.util.JsoupUtil;
import com.egzosn.pay.common.api.PayService; import com.egzosn.pay.common.api.PayService;
import com.egzosn.pay.common.bean.MethodType;
import com.egzosn.pay.common.bean.PayOrder; import com.egzosn.pay.common.bean.PayOrder;
import com.egzosn.pay.common.bean.RefundOrder; import com.egzosn.pay.common.bean.RefundOrder;
import com.egzosn.pay.common.http.HttpConfigStorage;
import com.egzosn.pay.paypal.api.PayPalConfigStorage; import com.egzosn.pay.paypal.api.PayPalConfigStorage;
import com.egzosn.pay.paypal.api.PayPalPayService; import com.egzosn.pay.paypal.api.PayPalPayService;
import com.egzosn.pay.paypal.bean.PayPalTransactionType; import com.egzosn.pay.paypal.bean.PayPalTransactionType;
import com.stripe.model.Charge;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
...@@ -57,6 +55,8 @@ public class PayPalServiceImpl implements PayPalService { ...@@ -57,6 +55,8 @@ public class PayPalServiceImpl implements PayPalService {
private TbCfOrderDao tbCfOrderDao; private TbCfOrderDao tbCfOrderDao;
@Autowired @Autowired
private TbCfIssueCouponDao tbCfIssueCouponDao; private TbCfIssueCouponDao tbCfIssueCouponDao;
@Autowired
private TbCfToiCouponDao tbCfToiCouponDao;
private String ORDER_ID = ""; private String ORDER_ID = "";
...@@ -140,7 +140,7 @@ public class PayPalServiceImpl implements PayPalService { ...@@ -140,7 +140,7 @@ public class PayPalServiceImpl implements PayPalService {
changeOrderState(paymentId, tbCfOrderVo); changeOrderState(paymentId, tbCfOrderVo);
//修改优惠券状态 //修改优惠券状态
if (tbCfOrderVo.getCouponId() != null && tbCfOrderVo.getPayStatus() == 20) { if (tbCfOrderVo.getCouponId() != null && tbCfOrderVo.getPayStatus() == 20) {
tbCfIssueCouponDao.changeCoupnStatus(tbCfOrderVo.getUserId(), tbCfOrderVo.getCouponId()); tbCfToiCouponDao.changeCoupnStatus(tbCfOrderVo.getUserId(), tbCfOrderVo.getCouponId());
} }
//生成支付流水 //生成支付流水
TbCfFinanceEntity finance = createFinance(paymentId, token, payerID, tbCfOrderVo); TbCfFinanceEntity finance = createFinance(paymentId, token, payerID, tbCfOrderVo);
......
...@@ -109,8 +109,6 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -109,8 +109,6 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
@Autowired @Autowired
private TbCfIssueCouponService tbCfIssueCouponService; //发放表 private TbCfIssueCouponService tbCfIssueCouponService; //发放表
private boolean flag = false;
@Override @Override
public TbCfOrderEntity queryObject(String orderId) { public TbCfOrderEntity queryObject(String orderId) {
return tbCfOrderDao.queryObject(orderId); return tbCfOrderDao.queryObject(orderId);
...@@ -149,7 +147,6 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -149,7 +147,6 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
/** /**
* 用户计算1 * 用户计算1
*
* @return * @return
* @throws IOException * @throws IOException
* @throws URISyntaxException * @throws URISyntaxException
...@@ -157,7 +154,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -157,7 +154,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
* @throws InterruptedException * @throws InterruptedException
* @throws TimeoutException * @throws TimeoutException
*/ */
@Override @Override
public Result settleAccount(String toitableId) throws IOException, URISyntaxException, ExecutionException, InterruptedException, TimeoutException { public Result settleAccount(String toitableId) throws IOException, URISyntaxException, ExecutionException, InterruptedException, TimeoutException {
Result<TbCfOrderVo> result = new Result<>(); Result<TbCfOrderVo> result = new Result<>();
//获取用户 //获取用户
...@@ -169,16 +166,16 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -169,16 +166,16 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
result.setCode(ResultCodeEnum.VALIDATE_ERROR.getCode()).setMessage("There are no items in the shopping cart"); result.setCode(ResultCodeEnum.VALIDATE_ERROR.getCode()).setMessage("There are no items in the shopping cart");
} else { } else {
//获取订单数据 //获取订单数据
TbCfOrderVo tbCfOrder = getOrderData(tbCfUserInfoVo, tbCfCartItemDetailList, toitableId); TbCfOrderVo tbCfOrder = getOrderData(tbCfUserInfoVo, tbCfCartItemDetailList,toitableId);
result.setData(tbCfOrder).setMessage("Order pending settlement"); result.setData(tbCfOrder).setMessage("Order pending settlement");
} }
return result; return result;
} }
@Override @Override
public Result placeOrder(TbCfOrderVo pageOrder, String toitableId) throws IOException, URISyntaxException, ExecutionException, InterruptedException, TimeoutException { public Result placeOrder(TbCfOrderVo pageOrder,String toitableId) throws IOException, URISyntaxException, ExecutionException, InterruptedException, TimeoutException {
System.out.println(toitableId + "发放ID"); System.out.println(toitableId+"发放ID");
Result<TbCfOrderVo> result = new Result<>(); Result<TbCfOrderVo> result = new Result<>();
//获取用户 //获取用户
String token = jwtTokenProvider.resolveToken(request); String token = jwtTokenProvider.resolveToken(request);
TbCfUserInfoVo tbCfUserInfoVo = tokenManager.validate(token); TbCfUserInfoVo tbCfUserInfoVo = tokenManager.validate(token);
...@@ -189,7 +186,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -189,7 +186,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
result.setCode(ResultCodeEnum.VALIDATE_ERROR.getCode()).setMessage("There are no items in the shopping cart"); result.setCode(ResultCodeEnum.VALIDATE_ERROR.getCode()).setMessage("There are no items in the shopping cart");
} else { } else {
//获取下单的订单数据 //获取下单的订单数据
TbCfOrderVo definiteOrder = ensureOrder(tbCfUserInfoVo, pageOrder, tbCfCartItemDetailList, toitableId); TbCfOrderVo definiteOrder = ensureOrder(tbCfUserInfoVo, pageOrder, tbCfCartItemDetailList,toitableId);
//持久化订单数据 //持久化订单数据
TbCfOrderEntity tbCfOrderEntity = new TbCfOrderEntity(); TbCfOrderEntity tbCfOrderEntity = new TbCfOrderEntity();
BeanUtils.copyProperties(definiteOrder, tbCfOrderEntity); BeanUtils.copyProperties(definiteOrder, tbCfOrderEntity);
...@@ -205,45 +202,48 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -205,45 +202,48 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
@Override @Override
public Result getUserOrderList(Integer pageNum, Integer pageSize, Integer orderStatus) throws InterruptedException { public synchronized Result getUserOrderList(Integer pageNum, Integer pageSize, Integer orderStatus) {
Result<PageInfo<TbCfOrderVo>> result = new Result<>(); Result<PageInfo<TbCfOrderVo>> result = new Result<>();
//获取用户 //获取用户
synchronized (this) { String token = jwtTokenProvider.resolveToken(request);
String token = jwtTokenProvider.resolveToken(request); TbCfUserInfoVo tbCfUserInfoVo = tokenManager.validate(token);
TbCfUserInfoVo tbCfUserInfoVo = tokenManager.validate(token); PageInfo<TbCfOrderVo> pageInfos = (PageInfo<TbCfOrderVo>) orderRedisCache.get(KeyConstant.ORDER_DET + tbCfUserInfoVo.getUserId() + orderStatus);
//订单数据 if (pageInfos != null) {
List<TbCfOrderEntity> orderList = tbCfOrderDao.getUserOrderList(tbCfUserInfoVo.getUserId(), orderStatus); result.setData(pageInfos);
startPage(pageNum, pageSize); return result;
PageInfo<TbCfOrderEntity> pageInfo = new PageInfo<>(orderList); }
//获取订单后,再获取订单内商品 //订单数据
List<TbCfOrderEntity> pagingOrderList = pageInfo.getList(); List<TbCfOrderEntity> orderList = tbCfOrderDao.getUserOrderList(tbCfUserInfoVo.getUserId(), orderStatus);
List<TbCfOrderVo> tbCfOrderVoList = new ArrayList<>(); startPage(pageNum, pageSize);
if (!pagingOrderList.isEmpty()) { PageInfo<TbCfOrderEntity> pageInfo = new PageInfo<>(orderList);
for (TbCfOrderEntity order : pagingOrderList) { //获取订单后,再获取订单内商品
TbCfOrderVo orderVo = new TbCfOrderVo(); List<TbCfOrderEntity> pagingOrderList = pageInfo.getList();
BeanUtils.copyProperties(order, orderVo); List<TbCfOrderVo> tbCfOrderVoList = new ArrayList<>();
//获取订单内商品 if (!pagingOrderList.isEmpty()) {
List<TbCfItemDetailEntity> tbCfItemDetailList = tbCfOrderDao.getOrderItemList(orderVo.getOrderId()); for (TbCfOrderEntity order : pagingOrderList) {
//返回的订单商品详情 TbCfOrderVo orderVo = new TbCfOrderVo();
List<TbCfCartItemDetailVo> itemDetailVoList = new ArrayList<>(); BeanUtils.copyProperties(order, orderVo);
for (TbCfItemDetailEntity tbCfItemDetail : tbCfItemDetailList) { //获取订单内商品
TbCfCartItemDetailVo tbCfCartItemDetailVo = new TbCfCartItemDetailVo(); List<TbCfItemDetailEntity> tbCfItemDetailList = tbCfOrderDao.getOrderItemList(orderVo.getOrderId());
BeanUtils.copyProperties(tbCfItemDetail, tbCfCartItemDetailVo); //返回的订单商品详情
itemDetailVoList.add(tbCfCartItemDetailVo); List<TbCfCartItemDetailVo> itemDetailVoList = new ArrayList<>();
} for (TbCfItemDetailEntity tbCfItemDetail : tbCfItemDetailList) {
orderVo.setItemDetailList(itemDetailVoList); TbCfCartItemDetailVo tbCfCartItemDetailVo = new TbCfCartItemDetailVo();
tbCfOrderVoList.add(orderVo); BeanUtils.copyProperties(tbCfItemDetail, tbCfCartItemDetailVo);
itemDetailVoList.add(tbCfCartItemDetailVo);
} }
orderVo.setItemDetailList(itemDetailVoList);
tbCfOrderVoList.add(orderVo);
} }
PageInfo<TbCfOrderVo> returnPageInfo = new PageInfo<>();
BeanUtils.copyProperties(pageInfo, returnPageInfo);
returnPageInfo.setList(tbCfOrderVoList);
result.setData(returnPageInfo);
} }
PageInfo<TbCfOrderVo> returnPageInfo = new PageInfo<>();
BeanUtils.copyProperties(pageInfo, returnPageInfo);
returnPageInfo.setList(tbCfOrderVoList);
orderRedisCache.set(KeyConstant.ORDER_DET + tbCfUserInfoVo.getUserId() + orderStatus, returnPageInfo);
result.setData(returnPageInfo);
return result; return result;
} }
@Override @Override
public void cancelOrder(String orderId, String userId, String couponId) { public void cancelOrder(String orderId, String userId, String couponId) {
//更改订单状态 //更改订单状态
...@@ -285,8 +285,8 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -285,8 +285,8 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
//更改订单状态 //更改订单状态
changeOrderState(charge.getId(), tbCfOrderVo); changeOrderState(charge.getId(), tbCfOrderVo);
//修改使用的优惠券的状态 //修改使用的优惠券的状态
if (tbCfOrderVo.getOrderStatus() == 20) { if("20".equals(tbCfOrderVo.getOrderStatus())){
tbCfToiCouponDao.changeCoupnStatus(tbCfOrderVo.getUserId(), tbCfOrderVo.getCouponId()); tbCfToiCouponDao.changeCoupnStatus(tbCfOrderVo.getUserId(),tbCfOrderVo.getCouponId());
} }
//生成流水记录 //生成流水记录
TbCfFinanceEntity tbCfFinance = createFinance(charge, tbCfOrderVo); TbCfFinanceEntity tbCfFinance = createFinance(charge, tbCfOrderVo);
...@@ -320,7 +320,6 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -320,7 +320,6 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
/** /**
* 查询物流信息 * 查询物流信息
*
* @param orderId * @param orderId
* @return * @return
* @throws IOException * @throws IOException
...@@ -379,7 +378,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -379,7 +378,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
public Result getOrderDetailThird(String orderId) { public Result getOrderDetailThird(String orderId) {
Result<OrderEntity> result = new Result<>(); Result<OrderEntity> result = new Result<>();
OrderEntity order = tbCfOrderDao.getOrder(orderId); OrderEntity order = tbCfOrderDao.getOrder(orderId);
OrderEntity orderEntity = new OrderEntity(); OrderEntity orderEntity=new OrderEntity();
orderEntity.setOrderId(order.getOrderId()); orderEntity.setOrderId(order.getOrderId());
orderEntity.setDeliveryPhone(order.getDeliveryPhone()); orderEntity.setDeliveryPhone(order.getDeliveryPhone());
orderEntity.setDeliveryName(order.getDeliveryName()); orderEntity.setDeliveryName(order.getDeliveryName());
...@@ -391,7 +390,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -391,7 +390,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
//返回的订单商品详情 //返回的订单商品详情
List<ItemEntity> itemList = new ArrayList<>(); List<ItemEntity> itemList = new ArrayList<>();
for (ItemEntity item : items) { for (ItemEntity item : items) {
ItemEntity entity = new ItemEntity(); ItemEntity entity=new ItemEntity();
entity.setItemNum(item.getItemNum()); entity.setItemNum(item.getItemNum());
entity.setItemCategory(item.getItemCategory()); entity.setItemCategory(item.getItemCategory());
entity.setItemPrice(item.getItemPrice()); entity.setItemPrice(item.getItemPrice());
...@@ -426,14 +425,14 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -426,14 +425,14 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
Result<TbCfOrderVo> result = new Result<>(); Result<TbCfOrderVo> result = new Result<>();
TbCfOrderEntity tbCfOrderEntity = tbCfOrderDao.queryObject(orderId); TbCfOrderEntity tbCfOrderEntity = tbCfOrderDao.queryObject(orderId);
TbCfOrderVo tbCfOrderVo = new TbCfOrderVo(); TbCfOrderVo tbCfOrderVo = new TbCfOrderVo();
BeanUtils.copyProperties(tbCfOrderEntity, tbCfOrderVo); BeanUtils.copyProperties(tbCfOrderEntity,tbCfOrderVo);
//获取订单内商品 //获取订单内商品
List<TbCfItemDetailEntity> tbCfItemDetailList = tbCfOrderDao.getOrderItemList(orderId); List<TbCfItemDetailEntity> tbCfItemDetailList = tbCfOrderDao.getOrderItemList(orderId);
//返回的订单商品详情 //返回的订单商品详情
List<TbCfCartItemDetailVo> itemDetailVoList = new ArrayList<>(); List<TbCfCartItemDetailVo> itemDetailVoList = new ArrayList<>();
for (TbCfItemDetailEntity tbCfItemDetail : tbCfItemDetailList) { for (TbCfItemDetailEntity tbCfItemDetail : tbCfItemDetailList) {
TbCfCartItemDetailVo tbCfCartItemDetailVo = new TbCfCartItemDetailVo(); TbCfCartItemDetailVo tbCfCartItemDetailVo = new TbCfCartItemDetailVo();
BeanUtils.copyProperties(tbCfItemDetail, tbCfCartItemDetailVo); BeanUtils.copyProperties(tbCfItemDetail,tbCfCartItemDetailVo);
itemDetailVoList.add(tbCfCartItemDetailVo); itemDetailVoList.add(tbCfCartItemDetailVo);
} }
tbCfOrderVo.setItemDetailList(itemDetailVoList); tbCfOrderVo.setItemDetailList(itemDetailVoList);
...@@ -516,9 +515,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -516,9 +515,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
//使用优惠券 //使用优惠券
if (StringUtils.isNotBlank(definiteOrder.getCouponId())) { if (StringUtils.isNotBlank(definiteOrder.getCouponId())) {
couponUse(definiteOrder.getUserId(), definiteOrder.getCouponId()); couponUse(definiteOrder.getUserId(), definiteOrder.getCouponId());
} }
//把订单放redis中,过期则取消订单 RedisKeyExpirationListener接收 //把订单放redis中,过期则取消订单 RedisKeyExpirationListener接收
long timeout = 1800; long timeout = 1800;
String timeoutStr = domainProperties.getProperty("redis.order.expiredTime"); String timeoutStr = domainProperties.getProperty("redis.order.expiredTime");
...@@ -543,14 +540,14 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -543,14 +540,14 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
* @param couponId * @param couponId
*/ */
private void couponUse(String userId, String couponId) { private void couponUse(String userId, String couponId) {
// 更新领取记录已领取 // 更新领取记录已领取
int res = tbCfTakeCouponDao.updateEnableFlag(userId, couponId, StateConstant.INVALID); int res = tbCfToiCouponDao.updateEnableFlag(userId, couponId, StateConstant.INVALID);
if (res < 1) { if (res < 1) {
logger.error("消费了优惠券,但是在数据表里没有记录!userId:" + userId + ";couponId:" + couponId); logger.error("消费了优惠券,但是在数据表里没有记录!userId:" + userId + ";couponId:" + couponId);
} }
/** /**
* 增加已使用记录 * 增加已使用记录
// */ // */
// TbCfCouponUseEntity tbCfCouponUse = new TbCfCouponUseEntity(); // TbCfCouponUseEntity tbCfCouponUse = new TbCfCouponUseEntity();
// tbCfCouponUse.setUseId(IdUtil.createIdbyUUID()); // tbCfCouponUse.setUseId(IdUtil.createIdbyUUID());
// tbCfCouponUse.setCouponId(couponId); // tbCfCouponUse.setCouponId(couponId);
...@@ -604,7 +601,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -604,7 +601,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
* @throws IOException * @throws IOException
* @throws URISyntaxException * @throws URISyntaxException
*/ */
private TbCfOrderVo ensureOrder(TbCfUserInfoVo tbCfUserInfoVo, TbCfOrderVo pageOrder, List<TbCfCartItemDetailVo> tbCfCartItemDetailList, String toitableId) { private TbCfOrderVo ensureOrder(TbCfUserInfoVo tbCfUserInfoVo, TbCfOrderVo pageOrder, List<TbCfCartItemDetailVo> tbCfCartItemDetailList,String toitableId) {
TbCfOrderVo definiteOrder = getGenericOrder(tbCfCartItemDetailList); TbCfOrderVo definiteOrder = getGenericOrder(tbCfCartItemDetailList);
/*//获取可以使用的优惠券,后续还有判断此订单是否可以使用 /*//获取可以使用的优惠券,后续还有判断此订单是否可以使用
...@@ -626,7 +623,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -626,7 +623,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
}*/ }*/
//计算实际需要付款 //计算实际需要付款
countRealityPay(definiteOrder, toitableId); countRealityPay(definiteOrder,toitableId);
//获取订单地址 //获取订单地址
String deliveryAddressId = pageOrder.getDeliveryAddressId(); String deliveryAddressId = pageOrder.getDeliveryAddressId();
Validator.NOT_BLANK.validate("address", deliveryAddressId); Validator.NOT_BLANK.validate("address", deliveryAddressId);
...@@ -658,7 +655,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -658,7 +655,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
* *
* @return * @return
*/ */
private TbCfOrderVo getGenericOrder(List<TbCfCartItemDetailVo> tbCfCartItemDetailList) { private TbCfOrderVo getGenericOrder(List<TbCfCartItemDetailVo> tbCfCartItemDetailList) {
TbCfOrderVo genericOrder = new TbCfOrderVo(); TbCfOrderVo genericOrder = new TbCfOrderVo();
genericOrder.setItemDetailList(tbCfCartItemDetailList); genericOrder.setItemDetailList(tbCfCartItemDetailList);
...@@ -667,7 +664,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -667,7 +664,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
BigDecimal totalExpressCost = BigDecimal.ZERO; BigDecimal totalExpressCost = BigDecimal.ZERO;
for (TbCfCartItemDetailVo tbCfCartItemDetailVo : tbCfCartItemDetailList) { for (TbCfCartItemDetailVo tbCfCartItemDetailVo : tbCfCartItemDetailList) {
BigDecimal itemNum = BigDecimal.valueOf(tbCfCartItemDetailVo.getItemNum()); BigDecimal itemNum = BigDecimal.valueOf(tbCfCartItemDetailVo.getItemNum());
BigDecimal itemSourcePrice = tbCfCartItemDetailVo.getItemPrice(); BigDecimal itemSourcePrice=tbCfCartItemDetailVo.getItemPrice();
itemsPrice = itemsPrice.add(itemSourcePrice.multiply(itemNum)); itemsPrice = itemsPrice.add(itemSourcePrice.multiply(itemNum));
//计算运费 //计算运费
BigDecimal expressCost = getExpressTemplate(tbCfCartItemDetailVo.getItemCategory()); BigDecimal expressCost = getExpressTemplate(tbCfCartItemDetailVo.getItemCategory());
...@@ -722,7 +719,6 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -722,7 +719,6 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
/** /**
* 用户计算价格2 * 用户计算价格2
*
* @param tbCfUserInfoVo * @param tbCfUserInfoVo
* @param tbCfCartItemDetailList * @param tbCfCartItemDetailList
* @return * @return
...@@ -732,7 +728,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -732,7 +728,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
* @throws InterruptedException * @throws InterruptedException
* @throws TimeoutException * @throws TimeoutException
*/ */
private TbCfOrderVo getOrderData(TbCfUserInfoVo tbCfUserInfoVo, List<TbCfCartItemDetailVo> tbCfCartItemDetailList, String toitableId) throws IOException, URISyntaxException, ExecutionException, InterruptedException, TimeoutException { private TbCfOrderVo getOrderData(TbCfUserInfoVo tbCfUserInfoVo, List<TbCfCartItemDetailVo> tbCfCartItemDetailList,String toitableId) throws IOException, URISyntaxException, ExecutionException, InterruptedException, TimeoutException {
TbCfOrderVo tbCfOrder = getGenericOrder(tbCfCartItemDetailList); TbCfOrderVo tbCfOrder = getGenericOrder(tbCfCartItemDetailList);
/* //获取可以使用的优惠券,后续还有判断此订单是否可以使用 /* //获取可以使用的优惠券,后续还有判断此订单是否可以使用
List<TbCfCouponEntity> tbCfCouponList = tbCfCouponDao.queryUserAvailableCoupon(tbCfUserInfoVo.getUserId(), new Date()); List<TbCfCouponEntity> tbCfCouponList = tbCfCouponDao.queryUserAvailableCoupon(tbCfUserInfoVo.getUserId(), new Date());
...@@ -747,7 +743,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -747,7 +743,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
}*/ }*/
//计算实际需要付款 //计算实际需要付款
countRealityPay(tbCfOrder, toitableId); countRealityPay(tbCfOrder,toitableId);
tbCfOrder.setUserId(tbCfUserInfoVo.getUserId()); tbCfOrder.setUserId(tbCfUserInfoVo.getUserId());
tbCfOrder.setUserName(tbCfUserInfoVo.getNick()); tbCfOrder.setUserName(tbCfUserInfoVo.getNick());
...@@ -760,10 +756,10 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -760,10 +756,10 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
* *
* @param tbCfOrder * @param tbCfOrder
*/ */
private void countRealityPay(TbCfOrderVo tbCfOrder, String toitableId) { private void countRealityPay(TbCfOrderVo tbCfOrder,String toitableId) {
if (toitableId != null) { if(toitableId!=null){
TbCfCouponEntity couponEntity = tbCfOrderDao.queryCouponPrice(toitableId); TbCfCouponEntity couponEntity = tbCfOrderDao.queryCouponPrice(toitableId);
if (couponEntity != null) { if(couponEntity!=null){
tbCfOrder.setCouponPrice(couponEntity.getDeductAmount()); tbCfOrder.setCouponPrice(couponEntity.getDeductAmount());
tbCfOrder.setCouponId(couponEntity.getCouponId()); tbCfOrder.setCouponId(couponEntity.getCouponId());
} }
...@@ -781,7 +777,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService { ...@@ -781,7 +777,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
tbCfOrder.setRealityPay(tbCfOrder.getTotalPrice()); tbCfOrder.setRealityPay(tbCfOrder.getTotalPrice());
} }
removeRedisCache(tbCfOrder); removeRedisCache(tbCfOrder);
orderRedisCache.set(KeyConstant.ORDER_DET + tbCfOrder.getOrderId(), tbCfOrder); orderRedisCache.set(KeyConstant.ORDER_DET + tbCfOrder.getOrderId(),tbCfOrder);
} }
/** /**
......
...@@ -4,7 +4,6 @@ import com.diaoyun.zion.master.util.HttpClientUtil; ...@@ -4,7 +4,6 @@ import com.diaoyun.zion.master.util.HttpClientUtil;
import com.diaoyun.zion.master.util.SortUtil; import com.diaoyun.zion.master.util.SortUtil;
import net.sf.json.JSONObject; import net.sf.json.JSONObject;
import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.BeanUtils;
import org.apache.http.Consts;
import java.util.Map; import java.util.Map;
import java.util.SortedMap; import java.util.SortedMap;
...@@ -36,6 +35,5 @@ public abstract class AbstractTencentCallable<T> implements Callable<Map<String, ...@@ -36,6 +35,5 @@ public abstract class AbstractTencentCallable<T> implements Callable<Map<String,
Map<String, Object> resultMap = JSONObject.fromObject(resultStr); Map<String, Object> resultMap = JSONObject.fromObject(resultStr);
return resultMap; return resultMap;
} }
abstract void fillParam(T param); abstract void fillParam(T param);
} }
...@@ -3,19 +3,11 @@ package com.diaoyun.zion.master.thread; ...@@ -3,19 +3,11 @@ package com.diaoyun.zion.master.thread;
import com.diaoyun.zion.master.bo.TencentTranslateParam; import com.diaoyun.zion.master.bo.TencentTranslateParam;
import com.diaoyun.zion.master.config.DomainProperties; import com.diaoyun.zion.master.config.DomainProperties;
import com.diaoyun.zion.master.enums.TranslateLanguageEnum; import com.diaoyun.zion.master.enums.TranslateLanguageEnum;
import com.diaoyun.zion.master.util.HttpClientUtil;
import com.diaoyun.zion.master.util.IdUtil; import com.diaoyun.zion.master.util.IdUtil;
import com.diaoyun.zion.master.util.SortUtil;
import com.diaoyun.zion.master.util.SpringContextUtil; import com.diaoyun.zion.master.util.SpringContextUtil;
import net.sf.json.JSONObject;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.http.Consts; import org.apache.http.Consts;
import org.apache.http.protocol.HTTP;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.*; import java.util.Map;
import java.util.concurrent.Callable;
/** 腾讯翻译类 /** 腾讯翻译类
* https://api.ai.qq.com/fcgi-bin/nlp/nlp_texttranslate * https://api.ai.qq.com/fcgi-bin/nlp/nlp_texttranslate
...@@ -32,7 +24,6 @@ public class TranslateCallable extends AbstractTencentCallable<TencentTranslateP ...@@ -32,7 +24,6 @@ public class TranslateCallable extends AbstractTencentCallable<TencentTranslateP
this.charset=Consts.UTF_8.name(); this.charset=Consts.UTF_8.name();
} }
// TODO 泛型 // TODO 泛型
@Override @Override
public Map<String, Object> call() throws Exception { public Map<String, Object> call() throws Exception {
//填充参数 //填充参数
......
...@@ -44,8 +44,7 @@ public class TranslateHelper { ...@@ -44,8 +44,7 @@ public class TranslateHelper {
logger.error(e.getMessage(),e); logger.error(e.getMessage(),e);
} }
} }
/**
/**
* 等待翻译结果 * 等待翻译结果
* @param futureList * @param futureList
*/ */
...@@ -88,10 +87,8 @@ public class TranslateHelper { ...@@ -88,10 +87,8 @@ public class TranslateHelper {
} else { } else {
productPropMap.put("translate",(String) productPropMap.get("propName")); productPropMap.put("translate",(String) productPropMap.get("propName"));
} }
} }
translateArray.add(keyTranslateMap); translateArray.add(keyTranslateMap);
} }
// TODO productPropSetMap.put("translateArray",translateArray); // TODO productPropSetMap.put("translateArray",translateArray);
} }
......
...@@ -77,10 +77,14 @@ ...@@ -77,10 +77,14 @@
WHERE a.user_id = #{userId} and a.enable_flag=1 and b.status=1 WHERE a.user_id = #{userId} and a.enable_flag=1 and b.status=1
</select> </select>
<!--修改优惠券为已使用-->
<update id="changeCoupnStatus" parameterType="com.diaoyun.zion.chinafrica.entity.TbCfToiCouponEntity"> <update id="changeCoupnStatus" parameterType="com.diaoyun.zion.chinafrica.entity.TbCfToiCouponEntity">
update tb_cf_toicoupon t set enable_flag = 0 where t.user_id=#{userId} and t.coupon_id=#{couponId} update tb_cf_toicoupon t set enable_flag = 0 where t.user_id=#{userId} and t.coupon_id=#{couponId}
</update> </update>
<!--修改优惠券领取发放记录-->
<update id="updateEnableFlag">
update tb_cf_toicoupon set enable_flag=#{enableFlag} where user_id=#{userId} and coupon_id=#{couponId}
</update>
<insert id="save" parameterType="com.diaoyun.zion.chinafrica.entity.TbCfToiCouponEntity"> <insert id="save" parameterType="com.diaoyun.zion.chinafrica.entity.TbCfToiCouponEntity">
insert into tb_cf_toicoupon( insert into tb_cf_toicoupon(
`toitable_id`, `toitable_id`,
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论