开票检验

This commit is contained in:
潘荣晟
2025-11-17 18:14:50 +08:00
parent d382abba10
commit 79a760a379
8 changed files with 246 additions and 6 deletions

View File

@@ -1,6 +1,8 @@
package com.zt.plat.module.erp.api;
import com.zt.plat.framework.common.pojo.CommonResult;
import com.zt.plat.module.erp.api.dto.ErpElectronicInvoiceReversalReqDTO;
import com.zt.plat.module.erp.api.dto.ErpElectronicInvoiceSubmitReqDTO;
import com.zt.plat.module.erp.api.dto.ErpInvoiceticketSubmitReqDTO;
import com.zt.plat.module.erp.api.dto.ErpInvoiceticketSubmitRespDTO;
import com.zt.plat.module.erp.service.erp.ErpInvoiceticketService;
@@ -9,6 +11,9 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.Map;
import static com.zt.plat.framework.common.pojo.CommonResult.success;
@RestController
@@ -22,4 +27,19 @@ public class InvoiceticketImpl implements InvoiceticketApi {
public CommonResult<ErpInvoiceticketSubmitRespDTO> submitDataToErp(ErpInvoiceticketSubmitReqDTO reqDTO) {
return success(erpInvoiceticketService.sbumitToErp020(reqDTO));
}
@Override
public CommonResult<HashMap<String, String>> submitDataToErp098(Map<String, Object> reqDTO) {
return success(erpInvoiceticketService.sbumitToErp098(reqDTO));
}
@Override
public CommonResult<HashMap<String, String>> submitDataToErp096(ErpElectronicInvoiceSubmitReqDTO reqDTO) {
return success(erpInvoiceticketService.sbumitToErp096(reqDTO));
}
@Override
public CommonResult<HashMap<String, String>> submitDataToErp097(ErpElectronicInvoiceReversalReqDTO reqDTO) {
return success(erpInvoiceticketService.sbumitToErp097(reqDTO));
}
}

View File

@@ -1,8 +1,16 @@
package com.zt.plat.module.erp.service.erp;
import com.zt.plat.module.erp.api.dto.ErpElectronicInvoiceReversalReqDTO;
import com.zt.plat.module.erp.api.dto.ErpElectronicInvoiceSubmitReqDTO;
import com.zt.plat.module.erp.api.dto.ErpInvoiceticketSubmitReqDTO;
import com.zt.plat.module.erp.api.dto.ErpInvoiceticketSubmitRespDTO;
import java.util.HashMap;
import java.util.Map;
public interface ErpInvoiceticketService {
ErpInvoiceticketSubmitRespDTO sbumitToErp020(ErpInvoiceticketSubmitReqDTO reqDTO);
HashMap<String, String> sbumitToErp098(Map<String, Object> reqDTO);
HashMap<String, String> sbumitToErp096(ErpElectronicInvoiceSubmitReqDTO reqDTO);
HashMap<String, String> sbumitToErp097(ErpElectronicInvoiceReversalReqDTO reqDTO);
}

View File

@@ -2,9 +2,7 @@ package com.zt.plat.module.erp.service.erp;
import com.zt.plat.framework.security.core.util.SecurityFrameworkUtils;
import com.zt.plat.module.erp.api.ErpExternalApi;
import com.zt.plat.module.erp.api.dto.ErpInvoiceticketSubmitReqDTO;
import com.zt.plat.module.erp.api.dto.ErpInvoiceticketSubmitRespDTO;
import com.zt.plat.module.erp.api.dto.ErpSubmitReqDTO;
import com.zt.plat.module.erp.api.dto.*;
import jakarta.annotation.Resource;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
@@ -59,6 +57,7 @@ public class ErpInvoiceticketServiceImpl implements ErpInvoiceticketService {
return respDTO;
}
/**
* 转换采购发票过账差异明细列表
* 假设HashMap中子列表字段格式为callBackSettlementDetails[0].factoryCode、callBackSettlementDetails[0].materialCode...
@@ -123,4 +122,57 @@ public class ErpInvoiceticketServiceImpl implements ErpInvoiceticketService {
return null;
}
}
@Override
public HashMap<String, String> sbumitToErp098(Map<String, Object> param) {
ErpSubmitReqDTO reqDTO = new ErpSubmitReqDTO();
reqDTO.setFuncnr("098");
reqDTO.setBskey(param.get("id").toString());
reqDTO.setUsrid(String.valueOf(SecurityFrameworkUtils.getLoginUserId()));
reqDTO.setUsrnm((SecurityFrameworkUtils.getLoginUserNickname()));
param.remove("id");
reqDTO.setReq(param);
return erpExternalApi.submitDataToErp(reqDTO);
}
@Override
public HashMap<String, String> sbumitToErp096(ErpElectronicInvoiceSubmitReqDTO erpElectronicInvoiceSubmitReqDTO) {
ErpSubmitReqDTO reqDTO = new ErpSubmitReqDTO();
reqDTO.setFuncnr("096");
reqDTO.setBskey(erpElectronicInvoiceSubmitReqDTO.getId());
reqDTO.setUsrid(String.valueOf(SecurityFrameworkUtils.getLoginUserId()));
reqDTO.setUsrnm((SecurityFrameworkUtils.getLoginUserNickname()));
Map<String, Object> req = new HashMap<>();
req.put("bill_date", erpElectronicInvoiceSubmitReqDTO.getBill_date());
req.put("provi_estimate", erpElectronicInvoiceSubmitReqDTO.getProvi_estimate());
req.put("bline_date", erpElectronicInvoiceSubmitReqDTO.getBline_date());
req.put("bill_text", erpElectronicInvoiceSubmitReqDTO.getBill_text());
req.put("no_invoicing", erpElectronicInvoiceSubmitReqDTO.getNo_invoicing());
req.put("invoice_type", erpElectronicInvoiceSubmitReqDTO.getInvoice_type());
req.put("invoice_note", erpElectronicInvoiceSubmitReqDTO.getInvoice_note());
req.put("reversal_reason", erpElectronicInvoiceSubmitReqDTO.getReversal_reason());
req.put("item", erpElectronicInvoiceSubmitReqDTO.getItem());
req.put("cond", erpElectronicInvoiceSubmitReqDTO.getCond());
req.put("filedata", erpElectronicInvoiceSubmitReqDTO.getBline_date());
reqDTO.setReq(req);
return erpExternalApi.submitDataToErp(reqDTO);
}
@Override
public HashMap<String, String> sbumitToErp097(ErpElectronicInvoiceReversalReqDTO reqDTO) {
ErpSubmitReqDTO submitReqDTO = new ErpSubmitReqDTO();
submitReqDTO.setFuncnr("097");
submitReqDTO.setBskey(reqDTO.getId());
submitReqDTO.setUsrid(String.valueOf(SecurityFrameworkUtils.getLoginUserId()));
submitReqDTO.setUsrnm((SecurityFrameworkUtils.getLoginUserNickname()));
Map<String, Object> req = new HashMap<>();
req.put("billdoc", reqDTO.getBilldoc());
req.put("postingdate", reqDTO.getPostingdate());
req.put("reason", reqDTO.getReason());
req.put("no_invoicing", reqDTO.getNo_invoicing());
req.put("filedata", reqDTO.getFiledata());
return erpExternalApi.submitDataToErp(submitReqDTO);
}
}