示例#1
0
        public int CreateBySharedServiceDescription(int idServiceDescription)
        {
            var usersWithWhomTheServiceDescriptionIsShared = _serviceDescription_UserEntityRepository.GetAllByServiceDescription(idServiceDescription);

            Ontology_User ontologyUser;
            List <int>    ontologyIds;

            foreach (var shared in usersWithWhomTheServiceDescriptionIsShared)
            {
                ontologyIds = _serviceDescription_OntologyEntityRepository.GetAll()
                              .Where(x => x.IdServiceDescription == idServiceDescription)
                              .Select(x => x.IdOntology).ToList();

                foreach (var idOntology in ontologyIds)
                {
                    ontologyUser = new Ontology_User {
                        IdOntology = idOntology, IdSharedUser = shared.IdSharedUser
                    };

                    _ontology_UserRepository.Create(ontologyUser);
                }
            }

            return(_ontology_UserRepository.SaveChanges());
        }
示例#2
0
        public int CreateBySharedServiceDescription(int idServiceDescription, int idOntologyTerm)
        {
            var usersWithWhomTheServiceDescriptionIsShared = _serviceDescription_UserEntityRepository.GetAllByServiceDescription(idServiceDescription);

            if (usersWithWhomTheServiceDescriptionIsShared.Any())
            {
                var idOntology = _ontologyTermEntityRepository.Get(idOntologyTerm).IdOntology;

                Ontology_User ontologyUser;

                foreach (var shared in usersWithWhomTheServiceDescriptionIsShared)
                {
                    if (!CheckIfOntologyIsAlreadySharedWithUser(shared.IdSharedUser))
                    {
                        ontologyUser = new Ontology_User {
                            IdOntology = idOntology, IdSharedUser = shared.IdSharedUser
                        };

                        _ontology_UserRepository.Create(ontologyUser);
                    }
                }

                return(_ontology_UserRepository.SaveChanges());
            }

            return(0);
        }
示例#3
0
        public int Create(Ontology_User ontology_User)
        {
            ontology_User.RegistrationDateTime = DateTime.Now;

            _ontology_UserRepository.Create(ontology_User);

            var count = _ontology_UserRepository.SaveChanges();

            return(count);
        }
        public IHttpActionResult PostOntology(Ontology_ApiRequestCreateModel ontologyRequestModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var idUser = _userIdentityService.Id;

            var ontology = _mapper.Map <Ontology>(ontologyRequestModel);

            ontology.Xml = ontology.Xml.Replace("%26", "&");
            ontology.Xml = ontology.Xml.UnescapeXml();

            var ontologyName = _ontologyService.GetOntologyNameFromXml(ontology);

            var ontologyAlreadyExists = _ontologyService.CheckIfOntologyAlreadyExists(ontologyName);

            if (ontologyAlreadyExists)
            {
                ontology = _ontologyService.GetByOntologyName(ontologyName);

                if (ontology.IdOwnerUser == idUser)
                {
                    return(Content(System.Net.HttpStatusCode.Conflict, "The ontology already exists for this user."));
                }

                var ontologyAlreadySharedWithUser = _ontology_UserService.CheckIfOntologyIsAlreadySharedWithUser(idUser);

                if (ontologyAlreadySharedWithUser)
                {
                    return(Content(System.Net.HttpStatusCode.Conflict, "The ontology already exists for this user."));
                }

                var ontology_User = new Ontology_User {
                    IdOntology = ontology.Id, IdSharedUser = idUser
                };

                var count = _ontology_UserService.Create(ontology_User);

                _ontologyService.ParseXml(ontology);
            }
            else
            {
                ontology.IdOwnerUser  = idUser;
                ontology.OntologyName = ontologyName;

                var count = _ontologyService.Create(ontology);
            }

            var ontologyResponseModel = _mapper.Map <Ontology_ApiResponseViewModel>(ontology);

            return(Ok(ontologyResponseModel));
        }
示例#5
0
        public int Update(Ontology_User ontology_User)
        {
            _ontology_UserRepository.Update(ontology_User);

            return(_ontology_UserRepository.SaveChanges());
        }
示例#6
0
        public int Remove(Ontology_User ontology_User)
        {
            _ontology_UserRepository.Remove(ontology_User.Id);

            return(_ontology_UserRepository.SaveChanges());
        }