新增根据合同编号获得交易信息接口

This commit is contained in:
guojunyun
2025-11-14 17:15:58 +08:00
parent f797283021
commit 82219fd733
8 changed files with 222 additions and 13 deletions

View File

@@ -213,5 +213,14 @@ public class ContractController implements BusinessControllerMarker {
@PreAuthorize("@ss.hasPermission('base:contract:query')")
public CommonResult<List<PurchaseOrderWithDetailsDTO>> getOrderByOrderNo(@RequestBody List<String> orderNoS){
return contractApi.getOrderByOrderNo(orderNoS);
};
}
@GetMapping("/transaction-info/by-paper-number")
@Operation(summary = "根据合同编号获得交易信息")
@PreAuthorize("@ss.hasPermission('base:contract:get')")
public CommonResult<TransactionInfoRespVO> transactionInfoByPaperNumber(
@RequestParam("contractPaperNumber") String contractPaperNumber
) {
return success(contractService.transactionInfoByPaperNumber(contractPaperNumber));
}
}

View File

@@ -410,4 +410,44 @@ public class ContractMainDO extends BusinessBaseDO {
*/
@TableField("BSN_ID")
private Long businessId;
/**
* 甲方户名
*/
@TableField("PRCH_ACCT_NAME")
private String purchaseAccountName;
/**
* 甲方开户行
*/
@TableField("PRCH_BNK_ACCT")
private String purchaseBankAccount;
/**
* 甲方户号
*/
@TableField("PRCH_ACCT_NUM")
private String purchaseAccountNumber;
/**
* 甲方税号/社会信用代码
*/
@TableField("PRCH_TAX_NUM")
private String purchaseTaxNumber;
/**
* 乙方户名
*/
@TableField("SALE_ACCT_NAME")
private String salesAccountName;
/**
* 乙方开户行
*/
@TableField("SALE_BNK_ACCT")
private String salesBankAccount;
/**
* 乙方户号
*/
@TableField("SALE_ACCT_NUM")
private String salesAccountNumber;
/**
* 乙方税号/社会信用代码
*/
@TableField("SALE_TAX_NUM")
private String salesTaxNumber;
}

View File

@@ -231,4 +231,12 @@ public interface ContractService {
* @return 系统合同编号
*/
String generateSystemContractNumber(String category);
/**
* 根据合同编号获得交易信息
*
* @param contractPaperNumber 合同编号
* @return 交易信息
*/
TransactionInfoRespVO transactionInfoByPaperNumber(String contractPaperNumber);
}

View File

