|
|
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using DevExpress.XtraEditors; using ICSSoft.Base.Language.Tool; using ICSSoft.Base.UserControl.MessageControl; using System.Data.SqlClient; using ICSSoft.Base.Config.AppConfig; using ICSSoft.Base.Report.Filter; using ICSSoft.Base.Config.DBHelper; using ICSSoft.Base.UserControl.FormControl; using ICSSoft.Base.ReferForm.AppReferForm; using ICSSoft.Frame.Data.BLL; using ICSSoft.Frame.Data.Entity;
namespace ICSSoft.Frame.APP { public partial class FormICSEQPDataInfoAdd : DevExpress.XtraEditors.XtraForm { private string sqltxt = ""; private string sqlconn = ""; String guid = AppConfig.GetGuid(); private DataTable dataSource = null;
#region 构造函数
public FormICSEQPDataInfoAdd() { InitializeComponent(); this.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); this.WindowState = FormWindowState.Maximized; } #endregion
#region 移动窗体
private const int WM_NCHITTEST = 0x84; private const int HTCLIENT = 0x1; private const int HTCAPTION = 0x2; //首先必须了解Windows的消息传递机制,当有鼠标活动消息时,
//系统发送WM_NCHITTEST 消息给窗体作为判断消息发生地的根据。 nchittest
//假如你点击的是标题栏,窗体收到的消息值就是 HTCAPTION ,
//同样地,若接受到的消息是 HTCLIENT,说明用户点击的是客户区,也就是鼠标消息发生在客户区。
//重写窗体,使窗体可以不通过自带标题栏实现移动
protected override void WndProc(ref Message m) {
//当重载窗体的 WndProc 方法时,可以截获 WM_NCHITTEST 消息并改些该消息,
//当判断鼠标事件发生在客户区时,改写改消息,发送 HTCAPTION 给窗体,
//这样,窗体收到的消息就时 HTCAPTION ,在客户区通过鼠标来拖动窗体就如同通过标题栏来拖动一样。
//注意:当你重载 WndProc 并改写鼠标事件后,整个窗体的鼠标事件也就随之改变了。
switch (m.Msg) { case WM_NCHITTEST: base.WndProc(ref m); if ((int)m.Result == HTCLIENT) m.Result = (IntPtr)HTCAPTION; return; } //拦截双击标题栏、移动窗体的系统消息
if (m.Msg != 0xA3) { base.WndProc(ref m); }
} #endregion
#region SystemOptition
/// <summary>
/// 操作权限
/// </summary>
/// <returns></returns>
public DataTable RightOfExute() { DataTable rData = new DataTable(); rData.Columns.Add("BtnName"); rData.Columns.Add("ActionName"); //查看权限(必须有)
DataRow seeRow = rData.NewRow(); seeRow["BtnName"] = "see"; seeRow["ActionName"] = "查看"; rData.Rows.Add(seeRow);
List<Control> ControlList = new List<Control>(); //ControlList.Add(btnConfig);
ControlList.Add(btnSave); //ControlList.Add(btnEdit);
//ControlList.Add(btnDelLable);
foreach (Control ctr in ControlList) {
if (ctr.GetType() == typeof(SimpleButton)) { DataRow dr = rData.NewRow(); dr["BtnName"] = ctr.Name; dr["ActionName"] = ctr.Text; rData.Rows.Add(dr); } }
rData.AcceptChanges(); return rData; } /// <summary>
/// 数据权限
/// </summary>
/// <returns></returns>
public DataTable RightOfData() { DataTable rData = new DataTable(); rData.Columns.Add("BodyName"); rData.Columns.Add("ControlName"); rData.Columns.Add("ControlCaption");
rData.AcceptChanges(); return rData; } #endregion
#region 退出
private void btnClose_Click(object sender, EventArgs e) { AppConfig.CloseFormShow(this.Text); this.Close(); }
private void btnExit_Click(object sender, EventArgs e) { AppConfig.CloseFormShow(this.Text); this.Close(); } #endregion
#region 分页
private void rptPage_PageIndexChanged(object Sender, EventArgs e) {
DataTable data = AppConfig.GetPageData(dataSource, rptPage.PageIndex, rptPage.PageSize).Copy(); //DataTable data = AppConfig.GetPageDataByDb(tempTableName, "pagerowindex", rptPage.PageSize, rptPage.PageIndex, dataSource.Rows.Count);
grdDetail.DataSource = data; } #endregion
#region 全选
private void btnSelect_Click(object sender, EventArgs e) { for (int i = 0; i < grvDetail.RowCount; i++) { grvDetail.SetRowCellValue(i, colisSelect, "Y"); } } #endregion
#region 全消
private void btnCanSelect_Click(object sender, EventArgs e) { for (int i = 0; i < grvDetail.RowCount; i++) { grvDetail.SetRowCellValue(i, colisSelect, ""); } } #endregion
//#region 刷新
//private void btnFalsh_Click(object sender, EventArgs e)
//{
// if (sqlconn == null || sqlconn == "")
// {
// return;
// }
// DevExpress.Utils.WaitDialogForm _wait = new DevExpress.Utils.WaitDialogForm("正在查找...请稍等...");
// try
// {
// _wait.Show();
// FormFilter filter = new FormFilter(AppConfig.GetSourceId(this.Tag.ToString(), btnConfig.Name), false);
// filter.OldTempTableName = tempTableName;
// //tempTableName = filter.NewTempTableName;
// //DataTable data = DBHelper.ExecuteDataset(AppConfig.FrameConnectString, CommandType.Text, "select * from " + tempTableName).Tables[0];
// dataSource = DBHelper.ExecuteDataset(sqlconn, CommandType.Text, sqltxt).Tables[0];
// grdDetail.DataSource = dataSource;
// grvDetail.BestFitColumns();
// rptPage.RecordNum = dataSource.Rows.Count;
// rptPage.PageIndex = 1;
// rptPage.ReLoad();
// _wait.Close();
// }
// catch (Exception ex)
// {
// MessageBox.Show("异常:" + ex.Message, "异常", MessageBoxButtons.OK, MessageBoxIcon.Error);
// _wait.Close();
// }
//}
//#endregion
#region 列表
private void grvDetail_CustomDrawRowIndicator(object sender, DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs e) { if (e.Info.IsRowIndicator && e.RowHandle >= 0) e.Info.DisplayText = (e.RowHandle + 1).ToString(); } #endregion
#region 双击选择
private void grvDetail_DoubleClick(object sender, EventArgs e) { if (grvDetail.FocusedRowHandle < 0) { return; } if (grvDetail.FocusedColumn == colisSelect) { if (grvDetail.GetRowCellValue(grvDetail.FocusedRowHandle, colisSelect).ToString() == "") { grvDetail.SetRowCellValue(grvDetail.FocusedRowHandle, colisSelect, "Y"); } else { grvDetail.SetRowCellValue(grvDetail.FocusedRowHandle, colisSelect, ""); }
} } #endregion
//#region 删除
//private void btnDel_Click(object sender, EventArgs e)
//{
// grvDetail.PostEditor();
// this.Validate();
// if (grvDetail.RowCount == 0)
// return;
// SimpleButton btntemp = (SimpleButton)sender;
// if (AppConfig.GetUserExcuteRight(this.Tag.ToString(), btntemp.Name) == false)
// {
// ICSBaseSimpleCode.AppshowMessageBox("对不起您没有:" + btntemp.Text + "权限,请联系系统管理员!");
// }
// List<string> guidList = new List<string>();
// List<string> guidList1 = new List<string>();
// for (int i = 0; i < grvDetail.RowCount; i++)
// {
// if (grvDetail.GetRowCellValue(i, colisSelect).ToString() == "Y")
// {
// //guidList.Add(grvDetail.GetRowCellValue(i, colGUID).ToString());
// }
// }
// if (guidList.Count == 0)
// {
// ICSBaseSimpleCode.AppshowMessageBox("请选择数据!");
// return;
// }
// if (ICSBaseSimpleCode.AppshowMessageBoxRepose("确定删除该设备保养计划吗?删除后无法恢复,确定吗?") != DialogResult.OK)
// return;
// try
// {
// ICSEQPMaintainPlanBLL.delete(guidList);
// ICSBaseSimpleCode.AppshowMessageBox(0, "删除成功");
// }
// catch (Exception ex)
// {
// ICSBaseSimpleCode.AppshowMessageBox(ex.Message);
// }
// btnFalsh_Click(null, null);
//}
//#endregion
private void repositoryItemCheckEdit1_QueryCheckStateByValue(object sender, DevExpress.XtraEditors.Controls.QueryCheckStateByValueEventArgs e) { string val = ""; if (e.Value != null) { val = e.Value.ToString(); } else { val = "False";//默认为不选
} switch (val) { case "True": e.CheckState = CheckState.Checked; break; case "False": e.CheckState = CheckState.Unchecked; break; //default:
// e.CheckState = CheckState.Checked;
// break;
} e.Handled = true; } private void repositoryItemCheckEdit1_QueryValueByCheckState(object sender, DevExpress.XtraEditors.Controls.QueryValueByCheckStateEventArgs e) { //if (e.CheckState == CheckState.Checked)
//{
// grvDetail.SetRowCellValue(grvDetail.FocusedRowHandle, colRESULT, 1);
//}
//else
//{
// grvDetail.SetRowCellValue(grvDetail.FocusedRowHandle, colRESULT, 0);
//}
} #region 保存
private void btnSave_Click(object sender, EventArgs e) { List<string> guidList = new List<string>(); for (int i = 0; i < grvDetail.RowCount; i++) { if (grvDetail.GetRowCellValue(i, colisSelect).ToString() == "Y") { guidList.Add(grvDetail.GetRowCellValue(i, colEQPCode).ToString()); }
} if (guidList.Count == 0) { ICSBaseSimpleCode.AppshowMessageBox("请选择数据!"); return; } for (int i = 0; i < grvDetail.RowCount; i++) { if (grvDetail.GetRowCellValue(i, colisSelect).ToString() == "Y") { FormICSEQPDataUIModel equipmentInfo = new FormICSEQPDataUIModel(); equipmentInfo.GUID = AppConfig.GetGuid(); equipmentInfo.EQPID = grvDetail.GetRowCellValue(i, colEQPID).ToString(); equipmentInfo.EQPCode = grvDetail.GetRowCellValue(i, colEQPCode).ToString(); equipmentInfo.CKGROUP = grvDetail.GetRowCellValue(i, colCKGROUP).ToString(); equipmentInfo.CKItemCode = grvDetail.GetRowCellValue(i, colCKItemCode).ToString(); equipmentInfo.SetValueMax = grvDetail.GetRowCellValue(i, colSetValueMax).ToString(); equipmentInfo.SetValueMin = grvDetail.GetRowCellValue(i, colSetValueMin).ToString(); equipmentInfo.RealValue = grvDetail.GetRowCellValue(i, colRealValue).ToString(); equipmentInfo.UNIT = grvDetail.GetRowCellValue(i, colUNIT).ToString(); equipmentInfo.MUSER = AppConfig.UserId; equipmentInfo.MUSERName = AppConfig.UserName; equipmentInfo.MTIME = AppConfig.GetSeverDateTime("yyyy-MM-dd HH:mm:ss"); equipmentInfo.WorkPoint = AppConfig.WorkPointCode; equipmentInfo.EATTRIBUTE1 = null; try { ICSEQPDataBLL.Add(equipmentInfo, AppConfig.AppConnectString); //this.Close();
} catch (Exception ex) { ICSBaseSimpleCode.AppshowMessageBox(ex.Message); } } } ICSBaseSimpleCode.AppshowMessageBox("操作成功"); //btnFalsh_Click(null, null);
} #endregion
//private string getcheckeditvalue(object sender, EventArgs e)
//{
// //string result="";
// //if (repositoryItemCheckEdit1.Equals("True"))
// //{
// // result = "OK";
// //}
// //if (repositoryItemCheckEdit1.Equals("False"))
// //{
// // result = "NG";
// //}
// //return result;
//}
//#region 绑定数据源
//private void btnConfig_Click(object sender, EventArgs e)//绑定数据源
//{
// if (AppConfig.UserCode.ToLower() != "demo")
// {
// //ICSBaseSimpleCode.AppshowMessageBox("您没有权限设置数据源,请联系软件提供商!");
// return;
// }
// FormDataSource fdata = new FormDataSource(AppConfig.GetMenuId(this.Tag.ToString()), btnConfig.Name);
// fdata.ShowDialog();
//}
//#endregion
// private void FormICSShift_Load(object sender, EventArgs e)
// {
// try
// {
// string sql = @"select '' as [isSelect],
//
//b.EQPID as EQPID,
//b.EQPCode as EQPCode,
//b.EQPName as EQPName,
//c.CKGROUP as CKGROUP,
//c.CKGROUPDESC as CKGROUPDESC,
//d.CKITEMCODE as CKItemCode,
//d.CKITEMDESC as CKItemName,
//d.SetValueMax as SetValueMax,
//d.SetValueMin as SetValueMin,
//'' as RealValue,
//d.UNIT as UNIT
//
//
//from dbo.ICSEQPCHECKLIST a
//left join dbo.ICSEquipment b on a.EQPCode=b.EQPCode
//
//left join dbo.ICSOQCCKGROUP c on a.CKGROUP=c.CKGROUP
//left join dbo.ICSOQCCKGROUP2LIST e on c.CKGROUP=e.CKGROUP
//left join dbo.ICSOQCCKLIST d on e.CKITEMCODE=d.CKITEMCODE
//where 1=1
//order by b.EQPCode asc";
// DataTable ddf = DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
// grdDetail.DataSource = ddf;
// }
// catch (Exception ex)
// {
// MessageBox.Show("异常:" + ex.Message, "异常", MessageBoxButtons.OK, MessageBoxIcon.Error);
// }
// }
//#region 修改
//private void btnEdit_Click(object sender, EventArgs e)
//{
// SimpleButton btntemp = (SimpleButton)sender;
// if (AppConfig.GetUserExcuteRight(this.Tag.ToString(), btntemp.Name) == false)
// {
// ICSBaseSimpleCode.AppshowMessageBox("对不起您没有:" + btntemp.Text + "权限,请联系系统管理员!");
// return;
// }
// int count = 0;
// for (int i = 0; i < grvDetail.RowCount; i++)
// {
// if (grvDetail.GetRowCellValue(i, colisSelect).ToString() == "Y")
// {
// count++;
// }
// }
// if (count != 1)
// {
// ICSBaseSimpleCode.AppshowMessageBox("请选择数据,且只能选择一条进行编辑!!!");
// return;
// }
// try
// {
// string id;
// for (int i = 0; i < grvDetail.RowCount; i++)
// {
// if (grvDetail.GetRowCellValue(i, colisSelect).ToString() == "Y")
// {
// //id = grvDetail.GetRowCellValue(i, colGUID).ToString();
// //FormICSEQPMaintainPlanAdd add = new FormICSEQPMaintainPlanAdd(id);
// //add.ShowDialog();
// }
// }
// btnFalsh_Click(null, null);
// }
// catch (Exception ex)
// {
// //throw ex;
// ICSBaseSimpleCode.AppshowMessageBox(ex.Message);
// }
//}
//#endregion
private void btnOutPut_Click(object sender, EventArgs e) { try { FormOutExcel foe = new FormOutExcel(this.Tag.ToString(), grdDetail); foe.ShowDialog(); } catch (Exception ex) { MessageBox.Show("异常:" + ex.Message, "异常", MessageBoxButtons.OK, MessageBoxIcon.Error); } //FormOutExcel foe = new FormOutExcel();
//if (foe.ShowDialog() == DialogResult.OK)
//{
// try
// {
// string outtype = foe._OutType;
// string exceltype = foe._ExcelType;
// string filename = foe._FileName;
// string url = foe._Url;
// string sheetname = foe._SheetName;
// if (outtype.ToLower() == "excel")
// {
// DevExpress.XtraPrinting.XlsExportOptions op = new DevExpress.XtraPrinting.XlsExportOptions();
// op.SheetName = sheetname;
// grdDetail.MainView.ExportToXls((url + "\\" + filename + (exceltype == "2003" ? ".xls" : ".xlsx")), op);
// }
// else
// {
// grdDetail.MainView.ExportToPdf(url + "\\" + filename + ".pdf");
// }
// MessageBox.Show("导出成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
// }
// catch (Exception ex)
// {
// MessageBox.Show("异常:" + ex.Message, "异常", MessageBoxButtons.OK, MessageBoxIcon.Error);
// }
//}
}
private void grvDetail_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e) { if (e.RowHandle >= 0 && e.Column.FieldName == "SHIFTBTIME") {
e.DisplayText = ICSSoft.Frame.Helper.FormatHelper.ToTimeString(int.Parse(e.CellValue.ToString())); } if (e.RowHandle >= 0 && e.Column.FieldName == "SHIFTETIME") { e.DisplayText = ICSSoft.Frame.Helper.FormatHelper.ToTimeString(int.Parse(e.CellValue.ToString())); } }
#region 测试项目按钮
private void repositoryItemButtonEdit1_BottonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e) { ButtonEdit btn = (ButtonEdit)sender; string sql = "select 'OK' as 保养结果 union all select 'NG' as 保养结果 WHERE 1=1"; //object obj = AppConfig.InvokeWebservice(AppConfig.BaseServiceUri, "WebBaseService", "BaseService", "GetHuaRongErpConnectString", new object[] { });
//if (obj == null)
//{
// ICSBaseSimpleCode.AppshowMessageBox(1, "ERP数据库连接取得失败!");
//}
DataTable data = DBHelper.ExecuteDataset(AppConfig.AppConnectString.ToString(), CommandType.Text, sql).Tables[0]; FormDataRefer reForm = new FormDataRefer(); reForm.FormTitle = "保养结果"; DataTable menuData = data; reForm.DataSource = menuData; reForm.MSelectFlag = false; reForm.RowIndexWidth = 35; reForm.HideCols.Add("ID"); reForm.FormWidth = 500; reForm.FormHeight = 500; //reForm.FilterKey = btn.Text;
//grvDetail.GetRowCellValue(grvDetail.FocusedRowHandle, grvDetail.FocusedColumn).ToString().Trim();
if (reForm.ShowDialog() == DialogResult.OK) { DataTable retData = reForm.ReturnData; foreach (DataRow dr in retData.Rows) { if (grvDetail.FocusedColumn == colCKGROUPDESC) {
grvDetail.SetRowCellValue(grvDetail.FocusedRowHandle, colCKGROUPDESC, dr["保养结果"].ToString());
} } }
}
#endregion
#region 设备编号按钮
private void txtEQPCode_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e) { ButtonEdit btn = (ButtonEdit)sender; string sql = "select distinct EQPID as [设备ID],EQPCode as [设备编号],EQPName as [设备名称] from dbo.ICSEquipment with(nolock) WHERE 1=1"; //object obj = AppConfig.InvokeWebservice(AppConfig.BaseServiceUri, "WebBaseService", "BaseService", "GetHuaRongErpConnectString", new object[] { });
//if (obj == null)
//{
// ICSBaseSimpleCode.AppshowMessageBox(1, "ERP数据库连接取得失败!");
//}
DataTable data = DBHelper.ExecuteDataset(AppConfig.AppConnectString.ToString(), CommandType.Text, sql).Tables[0]; FormDataRefer reForm = new FormDataRefer(); reForm.FormTitle = "设备信息"; DataTable menuData = data; reForm.DataSource = menuData; reForm.MSelectFlag = false; reForm.RowIndexWidth = 35; reForm.HideCols.Add("设备ID"); reForm.FormWidth = 500; reForm.FormHeight = 500; //reForm.FilterKey = btn.Text;
//grvDetail.GetRowCellValue(grvDetail.FocusedRowHandle, grvDetail.FocusedColumn).ToString().Trim();
if (reForm.ShowDialog() == DialogResult.OK) { DataTable retData = reForm.ReturnData; foreach (DataRow dr in retData.Rows) { txtEQPCode.Text = dr["设备编号"].ToString();
} } } #endregion
#region 检验项目组按钮
private void txtCKGROUP_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e) { ButtonEdit btn = (ButtonEdit)sender; string sql = @"select distinct a.CKGROUP as [检验项目组],a.CKGROUPDESC as [检验项目组描述]
from dbo.ICSOQCCKGROUP a left join dbo.ICSEQPCHECKLIST b on a.CKGROUP=b.CKGROUP WHERE b.EQPCode='" + txtEQPCode.Text + "' and 1=1";
//object obj = AppConfig.InvokeWebservice(AppConfig.BaseServiceUri, "WebBaseService", "BaseService", "GetHuaRongErpConnectString", new object[] { });
//if (obj == null)
//{
// ICSBaseSimpleCode.AppshowMessageBox(1, "ERP数据库连接取得失败!");
//}
DataTable data = DBHelper.ExecuteDataset(AppConfig.AppConnectString.ToString(), CommandType.Text, sql).Tables[0]; FormDataRefer reForm = new FormDataRefer(); reForm.FormTitle = "检验项目组信息"; DataTable menuData = data; reForm.DataSource = menuData; reForm.MSelectFlag = false; reForm.RowIndexWidth = 35; reForm.HideCols.Add("设备ID"); reForm.FormWidth = 500; reForm.FormHeight = 500; //reForm.FilterKey = btn.Text;
//grvDetail.GetRowCellValue(grvDetail.FocusedRowHandle, grvDetail.FocusedColumn).ToString().Trim();
if (reForm.ShowDialog() == DialogResult.OK) { DataTable retData = reForm.ReturnData; foreach (DataRow dr in retData.Rows) { txtCKGROUP.Text = dr["检验项目组"].ToString();
} } searchinfo(txtEQPCode.Text, txtCKGROUP.Text);
} #endregion
private void searchinfo(string eqpcode, string ckgroup) { try { string sql = @"select '' as [isSelect],
b.EQPID as EQPID, b.EQPCode as EQPCode, b.EQPName as EQPName, c.CKGROUP as CKGROUP, c.CKGROUPDESC as CKGROUPDESC, d.CKITEMCODE as CKItemCode, d.CKITEMDESC as CKItemName, d.SetValueMax as SetValueMax, d.SetValueMin as SetValueMin, '' as RealValue, d.UNIT as UNIT
from dbo.ICSEQPCHECKLIST a left join dbo.ICSEquipment b on a.EQPCode=b.EQPCode
left join dbo.ICSOQCCKGROUP c on a.CKGROUP=c.CKGROUP left join dbo.ICSOQCCKGROUP2LIST e on c.CKGROUP=e.CKGROUP left join dbo.ICSOQCCKLIST d on e.CKITEMCODE=d.CKITEMCODE where b.EQPCode='" + eqpcode + "' and c.CKGROUP='" + ckgroup + "' and 1=1";
DataTable ddf = DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
grdDetail.DataSource = ddf; } catch (Exception ex) { MessageBox.Show("异常:" + ex.Message, "异常", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
} }
|