using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Collections.Specialized; using System.Data; using System.Collections; using System.Net; namespace DeiNiu.Wms.CE { public partial class LightOrder : basicForm { #region 界面初始化 //public int page = 0; string gooodsid = string.Empty; int ye = 0; int index = 0; int skuId = 0; DataTable dt = new DataTable(); Dictionary partLst = new Dictionary(); int partionId = 0; string svrUrl = ""; string svrMethod = ""; public LightOrder() { setTitle(); InitializeComponent(); focusOn( input_txt,"亮灯分区号"); clearResult(); clearPart(); getSvrUrl(); } private void getSvrUrl() { Cursor.Current = System.Windows.Forms.Cursors.WaitCursor; try { svrUrl = client.getLightService(); lbSvrl.Text = svrUrl; getMethodUrl(); } catch (Exception er) { Cursor.Current = System.Windows.Forms.Cursors.Default; MessageBox.Show("发生错误:" + er.Message); return; } Cursor.Current = System.Windows.Forms.Cursors.Default; } private void BarCodeStorage_Load(object sender, EventArgs e) { Cursor.Current = System.Windows.Forms.Cursors.WaitCursor; try { DataTable dt = client.getLightPartions(LoginInfo.UserId, LoginInfo.Token ); foreach (DataRow dr in dt.Rows) { partLst[dr["flag"].ToString()] = dr["name"].ToString(); } } catch (Exception er) { Cursor.Current = System.Windows.Forms.Cursors.Default; MessageBox.Show("发生错误:" + er.Message); return; } Cursor.Current = System.Windows.Forms.Cursors.Default; } #endregion /// /// 扫描商品条码,获取数据 /// /// /// /// private void goodscode_txt_KeyUp(object sender, KeyEventArgs e) { if (e.KeyCode != Keys.Enter) { return; } clearResult(); string barcode = input_txt.Text.Trim(); if (barcode.Length>5) //its pickorder { if (partionId == 0) { MessageBox.Show("请扫描分区条码 " ); return; } Cursor.Current = System.Windows.Forms.Cursors.WaitCursor; try { barcode = "SALPHJO00000041"; lbResult.Text = lightOrder(barcode, partionId)=="1" ? "亮灯成功":"亮灯失败"; } catch (Exception er) { Cursor.Current = System.Windows.Forms.Cursors.Default; MessageBox.Show("发生错误:" + er.Message); return; } Cursor.Current = System.Windows.Forms.Cursors.Default; input_txt.SelectAll(); input_txt.Focus(); return; } else //its part { if (partLst.ContainsKey(barcode)) { clearPart(); lbPartion.Text = partLst[barcode]; try { partionId = Convert.ToInt16(barcode); } catch (Exception er) { focusOn(input_txt, "亮灯分区号码"); MessageBox.Show("解析分区ID发生错误:" + er.Message); return; } //to get part pick requests } else { MessageBox.Show("请扫分区条码或订单号条码"); return; } input_txt.Text = ""; focusOn(input_txt, "订单号码"); } } string lightOrder(string orderNo, int partion) { svrMethod = string.Format(svrMethod, orderNo, partion); HttpWebRequest webReq; webReq = (HttpWebRequest)WebRequest.Create(new Uri(svrUrl + svrMethod)); System.Net.HttpWebResponse response; response = (System.Net.HttpWebResponse)webReq.GetResponse(); System.IO.StreamReader myreader = new System.IO.StreamReader(response.GetResponseStream(), Encoding.UTF8); string responseText = myreader.ReadToEnd(); myreader.Close(); // MessageBox.Show(responseText); // logMsg(responseText); return responseText; } private void clearResult() { lbResult.Text = ""; } private void clearPart() { lbPartion.Text =""; partionId = 0; } private void rdsaleorder_CheckedChanged(object sender, EventArgs e) { rdpickorder.Checked = !rdsaleorder.Checked; getMethodUrl(); } private void rdpickorder_CheckedChanged(object sender, EventArgs e) { rdsaleorder.Checked = !rdpickorder.Checked; getMethodUrl(); } void getMethodUrl() { svrMethod = rdpickorder.Checked ? "/lightByPickOrderNo?orderNo={0}&partion={1}" : "/lightBySaleOrderNo?orderNo={0}&partion={1}"; } } }