ldj/wince/DeiNiuWmsWINCE2/forms/StorageLocationCheck.cs

404 lines
12 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 DeiNiu.Wms.CE.Util;
namespace DeiNiu.Wms.CE
{
public partial class StorageLocationCheck : basicForm
{
#region
string gooodsid = string.Empty;
string batch = string.Empty;
int skuId = 0;
int ye = 0;
int index = 0;
DataTable dt;
decimal oldcount=0m;
DataTable dtaa = null;
// StockLocationServiceClient client { get; set; }
public StorageLocationCheck()
{
setTitle();
InitializeComponent();
initialComBoxes();
lacationid_txt.Focus();
button1.Enabled = false;
button2.Enabled = false;
// client = new StockLocationServiceClient(WcfHelp.getBasicBinding(), WcfHelp.getEndpoint("StockLocationService"));
//client.setOperId(LoginInfo.UserId, LoginInfo.Token);
}
private void BarCodeStorage_Load(object sender, EventArgs e)
{
//if (page == 0)
//{
// goodscode_txt.Enabled = true;
// cb1.Checked = false;
// cb1.Enabled = true;
//}
//else
//{
// lacationid_txt.Focus();
// goodscode_txt.Enabled = false;
// cb1.Checked = true;
// cb1.Enabled = false;
//}
}
#endregion
/// <summary>
/// 扫描商品条码,获取数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
/// <summary>
/// 绑定数据到界面
/// </summary>
/// <param name="index0"></param>
/// <param name="GetData"></param>
private void SetValue(int index0, DataTable dta)
{
ye = dt.Rows.Count;
row_lab.Text = String.Format("{0}/{1}页", ye > 0 ? index0 + 1 : index0, ye);
down_bt.Enabled = up_bt.Enabled = true;
if (ye < 2)
{
up_bt.Enabled = down_bt.Enabled = false;
}
else
{
if (index0 == 0) //首页
{
up_bt.Enabled = false;
}
else if ((index0 + 1) == ye) //最后一页
{
down_bt.Enabled = false;
}
}
int y = index0;
skuId = Convert.ToInt16(dta.Rows[y]["skuId"].ToString());
gooodsid = dta.Rows[y]["goodsId"].ToString();//商品id
name_lab.Text = dta.Rows[y]["goodsName"].ToString();//品名
spec_lab.Text = dta.Rows[y]["spec"].ToString();//规格
PCompany_lab.Text = dta.Rows[y]["manufacturer"].ToString();//生产厂商
batch = dta.Rows[y]["batch"].ToString();
batch_lab.Text = batch;//批号
product_date_lab.Text = dta.Rows[y]["productDate"].ToString();//生产日期
save_date_lab.Text = dta.Rows[y]["validDate"].ToString();//有效期
//oldcount_lab.Text = GetData[y].Val;//库存数量
string count = dta.Rows[y]["avCount"].ToString();
count_txt.Text = count;
oldcount = Convert.ToDecimal(count);
Stocknum_lab.Text = count;
lbbigcount.Text = dta.Rows[y]["bigcount"].ToString();
unit_lab.Text = dta.Rows[y]["unit"].ToString();//单位
lacationid_txt.Visible = true;
}
/// <summary>
/// 扫描货位码
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void lacationid_txt_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
dtaa = null;
string locId = lacationid_txt.Text;
lacationid_txt.Text = "";
lacationid_lab.Text = locId;
if (locId.Length < 7)
{
MessageBox.Show("请扫货位条码");
lacationid_txt.Focus();
return;
}
#region
Cursor.Current = System.Windows.Forms.Cursors.WaitCursor;
Cursor.Current = System.Windows.Forms.Cursors.WaitCursor;
try
{
dt = client.getStockLocation(locId);
}
catch (Exception er)
{
Cursor.Current = System.Windows.Forms.Cursors.Default;
//MessageBox.Show("发生错误:" + er.Message);
showErrorMsg(er);
return;
}
Cursor.Current = System.Windows.Forms.Cursors.Default;
if (dt.Rows.Count > 0)
{
SetValue(0,dt);
dtaa = dt;
button1.Enabled = true;
button2.Enabled = true;
}
else
{
//MessageBox.Show("无数据");
lacationid_lab.Text = string.Format("'{0}' 无相关库存信息", locId);
button1.Enabled=false;
button2.Enabled = false;
row_lab.Text= name_lab.Text = spec_lab.Text = PCompany_lab.Text = unit_lab.Text = "";
Stocknum_lab.Text = batch_lab.Text = row_lab.Text = product_date_lab.Text = save_date_lab.Text = "";
count_txt.Text = "0";
lacationid_txt.Focus();
ye = 0;
index = 0;
}
#endregion
Cursor.Current = System.Windows.Forms.Cursors.Default;
}
}
private void cb1_CheckStateChanged(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)//修改数量
{
try
{
string locID = lacationid_lab.Text.ToString();
decimal count = 0m;
try
{
count = Convert.ToDecimal(count_txt.Text.ToString());
}
catch
{
MessageBox.Show("请输入数量!");
count_txt.Focus();
return;
}
if (oldcount == count)
{
MessageBox.Show("请确认输入的数量");
count_txt.Focus();
return;
}
if (this.comboBox1.SelectedIndex ==0)
{
MessageBox.Show("请选择原因!");
comboBox1.Focus();
return;
}
bool i;
Cursor.Current = System.Windows.Forms.Cursors.WaitCursor;
try
{
i = client.updateStockLocation(locID, gooodsid, skuId, batch, count, comboBox1.Text.ToString(), (int)enumStockRecordType., LoginInfo.UserId, LoginInfo.Token);
}
catch (Exception er)
{
Cursor.Current = System.Windows.Forms.Cursors.Default;
MessageBox.Show("发生错误:" + er.Message);
return;
}
Cursor.Current = System.Windows.Forms.Cursors.Default;
if (i == false)
{
MessageBox.Show("修改失败!!!");
lacationid_txt.Focus();
}
else
{
MessageBox.Show("修改成功!");
//Stocknum_lab.Text ="库存:" +sl;
dtaa = null;
name_lab.Text = spec_lab.Text = PCompany_lab.Text = lacationid_lab.Text = unit_lab.Text = lbbigcount.Text = "";
Stocknum_lab.Text = batch_lab.Text = row_lab.Text = product_date_lab.Text = save_date_lab.Text = "";
count_txt.Text = "0";
lacationid_txt.Focus();
}
}
catch(Exception er)
{
showErrorMsg(er); //MessageBox.Show("出错了:" + er.Message);
lacationid_txt.Focus();
}
}
private void button2_Click(object sender, EventArgs e)//货位清零
{
if (this.comboBox1.SelectedIndex == 0)
{
MessageBox.Show("请选择原因!");
comboBox1.Focus();
return;
}
Message me = new Message();
me.title = "您确认要清空货位吗?";
if(me.ShowDialog()==DialogResult.Cancel)
{
lacationid_txt.Focus();
return;
}
me.title = "真的要清空吗?";
if (me.ShowDialog() == DialogResult.Cancel)
{
lacationid_txt.Focus();
return;
}
me.title = "请再次确认是否要清空货位?";
if (me.ShowDialog() == DialogResult.Cancel)
{
lacationid_txt.Focus();
return;
}
string locId = lacationid_lab.Text.ToString();
bool tr ;
Cursor.Current = System.Windows.Forms.Cursors.WaitCursor;
try
{
tr = client.clearLocation(locId, comboBox1.Text, LoginInfo.UserId, LoginInfo.Token);
}
catch (Exception er)
{
Cursor.Current = System.Windows.Forms.Cursors.Default;
// MessageBox.Show("发生错误:" + er.Message);
showErrorMsg(er);
return;
}
Cursor.Current = System.Windows.Forms.Cursors.Default;
if(tr==true)
{
MessageBox.Show("货位清空成功!");
dtaa = null;
name_lab.Text = spec_lab.Text = PCompany_lab.Text = lacationid_lab.Text = unit_lab.Text = "";
Stocknum_lab.Text = batch_lab.Text = row_lab.Text = product_date_lab.Text = save_date_lab.Text = "";
count_txt.Text = "0";
lacationid_txt.Focus();
}
else
{ MessageBox.Show("货位清空失败!!!!");
lacationid_txt.Focus();
}
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void lacationid_txt_TextChanged(object sender, EventArgs e)
{
}
private void initialComBoxes()
{
Utils.buildCombox(2008, this.comboBox1);
}
/// <summary>
/// 上一页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void up_bt_Click(object sender, EventArgs e)
{
if (index < ye)
{
index--;
SetValue(index, dt);
}
}
/// <summary>
/// 下一页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void down_bt_Click(object sender, EventArgs e)
{
if (index < ye)
{
index++;
SetValue(index, dt);
}
}
}
}