Example #1
0
        /// <summary>
        /// Adds a new interface to the workstation.
        /// </summary>
        /// <param name="WorkstationName">The name of the workstation</param>
        /// <param name="IpAddress">The ipAddress</param>
        /// <param name="Subnetmask">The subnetmask</param>
        /// <param name="Portnum">The portnumber.</param>
        public void AddInterfaceToWorkstation(string WorkstationName, IPAddress IpAddress, IPAddress Subnetmask, int Portnum = -1)
        {
            Workstation workstation = GetWorkstationByName(WorkstationName);
            var         iface       = workstation.AddInterface(IpAddress, Subnetmask, Portnum);

            NetworkViewController.Instance.AddInterfaceToHardwareNode(workstation.Name, iface.Name);
        }
Example #2
0
        public async Task <IActionResult> Edit(int id, [Bind("ID,Code,Name,Online,QA,DepartmentID")] Workstation workstation)
        {
            if (id != workstation.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(workstation);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!WorkstationExists(workstation.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["DepartmentID"] = new SelectList(_context.Departments, "ID", "ID", workstation.DepartmentID);
            return(View(workstation));
        }
Example #3
0
        /// <summary>
        /// The assign from.
        /// </summary>
        /// <param name="w">
        /// The w.
        /// </param>
        public void AssignFrom(Workstation w)
        {
            Id   = w.Id;
            Name = w.Name;
            PointDistributionPolicy = w.PointDistributionPolicy;
            if (SertificateUecs != null)
            {
                SertificateUecs.Clear();
            }
            else
            {
                SertificateUecs = new List <SertificateUec>();
            }

            foreach (var sert in w.SertificateUecs)
            {
                var s = new SertificateUec();
                s.Id             = sert.Id;
                s.IsActive       = sert.IsActive;
                s.Key            = sert.Key;
                s.Type           = sert.Type;
                s.Version        = sert.Version;
                s.Workstation    = new Workstation();
                s.Workstation.Id = w.Id;
                s.InstallDate    = sert.InstallDate;
                SertificateUecs.Add(s);
            }

            UecCerticateType    = w.UecCerticateType;
            UecReaderName       = w.UecReaderName;
            SmardCardReaderName = w.SmardCardReaderName;
        }
Example #4
0
        protected void gvWorkstations_RowUpdating(object sender, GridViewUpdateEventArgs e)
        {
            TextBox                    n       = this.gvWorkstations.Rows[gvWorkstations.EditIndex].Cells[0].FindControl("txtWorkstationName") as TextBox;
            TextBox                    mac     = this.gvWorkstations.Rows[gvWorkstations.EditIndex].Cells[0].FindControl("txtMACAddress") as TextBox;
            DropDownList               o       = this.gvWorkstations.Rows[gvWorkstations.EditIndex].Cells[0].FindControl("ddlOS") as DropDownList;
            RequiredFieldValidator     rfvName = this.gvWorkstations.Rows[gvWorkstations.EditIndex].Cells[0].FindControl("rfvClassroomName") as RequiredFieldValidator;
            RequiredFieldValidator     rfvMac  = this.gvWorkstations.Rows[gvWorkstations.EditIndex].Cells[0].FindControl("rfvMAC") as RequiredFieldValidator;
            RegularExpressionValidator revMac  = this.gvWorkstations.Rows[gvWorkstations.EditIndex].Cells[0].FindControl("revMAC") as RegularExpressionValidator;

            rfvName.Validate();
            rfvMac.Validate();
            revMac.Validate();

            if (rfvName.IsValid && rfvMac.IsValid && revMac.IsValid)
            {
                Workstation w = new Workstation();
                w.edit(Convert.ToInt32(e.Keys[0].ToString()), n.Text, mac.Text, Convert.ToInt32(ddlClassroom.SelectedValue), 0, Convert.ToInt32(o.SelectedValue));

                lblText.Text              = "<br />Record modified successfully<br />";
                gvWorkstations.EditIndex  = -1;
                gvWorkstations.DataSource = w.load(Convert.ToInt32(this.ddlClassroom.SelectedValue));
                gvWorkstations.DataBind();

                this.gvWorkstations.ShowFooter = false;
                btnInsert.Visible = true;
            }
        }
Example #5
0
 /// <summary>
 /// Validates the layer while sending a packet.
 /// </summary>
 /// <param name="Destination">The Destination</param>
 /// <param name="CurrentNode">Current Node</param>
 /// <param name="ValInfo">Validation Info</param>
 /// <param name="Tags">Tags</param>
 /// <param name="LayerIndex">The Layer index</param>
 public void ValidateSend(Workstation Destination, Workstation CurrentNode, ValidationInfo ValInfo, Dictionary <string, object> Tags, int LayerIndex)
 {
     if (ValInfo.Source != null && ValInfo.Source.Equals(CurrentNode))
     {
         Tags.Add(name, LayerIndex);
     }
 }
Example #6
0
        private Workstation GetWorkstationByName(string Name)
        {
            Workstation workstation = network.GetHardwarenodeByName(Name) as Workstation;

            Debug.Assert(workstation != null, "Workstation with the name " + Name + " could not be found");
            return(workstation);
        }
Example #7
0
        public void WhenIInsertWorkstationEntitiesParentedToExistingBuildingEntitiesUsingSynchronousMethods(int entitiesCount, bool makeAsyncCalls)
        {
            this.InsertEntity <Workstation>(makeAsyncCalls, index =>
            {
                var building    = _testContext.LocalEntities.OfType <Building>().Skip(index).First();
                var workstation = new Workstation()
                {
                    InventoryIndex = index,
                    Name           = $"Workstation {Guid.NewGuid().ToString("N")}",

                    // assign a building id for the join tests
                    BuildingId = building.BuildingId,

                    // this is not going to get inserted in the db, but we need it for local comparisons
                    Building = building
                };

                if (building.Workstations == null)
                {
                    building.Workstations = new List <Workstation>();
                }

                ((IList <Workstation>)building.Workstations).Add(workstation);

                return(workstation);
            }, entitiesCount);
        }
Example #8
0
        /// <summary>
        /// Creates a hardwarenode and adds it to the Network and to the NetworkViewController.
        /// </summary>
        /// <param name="Type">Type of the node</param>
        /// <param name="Name">The name.</param>
        /// <returns>
        /// The new created hardwarenode.
        /// </returns>
        public Hardwarenode CreateHardwareNode(HardwarenodeType Type, string Name = null)
        {
            Hardwarenode node     = null;
            string       nodeName = Name ?? CreateUniqueName(Type);

            switch (Type)
            {
            case HardwarenodeType.Switch:
                node = new Switch(nodeName);
                break;

            case HardwarenodeType.Workstation:
                node = new Workstation(nodeName);
                break;

            case HardwarenodeType.Router:
                node = new Router(nodeName);
                break;
            }

            // Add node to the Network and to the NetworkViewController
            network.AddHardwarenode(node);
            NetworkViewController.Instance.AddHardwarenode(node);

            return(node);
        }
Example #9
0
    protected void FindWorkstation()
    {
        // Find workstation with space for berries (lowest?)
        // TODO prioritise top up of currently worked stations?
        foreach (var workstation in GameObject.FindObjectsOfType <Workstation>())
        {
            if (workstation.Berries < Workstation.MAX_BERRIES)
            {
                DropOff = workstation;
                break;
            }
        }

        if (DropOff != null)
        {
            NPC.SetTargetCell(BuildableArea.GetCellFromPosition(DropOff.DropZone));
            // If find then set duration back to 0
            Duration = 0;
        }
        else
        {
            // If don't find one then set duration timeout, but still search every update
            if (Duration == 0)
            {
                StartTime = Time.time;
                Duration  = 5;                // TODO make this clearer variable
            }
        }

        // At end of timeout any fruit is destroyed
        // TODO If it takes too long drop berries in sell bin?
        // TODO Or just eat it?
    }
Example #10
0
        public void WhenIBatchUpdateAMaximumOfWorkstationEntitiesSkippingAndUsingSynchronousMethods(int?maxCount, int?skipCount, bool useAsyncMethods)
        {
            var updateData = new Workstation()
            {
                Name = "Batch updated workstation"
            };

            // mimic the behavior on our side
            var entitiesToUpdate = _testContext.LocalEntities.OfType <Workstation>().Skip(skipCount ?? 0).Take(maxCount ?? int.MaxValue).ToArray();

            foreach (var originalEntity in entitiesToUpdate)
            {
                _testContext.LocalEntities[_testContext.LocalEntities.IndexOf(originalEntity)] = new Workstation()
                {
                    WorkstationId = originalEntity.WorkstationId,
                    Name          = updateData.Name
                };
            }

            // update the db
            FormattableString whereCondition = $"{nameof(Workstation.WorkstationId):C} in ({string.Join(",", entitiesToUpdate.Select(originalEntity => originalEntity.WorkstationId))})";
            int recordsUpdated;

            if (useAsyncMethods)
            {
                recordsUpdated = _testContext.DatabaseConnection.BulkUpdateAsync(updateData, statement => statement.Where(whereCondition)).GetAwaiter().GetResult();
            }
            else
            {
                recordsUpdated = _testContext.DatabaseConnection.BulkUpdate(updateData, statement => statement.Where(whereCondition));
            }

            Assert.That(recordsUpdated, Is.EqualTo(entitiesToUpdate.Count()));
        }
Example #11
0
        protected override void Verify(ProductionOrderProgress item, int operation)
        {
            // ProductionOrder order = CommonRepository.GetOneByFilter<ProductionOrder>(x => x.OrderNo == item.ProductionOrderNo);
            // if (order == null)
            // {
            //     throw new BusinessException(GlobalConstants.EXCEPTION_CODE_DATA_NOT_FOUND, $"计划单号为{item.ProductionOrderNo}的生产计划不存在!");
            // }
            // item.ProductionOrderId = order.RecordId;
            // item.ProductionId = order.ProductionId;
            // item.ProductionCode = order.ProductionCode;
            // item.ProductionName = order.ProductionName;

            item.ProductionOrderId = -1;
            Workshop workshop = CommonRepository.GetOneByFilter <Workshop>(x => x.OrgCode == item.WorkshopCode);

            if (workshop == null)
            {
                throw new BusinessException(GlobalConstants.EXCEPTION_CODE_DATA_NOT_FOUND, $"车间代码为{item.WorkshopCode}的车间资料不存在!");
            }
            item.WorkshopId   = workshop.RecordId;
            item.WorkshopName = workshop.OrgName;

            Workstation workstation = CommonRepository.GetOneByFilter <Workstation>(x => x.OrgCode == item.WorkstationCode);

            if (workstation == null)
            {
                throw new BusinessException(GlobalConstants.EXCEPTION_CODE_DATA_NOT_FOUND, $"工位代码为{item.WorkstationCode}的工位资料不存在!");
            }
            item.WorkstationId   = workstation.RecordId;
            item.WorkstationName = workstation.OrgName;
        }
Example #12
0
        /// <summary>
        /// Removes an interface from the workstation or as switch.
        /// </summary>
        /// <param name="NodeName">The name of the workstation or a switch</param>
        /// <param name="InterfaceName">The name of the interface.</param>
        public void RemoveInterface(string NodeName, string InterfaceName)
        {
            Hardwarenode node = network.GetHardwarenodeByName(NodeName);

            if (node == null)
            {
                Debug.Assert(node != null, "Node with the name " + NodeName + " could not be found"); return;
            }
            Workstation workstation = node as Workstation;
            Switch      nodeSwitch  = node as Switch;

            if (workstation != null)
            {
                workstation.RemoveInterface(InterfaceName);
                NetworkViewController.Instance.RemoveInterfaceFromNode(workstation.Name, InterfaceName);
                Connection c = workstation.GetConnectionAtPort(InterfaceName);
                if (c != null)
                {
                    RemoveConnection(c.Name);
                }
            }
            else if (nodeSwitch != null)
            {
                nodeSwitch.RemoveInterface(InterfaceName);
                NetworkViewController.Instance.RemoveInterfaceFromNode(nodeSwitch.Name, InterfaceName);
                Connection c = nodeSwitch.GetConnectionAtPort(InterfaceName);
                if (c != null)
                {
                    RemoveConnection(c.Name);
                }
            }
        }
        /// <summary>
        /// Retrieves the latest changeset ID associated with a path
        /// </summary>
        /// <param name="localPath">A path on the local filesystem</param>
        /// <param name="credentials">Credentials used to authenticate against the serer</param>
        /// <returns></returns>
        public int GetLatestChangesetId(string localPath, ICredentials credentials)
        {
            int    latestChangesetId = 0;
            string server;

            Workstation   workstation   = new Workstation(versionControlClientAssembly);
            WorkspaceInfo workspaceInfo = workstation.GetLocalWorkspaceInfo(localPath);

            server = workspaceInfo.ServerUri.ToString();
            VersionControlServer sourceControl = new VersionControlServer(clientAssembly, versionControlClientAssembly, server, credentials);

            Workspace            workspace            = sourceControl.GetWorkspace(localPath);
            WorkspaceVersionSpec workspaceVersionSpec = new WorkspaceVersionSpec(versionControlClientAssembly, workspace);

            VersionSpec   versionSpec   = new VersionSpec(versionControlClientAssembly);
            RecursionType recursionType = new RecursionType(versionControlClientAssembly);

            IEnumerable history = sourceControl.QueryHistory(localPath, versionSpec.Latest, recursionType.Full, workspaceVersionSpec);

            IEnumerator historyEnumerator = history.GetEnumerator();
            Changeset   latestChangeset   = new Changeset(versionControlClientAssembly);

            if (historyEnumerator.MoveNext())
            {
                latestChangeset = new Changeset(versionControlClientAssembly, historyEnumerator.Current);
            }

            if (latestChangeset.Instance != null)
            {
                latestChangesetId = latestChangeset.ChangesetId;
            }
            return(latestChangesetId);
        }
Example #14
0
 public bool SendSelectedWorkerTo(Workstation workstation)
 {
     if (SelectedWorker != null)
     {
         return(SelectedWorker.AssignWorker(workstation));
     }
     return(false);
 }
Example #15
0
        private static Workstation AddThisWorkstation()
        {
            Workstation w = new Workstation();

            w.Name = System.Environment.MachineName;
            retriever.SaveItem(w);
            return(w);
        }
        public ActionResult DeleteWorkstations(int ID)
        {
            Workstation workstation = virames <Workstation>
                                      .Initialize(new Workstation()).Where(x => x.ID.ToString() == ID.ToString())
                                      .Take();

            return(View(workstation));
        }
        public ActionResult EditWorkstation(int ID)
        {
            ViewBag.RecordStatus = new SelectList(Enum.GetValues(typeof(RecordStatus)));
            Workstation workstation = virames <Workstation>
                                      .Initialize(new Workstation()).Where(x => x.ID.ToString() == ID.ToString())
                                      .Take();

            return(View(workstation));
        }
Example #18
0
    /// <summary>
    /// Add a workstation
    /// </summary>
    /// <param name="Station"></param>
    public void AddWorksation(Workstation Station)
    {
        if (Stations.Contains(Station))
        {
            return;
        }

        Stations.Add(Station);
    }
        private async Task LoadWorkstationAsync()
        {
            Workstation = await WorkstationService.GetWorkstationByIdAsync(WorkstationId);

            if (Workstation == null)
            {
                throw new Exception("Workstation not found.");
            }
        }
Example #20
0
        private void PropertyControlAddRoute()
        {
            Workstation station = (Workstation)selectedNode;

            NetworkManager.Instance.AddRoute(station.Name, IPAddress.None, new IPAddress(new byte[] { 255, 255, 255, 0 }), IPAddress.None, station.Interfaces.First());
            propertyControl.RetainScrollPosition = true;
            LoadElementProperties(selectedNode.Name);
            propertyControl.RetainScrollPosition = false;
        }
Example #21
0
        protected override void OnStart(string[] args)
        {
            WriteToFile("Service is started at " + DateTime.Now);
            timer.Elapsed += new ElapsedEventHandler(OnElapsedTime);
            timer.Interval = 5000; //number in milisecinds
            timer.Enabled  = true;

            Workstation.StartWorkstation();
        }
Example #22
0
    /// <summary>
    /// Remove a workstation
    /// </summary>
    /// <param name="Station"></param>
    public void RemoveWorksation(Workstation Station)
    {
        if (!Stations.Contains(Station))
        {
            return;
        }

        Stations.Remove(Station);
    }
Example #23
0
        public async Task EditWorkstationAsync(Workstation workstation)
        {
            if (workstation == null)
            {
                throw new ArgumentNullException(nameof(workstation));
            }

            string[] properties = { "DepartmentId", "RFID" };
            await _workstationRepository.UpdateOnlyPropAsync(workstation, properties);
        }
    public static WorkstationStatusUI Instantiate(Workstation workstation)
    {
        var instance = Instantiate(ResourceLoader.GetInstance().TimerCirclePreab, MainCanvas.Get().transform);

        instance.transform.SetAsFirstSibling();
        instance.GetComponent <AttachUIToTarget>().SetTarget(workstation.transform);
        instance.workstation = workstation;
        instance.assignable  = workstation.GetComponent <Assignable>();
        return(instance);
    }
        public async Task <ActionResult <Workstation> > PostWorkstation(Workstation workstation)
        {
            // Indicate to the database context we want to add this new record
            _context.Workstations.Add(workstation);
            await _context.SaveChangesAsync();

            // Return a response that indicates the object was created (status code `201`) and some additional
            // headers with details of the newly created object.
            return(CreatedAtAction("GetWorkstation", new { id = workstation.Id }, workstation));
        }
    public void Build(string display_name, List <string> names, float startin_pos = 500f)
    {
        EraseAll();
        factoryEntities        = new List <FactoryEntity>();
        ProductionJobName.text = display_name;
        float        current_x_pos        = startin_pos;
        List <float> workstationPositions = new List <float>();

        workstationPositions.Add(current_x_pos); // workstation start
        string prev_n = names[0];

        foreach (string n in names)
        {
            if (prev_n != n)
            {
                workstationPositions.Add(current_x_pos); // conveyor start
                // Create a conveyor
                GameObject conv = Instantiate(conveyor, transform);
                conv.GetComponent <RectTransform>().position = new Vector2(current_x_pos, y_pos);
                current_x_pos += conv.GetComponent <RectTransform>().rect.width;
                workstationPositions.Add(current_x_pos); // conveyor end
            }
            // Create a workstation
            Workstation w        = workstationNameDict[n];
            GameObject  instance = Instantiate(w.prefab, transform);
            instance.GetComponent <RectTransform>().position = new Vector2(current_x_pos, y_pos);
            factoryEntities.Add(instance.GetComponent <FactoryEntity>());
            instance.GetComponent <FactoryEntity>().workstation_var_name = n;
            current_x_pos += w.effective_width;
            prev_n         = n;
        }
        workstationPositions.Add(current_x_pos); // workstation end
        // Create a conveyor
        GameObject convf = Instantiate(conveyor, transform);

        convf.GetComponent <RectTransform>().position = new Vector2(current_x_pos, y_pos);
        current_x_pos += convf.GetComponent <RectTransform>().rect.width;
        float end_x = current_x_pos + 130; // final conveyor end
        // Create a teleporter
        GameObject tele = Instantiate(teleporter, transform);

        tele.GetComponent <RectTransform>().position = new Vector2(current_x_pos, y_pos);
        current_x_pos       += tele.GetComponent <RectTransform>().rect.width;
        teleporterController = tele.GetComponent <TeleporterController>();
        if (PlayerPrefs.GetInt("ProductionRunning") == 0)
        {
            StopAll();
        }
        SetProductionJobStatusText();
        UpdateStars();
        SetProduceParams(workstationPositions, end_x);
        SetMaterialText();
        DeleteAllCurrentProduces();
    }
Example #27
0
 public ActionResult Create(Workstation workstation)
 {
     if (ModelState.IsValid)
     {
         db.Workstations.Add(workstation);
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.ProjectId = new SelectList(db.ProjectHMIs.OrderBy(x => x.Factory.Number).ThenBy(x => x.Name), "Id", "Name", workstation.ProjectId);
     return(View(workstation));
 }
Example #28
0
        public async Task ApproveWorkstationAsync(Workstation workstation)
        {
            if (workstation == null)
            {
                throw new ArgumentNullException(nameof(workstation));
            }

            workstation.Approved = true;

            await _workstationRepository.UpdateAsync(workstation);
        }
Example #29
0
        public WorkstationDto Get(int floorId, int id)
        {
            Workstation workstation = dbContext.Set <Workstation>()
                                      .Include(w => w.Floor)
                                      .Where(w => w.Floor.Id == floorId)
                                      .SingleOrDefault(w => w.Id == id);

            return(workstation == null
                ? null
                : workstationToWorkstationDtoMapping.Map(workstation));
        }
Example #30
0
        public void Remove(int floorId, int id)
        {
            Workstation workstation = dbContext.Workstations
                                      .Include(w => w.Floor)
                                      .Where(w => w.Floor.Id == floorId)
                                      .SingleOrDefault(w => w.Id == id);

            dbContext.Set <Workstation>().Remove(workstation);

            dbContext.SaveChanges();
        }
        /// <summary>
        /// Retrieve Event Type ids
        /// </summary>
        /// <param name="workstation">work station instance</param>
        /// <returns>return event type ids</returns>
        public static string RetrieveEventTypeIds(Workstation workstation)
        {
            if (workstation == null)
            {
                throw new ArgumentNullException("workstation");
            }

            string activeEventTypeString = string.Empty;
            if (workstation.EventTypes != null && workstation.EventTypes.Count > 0)
            {
                activeEventTypeString = workstation.EventTypes.Select(v => v.EventTypeId).Aggregate((currentEventTypeId, nextEventTypeId) => string.Concat(currentEventTypeId, Comma, nextEventTypeId));
            }

            return activeEventTypeString;
        }
        /// <summary>
        /// Shows the header setting.
        /// </summary>
        /// <param name="workstation">The workstation.</param>
        /// <param name="currentViewType">Type of the current view.</param>
        /// <returns>return true or false</returns>
        public static bool ShowHeaderFooterSetting(Workstation workstation, ViewType currentViewType)
        {
            if (workstation != null)
            {
                var condition = (currentViewType == ViewType.Home) ||
                                (currentViewType == ViewType.ApplicationSettings && !string.IsNullOrEmpty(workstation.User.UserId)) ||
                                (currentViewType == ViewType.GangwaySettings && !string.IsNullOrEmpty(workstation.User.UserId) && (workstation.GangwayLocation != null ? !string.IsNullOrEmpty(workstation.GangwayLocation.Name) : false) && (workstation.GangwayLocation != null ? !string.Equals(workstation.GangwayLocation.Name, Properties.Resources.SelectLocation) : false)) ||
                                (currentViewType == ViewType.PartyDetails) ||
                                (currentViewType == ViewType.SearchGuest) ||
                                (currentViewType == ViewType.GangwayHistory) ||
                                (currentViewType == ViewType.VoyageItinerary) ||
                                (currentViewType == ViewType.SystemInformation) ||
                                (currentViewType == ViewType.StatisticsHistory);

                return condition;
            }

            return false;
        }
Example #33
0
        //SelectServer server;
        public Chat(Workstation Current, TCPClient client, TCPServer server)
        {
            InitializeComponent();

            CurrentWorkstation = Current;
            this.client = client;
            this.server = server;
            pictureBox1.BackgroundImage = Image.FromFile(Current.PictureFile);
            label2.Text = Current.name;
            this.Text = "Чат с "+ Current.name;
            if (Current.couner > 0)
            {
                history.Text = Current.name + ": " + Current.buffer;
                Current.buffer = "";
                Current.couner = 0;
            }

            //server.NewMessageEvent += new NewMessageDelegate(Handler);
        }
Example #34
0
 public void GetKey(ref Workstation station)
 {
     NetworkMessage Sendmsg = new NetworkMessage();
     Sendmsg.label = PackageLabel.getkey;
     Sendmsg.TimeStamp = DateTime.Now;
     Sendmsg.NextIP = basic.CurrentIP;
     Sendmsg.Data = null;
     byte[] Data = Serialization(Sendmsg);
     byte[] key = new byte[100000];
     try
     {
         Socket sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
         sock.Connect(station.IPAddr, basic.port);
         sock.Send(Data, Data.Length, SocketFlags.None);
         sock.Receive(key, SocketFlags.None);
         sock.Close();
     }
     catch (SocketException ex)
     {
         MessageBox.Show(ex.Message, "Ошибка при отправке пакета с запросом на ключ", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
Example #35
0
        public JobList()
        {
            this.JobsByStation = new Dictionary<Workstation, List<Job>>();

            //TODO: Füllen

            //erste Station
            var station = new Workstation(StationId.Eins, .05, .01);
            var jobs = new List<Job>();

            //Kinder
            List<Part> parts = new List<Part>();
            parts.Add((new Part(1, Program.List.SchutzblechVorneK)));
            parts.Add((new Part(1, Program.List.VorderradgruppeK)));
            parts.Add((new Part(1, Program.List.RahmenK)));
            parts.Add((new Part(2, Program.List.Mutter34)));
            parts.Add((new Part(2, Program.List.Scheibe38)));

            var job = new Job(JobId.VorderradMontageK, station, parts, 20, 6, Program.List.VorderradgruppeK);
            jobs.Add(job);

            //Damen
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.SchutzblechVorneD)));
            parts.Add((new Part(1, Program.List.RahmenD)));
            parts.Add((new Part(1, Program.List.VorderradgruppeD)));
            parts.Add((new Part(2, Program.List.Mutter34)));
            parts.Add((new Part(2, Program.List.Scheibe38)));

            job = new Job(JobId.VorderradMontageD, station, parts, 20, 6, Program.List.VorderradgruppeD);
            jobs.Add(job);

            //Herren
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.SchutzblechVorneH)));
            parts.Add((new Part(1, Program.List.RahmenH)));
            parts.Add((new Part(1, Program.List.VorderradgruppeH)));
            parts.Add((new Part(2, Program.List.Mutter34)));
            parts.Add((new Part(2, Program.List.Scheibe38)));

            job = new Job(JobId.VorderradMontageH, station, parts, 20, 6, Program.List.VorderradgruppeH);
            jobs.Add(job);

            this.JobsByStation.Add(station, jobs);

            //Zweite Station

            station = new Workstation(StationId.Zwei, .05, .01);
            jobs = new List<Job>();

            //Kinder
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.VorderradMontK)));
            parts.Add((new Part(1, Program.List.HinterradgruppeK)));
            parts.Add((new Part(1, Program.List.SchutzblechHintenK)));
            parts.Add((new Part(2, Program.List.Mutter38)));
            parts.Add((new Part(2, Program.List.Scheibe38)));

            job = new Job(JobId.RahmenUndRaederK, station, parts, 30, 5, Program.List.RahmenUndRaederK);
            jobs.Add(job);

            //Damen
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.VorderradMontD)));
            parts.Add((new Part(1, Program.List.HinterradgruppeD)));
            parts.Add((new Part(1, Program.List.SchutzblechHintenD)));
            parts.Add((new Part(2, Program.List.Mutter38)));
            parts.Add((new Part(2, Program.List.Scheibe38)));

            job = new Job(JobId.RahmenUndRaederD, station, parts, 30, 5, Program.List.RahmenUndRaederD);
            jobs.Add(job);

            //Herren
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.VorderradMontH)));
            parts.Add((new Part(1, Program.List.HinterradgruppeH)));
            parts.Add((new Part(1, Program.List.SchutzblechHintenH)));
            parts.Add((new Part(2, Program.List.Mutter38)));
            parts.Add((new Part(2, Program.List.Scheibe38)));

            job = new Job(JobId.RahmenUndRaederH, station, parts, 20, 5, Program.List.RahmenUndRaederH);
            jobs.Add(job);

            this.JobsByStation.Add(station, jobs);

            //Dritte Station

            station = new Workstation(StationId.Drei, .05, .01);
            jobs = new List<Job>();

            //Kinder
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.SattelCpl)));
            parts.Add((new Part(1, Program.List.LenkerCpl)));
            parts.Add((new Part(1, Program.List.RahmenUndRaederK)));
            parts.Add((new Part(1, Program.List.Mutter38)));
            parts.Add((new Part(1, Program.List.Schraube38)));

            job = new Job(JobId.FahrradOhnePedaleK, station, parts, 20, 5, Program.List.FahrradOhnePedaleK);
            jobs.Add(job);

            //Damen
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.SattelCpl)));
            parts.Add((new Part(1, Program.List.LenkerCpl)));
            parts.Add((new Part(1, Program.List.RahmenUndRaederD)));
            parts.Add((new Part(1, Program.List.Mutter38)));
            parts.Add((new Part(1, Program.List.Schraube38)));

            job = new Job(JobId.FahrradOhnePedaleD, station, parts, 20, 6, Program.List.FahrradOhnePedaleD);
            jobs.Add(job);

            //Herren
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.SattelCpl)));
            parts.Add((new Part(1, Program.List.LenkerCpl)));
            parts.Add((new Part(1, Program.List.RahmenUndRaederH)));
            parts.Add((new Part(1, Program.List.Mutter38)));
            parts.Add((new Part(1, Program.List.Schraube38)));

            job = new Job(JobId.FahrradOhnePedaleH, station, parts, 20, 6, Program.List.FahrradOhnePedaleH);
            jobs.Add(job);

            this.JobsByStation.Add(station, jobs);

            //Vierte Station

            station = new Workstation(StationId.Vier, .05, .01);
            jobs = new List<Job>();

            //Kinder
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.FahrradOhnePedaleK)));
            parts.Add((new Part(1, Program.List.PedalCpl)));
            parts.Add((new Part(1, Program.List.KetteK)));
            parts.Add((new Part(1, Program.List.Mutter38)));
            parts.Add((new Part(1, Program.List.Schraube38)));

            job = new Job(JobId.FahrradComplK, station, parts, 30, 6, Program.List.Kinderfahrrad);
            jobs.Add(job);

            //Damen
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.FahrradOhnePedaleD)));
            parts.Add((new Part(1, Program.List.PedalCpl)));
            parts.Add((new Part(1, Program.List.KetteD)));
            parts.Add((new Part(1, Program.List.Mutter38)));
            parts.Add((new Part(1, Program.List.Schraube38)));

            job = new Job(JobId.FahrradComplD, station, parts, 20, 7, Program.List.Damenfahrrad);
            jobs.Add(job);

            //Herren
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.FahrradOhnePedaleH)));
            parts.Add((new Part(1, Program.List.PedalCpl)));
            parts.Add((new Part(1, Program.List.KetteH)));
            parts.Add((new Part(1, Program.List.Mutter38)));
            parts.Add((new Part(1, Program.List.Schraube38)));

            job = new Job(JobId.FahrradComplH, station, parts, 30, 7, Program.List.Herrenfahrrad);
            jobs.Add(job);

            this.JobsByStation.Add(station, jobs);

            //Vierzehnte Station
            station = new Workstation(StationId.Vierzehn, .05, .01);
            jobs = new List<Job>();

            //Kinder
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Mutter38)));
               	parts.Add((new Part(1, Program.List.Lenker)));										// wirklich Lenker?
               	parts.Add((new Part(2, Program.List.Griff)));
               	parts.Add((new Part(1, Program.List.Mutter34)));

            job = new Job(JobId.LenkermontageK, station, parts, 0, 3, Program.List.LenkerCpl);
            jobs.Add(job);

            //Damen
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Mutter38)));
               	parts.Add((new Part(1, Program.List.Lenker)));
               	parts.Add((new Part(2, Program.List.Griff)));
               	parts.Add((new Part(1, Program.List.Mutter34)));

            job = new Job(JobId.LenkermontageD, station, parts, 0, 3, Program.List.LenkerCpl);
            jobs.Add(job);

            //Herren
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Mutter38)));
               	parts.Add((new Part(1, Program.List.Lenker)));
               	parts.Add((new Part(2, Program.List.Griff)));
               	parts.Add((new Part(1, Program.List.Mutter34)));

            job = new Job(JobId.LenkermontageH, station, parts, 0, 3, Program.List.LenkerCpl);
            jobs.Add(job);

            this.JobsByStation.Add(station, jobs);

            //Sechste Station

            station = new Workstation(StationId.Sechs, .3, .1);
            jobs = new List<Job>();

            //Kinder
            parts = new List<Part>();
            parts.Add((new Part(3, Program.List.Rohr34)));

            job = new Job(JobId.BiegemaschineRahmenK, station, parts, 15, 3, JobId.StanzeRahmenK);
            jobs.Add(job);

            //Damen
            parts = new List<Part>();
            parts.Add((new Part(4, Program.List.Rohr34)));

            job = new Job(JobId.BiegemaschineRahmenD, station, parts, 15, 3, JobId.StanzeRahmenD);
            jobs.Add(job);

            //Herren
            parts = new List<Part>();
            parts.Add((new Part(5, Program.List.Rohr34)));

            job = new Job(JobId.BiegemaschineRahmenH, station, parts, 15, 3, JobId.StanzeRahmenH);
            jobs.Add(job);

            //Kinder - 2
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Rohr34)));

            job = new Job(JobId.RohrbiegemaschineK, station, parts, 15, 2, JobId.LenkermontageK);
            jobs.Add(job);

            //Damen - 2
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Rohr34)));

            job = new Job(JobId.RohrbiegemaschineD, station, parts, 15, 2, JobId.LenkermontageD);
            jobs.Add(job);

            //Herren - 2
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Rohr34)));

            job = new Job(JobId.RohrbiegemaschineH, station, parts, 15, 2, JobId.LenkermontageH);
            jobs.Add(job);

            this.JobsByStation.Add(station, jobs);

            //Neunte Station
            station = new Workstation(StationId.Neun, .8, .25);
               	jobs = new List<Job>();

            //Kinder
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.Farbe)));

            job = new Job(JobId.LackierplatzSchutzblechVorneK, station, parts, 15, 3, Program.List.SchutzblechVorneK);
            jobs.Add(job);

            //Damen
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.Farbe)));

            job = new Job(JobId.LackierplatzSchutzblechVorneD, station, parts, 15, 3, Program.List.SchutzblechVorneD);
            jobs.Add(job);

            //Herren
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.Farbe)));

            job = new Job(JobId.LackierplatzSchutzblechVorneH, station, parts, 15, 3, Program.List.SchutzblechVorneH);
            jobs.Add(job);

            //Kinder - 2
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.Farbe)));

            job = new Job(JobId.LackierplatzRahmenK, station, parts, 15, 2, Program.List.RahmenK);
            jobs.Add(job);

            //Damen - 2
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.Farbe)));

            job = new Job(JobId.LackierplatzRahmenD, station, parts, 20, 2, Program.List.RahmenD);
            jobs.Add(job);

            //Herren - 2
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.Farbe)));

            job = new Job(JobId.LackierplatzRahmenH, station, parts, 15, 2, Program.List.RahmenH);
            jobs.Add(job);

            //Kinder - 3
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.Farbe)));

            job = new Job(JobId.LackierplatzSchutzblechHintenK, station, parts, 15, 3, Program.List.SchutzblechHintenK);
            jobs.Add(job);

            //Damen - 3
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.Farbe)));

            job = new Job(JobId.LackierplatzSchutzblechHintenD, station, parts, 15, 3, Program.List.SchutzblechHintenD);
            jobs.Add(job);

            //Herren - 3
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.Farbe)));

            job = new Job(JobId.LackierplatzSchutzblechHintenH, station, parts, 15, 3, Program.List.SchutzblechHintenH);
            jobs.Add(job);

            this.JobsByStation.Add(station, jobs);

            //Fuenfzehnte Station
            station = new Workstation(StationId.Fuenfzehn, .05, .01);
            jobs = new List<Job>();

            //Kinder
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Sattel)));
            parts.Add((new Part(1, Program.List.Stange12)));
            parts.Add((new Part(1, Program.List.Mutter14)));
            parts.Add((new Part(1, Program.List.Schraube14)));

            job = new Job(JobId.SattelmontageComplK, station, parts, 15, 3, Program.List.SattelCpl);
            jobs.Add(job);

            //Damen
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Sattel)));
            parts.Add((new Part(1, Program.List.Stange12)));
            parts.Add((new Part(1, Program.List.Mutter14)));
            parts.Add((new Part(1, Program.List.Schraube14)));

            job = new Job(JobId.SattelmontageComplD, station, parts, 15, 3, Program.List.SattelCpl);
            jobs.Add(job);

            //Herren
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Sattel)));
            parts.Add((new Part(1, Program.List.Stange12)));
            parts.Add((new Part(1, Program.List.Mutter14)));
            parts.Add((new Part(1, Program.List.Schraube14)));

            job = new Job(JobId.SattelmontageComplH, station, parts, 15, 3, Program.List.SattelCpl);
            jobs.Add(job);

            //Kinder - 2
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Zahnkranz)));

            job = new Job(JobId.PedalmontageK, station, parts, 15, 3, Program.List.PedalCpl);
            jobs.Add(job);

            //Damen - 2
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Zahnkranz)));

            job = new Job(JobId.PedalmontageD, station, parts, 15, 3, Program.List.PedalCpl);
            jobs.Add(job);

            //Herren - 2
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Zahnkranz)));

            job = new Job(JobId.PedalmontageH, station, parts, 15, 3, Program.List.PedalCpl);
            jobs.Add(job);

            this.JobsByStation.Add(station, jobs);

            //Siebte Station
            station = new Workstation(StationId.Sieben, .3, .1);
            jobs = new List<Job>();

            //Kinder
            job = new Job(JobId.SchweissplatzSchutzblechVorneK, station, null, 20, 2, JobId.LackierplatzSchutzblechVorneK);
            jobs.Add(job);

            //Damen
            job = new Job(JobId.SchweissplatzSchutzblechVorneD, station, null, 20, 2, JobId.LackierplatzSchutzblechVorneD);
            jobs.Add(job);

            //Herren
            job = new Job(JobId.SchweissplatzSchutzblechVorneH, station, null, 20, 2, JobId.LackierplatzSchutzblechVorneH);
            jobs.Add(job);

            //Kinder - 2
            parts = new List<Part>();
               	parts.Add((new Part(2, Program.List.Schweissdraht)));

            job = new Job(JobId.SchweissplatzRahmenK, station, parts, 20, 2, JobId.LackierplatzRahmenK);
            jobs.Add(job);

            //Damen - 2
            parts = new List<Part>();
               	parts.Add((new Part(2, Program.List.Schweissdraht)));

            job = new Job(JobId.SchweissplatzRahmenD, station, parts, 20, 2, JobId.LackierplatzRahmenD);
            jobs.Add(job);

            //Herren - 2
            parts = new List<Part>();
               	parts.Add((new Part(2, Program.List.Schweissdraht)));

            job = new Job(JobId.SchweissplatzRahmenH, station, parts, 20, 2, JobId.LackierplatzRahmenH);
            jobs.Add(job);

            //Kinder - 3
            job = new Job(JobId.SchweissplatzSchutzblechHintenK, station, null, 20, 2, JobId.LackierplatzSchutzblechHintenK);
            jobs.Add(job);

            //Damen - 3
            job = new Job(JobId.SchweissplatzSchutzblechHintenD, station, null, 20, 2, JobId.LackierplatzSchutzblechHintenD);
            jobs.Add(job);

            //Herren - 3
            job = new Job(JobId.SchweissplatzSchutzblechHintenH, station, null, 20, 2, JobId.LackierplatzSchutzblechHintenH);
            jobs.Add(job);

            //Kinder - 4
            parts = new List<Part>();
               	parts.Add((new Part(2, Program.List.Pedale)));
            parts.Add((new Part(2, Program.List.Stange12)));

            job = new Job(JobId.SchweissplatzPedaleK, station, parts, 30, 2, JobId.PedalmontageK);
            jobs.Add(job);

            //Damen - 4
            parts = new List<Part>();
               	parts.Add((new Part(2, Program.List.Pedale)));
            parts.Add((new Part(2, Program.List.Stange12)));

            job = new Job(JobId.SchweissplatzPedaleD, station, parts, 30, 2, JobId.PedalmontageD);
            jobs.Add(job);

            //Herren - 4
            parts = new List<Part>();
               	parts.Add((new Part(2, Program.List.Pedale)));
            parts.Add((new Part(2, Program.List.Stange12)));

            job = new Job(JobId.SchweissplatzPedaleH, station, parts, 30, 2, JobId.PedalmontageH);
            jobs.Add(job);

            this.JobsByStation.Add(station, jobs);

            //Achte Station
            station = new Workstation(StationId.Acht, .3, .1);
            jobs = new List<Job>();

            //Kinder
            job = new Job(JobId.StanzeSchutzblechVorneK, station, null, 15, 1, JobId.SchweissplatzSchutzblechVorneK);
            jobs.Add(job);

            //Damen
            job = new Job(JobId.StanzeSchutzblechVorneD, station, null, 15, 2, JobId.SchweissplatzSchutzblechVorneD);
            jobs.Add(job);

            //Herren
            job = new Job(JobId.StanzeSchutzblechVorneH, station, null, 15, 2, JobId.SchweissplatzSchutzblechVorneH);
            jobs.Add(job);

            //Kinder - 2
            job = new Job(JobId.StanzeRahmenK, station, null, 20, 3, JobId.SchweissplatzRahmenK);
            jobs.Add(job);

            //Damen - 2
            job = new Job(JobId.StanzeRahmenD, station, null, 25, 3, JobId.SchweissplatzRahmenD);
            jobs.Add(job);

            //Herren - 2
            job = new Job(JobId.StanzeRahmenH, station, null, 20, 3, JobId.SchweissplatzRahmenH);
            jobs.Add(job);

            //Kinder - 3
            job = new Job(JobId.StanzeSchutzblechHintenK, station, null, 15, 1, JobId.SchweissplatzSchutzblechHintenK);
            jobs.Add(job);

            //Damen - 3
            job = new Job(JobId.StanzeSchutzblechHintenD, station, null, 15, 2, JobId.SchweissplatzSchutzblechHintenD);
            jobs.Add(job);

            //Herren - 3
            job = new Job(JobId.StanzeSchutzblechHintenH, station, null, 15, 2, JobId.SchweissplatzSchutzblechHintenH);
            jobs.Add(job);

            this.JobsByStation.Add(station, jobs);

            //Zwoelfte Station
            station = new Workstation(StationId.Zwoelf, .3, .1);
               	jobs = new List<Job>();

               	//Kinder
               	job = new Job(JobId.BiegemaschineSchutzblechVorneK, station, null, 0, 3, JobId.StanzeSchutzblechVorneK);
               	jobs.Add(job);

               	//Damen
               	job = new Job(JobId.BiegemaschineSchutzblechVorneD, station, null, 0, 3, JobId.StanzeSchutzblechVorneD);
               	jobs.Add(job);

               	//Herren
               	job = new Job(JobId.BiegemaschineSchutzblechVorneH, station, null, 0, 3, JobId.StanzeSchutzblechVorneH);
               	jobs.Add(job);

               	//Kinder - 2
               	job = new Job(JobId.BiegemaschineSchutzblechHintenK, station, null, 0, 3, JobId.StanzeSchutzblechHintenK);
               	jobs.Add(job);

               	//Damen - 2
               	job = new Job(JobId.BiegemaschineSchutzblechHintenD, station, null, 0, 3, JobId.StanzeSchutzblechHintenD);
               	jobs.Add(job);

               	//Herren - 2
               	job = new Job(JobId.BiegemaschineSchutzblechHintenH, station, null, 0, 3, JobId.StanzeSchutzblechHintenH);
               	jobs.Add(job);

               	this.JobsByStation.Add(station, jobs);

               	//Dreizehnte Station
            station = new Workstation(StationId.Dreizehn, .5, .15);
               	jobs = new List<Job>();

            //Kinder
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.Blech)));

            job = new Job(JobId.BlechschereSchutzblechVorneK, station, parts, 0, 2, JobId.BiegemaschineSchutzblechVorneK);
            jobs.Add(job);

            //Damen
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.Blech)));

            job = new Job(JobId.BlechschereSchutzblechVorneD, station, parts, 0, 2, JobId.BiegemaschineSchutzblechVorneD);
            jobs.Add(job);

            //Herren
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Blech)));

            job = new Job(JobId.BlechschereSchutzblechVorneH, station, parts, 0, 2, JobId.BiegemaschineSchutzblechVorneH);
            jobs.Add(job);

            //Kinder - 2
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Blech)));

            job = new Job(JobId.BlechschereSchutzblechHintenK, station, parts, 0, 2, JobId.BiegemaschineSchutzblechHintenK);
            jobs.Add(job);

            //Damen - 2
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Blech)));

            job = new Job(JobId.BlechschereSchutzblechHintenD, station, parts, 0, 2, JobId.BiegemaschineSchutzblechHintenD);
            jobs.Add(job);

            //Herren - 2
            parts = new List<Part>();
            parts.Add((new Part(1, Program.List.Blech)));

            job = new Job(JobId.BlechschereSchutzblechHintenH, station, parts, 0, 2, JobId.BiegemaschineSchutzblechHintenH);
            jobs.Add(job);

            this.JobsByStation.Add(station, jobs);

               	//Elfte Station
               	station = new Workstation(StationId.Elf, .3, .1);
               	jobs = new List<Job>();

               	//Kinder
               	parts = new List<Part>();
               	parts.Add((new Part(2, Program.List.Nabe)));
               	parts.Add((new Part(1, Program.List.Gabel)));
               	parts.Add((new Part(1, Program.List.Welle)));

               	job = new Job(JobId.VorderradNabenMontageK, station, parts, 20, 3, Program.List.VorderradgruppeK);
               	jobs.Add(job);

               	//Damen
               	parts = new List<Part>();
            parts.Add((new Part(2, Program.List.Nabe)));
               	parts.Add((new Part(1, Program.List.Gabel)));
               	parts.Add((new Part(1, Program.List.Welle)));

               	job = new Job(JobId.VorderradNabenMontageD, station, parts, 20, 3, Program.List.VorderradgruppeD);
               	jobs.Add(job);

            //Herren
            parts = new List<Part>();
            parts.Add((new Part(2, Program.List.Nabe)));
               	parts.Add((new Part(1, Program.List.Gabel)));
               	parts.Add((new Part(1, Program.List.Welle)));

               	job = new Job(JobId.VorderradNabenMontageH, station, parts, 20, 3, Program.List.VorderradgruppeH);
               	jobs.Add(job);

               	//Kinder - 2
               	parts = new List<Part>();
               	parts.Add((new Part(2, Program.List.Nabe)));
               	parts.Add((new Part(1, Program.List.Freilauf)));

               	job = new Job(JobId.HinterradNabenMontageK, station, parts, 10, 3, Program.List.HinterradgruppeK);
               	jobs.Add(job);

               	//Damen - 2
               	parts = new List<Part>();
               	parts.Add((new Part(2, Program.List.Nabe)));
               	parts.Add((new Part(1, Program.List.Freilauf)));

            job = new Job(JobId.HinterradNabenMontageD, station, parts, 10, 3, Program.List.HinterradgruppeD);
               	jobs.Add(job);

            //Herren - 2
            parts = new List<Part>();
               	parts.Add((new Part(2, Program.List.Nabe)));
               	parts.Add((new Part(1, Program.List.Freilauf)));

            job = new Job(JobId.HinterradNabenMontageH, station, parts, 20, 3, Program.List.HinterradgruppeH);
               	jobs.Add(job);

               	this.JobsByStation.Add(station, jobs);

               	//Zehnte Station
               	station = new Workstation(StationId.Zehn, .3, .1);
               	jobs = new List<Job>();

               	//Kinder
               	parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.FelgeCplK)));
              	parts.Add((new Part(36, Program.List.SpeicheK)));

               	job = new Job(JobId.RadmontageVorneK, station, parts, 20, 4, JobId.VorderradNabenMontageK);
            jobs.Add(job);

            //Damen
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.FelgeCplD)));
              	parts.Add((new Part(36, Program.List.SpeicheD)));

               	job = new Job(JobId.RadmontageVorneD, station, parts, 20, 4, JobId.VorderradNabenMontageD);
               	jobs.Add(job);

               	//Herren
               	parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.FelgeCplH)));
              	parts.Add((new Part(36, Program.List.SpeicheH)));

               	job = new Job(JobId.RadmontageVorneH, station, parts, 20, 4, JobId.VorderradNabenMontageH);
               	jobs.Add(job);

               	//Kinder - 2
               	parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.FelgeCplK)));
              	parts.Add((new Part(36, Program.List.SpeicheK)));

               	job = new Job(JobId.RadmontageHintenK, station, parts, 20, 4, JobId.HinterradNabenMontageK);
            jobs.Add(job);

            //Damen - 2
            parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.FelgeCplD)));
              	parts.Add((new Part(36, Program.List.SpeicheD)));

               	job = new Job(JobId.RadmontageHintenD, station, parts, 20, 4, JobId.HinterradNabenMontageD);
               	jobs.Add(job);

               	//Herren - 2
               	parts = new List<Part>();
               	parts.Add((new Part(1, Program.List.FelgeCplH)));
              	parts.Add((new Part(36, Program.List.SpeicheH)));

               	job = new Job(JobId.RadmontageHintenH, station, parts, 20, 4, JobId.HinterradNabenMontageH);
               	jobs.Add(job);

               	this.JobsByStation.Add(station, jobs);
        }
 /// <summary>
 /// Initializes a new instance of the PersonBoardingService class.
 /// </summary>
 /// <param name="workstation">Instance of Workstation</param>
 public PersonBoardingService(Workstation workstation)
 {
     this.workstation = workstation;
 }
