Exemplo n.º 1
0
        public Boolean addEmployee(Employee emp, int SchoolId, string addrproof, string cvpath)
        {
            using (var transaction = db.Database.BeginTransaction())
            {
                try
                {
                    int    idUser         = 0;
                    int    userexist      = 0;
                    string strEmpEmail    = "";
                    string strUserName    = "";
                    string strDisplayName = "";
                    if (emp.Email != null)
                    {
                        var qryuser = db.AspNetUsers.Where(x => x.Email == emp.Email).FirstOrDefault();
                        if (qryuser != null)
                        {
                            userexist = Convert.ToInt32(qryuser.IdUser);
                        }
                        strEmpEmail = emp.Email;
                    }
                    //else
                    //{
                    //    strEmpEmail = emp.first_name.ToLower() + "." + emp.last_name.ToLower() + "@schoolorbit.com";
                    //}
                    if (userexist > 0)
                    {
                        idUser = userexist;
                    }
                    else
                    {
                        strUserName = emp.first_name.Substring(0, 1).ToLower() + "" + emp.last_name.Substring(0, 1).ToLower();
                        if (emp.screen_name != null)
                        {
                            strDisplayName = emp.screen_name;
                        }
                        else
                        {
                            strDisplayName = emp.first_name + " " + emp.last_name;
                        }
                        //var user = new ApplicationUser { UserName = strUserName, Email = strEmpEmail, Displayname = strDisplayName };
                        //var result = await UserManager.CreateAsync(user, "Employee@123");

                        //if (result.Succeeded)
                        //{
                        //    var qryUser = db.AspNetUsers.Find(user.Id);
                        //    idUser = qryUser.IdUser;
                        //    qryUser.UserName = qryUser.UserName + (idUser + 1000);

                        // insert into UserAccount table
                        DataModel.sys_user useraccnt = new DataModel.sys_user();
                        useraccnt.active      = true;
                        useraccnt.allergic    = emp.allergic;
                        useraccnt.blood_group = emp.blood_group;
                        useraccnt.DOB         = emp.DOB;
                        useraccnt.first_name  = emp.first_name;
                        useraccnt.gender      = emp.gender;
                        // useraccnt.Id = idUser;
                        useraccnt.last_name                = emp.last_name;
                        useraccnt.middle_name              = emp.middle_name;
                        useraccnt.permanent_address        = emp.permanent_address;
                        useraccnt.permanent_city           = emp.permanent_city;
                        useraccnt.permanent_country        = emp.permanent_country;
                        useraccnt.permanent_state          = emp.permanent_state;
                        useraccnt.permanent_zip_code       = emp.permanent_zip_code;
                        useraccnt.photo_url                = "/pictures/default-avatar.png";
                        useraccnt.present_address          = emp.present_address;
                        useraccnt.present_city             = emp.present_city;
                        useraccnt.present_country          = emp.present_country;
                        useraccnt.present_state            = emp.present_state;
                        useraccnt.present_zip_code         = emp.present_zip_code;
                        useraccnt.screen_name              = strDisplayName;
                        useraccnt.aadhaar_number           = emp.AdharNumber;
                        useraccnt.contact_number           = emp.mobilenumber;
                        useraccnt.contact_number_alternate = emp.AlternateNumber;
                        db.sys_user.Add(useraccnt);
                        db.SaveChanges();

                        if (strEmpEmail != "")    // this condition has been added to check if Employee has a valid email to create user login.
                        {
                            UserLogin Login = new UserLogin();
                            strUserName = strUserName + useraccnt.Id;
                            var res = Login.CreateUser(useraccnt.Id, UserLogin.LoginUserType.employee, strEmpEmail, strUserName);
                        }

                        DataModel.sch_employee Employ = new DataModel.sch_employee();

                        Employ.idDepartment  = Convert.ToInt32(emp.department_name);
                        Employ.BankAccountNo = emp.BankAccountNo;
                        Employ.BankName      = emp.BankName;

                        Employ.designation     = emp.designation;
                        Employ.employee_number = emp.employee_number;
                        Employ.ESIPFNumber     = emp.ESIPFNumber;
                        Employ.IFSCCode        = emp.IFSCCode;
                        Employ.ManagerID       = emp.ManagerID;
                        Employ.PanNumber       = emp.PanNumber;
                        Employ.PassingYear     = emp.PassingYear;
                        Employ.Qualification   = emp.Qualification;
                        //Employ.AdharNumber = emp.AdharNumber;
                        //Employ.mobilenumber = emp.mobilenumber;
                        //Employ.AlternateNumber = emp.AlternateNumber;
                        Employ.University    = emp.University;
                        Employ.WorkEndDate   = emp.WorkEndDate;
                        Employ.WorkStartDate = emp.WorkStartDate;
                        Employ.is_active     = true;
                        // End
                        // School Id should come Roles
                        Employ.idSchool = SchoolId;
                        // end
                        Employ.idUser = useraccnt.Id;

                        if (addrproof != "")
                        {
                            Employ.addressproof_path = addrproof;
                        }
                        if (cvpath != "")
                        {
                            Employ.cv_path = cvpath;
                        }
                        db.sch_employee.Add(Employ);
                        db.SaveChanges();
                    }
                    //  }
                    transaction.Commit();
                    return(true);
                }
                catch
                {
                    transaction.Rollback();
                    return(false);
                }
            }
        }
