コード例 #1
0
ファイル: FInInvByProduce.cs プロジェクト: windygu/.net-wms
        void objForm_StackInfoEvent(object sender, ParentChildRelateEventArgs <System.Collections.Hashtable> e)
        {
            this.SelectedStack   = e.CustomObject["stackcode"].ToString();
            this.SelectedStorage = e.CustomObject["storagecode"].ToString();

            //Check从垛位使用状况的页面带过来的垛位和库位
            if (this.CheckSelecetedStackAndStorage(this.SelectedStorage, this.SelectedStack, Convert.ToString(this.ucLabelComboxINVType.SelectedItemValue)))
            {
                this.ucLabelEditStock.Value = e.CustomObject["stackcode"].ToString();
            }

            InventoryFacade inventoryFacade = new InventoryFacade(DataProvider);

            //更新剁位状态
            if (this.ucLabelEditStock.Value.Trim().Length > 0)
            {
                object objectStackMessage = inventoryFacade.GetStackMessage(this.ucLabelEditStock.Value.Trim().ToUpper());
                if (objectStackMessage != null)
                {
                    this.ucLabelEditstackMessage.Value = ((StackMessage)objectStackMessage).StackQtyMessage;
                }
                else
                {
                    SStack objectStack = (SStack)inventoryFacade.GetSStack(this.ucLabelEditStock.Value.Trim().ToUpper());
                    if (objectStack != null)
                    {
                        this.ucLabelEditstackMessage.Value = "0" + "/" + objectStack.Capacity;
                    }
                    else
                    {
                        this.ucLabelEditstackMessage.Value = string.Empty;
                    }
                }
            }
        }
コード例 #2
0
        private bool InputStack(string stackCode)
        {
            InventoryFacade inventoryFacade = new InventoryFacade(this.DataProvider);

            SStack stackObject = (SStack)inventoryFacade.GetSStack(stackCode.Trim().ToUpper());

            if (stackObject == null)
            {
                ApplicationRun.GetInfoForm().Add(
                    new UserControl.Message(MessageType.Error, "$CS_Stack_Is_Not_Exist"));
                return(false);
            }

            object[] rcardToStackPallet = inventoryFacade.GetRcardToStackPallet(stackCode.Trim().ToUpper(), string.Empty, string.Empty);

            //转移垛位物料信息
            object[] rcardToStackObjects = inventoryFacade.GetStackToRcardByStack(stackCode.Trim().ToUpper(), string.Empty);

            if (rcardToStackObjects == null)
            {
                //Message:转移垛位没有物料
                ApplicationRun.GetInfoForm().Add(
                    new UserControl.Message(MessageType.Error, "$CS_STACK_Not_Have_Item"));
                return(false);
            }

            if (inventoryFacade.CheckStackIsOnlyAllowOneItem(ucLabelEditStock.Value.ToString()) &&
                CheckStackItemError(this.ucLabelEditStock.Value.Trim(), this.ucLabelComboxINVType.SelectedItemValue.ToString(),
                                    ((RcardToStackPallet)rcardToStackPallet[0]).ItemCode))
            {
                //Message:目标垛位的物料和当前物料不一致
                ApplicationRun.GetInfoForm().Add(
                    new UserControl.Message(MessageType.Error, "$CS_STACK_ITEM_DIFF"));
                return(false);
            }

            //检查垛位容量是否满
            if (!inventoryFacade.CheckStackCapacity(this.ucLabelComboxINVType.SelectedItemValue.ToString().Trim().ToUpper(),
                                                    this.ucLabelEditStock.Value.Trim().ToUpper(), stackCode.Trim().ToUpper()))
            {
                ApplicationRun.GetInfoForm().Add(
                    new UserControl.Message(MessageType.Error, "$CS_STACK_CAPACITY_FULL"));
                return(false);
            }

            //更新垛位
            inventoryFacade.UpdateStackToRcard(this.ucLabelComboxINVType.SelectedItemValue.ToString().Trim().ToUpper(),
                                               this.ucLabelEditStock.Value.Trim().ToUpper(),
                                               ((StackToRcard)rcardToStackObjects[0]).StorageCode,
                                               stackCode.Trim().ToUpper(), ApplicationService.Current().UserCode);


            //Load Grid
            this.LoadGrid(rcardToStackPallet, this.ucLabelEditStock.Value.Trim(), this.txtUseNPallet.Value.Trim());

            return(true);
        }
コード例 #3
0
        protected override object GetEditObject()
        {
            if (facade == null)
            {
                facade = new InventoryFacade(base.DataProvider);
            }

            SStack stack = this.facade.CreateSStack();

            //stack.StackCode = FormatHelper.PKCapitalFormat(FormatHelper.CleanString(this.txtLocationCodeEdit.Text, 40));
            //stack.StackDesc = FormatHelper.CleanString(this.txtLocationNameEdit.Text, 100);

            //stack.OrgID = GlobalVariables.CurrentOrganizations.First().OrganizationID;
            //object[] storageList =facade.QueryStorage(stack.StorageCode);
            //if (storageList != null)
            //{
            //    stack.OrgID = ((Storage)storageList[0]).OrgID;
            //}

            //stack.MaintainUser = this.GetUserCode();

            return(stack);
        }