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 WMS.Frm.Base; using WMS.Common; using WMS.Model.Base; using WMS.Ctrl; using System.Text.RegularExpressions; using System.IO; using DevExpress.XtraGrid.Views.Base; using DevExpress.XtraGrid.Columns; using DevExpress.XtraEditors.Repository; using WMS.Model.SystemManage; using WMS.Frm; using NPOI.SS.UserModel; using NPOI.HSSF.UserModel; using System.Collections; using System.Threading; using DevExpress.XtraReports.UI; using WMS.Business; using WMS.Business.Base; using WMS.Business.SystemManage; using WMS.FrmPrint; using WMS.Business.RK; using DevExpress.DocumentServices.ServiceModel.DataContracts; namespace WMS.FrmBaseData { public partial class FrmPallet : FormBase { #region 全局变量声明 /// /// 容器Model /// PalletModel model; /// /// 容器Model 集合(数据绑定) /// List list; /// /// 容器Model集合(批量新增) /// List sourceList; /// /// 容器管理Model /// FrmBaseCtlGoods baseCtlGoods; /// /// 复选框选中数据集合 /// List CheckList; /// /// 加一个int变量主要为了判断是否有checkbox选中项 /// //int i = 0; /// /// 体积累加 /// //decimal sumVolume; /// /// 表头全选判断 /// bool m_status = false; /// /// 容器生成类型头文件拼音简称 /// string PalletName = ""; /// /// 标示符 0批量新增 1:修改 /// int flag = 0; string path = string.Empty; private HSSFWorkbook _workbook; private ISheet _sheet; List tabletolist; #endregion #region 构造函数 /// /// 无参构造 /// public FrmPallet() { InitializeComponent(); ChangeControlState(false); } /// /// 有参构造 /// /// public FrmPallet(FrmBaseCtlGoods frmParent) { InitializeComponent(); baseCtlGoods = frmParent; //显示按钮 this.btnSave.Visible = true; } #endregion #region 窗体加载 /// /// 窗体加载 /// /// /// private void FrmPallet_Load(object sender, EventArgs e) { // WMS.Model.Base.PalletModel //通用查询 继承自 FormBase.cs 窗体 FrmSelectModle = new PalletModel(); BindPalletData(); lkpPalletType.LoadData(); //默认加载第一项 this.txtStart.Text = null; this.txtEnd.Text = null; this.txtNum.Text = null; if (frmButtonItem.ContainsKey("Print")) { frmButtonItem["Print"].Enabled = true; } if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = true; } if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; } if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = true; } if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = true; } if (frmButtonItem.ContainsKey("Refresh")) { frmButtonItem["Refresh"].Enabled = true; } if (frmButtonItem.ContainsKey("Export")) { frmButtonItem["Export"].Enabled = true; } if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = false; } if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; } } #endregion #region 事件 #region 没有查询到数据时,提示没有查询到符合条件的数据 /// /// 未查询到数据时 的提示 /// /// /// private void gridViewPallet_CustomDrawEmptyForeground(object sender, DevExpress.XtraGrid.Views.Base.CustomDrawEventArgs e) { ColumnView columnView = sender as ColumnView; BindingSource bindingSource = this.gridViewPallet.DataSource as BindingSource; if (bindingSource.Count == 0) { string str = "<对不起,没有符合的数据!>"; Font f = new Font("宋体", 11, FontStyle.Regular); Rectangle r = new Rectangle(e.Bounds.Top + 25, e.Bounds.Left + 25, e.Bounds.Right - 25, e.Bounds.Height - 25); e.Graphics.DrawString(str, f, Brushes.Gray, r); } } #endregion #region CheckBox全选的实现:3事件 /// /// Click 事件 调用DevControlHelper 帮助类 /// /// /// private void gridViewPallet_Click(object sender, EventArgs e) { //if (DevControlHelper.ClickGridCheckBox(this.gridViewPallet, "IsCheck", m_status)) //{ // m_status = !m_status; //} } /// /// CustomDrawColumnHeader 事件 /// /// /// private void gridViewPallet_CustomDrawColumnHeader(object sender, DevExpress.XtraGrid.Views.Grid.ColumnHeaderCustomDrawEventArgs e) { //if (e.Column != null && e.Column.FieldName == "IsCheck") //{ // e.Info.InnerElements.Clear(); // e.Painter.DrawObject(e.Info); // DevControlHelper.DrawCheckBox(e, m_status); // e.Handled = true; //} } /// /// DataSourceChanged 事件 /// /// /// private void gridViewPallet_DataSourceChanged(object sender, EventArgs e) { //GridColumn column = this.gridViewPallet.Columns.ColumnByFieldName("IsCheck"); //if (column != null) //{ // column.Width = 80; // column.OptionsColumn.ShowCaption = m_status; // column.ColumnEdit = new RepositoryItemCheckEdit(); //} } #endregion #region decimal类型文本框 click事件 //数量 private void txtNum_Click(object sender, EventArgs e) { this.txtNum.SelectionStart = 0; this.txtNum.SelectAll(); } //长 private void txtPalletLong_Click(object sender, EventArgs e) { //光标起始位置 this.txtPalletLong.SelectionStart = 0; //文本全选 this.txtPalletLong.SelectAll(); } //宽 private void txtWidth_Click(object sender, EventArgs e) { this.txtWidth.SelectionStart = 0; this.txtWidth.SelectAll(); } //高 private void txtHeight_Click(object sender, EventArgs e) { this.txtHeight.SelectionStart = 0; this.txtHeight.SelectAll(); } //承载重量 private void txtBearweight_Click(object sender, EventArgs e) { this.txtBearweight.SelectionStart = 0; this.txtBearweight.SelectAll(); } #endregion #region 界面隐藏按钮Click事件 /// /// Click 事件 该按钮隐藏 当EnterNextControl属性 到该按钮后触发 /// /// /// private void btnSave_Click(object sender, EventArgs e) { if (frmButtonItem["Save"].Enabled == true) { Save(); } } #endregion #endregion #region 辅助方法 #region 公共菜单 按钮 方法 /// /// 新增按钮 /// public void Add() { flag = 0; if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = true; } if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = false; } if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = true; } ChangeControlState(true); } /// /// 更新编辑修改按钮 /// public void Edit() { flag = 1; ChangeControlState(true); if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = true; } if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = true; } if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = false; } this.txtStart.Enabled = false; this.txtNum.Enabled = false; this.txtEnd.Enabled = false; } /// /// 删除按钮 /// public void Del() { if (DialogResult.Yes == SystemCommon.ShowMessageBoxResult("确定要删除选中容器数据吗?")) { DelPallet(); } } /// /// 查询按钮 /// public void Search() { FrmSelect frm = new FrmSelect(this.FrmSelectModle); if (frm.ShowDialog() == System.Windows.Forms.DialogResult.OK) { this.LoadListData(frm.SelectData); } } /// /// 刷新按钮 /// public void Refresh() { BindPalletData(); lkpPalletType.LoadData(); this.lkpPalletType.ItemIndex = 0; this.lkpPalletType.Focus(); this.txtStart.Text = null; this.txtEnd.Text = null; this.txtNum.Text = null; //if (frmButtonItem.ContainsKey("Print")) { frmButtonItem["Print"].Enabled = false; } if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = true; } if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; } if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = true; } if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = true; } if (frmButtonItem.ContainsKey("Refresh")) { frmButtonItem["Refresh"].Enabled = true; } if (frmButtonItem.ContainsKey("Export")) { frmButtonItem["Export"].Enabled = true; } if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = false; } if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; } } /// /// 清空按钮 /// public void Clear() { bgsCondition.DataSource = new PalletModel(); if (flag == 0) { this.txtEnd.Text = string.Empty; this.txtNum.Text = string.Empty; this.cDictionaryUser.TextBoxFlag = string.Empty; this.cDictionaryUser.TextBoxValue = string.Empty; } else if (flag == 1) { this.txtStart.Text = string.Empty; this.txtEnd.Text = string.Empty; this.txtNum.Text = string.Empty; this.cDictionaryUser.TextBoxFlag = string.Empty; this.cDictionaryUser.TextBoxValue = string.Empty; } } /// /// 数据导出到Excel /// public void Export() { DataToExcel(); } /// /// 打印按钮 /// public void Print() { if (gridViewPallet.GetSelectedRows().Length == 0) { SystemCommon.ShowInfoMessageBox("选择要打印的数据"); return; } LoadForm load = new LoadForm(); DevExpress.XtraSplashScreen.SplashScreenManager.ShowForm(load, load.GetType(), false, true, false, 0); DevExpress.XtraSplashScreen.SplashScreenManager.Default.SetWaitFormDescription("正在打印条码请稍候...."); List pritModel = new List(); int[] selct = gridViewPallet.GetSelectedRows(); for (int i = 0; i < selct.Length; i++) { int idx = selct[i]; string printId = gridViewPallet.GetRowCellValue(idx, "PALLET_ID").ToString(); // PalletModel print = gridViewPallet.GetDataRow(i) as PalletModel; if (!string.IsNullOrEmpty(printId)) { //BarCodeReport br = new BarCodeReport(); //br.GetInstance(printId, 10); BarCodeReport br2 = new BarCodeReport(); br2.GetInstance(printId, 10); IBussFactory.Instance().UpdateCtl(printId); } } DevExpress.XtraSplashScreen.SplashScreenManager.CloseForm(); } /// /// 保存 /// public void Save() { OperotePallet(); } /// /// 导入 /// public void Import() { OpenFileDialog fileDialog = new OpenFileDialog(); fileDialog.Title = "导入容器资料"; fileDialog.Filter = "Excel文件(*.xls;*.xlsx)|*.xls;*.xlsx"; DialogResult dialogResult = fileDialog.ShowDialog(this); if (dialogResult == DialogResult.OK) { Hashtable ht = new Hashtable(); ht.Add("PALLET_ID", "容器编号"); ht.Add("PALLET_NAME", "容器名称"); ht.Add("PALLET_TYPE", "容器型号"); ht.Add("PALLET_LONG", "长"); ht.Add("PALLET_WIDTH", "宽"); ht.Add("PALLET_HEIGHT", "高"); ht.Add("VOLUME", "容积"); ht.Add("BEARWEIGHT", "承载重量"); ht.Add("STATUS", "状态"); ht.Add("USER_ID", "占用人"); ht.Add("OPERATORID", "操作人"); ht.Add("OPERATEDATE", "操作日期"); ht.Add("REMARK", "备注"); List addList = NPOIHelper.Import(fileDialog, ht); //将addList存入数据库 if (addList != null && addList.Count > 0) { string errText = string.Empty; try { errText = IBussFactory.Instance().OperatePallet(addList, 0); if (string.IsNullOrEmpty(errText)) { Refresh(); } else { SystemCommon.ShowErrorMessageBox("导入失败:" + errText); } } catch (Exception ex) { SystemCommon.ShowErrorMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们! " + ex); } } } } #region 导入Excel 数据 /// /// 导入Excel 到数据 /// public void Audit() { if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK) { path = openFileDialog1.FileName; ReadExecl(path); } tabletolist = ConvertHelper.ConvertToList(table); bgsPallet.DataSource = tabletolist; this.gridViewPallet.RefreshData(); } DataTable table = new DataTable(); private DataTable ReadExecl(string path) { try { using (FileStream stream = new FileStream(path, FileMode.Open, FileAccess.Read)) { //HSSFWorkbook:是操作Excel2003以前(包括2003)的版本,扩展名是.xls //XSSFWorkbook:是操作Excel2007的版本,扩展名是.xlsx _workbook = new HSSFWorkbook(stream); //_xworkbookl = new XSSFWorkbook(stream); _sheet = _workbook.GetSheetAt(0); IRow headerRow = _sheet.GetRow(0);//第一行为标题行 int cellCount = headerRow.LastCellNum;//LastCellNum = PhysicalNumberOfCells int rowCount = _sheet.LastRowNum;//LastRowNum = PhysicalNumberOfRows - 1 for (int i = headerRow.FirstCellNum; i < cellCount; i++) { DataColumn column = new DataColumn(headerRow.GetCell(i).StringCellValue); table.Columns.Add(column); } for (int i = (_sheet.FirstRowNum + 1); i <= rowCount; i++) { IRow row = _sheet.GetRow(i); DataRow dataRow = table.NewRow(); if (row != null) { for (int j = row.FirstCellNum; j < cellCount; j++) { if (row.GetCell(j) != null) { dataRow[j] = row.GetCell(j).ToString(); } } } table.Rows.Add(dataRow); } return table; } } catch (Exception e) { SystemCommon.ShowErrorMessageBox("读取EXCEL失败!" + e.Message); return table; } } #endregion #endregion #region 通用查询方法 /// /// 通用查询 方法 /// /// public override void LoadListData(DataTable table) { list = ConvertHelper.ConvertToList(table); bgsPallet.DataSource = list; gridViewPallet.RefreshData(); } #endregion private void BindPalletData2() { DataTable dt = IBussFactory.Instance().GetCtl(0); if (dt != null) { gridControlCustomPallet.DataSource = dt; } } #region 数据绑定 /// /// 绑定容器数据 /// private void BindPalletData() { string datetime = System.DateTime.Now.ToString("yyyyMMdd"); DataTable dt = IBussFactory.Instance().GetCtl(int.Parse(datetime)); if (dt != null) { if (dt.Rows.Count > 0) { gridControlCustomPallet.DataSource = dt; } else { int seqid = 1; string BarCode = "323" + datetime + seqid.ToString("0000"); IBussFactory.Instance().Insert_T_BASE_PALLET(323, int.Parse(datetime), seqid, BarCode); BindPalletData2(); } } //ShowSplashForm("数据加载中"); //model = new PalletModel(); //model.STATUS = "0"; //new Thread(delegate () //{ // try // { // this.Invoke(new MethodInvoker(delegate // { // //list = IBussFactory.Instance().GetPalletList(model); // //if (list.Count != 0) // //{ // // bgsPallet.DataSource = list; // //} // //bgsPallet.DataSource = list; // //this.gridViewPallet.RefreshData(); // //CloseSplashForm(); // })); // } // catch (Exception ex) // { // SystemCommon.ShowErrorMessageBox("GetPalletList出错了:" + ex.Message); // } //}).Start(); } private static void ShowSplashForm(string msg) { try { LoadForm load = new LoadForm(); DevExpress.XtraSplashScreen.SplashScreenManager.ShowForm(load, load.GetType(), false, true, false, 70); DevExpress.XtraSplashScreen.SplashScreenManager.Default.SetWaitFormDescription(msg); } catch (Exception ex) { } } private static void CloseSplashForm() { try { DevExpress.XtraSplashScreen.SplashScreenManager.CloseForm(); } catch (Exception ex) { } } #endregion #region 删除 /// /// 删除容器数据 /// private void DelPallet() { List dellist = new List(); int[] selectRows = this.gridViewPallet.GetSelectedRows(); this.lblType.Focus(); foreach (int j in selectRows) { model = new PalletModel(); model = this.gridViewPallet.GetRow(j) as PalletModel; dellist.Add(model); } if (dellist.Count == 0) { SystemCommon.ShowInfoMessageBox("请先选择要删除的数据!"); return; } try { string errText = IBussFactory.Instance().PalletDel(dellist); if (errText == "") { SystemCommon.ShowInfoMessageBox("删除成功!"); } else { SystemCommon.ShowInfoMessageBox("删除失败!"); } } catch (Exception ex) { SystemCommon.ShowErrorMessageBox("网络连接错误!请检查当前网络环境是否可用!"); } BindPalletData(); if (list != null) { if (list.FindAll(r => r.PALLET_TYPE == this.lkpPalletType.EditValue.ToString()).Count() == 0) { model = new PalletModel(); model.PALLET_TYPE = this.lkpPalletType.EditValue.ToString(); bgsCondition.DataSource = model; bgsPallet.DataSource = null; } else { bgsPallet.DataSource = list.FindAll(r => r.PALLET_TYPE == this.lkpPalletType.EditValue.ToString()); } } } #endregion #region 更新保存 /// /// 更新容器数据 /// /// 1:修改 private void FrmOperator(int flag) { try { string errtex = IBussFactory.Instance().OperatePalletList(CheckList, flag); if (!string.IsNullOrEmpty(errtex)) { SystemCommon.ShowInfoMessageBox("操作失败!"); } else { SystemCommon.ShowInfoMessageBox("操作成功!"); } } catch (Exception ex) { SystemCommon.ShowErrorMessageBox("网络连接错误!请检查当前网络环境是否可用!"); } BindPalletData(); if (list != null) { bgsPallet.DataSource = list.FindAll(r => r.PALLET_TYPE == this.lkpPalletType.EditValue.ToString()); } } #endregion #region 导出数据到Excel文件方法 /// /// 导出数据到Excel /// private void DataToExcel() { SaveFileDialog fileDialog = new SaveFileDialog(); fileDialog.Title = "导出Excel"; fileDialog.Filter = "Excel文件(*.xls)|*.xls"; DialogResult dialogResult = fileDialog.ShowDialog(this); if (dialogResult == DialogResult.OK) { DevExpress.XtraPrinting.XlsExportOptions options = new DevExpress.XtraPrinting.XlsExportOptions(); gridControlCustomPallet.ExportToXls(fileDialog.FileName); DevExpress.XtraEditors.XtraMessageBox.Show("保存成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); } } #endregion private void ExcelToGridView() { OpenFileDialog openDialog = new OpenFileDialog(); openDialog.Title = "导入Excel"; openDialog.Filter = "Excel文件(*.xls)|*.xls"; DialogResult dialogResult = openDialog.ShowDialog(this); // NPOI.HSSF.UserModel.HSSFWorkbook.Create(). } #region 打印方法 /// /// 打印方法 /// private void DataPrint() { //BarCodeReport BR = new BarCodeReport(); //打印方法 暂无 SystemCommon.ShowInfoMessageBox("打印功能暂无!"); } #endregion #region 批量新增容器资料 #region 批量新增 /// /// 批量新增 /// /// private void CreateMore(int flag) { string str = ""; sourceList = new List(); int row = Convert.ToInt32(this.txtNum.Text.Trim()); int star = Convert.ToInt32(this.txtStart.Text.Trim()); if (row >= 1) { for (int i = star; i < row + star; i++) { str = PalletName + i.ToString().PadLeft(txtStart.Text.Length, '0'); str = PalletNumberCount(str); } } else { SystemCommon.ShowInfoMessageBox("请您输入正确数量!"); } try { string errtex = IBussFactory.Instance().OperatePallet(sourceList, flag); if (!string.IsNullOrEmpty(errtex)) { SystemCommon.ShowInfoMessageBox("操作失败!" + errtex); } else { SystemCommon.ShowInfoMessageBox("操作成功!"); if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; } } } catch (Exception ex) { SystemCommon.ShowErrorMessageBox("出错了BussPallet.OperatePallet:" + ex.Message); } BindPalletData(); if (list != null) { bgsPallet.DataSource = list.FindAll(r => r.PALLET_TYPE == this.lkpPalletType.EditValue.ToString()); } } #endregion #region 根据 传入参数判断生成数据格式 /// /// 获得批量新增集合 容器ID 递增 /// /// 参数 :用于判断生成的格式 /// private string PalletNumberCount(string str) { model = new PalletModel(); model.PALLET_ID = str; model.PALLET_NAME = ""; model.PALLET_TYPE = this.lkpPalletType.EditValue.ToString(); model.PALLET_LONG = Convert.ToDecimal(this.txtPalletLong.Text); model.PALLET_WIDTH = Convert.ToDecimal(this.txtWidth.Text); model.PALLET_HEIGHT = Convert.ToDecimal(this.txtHeight.Text); model.VOLUME = Convert.ToDecimal(Convert.ToDecimal(this.txtPalletLong.Text) * Convert.ToDecimal(this.txtWidth.Text) * Convert.ToDecimal(this.txtHeight.Text)); model.BEARWEIGHT = Convert.ToDecimal(this.txtBearweight.Text); model.STATUS = this.rdoPalletStatus.EditValue.ToString(); model.USER_ID = this.cDictionaryUser.TextBoxFlag; model.NAME = this.cDictionaryUser.TextBoxValue; model.OPERATORID = userData.USER_ID; model.OPERATEDATE = DateTime.Now; model.REMARK = this.txtRemark.Text; sourceList.Add(model); str = string.Empty; return str; } #endregion #endregion #region 新增 修改保存方法 /// /// 新增 修改 保存方法 /// private void OperotePallet() { if (flag == 0) { bgsCondition.EndEdit(); if (frmButtonItem["Save"].Enabled == true) { if (DialogResult.OK == SystemCommon.ShowMessageBoxResult("确定要批量生成该类容器?")) { CreateMore(flag); } } this.txtStart.Text = string.Empty; this.txtEnd.Text = string.Empty; this.txtNum.Text = string.Empty; if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; } // frmButtonItem["Create"].Enabled = false; if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = false; } ChangeControlState(false); } else if (flag == 1) { CheckList = new List(); bgsCondition.EndEdit(); foreach (PalletModel pal in list.FindAll(r => r.PALLET_TYPE == this.lkpPalletType.EditValue.ToString())) { pal.PALLET_TYPE = this.lkpPalletType.EditValue.ToString(); pal.PALLET_LONG = Convert.ToDecimal(this.txtPalletLong.Text); pal.PALLET_WIDTH = Convert.ToDecimal(this.txtWidth.Text); pal.PALLET_HEIGHT = Convert.ToDecimal(this.txtHeight.Text); pal.BEARWEIGHT = Convert.ToDecimal(this.txtBearweight.Text); pal.USER_ID = this.cDictionaryUser.TextBoxFlag; pal.STATUS = this.rdoPalletStatus.EditValue.ToString(); pal.REMARK = this.txtRemark.Text; pal.OPERATORID = userData.USER_ID; pal.OPERATEDATE = DateTime.Now; pal.VOLUME = Convert.ToDecimal(this.txtPalletLong.Text.Trim()) * Convert.ToDecimal(this.txtWidth.Text.Trim()) * Convert.ToDecimal(this.txtHeight.Text.Trim()); CheckList.Add(pal); } if (CheckList == null) { return; } if (DialogResult.Yes == SystemCommon.ShowMessageBoxResult("该操作会将该类别下所有容器更改为相同的规格。" + Environment.NewLine + "是否更改?")) { FrmOperator(flag); } frmButtonItem["Save"].Enabled = false; if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = true; } ChangeControlState(false); } } #endregion #region 交互不可用 /// /// 交互不可用 /// private void ChangeControlState(bool r) { this.txtStart.Enabled = r; this.txtNum.Enabled = r; this.txtEnd.Enabled = r; this.txtPalletLong.Enabled = r; this.txtWidth.Enabled = r; this.txtHeight.Enabled = r; this.txtBearweight.Enabled = r; this.cDictionaryUser.Enabled = r; this.rdoPalletStatus.Enabled = r; this.txtRemark.Enabled = r; } #endregion #endregion private void txtStart_KeyPress(object sender, KeyPressEventArgs e) { if (!(e.KeyChar >= '0' && e.KeyChar <= '9')) e.Handled = true; if (e.KeyChar == '\b') e.Handled = false; } private void txtEnd_KeyPress(object sender, KeyPressEventArgs e) { if (!(e.KeyChar >= '0' && e.KeyChar <= '9')) e.Handled = true; if (e.KeyChar == '\b') e.Handled = false; } private void txtNum_KeyPress(object sender, KeyPressEventArgs e) { if (!(e.KeyChar >= '0' && e.KeyChar <= '9')) e.Handled = true; if (e.KeyChar == '\b') e.Handled = false; } /// /// txtEnd_TextChanged 事件 /// /// /// private void txtEnd_TextChanged(object sender, EventArgs e) { if (!string.IsNullOrEmpty(txtStart.Text) && !string.IsNullOrEmpty(txtEnd.Text)) { int star = Convert.ToInt32(txtStart.Text); int end = Convert.ToInt32(txtEnd.Text); txtNum.Text = (end - star + 1).ToString(); } } /// /// txtStart_TextChanged 事件 /// /// /// private void txtStart_TextChanged(object sender, EventArgs e) { if (!string.IsNullOrEmpty(txtEnd.Text) && !string.IsNullOrEmpty(txtStart.Text)) { int star = Convert.ToInt32(txtStart.Text); int end = Convert.ToInt32(txtEnd.Text); txtNum.Text = (end - star + 1).ToString(); } } /// /// lookUpedit EditValueChanged事件 /// /// /// private void lkpPalletType_EditValueChanged(object sender, EventArgs e) { switch (flag) { case 0: model = new PalletModel(); model.PALLET_TYPE = this.lkpPalletType.EditValue.ToString(); bgsCondition.DataSource = model; break; case 1: break; default: break; } if (list.Count != 0) { List plis = list.FindAll(f => f.PALLET_TYPE == this.lkpPalletType.EditValue.ToString()); if (!string.IsNullOrEmpty(this.lkpPalletType.EditValue.ToString()) && plis.Count != 0) { //字符串 截取数字 部分 //if (frmButtonItem["Create"].Enabled == true) if (flag == 0) { int aa = Convert.ToInt32(Regex.Match(plis.Max(a => a.PALLET_ID), "\\d+").Value.ToString()); this.txtStart.Text = (aa + 1).ToString(); this.txtStart.Enabled = false; GetPalletHeadLetter(); } //if (frmButtonItem["Save"].Enabled == true) if (flag == 1) { txtStart.Text = Regex.Match(plis.Min(a => a.PALLET_ID), "\\d+").ToString(); txtEnd.Text = Regex.Match(plis.Max(b => b.PALLET_ID), "\\d+").ToString(); } bgsCondition.DataSource = plis[0]; bgsCondition.EndEdit(); this.cDictionaryUser.TextBoxFlag = plis[0].USER_ID; this.cDictionaryUser.TextBoxValue = plis[0].NAME; } return; } if(list.Count>0) { bgsPallet.DataSource = list.FindAll(r => r.PALLET_TYPE == this.lkpPalletType.EditValue.ToString()); if (!string.IsNullOrEmpty(this.lkpPalletType.EditValue.ToString()) && this.gridViewPallet.RowCount == 0) { model = new PalletModel(); model.PALLET_TYPE = this.lkpPalletType.EditValue.ToString(); bgsCondition.DataSource = model; } this.gridViewPallet.FocusedRowHandle = 0; gridControlCustomPallet_Click(null, null); } } /// /// 获得批量新增容器的头文件 /// private void GetPalletHeadLetter() { string error = string.Empty; List lsit = IBussFactory.Instance().GetDictionaryTab("pallet_type"); foreach (DictionaryTabModel model in lsit) { if (model.VC_DICTIONARY_ID == this.lkpPalletType.EditValue.ToString()) { PalletName = model.VC_PINYIN_CODE; } } } /// /// click 事件 显示明细容器 具体参数 /// /// /// private void gridControlCustomPallet_Click(object sender, EventArgs e) { //if (frmButtonItem.ContainsKey("Print")) { frmButtonItem["Print"].Enabled = false; } if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = true; } if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; } if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = true; } if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = true; } if (frmButtonItem.ContainsKey("Refresh")) { frmButtonItem["Refresh"].Enabled = true; } if (frmButtonItem.ContainsKey("Export")) { frmButtonItem["Export"].Enabled = true; } if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = false; } //if (frmButtonItem.ContainsKey("Create")) { frmButtonItem["Create"].Enabled = false; } if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; } ChangeControlState(false); model = this.gridViewPallet.GetRow(this.gridViewPallet.FocusedRowHandle) as PalletModel; if (model != null) { bgsCondition.DataSource = model; this.cDictionaryUser.TextBoxFlag = model.USER_ID; this.cDictionaryUser.TextBoxValue = model.NAME; this.txtStart.Text = string.Empty; } } /// /// 结束编号Leave事件 验证结束编号不小于起始编号 /// /// /// private void txtEnd_Leave(object sender, EventArgs e) { if (!string.IsNullOrEmpty(txtStart.Text) && !string.IsNullOrEmpty(txtEnd.Text)) { int star = Convert.ToInt32(txtStart.Text); int end = Convert.ToInt32(txtEnd.Text); if (end < star) { SystemCommon.ShowInfoMessageBox("结束编号不能小于起始编号!"); this.txtEnd.Focus(); return; } } } /// /// 长宽高Leave事件 带出体积Volume /// /// /// private void GetVolume_Leave(object sender, EventArgs e) { this.labelControl1.Focus(); if (Convert.ToDecimal(this.txtPalletLong.Text) != 0 && Convert.ToDecimal(this.txtWidth.Text) != 0 && Convert.ToDecimal(this.txtHeight.Text) != 0) { txtVolume.Text = (Convert.ToDecimal(txtPalletLong.Text) * Convert.ToDecimal(txtWidth.Text) * Convert.ToDecimal(txtHeight.Text)).ToString("F4"); bgsCondition.EndEdit(); bgsCondition.ResetBindings(true); } } private void gridViewPallet_FocusedRowChanged(object sender, FocusedRowChangedEventArgs e) { //if (e.FocusedRowHandle > -1) //{ // gridControlCustomPallet_Click(null, null); // //bgsCondition.DataSource = this.gridViewPallet.GetRow(e.FocusedRowHandle); //} } private void btnAccept_Click(object sender, EventArgs e) { if (txtCtl.Text == "") { BarCodeReport br2 = new BarCodeReport(); br2.GetInstance(txtCtl.Text, 10); } } private void gridViewPallet_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e) { if (gridViewPallet.RowCount == 0) { return; } if (gridViewPallet.FocusedRowHandle < 0) { return; } string STORAGE_ID = gridViewPallet.GetFocusedRowCellValue("STORAGE_ID").ToString(); string BARCODETIME = gridViewPallet.GetFocusedRowCellValue("BARCODETIME").ToString(); string SEQID = gridViewPallet.GetFocusedRowCellValue("SEQID").ToString(); txtCtl.Text = gridViewPallet.GetFocusedRowCellValue("BARCODE").ToString(); } private void ctrlButtons1_Click(object sender, EventArgs e) { string datetime = System.DateTime.Now.ToString("yyyyMMdd"); DataTable dt = IBussFactory.Instance().GetCtl2(int.Parse(datetime)); if (dt != null) { if (dt.Rows.Count > 0) { int seqid= int.Parse(dt.Rows[0][0].ToString())+1; string BarCode = "323" + datetime + seqid.ToString("0000"); BarCodeReport br2 = new BarCodeReport(); br2.GetInstance(BarCode, 10); IBussFactory.Instance().Insert_T_BASE_PALLET(323, int.Parse(datetime), seqid, BarCode); // } } } } }