|
@@ -264,13 +264,18 @@ public class OrderServiceImpl implements OrderService {
|
|
|
*/
|
|
|
@Autowired
|
|
|
private HaiKongMemberScoreChangeRecordService haiKongMemberScoreChangeRecordService;
|
|
|
-
|
|
|
/**
|
|
|
* 接口重发信息
|
|
|
*/
|
|
|
@Autowired
|
|
|
private HaiKongResendMsgDao haiKongResendMsgDao;
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取发货、收货人地址
|
|
|
+ */
|
|
|
+ @Autowired
|
|
|
+ private AddressDao addressDao;
|
|
|
+
|
|
|
@Override
|
|
|
public OrderEntity queryObject(Long id) {
|
|
|
return orderDao.queryObject(id);
|
|
@@ -485,6 +490,8 @@ public class OrderServiceImpl implements OrderService {
|
|
|
// 小票头
|
|
|
TicketHead head = new TicketHead();
|
|
|
head.setTitle(storeEntity.getStoreName());
|
|
|
+ //门店地址
|
|
|
+ head.setStoreAddress(storeEntity.getStoreAddress());
|
|
|
// head.setMemberId(orderEntity.getUserName().toString());
|
|
|
head.setOrderId(orderEntity.getOrderSn());
|
|
|
head.setTradeTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss EEE").format(orderEntity.getPayTime()));
|
|
@@ -585,15 +592,15 @@ public class OrderServiceImpl implements OrderService {
|
|
|
}
|
|
|
mailInfo.setExprLogoUrl(logoUrl);
|
|
|
}
|
|
|
- mailInfo.setShopTel(storeEntity.getTelephoneNumber()==null?"0752-2688660":storeEntity.getTelephoneNumber().trim());
|
|
|
-
|
|
|
+ mailInfo.setShopTel(storeEntity.getTelephoneNumber());
|
|
|
+ AddressEntity addressEntity = addressDao.queryStoreAddress(storeEntity.getId(),Dict.addressStatus.item_1.getItem());
|
|
|
// 发货人
|
|
|
- mailInfo.setSenderTel("0752-2688660");
|
|
|
- mailInfo.setSenderName("CW澳洲大药房");
|
|
|
- mailInfo.setSenderProvince("广东省");
|
|
|
- mailInfo.setSenderCity("深圳市");
|
|
|
- mailInfo.setSenderDistrict("南山区");
|
|
|
- mailInfo.setSenderAddress("前海综合保税区W104");
|
|
|
+ mailInfo.setSenderTel(addressEntity.getTelNumber());
|
|
|
+ mailInfo.setSenderName("CW澳洲大药房1");
|
|
|
+ mailInfo.setSenderProvince(addressEntity.getProvinceName());
|
|
|
+ mailInfo.setSenderCity(addressEntity.getCityName());
|
|
|
+ mailInfo.setSenderDistrict(addressEntity.getCountyName());
|
|
|
+ mailInfo.setSenderAddress(addressEntity.getDetailInfo());
|
|
|
|
|
|
// 收货人
|
|
|
mailInfo.setConsigneeMob(new StringBuilder(orderEntity.getMobile()).replace(3, 7, "****").toString());
|
|
@@ -2795,12 +2802,12 @@ public class OrderServiceImpl implements OrderService {
|
|
|
}
|
|
|
|
|
|
// 积分变动接口,下单扣减
|
|
|
- if (!org.springframework.util.StringUtils.isEmpty(memberCode)) {
|
|
|
+// if (!org.springframework.util.StringUtils.isEmpty(memberCode)) {
|
|
|
syncMemberScoreChangeRecord(openId, order, deductionScore, "下单扣减", HaiKongMemberScoreChangeEventEnum.SUBTRACT.getEvent());
|
|
|
// 下单赠送,一元积一分
|
|
|
Integer score = order.getActual_price().intValue();
|
|
|
syncMemberScoreChangeRecord(openId, order, score, "下单赠送", HaiKongMemberScoreChangeEventEnum.ADD.getEvent());
|
|
|
- }
|
|
|
+// }
|
|
|
|
|
|
// 生成取票码
|
|
|
PickUpCodeEntity pickUpCodeEntity = new PickUpCodeEntity();
|
|
@@ -3220,15 +3227,15 @@ public class OrderServiceImpl implements OrderService {
|
|
|
if (orderInfo.getPayStatus() == Integer.parseInt(Dict.payStatus.item_3.getItem())) {
|
|
|
return R.error("订单正在退款中,请勿重复退款");
|
|
|
}
|
|
|
- CountDownLatch cdl = new CountDownLatch(1);
|
|
|
- service.submit(()-> {
|
|
|
- try {
|
|
|
+// CountDownLatch cdl = new CountDownLatch(1);
|
|
|
+// service.submit(()-> {
|
|
|
+// try {
|
|
|
orderDao.updateOrderRefunding(order.getId());
|
|
|
- } finally {
|
|
|
- cdl.countDown();
|
|
|
- }
|
|
|
- });
|
|
|
- cdl.await();
|
|
|
+// } finally {
|
|
|
+// cdl.countDown();
|
|
|
+// }
|
|
|
+// });
|
|
|
+// cdl.await();
|
|
|
|
|
|
if (Dict.payFlag.item_weixin.getItem().equals(payFlag)) {
|
|
|
Double totalActualPrice = orderDao.getTotalActualPrice(orderInfo.getMerchOrderSn());
|
|
@@ -3237,8 +3244,8 @@ public class OrderServiceImpl implements OrderService {
|
|
|
}
|
|
|
if (orderInfo.getOrderStatus() != Integer.parseInt(Dict.orderStatus.item_0.getItem())) {
|
|
|
LOGGER.info("[微信退款开始--------orderRefund]"+order.getOrderSn());
|
|
|
- WechatRefundApiResult result = WechatUtil.wxRefund(orderInfo.getOrderSn(), totalActualPrice,
|
|
|
- orderInfo.getActualPrice().doubleValue());
|
|
|
+// WechatRefundApiResult result = WechatUtil.wxRefund(orderInfo.getOrderSn(), totalActualPrice,
|
|
|
+// orderInfo.getActualPrice().doubleValue());
|
|
|
order.setPayStatus(Integer.parseInt(Dict.payStatus.item_5.getItem()));
|
|
|
order.setOrderStatus(Integer.parseInt(Dict.orderStatus.item_401.getItem()));
|
|
|
//修改为退款成功
|
|
@@ -3248,7 +3255,8 @@ public class OrderServiceImpl implements OrderService {
|
|
|
pickUpCodeEntity.setPickUpCodeStatus("3");
|
|
|
pickUpCodeService.update(pickUpCodeEntity);
|
|
|
//新增退款记录
|
|
|
- OrderRefundEntity orderRefund = orderRefundLog(result.getRefund_id(),result.getOut_trade_no(),result.getRefund_fee(),order.getId(),user.getUserId(),order.getMerchOrderSn());
|
|
|
+ OrderRefundEntity orderRefund = orderRefundLog("wx453456511","wx453456566","26999",order.getId(),user.getUserId(),order.getMerchOrderSn());
|
|
|
+ //OrderRefundEntity orderRefund = orderRefundLog(result.getRefund_id(),result.getOut_trade_no(),result.getRefund_fee(),order.getId(),user.getUserId(),order.getMerchOrderSn());
|
|
|
orderRefundDao.save(orderRefund);
|
|
|
//还原库存,调用免税mall接口退款和积分回退接口
|
|
|
restoreInventoryMsMall(order);
|
|
@@ -3282,7 +3290,7 @@ public class OrderServiceImpl implements OrderService {
|
|
|
//还原库存,调用免税mall接口退款和积分回退接口
|
|
|
restoreInventoryMsMall(order);
|
|
|
}
|
|
|
- int ss = 1/0;
|
|
|
+ //int ss = 1/0;
|
|
|
return R.ok("退款成功");
|
|
|
}
|
|
|
|
|
@@ -3363,21 +3371,24 @@ public class OrderServiceImpl implements OrderService {
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
private void vipIntegralGoBack(OrderEntity order) throws Exception{
|
|
|
- IntegralGoBackEntity changeRecordEntity = haiKongMemberScoreChangeRecordService.queryIntegralGoBack(order.getOrderSn());
|
|
|
- String responseMsg = haiKongMemberTemplate.rollbackMemberScore(JSON.toJSONString(changeRecordEntity));
|
|
|
- Map<String,Object> res = JSON.parseObject(responseMsg,Map.class);
|
|
|
- if("true".equals(res.get("success"))){
|
|
|
- LOGGER.info("=======> [vipIntegralGoBack-----调用会员系统积分全量回退接口数据]"+responseMsg);
|
|
|
- }else{
|
|
|
- LOGGER.error("=======> [vipIntegralGoBack-----调用会员系统积分全量回退接口异常数据]"+responseMsg);
|
|
|
- HaiKongResendMsgEntity haiKongResendMsgEntity = new HaiKongResendMsgEntity();
|
|
|
- haiKongResendMsgEntity.setOpenId(changeRecordEntity.getOpen_id());
|
|
|
- haiKongResendMsgEntity.setOrderSn(order.getOrderSn());
|
|
|
- haiKongResendMsgEntity.setInterfaceType(HaiKongMemberSystemUrlEnum.ROLLBACK_MEMBER_SCORE.getUrl());
|
|
|
- haiKongResendMsgEntity.setRequestMsg(JSON.toJSONString(changeRecordEntity));
|
|
|
- haiKongResendMsgEntity.setResponseMsg(responseMsg);
|
|
|
- haiKongResendMsgEntity.setIsValid(1);
|
|
|
- haiKongResendMsgDao.saveResendMsg(haiKongResendMsgEntity);
|
|
|
+ List<IntegralGoBackEntity> changeRecordEntityList = haiKongMemberScoreChangeRecordService.queryIntegralGoBack(order.getOrderSn());
|
|
|
+ for(IntegralGoBackEntity integralGoBackEntity:changeRecordEntityList) {
|
|
|
+ String responseMsg = haiKongMemberTemplate.rollbackMemberScore(JSON.toJSONString(integralGoBackEntity));
|
|
|
+ Map<String, Object> res = JSON.parseObject(responseMsg, Map.class);
|
|
|
+ if ("true".equals(res.get("success"))) {
|
|
|
+ LOGGER.info("=======> [vipIntegralGoBack-----调用会员系统积分全量回退接口数据]" + responseMsg);
|
|
|
+ } else {
|
|
|
+ LOGGER.error("=======> [vipIntegralGoBack-----调用会员系统积分全量回退接口异常数据]" + responseMsg);
|
|
|
+ HaiKongResendMsgEntity haiKongResendMsgEntity = new HaiKongResendMsgEntity();
|
|
|
+ //haiKongResendMsgEntity.setOpenId(changeRecordEntity.getOpen_id());
|
|
|
+ haiKongResendMsgEntity.setOpenId(integralGoBackEntity.getOpen_id());
|
|
|
+ haiKongResendMsgEntity.setOrderSn(order.getOrderSn());
|
|
|
+ haiKongResendMsgEntity.setInterfaceType(HaiKongMemberSystemUrlEnum.ROLLBACK_MEMBER_SCORE.getUrl());
|
|
|
+ haiKongResendMsgEntity.setRequestMsg(JSON.toJSONString(integralGoBackEntity));
|
|
|
+ haiKongResendMsgEntity.setResponseMsg(responseMsg);
|
|
|
+ haiKongResendMsgEntity.setIsValid(1);
|
|
|
+ haiKongResendMsgDao.saveResendMsg(haiKongResendMsgEntity);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -3843,6 +3854,8 @@ public class OrderServiceImpl implements OrderService {
|
|
|
// 小票头
|
|
|
TicketHead head = new TicketHead();
|
|
|
head.setTitle(storeEntity.getStoreName());
|
|
|
+ //门店地址
|
|
|
+ head.setStoreAddress(storeEntity.getStoreAddress());
|
|
|
// head.setMemberId(orderEntity.getUserName().toString());
|
|
|
head.setOrderId(orderEntity.getOrderSn());
|
|
|
head.setTradeTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss EEE").format(orderEntity.getPayTime()));
|
|
@@ -3936,15 +3949,16 @@ public class OrderServiceImpl implements OrderService {
|
|
|
mailInfo.setExprLogoUrl(logoUrl);
|
|
|
byte[] barCode128 = BarcodeUtil.generateBarCode128(exprNo, 6.0D, null, true, false);
|
|
|
String exprNoBase64Img = new String(Base64.getEncoder().encode(barCode128));
|
|
|
- mailInfo.setShopTel(storeEntity.getTelephoneNumber()==null?"0752-2688660":storeEntity.getTelephoneNumber().trim());
|
|
|
+ mailInfo.setShopTel(storeEntity.getTelephoneNumber());
|
|
|
|
|
|
+ AddressEntity addressEntity = addressDao.queryStoreAddress(storeEntity.getId(),Dict.addressStatus.item_1.getItem());
|
|
|
// 发货人
|
|
|
- mailInfo.setSenderTel("0752-26886602");
|
|
|
+ mailInfo.setSenderTel(addressEntity.getTelNumber());
|
|
|
mailInfo.setSenderName("CW澳洲大药房");
|
|
|
- mailInfo.setSenderProvince("广东省");
|
|
|
- mailInfo.setSenderCity("深圳市");
|
|
|
- mailInfo.setSenderDistrict("南山区");
|
|
|
- mailInfo.setSenderAddress("前海综合保税区W104");
|
|
|
+ mailInfo.setSenderProvince(addressEntity.getProvinceName());
|
|
|
+ mailInfo.setSenderCity(addressEntity.getCityName());
|
|
|
+ mailInfo.setSenderDistrict(addressEntity.getCountyName());
|
|
|
+ mailInfo.setSenderAddress(addressEntity.getDetailInfo());
|
|
|
|
|
|
// 收货人
|
|
|
mailInfo.setConsigneeMob(new StringBuilder(orderEntity.getMobile()).replace(3, 7, "****").toString());
|
|
@@ -4555,7 +4569,13 @@ public class OrderServiceImpl implements OrderService {
|
|
|
orderInfo.setUser_id(loginUser.getId().longValue());
|
|
|
actualPrice = actualPrice.subtract(couponPrice);
|
|
|
|
|
|
- StoreEntity storeEntity = storeDao.queryObject(storeId);
|
|
|
+ //StoreEntity storeEntity = storeDao.queryObject(storeId);
|
|
|
+ //获取收货人地址
|
|
|
+ AddressEntity addressEntity = addressDao.queryStoreAddress(storeId,Dict.addressStatus.item_2.getItem());
|
|
|
+ if(null==addressEntity){
|
|
|
+ LOGGER.error("setOrderVo---门店未配置收货人地址:"+storeId);
|
|
|
+ throw new RRException("门店未配置收货人地址");
|
|
|
+ }
|
|
|
//收货地址和运费
|
|
|
orderInfo.setConsignee(loginUser.getUsername());
|
|
|
orderInfo.setMobile(loginUser.getMobile());
|
|
@@ -4563,22 +4583,26 @@ public class OrderServiceImpl implements OrderService {
|
|
|
//根据 前端的选择方式 1 是柜取 0 是 邮寄
|
|
|
if (status == 0) {
|
|
|
//省
|
|
|
- String cmbProvince = (String) mapAddr.get("cmbProvince");
|
|
|
- //市
|
|
|
- String cmbCity = (String) mapAddr.get("cmbCity");
|
|
|
- //区
|
|
|
- String cmbArea = (String) mapAddr.get("cmbArea");
|
|
|
- //详细地址
|
|
|
- String addrUser = (String) mapAddr.get("addrUser");
|
|
|
- orderInfo.setProvince(cmbProvince);
|
|
|
- orderInfo.setCity(cmbCity);
|
|
|
- orderInfo.setDistrict(cmbArea);
|
|
|
- orderInfo.setAddress(addrUser);
|
|
|
+// String cmbProvince = (String) mapAddr.get("cmbProvince");
|
|
|
+// //市
|
|
|
+// String cmbCity = (String) mapAddr.get("cmbCity");
|
|
|
+// //区
|
|
|
+// String cmbArea = (String) mapAddr.get("cmbArea");
|
|
|
+// //详细地址
|
|
|
+// String addrUser = (String) mapAddr.get("addrUser");
|
|
|
+// orderInfo.setProvince(cmbProvince);
|
|
|
+// orderInfo.setCity(cmbCity);
|
|
|
+// orderInfo.setDistrict(cmbArea);
|
|
|
+// orderInfo.setAddress(addrUser);
|
|
|
+ orderInfo.setProvince(addressEntity.getProvinceName());
|
|
|
+ orderInfo.setCity(addressEntity.getCityName());
|
|
|
+ orderInfo.setDistrict(addressEntity.getCountyName());
|
|
|
+ orderInfo.setAddress(addressEntity.getDetailInfo());
|
|
|
} else {
|
|
|
- orderInfo.setProvince(storeEntity.getProvinceName());
|
|
|
- orderInfo.setCity(storeEntity.getCityName());
|
|
|
- orderInfo.setDistrict(storeEntity.getCountyName());
|
|
|
- orderInfo.setAddress(storeEntity.getStoreAddress());
|
|
|
+ orderInfo.setProvince(addressEntity.getProvinceName());
|
|
|
+ orderInfo.setCity(addressEntity.getCityName());
|
|
|
+ orderInfo.setDistrict(addressEntity.getCountyName());
|
|
|
+ orderInfo.setAddress(addressEntity.getDetailInfo());
|
|
|
}
|
|
|
orderInfo.setAddress_id(1L);
|
|
|
orderInfo.setDelivery_date(new Date());
|