本文解答了关于《房地产预缴增值税分录》相关内容,同时关于1、房地产预缴增值税的账务处理,2、房地产预缴增值税计算案例,3、房地产预缴的增值税怎样抵扣回来,4、房地产预缴增值税计税依据,5、房地产预缴增值税的税率,的相关问答本篇文章福途教育网小编也整理了进来,希望对您有帮助。

房地产预缴增值税分录
					PreAccountPoolTemplate preAccountPoolTemplate = preAccountPoolTemplateService.findByPriAccountCode("22210102");
					if(preAccountPoolTemplate!=null){
						preAccountEntry.setFsscCode(preAccountPoolTemplate.getFsscCode());
						subject.add(preAccountPoolTemplate.getFsscCode());
					}
				}else{
					throw new FsscException(FsscErrorType.REQUEST_PARAM_ERROR);
				}
			}else{
				throw new FsscException(FsscErrorType.REQUEST_PARAM_ERROR);
			}
			preAccountEntry.setExplanation("房地产预缴增值税");
			if(preAccountEntry.getDebitResourceId()!=null){
				//借方
				BudgetSubject subject2=budgetSubjectService.getById(preAccountEntry.getDebitResourceId());
				if (subject2==null){
					throw new FsscException(FsscErrorType.BUDGET_SUBJECT_NOT_FIND);
				}
				preAccountEntry.setDebitResourceCode(subject2.getCode());
				preAccountEntry.setDebitResourceName(subject2.getName());
				preAccountEntry.setDebitUnitName(subject2.getUnitName());
				if(StringUtil.isNotEmpty(subject2.getCurrencyCode())){
					preAccountEntry.setCurrencyCode(subject2.getCurrencyCode());
				}
			}
			if(!subject.isEmpty()){
				List lines = preAccountLineService.QureyPreAccountLineBySubject(subject);
				if(CollectionUtil.isNotEmpty(lines)){
					if(lines.get(0).getFsscCode().equals(preAccountEntry.getFsscCode())){
						throw new FsscException(FsscErrorType.SAME_SUBJECT_WRONG);
					}
					preAccountEntry.setReservedFund(lines.stream().map(PreAccountLine::getReservedFund).reduce(BigDecimal::add).get());
					preAccountEntry.setNotReservedFund(lines.stream().map(PreAccountLine::getNotReserverdFund).reduce(BigDecimal::add).get());
				}
			}
		}
		updateById(baseBudgetAccount);
		preAccountEntryService.addOrUpdateBatch(entries);
		return success();
	}
	@Override
	public void removeByIds(List idList) {
		if (CollUtil.isEmpty(idList)) {
			throw new FsscException(FsscErrorType.NOT_FIND_DATA);
		}
		List preAccountLineIDList = new ArrayList<>();
		for (Long id : idList) {
			BaseBudgetAccount baseBudgetAccount = getOneAccount(id);
			if (baseBudgetAccount==null){
				continue;
			}
			if (baseBudgetAccount.getStatus() == documentStatus) {
				throw new FsscException(FsscErrorType.REMOVE_ACCOUNT_ALREADY_START);
			}
			List preAccountEntries = preAccountEntryService.listByAccountId(baseBudgetAccount.getId());
			for (PreAccountEntry preAccountEntry : preAccountEntries) {
				if (preAccountEntry.getReservedFund().endingWith(BigDecimal.ZERO)
						&& preAccountEntry.getNotReserverdFund().endingWith(BigDecimal.ZERO)) {
					preAccountLineIDList.add(preAccountEntry.getId());
					continue;
				}
				throw new FsscException(FsscErrorType.FUND_NOT_ZERO);
			}
			removeById(baseBudgetAccount);
			if(preAccountLineIDList!=null && preAccountLineIDList.size()>0) {
				preAccountEntryService.removeByIds(preAccountLineIDList);
			}
		}
	}
	@Override
	@Transactional(rollbackFor = RuntimeException.class)
	public Result startAccount(Long id) {
		BaseBudgetAccount accountId = getOneAccount(id);
		if (accountId == null){
			return Result.fail("未找到数据");
		}
		if(accountId.getStatus().equals(documentStatus)){
			return Result.fail("已开启");
		}
		accountId.setStatus(documentStatus);
		updateById(accountId);
		return Result.success("开启成功");
	}
	@Override
	@Transactional(rollbackFor = RuntimeException.class)
	public Result finishAccount(Long id) {
		BaseBudgetAccount baseBudgetAccount = getOneAccount(id);
		if (baseBudgetAccount == null){
			return Result.fail("未找到数据");
		}
		if(!baseBudgetAccount.getStatus().equals(documentStatus)){
			return Result.fail("未开启,不可结束");
		}
		baseBudgetAccount.setStatus(documentFinish);
		updateById(baseBudgetAccount);
		return Result.success("结束成功");
	}
}
总结:以上是编辑:【玲珑紫雅】整理及AI智能原创关于《房地产预缴增值税分录
》优质内容解答希望能帮助到您。