Files
GateDge2023_ljy/14.宝锐/GZ.LJY000.Biori/UHIK_PRD_PACKAGE_INSTOCK/BillEventPlugInEx.cs
PastSaid 9725ab5376 a
2024-12-05 15:39:19 +08:00

106 lines
4.4 KiB
C#

using Kingdee.BOS.Core.Bill;
using Kingdee.BOS.Core.DynamicForm;
using Kingdee.BOS.Core.DynamicForm.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.List;
using Kingdee.BOS.Core.Metadata;
using Kingdee.BOS.Orm.DataEntity;
using Kingdee.BOS.Util;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
namespace GZ.LJY000.Biori.UHIK_PRD_PACKAGE_INSTOCK
{
[HotUpdate, Description("组装单表单插件")]
public class BillEventPlugInEx : AbstractDynamicFormPlugIn
{
public override void BarItemClick(BarItemClickEventArgs e)
{
if (e.BarItemKey.ToUpper().Equals("TBSCANVERIFY"))
{
var billObj = this.View.Model.DataObject;
var billId = billObj["Id"].ToString();
var FFormId = billObj["FFormId"].ToString();
var BillType_Id = billObj["FBillTypeID_Id"].ToString();
var DocumentStatus = billObj["DocumentStatus"];
var billShowParameter = new DynamicFormShowParameter();
billShowParameter.FormId = "k00200f2a265c40829466f120ef3accd6";
billShowParameter.ParentPageId = this.View.PageId;
billShowParameter.CustomParams.Add("isFromBill", "1");
billShowParameter.CustomParams.Add("FFormId", FFormId);
billShowParameter.CustomParams.Add("billId", billId);
billShowParameter.CustomParams.Add("billTypeId", BillType_Id);
var allRowCollection = new List<ListSelectedRow>();
var entity = billObj["FEntity"];
if (entity != null)
{
foreach (var item in entity as DynamicObjectCollection)
{
var row = new ListSelectedRow(billId, item["Id"].ToString(), item["Seq"].Long2Int(), "");
row.FieldValues.Add("FMaterialId_Id", item["FMaterialId_Id"].ToString());
row.FieldValues.Add("FLot_Id", item["FLot_Id"].ToString());
row.FieldValues.Add("FQty", item["FQty"].ToString());
row.FieldValues.Add("FUnitID_Id", item["FUnitID_Id"].ToString());
row.FieldValues.Add("FStockId_Id", item["FStockId_Id"].ToString());
row.FieldValues.Add("FStockLocId_Id", item["FStockLocId_Id"].ToString());
allRowCollection.Add(row);
}
}
billShowParameter.CustomComplexParams.Add("SelectedRows", allRowCollection);
this.View.ShowForm(billShowParameter, (result) =>
{
if (result != null && result.ReturnData != null)
{
var rowIdx = 0;
foreach (var item in result.ReturnData as DynamicObjectCollection)
{
var FVerified2 = bool.Parse(item["FVerified2"].ToString());
this.View.Model.SetValue("FQRCodeVerify", FVerified2, rowIdx);
rowIdx++;
}
}
return;
});
return;
}
if (e.BarItemKey.ToUpper().Equals("TBBARCODEPRINTEX"))
{
var billObj = this.View.Model.DataObject;
var billId = billObj["Id"].ToString();
var FFormId = billObj["FFormId"].ToString();
var allRowCollection = new List<ListSelectedRow>();
allRowCollection.Add(new ListSelectedRow(billId, null, 0, FFormId));
var billShowParameter = new BillShowParameter();
billShowParameter.FormId = "UHIK_BAR_BarCodePrint";
billShowParameter.ParentPageId = this.View.PageId;
billShowParameter.CustomParams.Add("isFromBill", "1");
billShowParameter.CustomParams.Add("SourceFormId", FFormId);
billShowParameter.CustomParams.Add("SourceId", billId);
billShowParameter.CustomParams.Add("RuleId", "1004002");
billShowParameter.CustomParams.Add("SelectedRows", JsonUtil.Serialize(allRowCollection));
billShowParameter.Status = OperationStatus.ADDNEW;
this.View.ShowForm(billShowParameter);
return;
}
}
}
}