From 1330a6be4013214a272b4256fde57242ecef049a Mon Sep 17 00:00:00 2001 From: yuanye <418471657@qq.com> Date: Thu, 13 Mar 2025 14:07:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E6=96=87=E4=BB=B6=E5=8C=85=E4=B8=8Eservice=20?= =?UTF-8?q?=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/bweb/config/ConfigListener.java | 7 +- .../com/bweb/controller/TestController.java | 85 +++++++++++++++---- .../com/{hfkj => }/ScheduleApplication.java | 3 +- .../{hfkj => schedule}/config/AuthConfig.java | 2 +- .../config/ConfigListener.java | 2 +- .../{hfkj => schedule}/config/CorsConfig.java | 2 +- .../config/MultipartConfig.java | 2 +- .../config/RedisConfig.java | 2 +- .../config/SwaggerConfig.java | 2 +- .../{hfkj => schedule}/config/SysConfig.java | 2 +- .../{hfkj => schedule}/config/SysConst.java | 2 +- .../controller}/CouponSchedule.java | 10 +-- .../controller}/JdGoodsSchedule.java | 36 +++++--- .../controller}/OrderGoodsSchedule.java | 6 +- .../com/hfkj/common/security/UserCenter.java | 3 - .../java/com/hfkj/jd/Impl/JdServiceImpl.java | 8 +- .../main/java/com/hfkj/jd/JdPostService.java | 8 ++ .../src/main/java/com/hfkj/jd/JdService.java | 2 + .../order/impl/BsOrderRefundServiceImpl.java | 29 +++++-- 19 files changed, 146 insertions(+), 67 deletions(-) rename schedule/src/main/java/com/{hfkj => }/ScheduleApplication.java (96%) rename schedule/src/main/java/com/{hfkj => schedule}/config/AuthConfig.java (99%) rename schedule/src/main/java/com/{hfkj => schedule}/config/ConfigListener.java (94%) rename schedule/src/main/java/com/{hfkj => schedule}/config/CorsConfig.java (98%) rename schedule/src/main/java/com/{hfkj => schedule}/config/MultipartConfig.java (95%) rename schedule/src/main/java/com/{hfkj => schedule}/config/RedisConfig.java (99%) rename schedule/src/main/java/com/{hfkj => schedule}/config/SwaggerConfig.java (98%) rename schedule/src/main/java/com/{hfkj => schedule}/config/SysConfig.java (95%) rename schedule/src/main/java/com/{hfkj => schedule}/config/SysConst.java (91%) rename schedule/src/main/java/com/{hfkj/schedule => schedule/controller}/CouponSchedule.java (93%) rename schedule/src/main/java/com/{hfkj/schedule => schedule/controller}/JdGoodsSchedule.java (84%) rename schedule/src/main/java/com/{hfkj/schedule => schedule/controller}/OrderGoodsSchedule.java (97%) diff --git a/bweb/src/main/java/com/bweb/config/ConfigListener.java b/bweb/src/main/java/com/bweb/config/ConfigListener.java index fb81053..3891481 100644 --- a/bweb/src/main/java/com/bweb/config/ConfigListener.java +++ b/bweb/src/main/java/com/bweb/config/ConfigListener.java @@ -1,7 +1,6 @@ package com.bweb.config; -import org.springframework.beans.factory.annotation.Autowired; - +import javax.annotation.Resource; import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; import javax.servlet.annotation.WebListener; @@ -9,9 +8,9 @@ import javax.servlet.annotation.WebListener; @WebListener public class ConfigListener implements ServletContextListener { - @Autowired + @Resource private SysConfig sysConfig; - + @Override public void contextInitialized(ServletContextEvent sce) { SysConst.setSysConfig(sysConfig); diff --git a/bweb/src/main/java/com/bweb/controller/TestController.java b/bweb/src/main/java/com/bweb/controller/TestController.java index 22f8815..0d5c457 100644 --- a/bweb/src/main/java/com/bweb/controller/TestController.java +++ b/bweb/src/main/java/com/bweb/controller/TestController.java @@ -200,7 +200,7 @@ public class TestController { // 工会卡支付 - JSONObject consumption = HuiLianTongUnionCardService.consumption(orderNo, cardNo, payRealPrice, "HiSen_phg_goods", "11101608", "", "241001130753599939订单扣款"); + JSONObject consumption = HuiLianTongUnionCardService.consumption(orderNo, cardNo, payRealPrice, "HiSen_phg_goods", "11101667", "", "250122151032399686订单扣款"); if (!consumption.getString("respCode").equals("0000")) { throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, consumption.getString("respMessage")); } @@ -240,6 +240,7 @@ public class TestController { @ResponseBody @ApiOperation(value = "更新京东物流信息") public ResponseData orderGoodsJd() { + try { List orderGoodsList = orderGoodsService.getListByJd(); @@ -397,13 +398,9 @@ public class TestController { } - - - - @RequestMapping(value="/getGoodsJd",method = RequestMethod.GET) @ResponseBody - @ApiOperation(value = "更新商品") + @ApiOperation(value = "更新京东新增商品") public ResponseData getGoodsJd() { try { jdService.getGoodsJd(); @@ -415,6 +412,20 @@ public class TestController { } } + @RequestMapping(value="/updateGoodsMsg",method = RequestMethod.GET) + @ResponseBody + @ApiOperation(value = "更新商品") + public ResponseData updateGoodsMsg(@RequestParam(value = "skuId", required = false) Long skuId) { + try { + jdService.updateGoodsMsg(skuId); + return ResponseMsgUtil.success(""); + + } catch (Exception e) { + log.error("error!",e); + return ResponseMsgUtil.exception(e); + } + } + @RequestMapping(value="/confirmOrder",method = RequestMethod.GET) @ResponseBody @@ -515,19 +526,48 @@ public class TestController { } } - @RequestMapping(value="/meiTuanRefund",method = RequestMethod.GET) + @RequestMapping(value="/resolveResponse",method = RequestMethod.GET) @ResponseBody - @ApiOperation(value = "meiTuanRefund") - public ResponseData meiTuanRefund() { + @ApiOperation(value = "resolveResponse") + public ResponseData resolveResponse(@RequestParam(value = "data", required = false) String data) { try { + JSONObject consumptionResult = HuiLianTongUnionCardService.resolveResponse(data); +// orderRefundService.meiTuanRefund( +// "R"+DateUtil.date2String(new Date(), "yyMMddHHmmss") + RandomUtils.number(3, false) , +// "1895338934767706172" , +// new BigDecimal("56.14") , +// "美团退款" +// ); + return ResponseMsgUtil.success(consumptionResult); + + } catch (Exception e) { + log.error("error!",e); + return ResponseMsgUtil.exception(e); + } + } + + @RequestMapping(value="/cancelOrder",method = RequestMethod.GET) + @ResponseBody + @ApiOperation(value = "cancelOrder") + public ResponseData cancelOrder(@RequestParam(value = "thirdOrderNo", required = false) String thirdOrderNo, + @RequestParam(value = "childOrderNo", required = false) String childOrderNo) { + try { + JdPostService.cancelOrder(jdService.getToken(), Long.valueOf(thirdOrderNo), childOrderNo , "取消订单!"); + return ResponseMsgUtil.success("取消"); + + } catch (Exception e) { + log.error("error!",e); + return ResponseMsgUtil.exception(e); + } + } - orderRefundService.meiTuanRefund( - "R"+DateUtil.date2String(new Date(), "yyMMddHHmmss") + RandomUtils.number(3, false) , - "1895338934767706172" , - new BigDecimal("56.14") , - "美团退款" - ); - return ResponseMsgUtil.success("成功"); + + @RequestMapping(value="/getOrderCancelProcessDetail",method = RequestMethod.GET) + @ResponseBody + @ApiOperation(value = "getOrderCancelProcessDetail") + public ResponseData getOrderCancelProcessDetail(@RequestParam(value = "thirdOrderNo", required = false) String thirdOrderNo) { + try { + return ResponseMsgUtil.success(JdPostService.getOrderCancelProcessDetail(jdService.getToken(), Long.valueOf(thirdOrderNo))); } catch (Exception e) { log.error("error!",e); @@ -535,5 +575,18 @@ public class TestController { } } + @RequestMapping(value="/deleteMsg",method = RequestMethod.GET) + @ResponseBody + @ApiOperation(value = "deleteMsg") + public ResponseData deleteMsg() { + try { + jdService.deleteMsg(); + return ResponseMsgUtil.success("11"); + + } catch (Exception e) { + log.error("error!",e); + return ResponseMsgUtil.exception(e); + } + } } diff --git a/schedule/src/main/java/com/hfkj/ScheduleApplication.java b/schedule/src/main/java/com/ScheduleApplication.java similarity index 96% rename from schedule/src/main/java/com/hfkj/ScheduleApplication.java rename to schedule/src/main/java/com/ScheduleApplication.java index a322fc5..9f0f831 100644 --- a/schedule/src/main/java/com/hfkj/ScheduleApplication.java +++ b/schedule/src/main/java/com/ScheduleApplication.java @@ -1,4 +1,4 @@ -package com.hfkj; +package com; import com.alicp.jetcache.anno.config.EnableCreateCacheAnnotation; import com.alicp.jetcache.anno.config.EnableMethodCache; @@ -12,7 +12,6 @@ import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.transaction.annotation.EnableTransactionManagement; @SpringBootApplication -// @ComponentScan @EnableTransactionManagement @EnableScheduling @EnableMethodCache(basePackages = "com.hfkj") diff --git a/schedule/src/main/java/com/hfkj/config/AuthConfig.java b/schedule/src/main/java/com/schedule/config/AuthConfig.java similarity index 99% rename from schedule/src/main/java/com/hfkj/config/AuthConfig.java rename to schedule/src/main/java/com/schedule/config/AuthConfig.java index c591cec..973292a 100644 --- a/schedule/src/main/java/com/hfkj/config/AuthConfig.java +++ b/schedule/src/main/java/com/schedule/config/AuthConfig.java @@ -1,4 +1,4 @@ -package com.cweb.config; +package com.schedule.config; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.module.SimpleModule; diff --git a/schedule/src/main/java/com/hfkj/config/ConfigListener.java b/schedule/src/main/java/com/schedule/config/ConfigListener.java similarity index 94% rename from schedule/src/main/java/com/hfkj/config/ConfigListener.java rename to schedule/src/main/java/com/schedule/config/ConfigListener.java index 35eaeda..3d7ab59 100644 --- a/schedule/src/main/java/com/hfkj/config/ConfigListener.java +++ b/schedule/src/main/java/com/schedule/config/ConfigListener.java @@ -1,4 +1,4 @@ -package com.hfkj.config; +package com.schedule.config; import javax.annotation.Resource; import javax.servlet.ServletContextEvent; diff --git a/schedule/src/main/java/com/hfkj/config/CorsConfig.java b/schedule/src/main/java/com/schedule/config/CorsConfig.java similarity index 98% rename from schedule/src/main/java/com/hfkj/config/CorsConfig.java rename to schedule/src/main/java/com/schedule/config/CorsConfig.java index e7b150f..5089457 100644 --- a/schedule/src/main/java/com/hfkj/config/CorsConfig.java +++ b/schedule/src/main/java/com/schedule/config/CorsConfig.java @@ -1,4 +1,4 @@ -package com.hfkj.config; +package com.schedule.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/schedule/src/main/java/com/hfkj/config/MultipartConfig.java b/schedule/src/main/java/com/schedule/config/MultipartConfig.java similarity index 95% rename from schedule/src/main/java/com/hfkj/config/MultipartConfig.java rename to schedule/src/main/java/com/schedule/config/MultipartConfig.java index a60902b..f89dc39 100644 --- a/schedule/src/main/java/com/hfkj/config/MultipartConfig.java +++ b/schedule/src/main/java/com/schedule/config/MultipartConfig.java @@ -1,4 +1,4 @@ -package com.hfkj.config; +package com.schedule.config; import org.springframework.boot.web.servlet.MultipartConfigFactory; import org.springframework.context.annotation.Bean; diff --git a/schedule/src/main/java/com/hfkj/config/RedisConfig.java b/schedule/src/main/java/com/schedule/config/RedisConfig.java similarity index 99% rename from schedule/src/main/java/com/hfkj/config/RedisConfig.java rename to schedule/src/main/java/com/schedule/config/RedisConfig.java index c3dcc94..f5b2b6a 100644 --- a/schedule/src/main/java/com/hfkj/config/RedisConfig.java +++ b/schedule/src/main/java/com/schedule/config/RedisConfig.java @@ -1,4 +1,4 @@ -package com.hfkj.config; +package com.schedule.config; import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.annotation.PropertyAccessor; diff --git a/schedule/src/main/java/com/hfkj/config/SwaggerConfig.java b/schedule/src/main/java/com/schedule/config/SwaggerConfig.java similarity index 98% rename from schedule/src/main/java/com/hfkj/config/SwaggerConfig.java rename to schedule/src/main/java/com/schedule/config/SwaggerConfig.java index b95a4a2..2d6bbf3 100644 --- a/schedule/src/main/java/com/hfkj/config/SwaggerConfig.java +++ b/schedule/src/main/java/com/schedule/config/SwaggerConfig.java @@ -1,4 +1,4 @@ -package com.hfkj.config; +package com.schedule.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/schedule/src/main/java/com/hfkj/config/SysConfig.java b/schedule/src/main/java/com/schedule/config/SysConfig.java similarity index 95% rename from schedule/src/main/java/com/hfkj/config/SysConfig.java rename to schedule/src/main/java/com/schedule/config/SysConfig.java index 084f5ec..aec08da 100644 --- a/schedule/src/main/java/com/hfkj/config/SysConfig.java +++ b/schedule/src/main/java/com/schedule/config/SysConfig.java @@ -1,4 +1,4 @@ -package com.hfkj.config; +package com.schedule.config; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.PropertySource; diff --git a/schedule/src/main/java/com/hfkj/config/SysConst.java b/schedule/src/main/java/com/schedule/config/SysConst.java similarity index 91% rename from schedule/src/main/java/com/hfkj/config/SysConst.java rename to schedule/src/main/java/com/schedule/config/SysConst.java index e4c91e8..bb43a5d 100644 --- a/schedule/src/main/java/com/hfkj/config/SysConst.java +++ b/schedule/src/main/java/com/schedule/config/SysConst.java @@ -1,4 +1,4 @@ -package com.hfkj.config; +package com.schedule.config; public class SysConst { diff --git a/schedule/src/main/java/com/hfkj/schedule/CouponSchedule.java b/schedule/src/main/java/com/schedule/controller/CouponSchedule.java similarity index 93% rename from schedule/src/main/java/com/hfkj/schedule/CouponSchedule.java rename to schedule/src/main/java/com/schedule/controller/CouponSchedule.java index 73e0ad5..fe95a45 100644 --- a/schedule/src/main/java/com/hfkj/schedule/CouponSchedule.java +++ b/schedule/src/main/java/com/schedule/controller/CouponSchedule.java @@ -1,4 +1,4 @@ -package com.hfkj.schedule; +package com.schedule.controller; import com.alibaba.fastjson.JSONObject; import com.hfkj.entity.BsOrderCoupon; @@ -6,11 +6,8 @@ import com.hfkj.entity.BsOrderCouponNo; import com.hfkj.service.coupon.BsOrderCouponNoService; import com.hfkj.service.coupon.BsOrderCouponService; import com.hfkj.service.coupon.channel.HuiLianTongCouponService; -import com.hfkj.service.coupon.channel.PetroConfig; import com.hfkj.service.coupon.channel.YouTuCouponService; import com.hfkj.service.hlt.HuiLianTongUnionCardService; -import com.hfkj.service.order.BsOrderChildService; -import com.hfkj.service.order.BsOrderService; import com.hfkj.sysenum.GoodsVpdSourceEnum; import com.hfkj.sysenum.order.OrderCouponNoStatusEnum; import org.slf4j.Logger; @@ -34,10 +31,7 @@ public class CouponSchedule { private static Logger log = LoggerFactory.getLogger(CouponSchedule.class); - @Resource - private BsOrderChildService orderChildService; - @Resource - private BsOrderService orderService; + @Resource BsOrderCouponService orderCouponService; @Resource diff --git a/schedule/src/main/java/com/hfkj/schedule/JdGoodsSchedule.java b/schedule/src/main/java/com/schedule/controller/JdGoodsSchedule.java similarity index 84% rename from schedule/src/main/java/com/hfkj/schedule/JdGoodsSchedule.java rename to schedule/src/main/java/com/schedule/controller/JdGoodsSchedule.java index 1dcd03d..a53bebe 100644 --- a/schedule/src/main/java/com/hfkj/schedule/JdGoodsSchedule.java +++ b/schedule/src/main/java/com/schedule/controller/JdGoodsSchedule.java @@ -1,23 +1,14 @@ -package com.hfkj.schedule; +package com.schedule.controller; -import com.alibaba.fastjson.JSONObject; -import com.hfkj.common.utils.DateUtil; import com.hfkj.entity.*; import com.hfkj.jd.JdService; import com.hfkj.model.goods.JdGoodsModel; import com.hfkj.service.cms.CmsContentService; -import com.hfkj.service.coupon.BsOrderCouponNoService; -import com.hfkj.service.coupon.BsOrderCouponService; -import com.hfkj.service.coupon.channel.HuiLianTongCouponService; -import com.hfkj.service.coupon.channel.YouTuCouponService; +import com.hfkj.service.goods.BsOrderGoodsService; import com.hfkj.service.goods.GoodsMsgService; -import com.hfkj.service.hlt.HuiLianTongUnionCardService; -import com.hfkj.service.order.BsOrderChildService; -import com.hfkj.service.order.BsOrderService; -import com.hfkj.sysenum.GoodsVpdSourceEnum; -import com.hfkj.sysenum.order.OrderCouponNoStatusEnum; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; import org.springframework.scheduling.annotation.Scheduled; @@ -35,7 +26,7 @@ public class JdGoodsSchedule { private static Logger log = LoggerFactory.getLogger(JdGoodsSchedule.class); - @Resource + @Autowired private JdService jdService; @Resource @@ -43,10 +34,12 @@ public class JdGoodsSchedule { @Resource private CmsContentService cmsContentService; + @Resource + private BsOrderGoodsService orderGoodsService; //每10分钟执行一次 @Scheduled(cron = "0 0/10 * * * ?") - public void etcCarMsg() { + public void deleteMsg() { try { jdService.deleteMsg(); @@ -113,4 +106,19 @@ public class JdGoodsSchedule { cmsContentService.cacheDelete("HOME_DATAWXAPPLETS"); } + + @Scheduled(cron = "0 0/30 * * * ?") + public void orderGoodsLogistics() { + try { + + List orderGoodsList = orderGoodsService.getListByJd(); + + for (BsOrderGoods goods : orderGoodsList) { + jdService.updateDeliveryInfo(goods); + } + + } catch (Exception e) { + log.error("HighUserController --> findByUserId() error!", e); + } + } } diff --git a/schedule/src/main/java/com/hfkj/schedule/OrderGoodsSchedule.java b/schedule/src/main/java/com/schedule/controller/OrderGoodsSchedule.java similarity index 97% rename from schedule/src/main/java/com/hfkj/schedule/OrderGoodsSchedule.java rename to schedule/src/main/java/com/schedule/controller/OrderGoodsSchedule.java index e6cac6e..7cc5c05 100644 --- a/schedule/src/main/java/com/hfkj/schedule/OrderGoodsSchedule.java +++ b/schedule/src/main/java/com/schedule/controller/OrderGoodsSchedule.java @@ -1,16 +1,12 @@ -package com.hfkj.schedule; +package com.schedule.controller; import com.alibaba.fastjson.JSONObject; -import com.hfkj.common.exception.ErrorCode; -import com.hfkj.common.exception.ErrorHelp; -import com.hfkj.common.exception.SysCode; import com.hfkj.common.utils.DateUtil; import com.hfkj.entity.*; import com.hfkj.jd.JdService; import com.hfkj.qianzhu.StarbucksService; import com.hfkj.service.goods.BsOrderGoodsService; import com.hfkj.service.goods.BsOrderStarbucksService; -import com.hfkj.service.goods.GoodsUserAddressService; import com.hfkj.service.goods.impl.BsOrderMeiTuanServiceImpl; import com.hfkj.service.goods.impl.BsOrderStarbucksServiceImpl; import com.hfkj.service.order.BsOrderChildService; diff --git a/service/src/main/java/com/hfkj/common/security/UserCenter.java b/service/src/main/java/com/hfkj/common/security/UserCenter.java index fa479d4..a8058f0 100644 --- a/service/src/main/java/com/hfkj/common/security/UserCenter.java +++ b/service/src/main/java/com/hfkj/common/security/UserCenter.java @@ -4,7 +4,6 @@ import com.hfkj.common.exception.ErrorCode; import com.hfkj.common.exception.ErrorHelp; import com.hfkj.common.exception.SysCode; import com.hfkj.common.utils.RedisUtil; -import com.hfkj.model.SecUserSessionObject; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -13,9 +12,7 @@ import org.springframework.stereotype.Component; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; -import javax.servlet.http.Cookie; import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; @Component public class UserCenter { diff --git a/service/src/main/java/com/hfkj/jd/Impl/JdServiceImpl.java b/service/src/main/java/com/hfkj/jd/Impl/JdServiceImpl.java index 67f9246..e9de2af 100644 --- a/service/src/main/java/com/hfkj/jd/Impl/JdServiceImpl.java +++ b/service/src/main/java/com/hfkj/jd/Impl/JdServiceImpl.java @@ -469,6 +469,11 @@ public class JdServiceImpl implements JdService { } + @Override + public void updateGoodsMsg(Long skuId) throws Exception { + updateGoodsMsg(getToken() , skuId); + } + @Override public void deleteMsg() throws Exception { @@ -540,6 +545,7 @@ public class JdServiceImpl implements JdService { // 设置原价 specs.setOriginalPrice(price.getMarketPrice()); specs.setThirdPrice(price.getJdPrice()); + specs.setName(goodsMsg.getTitle()); specs.setExt3(price.getSalePrice().toString()); // 设置展示图片 goodsSpecsService.update(specs); @@ -586,7 +592,7 @@ public class JdServiceImpl implements JdService { // 更新商品信息 goodsMsgService.update(goodsMsg); - + updatePrice(goodsMsg); } diff --git a/service/src/main/java/com/hfkj/jd/JdPostService.java b/service/src/main/java/com/hfkj/jd/JdPostService.java index edb1294..a6e87a7 100644 --- a/service/src/main/java/com/hfkj/jd/JdPostService.java +++ b/service/src/main/java/com/hfkj/jd/JdPostService.java @@ -378,6 +378,14 @@ public class JdPostService { client.execute(request); } + // 查询取消订单详情 + public static VopOrderQueryOrderOpenProviderGetOrderCancelProcessDetailResponse getOrderCancelProcessDetail(String token , Long jdOrderId ) throws Exception { + JdClient client=new DefaultJdClient(SERVER_URL,token,CommonSysConst.getSysConfig().getJDAppKey(),CommonSysConst.getSysConfig().getJDAppSecret()); + VopOrderQueryOrderOpenProviderGetOrderCancelProcessDetailRequest request=new VopOrderQueryOrderOpenProviderGetOrderCancelProcessDetailRequest(); + request.setJdOrderId(jdOrderId); + return client.execute(request); + } + // 确定订单 public static VopOrderConfirmOrderResponse confirmOrder(String token , Long jdOrderId , String thirdOrderId , String remarks) throws Exception { JdClient client=new DefaultJdClient(SERVER_URL,token,CommonSysConst.getSysConfig().getJDAppKey(),CommonSysConst.getSysConfig().getJDAppSecret()); diff --git a/service/src/main/java/com/hfkj/jd/JdService.java b/service/src/main/java/com/hfkj/jd/JdService.java index 32712f4..5d30c78 100644 --- a/service/src/main/java/com/hfkj/jd/JdService.java +++ b/service/src/main/java/com/hfkj/jd/JdService.java @@ -61,6 +61,8 @@ public interface JdService { */ void cancelOrder(String childNo); + void updateGoodsMsg(Long skuId) throws Exception; + /** * @MethodName deleteMsg * @Description: 消费消息 diff --git a/service/src/main/java/com/hfkj/service/order/impl/BsOrderRefundServiceImpl.java b/service/src/main/java/com/hfkj/service/order/impl/BsOrderRefundServiceImpl.java index 71c4b33..0d53253 100644 --- a/service/src/main/java/com/hfkj/service/order/impl/BsOrderRefundServiceImpl.java +++ b/service/src/main/java/com/hfkj/service/order/impl/BsOrderRefundServiceImpl.java @@ -20,6 +20,7 @@ import com.hfkj.service.coupon.BsOrderCouponService; import com.hfkj.service.discount.CouponDiscountUserRelService; import com.hfkj.service.goods.BsOrderMeiTuanService; import com.hfkj.service.goods.GoodsVpdService; +import com.hfkj.service.hlt.BsHltCardRecordService; import com.hfkj.service.hlt.HltCardRefundService; import com.hfkj.service.hlt.HuiLianTongUnionCardService; import com.hfkj.service.order.BsOrderChildService; @@ -81,6 +82,8 @@ public class BsOrderRefundServiceImpl implements BsOrderRefundService { private BsOrderCouponNoService orderCouponNoService; @Resource private CouponDiscountUserRelService discountUserRelService; + @Resource + private BsHltCardRecordService bsHltCardRecordService; @Override public void editData(BsOrderRefund data) { data.setUpdateTime(new Date()); @@ -184,10 +187,10 @@ public class BsOrderRefundServiceImpl implements BsOrderRefundService { throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "未知的交易订单"); } + // 创建退款订单 BsOrderRefund orderRefund = new BsOrderRefund(); orderRefund.setMerId(orderChild.getMerId()); - orderRefund.setOrderNo(orderChild.getOrderNo()); orderRefund.setOrderChildNo(orderChild.getChildOrderNo()); orderRefund.setUserId(order.getUserId()); orderRefund.setUserPhone(order.getUserPhone()); @@ -196,10 +199,24 @@ public class BsOrderRefundServiceImpl implements BsOrderRefundService { orderRefund.setRefundPayChannel(order.getPayChannel()); orderRefund.setReufndPayType(order.getPayType()); + // 查询是否存在已经退款过记录 + BsHltCardRecord hltCardRecord = bsHltCardRecordService.getNewPayOrderNo(orderChild.getOrderNo()); + + if (hltCardRecord != null) { + orderRefund.setOrderNo(hltCardRecord.getPayOrderNo()); + } else { + orderRefund.setOrderNo(orderChild.getOrderNo()); + } if (goodsVpdSource(orderChild)) { - // 已经使用金额 - BigDecimal useAmount = getRefundAmount(orderChild); + BigDecimal useAmount; + if (orderChild.getExt3() != null && orderChild.getExt3().equals("老数据退款")) { + // 已经使用金额 + useAmount = new BigDecimal(orderChild.getExt2()); + } else { + useAmount = getRefundAmount(orderChild); + } + if (useAmount == null) { throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "退款失败!"); } @@ -214,7 +231,9 @@ public class BsOrderRefundServiceImpl implements BsOrderRefundService { // 部分退款 // 计算单价 BigDecimal unitPrice = orderChild.getProductActualPrice().subtract(useAmount); - orderRefund.setRefundPrice(unitPrice.multiply(new BigDecimal(productCount.toString()))); + BigDecimal unitPriceIntegral = unitPrice.divide(orderChild.getProductActualPrice() , 2, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(orderChild.getSurplusRefundIntegral().toString())); + orderRefund.setRefundPrice(unitPrice); + orderRefund.setRefundIntegral(unitPriceIntegral.multiply(new BigDecimal("100")).longValue()); } if (orderChild.getProductActualPrice().compareTo(useAmount) < 0) { @@ -241,8 +260,6 @@ public class BsOrderRefundServiceImpl implements BsOrderRefundService { } - - if (orderRefund.getRefundIntegral() > 0L) { Map opUser = new HashMap<>(); opUser.put("opUserType", orderRefund.getOpUserType());