提交 dcf9257b authored 作者: huyufan's avatar huyufan

网络货运账户

上级 d522be1f
...@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.model.settle.NetworkDriverAccount; import com.clx.performance.model.settle.NetworkDriverAccount;
import com.clx.performance.param.pc.PageNetworkAccountListParam; import com.clx.performance.param.pc.PageNetworkAccountListParam;
import com.clx.performance.sqlProvider.settle.NetworkDriverAccountProvider; import com.clx.performance.sqlProvider.settle.NetworkDriverAccountProvider;
import com.clx.performance.vo.pc.IntegralRecordVO;
import com.clx.performance.vo.pc.NetworkDriverAccountVO; import com.clx.performance.vo.pc.NetworkDriverAccountVO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.SelectProvider; import org.apache.ibatis.annotations.SelectProvider;
...@@ -19,7 +20,7 @@ import org.apache.ibatis.annotations.Update; ...@@ -19,7 +20,7 @@ import org.apache.ibatis.annotations.Update;
public interface NetworkDriverAccountMapper extends BaseMapper<NetworkDriverAccount> { public interface NetworkDriverAccountMapper extends BaseMapper<NetworkDriverAccount> {
@SelectProvider(type = NetworkDriverAccountProvider.class, method = "networkAccountList") @SelectProvider(type = NetworkDriverAccountProvider.class, method = "networkAccountList")
IPage<NetworkDriverAccountVO> networkAccountList(Page<NetworkDriverAccountVO> page, PageNetworkAccountListParam param); IPage<NetworkDriverAccountVO> networkAccountList(@Param("page")Page<NetworkDriverAccountVO> page, @Param("param")PageNetworkAccountListParam param);
@Update("update network_driver_account set usable_balance = usable_balance + #{account.usableBalance}" @Update("update network_driver_account set usable_balance = usable_balance + #{account.usableBalance}"
+ ",account_balance = account_balance + #{account.accountBalance}" + ",account_balance = account_balance + #{account.accountBalance}"
......
...@@ -73,9 +73,9 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver ...@@ -73,9 +73,9 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
NetworkDriverAccount networkDriverAccount = networkDriverAccountDao.getOneByField(NetworkDriverAccount::getDriverUserNo, settlementDriverDetail.getDriverUserNo()).get(); NetworkDriverAccount networkDriverAccount = networkDriverAccountDao.getOneByField(NetworkDriverAccount::getDriverUserNo, settlementDriverDetail.getDriverUserNo()).get();
log.info("查询出NetworkDriverAccount{}", JSONUtil.parse(networkDriverAccount)); log.info("查询出NetworkDriverAccount{}", JSONUtil.parse(networkDriverAccount));
NetworkDriverAccount build = NetworkDriverAccount.builder().id(networkDriverAccount.getId()) NetworkDriverAccount build = NetworkDriverAccount.builder().id(networkDriverAccount.getId())
.usableBalance(settlementDriverDetail.getFreight()) .usableBalance(settlementDriverDetail.getSettlementFreight())
.frozenBalance(BigDecimal.ZERO) .frozenBalance(BigDecimal.ZERO)
.accountBalance(settlementDriverDetail.getFreight()).build(); .accountBalance(settlementDriverDetail.getSettlementFreight()).build();
while (true) { while (true) {
NetworkDriverAccount account = networkDriverAccountDao.getEntityByKey(build.getId()).get(); NetworkDriverAccount account = networkDriverAccountDao.getEntityByKey(build.getId()).get();
build.setModifiedTime(account.getModifiedTime()); build.setModifiedTime(account.getModifiedTime());
...@@ -86,7 +86,8 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver ...@@ -86,7 +86,8 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
NetworkDriverRunningWaterRecord entity = NetworkDriverRunningWaterRecord.builder() NetworkDriverRunningWaterRecord entity = NetworkDriverRunningWaterRecord.builder()
.mobile(networkDriverAccount.getMobile()) .mobile(networkDriverAccount.getMobile())
.usableBalance(account.getUsableBalance()) .usableBalance(account.getUsableBalance())
.alterationBalance(settlementDriverDetail.getFreight()).accountBalance(account.getAccountBalance()) .alterationBalance(settlementDriverDetail.getSettlementFreight())
.accountBalance(account.getAccountBalance())
.frozenBalance(account.getFrozenBalance()).createBy("系统") .frozenBalance(account.getFrozenBalance()).createBy("系统")
.fundType(NetworkDriverAccountEnum.FundType.INCOME.getCode()) .fundType(NetworkDriverAccountEnum.FundType.INCOME.getCode())
.fundTypeMsg(NetworkDriverAccountEnum.FundType.INCOME.getMsg()) .fundTypeMsg(NetworkDriverAccountEnum.FundType.INCOME.getMsg())
...@@ -118,9 +119,9 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver ...@@ -118,9 +119,9 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
NetworkDriverAccount networkDriverAccount = networkDriverAccountDao.getOneByField(NetworkDriverAccount::getDriverUserNo, settlementDriverDetail.getDriverUserNo()).get(); NetworkDriverAccount networkDriverAccount = networkDriverAccountDao.getOneByField(NetworkDriverAccount::getDriverUserNo, settlementDriverDetail.getDriverUserNo()).get();
log.info("查询出NetworkDriverAccount{}", JSONUtil.parse(networkDriverAccount)); log.info("查询出NetworkDriverAccount{}", JSONUtil.parse(networkDriverAccount));
NetworkDriverAccount build = NetworkDriverAccount.builder().id(networkDriverAccount.getId()) NetworkDriverAccount build = NetworkDriverAccount.builder().id(networkDriverAccount.getId())
.frozenBalance(settlementDriverDetail.getFreight()) .frozenBalance(settlementDriverDetail.getSettlementFreight())
.accountBalance(BigDecimal.ZERO) .accountBalance(BigDecimal.ZERO)
.usableBalance(settlementDriverDetail.getFreight()).build(); .usableBalance(settlementDriverDetail.getSettlementFreight()).build();
while (true) { while (true) {
NetworkDriverAccount account = networkDriverAccountDao.getEntityByKey(build.getId()).get(); NetworkDriverAccount account = networkDriverAccountDao.getEntityByKey(build.getId()).get();
build.setModifiedTime(account.getModifiedTime()); build.setModifiedTime(account.getModifiedTime());
...@@ -131,7 +132,8 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver ...@@ -131,7 +132,8 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
NetworkDriverRunningWaterRecord entity = NetworkDriverRunningWaterRecord.builder() NetworkDriverRunningWaterRecord entity = NetworkDriverRunningWaterRecord.builder()
.usableBalance(account.getUsableBalance()) .usableBalance(account.getUsableBalance())
.mobile(networkDriverAccount.getMobile()) .mobile(networkDriverAccount.getMobile())
.alterationBalance(settlementDriverDetail.getFreight()).accountBalance(account.getAccountBalance()) .alterationBalance(settlementDriverDetail.getSettlementFreight())
.accountBalance(account.getAccountBalance())
.frozenBalance(account.getFrozenBalance()).createBy("系统") .frozenBalance(account.getFrozenBalance()).createBy("系统")
.fundType(NetworkDriverAccountEnum.FundType.FROZEN.getCode()) .fundType(NetworkDriverAccountEnum.FundType.FROZEN.getCode())
.fundTypeMsg(NetworkDriverAccountEnum.FundType.FROZEN.getMsg()) .fundTypeMsg(NetworkDriverAccountEnum.FundType.FROZEN.getMsg())
...@@ -159,9 +161,9 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver ...@@ -159,9 +161,9 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
NetworkDriverAccount networkDriverAccount = networkDriverAccountDao.getOneByField(NetworkDriverAccount::getDriverUserNo, settlementDriverDetail.getDriverUserNo()).get(); NetworkDriverAccount networkDriverAccount = networkDriverAccountDao.getOneByField(NetworkDriverAccount::getDriverUserNo, settlementDriverDetail.getDriverUserNo()).get();
log.info("查询出NetworkDriverAccount{}", JSONUtil.parse(networkDriverAccount)); log.info("查询出NetworkDriverAccount{}", JSONUtil.parse(networkDriverAccount));
NetworkDriverAccount build = NetworkDriverAccount.builder().id(networkDriverAccount.getId()) NetworkDriverAccount build = NetworkDriverAccount.builder().id(networkDriverAccount.getId())
.frozenBalance(settlementDriverDetail.getFreight().negate()) .frozenBalance(settlementDriverDetail.getSettlementFreight().negate())
.usableBalance(BigDecimal.ZERO) .usableBalance(BigDecimal.ZERO)
.accountBalance(settlementDriverDetail.getFreight()).build(); .accountBalance(settlementDriverDetail.getSettlementFreight()).build();
while (true) { while (true) {
NetworkDriverAccount account = networkDriverAccountDao.getEntityByKey(build.getId()).get(); NetworkDriverAccount account = networkDriverAccountDao.getEntityByKey(build.getId()).get();
build.setModifiedTime(account.getModifiedTime()); build.setModifiedTime(account.getModifiedTime());
...@@ -174,7 +176,8 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver ...@@ -174,7 +176,8 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
NetworkDriverRunningWaterRecord entity = NetworkDriverRunningWaterRecord.builder() NetworkDriverRunningWaterRecord entity = NetworkDriverRunningWaterRecord.builder()
.usableBalance(account.getUsableBalance()) .usableBalance(account.getUsableBalance())
.mobile(networkDriverAccount.getMobile()) .mobile(networkDriverAccount.getMobile())
.alterationBalance(settlementDriverDetail.getFreight()).accountBalance(account.getAccountBalance()) .alterationBalance(settlementDriverDetail.getSettlementFreight())
.accountBalance(account.getAccountBalance())
.frozenBalance(account.getFrozenBalance()).createBy("系统") .frozenBalance(account.getFrozenBalance()).createBy("系统")
.fundType(NetworkDriverAccountEnum.FundType.EXPENDITURE.getCode()) .fundType(NetworkDriverAccountEnum.FundType.EXPENDITURE.getCode())
.fundTypeMsg(NetworkDriverAccountEnum.FundType.EXPENDITURE.getMsg()) .fundTypeMsg(NetworkDriverAccountEnum.FundType.EXPENDITURE.getMsg())
...@@ -197,7 +200,7 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver ...@@ -197,7 +200,7 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
@Override @Override
public void generateNetworkDriverRunningWaterRecord(SettlementDriverDetail settlementDriverDetail, Integer runningWaterType) { public void generateNetworkDriverRunningWaterRecord(SettlementDriverDetail settlementDriverDetail, Integer runningWaterType) {
if (NetworkDriverAccountEnum.RunningWaterStatus.SETTLEMENT.getCode().equals(runningWaterType)) { if (NetworkDriverAccountEnum.RunningWaterStatus.SETTLEMENT.getCode().equals(runningWaterType)) {
log.info("执行生成网络货运钱包相关,参数userNo:{},money{},runningWaterType:{}", settlementDriverDetail.getDriverUserNo(), settlementDriverDetail.getPrepayFreight(), runningWaterType); log.info("执行生成网络货运钱包相关,参数userNo:{},money{},runningWaterType:{}", settlementDriverDetail.getDriverUserNo(), settlementDriverDetail.getSettlementFreight(), runningWaterType);
strategyMap.get(NetworkDriverAccountEnum.RunningWaterStatus.SETTLEMENT.getCode()).accept(settlementDriverDetail); strategyMap.get(NetworkDriverAccountEnum.RunningWaterStatus.SETTLEMENT.getCode()).accept(settlementDriverDetail);
strategyMap.get(NetworkDriverAccountEnum.RunningWaterStatus.CASE_OUT_FROZEN.getCode()).accept(settlementDriverDetail); strategyMap.get(NetworkDriverAccountEnum.RunningWaterStatus.CASE_OUT_FROZEN.getCode()).accept(settlementDriverDetail);
} }
...@@ -228,7 +231,7 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver ...@@ -228,7 +231,7 @@ public class NetworkDriverRunningWaterRecordServiceImpl implements NetworkDriver
.status(NetworkDriverAccountEnum.CaseOutRecordStatus.WAIT_PLATFORM_PAY.getCode()) .status(NetworkDriverAccountEnum.CaseOutRecordStatus.WAIT_PLATFORM_PAY.getCode())
.statusMsg(NetworkDriverAccountEnum.CaseOutRecordStatus.WAIT_PLATFORM_PAY.getMsg()) .statusMsg(NetworkDriverAccountEnum.CaseOutRecordStatus.WAIT_PLATFORM_PAY.getMsg())
.bank(bankCardVO.getBank()).collectionBankCode(bankCardVO.getBankCode()) .bank(bankCardVO.getBank()).collectionBankCode(bankCardVO.getBankCode())
.payee(bankCardVO.getName()).alterationBalance(settlementDriverDetail.getFreight()) .payee(bankCardVO.getName()).alterationBalance(settlementDriverDetail.getSettlementFreight())
.orderNo(settlementDriverDetail.getOrderNo()).orderGoodsNo(settlementDriverDetail.getOrderGoodsNo()) .orderNo(settlementDriverDetail.getOrderNo()).orderGoodsNo(settlementDriverDetail.getOrderGoodsNo())
.childNo(settlementDriverDetail.getChildNo()) .childNo(settlementDriverDetail.getChildNo())
.platform("网运平台").createBy("系统").build(); .platform("网运平台").createBy("系统").build();
......
package com.clx.performance.sqlProvider.settle; package com.clx.performance.sqlProvider.settle;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.param.pc.PageNetworkAccountListParam; import com.clx.performance.param.pc.PageNetworkAccountListParam;
import com.clx.performance.vo.pc.NetworkDriverAccountVO;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.jdbc.SQL; import org.apache.ibatis.jdbc.SQL;
public class NetworkDriverAccountProvider { public class NetworkDriverAccountProvider {
public String networkAccountList(@Param("param") PageNetworkAccountListParam param) { public String networkAccountList(@Param("page") Page<NetworkDriverAccountVO> page, @Param("param") PageNetworkAccountListParam param) {
String sql = new SQL() {{ String sql = new SQL() {{
SELECT("a.id, a.driver_user_no," + SELECT("a.id, a.driver_user_no," +
" a.driver_user_name, a.mobile, a.account_balance, " + " a.driver_user_name, a.mobile, a.account_balance, " +
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论