601 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			601 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using System; | |||
|  | 
 | |||
|  | using System.Collections.Generic; | |||
|  | using System.ComponentModel; | |||
|  | using System.Data; | |||
|  | using System.Drawing; | |||
|  | using System.Text; | |||
|  | using System.Windows.Forms; | |||
|  | using System.Threading; | |||
|  |   | |||
|  | 
 | |||
|  | namespace DeiNiu.Wms.CE | |||
|  | { | |||
|  |     public partial class RepStockIn : basicForm  | |||
|  |     { | |||
|  |        //  // WmsOutPickRequestClient client { get; set; } | |||
|  |          // WmsInRequestClient client { get; set; } | |||
|  |           //v_stockOutBatchPickOrder4Wince | |||
|  |           //v_stockOutBatchPickDetail4Wince | |||
|  |           public RepStockIn() | |||
|  |         { | |||
|  |             setTitle(); | |||
|  |             InitializeComponent(); | |||
|  |           //  client = new WmsOutPickRequestClient(WcfHelp.getBasicBinding(), WcfHelp.getEndpoint("WmsOutPickRequestService")); | |||
|  |          //   client = new WmsInRequestClient(WcfHelp.getBasicBinding(), WcfHelp.getEndpoint("WmsInRequestService")); | |||
|  |         } | |||
|  |    | |||
|  |         bool isAuto =false; | |||
|  |         string flowNo = ""; | |||
|  |         string goodsId = ""; | |||
|  |         string goodsName = ""; | |||
|  |         string batch = ""; | |||
|  |         int skuId = 0; | |||
|  |         string goodsType = ""; | |||
|  |         decimal count = 0m; | |||
|  |         DataTable dtIns; | |||
|  |         DataTable dtLocs; | |||
|  |         int id; | |||
|  |         string orderNo = ""; | |||
|  |         private void RepStockIn_Load(object sender, EventArgs e) | |||
|  |         { | |||
|  |             isAuto = rbAuto.Checked; | |||
|  |          //   bindBg1(); | |||
|  | 
 | |||
|  |             focusOn(txtFlow,"下架容器码");   | |||
|  |              | |||
|  |         } | |||
|  | 
 | |||
|  |           | |||
|  | 
 | |||
|  | 
 | |||
|  |         private void dg1_DoubleClick(object sender, EventArgs e) | |||
|  |         { | |||
|  |             clear(); | |||
|  |             if (dg1.DataSource==null) | |||
|  |             { | |||
|  |                 return; | |||
|  |             } | |||
|  |             if(dg1.CurrentRowIndex<0) | |||
|  |             { | |||
|  |                 return; | |||
|  |             } | |||
|  | 
 | |||
|  |             //string sale_order = dg1[dg1.CurrentRowIndex, 0].ToString(); | |||
|  | 
 | |||
|  |             //string custor_name = dg1[dg1.CurrentRowIndex, 1].ToString(); | |||
|  |             lbGoods.Text = dg1[dg1.CurrentRowIndex, 3].ToString(); | |||
|  |             lbCount.Text = dg1[dg1.CurrentRowIndex, 0].ToString();  | |||
|  |             tb1.SelectedIndex = 1; | |||
|  |               | |||
|  |         } | |||
|  | 
 | |||
|  |         private void tb1_SelectedIndexChanged(object sender, EventArgs e) | |||
|  |         { | |||
|  | 
 | |||
|  |             if (tb1.SelectedIndex == 0) | |||
|  |             { | |||
|  |                bindBg1(); | |||
|  |                 /* | |||
|  |                   dg1.TableStyles[0].GridColumnStyles["出库单"].Width = 80; | |||
|  |                   dg1.TableStyles[0].GridColumnStyles["客户"].Width = 140; | |||
|  |                   dg1.TableStyles[0].GridColumnStyles["状态"].Width = 60; | |||
|  |                  */ | |||
|  |             } | |||
|  |             else | |||
|  |             { | |||
|  |                 setDetail();  | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         private void dg1_CurrentCellChanged(object sender, EventArgs e) | |||
|  |         { | |||
|  | 
 | |||
|  |         } | |||
|  | 
 | |||
|  |         private void bindBg1() | |||
|  |         { | |||
|  |             flowNo = txtFlow.Text; | |||
|  |             dtIns = null; | |||
|  |             if (String.IsNullOrEmpty(flowNo)) | |||
|  |             {  | |||
|  |                 focusOn(txtFlow, "下架容器码");   | |||
|  |                 return; | |||
|  |             } | |||
|  | 
 | |||
|  |             Cursor.Current = System.Windows.Forms.Cursors.WaitCursor; | |||
|  |             try | |||
|  |             { | |||
|  |                 dtIns = client.repInDetailsByFlowNo(flowNo); | |||
|  | 
 | |||
|  |             } | |||
|  |             catch (Exception er) | |||
|  |             { | |||
|  |                 Cursor.Current = System.Windows.Forms.Cursors.Default; | |||
|  |                 MessageBox.Show("发生错误:" + er.Message); | |||
|  | 
 | |||
|  | 
 | |||
|  |             } | |||
|  |             Cursor.Current = System.Windows.Forms.Cursors.Default; | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  |             DataGridTableStyle dgts = new DataGridTableStyle(); | |||
|  |             dgts.MappingName = dtIns.TableName;// dt.TableName; // 必须用 ds.TableName, dt.TableSpace 不行!!!!  | |||
|  |             dg1.DataSource = dtIns; | |||
|  |             /* | |||
|  |             for (int i = 0; i < dtIns.Columns.Count; i++) | |||
|  |             { | |||
|  |                 DataGridColumnStyle ColStyle = new DataGridTextBoxColumn(); | |||
|  |                 ColStyle.MappingName = dtIns.Columns[i].ColumnName.ToString(); | |||
|  |                 ColStyle.HeaderText = dtIns.Columns[i].ColumnName.ToString(); | |||
|  |                 ColStyle.Width = dtIns.Rows[0][i].ToString().Length * 7 - 1; | |||
|  | 
 | |||
|  |                 if (ColStyle.Width <25) | |||
|  |                 { | |||
|  |                      ColStyle.Width = 25;//设置列宽 | |||
|  |                 } | |||
|  |                 if (i >= 7) //如果某个条件满足就执行该列是否隐藏 | |||
|  |                 { | |||
|  |                     //  ColStyle.Width = 0;//当宽度等于0的时候就可以隐藏这列 | |||
|  |                 } | |||
|  |                 dgts.GridColumnStyles.Add(ColStyle); | |||
|  | 
 | |||
|  |             }    | |||
|  |             */ | |||
|  |             dg1.TableStyles.Clear();  | |||
|  |             dg1.TableStyles.Add(dgts); | |||
|  |             dg1.TableStyles[0].GridColumnStyles["商品"].Width = 80; | |||
|  |             dg1.TableStyles[0].GridColumnStyles["数量"].Width = 30; | |||
|  |             dg1.TableStyles[0].GridColumnStyles["件"].Width = 20; | |||
|  |             dg1.TableStyles[0].GridColumnStyles["商品类别"].Width = 50; | |||
|  |            // dg1.TableStyles[0].GridColumnStyles["状态"].Width = 0; | |||
|  |            // dg1.TableStyles[0].GridColumnStyles["货位"].Width = 0; | |||
|  |               | |||
|  |             dgts = null; | |||
|  |             GC.Collect(); | |||
|  |             if (dtIns.Rows.Count > 0) | |||
|  |             { | |||
|  |                 focusOn(txtGoodId, "商品主条码"); | |||
|  |             } | |||
|  |             else | |||
|  |             { | |||
|  |                 focusOn(txtFlow, "下架容器码"); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         private void bindBg2() | |||
|  |         { | |||
|  |             if (string.IsNullOrEmpty(goodsId)) | |||
|  |             { | |||
|  |                 return; | |||
|  |             } | |||
|  | 
 | |||
|  |             Cursor.Current = Cursors.WaitCursor; | |||
|  |             try | |||
|  |             { | |||
|  |                 dtLocs = client.getLocations( skuId,"",goodsId, batch, count); | |||
|  | 
 | |||
|  |             } | |||
|  |             catch (Exception e) | |||
|  |             { | |||
|  |                 Cursor.Current = Cursors.Default; | |||
|  |                 showErrorMsg(e); | |||
|  |                 return; | |||
|  |             } | |||
|  |             Cursor.Current = Cursors.Default; | |||
|  | 
 | |||
|  |             if (dtLocs.Rows.Count == 0) | |||
|  |             { | |||
|  |                 MessageBox.Show("没有发现空货位"); | |||
|  |                 return; | |||
|  |             } | |||
|  | 
 | |||
|  | 
 | |||
|  |             DataGridTableStyle dgts = new DataGridTableStyle(); | |||
|  |             dgts.MappingName = dtLocs.TableName;// dt.TableName; // 必须用 ds.TableName, dt.TableSpace 不行!!!! | |||
|  | 
 | |||
|  |             for (int i = 0; i < dtLocs.Columns.Count; i++) | |||
|  |             { | |||
|  |                 DataGridColumnStyle ColStyle = new DataGridTextBoxColumn(); | |||
|  |                 ColStyle.MappingName = dtLocs.Columns[i].ColumnName.ToString(); | |||
|  |                 ColStyle.HeaderText = dtLocs.Columns[i].ColumnName.ToString(); | |||
|  |                 ColStyle.Width = dtLocs.Rows[0][i].ToString().Length * 7 - 1; | |||
|  | 
 | |||
|  |                 if (ColStyle.Width < 50) | |||
|  |                 { | |||
|  |                    ColStyle.Width = 50;//设置列宽 | |||
|  |                 } | |||
|  |                 if (i == 1) //如果某个条件满足就执行该列是否隐藏 | |||
|  |                 { | |||
|  |                   //  ColStyle.Width = 0;//当宽度等于0的时候就可以隐藏这列 | |||
|  |                 } | |||
|  |                 dgts.GridColumnStyles.Add(ColStyle); | |||
|  |             } | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  |             | |||
|  |             dg2.TableStyles.Clear(); | |||
|  |             | |||
|  |             dg2.TableStyles.Add(dgts); | |||
|  |             dg2.DataSource = dtLocs; | |||
|  |             dgts = null; | |||
|  |             GC.Collect(); | |||
|  | 
 | |||
|  |               | |||
|  |             //dgts.GridColumnStyles[0].Width = 100; | |||
|  |             //dgts.GridColumnStyles[1].Width = 100; | |||
|  |            | |||
|  |    | |||
|  |         } | |||
|  | 
 | |||
|  |         private void rbAuto_CheckedChanged(object sender, EventArgs e) | |||
|  |         { | |||
|  |             if (rbAuto.Checked) | |||
|  |             { | |||
|  |                 setAuto(); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  |         void setAuto() | |||
|  |         { | |||
|  |             if (string.IsNullOrEmpty(goodsId)) | |||
|  |             { | |||
|  |                 return; | |||
|  |             } | |||
|  | 
 | |||
|  |             isAuto = rbAuto.Checked;  | |||
|  |             textBoxNum.Enabled = !isAuto; | |||
|  |             btnOkay.Enabled = !isAuto; | |||
|  |             textBoxNum.Text =  ""; | |||
|  |             if (isAuto) | |||
|  |             { | |||
|  |                 | |||
|  |                 bindBg2(); | |||
|  | 
 | |||
|  |             } | |||
|  |             else | |||
|  |             { | |||
|  |                 textBoxNum.Text = count + ""; | |||
|  |                 dg2.DataSource = null; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         private void dg1_DoubleClick_1(object sender, EventArgs e) | |||
|  |         { | |||
|  | 
 | |||
|  |            // setDetail(); | |||
|  |             tb1.SelectedIndex = 1; | |||
|  |                | |||
|  |         } | |||
|  | 
 | |||
|  |         void setDetail() | |||
|  |         { | |||
|  |             clear(); | |||
|  | 
 | |||
|  |             if (dg1.DataSource == null) | |||
|  |             { | |||
|  |                 return; | |||
|  |             } | |||
|  |              | |||
|  |             DataView dv = dtIns.DefaultView; | |||
|  | 
 | |||
|  |             if (dg1.CurrentRowIndex < 0 || dv.Count <= 0 || dg1.CurrentRowIndex >= dv.Count) | |||
|  | 
 | |||
|  |             { | |||
|  |                 return; | |||
|  |             } | |||
|  |            | |||
|  |            | |||
|  |             if (dv.Count > 0) | |||
|  |             { | |||
|  |                 orderNo = dv[dg1.CurrentRowIndex]["pickOrderNo"].ToString(); | |||
|  |                 goodsId = dv[dg1.CurrentRowIndex]["goodsId"].ToString();// dg1[dg1.CurrentRowIndex, 14].ToString(); | |||
|  |                 goodsName = dv[dg1.CurrentRowIndex]["商品"].ToString();// dg1[dg1.CurrentRowIndex, 0].ToString(); | |||
|  |                 batch = dv[dg1.CurrentRowIndex]["批号"].ToString();// dg1[dg1.CurrentRowIndex, 4].ToString(); | |||
|  |                 skuId = Convert.ToInt16(dv[dg1.CurrentRowIndex]["skuId"].ToString()); | |||
|  |                 count = Convert.ToDecimal(dv[dg1.CurrentRowIndex]["数量"].ToString()); //Convert.ToDecimal(dg1[dg1.CurrentRowIndex, 1].ToString()); | |||
|  |                 goodsType = dv[dg1.CurrentRowIndex]["商品类别"].ToString(); //dg1[dg1.CurrentRowIndex, 6].ToString(); | |||
|  |                 id = Convert.ToInt32(dv[dg1.CurrentRowIndex]["id"].ToString()); | |||
|  |             } | |||
|  |              | |||
|  |             lbGoods.Text = goodsName; | |||
|  |             lbBatch.Text = batch; | |||
|  |             lbCount.Text = count+""; | |||
|  |             lbType.Text = goodsType; | |||
|  |           | |||
|  |             txtLocation.Text = ""; | |||
|  |             txtLocation.Focus(); | |||
|  | 
 | |||
|  | 
 | |||
|  |         } | |||
|  |         void clear() | |||
|  |         { | |||
|  |             orderNo =  | |||
|  |             goodsId = | |||
|  |             batch = ""; | |||
|  |             goodsName = ""; | |||
|  |             skuId = 0; | |||
|  |             count = 0; | |||
|  |             lbGoods.Text = goodsId; | |||
|  |             lbBatch.Text = batch; | |||
|  |             lbType.Text=lbCount.Text = ""; | |||
|  |             dg2.DataSource = null; | |||
|  |             rbAuto.Checked = false; | |||
|  |             radioButton2.Checked = true; | |||
|  | 
 | |||
|  |         } | |||
|  | 
 | |||
|  |         private void radioButton2_CheckedChanged(object sender, EventArgs e) | |||
|  |         { | |||
|  |             setAuto(); | |||
|  |         } | |||
|  | 
 | |||
|  |         private void btnOkay_Click(object sender, EventArgs e) | |||
|  |         { | |||
|  |             repIn(); | |||
|  | 
 | |||
|  |         } | |||
|  |         void repIn() | |||
|  |         { | |||
|  |             decimal inCount = 0; | |||
|  |             try | |||
|  |             { | |||
|  |                 inCount = Convert.ToDecimal(textBoxNum.Text.Trim()); | |||
|  | 
 | |||
|  |                 if (inCount > count) | |||
|  |                 { | |||
|  |                     throw new Exception(); | |||
|  |                 } | |||
|  |             } | |||
|  |             catch | |||
|  |             {  | |||
|  |                 focusOn(textBoxNum, "正确的上架数量");   | |||
|  |                 return; | |||
|  |             } | |||
|  | 
 | |||
|  |             string locId = txtLocation.Text; | |||
|  |             if (string.IsNullOrEmpty(locId)) | |||
|  |             { | |||
|  | 
 | |||
|  |               | |||
|  |                 focusOn(txtLocation, "目标货位码");   | |||
|  |                 txtLocation.Focus(); | |||
|  |                 return; | |||
|  |             } | |||
|  | 
 | |||
|  |             if (putIn(locId, skuId,goodsId, batch, inCount, id)) | |||
|  |             { | |||
|  |                 count -= inCount; | |||
|  |                 if (count <= 0) | |||
|  |                 { | |||
|  |                     tb1.SelectedIndex = 0; | |||
|  |                     return; | |||
|  |                 } | |||
|  |                 lbCount.Text = count + ""; | |||
|  |                 //  setDetail(); | |||
|  | 
 | |||
|  |                 txtLocation.Text = ""; | |||
|  |                 textBoxNum.Text = ""; | |||
|  |             } | |||
|  |             focusOn(txtLocation, "目标货位码");   | |||
|  |             | |||
|  |         } | |||
|  | 
 | |||
|  |         bool putIn(string locId, int skuId, string goodsId, string batch, decimal count, int portId) | |||
|  |         { | |||
|  | 
 | |||
|  |             if (string.IsNullOrEmpty(goodsId) || string.IsNullOrEmpty(locId)  | |||
|  |                 //|| string.IsNullOrEmpty(batch)  | |||
|  |                 || count <= 0 || portId <= 0) | |||
|  |             { | |||
|  |                 MessageBox.Show("条件不符,不能入库"); | |||
|  |                 focusOn(txtLocation,"目标货位码");   | |||
|  |                 return false; | |||
|  |             } | |||
|  |             enumRepResult result = enumRepResult.成功; | |||
|  |            Cursor.Current = Cursors.WaitCursor; | |||
|  |             try | |||
|  |             {                   | |||
|  |                  result = (enumRepResult)client.repItemIn(locId, goodsId,skuId, batch, count, portId, LoginInfo.UserId, LoginInfo.Token); | |||
|  |             } | |||
|  |             catch (Exception e) | |||
|  |             { | |||
|  |                 Cursor.Current = Cursors.Default; | |||
|  |                 showErrorMsg(e); | |||
|  |                 return false; | |||
|  |             } | |||
|  |             Cursor.Current = Cursors.Default; | |||
|  | 
 | |||
|  |             if (result != enumRepResult.成功) | |||
|  |             { | |||
|  |                 MessageBox.Show("入库失败:" + result.ToString()); | |||
|  |                 focusOn(txtLocation, "目标货位码");   | |||
|  |                 return false; | |||
|  |             } | |||
|  |             return true; | |||
|  | 
 | |||
|  | 
 | |||
|  |         } | |||
|  | 
 | |||
|  |         private void textBox1_KeyUp(object sender, KeyEventArgs e) | |||
|  |         { | |||
|  |             if (!isAuto) | |||
|  |             { | |||
|  |                 return; | |||
|  |             } | |||
|  | 
 | |||
|  | 
 | |||
|  |             if (e.KeyCode == Keys.Enter) | |||
|  |             { | |||
|  | 
 | |||
|  |                 string locId = txtLocation.Text; | |||
|  | 
 | |||
|  |                 DataView dv = dtLocs.DefaultView; | |||
|  |                 dv.RowFilter = string.Format("推荐货位='{0}'", locId); | |||
|  |                 bool result = false; | |||
|  |                 decimal inCount = 0m; | |||
|  |                 if (dv.Count > 0) | |||
|  |                 { | |||
|  |                     foreach (DataRowView dr in dv) | |||
|  |                     { | |||
|  |                         inCount = Convert.ToDecimal(dr[1].ToString()); | |||
|  | 
 | |||
|  | 
 | |||
|  |                         result = putIn(locId, skuId,goodsId, batch, inCount, id); | |||
|  | 
 | |||
|  | 
 | |||
|  |                         break; | |||
|  |                     } | |||
|  | 
 | |||
|  |                 } | |||
|  |                 else | |||
|  |                 { | |||
|  |                     MessageBox.Show(locId + "不是推荐货位或改货位已经扫描入库了,请扫描其它货位"); | |||
|  |                     dv.RowFilter =""; | |||
|  |                     focusOn(txtLocation );   | |||
|  |                 } | |||
|  | 
 | |||
|  |                 if (result) | |||
|  |                 { | |||
|  |                     count -= inCount; | |||
|  |                     if (count <= 0) //入库完毕 | |||
|  |                     { | |||
|  |                         tb1.SelectedIndex = 0; | |||
|  |                         return; | |||
|  |                     } | |||
|  |                     dv.RowFilter = string.Format("推荐货位<>'{0}'", locId); | |||
|  | 
 | |||
|  |                    dtLocs = dv.ToTable("locs"); | |||
|  |                    dg2.DataSource = dtLocs; | |||
|  | 
 | |||
|  |                    lbCount.Text = count + ""; | |||
|  |                    // bindBg2(); | |||
|  |                 } | |||
|  |                  | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         private void dg2_DoubleClick(object sender, EventArgs e) | |||
|  |         { | |||
|  |             if (dg2.DataSource == null) | |||
|  |             { | |||
|  |                 return; | |||
|  |             } | |||
|  |             if (dg2.CurrentRowIndex < 0) | |||
|  |             { | |||
|  |                 return; | |||
|  |             } | |||
|  | 
 | |||
|  |             //string sale_order = dg1[dg1.CurrentRowIndex, 0].ToString(); | |||
|  | 
 | |||
|  |             //string custor_name = dg1[dg1.CurrentRowIndex, 1].ToString(); | |||
|  |            txtLocation.Text = dg2[dg2.CurrentRowIndex, 0].ToString();  | |||
|  |               | |||
|  |         } | |||
|  | 
 | |||
|  |         private void button1_Click(object sender, EventArgs e) | |||
|  |         { | |||
|  |             bindBg1(); | |||
|  |         } | |||
|  | 
 | |||
|  |         private void textBoxGoods_KeyUp(object sender, KeyEventArgs e) | |||
|  |         { | |||
|  |             if (e.KeyCode == Keys.Enter) | |||
|  |             {  | |||
|  |                 flowNo = txtFlow.Text.Trim(); | |||
|  |                 bindBg1(); | |||
|  |                 | |||
|  |             } | |||
|  |              | |||
|  |         } | |||
|  | 
 | |||
|  |         private void btnComplete_Click(object sender, EventArgs e) | |||
|  |         { | |||
|  |             if (string.IsNullOrEmpty(goodsId)) | |||
|  |             { | |||
|  |                 return; | |||
|  |             } | |||
|  |             Message me = new Message(); | |||
|  |             me.title = "您确认此条补货已完成入库 ?"; | |||
|  |             if (me.ShowDialog() == DialogResult.Cancel) | |||
|  |             { | |||
|  |                 focusOn(txtLocation);   | |||
|  |                 return; | |||
|  |             } | |||
|  |             Cursor.Current = Cursors.WaitCursor; | |||
|  |             try | |||
|  |             { | |||
|  |                 //int i =0; | |||
|  |                 //while(i<50){ | |||
|  |                 //    i++; | |||
|  |                 client.finishBatchValidateItem(orderNo, id, LoginInfo.UserId,0, LoginInfo.Token); | |||
|  | 
 | |||
|  |                 //  Thread.CurrentThread.Join(10); | |||
|  |                 //} | |||
|  | 
 | |||
|  | 
 | |||
|  |             } | |||
|  |             catch (Exception er) | |||
|  |             { | |||
|  |                 | |||
|  |                 MessageBox.Show("出错了:" +er.Message); | |||
|  |             } | |||
|  |             Cursor.Current = Cursors.Default; | |||
|  | 
 | |||
|  |             tb1.SelectedIndex = 0; | |||
|  | 
 | |||
|  |         } | |||
|  | 
 | |||
|  |         private void textBoxNum_KeyUp(object sender, KeyEventArgs e) | |||
|  |         { | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  |             if (e.KeyCode == Keys.Enter) | |||
|  |             { | |||
|  |                 if (isAuto) | |||
|  |                 { | |||
|  |                     return; | |||
|  |                 } | |||
|  |                 repIn(); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         private void txtGoodId_KeyUp(object sender, KeyEventArgs e) | |||
|  |         { | |||
|  |           | |||
|  |             | |||
|  |             if (e.KeyCode == Keys.Enter) | |||
|  |             {  | |||
|  |                 string goodsBarcode =  txtGoodId.Text; | |||
|  |             | |||
|  |                 if (string.IsNullOrEmpty(goodsBarcode)) | |||
|  |                 { | |||
|  |                     txtGoodId.Focus(); | |||
|  |                     return; | |||
|  |                 } | |||
|  |                 DataView dv = dtIns.DefaultView; | |||
|  | 
 | |||
|  | 
 | |||
|  |                 dv.RowFilter = string.Format("barcode='{0}'", goodsBarcode); | |||
|  |                   | |||
|  |                 if (dv.Count >= 1) | |||
|  |                 { | |||
|  |                      tb1.SelectedIndex = 1; | |||
|  |                      focusOn(txtLocation,"目标货位码"); | |||
|  |                 } | |||
|  | 
 | |||
|  |                 //dv.RowFilter = ""; | |||
|  |                 txtGoodId.Text = "";  | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |           | |||
|  |     } | |||
|  | } |