63 lines
2.9 KiB
C#
63 lines
2.9 KiB
C#
using Kingdee.BOS.Core.DynamicForm.PlugIn;
|
|
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
|
|
using Kingdee.BOS.Util;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace GZ_LTHPilot_ORDER.T_IV_SALESIC
|
|
{
|
|
[Description("服务插件:发票反审核时,溯源销售订单累计开票金额字段"), HotUpdate]
|
|
public class UnAuditS_Order : AbstractOperationServicePlugIn
|
|
{
|
|
public override void BeforeExecuteOperationTransaction(BeforeExecuteOperationTransaction e)
|
|
{
|
|
base.BeforeExecuteOperationTransaction(e);
|
|
foreach (var Row in e.SelectedRows)
|
|
{
|
|
var Billobj = Row.DataEntity;
|
|
//先查询是否由蓝票下推生成的红票
|
|
var GetLpFids = SqlManage.SqlManage.GetBuleFpFID(this.Context, Convert.ToString(Billobj["Id"]));
|
|
if (GetLpFids.Count > 0)
|
|
{
|
|
//循环遍历蓝字发票FID,执行蓝字发票的查询存储过程
|
|
foreach (var GetLpFid in GetLpFids)
|
|
{
|
|
var Ordersqls = SqlManage.SqlManage.GetHZFPSal_ORDERFidAndFentryid(this.Context, Convert.ToString(GetLpFid["蓝字发票FID"]));
|
|
if (Ordersqls.Count > 0)
|
|
{
|
|
foreach (var Ordersql in Ordersqls)
|
|
{
|
|
//反审核,溯源审核的操作
|
|
SqlManage.SqlManage.FalseUpSal_OrderKPJEAndKPSL(this.Context, Convert.ToString(Ordersql["销售订单FID"]),
|
|
Convert.ToString(Ordersql["销售订单FENTRYID"]), Convert.ToString(Ordersql["开票数量"]),
|
|
Convert.ToString(Ordersql["开票金额"]));
|
|
}
|
|
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
//当发票为蓝字发票或非蓝字发票下推生成的红字发票时
|
|
else
|
|
{
|
|
var LZOrders = SqlManage.SqlManage.GetLZFPSal_ORDERFidAndFentryid(this.Context, Convert.ToString(Billobj["Id"]));
|
|
if (LZOrders.Count > 0)
|
|
{
|
|
foreach (var LZOrder in LZOrders)
|
|
{
|
|
//反审核,溯源审核的操作
|
|
SqlManage.SqlManage.FalseUpSal_OrderKPJEAndKPSL(this.Context, Convert.ToString(LZOrder["销售订单FID"]),
|
|
Convert.ToString(LZOrder["销售订单FENTRYID"]), Convert.ToString(LZOrder["开票数量"]),
|
|
Convert.ToString(LZOrder["开票金额"]));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|