コード例 #1
0
        public async Task <IActionResult> Add([FromBody] DSRMAdd value)
        {
            if (!ModelState.IsValid)
            {
                Dictionary <string, string> errors = new Dictionary <string, string>();
                foreach (var item in ModelState)
                {
                    if (item.Value.Errors.Any())
                    {
                        errors.Add(item.Key, string.Join("; ", item.Value.Errors.Select(x => x.ErrorMessage)));
                    }
                }

                return(Error(message: "Site add model parameters is invalid!", internalMessage: null, data: errors));
            }

            var hasSiteDefinition = await Db.Sites.AnyAsync(z => z.Name.Equals(value.Name) || z.SiteAddress.Equals(value.SiteAddress));

            if (hasSiteDefinition)
            {
                return(Error(message: "Site definition is already existing!"));
            }

            var accessCode = new CryptoHelper().HashWithSHA512(Guid.NewGuid() + DateTime.Now.ToString());
            var data       = new DSDSite
            {
                AccessCode        = accessCode,
                AccessCodeEndDate = value.ExpirationDate,
                CreatedOn         = DateTime.UtcNow,
                ModifiedOn        = DateTime.UtcNow,
                Name        = value.Name,
                Description = value.Description,
                SiteAddress = value.SiteAddress,
                Status      = (DSDSiteStatusTypes)value.Status,
                Id          = Guid.NewGuid()
            };

            Db.Sites.Add(data);
            var result = await Db.SaveChangesAsync();

            if (result > 0)
            {
                return(Success("Site saved successfully.", data: new
                {
                    Id = data.Id
                }));
            }
            else
            {
                return(Error(message: "Something is wrong with your model!"));
            }
        }
コード例 #2
0
        public async Task <IActionResult> Add([FromBody] DSRMAdd value)
        {
            if (!ModelState.IsValid)
            {
                Dictionary <string, string> errors = new Dictionary <string, string>();
                foreach (var item in ModelState)
                {
                    if (item.Value.Errors.Any())
                    {
                        errors.Add(item.Key, string.Join("; ", item.Value.Errors.Select(x => x.ErrorMessage)));
                    }
                }

                return(Error(message: "Accessible Site add model parameters is invalid!", internalMessage: null, data: errors));
            }

            var hasAccessibleSiteDefinition = await Db.AccessibleSites.AnyAsync(z => z.SiteId == value.SiteId && z.AccessibleSiteId == value.AccessibleSiteId);

            if (hasAccessibleSiteDefinition)
            {
                return(Error(message: "Accessible Site definition is already existing!"));
            }

            var data = new DSDAccessibleSite
            {
                Id               = Guid.NewGuid(),
                SiteId           = value.SiteId,
                AccessibleSiteId = value.AccessibleSiteId,
                CreatedOn        = DateTime.UtcNow,
                ModifiedOn       = DateTime.UtcNow
            };

            Db.AccessibleSites.Add(data);

            var result = await Db.SaveChangesAsync();

            if (result > 0)
            {
                return(Success("Accessible Site saved successfully.", data: new
                {
                    Id = data.Id
                }));
            }
            else
            {
                return(Error(message: "Something is wrong with your model!"));
            }
        }