Ejemplo n.º 1
0
        public static bool TransferMaterialToLocation(MaterialWarehouseItem item, Domain domain, string location, int qty, string comments)
        {
            if (!new MaterialLocationTransferValidator(item, domain, location, qty).Validated())
            {
                return(false);
            }

            var repo      = Scout.Core.Data.GetRepository(domain.Session);
            var warehouse = new MaterialsWarehouseInventory(repo);

            try
            {
                warehouse.DecreaseItemQuantity(item.Part, item.Domain, item.RackLocation, qty);
                warehouse.IncreaseItemQuantity(item.Part, item.Domain, location, qty);

                // Write Transaction
                WriteTransferLocationTransaction(item, domain, location, qty, comments);

                return(repo.Save());
            }
            catch (Exception ex)
            {
                Scout.Core.UserInteraction.Dialog.ShowMessage(ex.Message, UserMessageType.Error);
                return(false);
            }
        }
Ejemplo n.º 2
0
        public static bool IssueOutMaterial(MaterialWarehouseItem item, Shopfloorline shopfloorline, int qty)
        {
            if (!new MaterialIssueOutValidator(item, shopfloorline, qty).Validated())
            {
                return(false);
            }

            try
            {
                var repo       = Scout.Core.Data.GetRepository(shopfloorline.Session);
                var warehouse  = new MaterialsWarehouseInventory(repo);
                var consumable = new MaterialsConsumableInventory(repo);

                consumable.IncreaseItemQty(item.Part, shopfloorline, qty);
                warehouse.DecreaseItemQuantity(item.Part, item.Domain, item.RackLocation, qty);

                // Write the transaction
                WriteIssueOutTransaction(item, qty, shopfloorline);

                //Commit
                return(repo.Save());
            }
            catch (Exception ex)
            {
                Scout.Core.UserInteraction.Dialog.ShowMessage(ex.Message, UserMessageType.Error);
                return(false);
            }
        }
Ejemplo n.º 3
0
 private void Reset()
 {
     partText_Validated(null, null);
     SelectedItem = null;
     partText.SelectAll();
     partText.Focus();
 }
 public MaterialLocationTransferValidator(MaterialWarehouseItem item, Domain domain, string location, int qty)
 {
     m_item     = item;
     m_domain   = domain;
     m_location = location;
     m_qty      = qty;
 }
Ejemplo n.º 5
0
        private void domainItemsGrid_DoubleClick(object sender, EventArgs e)
        {
            MaterialWarehouseItem selectedItem =
                domainItemsView.GetFocusedRow() as MaterialWarehouseItem;

            if (selectedItem != null)
            {
                SelectedItem = selectedItem;
            }
        }
Ejemplo n.º 6
0
        private void LoadItemResults()
        {
            MaterialWarehouseItem selectedItem =
                warehouseItemsView.GetFocusedRow() as MaterialWarehouseItem;

            if (selectedItem != null)
            {
                SelectedItem = selectedItem;
            }
        }
Ejemplo n.º 7
0
        public async Task CreateMaterial(Material material)
        {
            _repository.Material.CreateMaterial(material);
            await _repository.SaveAsync();

            var materialWarehouseItem = new MaterialWarehouseItem()
            {
                MaterialId = material.MaterialId,
                Quantity   = 0
            };

            _repository.MaterialWarehouseItem.CreateItem(materialWarehouseItem);
            await _repository.SaveAsync();
        }
Ejemplo n.º 8
0
        private static void WriteIssueOutTransaction(MaterialWarehouseItem item, int qty, Shopfloorline shopfloorline)
        {
            Part        part  = item.Part;
            Transaction trans = TransactionFactory.CreateTransaction(part.Session, "MATLISSUEOUT");

            trans.TransType       = "MATLISSUEOUT";
            trans.DepartLocation  = item.Domain.FullLocation + "-" + item.RackLocation;
            trans.ArrivalLocation = shopfloorline.FullLocation;
            trans.Part            = part;
            trans.Qty             = qty;
            trans.TransRef        = "Material Issue Out";
            trans.TransBy         = Security.UserSecurity.CurrentUser.Login;
            trans.TransDate       = DateTime.Now;
            trans.Item            = InventoryRepository.GetItemRecordById(trans.Session, "LRAWMATERIALS000");
        }
Ejemplo n.º 9
0
        private static void WriteTransferLocationTransaction(MaterialWarehouseItem item, Domain domain, string location, int qty, string comments)
        {
            Part        part  = item.Part;
            Transaction trans = TransactionFactory.CreateTransaction(part.Session, "MATLTRANSFER");

            trans.TransType       = "MATLTRANSFER";
            trans.DepartLocation  = item.RackLocation;
            trans.ArrivalLocation = location;
            trans.Part            = part;
            trans.Qty             = qty;
            trans.TransRef        = "Material Location Transfer";
            trans.TransBy         = Security.UserSecurity.CurrentUser.Login;
            trans.TransDate       = DateTime.Now;
            trans.Item            = InventoryRepository.GetItemRecordById(trans.Session, "LRAWMATERIALS000");
            trans.Comments        = comments;
        }
Ejemplo n.º 10
0
        public static bool PutAwayMaterial(MaterialWarehouseItem item, RackLocation location, int qty, string comments)
        {
            if (!new PutAwayMaterialValidator(item, location, qty).Validated())
            {
                return(false);
            }

            var repo      = location.Session.AsRepository();
            var warehouse = new MaterialsWarehouseInventory(repo);

            warehouse.IncreaseItemQuantity(item.Part, item.Domain, location.Label, qty);
            warehouse.DecreaseItemQuantity(item.Part, item.Domain, null, qty);

            // Write Transaction
            WriteMaterialPutAwayTransaction(item.Part, qty, item.Domain, location.Label, comments);

            repo.Save();

            return(true);
        }
Ejemplo n.º 11
0
 private void Reset()
 {
     partText_Validated(null, null);
     SelectedItem = null;
 }
Ejemplo n.º 12
0
 public PutAwayMaterialValidator(MaterialWarehouseItem item, RackLocation location, int qty)
 {
     m_item     = item;
     m_location = location;
     m_qty      = qty;
 }