| | |
| | | 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.dto.InvoiceQueryDTO; |
| | | import com.by4cloud.platformx.business.entity.Contract; |
| | | import com.by4cloud.platformx.business.entity.ContractInvoice; |
| | | import com.by4cloud.platformx.business.entity.ContractOutBound; |
| | | import com.by4cloud.platformx.business.service.ContractInvoiceService; |
| | | import com.by4cloud.platformx.business.service.ContractService; |
| | | import com.by4cloud.platformx.common.core.util.R; |
| | | import com.by4cloud.platformx.common.data.mybatis.BaseModel; |
| | | import com.by4cloud.platformx.common.log.annotation.SysLog; |
| | | import com.by4cloud.platformx.common.security.annotation.Inner; |
| | | import io.swagger.v3.oas.annotations.Operation; |
| | | import io.swagger.v3.oas.annotations.security.SecurityRequirement; |
| | |
| | | @Operation(summary = "分页查询" , description = "分页查询" ) |
| | | @GetMapping("/page" ) |
| | | public R getContractPage(@ParameterObject Page page, @ParameterObject ContractQueryDTO queryDTO) { |
| | | LambdaQueryWrapper<Contract> wrapper = Wrappers.lambdaQuery(); |
| | | 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)"); |
| | | } |
| | | // LambdaQueryWrapper<Contract> wrapper = Wrappers.lambdaQuery(); |
| | | // 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); |
| | | // } |
| | | |
| | | if (StrUtil.equals(queryDTO.getBillingStatus(),"1")){ |
| | | wrapper.orderByDesc(BaseModel::getCreateTime); |
| | | }else { |
| | | wrapper.orderByAsc(BaseModel::getCreateTime); |
| | | } |
| | | return R.ok(contractInvoiceService.pageScope(page, queryDTO)); |
| | | } |
| | | |
| | | return R.ok(contractService.pageByScope(page, wrapper)); |
| | | /** |
| | | * 新增发票 |
| | | * @return R |
| | | */ |
| | | @Operation(summary = "新增发票" , description = "新增发票" ) |
| | | @SysLog("新增发票" ) |
| | | @PostMapping |
| | | public R save(@RequestBody ContractInvoice contractInvoice) { |
| | | return contractInvoiceService.add(contractInvoice); |
| | | } |
| | | |
| | | /** |
| | |
| | | @GetMapping("/getContractOutBound/{contractId}" ) |
| | | public R getContractOutBound(@PathVariable("contractId")Long contractId) { |
| | | return contractInvoiceService.getContractOutBound(contractId); |
| | | } |
| | | |
| | | /** |
| | | * 获取合同预开票信息 |
| | | * @return |
| | | */ |
| | | @GetMapping("/getContractAdvance/{contractId}" ) |
| | | public R getContractAdvance(@PathVariable("contractId")Long contractId) { |
| | | return contractInvoiceService.getContractAdvance(contractId); |
| | | } |
| | | |
| | | /** |
| | | * 获取合同房租 水电 费用信息 |
| | | * @return |
| | | */ |
| | | @GetMapping("/getContractHouseWater/{contractId}" ) |
| | | public R getContractHouseWater(@PathVariable("contractId")Long contractId) { |
| | | return contractInvoiceService.getContractHouseWater(contractId); |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | |
| | | /** |
| | | * 重新开票 |
| | | * @return |
| | | */ |
| | | @GetMapping("/refresh/{invoiceId}") |
| | | public R refresh(@PathVariable("invoiceId")Long invoiceId) { |
| | | return contractInvoiceService.refresh(invoiceId); |
| | | } |
| | | |
| | | /** |
| | | * 手动推送bip |
| | | * @return |
| | | */ |
| | | @GetMapping("/bipPush/{invoiceId}") |
| | | public R bipPush(@PathVariable("invoiceId")Long invoiceId) { |
| | | return contractInvoiceService.bipPush(invoiceId); |
| | | } |
| | | |
| | | /** |
| | | * 红票查询 |
| | | * @return |
| | | */ |
| | |
| | | public R pageInvoice(@ParameterObject Page page, @ParameterObject ContractInvoiceQueryDTO queryDTO) { |
| | | return R.ok(contractInvoiceService.pageInvoice(page, queryDTO)); |
| | | } |
| | | |
| | | @GetMapping("/queryInvoice") |
| | | public R queryInvoice(@ParameterObject Page page, @ParameterObject InvoiceQueryDTO queryDTO) { |
| | | return contractInvoiceService.queryInvoice(page, queryDTO); |
| | | } |
| | | } |