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(); } } }