コード例 #1
0
ファイル: UserService.cs プロジェクト: mrLob/KupcheSPA2
        public Users Create(Users newUser, string pass)
        {
            newUser.RulesId    = 1;
            newUser.PositionId = 1;
            Console.WriteLine("Create user!");
            if (string.IsNullOrWhiteSpace(pass))
            {
                throw new AppException("Password is required");
            }
            using (servicedbContext db = new servicedbContext())
            {
                if (_context.Users.Any(x => x.Email == newUser.Email))
                {
                    throw new ApplicationException("Username " + newUser.Email + " is already taken");
                }
            }
            byte[] passHash, passSalt;

            CreatePasswordHash(pass, out passHash, out passSalt);
            newUser.PassHash = passHash;
            newUser.PassSalt = passSalt;
            using (servicedbContext db = new servicedbContext()){
                db.Users.Add(newUser);
                db.SaveChanges();
            }
            return(newUser);
        }
コード例 #2
0
ファイル: UserService.cs プロジェクト: mrLob/KupcheSPA2
 public Users GetById(int id)
 {
     using (servicedbContext db = new servicedbContext())
     {
         return(db.Users.Find(id));
     }
 }
コード例 #3
0
ファイル: ImagesController.cs プロジェクト: mrLob/KupcheSPA2
        public async Task <IActionResult> UploadFile(IFormFile image)
        {
            var images = Request.Form.Files;

            if (images == null || images.Count == 0)
            {
                return(Content("image not selected"));
            }
            foreach (var item in images)
            {
                var path = Path.Combine(
                    Directory.GetCurrentDirectory(), "files",
                    item.FileName);
                using (var stream = new FileStream(path, FileMode.Create))
                {
                    await item.CopyToAsync(stream);
                }
                Images newImage = new Images();
                newImage.Name = item.Name;
                newImage.Path = path;
                using (servicedbContext db = new servicedbContext())
                {
                    db.Images.Add(newImage);
                    db.SaveChanges();
                }
            }
            return(RedirectToAction("LastImage"));
        }
コード例 #4
0
 public IActionResult LastAddress()
 {
     using (servicedbContext db = new servicedbContext())
     {
         return(Ok(db.Addresses.Last()));
     }
 }
コード例 #5
0
ファイル: ImagesController.cs プロジェクト: mrLob/KupcheSPA2
 public IActionResult LastImage()
 {
     using (servicedbContext db = new servicedbContext())
     {
         return(Ok(db.Images.Last()));
     }
 }
コード例 #6
0
ファイル: ImagesController.cs プロジェクト: mrLob/KupcheSPA2
 public IActionResult GetById(int id)
 {
     using (servicedbContext db = new servicedbContext())
     {
         return(Ok(db.Images.Find(id)));
     }
 }
コード例 #7
0
 public IActionResult PostOrders([FromBody] OrderDto orderDto)
 {
     Console.WriteLine("Post order:");
     if (ModelState.IsValid)
     {
         Orders neworder = new Orders();
         neworder.Caption     = orderDto.Caption.Trim();
         neworder.Description = orderDto.Description.Trim();
         neworder.Cost        = orderDto.Cost;
         neworder.Url         = DateTime.Now.ToString();
         neworder.UpTo        = orderDto.UpTo;
         neworder.UsersId     = 1;
         using (servicedbContext db = new servicedbContext())
         {
             Console.WriteLine("Post order: " + neworder.Caption.ToString());
             db.Orders.Add(neworder);
             Companyorders newRelation = new Companyorders();
             newRelation.IdCompanies = orderDto.CompanyId;
             newRelation.IdOrders    = neworder.IdOrders;
             db.Companyorders.Add(newRelation);
             db.SaveChanges();
             Console.WriteLine("Post response order: " + neworder.Caption.ToString());
             return(Ok(neworder));
         }
     }
     else
     {
         Console.WriteLine(ModelState.ValidationState);
         return(BadRequest(ModelState.ValidationState));
     }
 }
コード例 #8
0
        public IActionResult GetFiltered(int id)
        {
            if (id == null || id == 0)
            {
                return(BadRequest());
            }
            List <Orders> ordList = new List <Orders>();

            using (servicedbContext db = new servicedbContext())
            {
                IEnumerable <Companyorders> companyOrds = db.Companyorders.Where(co => co.IdCompanies == id).ToList();
                if (companyOrds == null || companyOrds.Count() == 0)
                {
                    return(BadRequest("No orders for company!"));
                }
                foreach (var co in companyOrds)
                {
                    ordList.Add(db.Orders.Where(o => o.IdOrders == co.IdOrders).FirstOrDefault());
                }
            }
            IEnumerable <Orders> ords = ordList;

            Console.WriteLine("Get response filter!");
            return(Ok(ords));
        }
