diff --git a/ServiceSite/facade/src/main/java/com/seasky/flowportal/dto/extendData/ExtendFieldCmd.java b/ServiceSite/facade/src/main/java/com/seasky/flowportal/dto/extendData/ExtendFieldCmd.java
index e450e75e4b2fc7d307e16b2acbb08c2542e9c520..f130370ed6e8aff3f874f1b02f742e006fc248d4 100644
--- a/ServiceSite/facade/src/main/java/com/seasky/flowportal/dto/extendData/ExtendFieldCmd.java
+++ b/ServiceSite/facade/src/main/java/com/seasky/flowportal/dto/extendData/ExtendFieldCmd.java
@@ -3,6 +3,7 @@ package com.seasky.flowportal.dto.extendData;
 import com.alibaba.fastjson.JSONObject;
 import com.seasky.flowportal.dto.bidding.BiddingContractInfoCmd;
 import com.seasky.flowportal.dto.fapiao.FapiaoHistoryCmd;
+import com.seasky.flowportal.dto.kingDee.KingDeeCommonNewExpenseBillByTypeRequest;
 import com.seasky.flowportal.dto.user.ApproverUserInfoCmd;
 import com.seasky.flowportal.dto.userContainingVerification.UserContainingVerificationCmd;
 import io.swagger.annotations.ApiModelProperty;
