コード例 #1
0
        public async Task <IActionResult> Register(RegisterDto model)
        {
            if (model.id == 0)
            {
                var user = new User
                {
                    UserName         = model.Email,
                    Email            = model.Email,
                    FullName         = model.FullName
                    , EmailConfirmed = true
                    , role_id        = 1,
                    Timezone         = TimeZone.CurrentTimeZone.StandardName.ToString()
                    , profilePath    = ""
                };
                School_Year school_Year = new School_Year()
                {
                    // school_ID = school.id,
                    isActive = model.isActive,
                    YearID   = model.year
                };
                var result = await _userManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    School school = new School();

                    var fileName = "";
                    var uploads  = Path.Combine(HostingEnvironment.WebRootPath, "uploads");
                    if (model.schoolLogo.Length > 0)
                    {
                        fileName = Guid.NewGuid().ToString().Replace("-", model.schoolLogo.FileName) + Path.GetExtension(model.schoolLogo.FileName);
                        using (var fileStream = new FileStream(Path.Combine(uploads, fileName), FileMode.Create))
                        {
                            await model.schoolLogo.CopyToAsync(fileStream);

                            //emp.BookPic = fileName;
                        }
                    }

                    //If the user is a new tenant create tenant



                    school                       = new School();
                    school.created_by            = user.Id;
                    school.created_date          = DateTime.Now;
                    school.name                  = model.schoolName;
                    school.imgPath               = fileName;
                    school.timezone              = TimeZone.CurrentTimeZone.StandardName.ToString();
                    _context.Entry(school).State = EntityState.Added;
                    _context.SaveChanges();
                    Schoo_User schoo_User = new Schoo_User()
                    {
                        user_Id   = user.Id,
                        school_Id = school.id
                    };


                    _context.Entry(schoo_User).State = EntityState.Added;
                    _context.SaveChanges();


                    school_Year.school_ID = school.id;
                    _context.school_Years.Add(school_Year);
                    _context.SaveChanges();



                    //SendActivationCode(user);

                    return(Ok("Done"));
                }
                else
                {
                    return(new JsonResult(new
                    {
                        Message = "Error",
                        Errors = result.Errors
                    }));
                }
            }
            else
            {
                var scholl   = _context.schools.FirstOrDefault(o => o.id == model.id);
                var fileName = "";
                if (model.schoolLogo.Length != null)

                {
                    var deletefile = Path.Combine(HostingEnvironment.WebRootPath + "/uploads");
                    var uploads    = Path.Combine(HostingEnvironment.WebRootPath, "uploads");

                    if (System.IO.File.Exists((Path.Combine(deletefile, scholl.imgPath))))
                    {
                        System.IO.File.Delete((Path.Combine(deletefile, scholl.imgPath)));
                    }


                    fileName = Guid.NewGuid().ToString().Replace("-", "") + Path.GetExtension(model.schoolLogo.FileName);
                    using (var fileStream = new FileStream(Path.Combine(uploads, fileName), FileMode.Create))
                    {
                        await model.schoolLogo.CopyToAsync(fileStream);
                    }
                }
                scholl.name    = model.schoolName;
                scholl.imgPath = fileName;
                _context.Entry(scholl).State = EntityState.Modified;
                _context.SaveChanges();
                var sy = _context.school_Years.FirstOrDefault(o => o.school_ID == model.id);
                sy.isActive = model.isActive;
                sy.YearID   = model.year;
                _context.Entry(sy).State = EntityState.Modified;
                _context.SaveChanges();
                return(Ok("Done"));
            }
        }
コード例 #2
0
        public async Task <IActionResult> RegisterTeacherAsync([FromForm] Models.TeacherDto teacher)

        {
            if (teacher.id == "0")
            {
                var user = new User
                {
                    UserName = teacher.UserName,
                    Email    = teacher.Email,
                    FullName = teacher.FullName
                    ,
                    PhoneNumber = teacher.phone
                    ,
                    EmailConfirmed = true
                    ,
                    Timezone = TimeZone.CurrentTimeZone.StandardName.ToString()
                };
                var fileName = "";
                var uploads  = Path.Combine(hostingEnvironment.WebRootPath, "uploads");
                if (teacher.profileimg.Length > 0)
                {
                    fileName = Guid.NewGuid().ToString().Replace("-", teacher.profileimg.FileName) + Path.GetExtension(teacher.profileimg.FileName);
                    using (var fileStream = new FileStream(Path.Combine(uploads, fileName), FileMode.Create))
                    {
                        await teacher.profileimg.CopyToAsync(fileStream);

                        //emp.BookPic = fileName;
                    }
                }
                user.profilePath = "uploads/" + fileName;

                var result = await _userManager.CreateAsync(user, teacher.Password);

                if (result.Succeeded)
                {
                    Teacher    t           = new Teacher();
                    Schoo_User school_user = new Schoo_User();
                    school_user.school_Id = School_Claim;;
                    school_user.user_Id   = user.Id;
                    _context.schoo_Users.Add(school_user);
                    _context.SaveChanges();



                    t.school_id = School_Claim;
                    t.userid    = user.Id;

                    // user.profilePath = "uploads/" + fileName;
                    _context.teachers.Add(t);
                    _context.SaveChanges();
                    return(new JsonResult("Data Saved "));
                }
                else
                {
                    string error = "";
                    foreach (var e in result.Errors)
                    {
                        error += e.Description;
                    }
                    return(new JsonResult(error));
                }
            }
            else
            {
                var v = _context.Users.FirstOrDefault(o => o.Id == teacher.id);
                v.FullName              = teacher.FullName;
                v.Email                 = teacher.Email;
                v.PhoneNumber           = teacher.phone;
                _context.Entry(v).State = Microsoft.EntityFrameworkCore.EntityState.Modified;
                _context.SaveChanges();
                return(new JsonResult("Data Saved "));
            }
        }