コード例 #9
0
ファイル: UserService.cs プロジェクト: mrLob/KupcheSPA2
 public IEnumerable <Users> GetAll()
 {
     using (servicedbContext db = new servicedbContext())
     {
         return(db.Users);
     }
 }
コード例 #10
0
 public IEnumerable <Addresses> GetAll()
 {
     using (servicedbContext db = new servicedbContext())
     {
         IEnumerable <Addresses> addr = db.Addresses.Where(a => a.IsDeleted == 0).ToList();
         return(addr);
     }
 }
コード例 #11
0
 public IEnumerable <Companies> GetAll()
 {
     using (servicedbContext db = new servicedbContext())
     {
         IEnumerable <Companies> companies = db.Companies.Where(c => c.IsDeleted == 0).ToList();
         Console.WriteLine("Get response Companies!");
         return(companies);
     }
 }
コード例 #12
0
 public Companies Create(Companies company)
 {
     using (servicedbContext db = new servicedbContext())
     {
         db.Companies.Add(company);
         db.SaveChanges();
     }
     return(company);
 }
コード例 #13
0
 public IEnumerable <Orders> GetOrders()
 {
     using (servicedbContext db = new servicedbContext())
     {
         IEnumerable <Orders> tender = db.Orders.Where(o => o.IsDeleted == 0).ToList();
         Console.WriteLine("Get response orders!");
         return(tender);
     }
 }
コード例 #14
0
 public IActionResult GetById(int?id)
 {
     if (id == null || id == 0)
     {
         return(BadRequest());
     }
     using (servicedbContext db = new servicedbContext())
     {
         var company    = db.Companies.Where(c => c.IsDeleted == 0 && c.IdCompany == id).First();
         var companyDto = _mapper.Map <CompanyDto>(company);
         Console.WriteLine("Get response Companies by ID!");
         return(Ok(companyDto));
     }
 }
コード例 #15
0
        public IActionResult Authenticate([FromBody] UserDto userDto)
        {
            var authUser = _userService.Authenticate(userDto.Email, userDto.Pass);

            if (authUser == null)
            {
                return(Unauthorized());
            }
            var tokenHandler    = new JwtSecurityTokenHandler();
            var key             = Encoding.ASCII.GetBytes(_appSettings.Secret);
            var tokenDescriptor = new SecurityTokenDescriptor
            {
                Subject = new ClaimsIdentity(new Claim[]
                {
                    new Claim(ClaimTypes.Name, authUser.IdUsers.ToString())
                }),
                Expires            = DateTime.UtcNow.AddDays(7),
                SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key),
                                                            SecurityAlgorithms.HmacSha256Signature)
            };
            var token                = tokenHandler.CreateToken(tokenDescriptor);
            var tokenString          = tokenHandler.WriteToken(token);
            servicedbContext context = new servicedbContext();
            var rules                = context.Rules.Where(r => r.IdRules == authUser.RulesId).FirstOrDefault();
            var company              = context.Companies.Where(c => c.IdCompany == authUser.CompanyId).FirstOrDefault();

            Console.WriteLine("Return auth of " + authUser.Email);
            return(Ok(new {
                IdUser = authUser.IdUsers,
                Email = authUser.Email,
                LastName = authUser.LastName,
                FirstName = authUser.FirstName,
                SecondName = authUser.SecondName,
                Telephone = authUser.Telephone,
                isDeleted = authUser.IsDeleted,
                isBlocked = authUser.IsBlocked,
                Rule = rules.Name,
                Company = company.IdCompany,
                Token = tokenString
            }));
        }
コード例 #16
0
ファイル: UserService.cs プロジェクト: mrLob/KupcheSPA2
        public Users Authenticate(string email, string pass)
        {
            if (string.IsNullOrWhiteSpace(email) || string.IsNullOrEmpty(pass))
            {
                return(null);
            }
            using (servicedbContext db = new servicedbContext())
            {
                var authUser = db.Users.SingleOrDefault(x => x.Email == email);

                if (authUser == null)
                {
                    return(null);
                }
                if (!VerifyPasswordHash(pass, authUser.PassHash, authUser.PassSalt))
                {
                    return(null);
                }
                return(authUser);
            }
        }
コード例 #17
0
 public IActionResult Create([FromBody] AddressDto address)
 {
     if (ModelState.IsValid)
     {
         Addresses newAddr = new Addresses();
         newAddr.Street = address.Street;
         newAddr.Number = address.Number;
         newAddr.Flat   = address.Flat;
         newAddr.CityId = 1;
         using (servicedbContext db = new servicedbContext())
         {
             db.Addresses.Add(newAddr);
             db.SaveChanges();
         }
         return(Ok(new{
             IdAddress = newAddr.IdAddress
         }));
     }
     else
     {
         return(BadRequest(ModelState.ValidationState));
     }
 }
コード例 #18
0
ファイル: UserService.cs プロジェクト: mrLob/KupcheSPA2
 public UserService()
 {
     _context = new servicedbContext();
 }