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