using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Infragistics.Win.UltraWinGrid;
using System.Collections;
using Core.Mes.Client.Comm;
using Core.Mes.Client.Comm.Tool;
using Core.Mes.Client.Comm.Server;
using CoreFS.CA06;
using Core.Mes.Client.Comm.Control;
//基本信息显示Grid
namespace Core.StlMes.Client.Lims.Data.PipeAndOutdec
{
public partial class PublicUltraGridBase : UserControl
{
public event EventHandler PublicUltraGridBaseActive;
//private DataTable dataTable;
public DataTable DataTable
{
get { return dataTable1; }
set { dataTable1 = value; }
}
//private UltraGrid ug;
public UltraGrid Ug
{
get { return ultraGrid1; }
set { ultraGrid1 = value; }
}
private UltraGridRow ur;
public UltraGridRow Ur
{
get { return ur; }
set { ur = value; }
}
public PublicUltraGridBase()
{
InitializeComponent();
}
private void PublicUltraGridBase_Load(object sender, EventArgs e)
{
}
public void InitColumnsPipeBase(string[] show, bool isShow, string[] ope)
{
string[] arrColumnsBase = new string[] { "FLAG", "FLAG_DESC", "CHECK_NO", "FLAG_ISZT", "SAMPLE_NO", "CONTRACT_NO", "CRAFT_SOURCE", "ISPRODUCER_DESC", "HEAT_NO", "LOT_NO", "STEEL_GRADE", "STEEL_NO", "PRODUCT_STD", "DIMATER", "HEIGHT", "PIPE_SIZE", "CRAFT_FILE_NO", "CRAFT_PATH", "PRODUCT_NAME", "BUCKLE_TYPE", "PROCESS_STATUS", "CONSIGN_DEPT", "CONSIGN_NAME", "CONSIGN_TIME", "XSS", "JG_RECEIVE_NAME", "JG_RECEIVE_TIME", "ISPRODUCER", "SPEC_REQ", "IS_RUSH", "REMARK", "DEPT_ID", "PROOF_RING_NO1", "PROOF_RING_NO2", "PROOF_RING_NO3", "CHECK_TIME", "CIC", "PROCESS_CODE" };
string[] arrCaptionBase = new string[] { "状态", "状态", "检验编号", "是否在途", "试样号", "合同号", "委托类型", "是否监制", "炉号", "生产批号", "钢级", "钢号", "技术标准", "外径", "壁厚", "规格", "工艺文件号", "工艺文件路径", "品名", "扣型", "工艺状态", "委托单位", "委托人", "委托时间", "小时数", "加工确认人", "加工确认时间", "是否监制", "特殊要求", "是否加急", "备注", "所属实验室", "应力环号1", "应力环号2", "应力环号3", "试验时间", "CIC", "工序" };
PublicPipeAndOutdec.InitColumns(arrColumnsBase, arrCaptionBase, dataTable1);
setColumnShowOrHidden(show, isShow);//显示列
setOtherColumnReadOnly(ope);//可编辑列
}
public void InitColumnsOutdecBase(string[] show, bool isShow, string[] ope)
{
string[] arrColumnsBase = new string[] { "CHK", "FLAG", "FLAG_DESC", "CHECK_NO", "SAMPLE_NO", "CONTROL_NO", "SAMPLE_NAME", "STEEL_GRADE_NO", "TOTAL_LARGE_SAMPLE_SIZE", "SAMPLE_SIZE", "LARGE_SAMPLE_COUNT", "HEAT_NO", "TOTAL_SAMPLE_NO", "OTHER_DESC", "LARGE_SAMPLE_STATE", "CHECK_TYPE", "CHECK_BASE", "SURPLUS", "SURPLUS_STATE", "PROMISE_FINISH_TIME", "CHECK_PRICE", "REPORT_TYPE", "GET_REPORT_WAY", "CONSIGN_DEPT", "CONSIGN_ADDRESS", "POSTCODE", "PHONE", "FAX", "CHECK_DEPT", "CHECK_ADDRESS", "CONSIGN_NAME", "CONSIGN_TIME", "JC_RECEIVE_NAME", "JC_RECEIVE_TIME", "CONSIGNDEPT_SEND_NAME", "CONSIGNDEPT_SEND_TIME", "JG_RECEIVE_NAME", "JG_RECEIVE_NAME", "REMARK", "DEPT_ID", "PROOF_RING_NO1", "PROOF_RING_NO2", "PROOF_RING_NO3", "CHECK_TIME" };
string[] arrCaptionBase = new string[] { "选择", "状态", "状态", "检验编号", "试样号", "受控编号", "样品名称", "钢号/钢级", "规格", "规格", "数量(个数)", "炉号", "样品编号", "其他说明", "样品状态", "检验类别", "检验依据", "余样处理方式", "余样情况", "检验完成时间约定", "检验费用", "报告类型", "取报告方式", "委托方全称", "通信地址", "邮编", "电话", "传真", "主检单位", "地址", "委托方授权人签字", "委托时间", "检验单位接受人", "接受日期", "送样人", "送样时间", "加工接样人", "加工接样时间", "备注", "所属实验室", "应力环号1", "应力环号2", "应力环号3", "录入时间" };
PublicPipeAndOutdec.InitColumns(arrColumnsBase, arrCaptionBase, dataTable1);
setColumnShowOrHidden(show, isShow);//显示列
setOtherColumnReadOnly(ope);//可编辑列
}
//查询检验委托基本信息
///
/// 查询检验委托基本信息
///
///
///
///
public void QueryCheckConsignBase(string path, ArrayList arrayList, OpeBase ob)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBase",
new Object[] { arrayList }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable1
if (ultraGrid1.DisplayLayout.Bands[0].Columns.Exists("IS_RUSH"))
{
foreach (UltraGridRow dr in ultraGrid1.Rows)
{
if (dr.Cells["IS_RUSH"].Text.Trim() == "是")
{
dr.Appearance.BackColor = Color.Gold;//LightGray灰色
}
}
}
//GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
}
//查询检验委托基本信息
///
/// 查询检验委托基本信息(天淮)
///
///
///
///
public void QueryCheckConsignBaseTH(string path, ArrayList arrayList, OpeBase ob)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBaseTH",
new Object[] { arrayList }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable1
if (ultraGrid1.DisplayLayout.Bands[0].Columns.Exists("IS_RUSH"))
{
foreach (UltraGridRow dr in ultraGrid1.Rows)
{
if (dr.Cells["IS_RUSH"].Text.Trim() == "是")
{
dr.Appearance.BackColor = Color.Gold;//LightGray灰色
}
}
}
//GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
}
///
/// 查询检验委托基本信息(试样号)
///
///
///
///
public void QueryCheckConsignBaseSampleNo(string path, ArrayList arrayList, OpeBase ob)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBaseSampleNo",
new Object[] { arrayList }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable1
if (ultraGrid1.DisplayLayout.Bands[0].Columns.Exists("IS_RUSH"))
{
foreach (UltraGridRow dr in ultraGrid1.Rows)
{
if (dr.Cells["IS_RUSH"].Text.Trim() == "是")
{
dr.Appearance.BackColor = Color.Gold;//LightGray灰色
}
}
}
//GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
}
///
/// 查询检验委托基本信息(加工样品交接时间)
///
///
///
///
public void QueryCheckConsignBaseJgReceiveTime(string path, ArrayList arrayList, OpeBase ob)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBaseJgReceiveTime",
new Object[] { arrayList }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable1
if (ultraGrid1.DisplayLayout.Bands[0].Columns.Exists("IS_RUSH"))
{
foreach (UltraGridRow dr in ultraGrid1.Rows)
{
if (dr.Cells["IS_RUSH"].Text.Trim() == "是")
{
dr.Appearance.BackColor = Color.Gold;//LightGray灰色
}
}
}
}
public void QueryCheckConsignBase2(string path, ArrayList arrayList, OpeBase ob)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBase",
new Object[] { arrayList }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable1
if (ultraGrid1.DisplayLayout.Bands[0].Columns.Exists("IS_RUSH"))
{
foreach (UltraGridRow dr in ultraGrid1.Rows)
{
if (dr.Cells["IS_RUSH"].Text.Trim() == "是")
{
dr.Appearance.BackColor = Color.Gold;//LightGray灰色
}
}
}
GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
}
//查询检验委托明细信息
///
/// 查询检验委托明细信息
///
///
///
///
///
public void QueryCheckConsignBaseDetail_Distinct(string path, ArrayList arrayList, OpeBase ob, string[] arrId, string[] plineCodes)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBaseDetail_Distinct",
arrId == null ? new Object[] { arrayList } : new Object[] { arrayList, arrId, plineCodes }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable4
//if (ultraGrid1.DisplayLayout.Bands[0].Columns.Exists("CHECK_NO"))
//{
// ultraGrid1.DisplayLayout.Bands[0].Columns["CHECK_NO"].Width = 100;//设置列宽
//}
//if (ultraGrid1.DisplayLayout.Bands[0].Columns.Exists("SAMPLE_NO"))
//{
// ultraGrid1.DisplayLayout.Bands[0].Columns["SAMPLE_NO"].Width = 80;//设置列宽
//}
GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
}
//查询检验委托明细信息
///
/// 查询检验委托明细信息
///
///
///
///
///
public void QueryCheckConsignBaseDetail_DistinctDB(string path, ArrayList arrayList, OpeBase ob, string[] arrId, string[] plineCodes)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBaseDetail_DistinctDB",
arrId == null ? new Object[] { arrayList } : new Object[] { arrayList, arrId, plineCodes }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable4
GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
}
public void QueryCheckConsignBaseDetail_DistinctFS(string path, ArrayList arrayList, OpeBase ob, string[] arrId, string[] plineCodes, string flag)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBaseDetail_DistinctFS",
arrId == null ? new Object[] { arrayList } : new Object[] { arrayList, arrId, plineCodes }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable4
GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
Color Color1 = Color.LightYellow;
Color Color2 = Color.LightGreen;
//未录入查询不变颜色
if (!flag.Equals("2"))
{
for (int i = 0; i < this.ultraGrid1.Rows.Count; i++)
{
if (i == 0)
{
this.ultraGrid1.Rows[i].Appearance.BackColor = Color1;
}
else
{
string a = DateTime.Parse(this.ultraGrid1.Rows[i].Cells["CHECK_TIME"].Value.ToString()).ToString("yyyy-MM-dd");
if (DateTime.Parse(this.ultraGrid1.Rows[i].Cells["CHECK_TIME"].Value.ToString()).ToString("yyyy-MM-dd") != DateTime.Parse(this.ultraGrid1.Rows[i - 1].Cells["CHECK_TIME"].Value.ToString()).ToString("yyyy-MM-dd"))
{
this.ultraGrid1.Rows[i].Appearance.BackColor = this.ultraGrid1.Rows[i - 1].Appearance.BackColor == Color1 ? Color2 : Color1;
}
else
{
this.ultraGrid1.Rows[i].Appearance.BackColor = this.ultraGrid1.Rows[i - 1].Appearance.BackColor;
}
}
}
}
}
public void UpdateCheckConsignBase(string path, OpeBase ob, DataRow[] arrBase, string strFlag, string user, string strDate, string strCondition)
{
ArrayList alBase = new ArrayList();//存放所有需要更新的基础信息
ArrayList alBaseParams = new ArrayList();//存放单个基础参数信息
foreach (DataRow row in arrBase)
{
alBaseParams = new ArrayList();//增加要更新的基础标志位信息
alBaseParams.Add(strFlag);
alBaseParams.Add(user);//收样人
alBaseParams.Add(strDate);//收样时间
//alBaseParams.Add("");
alBaseParams.Add("");//样品备注row["SAMPLE_REMARK"].ToString()
alBaseParams.Add(strCondition);
alBaseParams.Add(row["CHECK_NO"].ToString());
alBase.Add(alBaseParams);
}
PublicServer.SetData("com.steering.lims.data." + path + ".UpdateCheckConsignBase",
new Object[] { alBase }, ob);
}
public void UpdateCheckConsignBase(string path, OpeBase ob, DataRow[] arrBase, string strFlag, string user, string strDate, string strCondition, string strSample_Remark)
{
ArrayList alBase = new ArrayList();//存放所有需要更新的基础信息
ArrayList alBaseParams = new ArrayList();//存放单个基础参数信息
foreach (DataRow row in arrBase)
{
alBaseParams = new ArrayList();//增加要更新的基础标志位信息
alBaseParams.Add(strFlag);
alBaseParams.Add(user);//收样人
alBaseParams.Add(strDate);//收样时间
alBaseParams.Add(strSample_Remark);
alBaseParams.Add(strSample_Remark);
alBaseParams.Add(strCondition);
alBaseParams.Add(row["CHECK_NO"].ToString());
alBase.Add(alBaseParams);
}
PublicServer.SetData("com.steering.lims.data." + path + ".UpdateCheckConsignBase",
new Object[] { alBase }, ob);
}
public void ultraGrid1_AfterRowActivate(object sender, EventArgs e)
{
ur = ultraGrid1.ActiveRow;
if (PublicUltraGridBaseActive != null)
{
//ur = ultraGrid1.ActiveRow;
PublicUltraGridBaseActive(sender, e);//调用委托事件
}
}
//初始化列
///
/// 初始化列
///
///
///
public void InitColumns(string[] arrColumns, string[] arrCaption)
{
PublicPipeAndOutdec.InitColumns(arrColumns, arrCaption, dataTable1);
}
//设置列是否隐藏
///
/// 设置列是否隐藏
///
///
///
public void setColumnShowOrHidden(string[] keys, bool isShow)
{
PublicPipeAndOutdec.setColumnShowOrHidden(ultraGrid1, keys, isShow);
}
//可编辑列
///
/// 可编辑列
///
///
public void setOtherColumnReadOnly(string[] keys)
{
PublicPipeAndOutdec.setOtherColumnReadOnly(ultraGrid1, keys);
}
private void ultraGrid1_AfterSelectChange(object sender, AfterSelectChangeEventArgs e)
{
PublicPipeAndOutdec.SelectRow(ultraGrid1);
}
///
/// grid全部打勾
///
public void MakeAllDataCheck()
{
foreach (UltraGridRow row in ultraGrid1.Rows)
{
row.Cells["CHK"].Value = true;
}
}
private void ultraGrid1_InitializeRow(object sender, InitializeRowEventArgs e)
{
if (dataTable1.Columns.Contains("JG_PRINT_COUNT"))
{
if (int.Parse(e.Row.Cells["JG_PRINT_COUNT"].Value.ToString3()) > 0)
{
e.Row.Appearance.BackColor = Color.LightGreen;
}
}
if (dataTable1.Columns.Contains("FLAG_SH"))
{
if (e.Row.Cells["FLAG_SH"].Value.ToString() != "未审核")
{
e.Row.Appearance.BackColor = Color.LightGreen;
}
}
}
internal void Export(string title)
{
GridHelper.ulGridToExcel(ultraGrid1, title);
}
}
}