| | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.by4cloud.platformx.business.dto.ContractInvoiceQueryDTO; |
| | | import com.by4cloud.platformx.business.dto.ContractQueryDTO; |
| | | import com.by4cloud.platformx.business.dto.GenInvoiceInfoDTO; |
| | | import com.by4cloud.platformx.business.entity.Contract; |
| | | import com.by4cloud.platformx.business.service.ContractInvoiceService; |
| | |
| | | /** |
| | | * 分页查询 |
| | | * @param page 分页对象 |
| | | * @param contract 合同管理 |
| | | * @param queryDTO 合同管理 |
| | | * @return |
| | | */ |
| | | @Operation(summary = "分页查询" , description = "分页查询" ) |
| | | @GetMapping("/page" ) |
| | | public R getContractPage(@ParameterObject Page page, @ParameterObject Contract contract) { |
| | | public R getContractPage(@ParameterObject Page page, @ParameterObject ContractQueryDTO queryDTO) { |
| | | LambdaQueryWrapper<Contract> wrapper = Wrappers.lambdaQuery(); |
| | | wrapper.like(StringUtils.isNotBlank(contract.getContractName()),Contract::getContractName,contract.getContractName()); |
| | | wrapper.like(StringUtils.isNotBlank(contract.getPartyA()),Contract::getPartyA,contract.getPartyA()); |
| | | wrapper.eq(Contract::getBillingStatus,contract.getBillingStatus()); |
| | | if (StrUtil.equals(contract.getBillingStatus(),"1")){ |
| | | wrapper.like(StringUtils.isNotBlank(queryDTO.getContractName()),Contract::getContractName,queryDTO.getContractName()); |
| | | wrapper.like(StringUtils.isNotBlank(queryDTO.getPartyA()),Contract::getPartyA,queryDTO.getPartyA()); |
| | | wrapper.eq(Contract::getBillingStatus,queryDTO.getBillingStatus()); |
| | | if (StrUtil.equals(queryDTO.getInvoiceType(),"1")){ |
| | | wrapper.eqSql(Contract::getBillingAmout,"(select sum(delivered_quantity*unit_price) from contract_subject_matter csm where csm.contract_id = contract.id)"); |
| | | }else if (StrUtil.equals(queryDTO.getInvoiceType(),"0")){ |
| | | wrapper.ltSql(Contract::getBillingAmout,"(select sum(delivered_quantity*unit_price) from contract_subject_matter csm where csm.contract_id = contract.id)"); |
| | | } |
| | | |
| | | if (StrUtil.equals(queryDTO.getBillingStatus(),"1")){ |
| | | wrapper.orderByDesc(BaseModel::getCreateTime); |
| | | }else { |
| | | wrapper.orderByAsc(BaseModel::getCreateTime); |
| | |
| | | public R queryRedInvoice() { |
| | | return contractInvoiceService.queryRedInvoice(); |
| | | } |
| | | |
| | | @GetMapping("/pageInvoice") |
| | | public R pageInvoice(@ParameterObject Page page, @ParameterObject ContractInvoiceQueryDTO queryDTO) { |
| | | return R.ok(contractInvoiceService.pageInvoice(page, queryDTO)); |
| | | } |
| | | } |