using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using CoreFS.CA06;using Pur.Entity;using Pur.Entity;
using Core.Mes.Client.Comm.Control;
using System.Collections;
using Core.Mes.Client.Comm.Tool;
using Infragistics.Win;
namespace Pur.pur_plan
{
public partial class frmSuppChk : FrmPmsBase
{
private DataTable q_dt = null;
DataTable dtexsit = null;
public DataTable Q_dt
{
get { return q_dt; }
}
public frmSuppChk(OpeBase ob,ArrayList al,DataTable dt)
{
InitializeComponent();
dtexsit = dt;
this.ob = ob;
getSuppGrade(al);
GridHelper.SetExcludeColumnsActive(ultraGrid1.DisplayLayout.Bands[0], "Check");
}
///
/// 查询供应商
///
/// 物料代码
private void getSuppGrade(ArrayList list)
{
DataTable dt_supp = this.execute("com.hnshituo.pur.configure.service.SuppGradeService", "getMat_SuppChk", new object[] { list });
dt_supp = dt_supp.DefaultView.ToTable(true);
dataTable2.Rows.Clear();
//移除之前已选的供应商
for (int i = 0; i < dtexsit.Rows.Count; i++)
{
for (int j = 0; j < dt_supp.Rows.Count; j++)
{
if (dt_supp.Rows[j]["SUPPCODE"].ToString() == dtexsit.Rows[i]["SUPPCODE"].ToString())
{
dt_supp.Rows.RemoveAt(j);
break;
}
}
}
GridHelper.CopyDataToDatatable(ref dt_supp, ref dataTable2, true);//绑定物料分类表
}
///
/// 选择供应商
///
///
///
private void conFirmation()
{
ultraGrid1.UpdateData();
DataTable dt = dataTable2.Clone();
for (int i = 0; i < ultraGrid1.Rows.Count; i++)
{
if ((Boolean)ultraGrid1.Rows[i].Cells["Check"].Value)
{
for (int j = 0; j < dataTable2.Rows.Count; j++)
{
if (ultraGrid1.Rows[i].Cells["SUPPCODE"].Value.ToString() == dataTable2.Rows[j]["SUPPCODE"].ToString())
{
DataRow dr = dataTable2.Rows[j];
dt.Rows.Add(dr.ItemArray);
break;
}
}
}
}
if (dt != null)
{
q_dt = dt;
}
else
{
MessageUtil.ShowTips("请选择供应商");
return;
}
this.Close();
}
///
/// 按钮控件
///
///
///
private void barsManagerButon_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
{
switch (e.Tool.Key.ToString())
{
case "Query":
{
}
break;
case "conFirmation":
{
conFirmation();
}
break;
case "ESC":
{
this.Close();
}
break;
}
}
}
}