Пример #1
0
        /// <summary>
        /// 保存按钮。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void tsbSave_Click(object sender, EventArgs e)
        {
            //判断是否通过验证。
            if (!this.Validate())
            {
                return;
            }
            string factoryRoomKey = Convert.ToString(this.lueFactoryRoom.EditValue);
            string operationName  = this.lueOperation.Text;
            string storeKey       = Convert.ToString(this.lueStoreName.EditValue);

            string materialLot         = this.txtMaterialLot.Text.Trim().ToUpper();
            string orderNumber         = Convert.ToString(this.lueWorkOrderNo.Text);
            string proId               = Convert.ToString(this.lueProId.Text);
            string efficiency          = Convert.ToString(this.lueEfficiency.Text);
            string grade               = Convert.ToString(this.teGrade.Text);
            string supplierName        = Convert.ToString(this.lueSupplierName.Text);
            string supplierCode        = this.teSupplierCode.Text.Trim();
            string materialKey         = Convert.ToString(this.lueMaterialCode.EditValue);
            string materialCode        = this.lueMaterialCode.Text.Trim();
            string materialDescription = this.txtMaterialDescription.Text.Trim();
            string issueQty            = this.txtIssueQty.Text.Trim();
            string memo = Convert.ToString(this.meMemo.Text);

            string issueNo = this.txtIssueNo.Text.Trim();

            if (string.IsNullOrEmpty(issueNo))
            {
                issueNo = DateTime.Now.ToString("yyyyMMddHHmmss");
            }
            string supplierLot = this.txtSupplierLot.Text.Trim();
            string issueStore  = Convert.ToString(this.lueIssueStore.EditValue);
            string unit        = this.txtUnit.Text;
            string userName    = this.txtOperatorNumber.Text;
            string timeZone    = PropertyService.Get(PROPERTY_FIELDS.TIMEZONE);
            string shiftName   = Convert.ToString(this.lueShiftName.EditValue);

            if (string.IsNullOrEmpty(shiftName))
            {
                //MessageService.ShowMessage("没有进行排班,请先排班。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0001}"), StringParser.Parse("${res:Global.SystemInfo}"));

                this.lueShiftName.Focus();
                return;
            }
            if (string.IsNullOrEmpty(factoryRoomKey))
            {
                //MessageService.ShowMessage("车间名称必须选择。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0002}"), StringParser.Parse("${res:Global.SystemInfo}"));
                this.lueFactoryRoom.Focus();
                return;
            }
            if (string.IsNullOrEmpty(operationName))
            {
                //MessageService.ShowMessage("工序名称必须选择。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0003}"), StringParser.Parse("${res:Global.SystemInfo}"));
                this.lueOperation.Focus();
                return;
            }
            if (string.IsNullOrEmpty(storeKey))
            {
                //MessageService.ShowMessage("线上仓名称必须选择。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0004}"), StringParser.Parse("${res:Global.SystemInfo}"));
                this.lueStoreName.Focus();
                return;
            }

            if (string.IsNullOrEmpty(materialLot))
            {
                //MessageService.ShowMessage("领料项目号必须输入。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0005}"), StringParser.Parse("${res:Global.SystemInfo}"));
                this.txtMaterialLot.Focus();
                return;
            }
            if (string.IsNullOrEmpty(orderNumber))
            {
                //MessageService.ShowMessage("工单号必须输入。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0006}"), StringParser.Parse("${res:Global.SystemInfo}"));
                this.lueWorkOrderNo.Focus();
                return;
            }
            if (string.IsNullOrEmpty(proId))
            {
                //MessageService.ShowMessage("产品ID号必须输入。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0007}"), StringParser.Parse("${res:Global.SystemInfo}"));
                this.lueProId.Focus();
                return;
            }
            if (string.IsNullOrEmpty(efficiency))
            {
                //MessageService.ShowMessage("转换效率必须输入。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0008}"), StringParser.Parse("${res:Global.SystemInfo}"));
                this.lueEfficiency.Focus();
                return;
            }
            if (string.IsNullOrEmpty(grade))
            {
                //MessageService.ShowMessage("等级必须输入。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0009}"), StringParser.Parse("${res:Global.SystemInfo}"));
                this.teGrade.Focus();
                return;
            }
            if (string.IsNullOrEmpty(supplierName))
            {
                //MessageService.ShowMessage("原材料供应商必须输入。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0010}"), StringParser.Parse("${res:Global.SystemInfo}"));
                this.lueSupplierName.Focus();
                return;
            }
            if (string.IsNullOrEmpty(supplierCode))
            {
                //MessageService.ShowMessage("供应商编号必须输入。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0011}"), StringParser.Parse("${res:Global.SystemInfo}"));
                this.teSupplierCode.Focus();
                return;
            }
            if (string.IsNullOrEmpty(materialKey))
            {
                //MessageService.ShowMessage("原材料编码必须输入。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0012}"), StringParser.Parse("${res:Global.SystemInfo}"));
                this.lueMaterialCode.Focus();
                return;
            }
            if (string.IsNullOrEmpty(issueQty))
            {
                //MessageService.ShowMessage("数量必须输入。", "提示");
                MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0013}"), StringParser.Parse("${res:Global.SystemInfo}"));
                this.txtIssueQty.Focus();
                return;
            }
            if (!ValidMaterialLotIsMatch())
            {
                return;
            }

            ReceiveMaterialEntity entity = new ReceiveMaterialEntity();

            try
            {
                Hashtable ht = new Hashtable();
                ht.Add("FACTORYROOM_KEY", factoryRoomKey);
                ht.Add("OPERATION_NAME", operationName);
                ht.Add("STORE_KEY", storeKey);
                ht.Add("MATERIAL_LOT", materialLot);
                ht.Add("ORDER_NUMBER", orderNumber);
                ht.Add("PRO_ID", proId);
                ht.Add("EFFICIENCY", efficiency);
                ht.Add("GRADE", grade);
                ht.Add("SUPPLIER_NAME", supplierName);
                ht.Add("SUPPLIER_CODE", supplierCode);
                ht.Add("MATERIAL_KEY", materialKey);
                ht.Add("MATERIAL_CODE", materialCode);
                ht.Add("MATERIAL_DESCRIPTION", materialDescription);
                ht.Add("ISSUE_QTY", issueQty);
                ht.Add("MEMO", memo);
                ht.Add("ISSUE_NO", issueNo);
                ht.Add("SUPPLIER_LOT", supplierLot);
                ht.Add("ISSUE_STORE", issueStore);
                ht.Add("UNIT", unit);
                ht.Add("USER_NAME", userName);
                ht.Add("TIME_ZONE", timeZone);
                ht.Add("SHIFT_NAME", shiftName);
                ht.Add("OEM", string.Empty);
                //ht.Add("IsUpdateOldReceiveMaterialInfo", IsUpdateOldReceiveMaterialInfo);
                ht.Add("IsUpdateOldReceiveMaterialInfo", true);
                entity.ManualSaveReceiveMaterial(ht);
                if (!string.IsNullOrEmpty(entity.ErrorMsg))
                {
                    MessageBox.Show(entity.ErrorMsg);
                }
                else
                {
                    //MessageService.ShowMessage("保存成功。", "提示");
                    MessageService.ShowMessage(StringParser.Parse("${res:FanHai.Hemera.Addins.ManualReceiveMaterialCtrl.msg.0014}"), StringParser.Parse("${res:Global.SystemInfo}"));
                    ResetTextValue();
                    this.txtMaterialLot.Focus();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }