コード例 #1
0
ファイル: SetBaseMgr.cs プロジェクト: Novthirteen/yfkey-scms
        public void FillResolverByBin(Resolver resolver)
        {
            User       user       = userMgr.CheckAndLoadUser(resolver.UserCode);
            StorageBin storageBin = storageBinMgr.CheckAndLoadStorageBin(resolver.Input);

            #region 校验
            if (!storageBin.IsActive)
            {
                throw new BusinessErrorException("Common.Business.Error.EntityInActive", storageBin.Code);
            }

            //if (!user.HasPermission(storageBin.Area.Location.Region.Code))
            //{
            //    throw new BusinessErrorException("Common.Business.Error.NoPermission");
            //}
            #endregion

            resolver.Description = storageBin.Description;
            resolver.BinCode     = storageBin.Code;

            //库格一定为目的(操作)
            resolver.LocationCode   = storageBin.Area.Location.Code;
            resolver.LocationToCode = storageBin.Area.Location.Code;
            resolver.Result         = languageMgr.TranslateMessage("Warehouse.CurrentBinCode", resolver.UserCode, storageBin.Code);
        }
コード例 #2
0
ファイル: PutAwayMgr.cs プロジェクト: Novthirteen/yfkey-scms
        protected override void SetDetail(Resolver resolver)
        {
            Hu hu = huMgr.CheckAndLoadHu(resolver.Input);

            if (this.locationMgr.IsHuOcuppyByPickList(resolver.Input))
            {
                throw new BusinessErrorException("Order.Error.PickUp.HuOcuppied", resolver.Input);
            }
            if (resolver.BinCode == string.Empty || resolver.BinCode == null)
            {
                throw new BusinessErrorException("Warehouse.PutAway.PlzScanBin");
            }
            if (hu.StorageBin != null && hu.StorageBin.Trim() != string.Empty && hu.StorageBin == resolver.BinCode)
            {
                throw new BusinessErrorException("Warehouse.PutAway.AlreadyInThisBin");
            }
            //校验Bin
            StorageBin        bin = storageBinMgr.CheckAndLoadStorageBin(resolver.BinCode);
            LocationLotDetail locationLotDetail = locationLotDetailMgr.CheckLoadHuLocationLotDetail(resolver.Input, string.Empty, bin.Area.Location.Code);

            locationLotDetail.NewStorageBin = bin;
            TransformerDetail transformerDetail = TransformerHelper.ConvertLocationLotDetailToTransformerDetail(locationLotDetail, true);

            resolver.AddTransformerDetail(transformerDetail);
        }
コード例 #3
0
        public LocationLotDetail ConvertTransformerDetailToLocationLotDetail(TransformerDetail transformerDetail, bool isPutAway)
        {
            LocationLotDetail locationLotDetail = locationLotDetailMgr.LoadLocationLotDetail(transformerDetail.Id);

            locationLotDetail.CurrentInspectQty = locationLotDetail.Qty;
            if (isPutAway && transformerDetail.StorageBinCode != null && transformerDetail.StorageBinCode.Trim() != string.Empty)
            {
                locationLotDetail.NewStorageBin = storageBinMgr.CheckAndLoadStorageBin(transformerDetail.StorageBinCode);
            }

            return(locationLotDetail);
        }