Example #37
0
 /// <summary>
 /// Retrieves the guest.
 /// </summary>
 /// <param name="message">The message.</param>
 /// <param name="personData">The person data.</param>
 /// <param name="workStation">The work station.</param>
 /// <param name="eventType">Type of the event.</param>
 /// <param name="personTypeList">The person type list.</param>
 /// <param name="personList">The person list.</param>
 private static void RetrieveGuestForReservation(NotificationEvent message, Person personData, Workstation workStation, NotificationEventType eventType, List<PersonType> personTypeList, IList<PersonBase> personList)
 {
     var task = Task.Run(async () => await PersonsService.RetrievePersonsBySearchText(workStation.Ship.ShipId, message.ReservationNumber, personTypeList, SearchType.Reservation, null, null, null, 0, null, folioNumber: null));
     task.Wait();
     if (!task.IsCanceled && !task.IsFaulted)
     {
         personData = task.Result;
         if (personData != null)
         {
             personData.Guests.Iterate(g =>
             {
                 var person = personList.FirstOrDefault(p => p.PersonId.Equals(message.PersonId, StringComparison.OrdinalIgnoreCase));
                 if (person != null)
                 {
                     MapPersonData(person, g.MapToPersonBase(), eventType);
                     RetrievePhoto(person);
                 }
             });
         }
     }
 }
