拦截第二次下推

This commit is contained in:
余宇波 2025-11-05 18:10:20 +08:00
parent 8a785b8b55
commit 874bbce384

View File

@ -22,6 +22,7 @@ using Kingdee.BOS.ServiceHelper;
using Kingdee.BOS.Util;
using Kingdee.K3.Core.MFG.EntityHelper;
using Kingdee.K3.MFG.App.Util;
using NPOI.Util;
using Pilot_KD_Parino.Common;
using System;
using System.ComponentModel;
@ -58,6 +59,30 @@ namespace Pilot_KD_Parino.Sal_Order
string formid = FEntity["FFormId"].ToString();
string getSourceSql = $@"/*dialect*/SELECT FSTABLENAME,FSBILLID,FENTRYID FROM T_SAL_ORDERENTRY_LK
WHERE FSBILLID = {id} and FSTABLENAME='T_SAL_ORDERENTRY' ";
var dt = DBServiceHelper.ExecuteDynamicObject(this.Context, getSourceSql);
if (dt.Count > 0)
{
throw new KDBusinessException("", "本张销售单已下推跨组织订单,不能用自动功能下推多张跨组织的销售单或采购单:" );
}
getSourceSql = $@"/*dialect*/SELECT FSTABLENAME,FSBILLID,FENTRYID FROM T_PUR_ReqEntry_LK
WHERE FSBILLID = {id} and FSTABLENAME='T_SAL_ORDERENTRY' ";
dt = DBServiceHelper.ExecuteDynamicObject(this.Context, getSourceSql);
if (dt.Count > 0)
{
throw new KDBusinessException("", "本张销售单已下推跨组织采购申请单,不能用自动功能下推多张跨组织的销售单或采购单:" );
}
getSourceSql = $@"/*dialect*/SELECT FSTABLENAME,FSBILLID,FENTRYID FROM T_PUR_POORDERENTRY_LK
WHERE FSBILLID = {id} and FSTABLENAME='T_SAL_ORDERENTRY' ";
dt = DBServiceHelper.ExecuteDynamicObject(this.Context, getSourceSql);
if (dt.Count > 0)
{
throw new KDBusinessException("", "本张销售单已下推跨组织采购订单,不能用自动功能下推多张跨组织的销售单或采购单:" );
}
int stockId = 0;
IOperationResult result = Invoke("SAL_SaleOrder", "PUR_PurchaseOrder", id.ToString(), "83d822ca3e374b4ab01e5dd46a0062bd", ref stockId, FEntity, null,2);
@ -84,6 +109,31 @@ namespace Pilot_KD_Parino.Sal_Order
int stockId = 0;
string getSourceSql = $@"/*dialect*/SELECT FSTABLENAME,FSBILLID,FENTRYID FROM T_SAL_ORDERENTRY_LK
WHERE FSBILLID = {id} and FSTABLENAME='T_SAL_ORDERENTRY' ";
var dt = DBServiceHelper.ExecuteDynamicObject(this.Context, getSourceSql);
if (dt.Count > 0)
{
throw new KDBusinessException("", "本张销售单已下推跨组织订单,不能用自动功能下推多张跨组织的销售单或采购单:");
}
getSourceSql = $@"/*dialect*/SELECT FSTABLENAME,FSBILLID,FENTRYID FROM T_PUR_ReqEntry_LK
WHERE FSBILLID = {id} and FSTABLENAME='T_SAL_ORDERENTRY' ";
dt = DBServiceHelper.ExecuteDynamicObject(this.Context, getSourceSql);
if (dt.Count > 0)
{
throw new KDBusinessException("", "本张销售单已下推跨组织采购申请单,不能用自动功能下推多张跨组织的销售单或采购单:" );
}
getSourceSql = $@"/*dialect*/SELECT FSTABLENAME,FSBILLID,FENTRYID FROM T_PUR_POORDERENTRY_LK
WHERE FSBILLID = {id} and FSTABLENAME='T_SAL_ORDERENTRY' ";
dt = DBServiceHelper.ExecuteDynamicObject(this.Context, getSourceSql);
if (dt.Count > 0)
{
throw new KDBusinessException("", "本张销售单已下推跨组织采购订单,不能用自动功能下推多张跨组织的销售单或采购单:" );
}
IOperationResult result = Invoke("SAL_SaleOrder", "SAL_SaleOrder", id.ToString(), "eacb50844fc84a10b03d7b841f3a6278", ref stockId, null, FEntity, 2);
//sheet = result.SuccessDataEnity.FirstOrDefault();
//result = Invoke("SAL_DELIVERYNOTICE", "SAL_OUTSTOCK", sheet["id"].ToString(), "ad0779a4685a43a08f08d2e42d7bf3e9", ref stockId);