提交 0a3a824c authored 作者: huyufan's avatar huyufan

APP司机账户

上级 c2d102ce
......@@ -38,17 +38,14 @@ public class APPNetworkDriverRunningWaterRecordVO {
@ApiModelProperty("")
private Long relationId;
@ApiModelProperty("订单ID")
private Integer orderId;
@ApiModelProperty("货单编号")
private String orderGoodsNo;
@ApiModelProperty("订单编号")
private String orderNo;
@ApiModelProperty("运单ID")
private Integer orderChildId;
@ApiModelProperty("运单编号")
private String orderChildNo;
private String childNo;
@ApiModelProperty("变动金额")
private BigDecimal alterationBalance;
......
......@@ -4,6 +4,7 @@ package com.clx.performance.dao.impl.settle;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.dao.settle.NetworkDriverRunningWaterRecordDao;
import com.clx.performance.enums.NetworkDriverAccountEnum;
import com.clx.performance.mapper.settle.NetworkDriverRunningWaterRecordMapper;
import com.clx.performance.model.settle.NetworkDriverRunningWaterRecord;
import com.clx.performance.param.app.NetworkDriverPageParam;
......@@ -39,4 +40,12 @@ public class NetworkDriverRunningWaterRecordDaoImpl extends BaseDaoImpl<NetworkD
Page<APPNetworkDriverRunningWaterRecordVO> page = Page.of(param.getPage(), param.getPageSize());
return baseMapper.runningWaterList(page, param);
}
@Override
public void updateFrozenFlagByChildNo(String childNo) {
update(lUdWrapper().set(NetworkDriverRunningWaterRecord::getFrozenFlag, 1)
.eq(NetworkDriverRunningWaterRecord::getChildNo, childNo)
.eq(NetworkDriverRunningWaterRecord::getRunningWaterType, NetworkDriverAccountEnum.RunningWaterStatus.CASE_OUT_FROZEN.getCode())
);
}
}
......@@ -22,4 +22,6 @@ public interface NetworkDriverRunningWaterRecordDao extends BaseDao<NetworkDrive
IPage<APPNetworkDriverRunningWaterRecordVO> pageFrozenList(NetworkDriverPageParam param);
IPage<APPNetworkDriverRunningWaterRecordVO> runningWaterList(NetworkDriverPageParam param);
void updateFrozenFlagByChildNo(String childNo);
}
......@@ -64,8 +64,7 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
/**
* 运单同步网络货运生成司机运单结算流水
* @param userNo
* @param money
* @param settlementDriverDetail
*/
@Override
@Transactional(rollbackFor = Exception.class)
......@@ -110,10 +109,10 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
/**
* 运单同步网络货运后司机运单提现冻结流水
* @param userNo
* @param money
* @param settlementDriverDetail
*/
@Override
@Transactional(rollbackFor = Exception.class)
public void generateCaseOutFrozenRunningWaterRecord(SettlementDriverDetail settlementDriverDetail) {
log.info("运单同步网络货运后司机运单提现冻结流水");
NetworkDriverAccount networkDriverAccount = networkDriverAccountDao.getOneByField(NetworkDriverAccount::getDriverUserNo, settlementDriverDetail.getDriverUserNo()).get();
......@@ -140,6 +139,7 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
.driverUserNo(account.getDriverUserNo())
.runningWaterNo(idGenerateSnowFlake.nextId(3L))
.runningWaterTypeMsg(NetworkDriverAccountEnum.RunningWaterStatus.CASE_OUT_FROZEN.getMsg())
.frozenFlag(0)
.runningWaterType(NetworkDriverAccountEnum.RunningWaterStatus.CASE_OUT_FROZEN.getCode())
.childNo(settlementDriverDetail.getChildNo())
.orderNo(settlementDriverDetail.getOrderNo())
......@@ -153,9 +153,11 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
}
@Override
@Transactional(rollbackFor = Exception.class)
public void generateCaseOutSuccessRunningWaterRecord(SettlementDriverDetail settlementDriverDetail) {
log.info("运单同步网络货运生成司机运单提现成功流水");
NetworkDriverAccount networkDriverAccount = networkDriverAccountDao.getOneByField(NetworkDriverAccount::getDriverUserNo, settlementDriverDetail.getDriverUserNo()).get();
log.info("查询出NetworkDriverAccount{}", JSONUtil.parse(networkDriverAccount));
NetworkDriverAccount build = NetworkDriverAccount.builder().id(networkDriverAccount.getId())
.frozenBalance(settlementDriverDetail.getFreight().negate())
.usableBalance(BigDecimal.ZERO)
......@@ -165,6 +167,9 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
build.setModifiedTime(account.getModifiedTime());
Integer i = networkDriverAccountDao.updateAccountCAS(build, LocalDateTime.now(), false);
if (i == 1) {
networkDriverRunningWaterRecordDao.updateFrozenFlagByChildNo(settlementDriverDetail.getChildNo());
account = networkDriverAccountDao.getEntityByKey(build.getId()).get();
NetworkDriverRunningWaterRecord entity = NetworkDriverRunningWaterRecord.builder()
.usableBalance(account.getUsableBalance())
......
......@@ -7,7 +7,10 @@ import com.clx.performance.dto.PayStatusNotifyDTO;
import com.clx.performance.enums.NetworkDriverAccountEnum;
import com.clx.performance.model.settle.OrderChildSyncTransportRecord;
import com.clx.performance.model.settle.SettlementDriverDetail;
import com.clx.performance.service.settle.NetworkDriverRunningWaterRecordService;
import com.clx.performance.service.settle.OrderChildSyncTransportRecordService;
import com.clx.performance.service.settle.SettlementDriverDetailService;
import com.clx.performance.service.settle.SettlementDriverService;
import com.clx.performance.struct.settle.SettlementDriverDetailStruct;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
......@@ -29,6 +32,10 @@ public class OrderChildSyncTransportRecordServiceImpl implements OrderChildSyncT
private final NetworkCaseOutRecordDao networkCaseOutRecordDao;
private final NetworkDriverRunningWaterRecordService networkDriverRunningWaterRecordService;
private final SettlementDriverDetailService settlementDriverDetailService;
@Override
public void addOrderChildSyncTransportRecord(SettlementDriverDetail detail) {
OrderChildSyncTransportRecord record = struct.convertRecord(detail);
......@@ -45,5 +52,7 @@ public class OrderChildSyncTransportRecordServiceImpl implements OrderChildSyncT
NetworkDriverAccountEnum.CaseOutRecordStatus.PAYED.getCode(),
NetworkDriverAccountEnum.CaseOutRecordStatus.PAYED.getMsg()
);
SettlementDriverDetail driverDetail = settlementDriverDetailService.selectOneByChildNo(childNo);
networkDriverRunningWaterRecordService.generateCaseOutSuccessRunningWaterRecord(driverDetail);
}
}
......@@ -115,4 +115,9 @@ public class SettlementDriverDetailServiceImpl implements SettlementDriverDetai
List<CarrierPageSettlementDriverDetailVO> list = settlementOwnerDetailStruct.covertList(result.getRecords());
return new Page<CarrierPageSettlementDriverDetailVO>().setRecords(list).setTotal(result.getTotal()).setPages(result.getPages());
}
@Override
public SettlementDriverDetail selectOneByChildNo(String childNo) {
return settlementDriverDetailDao.getByChildNo(childNo).get();
}
}
......@@ -2,6 +2,7 @@ package com.clx.performance.service.settle;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.model.OrderChild;
import com.clx.performance.model.settle.SettlementDriverDetail;
import com.clx.performance.param.pc.driver.PageCarrierSettlementDriverDetailParam;
import com.clx.performance.vo.pc.carrier.settle.CarrierPageSettlementDriverDetailVO;
......@@ -15,4 +16,6 @@ public interface SettlementDriverDetailService {
Integer saveSettlementDetail(OrderChild orderChild);
IPage<CarrierPageSettlementDriverDetailVO> pageSettlementDriverDetail(PageCarrierSettlementDriverDetailParam param);
SettlementDriverDetail selectOneByChildNo(String childNo);
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论