|
@@ -1,6 +1,7 @@
|
|
|
package com.jy.business.contract.dao;
|
|
|
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.jy.business.capital.model.table.CapitalAccountTable;
|
|
|
import com.jy.business.capital.model.table.CapitalTransactionsTable;
|
|
|
import com.jy.business.contract.mapper.ContractInfoMapper;
|
|
|
import com.jy.business.contract.model.dto.ContractInfoSelectDto;
|
|
@@ -9,6 +10,10 @@ import com.jy.business.contract.model.table.ContractDetailTable;
|
|
|
import com.jy.business.contract.model.table.ContractInfoTable;
|
|
|
import com.jy.business.contract.model.vo.ContractInfoVo;
|
|
|
import com.jy.business.contract.model.vo.ContractStatisticsVo;
|
|
|
+import com.jy.business.contract.model.vo.TransactionVo;
|
|
|
+import com.jy.business.payment.model.table.PaymentRemitTable;
|
|
|
+import com.jy.business.payment.model.table.PaymentRequestsDetailTable;
|
|
|
+import com.jy.business.payment.model.table.PaymentRequestsTable;
|
|
|
import com.jy.framework.model.base.BaseDao;
|
|
|
import com.jy.framework.mybatis.join.TempTable;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -105,4 +110,64 @@ public class ContractInfoDao extends BaseDao<ContractInfoMapper, ContractInfo> {
|
|
|
)
|
|
|
.one();
|
|
|
}
|
|
|
+
|
|
|
+ public List<TransactionVo> getTransactionList(Long id) {
|
|
|
+ CapitalTransactionsTable ct = CapitalTransactionsTable.ct;
|
|
|
+ CapitalAccountTable ca = CapitalAccountTable.ca;
|
|
|
+ PaymentRequestsDetailTable prd = PaymentRequestsDetailTable.prd;
|
|
|
+ PaymentRequestsTable pr = PaymentRequestsTable.pr;
|
|
|
+ PaymentRemitTable pre = PaymentRemitTable.payment_remit;
|
|
|
+
|
|
|
+
|
|
|
+ // 请款
|
|
|
+ TempTable t = sql()
|
|
|
+ .select(
|
|
|
+ pre.remitTime.as(TransactionVo::getTradingTime),
|
|
|
+ column("1").as(TransactionVo::getType),
|
|
|
+ prd.amount.as(TransactionVo::getTradingAmount),
|
|
|
+ prd.remark.as(TransactionVo::getRemark),
|
|
|
+ ca.depositBank.as(TransactionVo::getDepositBank),
|
|
|
+ ca.accountName.as(TransactionVo::getAccountName),
|
|
|
+ ca.account.as(TransactionVo::getAccount),
|
|
|
+ pr.depositBank.as(TransactionVo::getTargetDepositBank),
|
|
|
+ pr.accountName.as(TransactionVo::getTargetAccountName),
|
|
|
+ pr.account.as(TransactionVo::getTargetAccount)
|
|
|
+ )
|
|
|
+ .from(prd)
|
|
|
+ .innerJoin(pr).on(prd.paymentRequestsId.eq(pr.id))
|
|
|
+ .innerJoin(pre).on(pre.paymentRequestsId.eq(pr.id))
|
|
|
+ .innerJoin(ca).on(pre.capitalAccountId.eq(ca.id))
|
|
|
+ .where(
|
|
|
+ prd.contractId.eq(id)
|
|
|
+ )
|
|
|
+
|
|
|
+ .unionAll()
|
|
|
+
|
|
|
+ // 到账认领
|
|
|
+ .select(
|
|
|
+ ct.tradingTime.as(TransactionVo::getTradingTime),
|
|
|
+ column("2").as(TransactionVo::getType),
|
|
|
+ ct.amount.as(TransactionVo::getTradingAmount),
|
|
|
+ ct.remark.as(TransactionVo::getRemark),
|
|
|
+ ca.depositBank.as(TransactionVo::getDepositBank),
|
|
|
+ ca.accountName.as(TransactionVo::getAccountName),
|
|
|
+ ca.account.as(TransactionVo::getAccount),
|
|
|
+ ct.targetDepositBank.as(TransactionVo::getTargetDepositBank),
|
|
|
+ ct.targetAccountName.as(TransactionVo::getTargetAccountName),
|
|
|
+ ct.targetAccount.as(TransactionVo::getTargetAccount)
|
|
|
+ )
|
|
|
+ .from(ct)
|
|
|
+ .leftJoin(ca).on(ct.capitalAccountId.eq(ca.id))
|
|
|
+ .where(
|
|
|
+ ct.contractId.eq(id),
|
|
|
+ ct.targetType.eq(70)
|
|
|
+ ).toTable("t");
|
|
|
+
|
|
|
+ return sql(TransactionVo.class)
|
|
|
+ .select(column("*"))
|
|
|
+ .from(t)
|
|
|
+ .orderBy(t.field(TransactionVo::getTradingTime).desc())
|
|
|
+ .list();
|
|
|
+ }
|
|
|
+
|
|
|
}
|