using Kingdee.BOS.Core.Bill.PlugIn;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Kingdee.BOS;
using Kingdee.BOS.Core.Metadata.EntityElement;
using Kingdee.BOS.Orm.DataEntity;
using System.Data;
using Kingdee.BOS.App.Data;
namespace BOK.BOOK.stdy.yxk.jghq
{
[Description("根据采购价目表查询价格控件")]
public class Class1 : AbstractBillPlugIn
{
public override void BarItemClick(Kingdee.BOS.Core.DynamicForm.PlugIn.Args.BarItemClickEventArgs e)
{
base.BarItemClick(e);
//object FNote = this.View.Model.GetValue("FPURCHASEORGID" ) ;
DynamicObject purOrgId = this.View.Model.GetValue("FPURCHASEORGID") as DynamicObject;
string sss = purOrgId["Id"].ToString(); //获取组织ID
DynamicObject gys = this.View.Model.GetValue("FSUPPLIERID") as DynamicObject;
string gys_ID = gys["Id"].ToString();
//string hh = this.View.Model.GetValue("AP_PAYABLEENTRY").ToString() ;
int hh = this.View.Model.GetEntryRowCount("FEntityDetail"); //获取行数
var idList = new List<string>();
if (e.BarItemKey.Equals("HQJM1"))
{
for (int i = 0; i < hh; i++)
{
DynamicObject wlbm = this.View.Model.GetValue("FMATERIALID", i) as DynamicObject;
string wlbmid = wlbm["ID"].ToString();
string sj = this.View.Model.GetValue("F_QH_STOCKDATE", i) .ToString();
if (sj == null)
{
idList.Add("没意思");
}
else {
idList.Add("已经全部写入价格请,查看单据体价格");
}
var sql = "/*dialect*/ select top 1 单价 as 价格 from CGDH05 where 供应商 =@GYS and 物料编码=@WLBM and 使用组织=@ZZBM and 生效日期<=@RQ and 失效日期 >= @RQ ORDER BY 生效日期 DESC ";
//var sql = "SELECT * FROM T_PUR_POORDER WHERE FBILLNO LIKE @BillNo";
var sqlParameterList = new List<SqlParam>();
sqlParameterList.Add(new SqlParam("@GYS", KDDbType.AnsiString, gys_ID));
sqlParameterList.Add(new SqlParam("@WLBM", KDDbType.AnsiString, wlbmid));
sqlParameterList.Add(new SqlParam("@ZZBM", KDDbType.AnsiString, sss));
sqlParameterList.Add(new SqlParam("@RQ", KDDbType.AnsiString, sj));
using (var reader = DBUtils.ExecuteReader(this.Context, sql, sqlParameterList))
{
while (reader.Read())
{
if (reader != null)
{
this.View.Model.SetValue("FPrice", reader["价格"], i);
this.View.InvokeFieldUpdateService("FPrice", i);
}
else
{
this.View.Model.SetValue("FPrice", 0, i);
this.View.InvokeFieldUpdateService("FPrice", i);
}
}
}
}
this.View.ShowMessage(idList[0]);
}
}
}
}