Example #38
0
        /// <summary>
        /// Retrieves the guest.
        /// </summary>
        /// <param name="message">The message.</param>
        /// <param name="personData">The person data.</param>
        /// <param name="workStation">The work station.</param>
        /// <param name="eventType">Type of the event.</param>
        /// <param name="personTypeList">The person type list.</param>
        /// <param name="personList">The person list.</param>
        /// <returns>
        /// The person
        /// </returns>
        private static Person RetrievePerson(NotificationEvent message, Person personData, Workstation workStation, NotificationEventType eventType, List<PersonType> personTypeList, IList<PersonBase> personList)
        {
            var person = personList.Where(p => p.PersonId == message.PersonId).FirstOrDefault();
            var task = Task.Run(async () => await PersonsService.RetrievePersonsBySearchText(workStation.Ship.ShipId, null, personTypeList, SearchType.PersonId, personId: message.PersonId, folioNumber: null));
            task.Wait();
            if (!task.IsCanceled && !task.IsFaulted)
            {
                personData = task.Result;

                PersonBase retrievedPerson = null;

                if (personTypeList.FirstOrDefault() == PersonType.Guest)
                {
                    retrievedPerson = personData.Guests.FirstOrDefault().MapToPersonBase();
                }
                else if (personTypeList.FirstOrDefault() == PersonType.Crewmember)
                {
                    retrievedPerson = personData.Crewmembers.FirstOrDefault().MapToPersonBase();
                }
                else if (personTypeList.FirstOrDefault() == PersonType.Visitor)
                {
                    retrievedPerson = personData.Visitors.FirstOrDefault().MapToPersonBase();
                }

                if (personData != null)
                {
                    MapPersonData(person, retrievedPerson, eventType);

                    if (person != null)
                    {
                        RetrievePhoto(person);
                    }
                }
            }

            return personData;
        }
        /// <summary>
        /// Retrieves the history.
        /// </summary>
        /// <param name="machineName">Name of the machine.</param>
        /// <param name="workstation">The workstation.</param>
        /// <param name="eventTypeIds">The event type ids.</param>
        /// <param name="activeVoyagesString">The active voyages string.</param>
        /// <param name="fromDate">From date.</param>
        /// <returns>
        /// History list.
        /// </returns>
        private async Task<ListResult<GangwayHistory>> RetrieveHistory(string machineName, Workstation workstation, string eventTypeIds, string activeVoyagesString, string fromDate)
        {
            var command = this.Database.GetStoredProcCommand(RetrieveRecentPersonStoredProcedure)
                 .AddParameter(ShipIds, DbType.String, workstation.Ship.ShipId)
                 .AddParameter(EventTypeIds, DbType.String, eventTypeIds)
                 .AddParameter(VoyageIds, DbType.String, activeVoyagesString)
                 .AddParameter(FromDate, DbType.String, fromDate)
                 .AddParameter(MachineName, DbType.String, machineName)
                 .AddParameter(SortColumn1, DbType.String, AddedDate)
                 .AddParameter(SortTypeColumn1, DbType.String, DESC)
                 .AddParameter(PageNumber, DbType.Int32, OfflineConstants.DefaultPageNumber)
                 .AddParameter(PageSize, DbType.Int32, workstation.MaxRecentPersonCount)
                 .AddParameter(RecordCount, ParameterDirection.Output, DbType.Int64, 0);

            var list = await this.ExecuteReaderAsync(command, GangwayHistoryMapper.MapGangwayHistory);
            list.TotalResults = RetrieveRecordCountValue(command);
            return list;
        }
