diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java index c91775e264..a5f711cd68 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java @@ -7,6 +7,7 @@ import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial; import com.yxt.anrui.fin.api.kingdee.purmrb.PurMrb; import com.yxt.anrui.fin.api.kingdee.saloutstock.SalOutStock; import com.yxt.anrui.fin.api.kingdee.stkinstock.StkInStock; +import com.yxt.anrui.fin.api.kingdee.stktransferdirect.StkTransferDirect; import com.yxt.common.core.result.ResultBean; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -72,4 +73,9 @@ public interface FinKingDeeFeign { @ResponseBody public ResultBean> draftBdMaterialList(@RequestBody List bdMaterial) ; + @ApiOperation("保存直接调拨单的接口") + @PostMapping("/draftStkTransferDirect") + @ResponseBody + public ResultBean> draftStkTransferDirect(@RequestBody StkTransferDirect stkTransferDirect) ; + } diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java index 3460ad9e97..067de1dab0 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java @@ -7,6 +7,7 @@ import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial; import com.yxt.anrui.fin.api.kingdee.purmrb.PurMrb; import com.yxt.anrui.fin.api.kingdee.saloutstock.SalOutStock; import com.yxt.anrui.fin.api.kingdee.stkinstock.StkInStock; +import com.yxt.anrui.fin.api.kingdee.stktransferdirect.StkTransferDirect; import com.yxt.common.core.result.ResultBean; import java.util.List; @@ -53,4 +54,9 @@ implements FinKingDeeFeign{ return null; } + @Override + public ResultBean> draftStkTransferDirect(StkTransferDirect stkTransferDirect) { + return null; + } + } diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/KingDeeBillId.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/KingDeeBillId.java index 5277823ae8..7bff09014f 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/KingDeeBillId.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/KingDeeBillId.java @@ -8,6 +8,7 @@ public enum KingDeeBillId { STK_INSTOCK("STK_InStock","采购入库单"), PUR_MRB("PUR_MRB","采购退料单"), SAL_OUTSTOCK("SAL_OUTSTOCK","销售出库单"), + STK_TRANSFERDIRECT("STK_TransferDirect","直接调拨单"), BD_MATERIAL("BD_MATERIAL","物料"); private String ID; private String NAME; diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/stktransferdirect/StkTransferDirect.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/stktransferdirect/StkTransferDirect.java new file mode 100644 index 0000000000..2301e13402 --- /dev/null +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/stktransferdirect/StkTransferDirect.java @@ -0,0 +1,198 @@ +package com.yxt.anrui.fin.api.kingdee.stktransferdirect; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.anrui.fin.api.kingdee.stkinstock.StkInStock; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * 直接调拨单 + */ +@Data +public class StkTransferDirect { + @Data + public static class FBillEntry{ + /* 调入库存状态:FDestStockStatusId (必填项)*/ + @JsonProperty("FDestStockStatusId") + @NotBlank + public String FDestStockStatusId; + /*调出库存状态:FSrcStockStatusId (必填项)*/ + @JsonProperty("FSrcStockStatusId") + @NotBlank + public String FSrcStockStatusId; + /*基本单位:FBaseUnitId (必填项)*/ + @JsonProperty("FBaseUnitId") + @NotBlank + public String FBaseUnitId; + /*调入货主类型:FOwnerTypeId (必填项)*/ + @JsonProperty("FOwnerTypeId") + @NotBlank + public String FOwnerTypeId; + /* 调出保管者:FKeeperOutId (必填项)*/ + @JsonProperty("FKeeperOutId") + @NotBlank + public String FKeeperOutId; + /* 调出货主:FOwnerOutId (必填项)*/ + @JsonProperty("FOwnerOutId") + @NotBlank + public String FOwnerOutId; + /*调出批号:FLot*/ + @JsonProperty("FLot") + @NotBlank + public String FLot; + /* 调出货主类型:FOwnerTypeOutId (必填项)*/ + @JsonProperty("FOwnerTypeOutId") + @NotBlank + public String FOwnerTypeOutId; + /*调入批号:FDestLot*/ + @JsonProperty("FDestLot") + @NotBlank + public String FDestLot; + /* 调入货主:FOwnerId (必填项)*/ + @JsonProperty("FOwnerId") + @NotBlank + public String FOwnerId; + /* 调入货主:FOwnerIdHead (必填项)*/ + @JsonProperty("FOwnerIdHead") + @NotBlank + public String FOwnerIdHead; + /* 调出保管者类型:FKeeperTypeOutId (必填项)*/ + @JsonProperty("FKeeperTypeOutId") + @NotBlank + public String FKeeperTypeOutId; + /* 调入保管者:FKeeperId (必填项)*/ + @JsonProperty("FKeeperId") + @NotBlank + public String FKeeperId; + /* 调入保管者类型:FKeeperTypeId (必填项)*/ + @JsonProperty("FKeeperTypeId") + @NotBlank + public String FKeeperTypeId; + /* 调入仓库:FDestStockId (必填项)*/ + @JsonProperty("FDestStockId") + @NotBlank + public String FDestStockId; + /* 单位:FUnitID (必填项)*/ + @JsonProperty("FUnitID") + @NotBlank + public String FUnitID; + /* 物料编码:FMaterialId (必填项)*/ + @JsonProperty("FMaterialId") + @NotBlank + public String FMaterialId; + /* 调出仓库:FSrcStockId (必填项)*/ + @JsonProperty("FSrcStockId") + @NotBlank + public String FSrcStockId; + } + /* 调出库存组织:FStockOutOrgId (必填项)*/ + @JsonProperty("FStockOutOrgId") + @NotBlank + public String FStockOutOrgId; + /* 调拨类型:FTransferBizType (必填项)*/ + @JsonProperty("FTransferBizType") + @NotBlank + public String FTransferBizType; + /* 调拨方向:FTransferDirect (必填项)*/ + @JsonProperty("FTransferDirect") + @NotBlank + public String FTransferDirect; + /* 调出货主类型:FOwnerTypeOutIdHead (必填项)*/ + @JsonProperty("FOwnerTypeOutIdHead") + @NotBlank + public String FOwnerTypeOutIdHead; + /* 调入库存组织:FStockOrgId (必填项)*/ + @JsonProperty("FStockOrgId") + @NotBlank + public String FStockOrgId; + /* 调入货主类型:FOwnerTypeIdHead (必填项)*/ + @JsonProperty("FOwnerTypeIdHead") + @NotBlank + public String FOwnerTypeIdHead; + /* 单据类型:FBillTypeID (必填项)*/ + @JsonProperty("FBillTypeID") + @NotBlank + public String FBillTypeID; + /* 日期:FDate (必填项)*/ + @JsonProperty("FDate") + @NotBlank + public String FDate; + /** + * FBillEntry + */ + @JsonProperty("FBillEntry") + @NotBlank + public List FBillEntry=new ArrayList<>(); + + public final static StkTransferDirect stkTransferDirect = new StkTransferDirect(); + + static { + SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Date date=new Date(); + /* 单据类型:FBillTypeID (必填项)*/ + stkTransferDirect.setFBillTypeID("ZJDB01_SYS"); + /* 日期:FDate (必填项)*/ + stkTransferDirect.setFDate(sdf.format(date)); + /* 调出库存组织:FStockOutOrgId (必填项)*/ + stkTransferDirect.setFStockOutOrgId("101"); + /* 调出货主类型:FOwnerTypeOutIdHead (必填项)*/ + stkTransferDirect.setFOwnerTypeOutIdHead("BD_OwnerOrg"); + /* 调拨类型:FTransferBizType (必填项)*/ + stkTransferDirect.setFTransferBizType("InnerOrgTransfer"); + /* 调拨方向:FTransferDirect (必填项)*/ + stkTransferDirect.setFTransferDirect("GENERAL"); + /* 调入库存组织:FStockOrgId (必填项)*/ + stkTransferDirect.setFStockOrgId("101"); + /* 调入货主类型:FOwnerTypeIdHead (必填项)*/ + stkTransferDirect.setFOwnerTypeIdHead("BD_OwnerOrg"); + List fBillEntry=new ArrayList<>(); + StkTransferDirect.FBillEntry fbe=new StkTransferDirect.FBillEntry(); + /*调入批号:FDestLot*/ + fbe.setFDestLot("1234567890"); + /*调出批号:FLot*/ + fbe.setFLot("1234567890"); + /*基本单位:FBaseUnitId (必填项)*/ + fbe.setFBaseUnitId("liang"); + /* 调入仓库:FDestStockId (必填项)*/ + fbe.setFDestStockId("CK002"); + /* 单位:FUnitID (必填项)*/ + fbe.setFUnitID("liang"); + /* 物料编码:FMaterialId (必填项)*/ + fbe.setFMaterialId(" JX091054"); + + /* 调入库存状态:FDestStockStatusId (必填项)*/ + fbe.setFDestStockStatusId("KCZT01_SYS"); + /* 调入货主类型:FOwnerTypeId (必填项)*/ + fbe.setFOwnerTypeId("BD_OwnerOrg"); + /* 调入货主:FOwnerId (必填项)*/ + fbe.setFOwnerId("101"); + /* 调入货主:FOwnerId (必填项)*/ + fbe.setFOwnerIdHead("101"); + /* 调出保管者:FKeeperOutId (必填项)*/ + fbe.setFKeeperOutId("101"); + /* 调出货主:FOwnerOutId (必填项)*/ + fbe.setFOwnerOutId("101"); + /* 调出货主类型:FOwnerTypeOutId (必填项)*/ + fbe.setFOwnerTypeOutId("BD_OwnerOrg"); + /* 调出保管者类型:FKeeperTypeOutId (必填项)*/ + fbe.setFKeeperTypeOutId("BD_KeeperOrg"); + /* 调入保管者:FKeeperId (必填项)*/ + fbe.setFKeeperId("101"); + /* 调入保管者类型:FKeeperTypeId (必填项)*/ + fbe.setFKeeperTypeId("BD_KeeperOrg"); + /*调出库存状态:FSrcStockStatusId (必填项)*/ + fbe.setFSrcStockStatusId("KCZT01_SYS"); + /* 调出仓库:FSrcStockId (必填项)*/ + fbe.setFSrcStockId("CK001"); + fBillEntry.add(fbe); + stkTransferDirect.setFBillEntry(fBillEntry); + } + public static StkTransferDirect createStkTransferDirect() { + return stkTransferDirect; + } +} diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/submitkd/SubmitKD.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/submitkd/SubmitKD.java index 33661dd8f3..c19576ec6e 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/submitkd/SubmitKD.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/submitkd/SubmitKD.java @@ -4,7 +4,7 @@ import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Data; /** - * 提交金蝶接口的数据格式 + * 提交功能 金蝶接口的数据格式 */ @Data public class SubmitKD { diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java index cd47b2afd0..1ac9c8dba8 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java @@ -9,6 +9,7 @@ import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial; import com.yxt.anrui.fin.api.kingdee.purmrb.PurMrb; import com.yxt.anrui.fin.api.kingdee.saloutstock.SalOutStock; import com.yxt.anrui.fin.api.kingdee.stkinstock.StkInStock; +import com.yxt.anrui.fin.api.kingdee.stktransferdirect.StkTransferDirect; import com.yxt.anrui.fin.biz.kingdee.appaybill.ApPayBillService; import com.yxt.anrui.fin.biz.kingdee.appayable.APPayableService; import com.yxt.anrui.fin.biz.kingdee.bdmaterial.BdMaterialService; @@ -16,6 +17,7 @@ import com.yxt.anrui.fin.biz.kingdee.purmrb.PurMrbService; import com.yxt.anrui.fin.biz.kingdee.receivablebill.ReceivableBillService; import com.yxt.anrui.fin.biz.kingdee.saloutstock.SalOutStockService; import com.yxt.anrui.fin.biz.kingdee.stkinstock.STKInStockService; +import com.yxt.anrui.fin.biz.kingdee.stktransferdirect.StkTransferDirectService; import com.yxt.common.core.result.ResultBean; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -64,6 +66,11 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign { */ @Autowired private BdMaterialService bdMaterialService; + /** + * 保存直接调拨单 + */ + @Autowired + private StkTransferDirectService stkTransferDirectService; @ApiOperation("入账保存应付单的接口") @PostMapping("/draftEntryBill") @ResponseBody @@ -111,7 +118,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign { @PostMapping("/draftBdMaterial") @ResponseBody @Override - public ResultBean> draftBdMaterial(BdMaterial bdMaterial) { + public ResultBean> draftBdMaterial(@RequestBody BdMaterial bdMaterial) { return bdMaterialService.draftBdMaterial(bdMaterial); } @@ -122,4 +129,11 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign { public ResultBean> draftBdMaterialList(@RequestBody List bdMaterial) { return bdMaterialService.draftBdMaterialList(bdMaterial); } + @ApiOperation("保存直接调拨单的接口") + @PostMapping("/draftStkTransferDirect") + @ResponseBody + @Override + public ResultBean> draftStkTransferDirect(@RequestBody StkTransferDirect stkTransferDirect) { + return stkTransferDirectService.draftStkTransferDirect(stkTransferDirect); + } } diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/StkTransferDirectCastToKingDeeBillFields.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/StkTransferDirectCastToKingDeeBillFields.java new file mode 100644 index 0000000000..efa180c9aa --- /dev/null +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/StkTransferDirectCastToKingDeeBillFields.java @@ -0,0 +1,66 @@ +package com.yxt.anrui.fin.biz.kingdee.stktransferdirect; + +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.parser.Feature; +import com.yxt.anrui.fin.biz.kingdee.KingDeeUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 封装转换的类 + */ +public class StkTransferDirectCastToKingDeeBillFields { + private static Logger log=LoggerFactory.getLogger(StkTransferDirectCastToKingDeeBillFields.class); + /** + * 构造金蝶需要的数据结构 并对字段赋值 + * + * @param map_fEntityModel_ + * @param vehicleList + * @return + */ + public static String getKingDeeData(Map map_fEntityModel_,List> vehicleList){ + /** + * 取模板 + */ + String readJsonFile = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data.json"); + String fEntityData_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data_data.json"); + String fEntityModel_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data_model.json"); + String fBillEntry_ = KingDeeUtils.readJsonFile("com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data_FBillEntry.json"); + log.info("readJsonFile:{}",readJsonFile); + log.info("fEntityData_:{}",fEntityData_); + log.info("fEntityModel_:{}",fEntityModel_); + log.info("FBillEntry_:{}",fBillEntry_); + + //模板字符创转json + JSONObject jsonObj= JSONObject.parseObject(readJsonFile, Feature.OrderedField); + JSONObject jsonFEntityData_= JSONObject.parseObject(fEntityData_,Feature.OrderedField); + fEntityModel_ =KingDeeUtils.replaceTemplateParams(fEntityModel_, map_fEntityModel_); + JSONObject jsonFEntityModel_= JSONObject.parseObject(fEntityModel_,Feature.OrderedField); + + List list_fEntityDetail_=new ArrayList<>(); + + //对模板字段赋值 根据传递进来的map数据的集合进行赋值 + for(int i=0;i params=vehicleList.get(i); + Map map_fEntityDetail_=new HashMap<>(); + for (Map.Entry entry : params.entrySet()) { + map_fEntityDetail_.put(entry.getKey(),entry.getValue()); + } + fBillEntry_ =KingDeeUtils.replaceTemplateParams(fBillEntry_, map_fEntityDetail_); + list_fEntityDetail_.add(JSONObject.parseObject(fBillEntry_,Feature.OrderedField)); + } + + jsonFEntityModel_.put("FBillEntry", JSONArray.parseArray(JSON.toJSONString(list_fEntityDetail_))); + jsonFEntityData_.put("Model",JSONObject.parseObject(JSON.toJSONString(jsonFEntityModel_),Feature.OrderedField)); + jsonObj.put("data",jsonFEntityData_.toJSONString()); + + return jsonObj.toJSONString(); + } +} \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/StkTransferDirectService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/StkTransferDirectService.java new file mode 100644 index 0000000000..ef227ebde6 --- /dev/null +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/StkTransferDirectService.java @@ -0,0 +1,36 @@ +package com.yxt.anrui.fin.biz.kingdee.stktransferdirect; + +import com.yxt.anrui.fin.api.kingdee.KingDeeBillId; +import com.yxt.anrui.fin.api.kingdee.stktransferdirect.StkTransferDirect; +import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService; +import com.yxt.common.core.result.ResultBean; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +@Service +public class StkTransferDirectService extends FinKingDeeService { + + /** + * 保存采购入库单 + * @param stkTransferDirect + * @return + */ + public ResultBean draftStkTransferDirect(StkTransferDirect stkTransferDirect) { + stkTransferDirect=StkTransferDirect.createStkTransferDirect(); + ResultBean rb=ResultBean.fireFail(); + try { + //业务表的主表数据集合 + Map map_fEntityModel_= object2Map(stkTransferDirect); + List fBillEntry = stkTransferDirect.getFBillEntry(); + //准备 物料列表的数据 ForEntryBill + List> vehicleListMap = createVehicleLists(fBillEntry); + String kingDeeData = StkTransferDirectCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_,vehicleListMap); + return saveBill(KingDeeBillId.STK_TRANSFERDIRECT.getID(),kingDeeData); + } catch (Exception e) { + e.printStackTrace(); + } + return rb; + } +} diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data.json b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data.json new file mode 100644 index 0000000000..f300562a9a --- /dev/null +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data.json @@ -0,0 +1,4 @@ +{ + "formId": "STK_TransferDirect", + "data": "@KD_data" +} \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data_FBillEntry.json b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data_FBillEntry.json new file mode 100644 index 0000000000..3817d41da0 --- /dev/null +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data_FBillEntry.json @@ -0,0 +1,58 @@ +{ + "FMaterialId": { + "FNumber": "@KD_FMaterialId" + }, + "FUnitID": { + "FNumber": "@KD_FUnitID" + }, + "FDestLot":{ + "FNumber": "@KD_FDestLot" + }, + "FLot": { + "FNumber": "@KD_Flot" + }, + "FQty": 1.0, + "FSrcStockId": { + "FNumber": "@KD_FSrcStockId" + }, + "FDestStockId": { + "FNumber": "@KD_FDestStockId" + }, + "FSrcStockStatusId": { + "FNumber": "@KD_FSrcStockStatusId" + }, + "FDestStockStatusId": { + "FNumber": "@KD_FDestStockStatusId" + }, + "FBusinessDate": "2022-08-31 00:00:00", + "FOwnerTypeOutId": "@KD_FOwnerTypeOutId", + "FOwnerOutId": { + "FNumber": "@KD_FOwnerOutId" + }, + "FOwnerTypeId": "@KD_FOwnerTypeId", + "FOwnerId": { + "FNumber": "@KD_FOwnerId" + }, + "FBaseUnitId": { + "FNumber": "@KD_FBaseUnitId" + }, + "FBaseQty": 1.0, + "FISFREE": false, + "FKeeperTypeId": "@KD_FKeeperTypeId", + "FKeeperId": { + "FNumber": "@KD_FKeeperId" + }, + "FKeeperTypeOutId": "@KD_FKeeperTypeOutId", + "FKeeperOutId": { + "FNumber": "@KD_FKeeperOutId" + }, + "FDestMaterialId": { + "FNUMBER": " JX091054" + }, + "FPriceUnitID": { + "FNumber": "liang" + }, + "FPriceQty": 1.0, + "FPriceBaseQty": 1.0, + "FTransReserveLink": false +} \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data_data.json b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data_data.json new file mode 100644 index 0000000000..8a1e182ff3 --- /dev/null +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data_data.json @@ -0,0 +1,13 @@ +{ + "Creator": "", + "NeedUpDateFields": [], + "NeedReturnFields": [], + "IsDeleteEntry": "True", + "SubSystemId": "", + "IsVerifyBaseDataField": "false", + "IsEntryBatchFill": "True", + "ValidateFlag": "True", + "NumberSearch": "True", + "InterationFlags": "", + "Model":{} +} \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data_model.json b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data_model.json new file mode 100644 index 0000000000..40ee322140 --- /dev/null +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/data_model.json @@ -0,0 +1,42 @@ +{ + "FID": 0, + "FBillTypeID": { + "FNUMBER": "@KD_FBillTypeID" + }, + "FBizType": "NORMAL", + "FTransferDirect": "@KD_FTransferDirect", + "FTransferBizType": "@KD_FTransferBizType", + "FSettleOrgId": { + "FNumber": "101" + }, + "FSaleOrgId": { + "FNumber": "101" + }, + "FStockOutOrgId": { + "FNumber": "@KD_FStockOutOrgId" + }, + "FOwnerTypeOutIdHead": "@KD_FOwnerTypeOutIdHead", + "FOwnerOutIdHead": { + "FNumber": "101" + }, + "FStockOrgId": { + "FNumber": "@KD_FStockOrgId" + }, + "FIsIncludedTax": true, + "FIsPriceExcludeTax": true, + "FOwnerTypeIdHead": "@KD_FOwnerTypeIdHead", + "FSETTLECURRID": { + "FNUMBER": "PRE001" + }, + "FOwnerIdHead": { + "FNumber": "101" + }, + "FDate": "2022-08-31 00:00:00", + "FBaseCurrId": { + "FNumber": "PRE001" + }, + "FCustID": { + "FNUMBER": "GYRHHR002529" + }, + "FBillEntry": [] +} \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/remarks.txt b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/remarks.txt new file mode 100644 index 0000000000..fdfdbf3515 --- /dev/null +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/remarks.txt @@ -0,0 +1,175 @@ +一、请求参数说明: +1.formid:业务对象表单Id,字符串类型(必录) +2.data:Json格式数据(详情参考Json格式数据)(必录) + 2.1.Creator:创建者内码(非必录) + 2.2.NeedUpDateFields:需要更新的字段,数组类型,格式:[key1,key2,...](非必录),注(更新单据体字段得加上单据体key) + 2.3.NeedReturnFields:需返回结果的字段集合,数组类型,格式:[key,entitykey.key,...](非必录),注(返回单据体字段格式:entitykey.key) + 2.4.IsDeleteEntry:是否删除已存在的分录,布尔类型,默认true(非必录) + 2.5.SubSystemId:表单所在的子系统内码,字符串类型(非必录) + 2.6.IsVerifyBaseDataField:是否验证所有的基础资料有效性,布尔类,默认false(非必录) + 2.7.IsEntryBatchFill:是否批量填充分录,默认true(非必录) + 2.8.ValidateFlag:是否验证标志,布尔类型,默认true(非必录) + 2.9.NumberSearch:是否用编码搜索基础资料,布尔类型,默认true(非必录) + 2.10.InterationFlags:交互标志集合,字符串类型,分号分隔,格式:"flag1;flag2;..."(非必录),例如(允许负库存标识:STK_InvCheckResult) + 2.11.Model:表单数据包,Json类型(必录) + +五、字段说明: +序列号单位:FSNUnitID +订单类别:FORDERTYPE +关联出库数量(基本单位):FBASEOUTJOINQTY +到货确认:FArrivalStatus +入库日期:FBusinessDate +序列号单位数量:FSNQty +备注:FNoteEntry +调入库存更新标识:FStockInFlag +调出库存更新标识:FStockOutFlag +关联出库数量:FOutJoinQty +业务流程:FBFLowId +源单编号:FSrcBillNo +到货确认人:FArrivalConfirmor +金额:FConsignAmount +税率%:FTaxRate +含税单价:FTaxPrice +折扣额:FDiscount +价税合计:FAllAmount +税额:FTaxAmount +补货数量:FRepairQty +拒收数量:FRefuseQty +到货日期:FArrivalDate +单价:FConsignPrice +实收数量:FActQty +是否补货:FIsRepair +库存辅单位:FSecUnitId +调入库存状态:FDestStockStatusId (必填项) +调出库存状态:FSrcStockStatusId (必填项) +调拨数量(基本单位):FBaseQty +基本单位:FBaseUnitId (必填项) +调拨数量(库存辅单位):FSecQty +生产日期:FProduceDate +辅助属性:FAuxPropId +BOM版本:FBomId +项目编号:FProjectNo +计划跟踪号:FMtoNo +有效期至:FExpiryDate +调入货主类型:FOwnerTypeId (必填项) +源单行号:FSrcSeq +源单类型:FSrcBillTypeId +调出保管者:FKeeperOutId (必填项) +关联退回数量(基本单位):FBaseJoinQty +关联退回数量:FReceiveQty +订单编号:FOrderNo +调出货主:FOwnerOutId (必填项) +调出货主类型:FOwnerTypeOutId (必填项) +调入货主:FOwnerId (必填项) +调出保管者类型:FKeeperTypeOutId (必填项) +调入保管者:FKeeperId (必填项) +调入保管者类型:FKeeperTypeId (必填项) +净价:FTaxNetPrice +服务上下文:FServiceContext +结算关联数量(销售基本单位):FJoinSaleBaseSettQty +出库关联数量(销售基本单位):FSalBaseOutJoinQty +计价基本数量:FPriceBaseQty +计价数量:FPriceQty +计价单位:FPriceUnitID +携带源单主业务单位:FSrcBizUnitId +销售基本单位退货关联数量:FSalBaseJoinQty +普通调拨源单类型:FGenSrcBillFormId +源单辅单位基本数量:FSrcAuxBaseQty +源单主单位基本数量:FSrcBizBaseQty +携带源单辅单位:FSrcAuxUnitId +销售基本单位数量旧值:FSalBaseQtyUp +转移预留关系:FTransReserveLink +赠品:FISFREE +第三方源单分录编码:FThirdSrcEntryId +备注:FSerialNote +序列号:FSerialId +序列号:FSerialNo +质量类型:FDeliChkQualifyType +通知单编号:FNoticeNo +基本单位数量旧值:FBaseQtyUp +销售订单EntryId:FSOEntryId +库存状态转换EntryId:FConvertEntryId +库存请检单EntryId:FQmEntryId +拒收标志:FRefuseFlag +退货备注:FRETURNNOTE +折扣率%:FDiscountRate +结算关联数量(辅单位):FJOINSECSETTQTY +保质期:FExpPeriod +保质期单位:FExpUnit +结算关联数量:FJoinSettleQty +客户物料名称:FCustMatName +客户物料编码:FCustMatId +未结算关联数量(基本单位):FJoinBaseUnSettQty +未结算关联数量:FJoinUnSettleQty +结算关联数量(基本单位):FJoinBaseSettQty +出库关联数量(辅单位):FSECOUTJOINQTY +捡货结果标记:FLotPickFlag +调拨数量(辅单位):FExtAuxUnitQty +辅单位:FExtAuxUnitId +销售数量:FSaleQty +销售基本数量:FSalBaseQty +销售单位:FSaleUnitId +结算可退数量(基本单位):FBaseSettCanRetQty +调入批号:FDestLot +退货关联数量(辅单位):FSECJOINQTY +消耗汇总:FIsConsumeSum +调入BOM:FDestBomId +调入物料:FDestMaterialId +总成本:FAmount +调出库存组织:FStockOutOrgId (必填项) +调拨类型:FTransferBizType (必填项) +调入货主:FOwnerIdHead +调拨方向:FTransferDirect (必填项) +调出货主:FOwnerOutIdHead +调出货主类型:FOwnerTypeOutIdHead (必填项) +调入库存组织:FStockOrgId (必填项) +单据状态:FDocumentStatus +单据编号:FBillNo +调入货主类型:FOwnerTypeIdHead (必填项) +单据类型:FBillTypeID (必填项) +日期:FDate (必填项) +创建人:FCreatorId +仓管员:FStockerId +作废状态:FCancelStatus +作废人:FCancellerId +备注:FNote +本位币:FBaseCurrId +库存组:FStockerGroupId +最后修改日期:FModifyDate +最后修改人:FModifierId +创建日期:FCreateDate +作废日期:FCancelDate +审核日期:FApproveDate +审核人:FApproverId +业务类型:FBizType +第三方源单编码:FThirdSrcBillNo +第三方源单内码:FThirdSrcId +价外税:FIsPriceExcludeTax +序列号上传:FScanBox +对应供应商:FSUPPLIERID +对应客户:FCustID +组织间结算跨法人标识:FIsInterLegalPerson +第三方系统:FThirdSystem +调入仓位:FDestStockLocId +调入仓库:FDestStockId (必填项) +调出仓位:FSrcStockLocId +成本价:FPrice +调拨数量:FQty +单位:FUnitID (必填项) +物料名称:FMaterialName +物料编码:FMaterialId (必填项) +调出仓库:FSrcStockId (必填项) +调出批号:FLot +规格型号:FModel +结算组织:FSettleOrgId +销售组织:FSaleOrgId +结算币别:FSETTLECURRID +汇率:FExchangeRate +跨组织业务类型:FTransferBizTypeId +是否含税:FIsIncludedTax +收款条件:FRecConditionId +结算方式:FSettleModeId +汇率类型:FExchangeTypeId +销售员:FSalerId +销售组:FSaleGroupId +销售部门:FSaleDeptId \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/webapi测试的数据.txt b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/webapi测试的数据.txt new file mode 100644 index 0000000000..1f8e97b181 --- /dev/null +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/webapi测试的数据.txt @@ -0,0 +1,5 @@ +{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FID\":0,\"FBillTypeID\":{\"FNUMBER\":\"ZJDB01_SYS\"},\"FBizType\":\"NORMAL\",\"FTransferDirect\":\"GENERAL\",\"FTransferBizType\":\"InnerOrgTransfer\",\"FSettleOrgId\":{\"FNumber\":\"101\"},\"FSaleOrgId\":{\"FNumber\":\"101\"},\"FStockOutOrgId\":{\"FNumber\":\"101\"},\"FOwnerTypeOutIdHead\":\"BD_OwnerOrg\",\"FOwnerOutIdHead\":{\"FNumber\":\"101\"},\"FStockOrgId\":{\"FNumber\":\"101\"},\"FIsIncludedTax\":true,\"FIsPriceExcludeTax\":true,\"FOwnerTypeIdHead\":\"BD_OwnerOrg\",\"FSETTLECURRID\":{\"FNUMBER\":\"PRE001\"},\"FOwnerIdHead\":{\"FNumber\":\"101\"},\"FDate\":\"2022-08-31 00:00:00\",\"FBaseCurrId\":{\"FNumber\":\"PRE001\"},\"FCustID\":{\"FNUMBER\":\"GYRHHR002529\"},\"FBillEntry\":[{\"FMaterialId\":{\"FNumber\":\" JX091054\"},\"FUnitID\":{\"FNumber\":\"liang\"},\"FQty\":1.0,\"FSrcStockId\":{\"FNumber\":\"CK001\"},\"FDestStockId\":{\"FNumber\":\"CK002\"},\"FSrcStockStatusId\":{\"FNumber\":\"KCZT01_SYS\"},\"FDestStockStatusId\":{\"FNumber\":\"KCZT01_SYS\"},\"FBusinessDate\":\"2022-08-31 00:00:00\",\"FOwnerTypeOutId\":\"BD_OwnerOrg\",\"FOwnerOutId\":{\"FNumber\":\"101\"},\"FOwnerTypeId\":\"BD_OwnerOrg\",\"FOwnerId\":{\"FNumber\":\"101\"},\"FBaseUnitId\":{\"FNumber\":\"liang\"},\"FBaseQty\":1.0,\"FISFREE\":false,\"FKeeperTypeId\":\"BD_KeeperOrg\",\"FKeeperId\":{\"FNumber\":\"101\"},\"FKeeperTypeOutId\":\"BD_KeeperOrg\",\"FKeeperOutId\":{\"FNumber\":\"101\"},\"FDestMaterialId\":{\"FNUMBER\":\" JX091054\"},\"FPriceUnitID\":{\"FNumber\":\"liang\"},\"FPriceQty\":1.0,\"FPriceBaseQty\":1.0,\"FTransReserveLink\":false}]}} + + + +{"formId":"STK_TransferDirect","data":"{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\",\"Model\":{\"FID\":0,\"FBillTypeID\":{\"FNUMBER\":\"ZJDB01_SYS\"},\"FBizType\":\"NORMAL\",\"FTransferDirect\":\"GENERAL\",\"FTransferBizType\":\"InnerOrgTransfer\",\"FSettleOrgId\":{\"FNumber\":\"101\"},\"FSaleOrgId\":{\"FNumber\":\"101\"},\"FStockOutOrgId\":{\"FNumber\":\"101\"},\"FOwnerTypeOutIdHead\":\"BD_OwnerOrg\",\"FOwnerOutIdHead\":{\"FNumber\":\"101\"},\"FStockOrgId\":{\"FNumber\":\"101\"},\"FIsIncludedTax\":true,\"FIsPriceExcludeTax\":true,\"FOwnerTypeIdHead\":\"BD_OwnerOrg\",\"FSETTLECURRID\":{\"FNUMBER\":\"PRE001\"},\"FOwnerIdHead\":{\"FNumber\":\"101\"},\"FDate\":\"2022-08-31 00:00:00\",\"FBaseCurrId\":{\"FNumber\":\"PRE001\"},\"FCustID\":{\"FNUMBER\":\"GYRHHR002529\"},\"FBillEntry\":[{\"FOwnerTypeOutId\":\"BD_OwnerOrg\",\"FDestStockStatusId\":{\"FNumber\":\"KCZT01_SYS\"},\"FPriceBaseQty\":1.0,\"FBaseQty\":1.0,\"FBusinessDate\":\"2022-08-31 00:00:00\",\"FLot\":{\"FNumber\":\"@KD_Flot\"},\"FOwnerOutId\":{\"FNumber\":\"101\"},\"FSrcStockStatusId\":{\"FNumber\":\"KCZT01_SYS\"},\"FDestStockId\":{\"FNumber\":\"CK002\"},\"FMaterialId\":{\"FNumber\":\" JX091054\"},\"FOwnerTypeId\":\"BD_OwnerOrg\",\"FDestMaterialId\":{\"FNUMBER\":\" JX091054\"},\"FOwnerId\":{\"FNumber\":\"101\"},\"FISFREE\":false,\"FKeeperId\":{\"FNumber\":\"101\"},\"FPriceUnitID\":{\"FNumber\":\"liang\"},\"FKeeperOutId\":{\"FNumber\":\"101\"},\"FQty\":1.0,\"FDestLot\":{\"FNumber\":\"1234567890\"},\"FBaseUnitId\":{\"FNumber\":\"liang\"},\"FKeeperTypeId\":\"BD_KeeperOrg\",\"FTransReserveLink\":false,\"FUnitID\":{\"FNumber\":\"liang\"},\"FPriceQty\":1.0,\"FSrcStockId\":{\"FNumber\":\"CK001\"},\"FKeeperTypeOutId\":\"BD_KeeperOrg\"}]}}"} \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/直接调拨单的参数必填备注.xlsx b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/直接调拨单的参数必填备注.xlsx new file mode 100644 index 0000000000..0585c2881e Binary files /dev/null and b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/stktransferdirect/直接调拨单的参数必填备注.xlsx differ