Пример #1
0
    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();
            }

        }
    }
Пример #2
0
    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 !";
        }
    }
Пример #3
0
 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;
 }
Пример #4
0
 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;
     }
 }
Пример #5
0
 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;
 }
Пример #6
0
 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;
 }
Пример #7
0
    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;
        }
    }
Пример #8
0
    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;
    }
Пример #9
0
    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;
        }
    }