|
|
@@ -20,7 +20,6 @@ import com.poteviohealth.ym.ipos.utils.YmUtil;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import lombok.extern.log4j.Log4j2;
|
|
|
-import org.apache.commons.lang3.StringUtils;
|
|
|
import org.apache.commons.lang3.time.DateFormatUtils;
|
|
|
import org.springframework.stereotype.Controller;
|
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
|
@@ -113,14 +112,17 @@ public class IposFeignController extends BaseFeignController {
|
|
|
* 平台运营商分账 = 可分账 - 区域运营商分账 -团长分账 -站长分账
|
|
|
*/
|
|
|
log.info(JSON.toJSONString(list));
|
|
|
- BigDecimal proportion = new BigDecimal(0.01);
|
|
|
+
|
|
|
List<SplitPay> returnList = Lists.newArrayList();
|
|
|
for (SplitInfo splitInfo : list) {
|
|
|
+ BigDecimal proportion = BigDecimal.ONE.subtract(splitInfo.getOperatorSplitProportion());
|
|
|
//List<SplitRecords> splitRecordsList = Lists.newArrayList();
|
|
|
- PaymentRecords pr = paymentRecordsService.getPaymentRecords(splitInfo.getPayId());
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ //YJ:一级供应商;FS:二级供应商,服务商;QY:供应商,区域运营商;TZ:团长;ZZ:站长;PT:平台
|
|
|
+ /* PaymentRecords pr = paymentRecordsService.getPaymentRecords(splitInfo.getPayId());
|
|
|
if(pr == null){
|
|
|
continue;
|
|
|
- }
|
|
|
+ }*/
|
|
|
List<SplitRecordsDetail> details = Lists.newArrayList();
|
|
|
SplitRecords records = new SplitRecords();
|
|
|
records.setOperatorId(splitInfo.getOperatorId());
|
|
|
@@ -129,7 +131,7 @@ public class IposFeignController extends BaseFeignController {
|
|
|
records.setPaySn(splitInfo.getPaySn());
|
|
|
records.setSumPrice(splitInfo.getSumPrice());
|
|
|
//手续费
|
|
|
- BigDecimal chargeAmount = new BigDecimal(pr.getChargeAmount());
|
|
|
+ BigDecimal chargeAmount = new BigDecimal(splitInfo.getCommissionMoney());
|
|
|
BigDecimal ptAmount = BigDecimal.ZERO;
|
|
|
BigDecimal tzAmount = BigDecimal.ZERO;
|
|
|
BigDecimal stationAmount = BigDecimal.ZERO;
|
|
|
@@ -162,13 +164,17 @@ public class IposFeignController extends BaseFeignController {
|
|
|
* 2.供应价/结算价 的分账(包含区域运营商/一级供应商/二级供应商/服务站)
|
|
|
*/
|
|
|
//一级供应商
|
|
|
- if(StringUtils.isNotEmpty(detail.getSupplierOneMerchantId()) && detail.getBelong().equals(1)){
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ if(detail.getBelong().equals(1)){
|
|
|
+ //if(StringUtils.isNotEmpty(detail.getSupplierOneMerchantId()) && detail.getBelong().equals(1)){
|
|
|
SplitRecordsDetail supplierOne = new SplitRecordsDetail();
|
|
|
supplierOne.setSplitId(records.getSplitId());
|
|
|
supplierOne.setSourceId(3);
|
|
|
- supplierOne.setMerchantId(detail.getSupplierOneMerchantId());
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ //supplierOne.setMerchantId(detail.getSupplierOneMerchantId());
|
|
|
+ supplierOne.setMerchantId("YJ"+detail.getSupplierOneId().toString());
|
|
|
for (SplitRecordsDetail splitRecordsDetail : details) {
|
|
|
- if(splitRecordsDetail.getMerchantId().equals(detail.getSupplierOneMerchantId())){
|
|
|
+ if(splitRecordsDetail.getMerchantId().equals(supplierOne.getMerchantId())){
|
|
|
supplierOne = splitRecordsDetail;
|
|
|
break;
|
|
|
}
|
|
|
@@ -179,15 +185,20 @@ public class IposFeignController extends BaseFeignController {
|
|
|
supplierOne.setDivAmt(supplierOneAmount.toString());
|
|
|
details.add(supplierOne);
|
|
|
}
|
|
|
- }else if(StringUtils.isNotEmpty(detail.getServiceStationMerchantId()) && detail.getBelong().equals(2)){
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ }else if(detail.getBelong().equals(2)){
|
|
|
+ // }else if(StringUtils.isNotEmpty(detail.getServiceStationMerchantId()) && detail.getBelong().equals(2)){
|
|
|
//二级供应商
|
|
|
SplitRecordsDetail supplierTwo = new SplitRecordsDetail();
|
|
|
supplierTwo.setSplitId(records.getSplitId());
|
|
|
supplierTwo.setSourceId(4);
|
|
|
- supplierTwo.setMerchantId(detail.getServiceStationMerchantId());
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ supplierTwo.setMerchantId("FS"+detail.getServiceStationId().toString());
|
|
|
+ // supplierTwo.setMerchantId(detail.getServiceStationMerchantId());
|
|
|
boolean is_have = false;
|
|
|
for (SplitRecordsDetail splitRecordsDetail : details) {
|
|
|
- if(splitRecordsDetail.getMerchantId().equals(detail.getServiceStationMerchantId())){
|
|
|
+
|
|
|
+ if(splitRecordsDetail.getMerchantId().equals(supplierTwo.getMerchantId())){
|
|
|
supplierTwo = splitRecordsDetail;
|
|
|
is_have = true;
|
|
|
break;
|
|
|
@@ -205,14 +216,18 @@ public class IposFeignController extends BaseFeignController {
|
|
|
}
|
|
|
}else if(detail.getBelong().equals(0)){
|
|
|
//服务商
|
|
|
- if(StringUtils.isNotEmpty(detail.getServiceStationMerchantId()) && detail.getOrderType().equals(2) && !detail.getServiceStationId().equals(detail.getStationId())){
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ if(detail.getOrderType().equals(2) && !detail.getServiceStationId().equals(detail.getStationId())){
|
|
|
+ // if(StringUtils.isNotEmpty(detail.getServiceStationMerchantId()) && detail.getOrderType().equals(2) && !detail.getServiceStationId().equals(detail.getStationId())){
|
|
|
SplitRecordsDetail serviceStation = new SplitRecordsDetail();
|
|
|
serviceStation.setSplitId(records.getSplitId());
|
|
|
serviceStation.setSourceId(5);
|
|
|
- serviceStation.setMerchantId(detail.getServiceStationMerchantId());
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ serviceStation.setMerchantId("FS"+detail.getServiceStationId().toString());
|
|
|
+ //serviceStation.setMerchantId(detail.getServiceStationMerchantId());
|
|
|
boolean is_have = false;
|
|
|
for (SplitRecordsDetail splitRecordsDetail : details) {
|
|
|
- if(splitRecordsDetail.getMerchantId().equals(detail.getServiceStationMerchantId())){
|
|
|
+ if(splitRecordsDetail.getMerchantId().equals(serviceStation.getMerchantId())){
|
|
|
serviceStation = splitRecordsDetail;
|
|
|
is_have=true;
|
|
|
break;
|
|
|
@@ -227,16 +242,20 @@ public class IposFeignController extends BaseFeignController {
|
|
|
}
|
|
|
|
|
|
}
|
|
|
- }else if(StringUtils.isNotEmpty(detail.getSupplierMerchantId())){
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ }else{
|
|
|
+ // }else if(StringUtils.isNotEmpty(detail.getSupplierMerchantId())){
|
|
|
//供应商
|
|
|
if(detail.getOrderType().equals(1) ||(detail.getOrderType().equals(2)&&detail.getStationId().equals(detail.getServiceStationId()))){
|
|
|
boolean is_have = false;
|
|
|
SplitRecordsDetail supplier = new SplitRecordsDetail();
|
|
|
supplier.setSplitId(records.getSplitId());
|
|
|
supplier.setSourceId(2);
|
|
|
- supplier.setMerchantId(detail.getSupplierMerchantId());
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ supplier.setMerchantId("QY"+detail.getSupplierId().toString());
|
|
|
+ //supplier.setMerchantId(detail.getSupplierMerchantId());
|
|
|
for (SplitRecordsDetail splitRecordsDetail : details) {
|
|
|
- if(splitRecordsDetail.getMerchantId().equals(detail.getSupplierMerchantId())){
|
|
|
+ if(splitRecordsDetail.getMerchantId().equals(supplier.getMerchantId())){
|
|
|
supplier = splitRecordsDetail;
|
|
|
is_have =true;
|
|
|
break;
|
|
|
@@ -262,10 +281,12 @@ public class IposFeignController extends BaseFeignController {
|
|
|
SplitRecordsDetail supplier = new SplitRecordsDetail();
|
|
|
supplier.setSplitId(records.getSplitId());
|
|
|
supplier.setSourceId(2);
|
|
|
- supplier.setMerchantId(detail.getSupplierMerchantId());
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ supplier.setMerchantId("QY"+detail.getSupplierId().toString());
|
|
|
+ //supplier.setMerchantId(detail.getSupplierMerchantId());
|
|
|
boolean is_have = false;
|
|
|
for (SplitRecordsDetail splitRecordsDetail : details) {
|
|
|
- if(splitRecordsDetail.getMerchantId().equals(detail.getSupplierMerchantId())){
|
|
|
+ if(splitRecordsDetail.getMerchantId().equals(supplier.getMerchantId())){
|
|
|
supplier = splitRecordsDetail;
|
|
|
is_have =true;
|
|
|
break;
|
|
|
@@ -282,14 +303,18 @@ public class IposFeignController extends BaseFeignController {
|
|
|
}
|
|
|
|
|
|
//团长
|
|
|
- if(detail.getGroupCommissionMoney() != null && detail.getGroupCommissionMoney()>0L &&StringUtils.isNotBlank(detail.getGroupLeaderMerchantId())){
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ if(detail.getGroupCommissionMoney() != null && detail.getGroupCommissionMoney()>0L){
|
|
|
+ // if(detail.getGroupCommissionMoney() != null && detail.getGroupCommissionMoney()>0L &&StringUtils.isNotBlank(detail.getGroupLeaderMerchantId())){
|
|
|
SplitRecordsDetail tz = new SplitRecordsDetail();
|
|
|
tz.setSplitId(records.getSplitId());
|
|
|
tz.setSourceId(6);
|
|
|
- tz.setMerchantId(detail.getGroupLeaderMerchantId());
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ tz.setMerchantId("TZ"+detail.getGroupLeaderId().toString());
|
|
|
+ // tz.setMerchantId(detail.getGroupLeaderMerchantId());
|
|
|
boolean is_have = false;
|
|
|
for (SplitRecordsDetail splitRecordsDetail : details) {
|
|
|
- if(splitRecordsDetail.getMerchantId().equals(detail.getGroupLeaderMerchantId())){
|
|
|
+ if(splitRecordsDetail.getMerchantId().equals(tz.getMerchantId())){
|
|
|
tz = splitRecordsDetail;
|
|
|
is_have =true;
|
|
|
break;
|
|
|
@@ -305,14 +330,18 @@ public class IposFeignController extends BaseFeignController {
|
|
|
}
|
|
|
}
|
|
|
//站长
|
|
|
- if(detail.getStationmasterCommissionMoney() != null && detail.getStationmasterCommissionMoney()>0L&&StringUtils.isNotBlank(detail.getStationmasterMerchantId())){
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ if(detail.getStationmasterCommissionMoney() != null && detail.getStationmasterCommissionMoney()>0L){
|
|
|
+ // if(detail.getStationmasterCommissionMoney() != null && detail.getStationmasterCommissionMoney()>0L&&StringUtils.isNotBlank(detail.getStationmasterMerchantId())){
|
|
|
SplitRecordsDetail station = new SplitRecordsDetail();
|
|
|
station.setSplitId(records.getSplitId());
|
|
|
station.setSourceId(5);
|
|
|
- station.setMerchantId(detail.getStationmasterMerchantId());
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ station.setMerchantId("ZZ"+detail.getStationId().toString());
|
|
|
+ //station.setMerchantId(detail.getStationmasterMerchantId());
|
|
|
Boolean is_have = false;
|
|
|
for (SplitRecordsDetail splitRecordsDetail : details) {
|
|
|
- if(splitRecordsDetail.getMerchantId().equals(detail.getStationmasterMerchantId())){
|
|
|
+ if(splitRecordsDetail.getMerchantId().equals(station.getMerchantId())){
|
|
|
station = splitRecordsDetail;
|
|
|
is_have =true;
|
|
|
break;
|
|
|
@@ -339,13 +368,15 @@ public class IposFeignController extends BaseFeignController {
|
|
|
SplitRecordsDetail ptyys = new SplitRecordsDetail();
|
|
|
ptyys.setSplitId(records.getSplitId());
|
|
|
ptyys.setSourceId(1);
|
|
|
- ptyys.setMerchantId(splitInfo.getOperatorMerchantId());
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ ptyys.setMerchantId("PT"+splitInfo.getOperatorId().toString());
|
|
|
ptyys.setDivAmt(ptyysAmount.toString());
|
|
|
details.add(ptyys);
|
|
|
- VaultsResponse vaultsResponse = splitService.delayConfirm(records,details);
|
|
|
+ //TODO 暂时去掉三方支付
|
|
|
+ /* VaultsResponse vaultsResponse = splitService.delayConfirm(records,details);
|
|
|
if(!vaultsResponse.validate()){
|
|
|
records.setComment(vaultsResponse.getMessage());
|
|
|
- }
|
|
|
+ }*/
|
|
|
records.setStatus(2);
|
|
|
splitRecordsService.save(records);
|
|
|
splitRecordsDetailService.saveBatch(details);
|