public static bool IsAuthorized(string menuId, string permissionType, string userId) { bool result = false; if (!string.IsNullOrEmpty(menuId)) { DataSet dsMenuRights = BaseDB.DBManager.AppConnection.ExecuteSP("gnl_all_user_authorization_select_sp", new ArrayList { "user_id" }, new ArrayList { userId }); DataView dw = dsMenuRights.Tables[0].DefaultView; dw.RowFilter = String.Format("menu_id={0} and {1}=1", menuId, permissionType); GenelRepository gnlDB = RepositoryManager.GetRepository <GenelRepository>(); result = dw.Count > 0; if (GlobalHelper.IsGuid(userId)) { gnl_users user = gnlDB.GetUser(Guid.Parse(userId)); if (user.is_administrator != null && user.is_administrator.Value == true) { result = true; } } } return(result); }
public User BindUser(User model, Guid recordId) { gnl_users user = new gnl_users(); user = this.GetUser(recordId); model.name = user.name; model.surname = user.surname; model.email = user.email; model.address = user.adress; model.mobile_phone = user.mobile_phone; model.home_phone = user.home_phone; model.identity_number = user.identity_number; model.is_active = user.is_active.Value; if (user.group_id != null) { model.SelectedGroupId = user.group_id.ToString(); } if (user.manager_id != null) { model.ManagerId = user.manager_id.ToString(); } if (user.birth_date != null) { model.birth_date = user.birth_date.Value; } else { model.birth_date = DateTime.MinValue; } if (user.end_date != null) { model.end_date = user.end_date.Value; } else { model.end_date = DateTime.MinValue; } if (user.start_date != null) { model.start_date = user.start_date.Value; } else { model.start_date = DateTime.MinValue; } model.note = user.note; return(model); }
public string GetUserPassword(Guid recordId) { gnl_users user = new gnl_users(); user = this.GetUser(recordId); return(user.password); }
public void AddUser(gnl_users user, User model) { user.user_id = Guid.NewGuid(); user.name = model.name; user.surname = model.surname; user.email = model.email; if (!string.IsNullOrEmpty(model.password)) { user.password = model.password; } if (!string.IsNullOrEmpty(model.SelectedGroupId) && GlobalHelper.IsGuid(model.SelectedGroupId)) { user.group_id = Guid.Parse(model.SelectedGroupId); } if (string.IsNullOrEmpty(model.ManagerName)) { user.manager_id = null; } else { if (!string.IsNullOrEmpty(model.ManagerId) && GlobalHelper.IsGuid(model.ManagerId)) { user.manager_id = Guid.Parse(model.ManagerId); } } user.mobile_phone = model.mobile_phone; user.home_phone = model.home_phone; user.identity_number = model.identity_number; if (model.birth_date != null && model.birth_date != DateTime.MinValue && model.birth_date.ToString() != "") { user.birth_date = Convert.ToDateTime(model.birth_date); } if (model.end_date != null && model.end_date != DateTime.MinValue && model.end_date.ToString() != "") { user.end_date = Convert.ToDateTime(model.end_date); } if (model.start_date != null && model.start_date != DateTime.MinValue && model.start_date.ToString() != "") { user.start_date = Convert.ToDateTime(model.start_date); } user.adress = model.address; user.note = model.note; user.is_active = model.is_active; user.is_deleted = false; db.gnl_users.Add(user); this.Kaydet(); }
public User DeleteUser(User model, Guid recordId) { gnl_users user = new gnl_users(); user = this.GetUser(recordId); user.is_deleted = true; user.is_active = false; user.deleted_at = DateTime.UtcNow; user.deleted_by = SessionContext.Current.ActiveUser.UserUid; this.Kaydet(); return(model); }
public ActionResult User(string RecordId, string MenuId) { GenelRepository gnlDB = RepositoryManager.GetRepository <GenelRepository>(); User model = new User(); MenuId = GlobalHelper.Decrypt(MenuId); model.RecordId = RecordId; model.MenuId = MenuId; SessionContext.Current.ActiveUser.MenuId = MenuId; Guid recordId = Guid.Empty; model.activeGroups = gnlDB.GetActiveGroups(); if (model.activeGroups != null && model.activeGroups.Count > 0) { model.SelectedGroupId = model.activeGroups[0].group_id.ToString(); } if (GlobalHelper.IsGuid(model.RecordId)) { try { recordId = Guid.Parse(model.RecordId); model = gnlDB.BindUser(model, recordId); ViewBag.ResultMessage = Resources.GlobalResource.transaction_success; } catch (Exception exp) { ViewBag.Success = false; ModelState.AddModelError("Error", exp.Message); } } if (!string.IsNullOrEmpty(model.ManagerId) && GlobalHelper.IsGuid(model.ManagerId)) { gnl_users userManager = gnlDB.GetUser(Guid.Parse(model.ManagerId)); if (userManager != null) { model.ManagerName = userManager.name + " " + userManager.surname; } } return(View(model)); }
public User UpdateUserPassword(User model, Guid recordId) { gnl_users user = new gnl_users(); user = this.GetUser(recordId); if (!string.IsNullOrEmpty(model.password)) { user.password = model.password; } user.updated_at = DateTime.UtcNow; user.updated_by = SessionContext.Current.ActiveUser.UserUid; this.Kaydet(); return(model); }
public static bool HasAuthorizedChild(string parentMenuId) { DataSet dsMenuRights = BaseDB.DBManager.AppConnection.ExecuteSP("gnl_user_authorization_child_menu_rights_select_sp", new ArrayList { "user_id", "parent_menu_id" }, new ArrayList { SessionContext.Current.ActiveUser.UserUid, parentMenuId }); bool result = false; GenelRepository gnlDB = RepositoryManager.GetRepository <GenelRepository>(); result = dsMenuRights.Tables[0].Rows.Count > 0; gnl_users user = gnlDB.GetUser(SessionContext.Current.ActiveUser.UserUid); if (user.is_administrator != null && user.is_administrator.Value == true) { result = true; } return(result); }
public ActionResult User(User model) { Guid recordId = Guid.Empty; GenelRepository gnlDB = RepositoryManager.GetRepository <GenelRepository>(); SessionContext.Current.ActiveUser.MenuId = model.MenuId; ViewBag.Success = true; model.activeGroups = gnlDB.GetActiveGroups(); ModelState.Remove("start_date"); ModelState.Remove("end_date"); ModelState.Remove("is_active"); if (model.FromDeleteButton == "1") { if (GlobalHelper.IsGuid(model.RecordId)) { gnlDB.DeleteUser(model, Guid.Parse(model.RecordId)); return(RedirectToAction("ListPage", "General", new { MenuId = Dcm.Source.GlobalHelper.Encrypt(model.MenuId) })); } } else { if (ModelState.IsValid) { if (GlobalHelper.IsGuid(model.RecordId)) { recordId = Guid.Parse(model.RecordId); try { if (!string.IsNullOrEmpty(model.password)) { model.password = GlobalHelper.EncriptText(model.password.Trim()); } gnl_users userByEmail = new gnl_users(); userByEmail = gnlDB.GetUserByEmail(model.email.Trim()); if (userByEmail != null && userByEmail.user_id != recordId) { ViewBag.Success = false; ModelState.AddModelError("Error", Resources.GlobalResource.exists_user_email); } else { model = gnlDB.UpdateUser(model, recordId); if (!string.IsNullOrEmpty(model.password)) { ViewBag.ResultMessage = Resources.GlobalResource.transaction_success_with_password; } else { ViewBag.ResultMessage = Resources.GlobalResource.transaction_success; } } } catch (Exception exp) { ViewBag.Success = false; ModelState.AddModelError("Error", exp.Message); } } else { try { gnl_users user = new gnl_users(); if (!string.IsNullOrEmpty(model.password)) { model.password = GlobalHelper.EncriptText(model.password.Trim()); } gnl_users userByEmail = new gnl_users(); userByEmail = gnlDB.GetUserByEmail(model.email.Trim()); if (userByEmail != null) { ViewBag.Success = false; ModelState.AddModelError("Error", Resources.GlobalResource.exists_user_email); } else { gnlDB.AddUser(user, model); model.RecordId = user.user_id.ToString(); if (!string.IsNullOrEmpty(model.password)) { ViewBag.ResultMessage = Resources.GlobalResource.transaction_success_with_password; } else { ViewBag.ResultMessage = Resources.GlobalResource.transaction_success; } } } catch (Exception exp) { ViewBag.Success = false; ModelState.AddModelError("Error", exp.Message); } } } else { ViewBag.Success = false; } if (string.IsNullOrEmpty(model.ManagerName)) { model.ManagerId = null; } if (!string.IsNullOrEmpty(model.ManagerId) && GlobalHelper.IsGuid(model.ManagerId)) { gnl_users userManager = gnlDB.GetUser(Guid.Parse(model.ManagerId)); if (userManager != null) { model.ManagerName = userManager.name + " " + userManager.surname; } } } return(View(model)); }
public ActionResult Group(Group model) { Guid recordId = Guid.Empty; GenelRepository gnlDB = RepositoryManager.GetRepository <GenelRepository>(); SessionContext.Current.ActiveUser.MenuId = model.MenuId; ViewBag.Success = true; ModelState.Remove("is_active"); if (model.FromDeleteButton == "1") { if (GlobalHelper.IsGuid(model.RecordId)) { gnlDB.DeleteGroup(model, Guid.Parse(model.RecordId)); return(RedirectToAction("ListPage", "General", new { MenuId = Dcm.Source.GlobalHelper.Encrypt(model.MenuId) })); } } else { if (ModelState.IsValid) { if (GlobalHelper.IsGuid(model.RecordId)) { recordId = Guid.Parse(model.RecordId); try { model = gnlDB.UpdateGroup(model, recordId); ViewBag.ResultMessage = Resources.GlobalResource.transaction_success; } catch (Exception exp) { ViewBag.Success = false; ModelState.AddModelError("Error", exp.Message); } } else { try { gnl_user_groups group = new gnl_user_groups(); gnlDB.AddGroup(group, model); model.RecordId = group.group_id.ToString(); ViewBag.ResultMessage = Resources.GlobalResource.transaction_success; } catch (Exception exp) { ViewBag.Success = false; ModelState.AddModelError("Error", exp.Message); } } } else { ViewBag.Success = false; } if (string.IsNullOrEmpty(model.ManagerName)) { model.ManagerId = null; } if (!string.IsNullOrEmpty(model.ManagerId) && GlobalHelper.IsGuid(model.ManagerId)) { gnl_users userManager = gnlDB.GetUser(Guid.Parse(model.ManagerId)); if (userManager != null) { model.ManagerName = userManager.name + " " + userManager.surname; } } } return(View(model)); }
public User UpdateUser(User model, Guid recordId) { gnl_users user = new gnl_users(); user = this.GetUser(recordId); user.name = model.name; user.surname = model.surname; user.email = model.email; user.adress = model.address; user.mobile_phone = model.mobile_phone; user.home_phone = model.home_phone; if (!string.IsNullOrEmpty(model.password)) { user.password = model.password; } if (!string.IsNullOrEmpty(model.SelectedGroupId) && GlobalHelper.IsGuid(model.SelectedGroupId)) { user.group_id = Guid.Parse(model.SelectedGroupId); } if (string.IsNullOrEmpty(model.ManagerName)) { user.manager_id = null; } else { if (!string.IsNullOrEmpty(model.ManagerId) && GlobalHelper.IsGuid(model.ManagerId)) { user.manager_id = Guid.Parse(model.ManagerId); } } user.identity_number = model.identity_number; user.is_active = model.is_active; if (model.birth_date != null && model.birth_date != DateTime.MinValue && model.birth_date.ToString() != "") { user.birth_date = model.birth_date; } if (model.end_date != null && model.end_date != DateTime.MinValue && model.end_date.ToString() != "") { user.end_date = model.end_date; } if (model.start_date != null && model.start_date != DateTime.MinValue && model.start_date.ToString() != "") { user.start_date = model.start_date; } user.note = model.note; user.updated_at = DateTime.UtcNow; user.updated_by = SessionContext.Current.ActiveUser.UserUid; this.Kaydet(); return(model); }
public void TaskMailSend(Guid user_id, string order_id, string task_name, Guid task_id, string title, string body, string task_status_name, string type, string user_name_surname = "") { #region Mail Gönderiliyor GenelRepository gnlDB = RepositoryManager.GetRepository <GenelRepository>(); gnl_users userMail = gnlDB.GetUser(user_id); string nameSurnameMail = ""; if (userMail != null) { nameSurnameMail = userMail.name + " " + userMail.surname; } DateTime localDateTimeMail = BaseClasses.BaseFunctions.ToLocalTime(DateTime.UtcNow, BaseDB.SessionContext.Current.ActiveUser.TimeZoneInfoUser.Id); string mailBody = ""; if (type == "1") { mailBody = new StreamReader(AppDomain.CurrentDomain.BaseDirectory + @"Templates\TaskStatusChangeTemplate.html").ReadToEnd(); } else if (type == "2") { mailBody = new StreamReader(AppDomain.CurrentDomain.BaseDirectory + @"Templates\TaskNewExplanationTemplate.html").ReadToEnd(); } else if (type == "99") { mailBody = new StreamReader(AppDomain.CurrentDomain.BaseDirectory + @"Templates\TaskExpireEndDate.html").ReadToEnd(); } if (type == "99") { tsk_tasks task = new tsk_tasks(); task = this.GetTask(task_id); gnl_users taskUser = gnlDB.GetUser(task.task_user_id); DateTime localDateTimeMailExpireTask = BaseClasses.BaseFunctions.ToLocalTime(task.end_date, BaseDB.SessionContext.Current.ActiveUser.TimeZoneInfoUser.Id); mailBody = mailBody.Replace("%%task_end_date%%", localDateTimeMailExpireTask.ToString()); mailBody = mailBody.Replace("%%task_user_name_surname%%", taskUser.name + " " + taskUser.surname); } mailBody = mailBody.Replace("%%company_name%%", Dcm.Source.GlobalHelper.GetCompanyName()); mailBody = mailBody.Replace("%%ad%%", nameSurnameMail); mailBody = mailBody.Replace("%%task_no%%", "#" + order_id.PadLeft(5, '0')); string applicationPath = ""; if (System.Web.HttpContext.Current.Request.ApplicationPath == "/") { applicationPath = "http://" + System.Web.HttpContext.Current.Request.ServerVariables["HTTP_HOST"] + "/"; } else { applicationPath = "http://" + System.Web.HttpContext.Current.Request.ServerVariables["HTTP_HOST"] + "/" + System.Web.HttpContext.Current.Request.ApplicationPath + "/"; } mailBody = mailBody.Replace("%%path_url%%", applicationPath); mailBody = mailBody.Replace("%%task_name%%", task_name); mailBody = mailBody.Replace("%%task_date%%", localDateTimeMail.ToString()); mailBody = mailBody.Replace("%%task_status_name%%", task_status_name); mailBody = mailBody.Replace("%%task_body%%", body); mailBody = mailBody.Replace("%%user_name_surname%%", user_name_surname); mailBody = mailBody.Replace("%%task_link%%", applicationPath + "Task/Tasks?RecordId=" + task_id + "&MenuId=" + Dcm.Source.GlobalHelper.Encrypt("149")); #region mail gönderiliyor if (BaseClasses.BaseFunctions.getInstance().IsEmailValid(userMail.email.Trim())) { BaseClasses.BaseFunctions.getInstance().SendSMTPMail(userMail.email.Trim(), "", title, mailBody, "", null, "", "genel"); } #endregion #endregion }
public Task UpdateTaskStatus(Task model, Guid recordId, int statusId, bool active = true) { tsk_tasks task = new tsk_tasks(); task = this.GetTask(recordId); bool statusChanged = false; if (statusId != task.task_status_id) { statusChanged = true; } task.task_status_id = statusId; task.is_task_sent = true; task.is_active = active; task.updated_at = DateTime.UtcNow; task.updated_by = SessionContext.Current.ActiveUser.UserUid; this.Kaydet(); if (statusChanged) { this.AddTaskHistory(task); GenelRepository gnlDB = RepositoryManager.GetRepository <GenelRepository>(); #region Notification Ekleniyor if (statusId == (int)Enums.TaskStatus.Gonderildi) { #region Notification Statu Gönderildi string title = Resources.GlobalResource.new_task_notification; gnl_users user = gnlDB.GetUser(task.task_user_id); string nameSurname = ""; if (user != null) { nameSurname = user.name + " " + user.surname; } DateTime localDateTime = BaseClasses.BaseFunctions.ToLocalTime(DateTime.UtcNow, BaseDB.SessionContext.Current.ActiveUser.TimeZoneInfoUser.Id); string body = string.Format(Resources.GlobalResource.new_task_notification_body, task.task_name, localDateTime, nameSurname); gnlDB.AddNotification(recordId, task.assigned_user_id, (int)Enums.NotificationType.Normal, (int)Enums.NotificationModuleType.Task, title, body); gnlDB.Kaydet(); TaskMailSend(task.assigned_user_id, task.order_id.ToString(), task.task_name, task.task_id, "Task Status Change", "", "Sent", "1"); #endregion } else if (Convert.ToInt32(model.task_status_id) == (int)Enums.TaskStatus.Gonderildi) { #region Notification Statu Gönderildi string title = Resources.GlobalResource.new_task_notification; gnl_users user = gnlDB.GetUser(task.task_user_id); string nameSurname = ""; if (user != null) { nameSurname = user.name + " " + user.surname; } DateTime localDateTime = BaseClasses.BaseFunctions.ToLocalTime(DateTime.UtcNow, BaseDB.SessionContext.Current.ActiveUser.TimeZoneInfoUser.Id); string body = string.Format(Resources.GlobalResource.new_task_notification_body, task.task_name, localDateTime, nameSurname); gnlDB.AddNotification(recordId, task.assigned_user_id, (int)Enums.NotificationType.Normal, (int)Enums.NotificationModuleType.Task, title, body); gnlDB.Kaydet(); TaskMailSend(task.assigned_user_id, task.order_id.ToString(), task.task_name, task.task_id, "Task Status Change", "", "Sent", "1"); #endregion } else { #region Notification Statu Değişikliği if (Convert.ToInt32(model.task_status_id) == (int)Enums.TaskStatus.Calismaya_Baslandi) { string title = Resources.GlobalResource.task_status_notification; DateTime localDateTime = BaseClasses.BaseFunctions.ToLocalTime(DateTime.UtcNow, BaseDB.SessionContext.Current.ActiveUser.TimeZoneInfoUser.Id); string body = string.Format(Resources.GlobalResource.task_gonderildi_status_notification_body, task.task_name, Resources.GlobalResource.task_status_calismaya_baslandi, localDateTime); gnlDB.AddNotification(recordId, task.assigned_user_id, (int)Enums.NotificationType.Normal, (int)Enums.NotificationModuleType.Task, title, body); gnlDB.Kaydet(); gnlDB.AddNotification(recordId, task.task_user_id, (int)Enums.NotificationType.Normal, (int)Enums.NotificationModuleType.Task, title, body); gnlDB.Kaydet(); if (task.assigned_user_id != task.task_user_id) { TaskMailSend(task.assigned_user_id, task.order_id.ToString(), task.task_name, task.task_id, "Task Status Change", "", "Work Started", "1"); TaskMailSend(task.task_user_id, task.order_id.ToString(), task.task_name, task.task_id, "Task Status Change", "", "Work Started", "1"); } else { TaskMailSend(task.assigned_user_id, task.order_id.ToString(), task.task_name, task.task_id, "Task Status Change", "", "Work Started", "1"); } } else if (Convert.ToInt32(model.task_status_id) == (int)Enums.TaskStatus.Tamamlandi) { string title = Resources.GlobalResource.task_status_notification; DateTime localDateTime = BaseClasses.BaseFunctions.ToLocalTime(DateTime.UtcNow, BaseDB.SessionContext.Current.ActiveUser.TimeZoneInfoUser.Id); string body = string.Format(Resources.GlobalResource.task_gonderildi_status_notification_body, task.task_name, Resources.GlobalResource.task_status_tamamlandi, localDateTime); task.task_completed_by = SessionContext.Current.ActiveUser.UserUid; task.task_completed_date = DateTime.UtcNow; this.Kaydet(); gnlDB.AddNotification(recordId, task.assigned_user_id, (int)Enums.NotificationType.Normal, (int)Enums.NotificationModuleType.Task, title, body); gnlDB.Kaydet(); gnlDB.AddNotification(recordId, task.task_user_id, (int)Enums.NotificationType.Normal, (int)Enums.NotificationModuleType.Task, title, body); gnlDB.Kaydet(); if (task.assigned_user_id != task.task_user_id) { TaskMailSend(task.assigned_user_id, task.order_id.ToString(), task.task_name, task.task_id, "Task Status Change", "", "Finished", "1"); TaskMailSend(task.task_user_id, task.order_id.ToString(), task.task_name, task.task_id, "Task Status Change", "", "Finished", "1"); } else { TaskMailSend(task.assigned_user_id, task.order_id.ToString(), task.task_name, task.task_id, "Task Status Change", "", "Finished", "1"); } } else if (Convert.ToInt32(model.task_status_id) == (int)Enums.TaskStatus.Reddedildi) { string title = Resources.GlobalResource.task_status_notification; DateTime localDateTime = BaseClasses.BaseFunctions.ToLocalTime(DateTime.UtcNow, BaseDB.SessionContext.Current.ActiveUser.TimeZoneInfoUser.Id); string body = string.Format(Resources.GlobalResource.task_gonderildi_status_notification_body, task.task_name, Resources.GlobalResource.task_status_reddedildi, localDateTime); gnlDB.AddNotification(recordId, task.assigned_user_id, (int)Enums.NotificationType.Normal, (int)Enums.NotificationModuleType.Task, title, body); gnlDB.Kaydet(); gnlDB.AddNotification(recordId, task.task_user_id, (int)Enums.NotificationType.Normal, (int)Enums.NotificationModuleType.Task, title, body); gnlDB.Kaydet(); if (task.assigned_user_id != task.task_user_id) { TaskMailSend(task.assigned_user_id, task.order_id.ToString(), task.task_name, task.task_id, "Task Status Change", "", "Rejected", "1"); TaskMailSend(task.task_user_id, task.order_id.ToString(), task.task_name, task.task_id, "Task Status Change", "", "Rejected", "1"); } else { TaskMailSend(task.assigned_user_id, task.order_id.ToString(), task.task_name, task.task_id, "Task Status Change", "", "Rejected", "1"); } } #endregion } #endregion } return(model); }