Example #40
0
 //für einfacheres Ansprechen, prinzipiell unnötig
 public List<Job> GetJobsByStation(Workstation station)
 {
     List<Job> result;
     this.JobsByStation.TryGetValue(station, out result);
     return result;
 }
        /// <summary>
        /// Retrieve Event Type ids
        /// </summary>
        /// <param name="workstation">work station instance</param>
        /// <returns>return eventtype ids</returns>
        public static string RetrieveOnOffEventTypeIds(Workstation workstation)
        {
            if (workstation == null)
            {
                throw new ArgumentNullException("workstation");
            }

            string activeEventTypeString = string.Empty;
            if (workstation.EventTypes != null && workstation.EventTypes.Count > 0)
            {
                activeEventTypeString = workstation.EventTypes.Where(a => a.Name.Equals(Onboard, StringComparison.OrdinalIgnoreCase) || a.Name.Equals(Ashore, StringComparison.OrdinalIgnoreCase)).Select(v => v.EventTypeId).Aggregate((currentEventTypeId, nextEventTypeId) => string.Concat(currentEventTypeId, Comma, nextEventTypeId));
            }

            return activeEventTypeString;
        }
 /// <summary>
 /// Loads the window.
 /// </summary>
 private void LoadWindow()
 {
     this.IsBusy = true;
     this.workstation = DIContainer.Instance.Resolve<Workstation>();
     this.RetrieveAllowedOperations();
     ObservableManager.RunObservable(this.RetrieveLoyaltyLevelTypes, this.OnLoyaltyLevelRetrieved, () => { this.IsBusy = false; });
 }
        /// <summary>
        /// Retrieves the latest changeset ID associated with a path
        /// </summary>
        /// <param name="localPath">A path on the local filesystem</param>
        /// <param name="credentials">Credentials used to authenticate against the serer</param>
        /// <returns></returns>
        public int GetLatestChangesetId(string localPath, ICredentials credentials)
        {
            int latestChangesetId = 0;
            string server;

            Workstation workstation = new Workstation(versionControlClientAssembly);
            WorkspaceInfo workspaceInfo = workstation.GetLocalWorkspaceInfo(localPath);
            server = workspaceInfo.ServerUri.ToString();
            VersionControlServer sourceControl = new VersionControlServer(clientAssembly, versionControlClientAssembly, server, credentials);

            Workspace workspace = sourceControl.GetWorkspace(localPath);
            WorkspaceVersionSpec workspaceVersionSpec = new WorkspaceVersionSpec(versionControlClientAssembly, workspace);

            VersionSpec versionSpec = new VersionSpec(versionControlClientAssembly);
            RecursionType recursionType = new RecursionType(versionControlClientAssembly);

            IEnumerable history = sourceControl.QueryHistory(localPath, versionSpec.Latest, recursionType.Full, workspaceVersionSpec);

            IEnumerator historyEnumerator = history.GetEnumerator();
            Changeset latestChangeset = new Changeset(versionControlClientAssembly);
            if (historyEnumerator.MoveNext())
            {
                latestChangeset = new Changeset(versionControlClientAssembly, historyEnumerator.Current);
            }

            if (latestChangeset.Instance != null)
            {
                latestChangesetId = latestChangeset.ChangesetId;
            }
            return latestChangesetId;
        }
 /// <summary>
 /// Initializes a new instance of the PortDebarkAuthorizationServiceTest class.
 /// </summary>
 public PortDebarkAuthorizationServiceTest()
 {
     this.workstation = DIContainer.Instance.Resolve<Workstation>();
     this.service = new PortDebarkAuthorizationService();
 }
