同一商户分账合并,增加打票机打印日志
This commit is contained in:
parent
e11cf54167
commit
2439430d5e
@ -62,12 +62,12 @@ public class LklSeparateWithTotalAmountDTO {
|
||||
// 测试用例1: 所有参与方都参与分账(符合比例要求)
|
||||
System.out.println("=== 测试用例1: 所有参与方都参与分账 ===");
|
||||
LklSeparateWithTotalAmountDTO dto1 = new LklSeparateWithTotalAmountDTO();
|
||||
dto1.setTotalSeparateAmount(1500); // 总金额100元(10000分)
|
||||
dto1.setShippingFee(600);
|
||||
dto1.setTotalSeparateAmount(5500); // 总金额100元(10000分)
|
||||
dto1.setShippingFee(500);
|
||||
// dto1.setRefCanSeparateAmount(1496);
|
||||
dto1.setLklRatio(new BigDecimal("0.0025")); // 拉卡拉分账比例0.25%
|
||||
dto1.setMchRatio(new BigDecimal("0.95")); // 商家分账比例94.75%
|
||||
dto1.setPlatRatio(new BigDecimal("0.01")); // 平台分账比例1%
|
||||
dto1.setMchRatio(new BigDecimal("0.96")); // 商家分账比例94.75%
|
||||
dto1.setPlatRatio(new BigDecimal("0.04")); // 平台分账比例1%
|
||||
// dto1.setAgent2ndRatio(new BigDecimal("0.04")); // 二级代理商分账比例4%
|
||||
// dto1.setAgent1stRatio(new BigDecimal("0.01")); // 一级代理商分账比例1%
|
||||
|
||||
|
||||
@ -2639,13 +2639,42 @@ public class LakalaApiServiceImpl implements LakalaApiService {
|
||||
receiver.setSeparateValue(Convert.toStr(merchantAmount));
|
||||
recvDatas.add(receiver);
|
||||
}
|
||||
|
||||
// 是否有二级代理商?
|
||||
boolean has2ndAgent = CheckUtil.isNotEmpty(agent2ndSplitRatio) && agent2ndReceiver != null &&
|
||||
StrUtil.isNotBlank(agent2ndReceiver.getReceiver_no()) &&
|
||||
CheckUtil.isNotEmpty(agent2ndAmount) && agent2ndAmount > 0;
|
||||
|
||||
// 平台分账参数
|
||||
if (CheckUtil.isNotEmpty(platformAmount) && platformAmount > 0) {
|
||||
V3SacsSeparateRecvDatas receiver = new V3SacsSeparateRecvDatas();
|
||||
receiver.setRecvNo(platformReceiver.getReceiver_no());
|
||||
receiver.setSeparateValue(Convert.toStr(platformAmount));
|
||||
recvDatas.add(receiver);
|
||||
if (!has2ndAgent && CheckUtil.isNotEmpty(shoppingFeeInner)) {
|
||||
// 没有县级代理商的时候,配送费暂由平台代收 add 2025-10-11
|
||||
V3SacsSeparateRecvDatas receiver = new V3SacsSeparateRecvDatas();
|
||||
receiver.setRecvNo(platformReceiver.getReceiver_no());
|
||||
receiver.setSeparateValue(Convert.toStr(platformAmount + shoppingFeeInner));
|
||||
recvDatas.add(receiver);
|
||||
} else {
|
||||
V3SacsSeparateRecvDatas receiver = new V3SacsSeparateRecvDatas();
|
||||
receiver.setRecvNo(platformReceiver.getReceiver_no());
|
||||
receiver.setSeparateValue(Convert.toStr(platformAmount));
|
||||
recvDatas.add(receiver);
|
||||
}
|
||||
}
|
||||
|
||||
// 县级代理商分账参数
|
||||
if (has2ndAgent) {
|
||||
if (CheckUtil.isNotEmpty(shoppingFeeInner)) {
|
||||
// 有县级代理商的时候,配送费暂由它代收 add 2025-10-11
|
||||
V3SacsSeparateRecvDatas shippingFeeReceiver = new V3SacsSeparateRecvDatas();
|
||||
shippingFeeReceiver.setRecvNo(agent2ndReceiver.getReceiver_no());
|
||||
shippingFeeReceiver.setSeparateValue(Convert.toStr(agent2ndAmount + shoppingFeeInner));
|
||||
recvDatas.add(shippingFeeReceiver);
|
||||
} else {
|
||||
V3SacsSeparateRecvDatas receiver = new V3SacsSeparateRecvDatas();
|
||||
receiver.setRecvNo(agent2ndReceiver.getReceiver_no());
|
||||
receiver.setSeparateValue(Convert.toStr(agent2ndAmount));
|
||||
recvDatas.add(receiver);
|
||||
}
|
||||
}
|
||||
|
||||
// 省级代理商分账参数
|
||||
@ -2658,28 +2687,6 @@ public class LakalaApiServiceImpl implements LakalaApiService {
|
||||
recvDatas.add(receiver);
|
||||
}
|
||||
|
||||
// 县级代理商分账参数
|
||||
if (CheckUtil.isNotEmpty(agent2ndSplitRatio) && agent2ndReceiver != null &&
|
||||
StrUtil.isNotBlank(agent2ndReceiver.getReceiver_no()) &&
|
||||
CheckUtil.isNotEmpty(agent2ndAmount) && agent2ndAmount > 0) {
|
||||
V3SacsSeparateRecvDatas receiver = new V3SacsSeparateRecvDatas();
|
||||
receiver.setRecvNo(agent2ndReceiver.getReceiver_no());
|
||||
receiver.setSeparateValue(Convert.toStr(agent2ndAmount));
|
||||
recvDatas.add(receiver);
|
||||
|
||||
// 有县级代理商的时候,配送费暂由它代收 add 2025-10-11
|
||||
V3SacsSeparateRecvDatas shippingFeeReceiver = new V3SacsSeparateRecvDatas();
|
||||
shippingFeeReceiver.setRecvNo(agent2ndReceiver.getReceiver_no());
|
||||
shippingFeeReceiver.setSeparateValue(Convert.toStr(shoppingFeeInner));
|
||||
recvDatas.add(shippingFeeReceiver);
|
||||
} else {
|
||||
// 没有县级代理商的时候,配送费暂由平台代收 add 2025-10-11
|
||||
V3SacsSeparateRecvDatas shippingFeeReceiver = new V3SacsSeparateRecvDatas();
|
||||
shippingFeeReceiver.setRecvNo(platformReceiver.getReceiver_no());
|
||||
shippingFeeReceiver.setSeparateValue(Convert.toStr(shoppingFeeInner));
|
||||
recvDatas.add(shippingFeeReceiver);
|
||||
}
|
||||
|
||||
// 初始化拉卡拉SDK
|
||||
initLKLSDK();
|
||||
|
||||
@ -2758,7 +2765,7 @@ public class LakalaApiServiceImpl implements LakalaApiService {
|
||||
} catch (Exception e) {
|
||||
String errorMsg = String.format("[分账操作] 系统异常, receiveLogNo=%s, 错误=%s", receiveLogNo, e.getMessage());
|
||||
log.error(errorMsg, e);
|
||||
|
||||
|
||||
if (shopOrderLkl != null) {
|
||||
shopOrderLkl.setSeparate_msg(errorMsg);
|
||||
shopOrderLkl.setSeparate_status(CommonConstant.Sta_Separate_Fail);
|
||||
|
||||
@ -132,7 +132,10 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl<ShopStorePrinte
|
||||
}
|
||||
|
||||
// 从厂家删除其他店使用该打印机的记录
|
||||
feieUtil.delPrinter(record.getPrinter_sn());
|
||||
Pair<Boolean, String> pair = feieUtil.delPrinter(record.getPrinter_sn());
|
||||
if (pair.getFirst()) {
|
||||
logger.info("已从厂家删除打印机:{}, 详细信息:{}", record.getPrinter_sn(), pair.getSecond());
|
||||
}
|
||||
|
||||
if (add(record)) {
|
||||
return CommonResult.success(null, "添加成功");
|
||||
@ -271,7 +274,10 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl<ShopStorePrinte
|
||||
// 向厂家解绑打印机
|
||||
Pair<Boolean, String> retPair = feieUtil.delPrinter(record.getPrinter_sn());
|
||||
if (!retPair.getFirst()) {
|
||||
logger.error("从厂家删除打印机失败,SN: {}, 错误信息: {}", record.getPrinter_sn(), retPair.getSecond());
|
||||
return CommonResult.failed(retPair.getSecond());
|
||||
} else {
|
||||
logger.info("已从厂家删除打印机:{}, 详细信息:{}", record.getPrinter_sn(), retPair.getSecond());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user