@@ -275,6 +276,10 @@ public class ExtendFieldCmd implements Serializable {
     @ApiModelProperty(value = "椤圭洰鎶ラ攢閲戦")
     private List<BigDecimal> projectAmountList = new ArrayList<>();
 
+    /**缃戞姤鍗曞鎺ラ噾铦朵俊鎭�*/
+    @ApiModelProperty(value = "缃戞姤鍗曞鎺ラ噾铦朵俊鎭�")
+    KingDeeCommonNewExpenseBillByTypeRequest claimsOrderInfo;
+
     /**闇€瑕侀€夋嫨鐨勫姞绛句汉0*/
     @ApiModelProperty(value = "闇€瑕侀€夋嫨鐨勫姞绛句汉0")
     private List<ApproverUserInfoCmd> approverUser0 = new ArrayList<>();
diff --git a/ServiceSite/src/main/java/com/seasky/flowportal/service/ExternalDataService.java b/ServiceSite/src/main/java/com/seasky/flowportal/service/ExternalDataService.java
index 19632c7494e8fde361b1f9f6a057a3dbd1c75919..e985e07794d0f10bb850fed30df32097bb7683b2 100644
--- a/ServiceSite/src/main/java/com/seasky/flowportal/service/ExternalDataService.java
+++ b/ServiceSite/src/main/java/com/seasky/flowportal/service/ExternalDataService.java
@@ -241,6 +241,8 @@ public interface ExternalDataService {
 
     public String commonNewExpenseBillByType(Long instanceId, String orderCode);
 
+    public String commonNewExpenseBillByType(Long instanceId, KingDeeCommonNewExpenseBillByTypeRequest claimsOrderInfo);
+
     public String addSalaryBill(Long instanceId, String orderCode);
     public String updateSeaSkyFiAuditResult(ApplyOut applyOut);
     public String updateSeaSkyFiAuditResult(Long instanceId, String orderCode, String orderType, String approvalOpinion);
diff --git a/ServiceSite/src/main/java/com/seasky/flowportal/service/impl/ExternalDataServiceImpl.java b/ServiceSite/src/main/java/com/seasky/flowportal/service/impl/ExternalDataServiceImpl.java
index bcd08fe5572beeddb10916953a0227e70796bad5..9bdabf2bb129ceefd0f1054ba12e09ae87130bc8 100644
--- a/ServiceSite/src/main/java/com/seasky/flowportal/service/impl/ExternalDataServiceImpl.java
+++ b/ServiceSite/src/main/java/com/seasky/flowportal/service/impl/ExternalDataServiceImpl.java
@@ -1790,6 +1790,12 @@ public abstract class ExternalDataServiceImpl implements ExternalDataService {
     public String commonNewExpenseBillByType(Long instanceId, String orderCode) {
         instanceId = ObjectUtils.isNotEmpty(instanceId) ? instanceId : BaseInOutUtil.verifyInstanceId();
         KingDeeCommonNewExpenseBillByTypeRequest data = queryClaimsOrderInfo(instanceId, orderCode);
+        return commonNewExpenseBillByType(instanceId, data);
+    }
+    @Override
+    @SneakyThrows
+    public String commonNewExpenseBillByType(Long instanceId, KingDeeCommonNewExpenseBillByTypeRequest data) {
+        instanceId = ObjectUtils.isNotEmpty(instanceId) ? instanceId : BaseInOutUtil.verifyInstanceId();
         String token = getKingDeeToken(instanceId);
         Map<String, String> headerMap = new HashMap<String, String>() {{
 //            put("Authorization",String.format("Bearer %s", token));
diff --git a/ServiceSite/src/main/java/com/seasky/flowportal/service/impl/FlowServiceKingDeeImpl.java b/ServiceSite/src/main/java/com/seasky/flowportal/service/impl/FlowServiceKingDeeImpl.java
index db25eb80ca9bc0360474400c0f46e4b4011e36d5..6bf13b945c157bbe943e2db033a0cc312d308523 100644
--- a/ServiceSite/src/main/java/com/seasky/flowportal/service/impl/FlowServiceKingDeeImpl.java
+++ b/ServiceSite/src/main/java/com/seasky/flowportal/service/impl/FlowServiceKingDeeImpl.java
@@ -5,7 +5,9 @@ import com.seasky.flowportal.domain.po.ApprovalPo;
 import com.seasky.flowportal.dto.apply.ApplyListOut;
 import com.seasky.flowportal.dto.apply.ApplyOut;
 import com.seasky.flowportal.dto.approval.ApprovalQuery;
+import com.seasky.flowportal.dto.extendData.ExtendFieldCmd;
 import com.seasky.flowportal.dto.flow.FlowCmd;
+import com.seasky.flowportal.dto.kingDee.KingDeeCommonNewExpenseBillByTypeRequest;
 import com.seasky.flowportal.enums.OrderTypesEnum;
 import com.seasky.flowportal.service.FlowService;
 import com.seasky.flowportal.utils.ApprovalUtil;
@@ -32,8 +34,14 @@ public class FlowServiceKingDeeImpl extends FlowService {
             throw ExceptionUtil.getException(null, "鏍规嵁鎶ラ攢鍗曞彿鏈煡璇㈠埌鍗曟嵁");
         String billId = null;
         String orderType = po.getOrderType();
-        if (OrderTypesEnum.isOnlineReimbursement(orderType))
-            billId = ExternalDataUtil.INSTANCE.commonNewExpenseBillByType(instanceId, orderCode);
+        if (OrderTypesEnum.isOnlineReimbursement(orderType)) {
+            ExtendFieldCmd extendFieldCmd = ExtendFieldCmd.convert(po.getExtendField());
+            KingDeeCommonNewExpenseBillByTypeRequest claimsOrderInfo = ObjectUtils.isEmpty(extendFieldCmd) ? null : extendFieldCmd.getClaimsOrderInfo();
+            if (ObjectUtils.isEmpty(claimsOrderInfo))
+                throw ExceptionUtil.getException(null, "鏈煡璇㈠埌缃戞姤鍗曞鎺ラ噾铦朵俊鎭�");
+            billId = ExternalDataUtil.INSTANCE.commonNewExpenseBillByType(instanceId, claimsOrderInfo);
+//            billId = ExternalDataUtil.INSTANCE.commonNewExpenseBillByType(instanceId, orderCode);
+        }
         else if (OrderTypesEnum.isSalary(orderType))
             billId = ExternalDataUtil.INSTANCE.addSalaryBill(instanceId, orderCode);
         return billId;