Files
GateDge2023_ljy/03.珠海市汇威精密制造有限公司/HW.PRD_LACKANAYLEBILL/ProductBomLackAnalyePlugIn.cs
PastSaid 912bea60ac 1
2024-03-28 11:30:14 +08:00

150 lines
7.0 KiB
C#

using Kingdee.BOS;
using Kingdee.BOS.Core.DynamicForm.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.Metadata.EntityElement;
using Kingdee.BOS.Orm.DataEntity;
using Kingdee.BOS.ServiceHelper;
using Kingdee.BOS.Util;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
namespace HW.PRD_LACKANAYLEBILL
{
public class ProductBomLackAnalyePlugIn : AbstractDynamicFormPlugIn
{
public override void OnInitialize(InitializeEventArgs e)
{
base.OnInitialize(e);
}
public override void ButtonClick(ButtonClickEventArgs e)
{
base.ButtonClick(e);
if (e.Key.EndsWith("FToAnalyze", StringComparison.OrdinalIgnoreCase))
{
var materialEntity = this.View.Model.BusinessInfo.GetEntryEntity("FAnalyzeMaterialEntity");
var materialRows = this.View.Model.GetEntityDataObject(materialEntity);
var row = new DynamicObject(materialEntity.DynamicObjectType);
var a = row[""].Long2Int();
materialEntity.SeqDynamicProperty.SetValue(row, 1);
int num = (int)base.Context.CurrentOrganizationInfo.ID;
Entity entryEntity = this.View.Model.BusinessInfo.GetEntryEntity("F_ora_Entity");
DynamicObjectCollection entityDataObject = this.View.Model.GetEntityDataObject(entryEntity);
this.View.Model.BeginIniti();
entityDataObject.Clear();
DynamicObjectCollection dynamicObjectCollection = this.View.Model.GetValue("F_ora_Stock") as DynamicObjectCollection;
DynamicObject dynamicObject = this.View.Model.GetValue("F_ora_Base") as DynamicObject;
DynamicObject dynamicObject2 = this.View.Model.GetValue("F_ora_Base1") as DynamicObject;
string text = " AND FSTOCKID IN (";
string text2 = "";
string text3 = "";
string text4 = "";
string text5 = "";
string text6 = "";
if (this.View.Model.GetValue("F_ora_SDate") != null)
{
text5 = this.View.Model.GetValue("F_ora_SDate").ToString();
}
if (this.View.Model.GetValue("F_ora_EDate") != null)
{
text6 = this.View.Model.GetValue("F_ora_EDate").ToString();
}
if (dynamicObject != null)
{
text3 = Convert.ToString(dynamicObject["Number"]);
}
if (dynamicObject2 != null)
{
text4 = Convert.ToString(dynamicObject2["Number"]);
}
if (this.View.Model.GetValue("F_ora_HName") != null)
{
text2 = this.View.Model.GetValue("F_ora_HName").ToString();
}
HashSet<long> hashSet = new HashSet<long>();
if (dynamicObjectCollection.Count > 0)
{
foreach (DynamicObject dynamicObject3 in dynamicObjectCollection)
{
long num2 = Convert.ToInt64(dynamicObject3["F_ora_Stock_Id"]);
bool flag8 = num2 == 0L;
if (!flag8)
{
bool flag9 = !hashSet.Contains(num2);
if (flag9)
{
text = text + num2 + ",";
}
}
}
text += "0)";
}
else
{
text = " AND 1=1 ";
}
string text7 = string.Concat(new string[]
{
"exec Pro_BOMStockStatusBillEXP '",
text3,
"','",
text4,
"','",
text,
"','",
text5,
"' ,'",
text6,
"','",
text2,
"'"
});
StringBuilder stringBuilder = new StringBuilder();
DynamicObjectCollection dynamicObjectCollection2 = DBServiceHelper.ExecuteDynamicObject(base.Context, text7);
bool flag10 = dynamicObjectCollection2.Count > 0;
if (flag10)
{
this.View.Model.BatchCreateNewEntryRow("F_ora_Entity", dynamicObjectCollection2.Count);
}
int num3 = 0;
foreach (DynamicObject dynamicObject4 in dynamicObjectCollection2)
{
this.Model.SetValue("F_ora_Number", dynamicObject4[1], num3);
this.Model.SetValue("F_ora_Name", dynamicObject4[2], num3);
this.Model.SetValue("F_ora_Model", dynamicObject4[3], num3);
this.Model.SetValue("F_ora_OldNumber", dynamicObject4[4], num3);
this.Model.SetValue("F_ora_StartQty", dynamicObject4[5], num3);
this.Model.SetValue("F_ora_PoInQty", dynamicObject4[6], num3);
this.Model.SetValue("F_ora_AllOutQty", dynamicObject4[7], num3);
this.Model.SetValue("F_ora_EndQty", dynamicObject4[8], num3);
this.Model.SetValue("F_ora_ZTQty", dynamicObject4[9], num3);
this.Model.SetValue("F_ora_ZZQty", dynamicObject4[10], num3);
this.Model.SetValue("F_ora_JJQty", dynamicObject4[11], num3);
this.Model.SetValue("F_ora_WFQty", dynamicObject4[12], num3);
this.Model.SetValue("F_ora_LLQty", dynamicObject4[13], num3);
this.Model.SetValue("F_ora_XSCKQty", dynamicObject4[14], num3);
this.Model.SetValue("F_ora_DBCKQty", dynamicObject4[15], num3);
this.Model.SetValue("F_ora_DBRKQty", dynamicObject4[16], num3);
this.Model.SetValue("F_ora_SGWZQty", dynamicObject4[17], num3);
this.Model.SetValue("F_ora_SDQty", dynamicObject4[18], num3);
this.Model.SetValue("F_ora_ZYQty", dynamicObject4[19], num3);
this.Model.SetValue("F_ora_KYKCQty", dynamicObject4[20], num3);
this.Model.SetValue("F_ora_StockNumber", dynamicObject4[21], num3);
this.Model.SetValue("F_ora_StockName", dynamicObject4[22], num3);
this.Model.SetValue("F_ora_Text", dynamicObject4[23], num3);
this.Model.SetValue("F_ora_CPNumber", dynamicObject4[24], num3);
num3++;
}
DBServiceHelper.LoadReferenceObject(base.Context, entityDataObject.ToArray(), entityDataObject.DynamicCollectionItemPropertyType, false);
this.View.Model.EndIniti();
this.View.UpdateView("F_ora_Entity");
}
}
}
}