|
@@ -1,6 +1,5 @@
|
|
|
package com.fs.store.service.impl;
|
|
|
|
|
|
-import java.lang.reflect.Field;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.nio.charset.Charset;
|
|
|
import java.sql.Timestamp;
|
|
@@ -68,9 +67,9 @@ import com.fs.store.enums.*;
|
|
|
import com.fs.store.mapper.*;
|
|
|
import com.fs.store.param.*;
|
|
|
import com.fs.store.service.*;
|
|
|
-import com.fs.store.service.handler.PaymentHandler;
|
|
|
-import com.fs.store.service.handler.PaymentHandlerHolder;
|
|
|
-import com.fs.store.service.handler.param.PayProcessContext;
|
|
|
+import com.fs.store.service.channel.PaymentHandler;
|
|
|
+import com.fs.store.service.channel.PaymentHandlerHolder;
|
|
|
+import com.fs.store.service.channel.param.PayProcessContext;
|
|
|
import com.fs.store.vo.*;
|
|
|
import com.fs.system.service.ISysConfigService;
|
|
|
import com.fs.tzBank.TzBankService;
|
|
@@ -307,7 +306,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
if(ObjectUtil.isNull(payment)){
|
|
|
throw new CustomException("支付方式不存在");
|
|
|
}
|
|
|
- R process = payment.process(processContext);
|
|
|
+ R process = payment.createOrder(processContext);
|
|
|
if("200".equals(String.valueOf(process.get("code")))){
|
|
|
redisCache.setCacheObject("isPaying:"+order.getId(),order.getId().toString(),1, TimeUnit.MINUTES);
|
|
|
return process;
|
|
@@ -590,16 +589,11 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
//检测库存
|
|
|
//三种特定产品发YDSP001
|
|
|
int ydspHouse = 0;
|
|
|
- //如果是美乳产品,发武汉仓库
|
|
|
- Integer meiruCount=0;
|
|
|
for (FsStoreCartQueryVO cart : carts) {
|
|
|
- // cartService.checkProductStock( cart.getProductId(),cart.getProductAttrValueId());
|
|
|
totalNum += cart.getCartNum();
|
|
|
integral = NumberUtil.add(integral,
|
|
|
NumberUtil.mul(cart.getCartNum(), cart.getIntegral()));
|
|
|
-// if(cart.getCateId()!=null&&cart.getCateId().equals(176L)){
|
|
|
-// meiruCount++;
|
|
|
-// }
|
|
|
+
|
|
|
if(param.getCompanyId()==null){
|
|
|
if(StringUtils.isEmpty(cart.getGroupBarCode())){
|
|
|
if (cart.getCartNum()>10){
|
|
@@ -638,7 +632,6 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
|
|
|
//修改默认仓库
|
|
|
if(ydspHouse>0){
|
|
|
-// storeOrder.setStoreHouseCode("WHSP001");
|
|
|
storeOrder.setStoreHouseCode("YDSP001");
|
|
|
}
|
|
|
else{
|
|
@@ -750,13 +743,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
if (flag==0) {
|
|
|
return R.error("订单创建失败");
|
|
|
}
|
|
|
- //收款单更新
|
|
|
-// if(param.getPaymentId()!=null&¶m.getPaymentId()>0){
|
|
|
-// FsStorePayment payment=new FsStorePayment();
|
|
|
-// payment.setOrderId(storeOrder.getId());
|
|
|
-// payment.setPaymentId(param.getPaymentId());
|
|
|
-// paymentService.updateFsStorePayment(payment);
|
|
|
-// }
|
|
|
+
|
|
|
//使用了积分扣积分
|
|
|
if (dto.getUsedIntegral() > 0) {
|
|
|
this.decIntegral(userId, dto.getUsedIntegral(), dto.getDeductionPrice().doubleValue(),storeOrder.getId().toString());
|
|
@@ -803,7 +790,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
fsStoreOrderItemMapper.insertFsStoreOrderItem(item);
|
|
|
listOrderItem.add(item);
|
|
|
}
|
|
|
- if(listOrderItem.size()>0){
|
|
|
+ if(CollectionUtils.isNotEmpty(listOrderItem)){
|
|
|
String itemJson=JSONUtil.toJsonStr(listOrderItem);
|
|
|
storeOrder.setItemJson(itemJson);
|
|
|
fsStoreOrderMapper.updateFsStoreOrder(storeOrder);
|
|
@@ -1051,8 +1038,6 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
public List<FsMyStoreOrderListQueryVO> selectFsMyStoreOrderListVO(FsMyStoreOrderQueryParam param) {
|
|
|
List<FsMyStoreOrderListQueryVO> list= fsStoreOrderMapper.selectFsMyStoreOrderListVO(param);
|
|
|
for(FsMyStoreOrderListQueryVO vo:list){
|
|
|
-// List<FsStoreOrderItemVO> items=fsStoreOrderItemMapper.selectMyFsStoreOrderItemListByOrderId(vo.getId());
|
|
|
-// vo.setItems(items);
|
|
|
if(StringUtils.isNotEmpty(vo.getItemJson())){
|
|
|
JSONArray jsonArray=JSONUtil.parseArray(vo.getItemJson());
|
|
|
List<FsStoreOrderItemVO> items=JSONUtil.toList(jsonArray, FsStoreOrderItemVO.class);
|
|
@@ -1215,7 +1200,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- @Transactional
|
|
|
+ @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED)
|
|
|
public R createPackageOrder(long uid, FsStorePackageOrderCreateParam param) {
|
|
|
//计算金额
|
|
|
String packageId = redisCache.getCacheObject("orderKey:" + param.getOrderKey());
|
|
@@ -1241,8 +1226,6 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
List<StorePackageProductDTO> goodsList=JSONUtil.toList(jsonArray,StorePackageProductDTO.class);
|
|
|
//检测库存
|
|
|
Integer totalNum=0;
|
|
|
- //如果是美乳产品,发武汉仓库
|
|
|
- Integer meiruCount=0;
|
|
|
//指定三个产品发ydsp
|
|
|
int ydspHouse = 0;
|
|
|
List<FsStoreCartQueryVO> carts=new ArrayList<>();
|
|
@@ -1264,9 +1247,6 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
vo.setPrice(product.getPrice());
|
|
|
vo.setProductType(product.getProductType());
|
|
|
carts.add(vo);
|
|
|
-// if(product.getCateId()!=null&&product.getCateId().equals(176L)){
|
|
|
-// meiruCount++;
|
|
|
-// }
|
|
|
//判断是否是三种特定产品
|
|
|
if(product.getProductId()!=null&&(product.getProductId().equals(3168L)||product.getProductId().equals(3184L)||product.getProductId().equals(3185L))){
|
|
|
ydspHouse++;
|
|
@@ -1274,12 +1254,9 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
|
|
|
}
|
|
|
}
|
|
|
- //cartService.checkProductStock(attrValue.getProductId(),attrValue.getId(), goods.getCount() );
|
|
|
}
|
|
|
//生成分布式唯一值
|
|
|
String orderSn = IdUtil.getSnowflake(0, 0).nextIdStr();
|
|
|
- //是否使用积分
|
|
|
- Boolean isIntegral=false;
|
|
|
//组合数据
|
|
|
CompanyUser user= companyUserService.selectCompanyUserById(param.getCompanyUserId());
|
|
|
FsStoreOrder storeOrder = new FsStoreOrder();
|
|
@@ -1605,26 +1582,17 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
erpOrder.setVip_code(order.getUserId().toString());
|
|
|
}
|
|
|
erpOrder.setPlatform_code(order.getOrderCode());
|
|
|
-// if(order.getStoreHouseCode()==null){
|
|
|
-// erpOrder.setWarehouse_code("CQDS001");
|
|
|
-// }
|
|
|
-// else{
|
|
|
-// erpOrder.setWarehouse_code(order.getStoreHouseCode());
|
|
|
-// }
|
|
|
if(order.getStoreHouseCode().equals("YDSP001")){
|
|
|
erpOrder.setShop_code("RunDayWuHan");
|
|
|
}
|
|
|
else{
|
|
|
erpOrder.setShop_code(sysConfig.getErpShopCode());
|
|
|
}
|
|
|
-// erpOrder.setPost_fee(order.getTotalPostage().doubleValue());
|
|
|
erpOrder.setSeller_memo(order.getMark());
|
|
|
- // order.setCurrency_code("JCZD");
|
|
|
List<ErpOrderPayment> payments=new ArrayList<>();
|
|
|
ErpOrderPayment payment=new ErpOrderPayment();
|
|
|
payment.setPay_type_code("weixin");
|
|
|
payment.setPayment(order.getPayMoney().doubleValue());
|
|
|
- //payment.setPaytime(new Timestamp(System.currentTimeMillis()));
|
|
|
if(order.getPayTime()!=null){
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
String timeString = sdf.format(order.getPayTime());
|
|
@@ -1633,12 +1601,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
payment.setPaytime(new Timestamp(timeLong));
|
|
|
}
|
|
|
payments.add(payment);
|
|
|
-// if(order.getCouponPrice()!=null&&order.getCouponPrice().doubleValue()>0){
|
|
|
-// ErpOrderPayment coupon=new ErpOrderPayment();
|
|
|
-// coupon.setPay_type_code("coupon");
|
|
|
-// coupon.setPayment(order.getCouponPrice().doubleValue());
|
|
|
-// payments.add(coupon);
|
|
|
-// }
|
|
|
+
|
|
|
//1.新疆、西藏、内蒙古、海南的订单(代收+非代收)全部发EMS
|
|
|
//2.全款订单选择中通,快递ID 452 ZTO 中通商城标快 ZTBK.17782167502
|
|
|
//3.新疆 西藏 内蒙古 海南 全款订单走顺丰丰云配 【非全款】的就根据公司配置那来 配的哪个走哪个快递
|
|
@@ -1770,11 +1733,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if(order.getStoreHouseCode().equals("WHSP001")){
|
|
|
- //武汉不备注快递史
|
|
|
- //erpOrder.setSeller_memo(erpOrder.getSeller_memo()+"-"+order.getDeliveryName());
|
|
|
- }
|
|
|
- else{
|
|
|
+ if(!"WHSP001".equals(order.getStoreHouseCode())){
|
|
|
erpOrder.setSeller_memo(erpOrder.getSeller_memo()+"-"+order.getDeliveryName());
|
|
|
}
|
|
|
ErpRemarkDTO remarkDTO=new ErpRemarkDTO();
|
|
@@ -1785,11 +1744,6 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
remarkDTO.setCouponMoney(order.getCouponPrice());
|
|
|
remarkDTO.setOrderId(order.getOrderCode());
|
|
|
remarkDTO.setYdMoney(order.getPayPrice().subtract(order.getPayMoney().subtract(order.getPayDelivery())));
|
|
|
-// //套餐标题也传过去
|
|
|
-// if (order.getOrderCreateType() == 2){
|
|
|
-// JSONObject jsonStr = JSONObject.parseObject(order.getPackageJson());
|
|
|
-// remarkDTO.setPackageTitle(jsonStr.getString("title"));
|
|
|
-// }
|
|
|
|
|
|
if(order.getPayTime()!=null){
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
@@ -1914,13 +1868,12 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
|
|
|
ErpOrderResponse response= erpOrderService.addOrder(erpOrder);
|
|
|
//写入日志
|
|
|
- logger.info("ErpCreate:"+order.getOrderCode()+":"+JSONUtil.toJsonStr(response));
|
|
|
+ logger.info("ErpCreate:{} {}",order.getOrderCode(),JSONUtil.toJsonStr(response));
|
|
|
//支付成功后 将订单号写入待发货的REDIS中
|
|
|
redisCache.setCacheObject(DELIVERY+":"+response.getCode(),order.getOrderCode());
|
|
|
//写入外部订单号
|
|
|
order.setExtendOrderId(response.getCode());
|
|
|
fsStoreOrderMapper.updateFsStoreOrder(order);
|
|
|
-
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -2023,7 +1976,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- @Transactional
|
|
|
+ @Transactional(rollbackFor = Exception.class,propagation = Propagation.REQUIRED)
|
|
|
public R refundOrderMoney(Long orderId) {
|
|
|
FsStoreOrder order = fsStoreOrderMapper.selectFsStoreOrderById(orderId);
|
|
|
if(order.getStatus()==-2){
|
|
@@ -2038,12 +1991,10 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
request.setOid(order.getOrderCode());
|
|
|
request.setRefund_state(1);
|
|
|
BaseResponse response=erpOrderService.refundUpdate(request);
|
|
|
-// if(response.getSuccess()){
|
|
|
-// }
|
|
|
-// else{
|
|
|
-// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
-// return R.error(response.getErrorDesc());
|
|
|
-// }
|
|
|
+ if(ObjectUtil.isNull(response) || !response.getSuccess()){
|
|
|
+ logger.error("调用erp退款接口失败! {}",JSON.toJSONString(response));
|
|
|
+ throw new CustomException("调用erp退款接口失败:"+response.getErrorDesc());
|
|
|
+ }
|
|
|
}
|
|
|
order.setStatus(-2);
|
|
|
order.setRefundPrice(order.getPayMoney());
|
|
@@ -2067,103 +2018,17 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
List<FsStorePayment> payments=paymentService.selectFsStorePaymentByOrderId(order.getId());
|
|
|
if(payments!=null){
|
|
|
for(FsStorePayment payment:payments){
|
|
|
- if (payment.getPayMode()==null||payment.getPayMode().equals("yb")){
|
|
|
- com.fs.pay.pay.dto.RefundDTO refundDTO = new com.fs.pay.pay.dto.RefundDTO();
|
|
|
- refundDTO.setRefundMoney(payment.getPayMoney().toString());
|
|
|
- refundDTO.setLowRefundNo("refund-"+payment.getPayCode());
|
|
|
- refundDTO.setUpOrderId(payment.getTradeNo());
|
|
|
- RefundResult result=ybPayService.refund(refundDTO);
|
|
|
- logger.info("yb退款:"+result);
|
|
|
- if(result.getState().equals("5")||result.getState().equals("6")){
|
|
|
- payment.setRefundMoney(payment.getPayMoney());
|
|
|
- payment.setStatus(-1);
|
|
|
- payment.setRefundTime(new Date());
|
|
|
- paymentService.updateFsStorePayment(payment);
|
|
|
- }
|
|
|
- else{
|
|
|
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
- return R.error(result.getMessage());
|
|
|
- }
|
|
|
- }else if (payment.getPayMode()!=null&&payment.getPayMode().equals("hf")){
|
|
|
- V2TradePaymentScanpayRefundRequest request = new V2TradePaymentScanpayRefundRequest();
|
|
|
- request.setOrdAmt(payment.getPayMoney().toString());
|
|
|
- request.setOrgReqDate(new SimpleDateFormat("yyyyMMdd").format(payment.getCreateTime()));
|
|
|
- request.setReqSeqId("refund-"+payment.getPayCode());
|
|
|
- Map<String, Object> extendInfoMap = new HashMap<>();
|
|
|
- extendInfoMap.put("org_party_order_id", payment.getBankSerialNo());
|
|
|
- request.setExtendInfo(extendInfoMap);
|
|
|
- HuiFuRefundResult refund = huiFuService.refund(request);
|
|
|
- logger.info("退款:"+refund);
|
|
|
- if((refund.getResp_code().equals("00000000")||refund.getResp_code().equals("00000100"))&&(refund.getTrans_stat().equals("S")||refund.getTrans_stat().equals("P"))){
|
|
|
- payment.setRefundMoney(payment.getPayMoney());
|
|
|
- payment.setStatus(-1);
|
|
|
- payment.setRefundTime(new Date());
|
|
|
- paymentService.updateFsStorePayment(payment);
|
|
|
- }else {
|
|
|
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
- return R.error(refund.getResp_desc());
|
|
|
- }
|
|
|
-
|
|
|
- }else if (payment.getPayMode()!=null&&payment.getPayMode().equals("tzbk")){
|
|
|
- TzConfigInfoDTO tzConfigInfoDTO = TzConfigUtils.getConfig();
|
|
|
-
|
|
|
- RequestDTO<TzPayRefundDTO> requestDTO = new RequestDTO<TzPayRefundDTO>();
|
|
|
- TzPayRefundDTO tzPayRefundDTO = new TzPayRefundDTO();
|
|
|
- tzPayRefundDTO.setOldPayOutOrderNo(payment.getPayCode());
|
|
|
- tzPayRefundDTO.setRefundOrderNo(payment.getPayCode());
|
|
|
- tzPayRefundDTO.setPlatMerCstNo(tzConfigInfoDTO.getPlatMerCstNo());
|
|
|
- SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
|
|
|
- tzPayRefundDTO.setTrxSendTime(sdf.format(new Date()));
|
|
|
- tzPayRefundDTO.setRefundOrdTransAmt(payment.getPayMoney());
|
|
|
- tzPayRefundDTO.setNotifyURL(tzConfigInfoDTO.getRefundNotifyUrl());
|
|
|
- requestDTO.setReqBody(tzPayRefundDTO);
|
|
|
- requestDTO.setReqHeader(TzReqHeaderDTO.getInstance(payment.getPayCode()));
|
|
|
-
|
|
|
- TzReqResultDTO<TzRefundNotifyDTO> resultDTO;
|
|
|
-
|
|
|
- try {
|
|
|
-
|
|
|
-
|
|
|
- // 停止发放优惠券
|
|
|
- if(ObjectUtil.isNotNull(order)){
|
|
|
- fsCouponScheduleService.setScheduleCouponRefund(String.valueOf(order.getId()));
|
|
|
- }
|
|
|
-
|
|
|
- resultDTO = tzBankService.payRefund(requestDTO);
|
|
|
-
|
|
|
- TzRefundNotifyDTO body = resultDTO.getBody();
|
|
|
- String refundOrdStatus = body.getRefundOrdStatus();
|
|
|
- if("90".equals(refundOrdStatus) || "50".equals(refundOrdStatus)){
|
|
|
- payment.setRefundMoney(payment.getPayMoney());
|
|
|
- payment.setStatus(-1);
|
|
|
- payment.setRefundTime(new Date());
|
|
|
- paymentService.updateFsStorePayment(payment);
|
|
|
- } else {
|
|
|
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
- return R.error(resultDTO.getRetMsg());
|
|
|
- }
|
|
|
- } catch (Exception e) {
|
|
|
- throw new RuntimeException("退款请求失败"+e);
|
|
|
- }
|
|
|
-
|
|
|
+ PaymentHandler best = PaymentHandlerHolder.findBest(payment.getPayMode());
|
|
|
+ if(ObjectUtil.isNull(best)){
|
|
|
+ throw new CustomException("支付类型异常!");
|
|
|
}
|
|
|
- else {
|
|
|
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
- return R.error("支付类型异常");
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- //小雨点退款
|
|
|
-// RefundDTO refundDTO=new RefundDTO();
|
|
|
-// refundDTO.setMerchOrderNo(Ids.oid());
|
|
|
-// refundDTO.setAmount(payment.getPayMoney().toString());
|
|
|
-// if(payment.getIsPayRemain()!=null&&payment.getIsPayRemain().equals(1)){
|
|
|
-// refundDTO.setOrigMerchOrderNo("store_remain-"+payment.getPayCode());
|
|
|
-// }
|
|
|
-// else{
|
|
|
-// refundDTO.setOrigMerchOrderNo("store-"+payment.getPayCode());
|
|
|
-// }
|
|
|
-// payService.refundOrder(refundDTO);
|
|
|
+ PayProcessContext payProcessContext = new PayProcessContext();
|
|
|
+ payProcessContext.setOrderId(orderId);
|
|
|
+ payProcessContext.setPaymentId(payment.getPaymentId());
|
|
|
+ payProcessContext.setPayCode(payment.getPayCode());
|
|
|
+ payProcessContext.setUserId(order.getUserId());
|
|
|
+ payProcessContext.setOrderPrefix("refund-");
|
|
|
+ best.refundOrder(payProcessContext);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -2196,8 +2061,6 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
FsStoreOrder map=new FsStoreOrder();
|
|
|
map.setStatus(OrderInfoEnum.STATUS_2.getValue());
|
|
|
map.setId(order.getId());
|
|
|
-// map.setDeliverySn(response.getOrders().get(0).getDeliverys().get(0).getExpress_code());
|
|
|
-// map.setDeliveryName(response.getOrders().get(0).getDeliverys().get(0).getExpress_name());
|
|
|
map.setDeliveryId(response.getOrders().get(0).getDeliverys().get(0).getMail_no());
|
|
|
fsStoreOrderMapper.updateFsStoreOrder(map);
|
|
|
orderStatusService.create(order.getId(), OrderLogEnum.DELIVERY_GOODS.getValue(),
|
|
@@ -2254,7 +2117,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
|
|
|
@Override
|
|
|
public R createSalesOrder(CompanyUser companyUser, String cateIds) {
|
|
|
- List<FsStoreCartQueryVO> carts=cartMapper.selectFsStoreCartListByIds(cateIds);
|
|
|
+ List<FsStoreCartQueryVO> carts=cartMapper.selectFsStoreCartListByIds(cateIds);
|
|
|
String uuid = IdUtil.randomUUID();
|
|
|
redisCache.setCacheObject("createOrderKey:"+uuid, companyUser.getCompanyId()+"-"+companyUser.getUserId(), 24, TimeUnit.HOURS);
|
|
|
redisCache.setCacheObject("orderCarts:"+uuid, carts, 24, TimeUnit.HOURS);
|
|
@@ -2301,12 +2164,8 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
cartMapper.insertFsStoreCart(storeCart);
|
|
|
ids.add(storeCart.getId());
|
|
|
}
|
|
|
- //删除REDIS
|
|
|
-// redisCache.deleteObject("createOrderKey:"+createOrderKey);
|
|
|
-// redisCache.deleteObject("orderCarts:" + createOrderKey);
|
|
|
String[] idArr=key.split("-");
|
|
|
return R.ok().put("cartIds",ids).put("companyId",idArr[0]).put("companyUserId",idArr[1]);
|
|
|
-
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -2482,8 +2341,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
@Override
|
|
|
//@Async
|
|
|
public String importExpress(List<StoreOrderExpressExportDTO> list, boolean updateSupport) {
|
|
|
- if (StringUtils.isNull(list) || list.size() == 0)
|
|
|
- {
|
|
|
+ if (StringUtils.isNull(list) || list.size() == 0) {
|
|
|
throw new CustomException("导入数据不能为空!");
|
|
|
}
|
|
|
int successNum = 0;
|
|
@@ -2595,8 +2453,6 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
*/
|
|
|
private FsStoreOrderPriceDTO getOrderPriceGroup(List<FsStoreCartQueryVO> cartInfo, FsUserAddress userAddress) {
|
|
|
BigDecimal storePostage = BigDecimal.ZERO;
|
|
|
- //免运费设置
|
|
|
-// BigDecimal storeFreePostage = BigDecimal.ZERO;
|
|
|
|
|
|
BigDecimal totalPrice = this.getOrderSumPrice(cartInfo, "truePrice");//获取订单总金额
|
|
|
BigDecimal costPrice = this.getOrderSumPrice(cartInfo, "costPrice");//获取订单成本价
|
|
@@ -2608,7 +2464,6 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
|
|
|
FsStoreOrderPriceDTO priceGroupDTO = new FsStoreOrderPriceDTO();
|
|
|
priceGroupDTO.setStorePostage(storePostage);
|
|
|
-// priceGroupDTO.setStoreFreePostage(storeFreePostage);
|
|
|
priceGroupDTO.setTotalPrice(totalPrice);
|
|
|
priceGroupDTO.setCostPrice(costPrice);
|
|
|
priceGroupDTO.setPayIntegral(payIntegral);
|
|
@@ -2774,28 +2629,6 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
return sumPrice;
|
|
|
}
|
|
|
|
|
|
- @Override
|
|
|
- public Boolean isEntityNull(FsStoreOrderParam param) {
|
|
|
- if (param == null) {
|
|
|
- return true; // 整个实体对象为null
|
|
|
- }
|
|
|
-
|
|
|
- Class<? extends FsStoreOrderParam> entityClass = param.getClass();
|
|
|
- Field[] fields = entityClass.getDeclaredFields();
|
|
|
- try {
|
|
|
- for (Field field : fields) {
|
|
|
- field.setAccessible(true);
|
|
|
- Object value = field.get(param);
|
|
|
- if (value != null) {
|
|
|
- return false; // 实体对象中有字段不为null
|
|
|
- }
|
|
|
- }
|
|
|
- } catch (IllegalAccessException e) {
|
|
|
- e.printStackTrace();
|
|
|
- }
|
|
|
- return true; // 实体对象内所有字段为null
|
|
|
- }
|
|
|
-
|
|
|
@Override
|
|
|
public int uploadCredentials(FsStoreOrder order) {
|
|
|
order.setUploadTime(new Date());
|
|
@@ -2947,7 +2780,7 @@ public class FsStoreOrderServiceImpl implements IFsStoreOrderService
|
|
|
processContext.setGoodsInfo("商城订单支付");
|
|
|
processContext.setOrderPrefix("store-");
|
|
|
|
|
|
- R process = payment.process(processContext);
|
|
|
+ R process = payment.createOrder(processContext);
|
|
|
if("200".equals(String.valueOf(process.get("code")))){
|
|
|
redisCache.setCacheObject("isPaying:"+order.getId(),order.getId().toString(),1, TimeUnit.MINUTES);
|
|
|
return process;
|