Example #45
0
        public void ScanHosts(int ScanTimeOut)
        {
            //workstations = new List<Workstation>();

            ScanTimeOut = ScanTimeOut * 10000000;
            UdpClient listener = new UdpClient(basic.UDPport);
            IPEndPoint groupEP = new IPEndPoint(IPAddress.Parse("192.168.88.255"), basic.UDPport);
            DateTime startTime = DateTime.Now;
            DateTime TimeStep = DateTime.Now;
            //workstations = new List<Workstation>();
            try
            {
                while (TimeStep.Ticks - startTime.Ticks <= ScanTimeOut)
                {
                    //Console.WriteLine("Waiting for broadcast");
                    byte[] bytes = listener.Receive(ref groupEP);
                    //MessageBox.Show(groupEP.ToString() + Encoding.ASCII.GetString(bytes, 0, bytes.Length));
                    String[] IP = groupEP.ToString().Split(new Char[] {':'});

                    String[] HostInfo = Encoding.UTF8.GetString(bytes).Split(new Char[] { '|' });

                    Workstation NeoFit = new Workstation(IPAddress.Parse(IP[0]), null);
                    NeoFit.name = HostInfo[0];
                    NeoFit.publickey = HostInfo[1];
                    NeoFit.isChange = true;

                    if (!workstations.Contains(NeoFit, new WorkstationEqualityComparer()))
                    {
                        workstations.Add(NeoFit);
                    }
                    else
                    {
                        foreach (Workstation t in workstations)
                        {
                            if (t.IPAddr.ToString() == NeoFit.IPAddr.ToString())
                            {
                                t.name = NeoFit.name;
                                t.publickey = NeoFit.publickey;
                                t.isChange = true;
                            }
                        }
                    }
                    TimeStep = DateTime.Now;
                }
                foreach (Workstation t in workstations)
                {
                    if (t.isChange)
                    {
                        t.isChange = false;
                    }
                    else
                    {
                        workstations.Remove(t);
                    }
                }
                log.printlog("[scanhosts] array size: " + workstations.Count.ToString());
                MessageBox.Show("Сканирование хостов завершено");
            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
            }
            finally
            {
                listener.Close();
            }
        }
 /// <summary>
 /// Initializes a new instance of the ShipTimeService class.
 /// </summary>        
 /// <param name="workstation">Instance of IWorkstation</param>
 public ShipTimeService(Workstation workstation)
 {
     this.workstation = workstation;
 }
 protected bool Equals(Workstation other)
 {
     return this.WorkstationId == other.WorkstationId && string.Equals(this.Name, other.Name) && this.AccessLevel == other.AccessLevel;
 }
        /// <summary>
        /// Setups the data.
        /// </summary>
        private void SetupData()
        {
            // Repository registration
            Domain.Dependencies.Register();
            DataAccess.Dependencies.Register();

            Workstation ws = DIContainer.Instance.Resolve<Workstation>();

            ws.Port = new Port { PortId = "1" };
            ws.Ship = new Ship { ShipId = "1" };
            ws.GangwayLocation = new GangwayLocation { LocationId = "1" };
            ws.GangwayServiceBaseAddress = "http://Localhost/";
            ws.ConfigurationServiceBaseAddress = "http://Localhost/";
            ws.AuthenticationServiceBaseAddress = "http://Localhost/";
            ws.AuthorizationServiceBaseAddress = "http://Localhost/";
            ws.User.UserFullName = "DC-Dev60";
            ws.ConnectionMode = ConnectionMode.Online;
            this.intCollection = new Collection<int>();
            intCollection.Add(0);
            var brand = new Brand { BrandId = "3", Name = "Carnival Breeze", MediaItemAddress = "http://172.26.248.122/ImagingMediaService/MediaItems/23" };
            brand.AssignPortIds(intCollection);
            ws.Brand = brand;
            this.workStation = ws;

            this.repository = new Mock<GangwayEventRepository>();
            this.embarkationStatisticsRepositoryMock = new Mock<EmbarkationStatisticsRepository>();
            this.personServiceRepositoryMock = new Mock<PersonServiceRepository>();
            this.photoCaptureRepositoryMock = new Mock<PhotoCaptureRepository>();
            this.shipTimeRepositoryMock = new Mock<ShipTimeRepository>();
            this.referenceDataRepositoryMock = new Mock<ReferenceDataRepository>();
            this.gangwayEventRepositoryMock = new Mock<GangwayEventRepository>();

            DIContainer.Instance.RegisterType<IPersonsClient, PersonsClientTest>();
            DIContainer.Instance.RegisterType<IGuestClient, GuestClientTest>();

            DIContainer.Instance.RegisterInstance<GangwayEventRepository>(this.repository.Object);
            ////DIContainer.Instance.RegisterInstance<ReferenceDataRepository>(this.referenceDataRepositoryMock.Object);
            ////DIContainer.Instance.RegisterInstance<EmbarkationStatisticsRepository>(this.embarkationStatisticsRepositoryMock.Object);
            ////DIContainer.Instance.RegisterInstance<GangwayEventRepository>(this.gangwayEventRepositoryMock.Object);
            ////DIContainer.Instance.RegisterInstance<PhotoCaptureRepository>(this.photoCaptureRepositoryMock.Object);
            ////DIContainer.Instance.RegisterInstance<PersonServiceRepository>(this.personServiceRepositoryMock.Object);
            ////DIContainer.Instance.RegisterInstance<ShipTimeRepository>(this.shipTimeRepositoryMock.Object);
            var boardingDetail = new BoardingDetail
            {
                GangwayLocation = "location",
                MachineName = "GWY terminal",
                PortName = "port",
                ShipId = "1",
                Status = "onboard",
                StatusTypeId = "1",
                UserId = "1"
            };
            var personEvent = new PersonEvent { PersonId = "123", ApplicationId = "1" };
            this.repository.Setup(a => a.CreateEventAsync(personEvent)).Returns(Task.FromResult("Successful"));
        }
