using Kingdee.BOS.Core.DynamicForm.PlugIn; using Kingdee.BOS.Orm.DataEntity; using Kingdee.BOS.Util; using Newtonsoft.Json; using Pilot_KD_Parino.Common; using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Threading.Tasks; using static Pilot_KD_Parino.QPHY_AutoWrire.Bill2; namespace Pilot_KD_Parino.QPHY_AutoWrire { [HotUpdate] [Description("收款核销4")] //交互事件,在用 public class Bill4: AbstractDynamicFormPlugIn { public List SaleBILLLIS = new List(); public List ReceiveBILLLIST = new List(); //拿来匹配的集合 public List SaleBILLLIS2 = new List(); /// /// 开始 /// /// public override void OnLoad(EventArgs e) { base.OnLoad(e); //获取需要过滤的销售订单/应收单号 string stringFBILLNO = this.View.OpenParameter.GetCustomParameters()["stringFBILLNO"].ToString(); // 反序列化JSON字符串为List List stringFBILLNOList = JsonConvert.DeserializeObject>(stringFBILLNO); this.View.OpenParameter.Status = Kingdee.BOS.Core.Metadata.OperationStatus.EDIT; SaleBILLLIS = new List(); ReceiveBILLLIST = new List(); List SaleBILLLISnew = new List(); List ReceiveBILLLISTNew = new List(); //删除一个单据体 this.View.Model.DeleteEntryData("FEntity"); var FOrgId = this.Context.CurrentOrganizationInfo.ID; //调用SQL获取数据 var WriteOrderDate = SQL.SqlManage.GetWriteOrderDate3(this.Context, Convert.ToString(FOrgId)); foreach (var item in WriteOrderDate) { SaleBILLLIS.Add(new CombinaClass() { FBIllNO = Convert.ToString(item["FBIllNO"]), FCONTRACTNUMBER = Convert.ToString(item["F_CONTRACTNUMBER"]), FClient = Convert.ToInt32(item["FCUSTID"]), FDate = Convert.ToString(item["FDate"]), FALLAMOUNT = Convert.ToDouble(item["FALLAMOUNT"]), FYAMOUNT = Convert.ToDouble(item["FYAMOUNT"]), FDAMOUNT = Convert.ToDouble(item["FDAMOUNT"]), FCreated = Convert.ToInt32(item["FCREATORID"]), FSalesman = Convert.ToInt32(item["FSALERID"]), FIs30 = Convert.ToBoolean(item["FIs30"]), FType = Convert.ToString(item["FType"]), }); } SaleBILLLIS2 = SaleBILLLIS.Where(t => t.FIs30 == true).ToList(); //获取需要显示的数据 var SaleBILLLIS3 = new List(); foreach (var item in stringFBILLNOList) { foreach (var item2 in SaleBILLLIS2) { if (item2.FBIllNO.Equals(item.FBILLNO)) { SaleBILLLIS3.Add(item2); } } } //绑定销售订单数据 for (int i = 0; i < SaleBILLLIS3.Count; i++) { int rowindex = this.View.Model.GetEntryRowCount("FEntity"); this.View.Model.CreateNewEntryRow("FEntity"); //单据编号 this.View.Model.SetValue("FBILLNO", SaleBILLLIS3[i].FBIllNO, i); //日期 this.View.Model.SetValue("FDate", DateTime.Now.AddDays(-1 * Convert.ToInt32(SaleBILLLIS3[i].FDate)).ToString("yyyy-MM-dd"), i); //金额 this.View.Model.SetValue("F_MBBA_Decimal_c1c", SaleBILLLIS3[i].FALLAMOUNT, i); //类型 this.View.Model.SetValue("FType", SaleBILLLIS3[i].FType, i); //纸质合同号 this.View.Model.SetValue("FCONTRACTNUMBER", SaleBILLLIS3[i].FCONTRACTNUMBER, i); //客户名称 this.View.Model.SetValue("FClient", SaleBILLLIS3[i].FClient, i); //已核销金额 this.View.Model.SetValue("F_MBBA_Decimal_vb1", SaleBILLLIS3[i].FYAMOUNT, i); //待核销金额 this.View.Model.SetValue("F_MBBA_Decimal_emq", SaleBILLLIS3[i].FDAMOUNT, i); //商务人员 this.View.Model.SetValue("FCreated", SaleBILLLIS3[i].FCreated, i); //销售员 this.View.Model.SetValue("FSalesman", SaleBILLLIS3[i].FSalesman, i); this.View.UpdateView("FEntity"); } } } }