@@ -17,10 +17,7 @@ import com.zt.plat.module.base.controller.admin.templtp.vo.TmplInscBsnRelSaveReq
import com.zt.plat.module.base.controller.admin.templtp.vo.TmplInscDatBsnSaveReqVO;
import com.zt.plat.module.base.controller.admin.templtp.vo.TmplInscItmBsnSaveReqVO;
import com.zt.plat.module.base.dal.dataobject.tmpltp.TmplInscBsnRelDO;
import com.zt.plat.module.base.dal.mysql.tmpltp.TemplateInstanceDataMapper;
import com.zt.plat.module.base.dal.mysql.tmpltp.TemplateInstanceItemMapper;
import com.zt.plat.module.base.dal.mysql.tmpltp.TmplInscBsnRelMapper;
import com.zt.plat.module.base.service.tmpltp.TemplateInstanceDataService;
import com.zt.plat.module.base.service.tmpltp.TmplInscBsnRelService;
import com.zt.plat.module.base.service.tmpltp.TmplInscDatBsnService;
import com.zt.plat.module.base.service.tmpltp.TmplInscItmBsnService;
@@ -40,7 +37,6 @@ import com.zt.plat.module.contractorder.enums.contract.DictEnum;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractPageReqVO;
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractSaveReqVO;
import com.zt.plat.module.erp.dal.dataobject.erp.ErpContractDO;
import com.zt.plat.module.erp.service.erp.ErpCompanyService;
import com.zt.plat.module.erp.service.erp.ErpContractService;
import com.zt.plat.module.infra.api.file.FileApi;
import com.zt.plat.module.infra.api.file.dto.FileRespDTO;
@@ -88,12 +84,6 @@ public class ContractServiceImpl implements ContractService {
@Resource
private ContractPlanMapper contractPlanMapper;
@Resource
private TemplateInstanceDataService templateInstanceDataService;
@Resource
private TemplateInstanceDataMapper templateInstanceDataMapper;
@Resource
private TemplateInstanceItemMapper templateInstanceItemMapper;
@Resource
private ContractFormulaMapper contractFormulaMapper;
@Resource
private ContractCoefficientMapper contractCoefficientMapper;
@@ -114,8 +104,6 @@ public class ContractServiceImpl implements ContractService {
@Resource
private ContractDemoteMapper contractDemoteMapper;
@Resource
private ErpCompanyService erpCompanyService;
@Resource
private ErpContractService erpContractService;
@Resource
private SystemRelativityMapper systemRelativityMapper;
@@ -1803,6 +1791,53 @@ public class ContractServiceImpl implements ContractService {
return erpContractVO;
}
@Override
public TransactionInfoRespVO transactionInfoByPaperNumber(String contractPaperNumber) {
// 通过合同编号查询合同信息
ContractMainDO contractMainDO = contractMainMapper
.selectOne(TableFieldConstants.BSE_CTRT_MAIN_CTRT_PPR_NUM, contractPaperNumber);
// 合同不存在
if (contractMainDO == null) {
throw exception(CONTRACT_NOT_EXISTS);
}
// 交易信息
TransactionInfoRespVO infoRespVO = new TransactionInfoRespVO();
if (DictEnum.ERP_RCV_DLVY_INCOME.getCode().equals(contractMainDO.getDirection())) { // 收入
// 收支性质为收入,公司信息为乙方信息,客商信息为甲方信息
infoRespVO.setCompanyNumber(contractMainDO.getSalesCompanyNumber());
infoRespVO.setCompanyName(contractMainDO.getSalesCompanyName());
infoRespVO.setCompanyAccountName(contractMainDO.getSalesAccountName());
infoRespVO.setCompanyBankAccount(contractMainDO.getSalesBankAccount());
infoRespVO.setCompanyAccountNumber(contractMainDO.getSalesAccountNumber());
infoRespVO.setCompanyTaxNumber(contractMainDO.getSalesTaxNumber());
infoRespVO.setSupplierName(contractMainDO.getPurchaseCompanyNumber());
infoRespVO.setSupplierName(contractMainDO.getPurchaseCompanyName());
infoRespVO.setSupplierAccountName(contractMainDO.getPurchaseAccountName());
infoRespVO.setSupplierBankAccount(contractMainDO.getPurchaseBankAccount());
infoRespVO.setSupplierAccountNumber(contractMainDO.getPurchaseAccountNumber());
infoRespVO.setSupplierTaxNumber(contractMainDO.getPurchaseTaxNumber());
} else { // 支出
// 收支性质为支出,公司信息为甲方信息,客商信息为乙方信息
infoRespVO.setCompanyNumber(contractMainDO.getPurchaseCompanyNumber());
infoRespVO.setCompanyName(contractMainDO.getPurchaseCompanyName());
infoRespVO.setCompanyAccountName(contractMainDO.getPurchaseAccountName());
infoRespVO.setCompanyBankAccount(contractMainDO.getPurchaseBankAccount());
infoRespVO.setCompanyAccountNumber(contractMainDO.getPurchaseAccountNumber());
infoRespVO.setCompanyTaxNumber(contractMainDO.getPurchaseTaxNumber());
infoRespVO.setSupplierName(contractMainDO.getSalesCompanyNumber());
infoRespVO.setSupplierName(contractMainDO.getSalesCompanyName());
infoRespVO.setSupplierAccountName(contractMainDO.getSalesAccountName());
infoRespVO.setSupplierBankAccount(contractMainDO.getSalesBankAccount());
infoRespVO.setSupplierAccountNumber(contractMainDO.getSalesAccountNumber());
infoRespVO.setSupplierTaxNumber(contractMainDO.getSalesTaxNumber());
}
return infoRespVO;
}
/**
* 校验合同内容
*