Example #1
0
        public async Task <string> Create(CreateNhanVienRequest request)
        {
            //lay ra phong ban
            var NhanVienTrongPhongBan = from NV in _context.NhanVienPhongs
                                        where NV.MaPhongBan == request.MaPhongBan
                                        select NV;
            string SoLuongNhanVien = NhanVienTrongPhongBan.Count().ToString();

            //dem so nhan vien trong phong ban
            //su dung thuat toan
            do
            {
                SoLuongNhanVien = (Convert.ToInt32(SoLuongNhanVien) + 1).ToString();
            }while (_context.CapBacs.Find(request.MaPhongBan + SoLuongNhanVien) != null);
            //gan vao` tng phong ban
            var nhanvien = new NhanVienPhongBan()
            {
                MaNhanVien  = request.MaPhongBan + SoLuongNhanVien,
                TenNhanVien = request.TenNhanVien,

                MaCapBac   = request.MaCapBac,
                MaPhongBan = request.MaPhongBan
            };


            //await _context.SaveChangesAsync();
            var hasher = new PasswordHasher <User>();
            var User   = new User()
            {
                MaNhanVien   = nhanvien.MaNhanVien,
                PasswordHash = hasher.HashPassword(null, request.PassWord)
            };

            var UserRole = new UserRole()
            {
                MaNhanVien = User.MaNhanVien,
                RoleId     = request.Roleid
            };

            if (UserRole.RoleId == "RL05")
            {
                nhanvien.MaPhongBan = "LD";
                nhanvien.MaNhanVien = nhanvien.MaPhongBan + SoLuongNhanVien;
            }
            _context.User.Add(User);
            _context.NhanVienPhongs.Add(nhanvien);
            _context.UserRole.Add(UserRole);
            await _context.SaveChangesAsync();

            return(nhanvien.MaNhanVien);
        }
Example #2
0
        public async Task <IActionResult> Create([FromBody] CreateNhanVienRequest request)
        {
            var role = post().RoleID;

            if (role == "RL01" || role == "RL04" || role == "RL05")
            {
                var result = await _managarNhanVienService.Create(request);

                if (result == null)
                {
                    return(BadRequest());
                }
                var PhongBan = await _managarNhanVienService.GetByID(result);

                return(Created(nameof(getbyID), PhongBan));
            }
            else
            {
                return(BadRequest());
            }
        }