Example #49
0
        public void SendString(String str, Workstation IP)
        {
            Random rnd = new Random();
            log.printlog("[send] IP: " + IP.IPAddr.ToString() + " msg: " + str);

            /*Разметка приемочного пакета*/
            NetworkMessage Sendmsg = new NetworkMessage();
            Sendmsg.label = PackageLabel.final;     //Финальный пакет
            Sendmsg.TimeStamp = DateTime.Now;       //Будет иметь временной штамп,
            Sendmsg.NextIP = basic.CurrentIP;             //IP отправителя (то есть текущий)
            Encoding Utf8 = Encoding.UTF8;
            Sendmsg.Data = Utf8.GetBytes(str);      //и данные.

            /*Этот пакет должен иметь "транзитника последней мили"
             чтобы адес отправителя всегда был равен нужному приемнику*/
            String TunnelPath = "";

            NetworkMessage Buffer = new NetworkMessage();
            Buffer.Data = RSAEncrypt(Serialization(Sendmsg), IP.publickey);
            Buffer.TimeStamp = DateTime.Now;
            Buffer.label = PackageLabel.transit;
            Buffer.NextIP = IP.IPAddr;
            TunnelPath += IP.IPAddr.ToString() + " ";
            Sendmsg = Buffer;
            for (int i = 0; i < layernum-1; i++)
            {
                int rand = rnd.Next(workstations.Count);
                Buffer.Data = RSAEncrypt(Serialization(Sendmsg), workstations[rand].publickey);
                Buffer.TimeStamp = DateTime.Now;
                Buffer.label = PackageLabel.transit;
                Buffer.NextIP = workstations[rand].IPAddr;
                TunnelPath += workstations[rand].IPAddr.ToString() + " ";
                Sendmsg = Buffer;
            }

            int rnd_next = rnd.Next(workstations.Count);
            //MessageBox.Show("Сообщение готовится к отправке по туннелю");
            basic.SendNext(workstations[rnd_next].IPAddr, RSAEncrypt(Serialization(Sendmsg), workstations[rnd_next].publickey), log);
            log.printlog("[tunnel] size: " + layernum.ToString() + " path: " + TunnelPath + " " + workstations[rnd_next].IPAddr.ToString());
        }