From 76022e6283db66d846feeea6a8de04c263b1cd40 Mon Sep 17 00:00:00 2001 From: yuyubo <1870149533@qq.com> Date: Tue, 22 Apr 2025 19:17:14 +0800 Subject: [PATCH] 333 --- .../Sal_Order/PushSaleOutBillPlugIn.cs | 211 +++++++++++++++--- 组织间单据自动生成流程图.vsdx | Bin 48307 -> 48689 bytes 2 files changed, 179 insertions(+), 32 deletions(-) diff --git a/Pilot_KD_Parino/Sal_Order/PushSaleOutBillPlugIn.cs b/Pilot_KD_Parino/Sal_Order/PushSaleOutBillPlugIn.cs index 067cf6b..1fb67a4 100644 --- a/Pilot_KD_Parino/Sal_Order/PushSaleOutBillPlugIn.cs +++ b/Pilot_KD_Parino/Sal_Order/PushSaleOutBillPlugIn.cs @@ -11,6 +11,7 @@ using Kingdee.BOS.Core.List.PlugIn; using Kingdee.BOS.Core.Metadata; using Kingdee.BOS.Core.Metadata.ConvertElement; using Kingdee.BOS.Core.Metadata.ConvertElement.ServiceArgs; +using Kingdee.BOS.Core.Metadata.FormElement; using Kingdee.BOS.Log; using Kingdee.BOS.Orm; using Kingdee.BOS.Orm.DataEntity; @@ -33,39 +34,68 @@ namespace Pilot_KD_Parino.Sal_Order public override void AfterBarItemClick(AfterBarItemClickEventArgs e) { base.AfterBarItemClick(e); - long sOutId = 0;//珠海分布式调出单单号内码 - string sOutBillNo = "";//珠海分布式调出单单号 - bool flag = true; - string sBillNo = ""; - long sEntryId = 0; - long slevel = 2; - long sId = 0; + //this.View.ShowMessage("669977"); if (e.BarItemKey.Equals("tbPushSalOut111", StringComparison.OrdinalIgnoreCase)) { - var FEntity = this.View.Model.DataObject; - - var fid = FEntity.GetPrimaryKeyValue(); - //var json = JsonUtil.Serialize(FEntity); - //var row = JsonHelper.ToObject(json); - //Logger.Error("FEntity",json,new Exception()); + var FEntity = this.View.Model.DataObject; var id = FEntity["id"]; - var FSALEORGID = FEntity["SaleOrgId"]; + string formid = FEntity["FFormId"].ToString(); + //var detailList = (FEntity["SAL_DELIVERYNOTICEENTRY"]); - - sBillNo = FEntity["BillNo"].ToString();//发货通知单号 - var detailList = (FEntity["SAL_DELIVERYNOTICEENTRY"]); - //sId = row.Id;//发货通知单ID - //sEntryId = row.SAL_DELIVERYNOTICEENTRY Convert.ToInt64(row.EntryPrimaryKeyValue);//发货通知单ID - //string sSql = "select FID from T_SAL_DELIVERYNOTICEENTRY where FID= " + sId + " and FENTRYID= " + sEntryId + " and abs(FBaseUnitQty) > abs(FBASEJOINOUTQTY) "; - //sSql = String.Format(@"/*dialect*/" + sSql); - //var dt = DBServiceHelper.ExecuteDynamicObject(this.Context, sSql); - if (detailList!=null) + //发货通知单或者发货出库单 + string getSourceSql = $@"/*dialect*/SELECT FSTABLENAME,FSBILLID FROM dbo.T_{formid}ENTRY_LK + WHERE FENTRYID IN ( SELECT FENTRYID FROM dbo.T_{formid}ENTRY WHERE FID = {id})"; + var dt = DBServiceHelper.ExecuteDynamicObject(this.Context, getSourceSql); + if (dt == null || dt.Count == 0) { - string getSourceSql = "select FID from T_SAL_DELIVERYNOTICE where FBILLNO='" + sBillNo + "'"; - IOperationResult result = Invoke("SAL_DELIVERYNOTICE", "PUR_ReceiveBill", getSourceSql, "7cd93c259999489c97798063f2f7bd70"); + this.View.ShowMessage("没有上查关联的发货通知单"); } + int tempFid = int.Parse(dt.Select(t => t["FSBILLID"]).FirstOrDefault().ToString()); + string tablename = dt.Select(t => t["FSTABLENAME"]).FirstOrDefault().ToString(); + for (int kk = 0; kk < 6 && tablename.ToUpper() != "T_PUR_POORDERENTRY"; kk++) + { + ////发货通知单 + tempFid = int.Parse(dt.Select(t => t["FSBILLID"]).FirstOrDefault().ToString()); + string tempTable = dt.Select(t => t["FSTABLENAME"]).FirstOrDefault().ToString(); + getSourceSql = $@"/*dialect*/SELECT FSTABLENAME,FSBILLID FROM dbo.{tempTable}_lk + WHERE FENTRYID IN ( SELECT FENTRYID FROM {tempTable} WHERE FID = {tempFid})"; + //dt = DBServiceHelper.ExecuteDynamicObject(this.Context, getSourceSql); + //if (dt == null || dt.Count == 0) + //{ + // this.View.ShowMessage("没有上查关联的销售单"); + //} + ////共享的采购订单 + //tempFid = int.Parse(dt.Select(t => t["FSBILLID"]).FirstOrDefault().ToString()); + //tempTable = dt.Select(t => t["FSTABLENAME"]).FirstOrDefault().ToString(); + //getSourceSql = $@"/*dialect*/ SELECT FSTABLENAME,FSBILLID FROM dbo.{tempTable}_lk + // WHERE FENTRYID IN ( SELECT FENTRYID FROM {tempTable} WHERE FID = {tempFid})"; + dt = DBServiceHelper.ExecuteDynamicObject(this.Context, getSourceSql); + + if (dt == null || dt.Count == 0) + { + + this.View.ShowMessage("没有上查关联的跨组织的采购订单"); + return; + } + else + { + tablename = dt.Select(t => t["FSTABLENAME"]).FirstOrDefault().ToString(); + //if (tablename.ToUpper() != "T_PUR_POORDERENTRY") + // this.View.ShowMessage("没有上查关联的跨组织的采购订单 " + tablename); + } + tempFid = int.Parse(dt.Select(t => t["FSBILLID"]).FirstOrDefault().ToString()); + } + if (tablename.ToUpper() != "T_PUR_POORDERENTRY") + { + this.View.ShowMessage("没有上查关联的跨组织的采购订单 " + tablename); + return; + } + IOperationResult result = Invoke("PUR_PurchaseOrder", "PUR_ReceiveBill", tempFid.ToString(), "7cd93c259999489c97798063f2f7bd70"); + + + //this.View.ShowMessage("就是这个按钮"+ id); @@ -97,7 +127,9 @@ namespace Pilot_KD_Parino.Sal_Order //} } } - private IOperationResult Invoke(string source, string target, string getSourceSql, string sargetBillTypeId) + + + private IOperationResult Invoke(string source, string target, string tempFid, string sargetBillTypeId) { try { @@ -108,14 +140,129 @@ namespace Pilot_KD_Parino.Sal_Order //如下代码 直接通过查询数据库获取单据转换源单数据 ListSelectedRowCollection rows = new ListSelectedRowCollection(); int i = 0; - using (IDataReader reader = DBUtils.ExecuteReader(this.Context, getSourceSql)) + ListSelectedRow row = new ListSelectedRow(tempFid, string.Empty, i++, source); + rows.Add(row); + + PushArgs pushArgs = new PushArgs(ruleElement, rows.ToArray()); + pushArgs.TargetBillTypeId = sargetBillTypeId;//单据类型 + //转换生成目标单 + ConvertOperationResult convertResult = ServiceHelper.GetService().Push(this.Context, pushArgs); + + ////合并转换操作结果 + //result.MergeResult(convertResult); + + ////目标单据数据集合 + DynamicObject[] destObjs = convertResult.TargetDataEntities.Select(r => r.DataEntity).ToArray(); + //根据实际情况,处理目标单据数据 + //destObjs[0]["Date"] = Convert.ToDateTime(sDate); + DynamicObjectCollection col_FEntityDetail; + var sdsas = JsonHelper.ToJson(destObjs); + Logger.Error("目标单据数据集合", sdsas, new Exception()); + //this.View.ShowMessage("好了好了,就是这个按钮"); + + //return result; + ////if (target == "SAL_OUTSTOCK")//销售出库 + ////{ + //col_FEntityDetail = destObjs[0]["SAL_OUTSTOCKENTRY"] as DynamicObjectCollection; + ////} + ////else + ////{//销售退货 + //// col_FEntityDetail = destObjs[0]["SAL_RETURNSTOCKENTRY"] as DynamicObjectCollection; + ////} + //#region + //long sStockOrgID = 0; + //sStockOrgID = Convert.ToInt64(destObjs[0]["StockOrgId_Id"]); + + + //foreach (var item in col_FEntityDetail) + //{ + // //item["KeeperID_Id"] = item["OwnerID_Id"];//保管者 + + // string sStockSql = "select FOrgStockId from v_BusinessOrgId where FORGID= " + sStockOrgID + " "; + // sStockSql = String.Format(@"/*dialect*/" + sStockSql); + // var dt = DBServiceHelper.ExecuteDynamicObject(this.Context, sStockSql); + + // //if (dt.Count > 0 && Convert.ToInt64(dt[0]["FOrgStockId"]) != 0) + // if (dt.Count > 0) + // { + // //var targetBillMeta = ServiceHelper.GetService().Load(this.Context, target) as FormMetadata; + // //BusinessInfo info = targetBillMeta.BusinessInfo; + // //BaseDataField stockFld = info.GetField("FStockId") as BaseDataField; + // //long stockId = Convert.ToInt64(dt[0]["FOrgStockId"]); + // //IViewService viewService = ServiceHelper.GetService(); + // //DynamicObject[] stockObjs = viewService.LoadFromCache(this.Context, new object[] { stockId }, stockFld.RefFormDynamicObjectType); + // //stockFld.RefIDDynamicProperty.SetValue(item, stockId); + // //stockFld.DynamicProperty.SetValue(item, stockObjs[0]); + + // item["StockID_Id"] = Convert.ToInt64(dt[0]["FOrgStockId"]); + // } + //} + //#endregion + + ////目标单元数据 + FormMetadata destFormMetadata = ServiceHelper.GetService().Load(this.Context, target) as FormMetadata; + + ////保存目标单据 + IOperationResult saveResult = ServiceHelper.GetService().Save(this.Context, destFormMetadata.BusinessInfo, destObjs, OperateOption.Create()); + ////合并保存操作结果 + //result.MergeResult(saveResult); + //根据操作结果构造返回结果 + if ((saveResult.ValidationErrors != null && saveResult.ValidationErrors.Count > 0)) + //|| (result.OperateResult != null && result.OperateResult.Count > 0)) { - while (reader.Read()) - { - ListSelectedRow row = new ListSelectedRow(reader["FID"].ToString(), string.Empty, i++, source); - rows.Add(row); - } + var errorInfo = string.Join(";", saveResult.ValidationErrors.Select(x => x.Message)); + //this.View.ShowErrMessage("调用下推, 导致自动保存失败 原因:" + errorInfo); + + //result.IsSuccess = false; + //this.View.ShowErrMessage("调用下推, 导致自动保存失败 原因:" + saveResult.ValidationErrors[0].Message.ToString()); + throw new KDBusinessException("", "未知原因导致自动保存失败原因:" + errorInfo); } + + //this.View.ShowMessage("1"); + // 取到需要自动提交、审核的单据内码 + object[] pkArray = (from p in destObjs select p[0]).ToArray(); + //设置提交参数 + IOperationResult submitResult = ServiceHelper.GetService().Submit(this.Context, destFormMetadata.BusinessInfo, pkArray, "Submit", OperateOption.Create()); + + // 判断提交结果,如果失败,则内部会抛出错误,回滚代码 + if (submitResult.IsSuccess == false) + { + throw new KDBusinessException("", "未知原因导致自动提交失败!"); + } + //设置审核参数 + IOperationResult auditResult = ServiceHelper.GetService().Audit(this.Context, destFormMetadata.BusinessInfo, pkArray, OperateOption.Create()); + // 判断提交结果,如果失败,则内部会抛出错误,回滚代码 + if (auditResult.IsSuccess == false) + { + throw new KDBusinessException("", "未知原因导致自动审核失败!"); + } + //显示下推后的单据 + //ShowPushResult("k0f9e182dbc5247fcabc9479ddb300fa3", convertResult, destObjs); + return result; + } + catch (Exception ex) + { + Logger.Error("同步报关信息时", "同步报关信息时 error:" + ex.Message + ex.StackTrace, ex); + throw ex; + } + + } + + + + private IOperationResult Invoke2(string source, string target, string tempFid, string sargetBillTypeId) + { + try + { + IOperationResult result = new OperationResult(); + //获取单据转换规则 + ConvertRuleElement ruleElement = ServiceHelper.GetService().GetConvertRules(this.Context, source, target).FirstOrDefault(); + + //如下代码 直接通过查询数据库获取单据转换源单数据 + ListSelectedRowCollection rows = new ListSelectedRowCollection(); + int i = 0; + ListSelectedRow row = new ListSelectedRow(tempFid, string.Empty, i++, source); + rows.Add(row); PushArgs pushArgs = new PushArgs(ruleElement, rows.ToArray()); pushArgs.TargetBillTypeId = sargetBillTypeId;//单据类型 diff --git a/组织间单据自动生成流程图.vsdx b/组织间单据自动生成流程图.vsdx index dad696b5477f2647cac0d2a6cdea6cbaedb1355a..5aadb9d4f9fe2b1f4c0cde7e86d674ef3b1cb857 100644 GIT binary patch delta 19466 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 a)C>Rf$^q|scCbz*5K%8ivsV3Y>c0SnIZSQ< delta 19083 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 z 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 Ps{!g(B(;0pzf=DO)4-hI