Exemplo n.º 2
0
        public Boolean Addstudent(Student student, int idSchool)
        {
            using (var transaction = db.Database.BeginTransaction())
            {
                try
                {
                    string strUserName     = student.first_name.Substring(0, 1).ToLower() + "" + student.last_name.Substring(0, 1).ToLower();
                    string strStudentEmail = "";
                    if (student.Email != null)
                    {
                        strStudentEmail = student.Email;
                    }
                    else
                    {
                        strStudentEmail = student.first_name.ToLower() + "." + student.last_name.ToLower() + "@schoolorbit.com";
                    }
                    string strDisplayName = "";
                    if (student.screen_name != null)
                    {
                        strDisplayName = student.screen_name;
                    }
                    else
                    {
                        strDisplayName = student.first_name + " " + student.last_name;
                    }
                    string strParentEmail    = "";
                    string strParentUserName = student.father_guardian_phone_no;
                    if (student.father_guardian_email != null)
                    {
                        strParentEmail = student.father_guardian_email;
                    }
                    else
                    {
                        strParentEmail = student.father_guardian_first_name.ToLower() + "." + student.father_guardian_last_name + "@schoolorbit.com";
                    }

                    DataModel.sys_user useraccnt = new DataModel.sys_user();
                    useraccnt.active                = true;
                    useraccnt.allergic              = student.allergic;
                    useraccnt.blood_group           = student.blood_group;
                    useraccnt.DOB                   = student.DOB;
                    useraccnt.first_name            = student.first_name;
                    useraccnt.gender                = student.gender;
                    useraccnt.last_name             = student.last_name;
                    useraccnt.middle_name           = student.middle_name;
                    useraccnt.paediatrician_details = student.paediatrician_details;
                    useraccnt.permanent_address     = student.permanent_address;
                    useraccnt.permanent_city        = student.permanent_city;
                    useraccnt.permanent_country     = student.permanent_country;
                    useraccnt.permanent_state       = student.permanent_state;
                    useraccnt.permanent_zip_code    = student.permanent_zip_code;
                    useraccnt.photo_url             = "/pictures/default-avatar.png";
                    useraccnt.present_address       = student.present_address;
                    useraccnt.present_city          = student.present_city;
                    useraccnt.present_country       = student.present_country;
                    useraccnt.present_state         = student.present_state;
                    useraccnt.present_zip_code      = student.present_zip_code;
                    useraccnt.screen_name           = strDisplayName;
                    db.sys_user.Add(useraccnt);
                    db.SaveChanges();
                    //Create Login for Student
                    UserLogin Login = new UserLogin();
                    strUserName = strUserName + useraccnt.Id;
                    var res = Login.CreateUser(useraccnt.Id, UserLogin.LoginUserType.student, strStudentEmail, strUserName);


                    //check parent already exists
                    var xuser = db.sch_parent.Where(x => x.father_guardian_email == student.father_guardian_email).FirstOrDefault();
                    DataModel.sys_user prntuseraccnt = new DataModel.sys_user();
                    if (xuser == null)
                    {
                        prntuseraccnt.active             = true;
                        prntuseraccnt.DOB                = Convert.ToDateTime("1900/01/01");
                        prntuseraccnt.first_name         = student.father_guardian_first_name;
                        prntuseraccnt.gender             = "M";
                        prntuseraccnt.last_name          = student.father_guardian_last_name;
                        prntuseraccnt.permanent_address  = student.permanent_address;
                        prntuseraccnt.permanent_city     = student.permanent_city;
                        prntuseraccnt.permanent_country  = student.permanent_country;
                        prntuseraccnt.permanent_state    = student.permanent_state;
                        prntuseraccnt.permanent_zip_code = student.permanent_zip_code;
                        prntuseraccnt.photo_url          = "/pictures/default-avatar.png";
                        prntuseraccnt.present_address    = student.present_address;
                        prntuseraccnt.present_city       = student.present_city;
                        prntuseraccnt.present_country    = student.present_country;
                        prntuseraccnt.present_state      = student.present_state;
                        prntuseraccnt.present_zip_code   = student.present_zip_code;
                        prntuseraccnt.screen_name        = student.father_guardian_first_name + " " + student.father_guardian_last_name;
                        db.sys_user.Add(prntuseraccnt);
                        db.SaveChanges();


                        //Create Login for Parent
                        UserLogin ParentLogin = new UserLogin();
                        var       result      = ParentLogin.CreateUser(prntuseraccnt.Id, UserLogin.LoginUserType.parent, strParentEmail, strParentUserName);

                        DataModel.sch_parent prnt = new DataModel.sch_parent();
                        prnt.idUser = prntuseraccnt.Id;
                        prnt.father_guardian_email      = student.father_guardian_email;
                        prnt.father_guardian_name       = student.father_guardian_first_name;
                        prnt.father_guardian_occupation = student.father_guardian_occupation;
                        prnt.father_guardian_phone_no   = student.father_guardian_phone_no;
                        prnt.mother_name       = student.mother_name;
                        prnt.mother_email      = student.mother_email;
                        prnt.mother_phone_no   = student.mother_phone_no;
                        prnt.mother_occupation = student.mother_occupation;
                        prnt.ts_entered        = DateTime.Now;
                        prnt.ts_updated        = DateTime.Now;
                        db.sch_parent.Add(prnt);
                        db.SaveChanges();
                    }

                    //link parent id to student
                    DataModel.sch_student stud = new DataModel.sch_student();
                    stud.admission_date = student.admission_date;
                    // Need to put Validation for Duplicate Admission Numbers..
                    stud.admission_number = student.admission_number;
                    // End
                    // School Id should come Roles
                    stud.idSchool = idSchool;
                    // end
                    stud.idUser    = useraccnt.Id;
                    stud.is_active = true;
                    if (xuser == null)
                    {
                        stud.idParent = prntuseraccnt.Id;
                    }
                    else
                    {
                        stud.idParent = xuser.idUser;
                    }
                    stud.ts_entered = DateTime.Now;
                    stud.ts_updated = DateTime.Now;
                    db.sch_student.Add(stud);
                    db.SaveChanges();
                    transaction.Commit();
                    return(true);
                }

                catch (Exception Ex)
                {
                    transaction.Rollback();
                    return(false);

                    throw Ex;
                }
            }
        }