using HH.WMS.Client.Common;
using HH.WMS.Client.CustomControl;
using HH.WMS.Entitys;
using HH.WMS.Entitys.Basic;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace HH.WMS.Client.frm
{
public partial class frmPacking : frmTemplet
{
public frmPacking()
{
InitializeComponent();
}
#region ¼ÓÔØ¸´Ñę́
///
/// ¼ÓÔØ¸´Ñę́
///
private void LoadPackingBit()
{
if (StaticUtil.RecheckBits.Count == 0)
{
MessageBox.Show("Çëά»¤¸´Ñę́");
return;
}
for (int i = 0; i < StaticUtil.RecheckBits.Count; i++)
{
string containsName = "packingBit" + (i + 1);
Control existsCurrent = tblPacking.ContainsFirst(containsName);
if (existsCurrent != null)
{
PackingBit packingBit = existsCurrent as PackingBit;
packingBit.lblBit.Text = StaticUtil.RecheckBits[i];
}
}
}
#endregion
#region ¼ÓÔØµ±Ç°·Ö²¥Öв¨´Î
///
/// ¼ÓÔØµ±Ç°·Ö²¥Öв¨´Î
///
private void LoadSowingWave()
{
string str = WebApiManager.HttpWMS_Get("/api/PackReview/GetPackReviewOut");
OperateResult or = JsonConvert.DeserializeObject(str);
if (!or.Success)
{
MessageBox.Show(or.Msg);
return;
}
List outMst = or.GetData>();
foreach (var m in outMst)
{
foreach (Control c in tblPacking.Controls)
{
if (c is PackingBit)
{
PackingBit packingBit = c as PackingBit;
if (!string.IsNullOrEmpty(packingBit.lblOpNo.Text))
continue;
else
{
packingBit.lblOpNo.Text = m.CN_S_OP_NO;
Color color = new Color();
color = m.Sowed ? Color.Green : Color.Yellow;
packingBit.BackColor = color;
}
}
}
}
}
#endregion
private void ScanPackBit(string bit)
{
Control existsCurrent = tblPacking.ContainsFirst(bit);
if (existsCurrent != null)
{
PackingBit packingBit = existsCurrent as PackingBit;
string outNo = packingBit.lblOpNo.Text;
if (string.IsNullOrEmpty(outNo))
{
MessageBox.Show("µ±Ç°Î»ÖÃûÓгö¿âµ¥");
return;
}
if (packingBit.BackColor != Color.Green)
{
MessageBox.Show("ÇëɨÃèÒÑ·Ö²¥µÄ³ö¿âµ¥");
}
string str = WebApiManager.HttpWMS_Get("/api/PackReview/GetPackReviewOutDtl?outNo=" + outNo);
OperateResult or = JsonConvert.DeserializeObject(str);
if (!or.Success)
{
MessageBox.Show(or.Msg);
return;
}
List outDtl = or.GetData>();
dgvWaitUp.AutoGenerateColumns = false;
dgvWaitUp.DataSource = outDtl;
}
else
{
MessageBox.Show("δÕÒµ½Î»Öãº" + bit);
}
}
private void ScanBox()
{
string boxNo = "";
string outNo = txtOutNo.Text;
var postEntity = new
{
TokenId = StaticUtil.TokenId,
PostData = new
{
BoxNo = boxNo,
OutNo = outNo,
BoxDtl = boxDtlList
}
};
string str = WebApiManager.HttpWMS_Post("/api/PackReview/ScanPackingBox", JsonConvert.SerializeObject(postEntity));
var or = JsonConvert.DeserializeObject(str);
if (!or.Success)
{
MessageBox.Show(or.Msg); return;
}
boxDtlList = or.GetData>();
//datasource bind
//to do ..
}
TN_WM_B_OUT_PACKEntity outPackEntity = null;
List boxDtlList = new List();
private void ScanItem()
{
if (outPackEntity == null)
{
MessageBox.Show("ÇëÏÈÑ¡Ôñ×°ÏäÂë");
return;
}
AutoBomItemEntity itemInfo = new AutoBomItemEntity();
List outDtl = (List)dgvWaitUp.DataSource;
var currentItemInfo = outDtl.Find(f => f.CN_S_ITEM_CODE == itemInfo.CN_S_ITEM_CODE);
if (currentItemInfo == null)
{
MessageBox.Show("ÎïÁÏ£º" + itemInfo.CN_S_ITEM_CODE + "²»ÊôÓÚµ±Ç°³ö¿âµ¥");
return;
}
if (itemInfo.CN_F_MIN_PACK_QTY > (currentItemInfo.CN_F_QUANTITY - currentItemInfo.CN_F_PACKED_QTY))
{
MessageBox.Show("ÎïÁÏ£º" + itemInfo.CN_S_ITEM_CODE + "ÊýÁ¿´óÓÚ³ö¿âµ¥ÊýÁ¿");
return;
}
TN_WM_B_BOX_DTLEntity boxDtlEntity = new TN_WM_B_BOX_DTLEntity()
{
CN_F_QUANTITY = itemInfo.CN_F_MIN_PACK_QTY,
CN_S_ITEM_CODE = itemInfo.CN_S_ITEM_CODE,
CN_S_ITEM_NAME = itemInfo.CN_S_ITEM_NAME,
CN_S_ITEM_STATE = currentItemInfo.CN_S_ITEM_STATE,
CN_S_LOT_CODE = currentItemInfo.CN_S_LOT_CODE,
CN_S_MEASURE_UNIT = itemInfo.CN_S_MEASURE_UNIT,
CN_S_OWNER = currentItemInfo.CN_S_OWNER,
CN_S_PACKCODE = "",
CN_S_PACKING_CODE = outPackEntity.CN_S_PACKING_CODE,
CN_S_SERIAL_NO = ""
};
boxDtlList.Add(boxDtlEntity);
//SaveBoxDtl
var postEntity = new
{
TokenId = StaticUtil.TokenId,
PostData = new
{
OutNo = "",
BoxDtl = boxDtlList
}
};
string str = WebApiManager.HttpWMS_Post("/api/PackReview/SaveBoxDtl", JsonConvert.SerializeObject(postEntity));
OperateResult or = JsonConvert.DeserializeObject(str);
if (!or.Success)
{
MessageBox.Show(or.Msg);
return;
}
currentItemInfo.CN_F_QUANTITY += itemInfo.CN_F_MIN_PACK_QTY;
//datasource to do ...
}
private void frmPacking_Load(object sender, EventArgs e)
{
LoadPackingBit();
}
}
}