123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263 |
- using ComponentFactory.Krypton.Toolkit;
- using NXWMS.Client.FrmCustom;
- using NXWMS.Client.Model.AppModels.Condition.OutStock;
- using NXWMS.Client.Model.AppModels.Result.Common;
- using NXWMS.Client.Model.AppModels.Result.OutStock;
- using NXWMS.Client.Model.CoreModels;
- using NXWMS.Commons;
- using NXWMS.Services;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Web.UI.WebControls;
- using System.Windows.Forms;
- using static NXWMS.Client.FrmCustom.CustomEventMsg;
- namespace NXWMS.Forms.OutStock.frmOutstockChild
- {
- /// <summary>
- /// 新增下架单
- /// </summary>
- public partial class frmChildAddWmsOutPutDown : KryptonForm
- {
- /// <summary>
- /// 窗体构造函数
- /// </summary>
- public frmChildAddWmsOutPutDown()
- {
- InitializeComponent();
- }
- #region 全局变量
- private string CurrSourceNo { get; set; }
- private string CurrTrayCode { get; set; }
- #endregion
- #region 初始化数据
- /// <summary>
- /// 窗体加载函数
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void frmChildAddWmsOutPutDown_Load(object sender, EventArgs e)
- {
- InitComboBoxItemData();
- InitCusPalletNoCmbMsg();
- }
- /// <summary>
- /// 初始化下拉列表数据
- /// </summary>
- private void InitComboBoxItemData()
- {
- /*
- ToDo:后续把下拉列表转为 后台获取数据,目前是写死的。
- 1:WMS端自动下架;2:WMS端手动下架;3:手持端出库下架;4:质检出库下架;5:盘点出库下架。
- */
- List<BasDictionaryResult> results = new List<BasDictionaryResult>();
- #region 单据类型
- results = BasDictionaryUtil.basDictionaryResultLst.FindAll(x => x.DICTIONARY_CODE == "PutDownTypeDesc");
- if (results.Count > 0)
- {
- kcmb_PutDownType.Items.Clear();
- foreach (var item in results)
- {
- kcmb_PutDownType.Items.Add(new ListItem
- {
- Value = item.DICTIONARY_ITEM_CODE,
- Text = item.DICTIONARY_ITEM_NAME,
- });
- }
- kcmb_PutDownType.SelectedIndex = 0;
- }
- else
- {
- KryptonMessageBox.Show("未找到下架单类型的字典项数据!");
- }
- #endregion
- }
- /// <summary>
- /// 自定义到货通知单下拉列表的数据行选择事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- void CusPalletNo_AfterSelector(object sender, AfterSelectorEventArgs e)
- {
- try
- {
- DataGridViewRow row = e.Value as DataGridViewRow;
- DataRowView dataRow = row.DataBoundItem as DataRowView;
- string palletNoMsg = dataRow["托盘号"].ToString().Trim();
- string billNoMsg = dataRow["单据号"].ToString().Trim();
- string billTypeMsg = dataRow["单据类型"].ToString().Trim();
- kdgv_PutDownDtlData.Rows.Clear();
- if (billTypeMsg == "发货单")
- {
- var result = WmsInvoiceService.wmsOutInvoiceService.GetWmsOutInvoiceRecordListForPage(new WmsOutInvoiceRecordSearchMd
- {
- InvoiceNoMsg = billNoMsg,
- PalletNoMsg = palletNoMsg,
- InvoiceRecordStatus = "0",
- PageNum = 1,
- EveryPageQty = 100
- });
- if (result.Status == OperateStatus.Success)
- {
- CurrSourceNo = result.Data[0].INVOICE_NO;
- CurrTrayCode = result.Data[0].TRAY_CODE;
- ktb_SbinNo.Text = result.Data[0].BIN_CODE;
- ktb_SbinNo.Enabled = false;
- foreach (WmsOutInvoiceRecordResult item in result.Data)
- {
- int index = kdgv_PutDownDtlData.Rows.Add();
- kdgv_PutDownDtlData.Rows[index].Cells[0].Value = index + 1;
- kdgv_PutDownDtlData.Rows[index].Cells[1].Value = item.MATERIEL_CODE;
- kdgv_PutDownDtlData.Rows[index].Cells[2].Value = item.MATERIEL_NAME;
- kdgv_PutDownDtlData.Rows[index].Cells[3].Value = item.MATERIEL_BARCODE;
- kdgv_PutDownDtlData.Rows[index].Cells[4].Value = item.MATERIEL_SPEC;
- kdgv_PutDownDtlData.Rows[index].Cells[5].Value = item.BATCH_NO;
- kdgv_PutDownDtlData.Rows[index].Cells[6].Value = item.INVOICE_QTY;
- kdgv_PutDownDtlData.Rows[index].Cells[7].Value = item.UNIT_CODE;
- kdgv_PutDownDtlData.Rows[index].Cells[8].Value = item.PACKAGE_CODE;
- kdgv_PutDownDtlData.Rows[index].Cells[9].Value = item.SUPPLIER_CODE;
- kdgv_PutDownDtlData.Rows[index].Cells[10].Value = item.SUPPLIER_NAME;
- kdgv_PutDownDtlData.Rows[index].Cells[11].Value = item.PRODUCT_DATE;
- kdgv_PutDownDtlData.Rows[index].Cells[12].Value = item.EXP_DATE;
- kdgv_PutDownDtlData.Rows[index].Cells[13].Value = item.INSPECTION_RESULT_NAME;
- kdgv_PutDownDtlData.Rows[index].Cells[14].Value = item.ITEM_STATUS_NAME;
- kdgv_PutDownDtlData.Rows[index].Cells[15].Value = item.INVOICE_RECORD_ID;
- kdgv_PutDownDtlData.Rows[index].Cells[16].Value = item.INSPECTION_RESULT;
- kdgv_PutDownDtlData.Rows[index].Cells[17].Value = item.ITEM_STATUS;
- }
- kcmb_PutDownType.SelectedItem = new ListItem
- {
- Value = "1",
- Text = "WMS端自动下架",
- };
- }
- }
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message);
- }
- }
- /// <summary>
- /// 初始化自定义到货通知单下拉列表的数据
- /// </summary>
- private void InitCusPalletNoCmbMsg()
- {
- cmb_CusPalletNo.sDisplayField = "托盘号,单据类型,单据号";
- cmb_CusPalletNo.DisplayMember = "托盘号";
- cmb_CusPalletNo.sKeyWords = "托盘号";
- cmb_CusPalletNo.DataSource = CreateCusPalletNoTable();
- cmb_CusPalletNo.RowFilterVisible = true;
- cmb_CusPalletNo.AfterSelector += new AfterSelectorEventHandler(CusPalletNo_AfterSelector); ;
- }
- /// <summary>
- /// 创建数据源表格
- /// </summary>
- /// <returns></returns>
- private DataTable CreateCusPalletNoTable()
- {
- DataTable dt = new DataTable();
- DataColumn dc = new DataColumn("托盘号");
- dt.Columns.Add(dc);
- dc = new DataColumn("单据类型");
- dt.Columns.Add(dc);
- dc = new DataColumn("单据号");
- dt.Columns.Add(dc);
- var result = WmsInvoiceService.wmsOutPutDownService.GetPutDownPalletMsgList();
- if (result.Status == OperateStatus.Success)
- {
- DataRow dr1 = dt.NewRow();
- foreach (WmsOutPutDownPalletMsgResult item in result.Data)
- {
- DataRow dr = dt.NewRow();
- dr["托盘号"] = item.PALLET_CODE;
- dr["单据类型"] = item.BillType;
- dr["单据号"] = item.BillNo;
- dt.Rows.Add(dr);
- }
- }
- return dt;
- }
- #endregion
- #region 按钮事件
- /// <summary>
- /// 确认按钮事件
- /// 提交添加完成的上架单数据
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void btnConfirm_Click(object sender, EventArgs e)
- {
- /*
- * ToDo: 后续增加托盘校验: 是否已经存在下架单信息。
- */
- WmsOutPutDownResult wmsOutPutDownResult = new WmsOutPutDownResult();
- wmsOutPutDownResult.PALLET_CODE = cmb_CusPalletNo.Text;
- wmsOutPutDownResult.PUTDOWN_TYPE = Convert.ToInt32(((ListItem)kcmb_PutDownType.SelectedItem).Value);
- wmsOutPutDownResult.PUTDOWN_PRIORITY = Convert.ToInt32(knud_PutDownPriority.Value);
- wmsOutPutDownResult.SBIN_CODE = ktb_SbinNo.Text;
- wmsOutPutDownResult.TRAY_CODE = CurrTrayCode;
- wmsOutPutDownResult.SOURCE_NO = CurrSourceNo;
- wmsOutPutDownResult.DESCRIBE = ktb_Describe.Text;
- wmsOutPutDownResult.CREATE_BY = AppConfig.UserLoginResult.UserInfo.UserId;
- wmsOutPutDownResult.UPDATE_BY = AppConfig.UserLoginResult.UserInfo.UserId;
- List<WmsOutPutDownDtlResult> wmsOutPutDownDtlList = new List<WmsOutPutDownDtlResult>();
- foreach (DataGridViewRow item in kdgv_PutDownDtlData.Rows)
- {
- wmsOutPutDownDtlList.Add(new WmsOutPutDownDtlResult
- {
- MATERIEL_CODE = item.Cells[1].Value.ToString(),
- MATERIEL_NAME = item.Cells[2].Value.ToString(),
- MATERIEL_BARCODE = item.Cells[3].Value == null ? null : item.Cells[3].Value.ToString(),
- MATERIEL_SPEC = item.Cells[4].Value == null ? null : item.Cells[4].Value.ToString(),
- BATCH_NO = item.Cells[5].Value.ToString(),
- PUTDOWN_QTY = Convert.ToDecimal(item.Cells[6].Value),
- UNIT_CODE = item.Cells[7].Value.ToString(),
- PACKAGE_CODE = item.Cells[8].Value == null ? null : item.Cells[8].Value.ToString(),
- SUPPLIER_CODE = item.Cells[9].Value == null ? null : item.Cells[9].Value.ToString(),
- SUPPLIER_NAME = item.Cells[10].Value == null ? null : item.Cells[10].Value.ToString(),
- PRODUCT_DATE = Convert.ToDateTime(item.Cells[11].Value),
- EXP_DATE = Convert.ToDateTime(item.Cells[12].Value),
- INSPECTION_RESULT = item.Cells[16].Value.ToString(),
- ITEM_STATUS = Convert.ToInt32(item.Cells[17].Value),
- CREATE_BY = AppConfig.UserLoginResult.UserInfo.UserId,
- UPDATE_BY = AppConfig.UserLoginResult.UserInfo.UserId
- });
- }
- wmsOutPutDownResult.WmsOutPutDownDtlList = wmsOutPutDownDtlList;
- var result = WmsInvoiceService.wmsOutPutDownService.AddWmsOutPutDownData(wmsOutPutDownResult);
- if (result.Status == OperateStatus.Success)
- {
- KryptonMessageBox.Show(result.Message);
- frmWmsOutPutDown.RefreshFrmHost();
- this.Close();
- }
- else
- {
- KryptonMessageBox.Show(result.Message);
- }
- }
- /// <summary>
- /// 取消按钮事件
- /// 退出新增界面
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void btnCancel_Click(object sender, EventArgs e)
- {
- this.Close();
- }
- #endregion
- }
- }
|