private void getUserInfo() { UserLoginBUS ulBus = new UserLoginBUS(); DepartmentBUS dBus = new DepartmentBUS(); RoleDetailBUS rdBus = new RoleDetailBUS(); int userId = int.Parse(Request.QueryString["uid"].ToString()); DataTable tblUserDetail = Common.GetUserLoginDetail(userId); DataTable tblSendRegisterDetailByUser = Common.GetSendRegisterByUserId(userId); DataTable tblCustomerCreated = Common.GetCustomerCreatedByUserId(userId); if (tblUserDetail.Rows.Count > 0) { int departId = int.Parse(tblUserDetail.Rows[0]["DepartmentId"].ToString()); DataTable tblRoleDetail = rdBus.GetByDepartmentId(departId); lblUsername.Text = tblUserDetail.Rows[0]["Username"].ToString(); lblDepartment.Text = tblUserDetail.Rows[0]["Name"].ToString(); if(tblRoleDetail.Rows.Count>0){ lblHasSend.Text = tblSendRegisterDetailByUser.Rows.Count + " / " + tblRoleDetail.Rows[0]["limitSendMail"].ToString(); lblHasCustomerCreate.Text = tblCustomerCreated.Rows.Count + " / " + tblRoleDetail.Rows[0]["limitCreateCustomer"].ToString(); lblToDate.Text = tblRoleDetail.Rows[0]["toDate"].ToString(); } } }
protected void lbtChangeAdvance_Click(object sender, EventArgs e) { try { RoleDetailBUS rdBus = new RoleDetailBUS(); PanelAdvance.Visible = false; int departmentId = int.Parse(hdfDepartmentId.Value); int limitSendMail = int.Parse(txtLimitMailSend.Text); string toDate = txtToDate.Text; int limitCreateCustomer = int.Parse(txtLimitCreateCustomer.Text); if (chkAdvance.Checked) { // Cap nhat voi hang ngach gui mail, tao khach hang. RoleDetailDTO rdDto = new RoleDetailDTO(); rdDto.roleId = -1; rdDto.departmentId = departmentId; rdDto.limitSendMail = limitSendMail; rdDto.limitCreateCustomer = limitCreateCustomer; rdDto.toDate = convertStringToDate(toDate); ConnectionData.OpenMyConnection(); int rsUpdate = rdBus.tblRoleDetail_Update(rdDto); ConnectionData.CloseMyConnection(); if (rsUpdate <= 0) { // Them voi hang ngach gui mail, tao khach hang. ConnectionData.OpenMyConnection(); rdBus.tblRoleDetail_insert(rdDto); ConnectionData.CloseMyConnection(); } // Reset thong tin so luong da gui mail cua tat ca user trong group. UserLoginBUS ulBus = new UserLoginBUS(); ConnectionData.OpenMyConnection(); ulBus.tblUserLogin_UpdateByDepartmentId(departmentId, 0); ConnectionData.CloseMyConnection(); } else { // Xóa phân quyền nâng cao. ConnectionData.OpenMyConnection(); rdBus.tblRoleDetail_Delete(-1, departmentId); ConnectionData.CloseMyConnection(); } PanelAdvanceSuccess.Visible = true; lblAdvanceSuccess.Text = "Cập nhập thành công !"; } catch (Exception) { PanelAdvanceSuccess.Visible = false; PanelAdvance.Visible = true; lblAdvanceError.Text = "Kiểm tra lại dữ liệu nhập !"; } }
public static Boolean checkRoleByRoleId(int roleId, int departmentId) { if (departmentId == 1)//administrator return true; RoleDetailBUS rdBus = new RoleDetailBUS(); DataTable tblRole = rdBus.GetByDepartmentIdAndRole(roleId, departmentId); if (tblRole.Rows.Count > 0) return true; return false; }
protected bool checkExistRole(int roleId, int departmentId) { rdBus = new RoleDetailBUS(); DataTable dtRoleDetail = rdBus.GetByDepartmentIdAndRole(roleId, departmentId); //check exists role in role_detail if (dtRoleDetail.Rows.Count > 0) { return true; } else { return false; } }
protected string checkCreateCustomer(int create) { string resultMessage = ""; // Kiem tra hang ngach cho phep tao khach hang. if (getUserLogin().UserType != 1) // Khong kiem tra voi tai khoan admin. { RoleDetailBUS rdBus = new RoleDetailBUS(); DataTable dtRoleDetail = rdBus.GetByDepartmentIdAndRole(-1, getUserLogin().DepartmentId); if (dtRoleDetail.Rows.Count > 0) { limitCreateCustomer = int.Parse(dtRoleDetail.Rows[0]["limitCreateCustomer"].ToString()); hasCreate = Common.countHasCreateMailByUserId(getUserLogin().UserId); if (hasCreate + create > limitCreateCustomer) { resultMessage = "Vượt quá hạng ngạch tạo khách hàng."; resultMessage += "<br/>- Đã tạo: " + hasCreate; resultMessage += "<br/>- Giới hạn: " + limitCreateCustomer; } } } return resultMessage; }
private string checkLimitSendMail() { string message = ""; if (getUserLogin().DepartmentId != 1) { RoleDetailBUS rdBus = new RoleDetailBUS(); DataTable register = new ClientRegisterBUS().GetByUserId(userLogin.UserId);//rdBus.GetByDepartmentIdAndRole(-1, getUserLogin().DepartmentId); if (userLogin.DepartmentId == 3) register = new ClientRegisterBUS().GetBySubUserId(userLogin.UserId); if (register.Rows.Count > 0) { int hasSendMail = getUserLogin().hasSendMail; int limitMailSend = int.Parse(register.Rows[0]["emailCount"].ToString()); DateTime limitToDate = DateTime.Parse(register.Rows[0]["to"].ToString()); int currentSend = int.Parse(hdfCountCustomer.Value); if (DateTime.Now >= limitToDate) { message = "Thời gian gửi mail của bạn đã hết hạn ngày " + limitToDate.ToShortDateString(); message += "<br/> Vui lòng liên hệ với administrator để gia hạn tiếp thời gian gửi !"; } else if (limitMailSend - hasSendMail < currentSend) { // Thông báo lỗi message = "Vượt quá hạng ngạch cho phép gửi, số lượng còn lại là: " + (limitMailSend - hasSendMail).ToString(); } } } return message; }
private void loadAdvanceRole() { rdBus = new RoleDetailBUS(); String departmentId = Request.QueryString["departmentId"]; // Kiểm tra user đang login có được cấp quyền nâng cao. DataTable dtAdvanceRoleWithAdmin = rdBus.GetByDepartmentIdAndRole(-1, getUserLogin().DepartmentId); if (dtAdvanceRoleWithAdmin.Rows.Count > 0) { // Hiển thị quyền nâng cao với user đang chọn. // tam edit PanelAdvanceRole.Visible = true; PanelAdvanceRole.Visible = false; DataTable dtAdvanceRole = rdBus.GetByDepartmentIdAndRole(-1, int.Parse(departmentId)); if (dtAdvanceRole.Rows.Count > 0) { chkAdvance.Checked = true; txtLimitMailSend.Text = dtAdvanceRole.Rows[0]["limitSendMail"].ToString(); txtLimitCreateCustomer.Text = dtAdvanceRole.Rows[0]["limitCreateCustomer"].ToString(); DateTime toDate = DateTime.Parse(dtAdvanceRole.Rows[0]["toDate"].ToString()); txtToDate.Text = toDate.Day + "/" + toDate.Month + "/" + toDate.Year; } } else { // Ẩn module phân quyền nâng cao. PanelAdvanceRole.Visible = false; } }
protected void loadBasicRole() { String departmentId = Request.QueryString["departmentId"]; dmBus = new DepartmentBUS(); rlBus = new RoleListBUS(); rdBus = new RoleDetailBUS(); DataTable tblDepartment = dmBus.GetByID(int.Parse(departmentId)); if (tblDepartment.Rows.Count > 0) { string info = tblDepartment.Rows[0]["Name"].ToString(); lblDepartmentName.Text = info; } //load role list DataTable dtRoleList = null; if (getUserLogin().DepartmentId == 1) { dtRoleList = rlBus.GetAll(); } else { // load role list by role admin level 2. dtRoleList = rlBus.GetRoleByDepartmentId(getUserLogin().DepartmentId); } // Lấy danh sách quyền của phòng ban được chọn. DataTable dtRoleDetail = rdBus.GetByDepartmentId(int.Parse(departmentId)); // Không hiển thị với phân quyền tạo phòng ban & tạo user với admin cấp 2 DataTable dtNewRoleList = dtRoleList.Clone(); foreach (DataRow row in dtRoleList.Rows) { // Không hiển thị chức năng cấp quyền tạo phòng ban & tạo user // Với user thuộc phòng ban tấp 2 if (getUserLogin().DepartmentId != 1 && (int.Parse(row["roleId"].ToString()) == 9 || int.Parse(row["roleId"].ToString()) == 22)) { continue; } else { dtNewRoleList.ImportRow(row); } } dlRoleList.DataSource = dtNewRoleList; dlRoleList.DataBind(); for (int i = 0; i < dtNewRoleList.Rows.Count; i++) { DataRow row = dtNewRoleList.Rows[i]; string roleId = row["roleId"].ToString(); HiddenField hdfRoleId = (HiddenField)dlRoleList.Items[i].FindControl("hdfRoleId"); hdfRoleId.Value = roleId; //selected role with department CheckBox chkCheck = (CheckBox)dlRoleList.Items[i].FindControl("chkCheck"); for (int j = 0; j < dtRoleDetail.Rows.Count; j++) { int rId = int.Parse(dtRoleDetail.Rows[j]["roleId"].ToString()); if (rId == int.Parse(roleId)) { chkCheck.Checked = true; break; } } Label lblRoleName = (Label)dlRoleList.Items[i].FindControl("lblRoleName"); lblRoleName.Text = row["roleName"] != null ? row["roleName"].ToString() : ""; if (int.Parse(roleId) >= 100) // Là những tùy chọn chức năng chính. { lblRoleName.ForeColor = Color.Red; } } hdfDepartmentId.Value = departmentId; }
protected void lbtChangeRole_Click(object sender, EventArgs e) { try { // Get role list by departmentId int departId = int.Parse(hdfDepartmentId.Value.ToString()); rdBus = new RoleDetailBUS(); DataTable dtOldRole = rdBus.GetByDepartmentId(departId); DataTable insertRole = new DataTable(); insertRole.Columns.Add("roleId", typeof(int)); //iterator to check new_role with old_role for (int i = 0; i < dlRoleList.Items.Count; i++) { CheckBox chkCheck = (CheckBox)dlRoleList.Items[i].FindControl("chkCheck"); HiddenField hdfRoleId = (HiddenField)dlRoleList.Items[i].FindControl("hdfRoleId"); if (chkCheck.Checked) { checkNewOldRole(dtOldRole, insertRole, int.Parse(hdfRoleId.Value)); } } //delete old role if (dtOldRole.Rows.Count > 0) { for (int j = 0; j < dtOldRole.Rows.Count; j++) { int roleId = int.Parse(dtOldRole.Rows[j]["roleId"].ToString()); ConnectionData.OpenMyConnection(); rdBus.tblRoleDetail_Delete(roleId, departId); ConnectionData.CloseMyConnection(); } } //insert new role if (insertRole.Rows.Count > 0) { for (int k = 0; k < insertRole.Rows.Count; k++) { int roleId = int.Parse(insertRole.Rows[k]["roleId"].ToString()); RoleDetailDTO rdDto = new RoleDetailDTO(); rdDto.roleId = roleId; rdDto.departmentId = departId; rdDto.limitSendMail = 0; // Set default value. rdDto.limitCreateCustomer = 0; // Set default value rdDto.toDate = DateTime.Now; // Set default value ConnectionData.OpenMyConnection(); rdBus.tblRoleDetail_insert(rdDto); ConnectionData.CloseMyConnection(); } } pnSuccess.Visible = true; pnError.Visible = false; lblSuccess.Text = "Đã thay đổi quyền thành công !"; } catch (Exception) { throw; } }