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 CoreFS.CA06;
using Core.Mes.Client.Comm.Control;
using Core.Mes.Client.Comm.Server;
using Core.Mes.Client.Comm.Tool;
//详细信息显示Grid
namespace Core.StlMes.Client.Lims.Data.PipeAndOutdec
{
public partial class PublicUltraGridDetail : UserControl
{
public event EventHandler PublicUltraGridDetailActive;
//private DataTable dataTable;
private OpeBase ob;
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 PublicUltraGridDetail()
{
InitializeComponent();
}
private void PublicUltraGridDetail_Load(object sender, EventArgs e)
{
}
//初始化明细数据列
///
/// 初始化明细数据列
///
///
///
///
public void InitColumnsPipeDetail(string[] show, string[] ope, bool isShow)
{
//"IS_NOTICE_PRODUCER", "IS_NOTICE_PRODUCER_DESC", "通知监制", "通知监制",
string[] arrColumns = new string[] { "CHK", "FLAG", "FLAG_DESC", "SAMPLE_NO_MIN", "CHECK_NO", "SAMPLE_NO", "HEAD_MAT_NO", "PHY_CODE_MAX", "PHY_NAME_MAX", "SIZE_DESC", "ITEM_NAME_F", "SAMPLE_COUNT", "MERG_TIME", "JG_PRINT_COUNT", "ISPRODUCER", "ISPRODUCER_DESC", "IS_NOTICE_PRODUCER", "IS_NOTICE_PRODUCER_DESC", "ISRCL", "ISRCL_DESC", "JG_SEND_NAME", "JG_SEND_TIME", "LAB_RECEIVE_NAME", "LAB_RECEIVE_TIME", "HEAT_NO", "STEEL_GRADE", "STEEL_NO", "PRODUCT_STD", "CONTRACT_NO", "CRAFT_PATH", "DIMATER", "HEIGHT", "PIPE_SIZE", "CRAFT_FILE_NO", "PRODUCT_NAME", "BUCKLE_TYPE", "PROCESS_STATUS", "CONSIGN_DEPT", "CONSIGN_NAME", "CONSIGN_TIME", "SPEC_REQ", "REMARK", "SAMPLE_REMARK", "FILE_PATH1", "FILE_PATH2", "FILE_PATH3", "FILE_PATH4", "TECHNICAL_STANDARD", "DEGREASING_METHOD", "NACE_PH", "NACE_PH_S", "NACE_PH_F", "NACE_SOLUTION_S", "NACE_SOLUTION_F", "TEST_TEMP", "SPECIMEN_SIZE1", "SPECIMEN_SIZE2", "SPECIMEN_SIZE3", "TEST_DURATION1", "TEST_DURATION2", "TEST_DURATION3", "PSEUDO_STRESS", "PROOF_RING_NO1", "PROOF_RING_NO2", "PROOF_RING_NO3", "YSMIN1", "YSMIN2", "YSMIN3", "ACTUAL_LOAD1", "ACTUAL_LOAD2", "ACTUAL_LOAD3", "ACTUAL_S_YSMIN1", "ACTUAL_S_YSMIN2", "ACTUAL_S_YSMIN3", "ARM_DISPLACEMENT1", "ARM_DISPLACEMENT2", "ARM_DISPLACEMENT3", "CRACK_LENGTH1", "CRACK_LENGTH2", "CRACK_LENGTH3", "NOTE", "STEP", "LOAD", "PRESSURE_MEDIUM", "INTERNAL_PRESSURE", "DOGLEG_DEGREE", "HOLD_TIME", "PIN", "BOX", "COMPOUND_TYPE", "COMPOUND_WEIGHT", "MAKE_UP_TORQUE", "TOTAL_TORQUE", "BREAK_OUT_TORQUE", "OBSERVED_RESULT", "TS_SAMPLE_REMARK", "TS_REMARK" };//"ISPRODUCER",
string[] arrCaption = new string[] { "选择", "状态", "状态", "钢印号", "检验编号", "试样号", "样管编号", "检验项代码", "检验项","式样尺寸","式样方向", "试样数", "并单时间", "打印次数", "是否监制", "是否监制", "通知监制", "通知监制", "热处理", "热处理", "送样人", "送样时间", "收样人", "收样时间", "炉号", "钢级", "钢号", "技术标准", "合同号", "工艺文件", "外径", "壁厚", "规格", "工艺文件号", "品名", "扣型", "工艺状态", "委托单位", "委托人", "委托时间", "特殊要求", "备注", "来样操作备注", "图片1", "图片2", "图片3", "图片4", "技术标准", "试样脱脂方法", "通入H2S前NACE-A溶液pH值", "试验开始NACE-A溶液pH值", "试验结束NACE-A溶液pH值", "试验开始NACE-A溶液H2S浓度", "试验结束NACE-A溶液H2S浓度", "试验温度", "试样尺寸1", "试样尺寸2", "试样尺寸3", "试验持续时间1", "试验持续时间2", "试验持续时间3", "假定应力", "应力环号1", "应力环号2", "应力环号3", "名义最小屈服强度1", "名义最小屈服强度2", "名义最小屈服强度3", "实际加载挠度1", "实际加载挠度2", "实际加载挠度3", "实际载荷比率1", "实际载荷比率2", "实际载荷比率3", "悬壁位移1", "悬壁位移2", "悬壁位移3", "裂纹长度1", "裂纹长度2", "裂纹长度3", "备注", "步骤", "载荷(kips)", "压力介质", "内压力(MPa)", "狗腿度(°/100ft)", "保持时间(min)", "外螺纹端", "内螺纹端", "螺纹脂类型", "螺纹脂用量(g)", "上扣要求(ft-lb)", "上扣扭矩", "卸扣扭矩(ft-lb)", "螺纹检查", "工艺特殊要求备注", "试样特殊要求备注" };//"是否监制",
InitColumns(arrColumns, arrCaption);
setColumnShowOrHidden(show, isShow);
setOtherColumnReadOnly(ope);//可编辑列
this.ultraGrid1.DisplayLayout.Bands[0].Columns["CRAFT_PATH"].EditorComponent = ultraTextEditor2;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["CRAFT_PATH"].CellActivation = Activation.ActivateOnly;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["CRAFT_PATH"].ButtonDisplayStyle = ButtonDisplayStyle.Always;
}
///
/// 初始化明细数据列
///
///
///
///
///
/// 是否隐藏上传功能:0-不隐藏 1-隐藏
public void InitColumnsPipeDetail(string[] show, string[] ope, bool isShow, OpeBase ob1, string isHidden)
{
//"IS_NOTICE_PRODUCER", "IS_NOTICE_PRODUCER_DESC", "通知监制", "通知监制",
string[] arrColumns = new string[] { "CHECK_NO", "SAMPLE_NO", "PHY_CODE_MAX", "PHY_NAME_MAX", "DEPT_ID", "FILE_PATH1", "FILE_PATH2", "FILE_PATH3", "FILE_PATH4", "TECHNICAL_STANDARD", "DEGREASING_METHOD", "NACE_PH", "NACE_PH_S", "NACE_PH_F", "NACE_SOLUTION_S", "NACE_SOLUTION_F", "TEST_TEMP", "SPECIMEN_SIZE1", "SPECIMEN_SIZE2", "SPECIMEN_SIZE3", "TEST_DURATION1", "TEST_DURATION2", "TEST_DURATION3", "PSEUDO_STRESS", "PROOF_RING_NO1", "PROOF_RING_NO2", "PROOF_RING_NO3", "YSMIN1", "YSMIN2", "YSMIN3", "ACTUAL_LOAD1", "ACTUAL_LOAD2", "ACTUAL_LOAD3", "ACTUAL_S_YSMIN1", "ACTUAL_S_YSMIN2", "ACTUAL_S_YSMIN3", "ARM_DISPLACEMENT1", "ARM_DISPLACEMENT2", "ARM_DISPLACEMENT3", "CRACK_LENGTH1", "CRACK_LENGTH2", "CRACK_LENGTH3", "NOTE", "STEP", "LOAD", "PRESSURE_MEDIUM", "INTERNAL_PRESSURE", "DOGLEG_DEGREE", "HOLD_TIME", "PIN", "BOX", "COMPOUND_TYPE", "COMPOUND_WEIGHT", "MAKE_UP_TORQUE", "TOTAL_TORQUE", "BREAK_OUT_TORQUE", "OBSERVED_RESULT" };
string[] arrCaption = new string[] { "检验编号", "样管号", "检验项代码", "检验项", "所属实验室", "图片1", "图片2", "图片3", "图片4", "技术标准", "试样脱脂方法", "通入H2S前NACE-A溶液pH值", "试验开始NACE-A溶液pH值", "试验结束NACE-A溶液pH值", "试验开始NACE-A溶液H2S浓度", "试验结束NACE-A溶液H2S浓度", "试验温度", "试样尺寸1", "试样尺寸2", "试样尺寸3", "试验持续时间1", "试验持续时间2", "试验持续时间3", "假定应力", "应力环号1", "应力环号2", "应力环号3", "名义最小屈服强度1", "名义最小屈服强度2", "名义最小屈服强度3", "实际加载挠度1", "实际加载挠度2", "实际加载挠度3", "实际载荷比率1", "实际载荷比率2", "实际载荷比率3", "悬壁位移1", "悬壁位移2", "悬壁位移3", "裂纹长度1", "裂纹长度2", "裂纹长度3", "备注", "步骤", "载荷(kips)", "压力介质", "内压力(MPa)", "狗腿度(°/100ft)", "保持时间(min)", "外螺纹端", "内螺纹端", "螺纹脂类型", "螺纹脂用量(g)", "上扣要求(ft-lb)", "上扣扭矩", "卸扣扭矩(ft-lb)", "螺纹检查" };
InitColumns(arrColumns, arrCaption);
setColumnShowOrHidden(show, isShow);
setOtherColumnReadOnly(ope);//可编辑列
this.ob = ob1;
if (isHidden.Equals("1"))
{
ultraTextEditor1.ButtonsRight[0].Visible = false;
}
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH1"].EditorComponent = ultraTextEditor1;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH1"].CellActivation = Activation.ActivateOnly;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH1"].ButtonDisplayStyle = ButtonDisplayStyle.Always;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH2"].EditorComponent = ultraTextEditor1;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH2"].CellActivation = Activation.ActivateOnly;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH2"].ButtonDisplayStyle = ButtonDisplayStyle.Always;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH3"].EditorComponent = ultraTextEditor1;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH3"].CellActivation = Activation.ActivateOnly;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH3"].ButtonDisplayStyle = ButtonDisplayStyle.Always;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH4"].EditorComponent = ultraTextEditor1;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH4"].CellActivation = Activation.ActivateOnly;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH4"].ButtonDisplayStyle = ButtonDisplayStyle.Always;
}
///
/// 初始化明细数据列(腐蚀)
///
///
///
///
/// 是否隐藏上传功能:0-不隐藏 1-隐藏
public void InitColumnsPipeDetailFS(string[] show, string[] ope, bool isShow, OpeBase ob1, string isHidden)
{
//"IS_NOTICE_PRODUCER", "IS_NOTICE_PRODUCER_DESC", "通知监制", "通知监制",
string[] arrColumns = new string[] { "CHECK_NO", "SAMPLE_NO", "PHY_CODE_MAX", "PHY_NAME_MAX", "DEPT_ID", "FILE_PATH1", "FILE_PATH2", "FILE_PATH3", "FILE_PATH4", "TEST_CONDITION1", "TEST_CONDITION2", "TEST_CONDITION3", "TEST_CONDITION4", "TEST_CONDITION5", "TEST_CONDITION6", "TEST_CONDITION7", "TEST_CONDITION8", "TEST_CONDITION9", "TEST_CONDITION10", "TEST_CONDITION11", "TEST_CONDITION12", "TEST_CONDITION13", "TEST_CONDITION14", "TEST_CONDITION15", "TEST_CONDITION1_2", "TEST_CONDITION2_2", "TEST_CONDITION3_2", "TEST_CONDITION4_2", "TEST_CONDITION5_2", "TEST_CONDITION6_2", "TEST_CONDITION7_2", "TEST_CONDITION8_2", "TEST_CONDITION9_2", "TEST_CONDITION10_2", "TEST_CONDITION11_2", "TEST_CONDITION12_2", "TEST_CONDITION13_2", "TEST_CONDITION14_2", "TEST_CONDITION15_2", "TEST_CONDITION1_3", "TEST_CONDITION2_3", "TEST_CONDITION3_3", "TEST_CONDITION4_3", "TEST_CONDITION5_3", "TEST_CONDITION6_3", "TEST_CONDITION7_3", "TEST_CONDITION8_3", "TEST_CONDITION9_3", "TEST_CONDITION10_3", "TEST_CONDITION11_3", "TEST_CONDITION12", "TEST_CONDITION13", "TEST_CONDITION14_3", "TEST_CONDITION15_3" };
string[] arrCaption = new string[] { "检验编号", "样管号", "检验项代码", "检验项", "所属实验室", "试验前照片", "试验后照片", "显微照片", "图片4", "技术标准1", "试验条件2", "试验条件3", "试验条件4", "试验条件5", "试验条件6", "试验条件7", "试验条件8", "试验条件9", "试验条件10", "试验条件11", "试验条件12", "试验条件13", "试验条件14", "试验条件15", "技术标准1_2", "试验条件2_2", "试验条件3_2", "试验条件4_2", "试验条件5_2", "试验条件6_2", "试验条件7_2", "试验条件8_2", "试验条件9_2", "试验条件10_2", "试验条件11_2", "试验条件12_2", "试验条件13_2", "试验条件14_2", "试验条件15_2", "试验条件1_3", "试验条件2_3", "试验条件3_3", "试验条件4_3", "试验条件5_3", "试验条件6_3", "试验条件7_3", "试验条件8_3", "试验条件9_3", "试验条件10_3", "试验条件11_3", "试验条件12_3", "试验条件13_3", "试验条件14_3", "试验条件15_3" };
InitColumns(arrColumns, arrCaption);
setColumnShowOrHidden(show, isShow);
setOtherColumnReadOnly(ope);//可编辑列
this.ob = ob1;
if (isHidden.Equals("1"))
{
ultraTextEditor1.ButtonsRight[0].Visible = false;
}
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH1"].EditorComponent = ultraTextEditor1;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH1"].CellActivation = Activation.ActivateOnly;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH1"].ButtonDisplayStyle = ButtonDisplayStyle.Always;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH2"].EditorComponent = ultraTextEditor1;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH2"].CellActivation = Activation.ActivateOnly;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH2"].ButtonDisplayStyle = ButtonDisplayStyle.Always;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH3"].EditorComponent = ultraTextEditor1;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH3"].CellActivation = Activation.ActivateOnly;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH3"].ButtonDisplayStyle = ButtonDisplayStyle.Always;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH4"].EditorComponent = ultraTextEditor1;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH4"].CellActivation = Activation.ActivateOnly;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH4"].ButtonDisplayStyle = ButtonDisplayStyle.Always;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH5"].EditorComponent = ultraTextEditor1;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH5"].CellActivation = Activation.ActivateOnly;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["FILE_PATH5"].ButtonDisplayStyle = ButtonDisplayStyle.Always;
}
//初始化列
public void InitColumns(string[] arrColumns, string[] arrCaption)
{
PublicPipeAndOutdec.InitColumns(arrColumns, arrCaption, dataTable1);
}
//初始化列
public void InitColumnsLab(string[] arrColumns, string[] arrCaption)
{
PublicPipeAndOutdec.InitColumns(arrColumns, arrCaption, dataTable1);
this.ultraGrid1.DisplayLayout.Bands[0].Columns["CRAFT_PATH"].EditorComponent = ultraTextEditor2;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["CRAFT_PATH"].CellActivation = Activation.ActivateOnly;
this.ultraGrid1.DisplayLayout.Bands[0].Columns["CRAFT_PATH"].ButtonDisplayStyle = ButtonDisplayStyle.Always;
}
//设置列是否隐藏
///
/// 设置列是否隐藏
///
///
///
public void setColumnShowOrHidden(string[] keys, bool isShow)
{
PublicPipeAndOutdec.setColumnShowOrHidden(ultraGrid1, keys, isShow);
}
//可编辑列
///
/// 可编辑列
///
///
public void setOtherColumnReadOnly(string[] keys)
{
PublicPipeAndOutdec.setOtherColumnReadOnly(ultraGrid1, keys);
}
//查询检验委托明细信息
///
/// 查询检验委托明细信息
///
///
///
///
///
public void QueryCheckConsignBaseDetail(string path, ArrayList arrayList, OpeBase ob, string[] arrId)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBaseDetail", arrId == null ? new Object[] { arrayList } : new Object[] { arrayList, arrId }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable4
//UltraGridColumn[] cols = new UltraGridColumn[] { ultraGrid1.DisplayLayout.Bands[0].Columns["PHY_NAME_MAX"], ultraGrid1.DisplayLayout.Bands[0].Columns["PRODUCT_STD"] };
//GridHelper.RefreshAndAutoSizeExceptColumns(ultraGrid1, cols);//刷新Grid
//GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
}
public void QueryCheckConsignBaseDetailSampleNo(string path, ArrayList arrayList, OpeBase ob, string[] arrId, string[] plineCodes, string flag)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBaseDetailSampleNo", arrId == null ? new Object[] { arrayList, plineCodes } : new Object[] { arrayList, arrId, plineCodes, flag }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable4
}
///
/// 重取样加工未下发
///
///
///
///
///
public void QueryCheckConsignBaseDetailResample(string path, ArrayList arrayList, OpeBase ob, string[] arrId)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBaseDetailResample", arrId == null ? new Object[] { arrayList } : new Object[] { arrayList, arrId }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable4
}
///
/// SSC加工未下发
///
///
///
///
///
public void QueryCheckConsignBaseDetailSSC(string path, ArrayList arrayList, OpeBase ob, string[] arrId)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBaseDetailSSC", arrId == null ? new Object[] { arrayList } : new Object[] { arrayList, arrId }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable4
}
///
/// 查询检验委托明细信息(收样时间)
///
///
///
///
///
public void QueryCheckConsignBaseDetailReceiveTime(string path, ArrayList arrayList, OpeBase ob, string[] arrId, string[] plineCodes, string falg, string falg2)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignBaseDetailReceiveTime", arrId == null ? new Object[] { arrayList, plineCodes } : new Object[] { arrayList, arrId, plineCodes, falg, falg2 }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable4
}
///
/// 查询重取样
///
///
///
///
///
public void QueryResample(string path, ArrayList arrayList, OpeBase ob, string[] arrId, string[] plineCodes, string falg)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryResample", arrId == null ? new Object[] { arrayList, plineCodes } : new Object[] { arrayList, arrId, plineCodes, falg }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable4
}
//查询检验委托加工明细信息
///
/// 查询检验委托加工明细信息
///
///
///
///
public void QueryCheckConsignJGDetail(string path, ArrayList arrayList, OpeBase ob)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignJGDetail",
new Object[] { arrayList }, 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 QueryCheckConsignDetail(string path, ArrayList arrayList, OpeBase ob, int startNum)
{
//ultraGrid1.BeginUpdate();
DataTable dt = null;
if ("JG".Equals(arrayList[0].ToString()))
{
dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignDetailJG",
new Object[] { arrayList }, ob);
}
else
{
dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignDetail",
new Object[] { arrayList }, ob);
}
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
int dcNum = dataTable1.Columns.Count;//清除列
if (dcNum > startNum)
{
for (int i = 0; i < dcNum - startNum; i++)
{
dataTable1.Columns.RemoveAt(startNum);
}
}
return;
}
if (startNum == -1)
{
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable4
//GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
return;
}
ShowColumns(startNum, dt, dataTable1);
string row = "";//存放所有样管号判断是否有重复样管号
dataTable1.Rows.Clear();//清除行
DataRow newDr = dataTable1.NewRow();
foreach (DataRow dr in dt.Rows)
{
if (row.IndexOf(dr["SAMPLE_NO"].ToString()) < 0)//判断是否有重复样管号,有则不增加行只增加对应的列
{
row += dr["SAMPLE_NO"].ToString() + " ";
newDr = dataTable1.NewRow();
//newDr["FLAG"] = dr["FLAG"].ToString();
if (dataTable1.Columns.Contains("CHK"))
{
newDr["CHK"] = "True";
}
if (dataTable1.Columns.Contains("FLAG"))
{
newDr["FLAG"] = dr["FLAG"].ToString();
}
if (dataTable1.Columns.Contains("FLAG_DESC"))
{
newDr["FLAG_DESC"] = dr["FLAG_DESC"].ToString();
}
newDr["SAMPLE_NO"] = dr["SAMPLE_NO"].ToString();
if (dataTable1.Columns.Contains("SAMPLE_SIZE"))
{
newDr["SAMPLE_SIZE"] = dr["SAMPLE_SIZE"].ToString();
}
if (dataTable1.Columns.Contains("HEAD_MAT_NO"))
{
newDr["HEAD_MAT_NO"] = dr["HEAD_MAT_NO"].ToString();
}
if (dataTable1.Columns.Contains("BATCH_NO"))
{
newDr["BATCH_NO"] = dr["BATCH_NO"].ToString();
}
newDr[dr["PHY_CODE_MAX"].ToString()] = dr["SAMPLE_COUNT"].ToString();
//newDr["BATCH_NO"] = dr["BATCH_NO"].ToString();
dataTable1.Rows.Add(newDr);
}
else
{
newDr[dr["PHY_CODE_MAX"].ToString()] = dr["SAMPLE_COUNT"].ToString();
}
}
//ultraGrid1.EndUpdate();
ultraGrid1.DataBind();//dataTable发生变化提交给ultraGrid
//GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
RefreshAutoSize(startNum - 2);
}
//查询检验委托上传图片明细信息
///
/// 查询检验委托上传图片明细信息
///
///
///
///
public void QueryCheckConsignDetailFilePath(string path, ArrayList arrayList, OpeBase ob)
{
DataTable dt = PublicServer.GetData("com.steering.lims.data." + path + ".QueryCheckConsignDetailFilePath",
new Object[] { arrayList }, ob);
if (dt == null || dt.Rows.Count == 0)
{
dataTable1.Rows.Clear();
return;
}
GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable4
GridHelper.RefreshAndAutoSize(ultraGrid1);//刷新Grid
}
//自适应
private void RefreshAutoSize(int num)
{
if (num < 0)
{
return;
}
//ultraGrid1.DisplayLayout.Bands[0].Columns[0].Width = 80;
for (int i = num; i < ultraGrid1.DisplayLayout.Bands[0].Columns.Count; i++)
{
ultraGrid1.DisplayLayout.Bands[0].Columns[i].Width = 60;//设置列宽
}
}
///
/// 设置上传功能隐藏
///
public void setUltraTextEditor1Hidden()
{
ultraTextEditor1.ButtonsRight[0].Visible = false;
}
///
/// 增加列
///
/// 源DataTable
/// 需要增加的DataTable
public void AddColumns(int startNum, DataTable dt, DataTable dataTable)
{
if (dt != null && dt.Rows.Count > 0)
{
ultraGrid1.UpdateData();
int dcNum = dataTable.Columns.Count;//清除列
if (dcNum > startNum)//判断此列是否为空,如果不为空则不清除
{
bool isClear;
string strClear = "";//需要清除列拼接
foreach (DataColumn dCol in dataTable.Columns)
{
if (dataTable.Columns.IndexOf(dCol) < startNum)
{
continue;
}
isClear = true;
foreach (DataRow drR in dt.Rows)
{
//20151118
if (drR["PHY_CODE_MAX"].ToString() == dCol.ColumnName)
{
isClear = false;
break;
}
}
if (isClear == true)
{
strClear += dCol.ColumnName + " ";
//break;
}
}
if (strClear != "")
{
string[] arr = strClear.Split(' ');
for (int i = 0; i < arr.Length - 1; i++)
{
if (dataTable.Columns.Contains(arr[i]))
{
dataTable.Columns.Remove(arr[i]);
}
}
}
}
DataColumn dc;
foreach (DataRow dr in dt.Rows)//增加列
{
try
{
dc = new DataColumn(dr["PHY_CODE_MAX"].ToString());
dc.Caption = dr["PHY_NAME_MAX"].ToString();
dataTable.Columns.Add(dc);
}
catch
{
continue;
}
}
}
ultraGrid1.DataBind();//dataTable发生变化提交给ultraGrid
RefreshAutoSize(startNum - 2);
}
///
/// 显示列
///
/// 源DataTable
/// 需要增加的DataTable
public void ShowColumns(int startNum, DataTable dt, DataTable dataTable)
{
if (dt != null && dataTable != null)
{
int dcNum = dataTable.Columns.Count;//清除列
if (dcNum > startNum)
{
for (int i = 0; i < dcNum - startNum; i++)
{
dataTable.Columns.RemoveAt(startNum);
}
}
foreach (DataRow dr in dt.Rows)//增加列
{
try
{
//SAMPLE_KEY,SAMPLE_KEY_DESC
DataColumn dc = new DataColumn(dr["PHY_CODE_MAX"].ToString());
if (dr["PHY_CODE_MAX"].ToString() == "HX")
{
dc.Caption = "化学";
}
else if (dr["PHY_CODE_MAX"].ToString() == "ONH")
{
dc.Caption = "ONH";
}
else
{
dc.Caption = dr["PHY_NAME_MAX"].ToString();
}
dataTable.Columns.Add(dc);
}
catch
{
continue;
}
}
}
}
public void UpdateCheckConsignDetail(string path, OpeBase ob, DataRow[] arrBase, string strFlag, string user, string strDate, string strCondition, string strRemark)
{
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(strRemark);
alBaseParams.Add(strRemark);//样品备注row["SAMPLE_REMARK"].ToString()
alBaseParams.Add(strCondition);
alBaseParams.Add(row["PHY_CODE_MAX"].ToString());
alBaseParams.Add(row["SAMPLE_NO"].ToString());
alBaseParams.Add(row["CHECK_NO"].ToString());
alBase.Add(alBaseParams);
}
PublicServer.SetData("com.steering.lims.data." + path + ".UpdateCheckConsignDetail",
new Object[] { alBase }, ob);
}
public void UpdateCheckConsignDetailTH(string path, OpeBase ob, DataRow[] arrBase, string strFlag, string user, string strDate, string strCondition, string strRemark)
{
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(strRemark);
alBaseParams.Add(strRemark);//样品备注row["SAMPLE_REMARK"].ToString()
alBaseParams.Add(strCondition);
alBaseParams.Add(row["PHY_CODE_MAX"].ToString());
alBaseParams.Add(row["SAMPLE_NO"].ToString());
alBaseParams.Add(row["CHECK_NO"].ToString());
alBase.Add(alBaseParams);
}
PublicServer.SetData("com.steering.lims.data." + path + ".UpdateCheckConsignDetailTH",
new Object[] { alBase }, ob);
}
public void UpdateCheckConsignDetailHX(string path, OpeBase ob, DataRow[] arrBase, string strFlag, string user, string strDate, string strCondition, string strRemark)
{
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(strRemark);
alBaseParams.Add(strRemark);//样品备注row["SAMPLE_REMARK"].ToString()
alBaseParams.Add(strCondition);
alBaseParams.Add(row["PHY_CODE_MAX"].ToString());
alBaseParams.Add(row["SAMPLE_NO"].ToString());
alBaseParams.Add(row["CHECK_NO"].ToString());
alBase.Add(alBaseParams);
}
PublicServer.SetData("com.steering.lims.data." + path + ".UpdateCheckConsignDetailHX",
new Object[] { alBase }, ob);
}
///
/// 加入试验项目(strFlag)
///
///
///
///
/// 1-加入试验项目,2-取消加入
///
///
///
///
public void UpdateCheckConsignDetailLX(string path, OpeBase ob, DataRow[] arrBase, string strFlag, string user, string strDate, string strCondition, string strRemark)
{
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(strRemark);
alBaseParams.Add(strRemark);//样品备注row["SAMPLE_REMARK"].ToString()
alBaseParams.Add(strCondition);
alBaseParams.Add(row["PHY_CODE_MAX"].ToString());
alBaseParams.Add(row["SAMPLE_NO"].ToString());
alBaseParams.Add(row["CHECK_NO"].ToString());
alBase.Add(alBaseParams);
}
PublicServer.SetData("com.steering.lims.data." + path + ".UpdateCheckConsignDetailLX",
new Object[] { alBase }, ob);
}
private void ultraGrid1_AfterRowActivate(object sender, EventArgs e)
{
ur = ultraGrid1.ActiveRow;
if (PublicUltraGridDetailActive != null)
{
//ur = ultraGrid1.ActiveRow;
PublicUltraGridDetailActive(sender, e);//调用委托事件
}
}
private void ultraGrid1_CellChange(object sender, CellEventArgs e)
{
ultraGrid1.UpdateData();
if (e.Cell.Text == "" || e.Cell.Column.Key == "CHK" || e.Cell.Column.Key.IndexOf("SAMPLE") == 0)
{
return;
}
if (ultraGrid1.DisplayLayout.Bands[0].Columns.Exists("SAMPLE_NO") && e.Cell.Row.Cells["SAMPLE_NO"].Text.Trim() == "")
{
MessageUtil.ShowWarning("请先输入样管号!");
e.Cell.Value = "";
return;
}
if (e.Cell.Column.Key != "TS_SAMPLE_REMARK" && e.Cell.Column.Key != "TS_REMARK")
{
if (e.Cell.Text.Trim() != "" && StringUtil.IsInt32(e.Cell.Text.Trim()) == false)//HC 2015-07-30
{
MessageUtil.ShowWarning("此处必须要输入整数值或保留空白!");
e.Cell.Value = "";
return;
}
}
}
private void ultraGrid1_AfterSelectChange(object sender, AfterSelectChangeEventArgs e)
{
PublicPipeAndOutdec.SelectRow(ultraGrid1);
}
private void ultraTextEditor1_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
{
UltraGridRow row = ultraGrid1.ActiveRow;
string pathNum = "";
if (e.Button.Key.ToLower().Equals("select"))
{
if (ultraGrid1.ActiveCell.Column.Key == "FILE_PATH1")
{
//图片1
string filePath = row.GetValue("FILE_PATH1");
dlgOrderAskDown down = new dlgOrderAskDown(this.ob, filePath);
down.DeleteButton.Visible = false;
down.ShowDialog();
}
else if (ultraGrid1.ActiveCell.Column.Key == "FILE_PATH2")
{
//图片2
string filePath = row.GetValue("FILE_PATH2");
dlgOrderAskDown down = new dlgOrderAskDown(this.ob, filePath);
down.DeleteButton.Visible = false;
down.ShowDialog();
}
else if (ultraGrid1.ActiveCell.Column.Key == "FILE_PATH3")
{
//图片3
string filePath = row.GetValue("FILE_PATH3");
dlgOrderAskDown down = new dlgOrderAskDown(this.ob, filePath);
down.DeleteButton.Visible = false;
down.ShowDialog();
}
else if (ultraGrid1.ActiveCell.Column.Key == "FILE_PATH4")
{
//图片4
string filePath = row.GetValue("FILE_PATH4");
dlgOrderAskDown down = new dlgOrderAskDown(this.ob, filePath);
down.DeleteButton.Visible = false;
down.ShowDialog();
}
}
else if (e.Button.Key.ToLower().Equals("update"))
{
string path = "Inspection/" + row.GetValue("CHECK_NO") + "/";
//var serverFileList = FileHelper.Download(row.GetValue("PROCESS_FILE"));
List list = new List();
FileBean bean = new FileBean();
OpenFileDialog file = new OpenFileDialog();
file.Filter = "图片文件(*.jpg);(*.gif);(*.png);(*.bmp)|*.jpg;*.gif;*.png;*.bmp";
file.Title = "选择需要上传的图片";
file.Multiselect = false;
DialogResult drStat;
drStat = file.ShowDialog();
if (drStat == DialogResult.OK)
{
string filePath = file.FileName;
string fileName = System.IO.Path.GetFileName(filePath);
bean = new FileBean();
bean.setFileName(fileName);
bean.setPathName(path);
bean.setFile(FileHelper.FileToArray(filePath));
list.Add(bean);
bool isSuccess = Core.Mes.Client.Comm.Server.FileHelper.Upload(list);
if (isSuccess)
{
if (ultraGrid1.ActiveCell.Column.Key == "FILE_PATH1")
{
row.Cells["FILE_PATH1"].Value = path + fileName;
pathNum = "1";
}
else if (ultraGrid1.ActiveCell.Column.Key == "FILE_PATH2")
{
row.Cells["FILE_PATH2"].Value = path + fileName;
pathNum = "2";
}
else if (ultraGrid1.ActiveCell.Column.Key == "FILE_PATH3")
{
row.Cells["FILE_PATH3"].Value = path + fileName;
pathNum = "3";
}
else if (ultraGrid1.ActiveCell.Column.Key == "FILE_PATH4")
{
row.Cells["FILE_PATH4"].Value = path + fileName;
pathNum = "4";
}
row.Update();
int count = ServerHelper.SetData("com.steering.lims.data.outdec.PublicOutdecBase.UpdateFilePath", new object[] { row.Cells["CHECK_NO"].Value, row.Cells["SAMPLE_NO"].Value, row.Cells["PHY_CODE_MAX"].Value, pathNum, path + fileName }, this.ob);
//MscMsc_BackLog.UpdateProcessFile(row.GetValue("PROCESS_FILE"), msc, mscPline, process, ob);
MessageUtil.ShowTips("上传成功!");
}
else
{
MessageUtil.ShowTips("上传失败,请重试!");
}
}
}
}
private void ultraTextEditor2_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
{
UltraGridRow row = ultraGrid1.ActiveRow;
if (e.Button.Key.ToLower().Equals("select"))
{
if (ultraGrid1.ActiveCell.Column.Key == "CRAFT_PATH")
{
string filePath = row.GetValue("CRAFT_PATH");
PublicPipeAndOutdec.ViewCarft_No(filePath);
//dlgOrderAskDown down = new dlgOrderAskDown(this.ob, filePath);
//down.DeleteButton.Visible = false;
//down.ShowDialog();
}
}
}
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("LAB_PRINT_COUNT"))
{
if (int.Parse(e.Row.Cells["LAB_PRINT_COUNT"].Value.ToString3()) > 0)
{
e.Row.Appearance.BackColor = Color.LightGreen;
}
}
}
internal void Export(string title)
{
GridHelper.ulGridToExcel(ultraGrid1, title);
}
}
}