271 lines
9.0 KiB
C#
271 lines
9.0 KiB
C#
|
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 RegSeedsBox : basicForm
|
|||
|
{
|
|||
|
#region 界面初始化
|
|||
|
//public int page = 0;
|
|||
|
|
|||
|
string gooodsid = string.Empty;
|
|||
|
|
|||
|
DataTable dt = new DataTable();
|
|||
|
Dictionary<string, string> partLst = new Dictionary<string, string>();
|
|||
|
int partionId = 0;
|
|||
|
string svrUrl = "";
|
|||
|
string svrMethod = "";
|
|||
|
public RegSeedsBox()
|
|||
|
{
|
|||
|
setTitle();
|
|||
|
InitializeComponent();
|
|||
|
focusOn(input_txt, " 分区号码");
|
|||
|
clearResult();
|
|||
|
clearPart();
|
|||
|
getSvrUrl();
|
|||
|
}
|
|||
|
|
|||
|
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
|
|||
|
/// <summary>
|
|||
|
/// 扫描商品条码,获取数据
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
///
|
|||
|
private void goodscode_txt_KeyUp(object sender, KeyEventArgs e)
|
|||
|
{
|
|||
|
if (e.KeyCode != Keys.Enter)
|
|||
|
{
|
|||
|
return;
|
|||
|
}
|
|||
|
clear();
|
|||
|
|
|||
|
string barcode = input_txt.Text.Trim();
|
|||
|
|
|||
|
if (barcode.StartsWith("H")) //its box
|
|||
|
{
|
|||
|
if (partionId == 0)
|
|||
|
{
|
|||
|
MessageBox.Show("请扫描分区条码 " );
|
|||
|
|
|||
|
return;
|
|||
|
}
|
|||
|
lbBox.Text =barcode;
|
|||
|
input_txt.Enabled = false;
|
|||
|
Cursor.Current = System.Windows.Forms.Cursors.WaitCursor;
|
|||
|
try
|
|||
|
{
|
|||
|
|
|||
|
|
|||
|
enumRegPlateResult result =(enumRegPlateResult) client.regSeedsPlate(barcode, partionId);
|
|||
|
if (result == enumRegPlateResult.成功)
|
|||
|
{
|
|||
|
lbResult.Text = "注册成功,开始亮灯...";
|
|||
|
|
|||
|
try
|
|||
|
{
|
|||
|
|
|||
|
/*
|
|||
|
dg1.TableStyles.Clear();
|
|||
|
DataGridTableStyle dgts = new DataGridTableStyle();
|
|||
|
dgts.MappingName = dt.TableName; // 必须用 ds.TableName, dt.TableSpace 不行!!!!
|
|||
|
dg1.TableStyles.Add(dgts);
|
|||
|
|
|||
|
dg1.TableStyles[0].GridColumnStyles["货品"].Width = 80;
|
|||
|
*/
|
|||
|
}
|
|||
|
catch (Exception er)
|
|||
|
{
|
|||
|
showErrorMsg(er);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
lbResult.Text = result.ToString();
|
|||
|
DataTable dt = client.getPlatePickList(barcode, partionId);
|
|||
|
dg1.DataSource = dt;
|
|||
|
lbResult.Text = lightOrder(barcode, partionId);
|
|||
|
|
|||
|
}
|
|||
|
catch (Exception er)
|
|||
|
{
|
|||
|
Cursor.Current = System.Windows.Forms.Cursors.Default;
|
|||
|
lbResult.Text = er.Message;
|
|||
|
showErrorMsg(er);
|
|||
|
input_txt.Enabled = true;
|
|||
|
return;
|
|||
|
}
|
|||
|
Cursor.Current = System.Windows.Forms.Cursors.Default;
|
|||
|
input_txt.Enabled = true;
|
|||
|
focusOn(input_txt, "周转箱编码");
|
|||
|
|
|||
|
return;
|
|||
|
}
|
|||
|
else //its part
|
|||
|
{
|
|||
|
if (partLst.ContainsKey(barcode))
|
|||
|
{
|
|||
|
clearPart();
|
|||
|
lbPartion.Text ="" + partLst[barcode];
|
|||
|
try
|
|||
|
{
|
|||
|
partionId = Convert.ToInt16(barcode);
|
|||
|
}
|
|||
|
catch (Exception er)
|
|||
|
{
|
|||
|
input_txt.Enabled = true;
|
|||
|
focusOn(input_txt, " 分区号码");
|
|||
|
|
|||
|
MessageBox.Show("解析分区ID发生错误:" + er.Message);
|
|||
|
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
Cursor.Current = System.Windows.Forms.Cursors.WaitCursor;
|
|||
|
try
|
|||
|
{
|
|||
|
DataTable dt = client.getPartionRequests(partionId, LoginInfo.UserId, LoginInfo.Token);
|
|||
|
dg1.DataSource = dt;
|
|||
|
|
|||
|
/*dg1.TableStyles.Clear();
|
|||
|
DataGridTableStyle dgts = new DataGridTableStyle();
|
|||
|
dgts.MappingName = dt.TableName; // 必须用 ds.TableName, dt.TableSpace 不行!!!!
|
|||
|
dg1.TableStyles.Add(dgts);
|
|||
|
|
|||
|
dg1.TableStyles[0].GridColumnStyles["拣货单"].Width = 0;
|
|||
|
// dg1.TableStyles[0].GridColumnStyles["体积"].Width = 80;
|
|||
|
// dg1.TableStyles[0].GridColumnStyles["重量"].Width = 80;
|
|||
|
// dg1.TableStyles[0].GridColumnStyles["明细"].Width = 30;
|
|||
|
dg1.TableStyles[0].GridColumnStyles["color"].Width = 0;
|
|||
|
dg1.TableStyles[0].GridColumnStyles["分区"].Width = 0;
|
|||
|
dg1.TableStyles[0].GridColumnStyles["分区编号"].Width = 0;
|
|||
|
// dg1.TableStyles[0].GridColumnStyles["分播台"].Width = 30;
|
|||
|
* */
|
|||
|
}
|
|||
|
catch (Exception er)
|
|||
|
{
|
|||
|
Cursor.Current = System.Windows.Forms.Cursors.Default;
|
|||
|
MessageBox.Show("发生错误:" + er.Message);
|
|||
|
input_txt.Enabled = true;
|
|||
|
focusOn(input_txt, " 分区号码");
|
|||
|
return;
|
|||
|
}
|
|||
|
Cursor.Current = System.Windows.Forms.Cursors.Default;
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//to get part pick requests
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
MessageBox.Show("请扫分区条码或箱子条码");
|
|||
|
return;
|
|||
|
}
|
|||
|
input_txt.Text = "";
|
|||
|
input_txt.Enabled = true;
|
|||
|
focusOn(input_txt, " 周转箱编号");
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
private void clearResult()
|
|||
|
{
|
|||
|
lbResult.Text = "";
|
|||
|
}
|
|||
|
private void clearPart()
|
|||
|
{
|
|||
|
lbBox.Text = "";
|
|||
|
partionId = 0;
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
string lightOrder(string plateId, int partion)
|
|||
|
{
|
|||
|
|
|||
|
HttpWebRequest webReq;
|
|||
|
webReq = (HttpWebRequest)WebRequest.Create(new Uri(svrUrl + string.Format(svrMethod, plateId, partion)));
|
|||
|
lbUrl.Text = svrUrl + string.Format(svrMethod, plateId, partion);
|
|||
|
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;
|
|||
|
}
|
|||
|
|
|||
|
void getMethodUrl()
|
|||
|
{
|
|||
|
svrMethod = "/lightByPlate?plateId={0}&partion={1}";
|
|||
|
|
|||
|
}
|
|||
|
private void getSvrUrl()
|
|||
|
{
|
|||
|
Cursor.Current = System.Windows.Forms.Cursors.WaitCursor;
|
|||
|
try
|
|||
|
{
|
|||
|
svrUrl = client.getLightService();
|
|||
|
lbUrl.Text = svrUrl;
|
|||
|
getMethodUrl();
|
|||
|
}
|
|||
|
catch (Exception er)
|
|||
|
{
|
|||
|
Cursor.Current = System.Windows.Forms.Cursors.Default;
|
|||
|
// MessageBox.Show("发生错误:" + er.Message);
|
|||
|
showErrorMsg(er);
|
|||
|
return;
|
|||
|
}
|
|||
|
Cursor.Current = System.Windows.Forms.Cursors.Default;
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
private void dg1_DoubleClick_1(object sender, EventArgs e)
|
|||
|
{
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
void clear()
|
|||
|
{
|
|||
|
dg1.DataSource = null;
|
|||
|
lbUrl.Text = lbResult.Text = "";
|
|||
|
}
|
|||
|
}
|
|||
|
}
|