本文解答了关于《进项税额转出的账务处理》相关内容,同时关于1、进项税额转出的账务处理分录,2、增值税进项税额转出的账务处理,3、以前年度进项税额转出的账务处理,4、已抵扣的进项税额转出的账务处理,5、收红字发票进项税额转出的账务处理,的相关问答本篇文章福途教育网小编也整理了进来,希望对您有帮助。
进项税额转出的账务处理
* @return
*/
public void addVATTaxOut(){
Period period=getPeriod();
AccountPeriodApi accountPeriodApi = ApplicationContextUtil.getBean(AccountPeriodApi.class);
List periodList=accountPeriodApi.queryAccountPeriodByNo(period.getPeriodNo());
if(ListUtil.isEmpty(periodList)){
setSymbol(Symbol.PROCESS);
setErrorMsg("查无会计期间");
return;
}
AccountPeriod accountPeriod = periodList.get(0);//对查询到的期间进行赋值 如果传入的期间不正确存在同样的编码的期间 这里的赋值会有问题
if((period.getPeriodId()==null&&period.getPeriodId().longValue()!=accountPeriod.getId().longValue())
(period.getPeriodId()!=null&&period.getPeriodId().longValue()!=accountPeriod.getId().longValue())){
setSymbol(Symbol.PROCESS);
setErrorMsg("传入的期间不正确");
return;
}
VatReturn vatReturn=saveVatReturn();
if(vatReturn.getId()==null){
setSymbol(Symbol.PROCESS);
setErrorMsg("未找到发票对应的进项税额");
return;
}
//增加进项税转出记录
VatTransferOutRecord transferOutRecord=new VatTransferOutRecord();
transferOutRecord.setPeriodId(accountPeriod.getId());
transferOutRecord.setCreateUserId(getCurrentUserId());
transferOutRecord.setVatReturnId(vatReturn.getId());
transferOutRecord.setAmount(vatReturn.getTaxAmount());
transferOutRecord.setMovement(VatTransferOutRecordMovement.VAT_TAX_OUT);
transferOutRecord.setCreateUserId(getCurrentUserId());
vatTransferOutRecordService.insert(transferOutRecord);
VatRate vatRate=vatRateService.getByPk(vatReturn.getVatRateId());
AccountRecordAddRequest recordAddRequest= AccountRequestWarp.warpRequest(vatRate.getInCode(),accountPeriod,vatReturn.getTaxAmount(),
RecordType.VAT_TAX_OUT,vatReturn.getTransSourceId(),getCurrentUserId(),null);
accountRecordService.buildRequest(recordAddRequest);
}
}
总结:以上是编辑:【温博超】整理及AI智能原创关于《进项税额转出的账务处理
》优质内容解答希望能帮助到您。