public async Task <IActionResult> CreateAssociation(AssociationCreateRequest request) { //Creazione modello richiesto da admin var model = new Association { Name = request.Name, Classifications = request.Classifications, Divisions = request.Divisions, Categories = request.Categories, FirstPenaltyLabel = request.FirstPenaltyLabel, HitOnNonThreatPointDown = request.HitOnNonThreatPointDown, FirstProceduralPointDown = request.FirstProceduralPointDown, SecondPenaltyLabel = request.SecondPenaltyLabel, SecondProceduralPointDown = request.SecondProceduralPointDown, ThirdPenaltyLabel = request.ThirdPenaltyLabel, ThirdProceduralPointDown = request.ThirdProceduralPointDown, SoRoles = request.SoRoles }; //Invocazione del service layer var validations = await BasicLayer.CreateAssociation(model, PlatformUtils.GetIdentityUserId(User)); if (validations.Count > 0) { return(BadRequest(validations)); } //Return contract return(Ok(ContractUtils.GenerateContract(model))); }
public Task <IActionResult> FetchAvailableGroupShooter(GroupRequest request) { //Recupero l'elemento dal business layer var entity = BasicLayer.GetGroup(request.GroupId); //modifica solo se admin o se utente richiedente è lo stesso che ha creato if (entity == null) { return(Task.FromResult <IActionResult>(NotFound())); } //Invocazione del service layer var shooters = BasicLayer.FetchAvailableShooters(entity); var shooterIds = shooters.Select(s => s.Id).ToList(); var shooterAssociation = BasicLayer.FetchShooterAssociationByShooterIds(shooterIds, entity.MatchId); var shooterTeams = BasicLayer.FetchTeamsFromShooterIds(shooterIds); var teamsIds = shooterTeams.Select(x => x.TeamId).ToList(); var teams = BasicLayer.FetchTeamsByIds(teamsIds); var result = shooters.As(x => ContractUtils.GenerateContract(x, shooterAssociation.Where(s => s.ShooterId == x.Id).ToList(), teams.Where(s => shooterTeams.Where(st => st.ShooterId == x.Id).Select(st => st.TeamId).Contains(s.Id)) .ToList())); //Return contract return(Reply(result)); }
public async Task <IActionResult> CreateShooterAssociationInfo(ShooterAssociationInfoCreateRequest request) { var(validations, shooter, association) = CheckRequest(request.ShooterId, request.AssociationId, request.Categories); if (validations.Count > 0) { return(BadRequest(validations)); } var entity = new ShooterAssociationInfo { ShooterId = request.ShooterId, AssociationId = request.AssociationId, CardNumber = request.CardNumber, SafetyOfficier = request.SafetyOfficier, RegistrationDate = request.RegistrationDate, Categories = request.Categories }; //Invocazione del service layer validations = await BasicLayer.CreateShooterAssociationInfo(entity, PlatformUtils.GetIdentityUserId(User)); if (validations.Count > 0) { return(BadRequest(validations)); } //Return contract return(Ok(ContractUtils.GenerateContract(entity, association, shooter))); }
public Task <IActionResult> DeleteStageSO(ShooterSOStageRequest request) { //Recupero l'elemento dal business layer var entity = BasicLayer.GetShooterSOStage(request.ShooterSOStageId); //Se l'utente non hai i permessi non posso rimuovere entità con userId nullo if (entity == null) { return(Task.FromResult <IActionResult>(NotFound())); } //Invocazione del service layer var validations = BasicLayer.DeleteShooterSOStage(entity); if (validations.Count > 0) { return(BadRequestTask(validations)); } var shooterSOStagees = BasicLayer.FetchShooterSOStagesByStageId(entity.StageId); var shooterIds = shooterSOStagees.Select(x => x.ShooterId).ToList(); var shooters = BasicLayer.FetchShootersByIds(shooterIds); //Return contract return(Reply(shooterSOStagees.As(x => ContractUtils.GenerateContract(x, shooters.FirstOrDefault(s => s.Id == x.ShooterId))))); }
private (IList <ValidationResult> validations, Shooter shooter, Association association) CheckRequest(string shooterId, string associationId, IList <string> categories) { IList <ValidationResult> validations = new List <ValidationResult>(); // check shooter var shooter = BasicLayer.GetShooter(shooterId); if (shooter == null) { validations.Add(new ValidationResult("Shooter not found")); } // check association var association = BasicLayer.GetAssociation(associationId); if (association == null) { validations.Add(new ValidationResult("Association not found")); return(validations, shooter, association); } if (!categories.All(x => association.Categories.Contains(x))) { validations.Add(new ValidationResult("Some categories were not found in association")); } return(validations, shooter, association); }
public async Task <IActionResult> DeleteUserROle(UserRoleRequest request) { //Recupero l'elemento dal business layer var entity = AuthorizationLayer.GetUserRole(request.UserRoleId); //Se l'utente non hai i permessi non posso rimuovere entità con userId nullo if (entity == null) { return(NotFound()); } //Invocazione del service layer var validations = await AuthorizationLayer.DeleteUserRole(entity, PlatformUtils.GetIdentityUserId(User)); if (validations.Count > 0) { return(BadRequest(validations)); } var userRoles = AuthorizationLayer.FetchUserRole(entity.RoleId); var userIds = userRoles.Select(x => x.UserId).ToList(); var users = BasicLayer.FetchShootersByIds(userIds); //Return contract return(Ok(userRoles.As(x => ContractUtils.GenerateContract(x, users?.FirstOrDefault(s => s.Id == x.UserId))))); }
public Task <IActionResult> UpsertTeamHolder(TeamHolderCreateRequest request) { var entity = this.BasicLayer.GetTeamHolderByTeamAndShooterId(request.TeamId, request.ShooterId); if (entity == null) { entity = new TeamHolder { ShooterId = request.ShooterId, TeamId = request.TeamId }; } entity.Description = request.Description; //Invocazione del service layer var validations = BasicLayer.UpsertTeamHolder(entity); if (validations.Count > 0) { return(BadRequestTask(validations)); } //Return contract return(Reply(ContractUtils.GenerateContract(entity))); }
public async Task <IActionResult> CreatePlace(PlaceCreateRequest request) { //Creazione modello richiesto da admin var model = new Place { Name = request.Name, Holder = request.Holder, Phone = request.Phone, Email = request.Email, Address = request.Address, City = request.City, Region = request.Region, PostalZipCode = request.PostalZipCode, Country = request.Country }; //Invocazione del service layer var validations = await BasicLayer.CreatePlace(model, PlatformUtils.GetIdentityUserId(User)); if (validations.Count > 0) { return(BadRequest(validations)); } //Return contract return(Ok(ContractUtils.GenerateContract(model))); }
public async Task <IActionResult> CreateMatch(MatchCreateRequest request) { //Creazione modello richiesto da admin var model = new Match { Name = request.Name, MatchDateTimeStart = request.MatchDateTimeStart, MatchDateTimeEnd = request.MatchDateTimeEnd, AssociationId = request.AssociationId, PlaceId = request.PlaceId, OpenMatch = request.OpenMatch, UnifyClassifications = request.UnifyClassifications, Cost = request.Cost, PaymentDetails = request.PaymentDetails }; //Invocazione del service layer var validations = await BasicLayer.CreateMatch(model, PlatformUtils.GetIdentityUserId(User)); if (validations.Count > 0) { return(BadRequest(validations)); } var association = BasicLayer.GetAssociation(model.AssociationId); var place = BasicLayer.GetPlace(model.PlaceId); //Return contract return(Ok(ContractUtils.GenerateContract(model, association, place))); }
public async Task <IActionResult> UpdateTeam([EntityId] TeamUpdateRequest request) { //Recupero l'elemento dal business layer var entity = BasicLayer.GetTeam(request.TeamId); //modifica solo se admin o se utente richiedente è lo stesso che ha creato if (entity == null) { return(NotFound()); } //Aggiornamento dell'entità entity.Name = request.Name; //Salvataggio var validations = await BasicLayer.UpdateTeam(entity, PlatformUtils.GetIdentityUserId(User)); if (validations.Count > 0) { return(BadRequest(validations)); } //Confermo return(Ok(ContractUtils.GenerateContract(entity))); }
public Task <IActionResult> UpsertShooterTeam(ShooterTeamCreateRequest request) { var entity = this.BasicLayer.GetShooterTeamByTeamAndShooterId(request.TeamId, request.ShooterId); if (entity == null) { entity = new ShooterTeam { ShooterId = request.ShooterId, TeamId = request.TeamId }; } entity.RegistrationDate = request.RegistrationDate; //Invocazione del service layer var validations = BasicLayer.UpsertShooterTeam(entity); if (validations.Count > 0) { return(BadRequestTask(validations)); } //Return contract return(Reply(new OkResponse { Status = true })); }
public async Task <IActionResult> DeleteMatch([EntityId] MatchRequest request) { //Recupero l'elemento dal business layer var entity = BasicLayer.GetMatch(request.MatchId); //Se l'utente non hai i permessi non posso rimuovere entità con userId nullo if (entity == null) { return(NotFound()); } //Invocazione del service layer var validations = await BasicLayer.DeleteMatch(entity, PlatformUtils.GetIdentityUserId(User)); if (validations.Count > 0) { return(BadRequest(validations)); } var association = BasicLayer.GetAssociation(entity.AssociationId); var place = BasicLayer.GetPlace(entity.PlaceId); //Return contract return(Ok(ContractUtils.GenerateContract(entity, association, place))); }
public Task <IActionResult> UpsertShooterStage(ShooterStageRequest request) { var shooterStage = new ShooterStage { StageId = request.StageId, Time = request.Time, ShooterId = request.ShooterId, DownPoints = request.DownPoints, Procedurals = request.Procedurals, Bonus = request.Bonus, HitOnNonThreat = request.HitOnNonThreat, FlagrantPenalties = request.FlagrantPenalties, Ftdr = request.Ftdr, Warning = request.Warning, Disqualified = request.Disqualified, Notes = request.Notes }; //Invocazione del service layer var validations = BasicLayer.UpsertShooterStage(shooterStage); if (validations.Count > 0) { return(BadRequestTask(validations)); } //Return contract return(Reply(new OkResponse { Status = true })); }
protected SharedExercise(BasicLayer layer, int uid, string exerciseName, string userName) { UID = uid; Layer = layer; ExerciseName = exerciseName; UserName = userName; }
/// <summary> /// Generate the RBF network. /// </summary> /// <returns>The neural network.</returns> public BasicNetwork Generate() { int y = PatternConst.START_Y; BasicLayer inputLayer = new BasicLayer(new ActivationLinear(), false, this.InputNeurons); inputLayer.X = PatternConst.START_X; inputLayer.Y = y; y += PatternConst.INC_Y; BasicLayer outputLayer = new BasicLayer(ActivationFunction, false, this.OutputNeurons); outputLayer.X = PatternConst.START_X; outputLayer.Y = y; NEATSynapse synapse = new NEATSynapse(inputLayer, outputLayer, this.neurons, this.NEATActivation, 0); synapse.Snapshot = this.Snapshot; inputLayer.AddSynapse(synapse); BasicNetwork network = new BasicNetwork(); network.TagLayer(BasicNetwork.TAG_INPUT, inputLayer); network.TagLayer(BasicNetwork.TAG_OUTPUT, outputLayer); network.Structure.FinalizeStructure(); return(network); }
/// <summary> /// Save the specified Encog object to an XML writer. /// </summary> /// <param name="obj">The object to save.</param> /// <param name="xmlOut">The XML writer to save to.</param> public void Save(IEncogPersistedObject obj, WriteXML xmlOut) { PersistorUtil.BeginEncogObject( EncogPersistedCollection.TYPE_BASIC_LAYER, xmlOut, obj, false); BasicLayer layer = (BasicLayer)obj; xmlOut.AddProperty(BasicLayerPersistor.PROPERTY_NEURONS, layer .NeuronCount); xmlOut.AddProperty(BasicLayerPersistor.PROPERTY_X, layer.X); xmlOut.AddProperty(BasicLayerPersistor.PROPERTY_Y, layer.Y); if (layer.HasBias) { StringBuilder result = new StringBuilder(); NumberList.ToList(CSVFormat.EG_FORMAT, result, layer.BiasWeights); xmlOut.AddProperty(BasicLayerPersistor.PROPERTY_THRESHOLD, result .ToString()); } xmlOut.AddProperty(BasicLayerPersistor.PROPERTY_BIAS_ACTIVATION, layer.BiasActivation); if (layer.ActivationFunction != null) { SaveActivationFunction(layer.ActivationFunction, xmlOut); } xmlOut.EndTag(); }
public async Task <IActionResult> UpdateShooterAssociationInfo(ShooterAssociationInfoUpdateRequest request) { var entity = this.BasicLayer.GetShooterAssociationInfo(request.ShooterAssociationInfoId); if (entity == null) { return(NotFound()); } var(validations, shooter, association) = CheckRequest(request.ShooterId, request.AssociationId, request.Categories); if (validations.Count > 0) { return(BadRequest(validations)); } entity.ShooterId = request.ShooterId; entity.AssociationId = request.AssociationId; entity.CardNumber = request.CardNumber; entity.SafetyOfficier = request.SafetyOfficier; entity.Categories = request.Categories; entity.RegistrationDate = request.RegistrationDate; //Invocazione del service layer validations = await BasicLayer.UpdateShooterAssociationInfo(entity, PlatformUtils.GetIdentityUserId(User)); if (validations.Count > 0) { return(BadRequest(validations)); } //Return contract return(Ok(ContractUtils.GenerateContract(entity, association, shooter))); }
/// <summary> /// Generate the feedforward neural network. /// </summary> public IMLMethod Generate() { if (_activationOutput == null) { _activationOutput = _activationHidden; } ILayer input = new BasicLayer(null, true, _inputNeurons); var result = new BasicNetwork(); result.AddLayer(input); foreach (Int32 count in _hidden) { ILayer hidden = new BasicLayer(_activationHidden, true, (count)); result.AddLayer(hidden); } ILayer output = new BasicLayer(_activationOutput, false, _outputNeurons); result.AddLayer(output); result.Structure.FinalizeStructure(); result.Reset(); return(result); }
public async Task <IActionResult> UpdatePlace([EntityId] PlaceUpdateRequest request) { //Recupero l'elemento dal business layer var entity = BasicLayer.GetPlace(request.PlaceId); //modifica solo se admin o se utente richiedente è lo stesso che ha creato if (entity == null) { return(NotFound()); } //Aggiornamento dell'entità entity.Name = request.Name; entity.Holder = request.Holder; entity.Phone = request.Phone; entity.Email = request.Email; entity.Address = request.Address; entity.City = request.City; entity.Region = request.Region; entity.PostalZipCode = request.PostalZipCode; entity.Country = request.Country; //Salvataggio var validations = await BasicLayer.UpdatePlace(entity, PlatformUtils.GetIdentityUserId(User)); if (validations.Count > 0) { return(BadRequest(validations)); } //Confermo return(Ok(ContractUtils.GenerateContract(entity))); }
/// <summary> /// Generate the RBF network. /// </summary> /// <returns>The neural network.</returns> public BasicNetwork Generate() { ILayer input = new BasicLayer(new ActivationLinear(), false, this.inputNeurons); ILayer output = new BasicLayer(new ActivationLinear(), false, this.outputNeurons); BasicNetwork network = new BasicNetwork(); RadialBasisFunctionLayer rbfLayer = new RadialBasisFunctionLayer( this.hiddenNeurons); network.AddLayer(input); network.AddLayer(rbfLayer, SynapseType.Direct); network.AddLayer(output); network.Structure.FinalizeStructure(); network.Reset(); network.TagLayer(RBF_LAYER, rbfLayer); rbfLayer.RandomizeRBFCentersAndWidths(this.inputNeurons, -1, 1, RBFEnum.Gaussian); int y = PatternConst.START_Y; input.X = PatternConst.START_X; input.Y = y; y += PatternConst.INC_Y; rbfLayer.X = PatternConst.START_X; rbfLayer.Y = y; y += PatternConst.INC_Y; output.X = PatternConst.START_X; output.Y = y; return(network); }
/// <summary> /// Generate the RSOM network. /// </summary> /// <returns>The neural network.</returns> public BasicNetwork Generate() { ILayer output = new BasicLayer(new ActivationLinear(), false, this.outputNeurons); ILayer input = new BasicLayer(new ActivationLinear(), false, this.inputNeurons); BasicNetwork network = new BasicNetwork(); ILayer context = new ContextLayer(this.outputNeurons); network.AddLayer(input); network.AddLayer(output); output.AddNext(context, SynapseType.OneToOne); context.AddNext(input); int y = PatternConst.START_Y; input.X = PatternConst.START_X; input.Y = y; context.X = PatternConst.INDENT_X; context.Y = y; y += PatternConst.INC_Y; output.X = PatternConst.START_X; output.Y = y; network.Structure.FinalizeStructure(); network.Reset(); return(network); }
public async Task <IActionResult> CreateShooterTeamPayment(ShooterTeamPaymentCreateRequest request) { //Creazione modello richiesto da admin var model = new ShooterTeamPayment { ShooterId = request.ShooterId, TeamId = request.TeamId, Amount = request.Amount, Reason = request.Reason, PaymentDateTime = request.PaymentDateTime, ExpireDateTime = request.ExpireDateTime, NotifyExpiration = request.NotifyExpiration }; //Invocazione del service layer var validations = await BasicLayer.CreateShooterTeamPayment(model, PlatformUtils.GetIdentityUserId(User)); if (validations.Count > 0) { return(BadRequest(validations)); } //Return contract return(Ok(ContractUtils.GenerateContract(model))); }
public async Task <IActionResult> UpdateShooterTeamPayment([EntityId] ShooterTeamPaymentUpdateRequest request) { //Recupero l'elemento dal business layer var entity = BasicLayer.GetShooterTeamPayment(request.ShooterTeamPaymentId); //modifica solo se admin o se utente richiedente è lo stesso che ha creato if (entity == null) { return(NotFound()); } //Aggiornamento dell'entità entity.TeamId = request.TeamId; entity.ShooterId = request.ShooterId; entity.Amount = request.Amount; entity.Reason = request.Reason; entity.PaymentDateTime = request.PaymentDateTime; entity.ExpireDateTime = request.ExpireDateTime; entity.NotifyExpiration = request.NotifyExpiration; //Salvataggio var validations = await BasicLayer.UpdateShooterTeamPayment(entity, PlatformUtils.GetIdentityUserId(User)); if (validations.Count > 0) { return(BadRequest(validations)); } //Confermo return(Ok(ContractUtils.GenerateContract(entity))); }
public Task <IActionResult> FetchAvailableMatchDirectorByAssociation(AssociationRequest request) { //Recupero la lista dal layer var entities = BasicLayer.FetchAvailableMatchDirectorByAssociaitonId(request.AssociationId); //Ritorno i contratti return(Reply(entities.As(x => ContractUtils.GenerateContract(x)))); }
public Task <IActionResult> FetchShooterTeamPaymentByShooterAndTeam(ShooterTeamRequest request) { //Recupero l'elemento dal business layer var entities = BasicLayer.FetchShooterTeamPaymentByTeamAndShooterId(request.TeamId, request.ShooterId); //Return contract return(Reply(entities.As(x => ContractUtils.GenerateContract(x)))); }
public Task <IActionResult> FetchAvailableStageSO(StageRequest request) { //Recupero la lista dal layer var entities = BasicLayer.FetchAvailabelShooterSOByStageId(request.StageId); //Ritorno i contratti return(Reply(entities.As(x => ContractUtils.GenerateContract(x)))); }
public Task <IActionResult> FetchAllGroups(MatchRequest request) { //Recupero la lista dal layer var entities = BasicLayer.FetchAllGroupsByMatchId(request.MatchId); //Ritorno i contratti return(Reply(entities.As(x => ContractUtils.GenerateContract(x)))); }
public Task <IActionResult> FetchAllShooters() { //Recupero la lista dal layer var entities = BasicLayer.FetchAllShooters(); //Ritorno i contratti return(Reply(entities.As(x => ContractUtils.GenerateContract(x)))); }
public static List <IFeature> RenderStackedLabelLayer(IViewport viewport, BasicLayer layer) { lock (_syncRoot) { var renderedFeatures = new List <IFeature> (); var canvas = new CALayer(); canvas.Opacity = (float)layer.Opacity; //todo: take into account the priority var features = layer.GetFeaturesInView(viewport.Extent, viewport.Resolution); var margin = viewport.Resolution * 15; var clusters = new List <Cluster> (); //todo: repeat until there are no more merges ClusterFeatures(clusters, features, margin, null, viewport, viewport.Resolution); //CenterClusters (clusters); //CATransaction.Begin(); //CATransaction.SetValueForKey (MonoTouch.Foundation.NSNumber.FromBoolean(true), CATransaction.DisableActionsKey); foreach (var cluster in clusters) { var feature = cluster.Features.OrderBy(f => f.Geometry.GetBoundingBox().GetCentroid().Y).FirstOrDefault(); //SetFeatureOutline (feature, layer.LayerName, cluster.Features.Count); //var bb = RenderBox(cluster.Box, viewport); //Zorg dat dit ALTIJD decimal zelfde ISet als ViewChanged is //var feature = cluster.Features.FirstOrDefault (); var styles = feature.Styles ?? Enumerable.Empty <IStyle>(); foreach (var style in styles) { if (feature.Styles != null && style.Enabled) { var styleKey = layer.LayerName; //feature.GetHashCode ().ToString (); var renderedGeometry = (feature[styleKey] != null) ? (CALayer)feature[styleKey] : null; if (renderedGeometry == null) { renderedGeometry = GeometryRenderer.RenderPoint(feature.Geometry as Mapsui.Geometries.Point, style, viewport); feature [styleKey] = renderedGeometry; feature ["first"] = true; } else { feature ["first"] = false; } } } renderedFeatures.Add(feature); //renderedFeatures.Add (bb); } return(renderedFeatures); } }
public static List<IFeature> RenderStackedLabelLayer(IViewport viewport, BasicLayer layer) { lock(_syncRoot) { var renderedFeatures = new List<IFeature> (); var canvas = new CALayer (); canvas.Opacity = (float)layer.Opacity; //todo: take into account the priority var features = layer.GetFeaturesInView (viewport.Extent, viewport.Resolution); var margin = viewport.Resolution * 15; var clusters = new List<Cluster> (); //todo: repeat until there are no more merges ClusterFeatures (clusters, features, margin, null, viewport, viewport.Resolution); //CenterClusters (clusters); //CATransaction.Begin(); //CATransaction.SetValueForKey (MonoTouch.Foundation.NSNumber.FromBoolean(true), CATransaction.DisableActionsKey); foreach(var cluster in clusters){ var feature = cluster.Features.OrderBy(f => f.Geometry.GetBoundingBox().GetCentroid().Y).FirstOrDefault(); //SetFeatureOutline (feature, layer.LayerName, cluster.Features.Count); //var bb = RenderBox(cluster.Box, viewport); //Zorg dat dit ALTIJD decimal zelfde ISet als ViewChanged is //var feature = cluster.Features.FirstOrDefault (); var styles = feature.Styles ?? Enumerable.Empty<IStyle>(); foreach (var style in styles) { if (feature.Styles != null && style.Enabled) { var styleKey = layer.LayerName; //feature.GetHashCode ().ToString (); var renderedGeometry = (feature[styleKey] != null) ? (CALayer)feature[styleKey] : null; if (renderedGeometry == null) { renderedGeometry = GeometryRenderer.RenderPoint (feature.Geometry as Mapsui.Geometries.Point, style, viewport); feature [styleKey] = renderedGeometry; feature ["first"] = true; } else { feature ["first"] = false; } } } renderedFeatures.Add (feature); //renderedFeatures.Add (bb); } return renderedFeatures; } }
public override void CollectLayer(BasicLayer layer) { foreach (var stroke in layer.Strokes) { foreach (var point in stroke.Points) { points.Add(point); } } }