Пример #1
0
        public void StartTransit(int wo_id, string workcenterName)
        {
            VirtualWorkorder wo = (VirtualWorkorder)Workorders[wo_id];

            wo.ChangeStatus(VirtualWorkorder.Statuses.OnRoute);
            LocationInventories[workcenterName].Remove(wo);
        }
Пример #2
0
        public void Complete(int wo_id)
        {
            VirtualWorkorder wo = (VirtualWorkorder)Workorders[wo_id];

            wo.SetNextOp();
            wo.ChangeStatus(VirtualWorkorder.Statuses.Open);
        }
Пример #3
0
        public void Ship(int wo_id)
        {
            VirtualWorkorder wo = (VirtualWorkorder)Workorders[wo_id];

            Workorders.Remove(wo_id);
            LocationInventories["Shipping Dock"].Remove(wo);
            Changes.Add(new Change(wo_id, false));
        }
Пример #4
0
        public void StopTransit(int wo_id, string workcenterName)
        {
            VirtualWorkorder wo = (VirtualWorkorder)Workorders[wo_id];

            wo.ChangeStatus(VirtualWorkorder.Statuses.Open);
            if (!LocationInventories[workcenterName].Contains(wo))
            {
                LocationInventories[workcenterName].Add(wo);
            }
        }
Пример #5
0
        public void AddWorkorder(string location, IWork wo)
        {
            if (Workorders.ContainsKey(wo.Id))
            {
                throw new System.ArgumentException("Workorder already exists in MES");
            }
            VirtualWorkorder newWo = new VirtualWorkorder(wo.CurrentOpIndex, wo);

            Workorders[newWo.Id] = newWo;
            LocationInventories[location].Add(newWo);
            Changes.Add(new Change(newWo.Id, true));
        }
Пример #6
0
        public void AddWorkorder(string location, IWork work)
        {
            if (Workorders.ContainsKey(work.Id))
            {
                throw new System.ArgumentException("Workorder already exists in ERP");
            }

            VirtualWorkorder newWo = new VirtualWorkorder(work.CurrentOpIndex, work);

            Workorders[newWo.Id] = newWo;

            if (location == "none")
            {
                return;
            }
            LocationInventories[location].Add(newWo);
        }
Пример #7
0
        public void Move(int wo_id, string source_name, string destination_name)
        {
            if (!Workorders.ContainsKey(wo_id))
            {
                throw new System.ArgumentOutOfRangeException("Workorder does not exist");
            }

            if (!Locations.ContainsKey(source_name))
            {
                throw new System.ArgumentException("Source Location does not exist");
            }

            if (!Locations.ContainsKey(destination_name))
            {
                throw new System.ArgumentException("Destination Location does not exist");
            }

            VirtualWorkorder wo = (VirtualWorkorder)Workorders[wo_id];

            LocationInventories[source_name].Remove(wo);
            LocationInventories[destination_name].Add(wo);
        }