From 01f550af6cd9d81bbb2b257cac3e67f2c440928d Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期四, 16 十月 2025 15:55:33 +0800
Subject: [PATCH] 新增 采购入库审核同步插件
---
zymes/OperationService/zymes_RealessPrdInStock.cs | 28 +++-
zymes/OperationService/zymes_RealessPurInStock.cs | 302 ++++++++++++++++++++++++++++++++++++++++++++++++++
zymes/zymes_Project.csproj | 1
3 files changed, 321 insertions(+), 10 deletions(-)
diff --git a/zymes/OperationService/zymes_RealessPrdInStock.cs b/zymes/OperationService/zymes_RealessPrdInStock.cs
index cd8d1f9..9d0583e 100644
--- a/zymes/OperationService/zymes_RealessPrdInStock.cs
+++ b/zymes/OperationService/zymes_RealessPrdInStock.cs
@@ -54,22 +54,30 @@
string sql = string.Empty;
sql = $@"
/*dialect*/
- SELECT
- a.FID HInterID,a.FENTRYID HEntryID, a.FMATERIALID HMaterID,a.FUNITID HUnitID,
- 0 HQtyMust, a.FREALQTY HQty, ISNULL(a.FPrice, 0) HPrice, 0 HMoney, a.FSTOCKID HWHID,
- 0 HSPID, 'CLOUD瀵煎叆' HRemark, a.FSRCINTERID HSourceInterID, a.FSRCENTRYID HSourceEntryID,
- a.FSRCBILLNO HSourceBillNo, a.FSRCBILLTYPE HSourceBillType,0 HPOOrderInterID,0 HPOOrderEntryID,
- '' HPOOrderBillNo,0 HSecUnitID,0 HSeOrderInterID, 0 HSeOrderEntryID, '' HSeOrderBillNo, 0 HRelationQty,
- 0 HSecUnitRate, a.FAUXPROPID HPropertyID
- from T_PRD_INSTOCKENTRY a with(nolock)
+ SELECT
+ a.FID HInterID,a.FENTRYID HEntryID, a.FMATERIALID HMaterID,a.FUNITID HUnitID,
+ a.FREALQTY HQtyMust, 0 HQty, ISNULL(a.FPrice, 0) HPrice, 0 HMoney, a.FSTOCKID HWHID,
+ 0 HSPID, 'CLOUD瀵煎叆' HRemark, a.FSRCINTERID HSourceInterID, a.FSRCENTRYID HSourceEntryID,
+ a.FSRCBILLNO HSourceBillNo,
+ case a.FSRCBILLTYPE
+ when 'SFC_OperationReport' then '3714'
+ when 'SFC_OperationTransfer' then '7507'
+ when 'PRD_MO' then '3710'
+ when 'PRD_MORPT' then '3711'
+ end as
+ HSourceBillType,0 HPOOrderInterID,0 HPOOrderEntryID,
+ '' HPOOrderBillNo,0 HSecUnitID,0 HSeOrderInterID, 0 HSeOrderEntryID, '' HSeOrderBillNo, 0 HRelationQty,
+ 0 HSecUnitRate, a.FAUXPROPID HPropertyID
+ from T_PRD_INSTOCKENTRY a with(nolock)
Where a.FID={id}
select a.FID as HInterID,1202 as HBillType,1202 as HBillSubType,
a.FBILLNO as HBillNo,case when a.FAPPROVERID=0 then 1 else 2 end HBillStatus,
a.FDATE as HDate,YEAR(a.FDATE) as HYear,MONTH(a.FDATE) as HPeriod,'CLOUD瀵煎叆' as HRemark,
- a.FCREATORID as HMaker,a.FCREATEDATE as HMakeDate,0 as HSupID,a.FSTOCKERID as HWHID, -- 琛ュ厖琛ㄥ埆鍚峚.锛屼笌鍏朵粬瀛楁淇濇寔涓�鑷�
+ a.FCREATORID as HMaker,a.FCREATEDATE as HMakeDate,0 as HSupID,a.FSTOCKERID as HWHID,
a.FSTOCKERID as HEmpID,0 as HManagerID,0 as HSecManagerID,a.FSTOCKERID as HKeeperID,
'CLOUD瀵煎叆' as HExplanation,a.FBILLNO as HInnerBillNo,a.FCurrID as HCurID,0 as HExRate,
- a.FApproverID as HChecker, a.FApproveDate as HCheckDate,
+ o.FNUMBER as HOrganNumber,a.FAPPROVERID as HChecker,a.FAPPROVEDATE as HCheckDate,
+ a.FSTOCKORGID as HSTOCKORGID,
(select top 1 b.FWORKSHOPID
from T_PRD_INSTOCKEntry b with(nolock)
where b.FID = a.FID
diff --git a/zymes/OperationService/zymes_RealessPurInStock.cs b/zymes/OperationService/zymes_RealessPurInStock.cs
new file mode 100644
index 0000000..497e8c1
--- /dev/null
+++ b/zymes/OperationService/zymes_RealessPurInStock.cs
@@ -0,0 +1,302 @@
+锘縰sing System;
+using System.Collections.Generic;
+using Kingdee.BOS.Util;
+using Kingdee.BOS.Core.Metadata.EntityElement;
+using Kingdee.BOS.Core.DynamicForm.PlugIn;
+using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
+using Kingdee.BOS.Orm.DataEntity;
+using System.ComponentModel;
+using Kingdee.BOS.ServiceHelper;
+using System.Data;
+using Newtonsoft.Json.Linq;
+using ZD.Cloud.WebApi;
+using Newtonsoft.Json;
+using Kingdee.BOS.Core.DynamicForm;
+using System.Linq;
+using RestSharp;
+using zymes_Project.Utility;
+
+namespace zymes_Project.OperationService
+{
+ [Description("[閲囪喘鍏ュ簱鍗�-瀹℃牳]鏈嶅姟鎻掍欢]")]
+ [HotUpdate]
+ public class zymes_RealessPurInStock : AbstractOperationServicePlugIn
+ {
+ Dictionary<string, string> dictionary = new Dictionary<string, string>();
+ public override void OnPrepareOperationServiceOption(OnPrepareOperationServiceEventArgs e)
+ {
+ base.OnPrepareOperationServiceOption(e);
+
+ //涓轰簡鍦˙eginOperationTransaction閲屾鏌ユ暟鎹姏鍑哄紓甯告椂
+ //鍙洖婊氬綋鍓嶅崟鎹殑浜嬪姟,杩欓噷璁剧疆涓轰笉鏀寔鎵归噺浜嬪姟,杩欐牱BOS浼�
+ //寰幆涓烘瘡涓�寮犲崟鎹垱寤轰簨鍔¤皟鐢ㄦ搷浣�
+ e.SupportTransaction = true;
+ // e.SurportBatchTransaction = false;
+ }
+ public override void OnPreparePropertys(PreparePropertysEventArgs e)
+ {
+ base.OnPreparePropertys(e);
+ e.FieldKeys.Add("FEntity");
+ e.FieldKeys.Add("FEntity_FEntryID");
+ }
+ //public override void BeginOperationTransaction(BeginOperationTransactionArgs e)
+ //{
+ // base.BeginOperationTransaction(e);
+ // //foreach (var item in e.DataEntitys)
+ // //{
+ // // DynamicObjectCollection entryRows = item["FEntity"] as DynamicObjectCollection;
+ // //}
+ // Entity entity = this.BusinessInfo.GetEntity("FEntity");//鑾峰彇鏄庣粏淇℃伅
+ // foreach (var billObj in e.DataEntitys)
+ // {
+ // //DynamicObjectCollection entryRows = entity.DynamicProperty.GetValue(billObj.DataEntity)
+ // // as DynamicObjectCollection;
+ // DynamicObjectCollection entryRows = billObj["FEntity"] as DynamicObjectCollection;
+ // foreach (var entryRow in entryRows)
+ // {
+ // var fentryId = entryRow["Id"].ToString();
+ // //鐢熸垚閲囪喘璁㈠崟
+ // string sql = $"/*dialect*/ exec proc_jit_DayPlanAduitAddNemMoOrder {fentryId}";
+ // DataTable dt = DBServiceHelper.ExecuteDataSet(Context, sql).Tables[0];
+ // if (dt.Rows[0][0].ToString().Contains("鎴愬姛"))
+ // continue;
+ // foreach (DataRow dr in dt.Rows)
+ // {
+ // JObject model = new JObject();
+ // model.Add("FBILLTYPEID", new JObject() { ["Fnumber"] = dr["FBillTypeNumber"].ToString() }); //鍗曟嵁绫诲瀷
+ // model.Add("FCreatorId", new JObject() { ["FUserID"] = Context.UserId }); //鍒涘缓浜�
+ // model.Add("FModifierId", new JObject() { ["FUserID"] = Context.UserId }); //淇敼浜�
+ // model.Add("FDate", dr["FDate"].ToString());
+ // model.Add("FBILLNO", dr["FSpreadBillNo"].ToString());
+ // model.Add("FPrdOrgId", new JObject() { ["Fnumber"] = dr["FPrdOrgNumber"].ToString() });
+ // model.Add("FWorkShopID0", new JObject() { ["Fnumber"] = dr["FWorkShopNumber"].ToString() });
+ // model.Add("FOwnerTypeId", dr["FOwnerTypeId"].ToString());
+ // model.Add("FIsRework", dr["FIsRework"].ToString());
+ // model.Add("FBusinessType", dr["FBusinessType"].ToString());
+ // model.Add("FTrustteed", dr["FTrustteed"].ToString());
+ // model.Add("FIsEntrust", dr["FIsEntrust"].ToString());
+ // model.Add("FPPBOMType", dr["FPPBOMType"].ToString());
+ // model.Add("FIssueMtrl", dr["FIssueMtrl"].ToString());
+ // JArray Fentity = new JArray();
+ // JObject FentityModel = new JObject();
+ // FentityModel.Add("FProductType", dr["FProductType"].ToString());
+ // FentityModel.Add("FMaterialId", new JObject() { ["Fnumber"] = dr["FMATERIALNUMBER"].ToString() });
+ // FentityModel.Add("FWorkShopID", new JObject() { ["Fnumber"] = dr["FWorkShopNumber"].ToString() });
+ // FentityModel.Add("FUnitId", new JObject() { ["Fnumber"] = dr["FUnitNumber"].ToString() });
+ // FentityModel.Add("FQty", dr["FQty"].ToString());
+ // FentityModel.Add("FYieldQty", dr["FYieldQty"].ToString());
+ // FentityModel.Add("FPlanStartDate", dr["FPlanStartDate"].ToString());
+ // FentityModel.Add("FPlanFinishDate", dr["FPlanFinishDate"].ToString());
+ // FentityModel.Add("FRequestOrgId", new JObject() { ["Fnumber"] = dr["FRequestOrgNumber"].ToString() });
+ // FentityModel.Add("FBomId", new JObject() { ["Fnumber"] = dr["FBomNumber"].ToString() });
+ // FentityModel.Add("FISBACKFLUSH", dr["FISBACKFLUSH"].ToString());
+ // FentityModel.Add("FStockInOrgId", new JObject() { ["Fnumber"] = dr["FPrdOrgNumber"].ToString() });
+ // FentityModel.Add("FBaseYieldQty", dr["FBaseYieldQty"].ToString());
+ // FentityModel.Add("FReqType", dr["FReqType"].ToString());
+ // FentityModel.Add("FInStockOwnerTypeId", dr["FInStockOwnerTypeId"].ToString());
+ // FentityModel.Add("FBaseStockInLimitH", dr["FBaseStockInLimitH"].ToString());
+ // FentityModel.Add("FInStockOwnerId", new JObject() { ["Fnumber"] = dr["FPrdOrgNumber"].ToString() });
+ // FentityModel.Add("FCheckProduct", dr["FCheckProduct"].ToString());
+ // FentityModel.Add("FBaseStockInLimitL", dr["FBaseStockInLimitL"].ToString());
+ // FentityModel.Add("FBaseUnitQty", dr["FBaseUnitQty"].ToString());
+ // FentityModel.Add("FRoutingId", new JObject() { ["Fnumber"] = dr["FRoutingNumber"].ToString() });
+ // FentityModel.Add("FBaseUnitId", new JObject() { ["Fnumber"] = dr["FUnitNumber"].ToString() });
+ // FentityModel.Add("FStockId", new JObject() { ["Fnumber"] = dr["FStockNumber"].ToString() });
+ // FentityModel.Add("FStockInLimitH", dr["FStockInLimitH"].ToString());
+ // FentityModel.Add("FStockInLimitL", dr["FStockInLimitL"].ToString());
+ // FentityModel.Add("FCostRate", dr["FCostRate"].ToString());
+ // FentityModel.Add("FCreateType", dr["FCreateType"].ToString());
+ // FentityModel.Add("FYieldRate", dr["FYieldRate"].ToString());
+ // FentityModel.Add("FGroup", dr["FGroup"].ToString());
+ // FentityModel.Add("FNoStockInQty", dr["FNoStockInQty"].ToString());
+ // FentityModel.Add("FBaseNoStockInQty", dr["FBaseNoStockInQty"].ToString());
+ // FentityModel.Add("FRowId", dr["FRowId"].ToString());
+ // FentityModel.Add("FPickMtrlStatus", dr["FPickMtrlStatus"].ToString());
+ // FentityModel.Add("FMOChangeFlag", dr["FMOChangeFlag"].ToString());
+ // FentityModel.Add("FDAYPLANBILLNO", dr["FDAYPLANBILLNO"].ToString());
+ // FentityModel.Add("FDayPlanFseq", dr["FDayPlanFseq"].ToString());
+ // FentityModel.Add("FDayPlanFentryId", dr["FDayPlanFentryId"].ToString());
+ // FentityModel.Add("FDayPlanFid", dr["FDayPlanFid"].ToString());
+ // FentityModel.Add("FDayPlanRemainQty", 0);
+ // FentityModel.Add("FDayPlanQty", dr["FQty"].ToString());
+ // FentityModel.Add("F_TEZV_Base", new JObject() { ["Fnumber"] = dr["FPREBDONENUMBER"].ToString() });//鍖呰鏍囪瘑
+ // FentityModel.Add("F_bsv_Text1", dr["F_bsv_Text1"].ToString());//婧愬崟瀹㈡埛浠g爜
+ // FentityModel.Add("F_bsv_Date", dr["F_bsv_Date"].ToString());//瑕佹眰浜ゆ湡
+ // FentityModel.Add("F_bsv_KH", new JObject() { ["Fnumber"] = dr["FCUSTOMERNUMBER"].ToString() });//瀹㈡埛
+ // //////////////閲囪喘璁㈠崟婧愬崟淇℃伅////////////////////
+ // //FSRCBILLTYPE,FSRCBILLID,FSRCBILLNO,FSRCBILLENTRYID,FSRCBILLENTRYSEQ,FSALEORDERID,FSALEORDERNO,FSALEORDERENTRYID,FSALEORDERENTRYSEQ
+ // FentityModel.Add("FSRCBILLTYPE", dr["FSRCBILLTYPE"].ToString());
+ // FentityModel.Add("FSRCBILLID", dr["FSRCBILLID"].ToString());
+ // FentityModel.Add("FSRCBILLNO", dr["FSRCBILLNO"].ToString());
+ // FentityModel.Add("FSRCBILLENTRYID", dr["FSRCBILLENTRYID"].ToString());
+ // FentityModel.Add("FSRCBILLENTRYSEQ", dr["FSRCBILLENTRYSEQ"].ToString());
+ // FentityModel.Add("FSALEORDERID", dr["FSALEORDERID"].ToString());
+ // FentityModel.Add("FSALEORDERNO", dr["FSALEORDERNO"].ToString());
+ // FentityModel.Add("FSALEORDERENTRYID", dr["FSALEORDERENTRYID"].ToString());
+ // FentityModel.Add("FSALEORDERENTRYSEQ", dr["FSALEORDERENTRYSEQ"].ToString());
+ // FentityModel.Add("FReqSrc", dr["FReqSrc"].ToString());//闇�姹傛潵婧� 1閿�鍞鍗�
+ // if (dr["FSRCBILLTYPE"].ToString() == "PLN_PLANORDER")
+ // {
+ // JArray _Fentity2 = new JArray();
+ // JObject _FentityModel2 = new JObject();
+ // _FentityModel2.Add("FTREEENTITY_Link_FFlowId", "");//涓氬姟娴佺▼鍥撅細FTREEENTITY_Link_FFlowId
+ // _FentityModel2.Add("FTREEENTITY_Link_FFlowLineId", "0");//鎺ㄨ繘璺嚎锛欶TREEENTITY_Link_FFlowLineId
+ // _FentityModel2.Add("FTREEENTITY_Link_FRuleId", "PlanOrder_MO");//杞崲瑙勫垯锛欶TREEENTITY_Link_FRuleId
+ // _FentityModel2.Add("FTREEENTITY_Link_FSTableId", "0");//婧愬崟琛ㄥ唴鐮侊細FTREEENTITY_Link_FSTableId
+ // _FentityModel2.Add("FTREEENTITY_Link_FSTableName", "T_PLN_PLANORDER");//婧愬崟琛細FTREEENTITY_Link_FSTableName
+ // _FentityModel2.Add("FTREEENTITY_Link_FSBillId", dr["FSBILLID"].ToString());//婧愬崟鍐呯爜锛欶TREEENTITY_Link_FSBillId
+ // _FentityModel2.Add("FTREEENTITY_Link_FSId", dr["FSID"].ToString()); //婧愬崟鍒嗗綍鍐呯爜锛欶TREEENTITY_Link_FSId
+ // _FentityModel2.Add("FTREEENTITY_Link_FBaseUnitQtyOld", dr["FQty"].ToString());//鍘熷鎼哄甫閲忥細FTREEENTITY_Link_FBaseUnitQtyOld
+ // _FentityModel2.Add("FTREEENTITY_Link_FBaseUnitQty", dr["FQty"].ToString());//淇敼鎼哄甫閲忥細FTREEENTITY_Link_FBaseUnitQty
+ // _Fentity2.Add(_FentityModel2);
+ // FentityModel.Add("FTREEENTITY_Link", _Fentity2);
+ // }
+ // //////////////////////////////////////////////////
+ // Fentity.Add(FentityModel);
+ // model.Add("FTreeEntity", Fentity);
+ // JObject jsonRoot = new JObject()
+ // {
+ // ["Creator"] = "",
+ // ["NeedUpDateFields"] = new JArray(),
+ // ["NeedReturnFields"] = new JArray(),
+ // ["IsDeleteEntry"] = "false",
+ // ["SubSystemId"] = "",
+ // ["IsVerifyBaseDataField"] = "false",
+ // ["Model"] = model
+ // };
+ // var _result = InvokeHelper.Save("PRD_MO", jsonRoot.ToString());
+ // var _saveObj = JObject.Parse(_result);
+ // var saveIsSuc = _saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper();
+ // if (saveIsSuc != "TRUE")
+ // {
+ // e.CancelOperation = true;
+ // dictionary.Add(dr["FDAYPLANBILLNO"].ToString(), "閲囪喘璁㈠崟鐢熸垚澶辫触," + _saveObj["Result"]["ResponseStatus"]["Errors"][0]["Message"].ToString());
+ // LogService.Write("閲囪喘璁㈠崟鐢熸垚澶辫触json" + jsonRoot.ToString());
+ // //this.View.ShowErrMessage("閲囪喘璁㈠崟鐢熸垚澶辫触," + _saveObj["Result"]["ResponseStatus"]["Errors"][0]["Message"].ToString());
+ // continue;
+ // }
+ // }
+ // }
+ // }
+ //}
+ public override void AfterExecuteOperationTransaction(AfterExecuteOperationTransaction e)
+ {
+ base.AfterExecuteOperationTransaction(e);
+ Entity entity = this.BusinessInfo.GetEntity("FEntity");//鑾峰彇鏄庣粏淇℃伅
+ foreach (var billObj in e.DataEntitys)
+ {
+ var forgName = Context.CurrentOrganizationInfo.Name;
+ //if (!forgName.Contains("鏉窞鏂帿灏旂鎬ф潗鏂欐湁闄愬叕鍙�"))
+ // continue;
+ //var sql = $"exec zymes_RealessPurPoorder {billObj["Id"]} ";
+ var id = billObj["Id"].ToString();
+ string sql = string.Empty;
+ sql = $@"
+ /*dialect*/
+ select a.FID HInterID,a.FENTRYID HEntryID,a.FMATERIALID HMaterID,a.FUNITID HUnitID
+ ,a.FREALQTY HQtyMust,0 HQty,f.FPRICE HPrice
+ ,f.FAMOUNT HMoney,f.FCOSTAMOUNT HOrderPrice,a.FSTOCKID HWHID,a.FSTOCKLOCID HSPID
+ ,0 HRelationQty,a.FLOT HBatchNo,0 HSourceInterID,0 HSourceEntryID,a.FSRCBILLNO HSourceBillNo
+ ,case a.FSRCBILLTYPEID
+ when 'PUR_PurchaseOrder' then 1100
+ when 'SAL_OUTSTOCK' then 1205
+ when 'PUR_ReceiveBill' then 1103
+ end
+ HSourceBillType
+ ,0 HPOOrderInterID,0 HPOOrderEntryID ,'' HPOOrderBillNo
+ ,a.FAUXPROPID HPropertyID,0 HSecUnitID,0 HSecUnitRate,0 HPlanMode,'CLOUD瀵煎叆' HRemark
+ ,0 HSeOrderInterID,0 HSeOrderEntryID,0 HSeOrderBillNo
+ ,f.FTAXRATE HTaxRate,f.FTAXPRICE HTaxPrice,0 HlineTotal
+ from T_STK_INSTOCKENTRY a with(nolock)
+ left join T_STK_INSTOCKENTRY_F f with(nolock) on a.FENTRYID = f.FENTRYID
+ left join T_STK_INSTOCKENTRY_TAX t with(nolock) on a.FENTRYID=t.FENTRYID
+ left join T_STK_INSTOCKFIN fin with(nolock) on a.FENTRYID=fin.FENTRYID
+ Where a.FID={id}
+ select
+ a.FID as HInterID,YEAR(a.FDATE) HYear,MONTH(a.FDATE) HPeriod,1201 HBillType,1201 HBillSubType,
+ a.FDATE HDate,a.FBILLNO HBillNo,case when a.FAPPROVERID=0 then 1 else 2 end HBillStatus
+ ,a.FSUPPLYADDRESS HAddress,a.FSUPPLIERID HSupID,0 HCurID,0 HWHID,a.FPURCHASERID HEmpID
+ ,0 HManagerID,0 HSecManagerID,a.FSTOCKERID HKeeperID,a.FPURCHASEDEPTID HDeptID
+ , '' HExplanation,'CLOUD瀵煎叆' HRemark,a.FBILLNO HInnerBillNo,a.FSTOCKORGID HSTOCKORGID
+ ,a.FOWNERID HOWNERID,a.FCREATORID HMaker,a.FCREATEDATE HMakeDate
+ ,0 HProjectID,'' HInvoiceBillNo
+ ,o.FNUMBER as HOrganNumber,a.FAPPROVERID as HChecker,a.FAPPROVEDATE as HCheckDate
+ from T_STK_INSTOCK a
+ inner join T_ORG_Organizations o with (nolock) on a.FSTOCKORGID = o.FORGID
+ Where a.FID={id}
+ ";
+ DataSet ds = DBServiceHelper.ExecuteDataSet(Context, sql);
+ DataTable maindt = ds.Tables[1];
+ DataTable subdt = ds.Tables[0];
+ if (maindt.Rows.Count == 0 || subdt.Rows.Count == 0)
+ {
+ LogService.Write("閲囪喘鍏ュ簱鍗曞悓姝ュ紓甯革細" + sql);
+ continue;
+ }
+
+ //鑾峰彇鍒涘缓閲囪喘璁㈠崟鐨勪娇鐢ㄧ粍缁�
+ DataTable dataTable = LogService.Get_DisPlayOrg(Context, maindt.Rows[0]["HOrganNumber"].ToString());
+ if (dataTable.Rows.Count == 0)
+ continue;
+
+ if (dataTable.Rows[0]["FISNEEDPUSH"].ToString() == "0")
+ continue;
+
+ string http = dataTable.Rows[0]["F_RCZU_MesIp"].ToString();
+
+ JArray array = new JArray();//鏄庣粏琛�
+ foreach (DataRow dr in subdt.Rows)
+ {
+ JObject fentrymodel = new JObject();
+ foreach (DataColumn column in subdt.Columns)
+ {
+ fentrymodel.Add(column.ColumnName, dr[column.ColumnName].ToString());
+ }
+ array.Add(fentrymodel);
+ }
+ JObject model = new JObject();//涓昏〃
+ DataRow maindr = maindt.Rows[0];
+ foreach (DataColumn column in maindt.Columns)
+ {
+ model.Add(column.ColumnName, maindr[column.ColumnName].ToString());
+ }
+ model.Add("HENTRY", array);
+ JObject jsonRoot = new JObject()
+ {
+ ["model"] = model
+ };
+
+ var client = new RestSharp.RestClient(http);
+ //鏂板
+ var requestPost = new RestRequest("Kf_POStockInBill/Kf_POStockInBillSaveApi", Method.POST);
+ requestPost.AddParameter("application/json", JsonConvert.SerializeObject(jsonRoot), ParameterType.RequestBody);
+ IRestResponse responsePost = client.Execute(requestPost);
+ var contentPost = responsePost.Content;
+ if (!contentPost.Contains("鎴愬姛"))
+ {
+ LogService.Write("閲囪喘鍏ュ簱鍗曞悓姝ュ紓甯�,POST鏂瑰紡鑾峰彇缁撴灉," + billObj["Id"] + "," + responsePost.ErrorMessage);
+ LogService.Write("閲囪喘鍏ュ簱鍗曞悓姝ュ紓甯�,POST," + "Kf_POStockInBill/Kf_POStockInBillSaveApi");
+ LogService.Write("閲囪喘鍏ュ簱鍗曞悓姝ュ紓甯�,JsonConvert.SerializeObject(jsonRoot)," + JsonConvert.SerializeObject(jsonRoot));
+ }
+ };
+ foreach (var item in dictionary)
+ {
+ ResultMessage.dataError(this.OperationResult.OperateResult, item.Key, item.Value);
+ }
+ }
+ public static class ResultMessage
+ {/// <summary>
+ /// 淇敼鎻愮ず淇℃伅
+ /// </summary>
+ /// <param name="operateResult"></param>
+ /// <param name="billno"></param>
+ public static void dataError(OperateResultCollection operateResult, string billno, string message)
+ {
+ OperateResult operate = operateResult.Where(n => n.Number == billno).First();
+ operate.Message = message;
+ operate.SuccessStatus = false;
+ operate.MessageType = MessageType.FatalError;
+ }
+ }
+ }
+}
diff --git a/zymes/zymes_Project.csproj b/zymes/zymes_Project.csproj
index f75be2f..150aaeb 100644
--- a/zymes/zymes_Project.csproj
+++ b/zymes/zymes_Project.csproj
@@ -131,6 +131,7 @@
<Compile Include="OperationService\zymes_RealessOperator.cs" />
<Compile Include="OperationService\zymes_RealessPrdInStock.cs" />
<Compile Include="OperationService\zymes_RealessPrdReceive.cs" />
+ <Compile Include="OperationService\zymes_RealessPurInStock.cs" />
<Compile Include="OperationService\zymes_RealessRateType.cs" />
<Compile Include="OperationService\zymes_RealessDepartment.cs" />
<Compile Include="OperationService\zymes_RealessBom.cs" />
--
Gitblit v1.9.1