Commit 1a06052d authored by 鲁鑫's avatar 鲁鑫

接收SAP财务付款凭证接口

parent e64e8a3a
...@@ -2,6 +2,7 @@ package com.huigou.topsun.sap.costReimbursement.application; ...@@ -2,6 +2,7 @@ package com.huigou.topsun.sap.costReimbursement.application;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement; import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.costReimbursement.domain.query.SapCostReimbursementQueryRequest; import com.huigou.topsun.sap.costReimbursement.domain.query.SapCostReimbursementQueryRequest;
import com.huigou.topsun.sap.costReimbursement.domain.vo.PaymentReceiptVo;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicators; import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicators;
import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsQueryRequest; import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsQueryRequest;
...@@ -25,4 +26,6 @@ public interface SapCostReimbursementApplication { ...@@ -25,4 +26,6 @@ public interface SapCostReimbursementApplication {
void deleteSapCostReimbursementByIds(List<String> ids); void deleteSapCostReimbursementByIds(List<String> ids);
void sendSapDate( SapCostReimbursement sapCostReimbursement); void sendSapDate( SapCostReimbursement sapCostReimbursement);
void savePaymentReceiptVo(PaymentReceiptVo paymentReceiptVo);
} }
\ No newline at end of file
package com.huigou.topsun.sap.costReimbursement.application.impl; package com.huigou.topsun.sap.costReimbursement.application.impl;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
...@@ -14,6 +15,7 @@ import com.huigou.topsun.sap.costReimbursement.application.SapCostReimbursementA ...@@ -14,6 +15,7 @@ import com.huigou.topsun.sap.costReimbursement.application.SapCostReimbursementA
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement; import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursementDetail; import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursementDetail;
import com.huigou.topsun.sap.costReimbursement.domain.query.SapCostReimbursementQueryRequest; import com.huigou.topsun.sap.costReimbursement.domain.query.SapCostReimbursementQueryRequest;
import com.huigou.topsun.sap.costReimbursement.domain.vo.PaymentReceiptVo;
import com.huigou.topsun.sap.costReimbursement.repostiory.SapCostReimbursementDetailRepository; import com.huigou.topsun.sap.costReimbursement.repostiory.SapCostReimbursementDetailRepository;
import com.huigou.topsun.sap.costReimbursement.repostiory.SapCostReimbursementRepository; import com.huigou.topsun.sap.costReimbursement.repostiory.SapCostReimbursementRepository;
import com.huigou.topsun.util.MyBaseUtil; import com.huigou.topsun.util.MyBaseUtil;
...@@ -298,6 +300,20 @@ public class SapCostReimbursementApplicationImpl extends FlowBroker implements S ...@@ -298,6 +300,20 @@ public class SapCostReimbursementApplicationImpl extends FlowBroker implements S
} }
} }
@Override
public void savePaymentReceiptVo(PaymentReceiptVo paymentReceiptVo) {
SapCostReimbursement reimbursement = costReimbursementRepository.findByBillCode(paymentReceiptVo.getBillCode());
if (ObjectUtil.isNull(reimbursement)){
throw new RuntimeException("未找到单据编号为:" + paymentReceiptVo.getBillCode() + " 的数据");
}
List<SapCostReimbursementDetail> detailList = costReimbursementDetailRepository.findAllByReimbursementBaseInfoId(reimbursement.getId());
for (SapCostReimbursementDetail sapCostReimbursementDetail : detailList) {
sapCostReimbursementDetail.setBelnr1(paymentReceiptVo.getBelnr1());
sapCostReimbursementDetail.setGjahr1(paymentReceiptVo.getGjahr1());
costReimbursementDetailRepository.save(sapCostReimbursementDetail);
}
}
public static void main(String[] args) throws JsonProcessingException { public static void main(String[] args) throws JsonProcessingException {
// post.setHeader("Content-type", "application/json;charset=utf-8"); // post.setHeader("Content-type", "application/json;charset=utf-8");
......
...@@ -8,18 +8,28 @@ import com.huigou.topsun.sap.costReimbursement.application.SapCostReimbursementD ...@@ -8,18 +8,28 @@ import com.huigou.topsun.sap.costReimbursement.application.SapCostReimbursementD
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement; import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursementDetail; import com.huigou.topsun.sap.costReimbursement.domain.SapCostReimbursementDetail;
import com.huigou.topsun.sap.costReimbursement.domain.query.SapCostReimbursementQueryRequest; import com.huigou.topsun.sap.costReimbursement.domain.query.SapCostReimbursementQueryRequest;
import com.huigou.topsun.sap.costReimbursement.domain.vo.PaymentReceiptVo;
import com.huigou.topsun.sap.purchaseApproval.controller.SapPurchaseApprovalController;
import com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalDto;
import com.huigou.topsun.sap.statsIndicators.application.SapStatsIndicatorsApplication; import com.huigou.topsun.sap.statsIndicators.application.SapStatsIndicatorsApplication;
import com.huigou.topsun.sap.statsIndicators.application.SapStatsIndicatorsDetailApplication; import com.huigou.topsun.sap.statsIndicators.application.SapStatsIndicatorsDetailApplication;
import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicators; import com.huigou.topsun.sap.statsIndicators.domain.SapStatsIndicators;
import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsDetailQueryRequest; import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsDetailQueryRequest;
import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsQueryRequest; import com.huigou.topsun.sap.statsIndicators.domain.query.SapStatsIndicatorsQueryRequest;
import com.huigou.uasp.annotation.ControllerMapping; import com.huigou.uasp.annotation.ControllerMapping;
import com.huigou.uasp.annotation.SkipAuth;
import com.huigou.uasp.bmp.common.BizBillStatus; import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.client.CommonController; import com.huigou.uasp.client.CommonController;
import com.huigou.util.JSONUtil;
import com.huigou.util.SDO; import com.huigou.util.SDO;
import com.huigou.util.StringUtil; import com.huigou.util.StringUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.*; import java.util.*;
...@@ -28,6 +38,8 @@ import java.util.*; ...@@ -28,6 +38,8 @@ import java.util.*;
@ControllerMapping("/sapCostReimbursement") @ControllerMapping("/sapCostReimbursement")
public class SapCostReimbursementController extends CommonController { public class SapCostReimbursementController extends CommonController {
private final static Logger LOG = LoggerFactory.getLogger(SapCostReimbursementController.class);
protected String getPagePath() { protected String getPagePath() {
return "/biz/topsun/sap/costReimbursement/"; return "/biz/topsun/sap/costReimbursement/";
} }
...@@ -174,11 +186,23 @@ public class SapCostReimbursementController extends CommonController { ...@@ -174,11 +186,23 @@ public class SapCostReimbursementController extends CommonController {
// return success(); // return success();
// } // }
public String paymentReceipt(){
SDO sdo = this.getSDO();
String id = sdo.getBizId();
return null; @SkipAuth
@RequestMapping( value = "/paymentReceipt")
@ResponseBody
public HashMap<String, Object> paymentReceipt(@RequestBody PaymentReceiptVo paymentReceiptVo){
HashMap<String, Object> messageMap = new HashMap<>();
messageMap.put("Message_Status","S");
messageMap.put("Message_Text","成功");
messageMap.put("ZEP_NO",paymentReceiptVo.getBillCode());
LOG.info("SAP财务付款凭证数据=={}", JSONUtil.toString(paymentReceiptVo));
try {
this.costReimbursementApplication.savePaymentReceiptVo(paymentReceiptVo);
}catch (RuntimeException e){
messageMap.put("Message_Status","E");
messageMap.put("Message_Text",e);
messageMap.put("ZEP_NO",paymentReceiptVo.getBillCode());
}
return messageMap;
} }
} }
\ No newline at end of file
package com.huigou.topsun.sap.costReimbursement.domain.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.io.Serializable;
/**
* @Auther: xin.lu
* @Date: 2024/05/23/15:08
* @Description:
*/
@Data
public class PaymentReceiptVo implements Serializable {
@JsonProperty("ZEP_NO")
private String billCode;
/**
* 付款凭证编号
*/
@JsonProperty( "BELNR1")
private String belnr1;
/**
* 付款凭证财年
*/
@JsonProperty("GJAHR1")
private String gjahr1;
}
...@@ -6,4 +6,5 @@ import org.springframework.data.jpa.repository.JpaRepository; ...@@ -6,4 +6,5 @@ import org.springframework.data.jpa.repository.JpaRepository;
public interface SapCostReimbursementRepository extends JpaRepository<SapCostReimbursement,String> { public interface SapCostReimbursementRepository extends JpaRepository<SapCostReimbursement,String> {
SapCostReimbursement findByBillCode(String billCode);
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment