示例#1
0
        public async void GetAllUsers()
        {
            try
            {
                gridUser.DataBindings.Clear();
                SYS_tblUserDRO users = new SYS_tblUserDRO();
                users = await SYS_tblUserBUS.GetAllUsers(CommonEngine.userInfo.UserID, CommonEngine.userInfo.LanguageID, new SYS_tblActionLogDTO
                {
                    Activity      = BaseConstant.COMMAND_INSERT_EN,
                    UserID        = CommonEngine.userInfo.UserID,
                    LanguageID    = ConfigEngine.Language,
                    ActionEN      = BaseConstant.COMMAND_LOAD_ALL_DATA_EN,
                    ActionVN      = BaseConstant.COMMAND_LOAD_ALL_DATA_VI,
                    FunctionID    = "10",
                    DescriptionVN = string.Format("Tài khoản '{0}' vừa tải thành công dữ liệu người dùng.", CommonEngine.userInfo.UserID),
                    DescriptionEN = string.Format("Account '{0}' downloaded successfully data of users.", CommonEngine.userInfo.UserID)
                });

                if (!CommonEngine.CheckValidResponseItem(users.ResponseItem))
                {
                    return;
                }
                gridUser.DataSource = users.UserList;
                barBottom.Visible   = (users != null && users.UserList.Count > 0) ? true : false;
                CommonEngine.LoadUserPermission("10", btnDelete, btnPrint, btnImport, btnExport);
            }
            catch (Exception ex)
            {
                CommonEngine.ShowExceptionMessage(ex);
            }
        }
示例#2
0
        public async static Task <SYS_tblUserDRO> GetAllUsers(string username, string language_id, SYS_tblActionLogDTO actionLog)
        {
            SYS_tblUserDRO result = new SYS_tblUserDRO();

            try
            {
                string url = string.Format("{0}/GetAllUsers?Username={1}&LanguageID={2}", GetBaseUrl(), username, language_id);

                result = await SYS_tblUserDAO.GetAllUsers(url);

                if (string.IsNullOrEmpty(result.ResponseItem.Message))
                {
                    if (actionLog != null)
                    {
                        result.ResponseItem = await SYS_tblActionLogBUS.InsertUpdateLog(actionLog);
                    }
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                result.ResponseItem.Message = ex.Message;
            }

            return(result);
        }
示例#3
0
        public async static Task <SYS_tblUserDRO> GetUserItem(string url)
        {
            SYS_tblUserDRO result = new SYS_tblUserDRO();

            try
            {
                var response_data = await HttpGet(url);

                if (response_data.ToLower().StartsWith("error"))
                {
                    result.ResponseItem.IsError = true;
                    string[] tmp = response_data.Split('|');
                    result.ResponseItem.ErrorCode    = tmp[1];
                    result.ResponseItem.ErrorMessage = tmp[2];
                }
                else
                {
                    var response_collection = JsonConvert.DeserializeObject <SYS_tblUserDRO>(response_data + "");

                    if (response_collection != null)
                    {
                        result.UserItem = response_collection.UserItem;
                    }
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                result.ResponseItem.Message = ex.Message;
            }

            return(result);
        }
示例#4
0
        private async Task <bool> CheckLogin()
        {
            if (string.IsNullOrEmpty(txtUsername.Text))
            {
                CommonEngine.ShowMessage(LanguageEngine.GetMessageCaption("000011", ConfigEngine.Language), MessageType.Error);
                txtUsername.Focus();
                return(false);
            }
            if (string.IsNullOrEmpty(txtPassword.Text))
            {
                CommonEngine.ShowMessage(LanguageEngine.GetMessageCaption("000011", ConfigEngine.Language), MessageType.Error);
                txtPassword.Focus();
                return(false);
            }
            try
            {
                SYS_tblUserDRO user = await UserBUS.CheckLogin(txtUsername.Text.Trim(), EncryptEngine.Encrypt(txtPassword.Text.Trim()), ConfigEngine.Language);

                if (CommonEngine.CheckValidResponseItem(user.ResponseItem))
                {
                    if (user.UserItem != null)
                    {
                        CommonEngine.userInfo = user.UserItem;
                        string temp = user.UserItem.Username.Substring(user.UserItem.Username.IndexOf("|") + 1);
                        user.UserItem.Username      = user.UserItem.Username.Replace("|" + temp, "");
                        CommonEngine.SystemDateTime = Convert.ToDateTime(temp);

                        if (user.UserItem.Locked)
                        {
                            CommonEngine.ShowMessage(LanguageEngine.GetMessageCaption("000010", ConfigEngine.Language).Replace("$UserName$", user.UserItem.Username), MessageType.Error);
                            txtUsername.Focus();
                            return(false);
                        }
                    }
                    else
                    {
                        CommonEngine.ShowMessage(LanguageEngine.GetMessageCaption("000009", ConfigEngine.Language), MessageType.Error);
                        txtUsername.Focus();
                        return(false);
                    }
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                CommonEngine.ShowExceptionMessage(ex);
                txtUsername.Focus();
                return(false);
            }

            return(true);
        }
示例#5
0
        public async static Task <SYS_tblUserDRO> InsertUpdateUser(SYS_tblUserDTO item, SYS_tblActionLogDTO actionLog)
        {
            SYS_tblUserDRO result = new SYS_tblUserDRO();

            try
            {
                string url      = string.Format(@"{0}/InsertUpdateUser", GetBaseUrl());
                var    postData = new SYS_tblUserDCO
                {
                    Username           = item.Username,
                    Password           = item.Password,
                    GroupID            = item.GroupID,
                    GroupName          = item.GroupName,
                    EffectiveDate      = item.EffectiveDate,
                    ToDate             = item.ToDate,
                    DateChangePass     = item.DateChangePass,
                    Locked             = item.Locked,
                    LockDate           = item.LockDate,
                    UnlockDate         = item.UnlockDate,
                    PassNeverExpired   = item.PassNeverExpired,
                    ChangePassNextTime = item.ChangePassNextTime,
                    EmpID                = item.EmpID,
                    FullName             = item.FullName,
                    Email                = item.EmpID,
                    Note                 = item.Note,
                    CanNotChangePassword = item.CanNotChangePassword,
                    Activity             = item.Activity,
                    UserID               = item.UserID,
                    LanguageID           = item.LanguageID
                };
                var json_data = "{\"user\":" + JsonConvert.SerializeObject(postData, new JsonSerializerSettings
                {
                    DateFormatHandling = DateFormatHandling.MicrosoftDateFormat
                }) + "}";

                result = await SYS_tblUserDAO.InsertUpdateUser(url, json_data);

                if (string.IsNullOrEmpty(result.ResponseItem.Message))
                {
                    result.ResponseItem = await SYS_tblActionLogBUS.InsertUpdateLog(actionLog);
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                result.ResponseItem.Message = ex.Message;
            }

            return(result);
        }
示例#6
0
        public async static Task <SYS_tblUserDRO> CheckLogin(string username, string password, string language_id)
        {
            SYS_tblUserDRO result = new SYS_tblUserDRO();

            try
            {
                string url = string.Format("{0}/CheckLogin?Username={1}&Password={2}&LanguageID={3}", GetBaseUrl(), username, password, language_id);

                result = await SYS_tblUserDAO.CheckLogin(url);
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                result.ResponseItem.Message = ex.Message;
            }

            return(result);
        }
示例#7
0
        public async static Task <SYS_tblUserDRO> GetUserItem(string username, string language_id, string userid)
        {
            SYS_tblUserDRO result = new SYS_tblUserDRO();

            try
            {
                string url = string.Format("{0}/GetUserByID?Username={1}&LanguageID={2}&UsernameOther={3}", GetBaseUrl(), username, language_id, userid);

                result = await SYS_tblUserDAO.GetUserItem(url);
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                result.ResponseItem.Message = ex.Message;
            }

            return(result);
        }
示例#8
0
        private async void btnSave_Click(object sender, EventArgs e)
        {
            if (CheckValidate())
            {
                CommonEngine.ShowWaitForm(this);
                SYS_tblUserDRO result = new SYS_tblUserDRO();
                try
                {
                    result = await SYS_tblUserBUS.ChangeUserPassword(txtUsername.Text, ConfigEngine.Language, EncryptEngine.Encrypt(txtNewPassword.Text), new DTO.Systems.SYS_tblActionLogDTO
                    {
                        Activity       = BaseConstant.COMMAND_INSERT_EN,
                        UserID         = txtUsername.Text,
                        LanguageID     = ConfigEngine.Language,
                        ActionVN       = "Đổi Mật Khẩu",
                        ActionEN       = "Change Password",
                        FunctionID     = "",
                        FunctionNameVN = "Đổi Mật Khẩu",
                        FunctionNameEN = "Change Password",
                        DescriptionVN  = string.Format("Tài khoản '{0}' vừa đổi mật khẩu thành công vào lúc {1}.", txtUsername.Text, DateTime.Now),
                        DescriptionEN  = string.Format("Account '{0}' has change password successfully at {1}.", txtUsername.Text, DateTime.Now)
                    });

                    CommonEngine.CloseWaitForm();
                    if (string.IsNullOrEmpty(result.ResponseItem.Message))
                    {
                        CommonEngine.userInfo.Password = EncryptEngine.Encrypt(txtNewPassword.Text);
                        txtOldPassword.EditValue       = txtNewPassword.EditValue = txtConfirmPassword.EditValue = null;
                        depError.ClearErrors();
                        CommonEngine.ShowMessage(ConfigEngine.Language.Equals("vi") ? "Đổi mật khẩu người dùng thành công." : "Change user password successfully.", MessageType.Success);
                        this.ParentForm.Close();
                    }
                    else
                    {
                        CommonEngine.ShowMessage(result.ResponseItem.Message, 0);
                        txtOldPassword.Focus();
                    }
                }
                catch (Exception ex)
                {
                    CommonEngine.ShowExceptionMessage(ex);
                    txtOldPassword.Focus();
                }
            }
        }
示例#9
0
        private async void btnUpdate_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (curItem.Count > 0)
            {
                this.Cursor = Cursors.WaitCursor;
                SYS_tblUserDRO item = await SYS_tblUserBUS.GetUserItem(CommonEngine.userInfo.UserID, ConfigEngine.Language, curItem[0].Username);

                if (!CommonEngine.CheckValidResponseItem(item.ResponseItem))
                {
                    return;
                }

                this.Cursor = Cursors.Default;

                if (item != null && item.UserItem != null)
                {
                    CommonEngine.OpenInputForm(new uc_UserDetail(this, item.UserItem), new Size(455, 460), true);
                }
            }
        }
示例#10
0
        private async void LoadAllGroupUser()
        {
            trlUser.ClearNodes();
            try
            {
                this.Cursor = Cursors.WaitCursor;
                trlUser.BeginUnboundLoad();
                SYS_tblGroupUserDRO groupUser = await SYS_tblGroupUserBUS.GetAllGroupUsers(CommonEngine.userInfo.UserID, ConfigEngine.Language, false, null);

                if (!CommonEngine.CheckValidResponseItem(groupUser.ResponseItem))
                {
                    return;
                }
                groupList = groupUser.GroupUserList;
                SYS_tblUserDRO users = await SYS_tblUserBUS.GetAllUsers(CommonEngine.userInfo.UserID, ConfigEngine.Language, null);

                if (!CommonEngine.CheckValidResponseItem(users.ResponseItem))
                {
                    return;
                }
                userList = users.UserList;
                foreach (var item in groupUser.GroupUserList)
                {
                    groupNode                  = trlUser.AppendNode(new object[] { string.Format(@"{0} - {1}", item.GroupCode, item.GroupName), item.GroupID }, -1);
                    groupNode.ImageIndex       = 0;
                    groupNode.SelectImageIndex = 0;
                    LoadAllUser(groupNode, item.GroupID, users.UserList);
                }
                trlUser.EndUnboundLoad();
                trlUser.ExpandAll();
            }
            catch (Exception ex)
            {
                CommonEngine.ShowExceptionMessage(ex);
            }
            finally
            {
                this.Cursor = Cursors.Default;
            }
        }
示例#11
0
        public async static Task <SYS_tblUserDRO> DeleteUser(string user_code_list, string username, string language_id, SYS_tblActionLogDTO actionLog)
        {
            SYS_tblUserDRO result = new SYS_tblUserDRO();

            try
            {
                string url = string.Format(@"{0}/DeleteUser?Username={1}&LanguageID={2}&UserCodeList={3}", GetBaseUrl(), username, language_id, user_code_list);

                result = await SYS_tblUserDAO.DeleteUser(url);

                if (string.IsNullOrEmpty(result.ResponseItem.Message))
                {
                    result.ResponseItem = await SYS_tblActionLogBUS.InsertUpdateLog(actionLog);
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                result.ResponseItem.Message = ex.Message;
            }

            return(result);
        }
示例#12
0
        public async static Task <SYS_tblUserDRO> ChangeUserPassword(string username, string language_id, string password, SYS_tblActionLogDTO actionLog)
        {
            SYS_tblUserDRO result = new SYS_tblUserDRO();

            try
            {
                string url = string.Format(@"{0}/ChangeUserPassword?Username={1}&LanguageID={2}&Password={3}", GetBaseUrl(), username, language_id, password);

                result = await SYS_tblUserDAO.ChangeUserPassword(url);

                if (string.IsNullOrEmpty(result.ResponseItem.Message))
                {
                    result.ResponseItem = await SYS_tblActionLogBUS.InsertUpdateLog(actionLog);
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex);
                result.ResponseItem.Message = ex.Message;
            }

            return(result);
        }
示例#13
0
        public SYS_tblUserDRO ChangeUserPassword(string Username, string LanguageID, string Password)
        {
            SYS_tblUserDRO result = new SYS_tblUserDRO();
            try
            {
                using (var scope = Container.BeginLifetimeScope())
                {
                    string temp = "";
                    var db = scope.Resolve<ISYS_tblUserDAO>();
                    temp = db.ChangeUserPassword(Username, LanguageID, Password);

                    result.ResponseItem = new DCO.ResponseItem
                    {
                        Result = string.IsNullOrEmpty(temp) ? true : false,
                        Status = string.IsNullOrEmpty(temp) ? DCO.ResponseStatus.Success : DCO.ResponseStatus.Failure,
                        Message = string.IsNullOrEmpty(temp) ? string.Empty : temp,
                        RequestUser = Username,
                        TotalItemCount = string.IsNullOrEmpty(temp) ? 1 : 0
                    };
                }
            }
            catch (Exception ex)
            {
                result.ResponseItem = new DCO.ResponseItem
                {
                    Result = false,
                    Status = DCO.ResponseStatus.Exception,
                    Message = "Change user password failed because: " + ex.Message,
                    RequestUser = Username,
                    TotalItemCount = 0
                };
                logger.Error(ex);
            }

            return result;
        }
示例#14
0
        private async Task <bool> SaveUser(bool isEdit)
        {
            CommonEngine.ShowWaitForm(this);
            SYS_tblUserDRO result = new SYS_tblUserDRO();

            try
            {
                result = await SYS_tblUserBUS.InsertUpdateUser(new SYS_tblUserDTO
                {
                    Username             = txtUsername.Text,
                    Password             = EncryptEngine.Encrypt(txtPassword.Text.Trim()),
                    GroupID              = gluGroupUser.EditValue + "",
                    EmpID                = chkIsEmployee.Checked ? gluEmployee.EditValue + "" : "",
                    FullName             = txtFullName.Text,
                    EffectiveDate        = dteEffectiveDate.DateTime,
                    ToDate               = dteToDate.EditValue == null ? (DateTime?)null : dteToDate.DateTime,
                    Locked               = chkLocked.Checked,
                    LockDate             = (chkLocked.Checked && dteLockDate.EditValue != null) ? dteLockDate.DateTime : (DateTime?)null,
                    UnlockDate           = (chkLocked.Checked && dteUnlockDate.EditValue != null) ? dteUnlockDate.DateTime : (DateTime?)null,
                    CanNotChangePassword = chkCanNotChangePassword.Checked,
                    ChangePassNextTime   = chkChangePassNextTime.Checked,
                    PassNeverExpired     = chkPasswordNeverExpired.Checked,
                    Email                = txtEmail.Text,
                    Note       = mmoNote.Text,
                    Activity   = (isEdit) ? BaseConstant.UPDATE_COMMAND : BaseConstant.INSERT_COMMAND,
                    UserID     = CommonEngine.userInfo.UserID,
                    LanguageID = ConfigEngine.Language
                }, new SYS_tblActionLogDTO
                {
                    Activity      = BaseConstant.COMMAND_INSERT_EN,
                    UserID        = txtUsername.Text,
                    LanguageID    = ConfigEngine.Language,
                    ActionEN      = BaseConstant.COMMAND_UPDATE_EN,
                    ActionVN      = BaseConstant.COMMAND_UPDATE_VI,
                    FunctionID    = "10",
                    DescriptionVN = string.Format("Tài khoản '{0}' vừa cập nhật thành công người dùng có tên tài khoản '{1}'.", CommonEngine.userInfo.UserID, txtUsername.Text.Trim()),
                    DescriptionEN = string.Format("Account '{0}' has updated user successfully with username is '{1}'.", CommonEngine.userInfo.UserID, txtUsername.Text.Trim())
                });

                if (CommonEngine.CheckValidResponseItem(result.ResponseItem))
                {
                    if (!string.IsNullOrEmpty(result.ResponseItem.Message))
                    {
                        CommonEngine.CloseWaitForm();
                        CommonEngine.ShowMessage(result.ResponseItem.Message, 0);
                        txtUsername.Focus();
                        return(false);
                    }
                    else
                    {
                        parent_form.GetAllUsers();
                    }
                }
                else
                {
                    CommonEngine.CloseWaitForm();
                    return(false);
                }
            }
            catch (Exception ex)
            {
                CommonEngine.ShowExceptionMessage(ex);
                return(false);
            }
            finally
            {
                CommonEngine.CloseWaitForm();
            }

            return(true);
        }
示例#15
0
        public SYS_tblUserDRO DeleteUser(string Username, string LanguageID, string UserCodeList)
        {
            SYS_tblUserDRO result = new SYS_tblUserDRO();
            try
            {
                using (var scope = Container.BeginLifetimeScope())
                {
                    string temp = "";
                    var db = scope.Resolve<ISYS_tblUserDAO>();
                    if (UserCodeList.Contains("$"))
                        temp = db.DeleteUserList(UserCodeList, Username, LanguageID);
                    else temp = db.DeleteUser(UserCodeList, Username, LanguageID);

                    result.ResponseItem = new DCO.ResponseItem
                    {
                        Result = string.IsNullOrEmpty(temp) ? true : false,
                        Status = string.IsNullOrEmpty(temp) ? DCO.ResponseStatus.Success : DCO.ResponseStatus.Failure,
                        Message = string.IsNullOrEmpty(temp) ? string.Empty : temp,
                        RequestUser = Username,
                        TotalItemCount = string.IsNullOrEmpty(temp) ? 1 : 0
                    };
                }
            }
            catch (Exception ex)
            {
                result.ResponseItem = new DCO.ResponseItem
                {
                    Result = false,
                    Status = DCO.ResponseStatus.Exception,
                    Message = "Delete user failed because: " + ex.Message,
                    RequestUser = Username,
                    TotalItemCount = 0
                };
                logger.Error(ex);
            }

            return result;
        }
示例#16
0
        public SYS_tblUserDRO InsertUpdateUser(SYS_tblUserDCO user)
        {
            SYS_tblUserDRO result = new SYS_tblUserDRO();
            try
            {
                using (var scope = Container.BeginLifetimeScope())
                {
                    string temp = "";
                    var db = scope.Resolve<ISYS_tblUserDAO>();
                    var data = Mapper.Map<SYS_tblUserDTO>(user);
                    if (user.Activity.Equals(BaseConstant.COMMAND_INSERT_EN))
                        temp = db.InsertUser(data);
                    else temp = db.UpdateUser(data);

                    result.ResponseItem = new DCO.ResponseItem
                    {
                        Result = string.IsNullOrEmpty(temp) ? true : false,
                        Status = string.IsNullOrEmpty(temp) ? DCO.ResponseStatus.Success : DCO.ResponseStatus.Failure,
                        Message = temp,
                        RequestUser = user.UserID,
                        TotalItemCount = string.IsNullOrEmpty(temp) ? 1 : 0
                    };
                }
            }
            catch (Exception ex)
            {
                result.ResponseItem = new DCO.ResponseItem
                {
                    Result = false,
                    Status = DCO.ResponseStatus.Exception,
                    Message = "Insert new user failed because: " + ex.Message,
                    RequestUser = user.UserID,
                    TotalItemCount = 0
                };
                logger.Error(ex);
            }

            return result;
        }
示例#17
0
        public SYS_tblUserDRO GetUserByID(string Username, string LanguageID, string UsernameOther)
        {
            SYS_tblUserDRO result = new SYS_tblUserDRO();
            try
            {
                using (var scope = Container.BeginLifetimeScope())
                {
                    SYS_tblUserDTO temp = new SYS_tblUserDTO();
                    var db = scope.Resolve<ISYS_tblUserDAO>();
                    temp = db.GetDataByID(UsernameOther, Username, LanguageID);
                    if (temp != null)
                    {
                        result.UserItem = Mapper.Map<SYS_tblUserDCO>(temp);
                        result.ResponseItem = new DCO.ResponseItem
                        {
                            Result = true,
                            Status = DCO.ResponseStatus.Success,
                            Message = "",
                            RequestUser = Username,
                            TotalItemCount = 1
                        };
                    }
                }
            }
            catch (Exception ex)
            {
                result.UserItem = Mapper.Map<SYS_tblUserDCO>(new SYS_tblUserDTO());
                result.ResponseItem = new DCO.ResponseItem
                {
                    Result = false,
                    Status = DCO.ResponseStatus.Exception,
                    Message = "Get data failed: " + ex.Message,
                    RequestUser = Username,
                    TotalItemCount = 0
                };
                logger.Error(ex);
            }

            return result;
        }
示例#18
0
        public SYS_tblUserDRO GetAllUsers(string Username, string LanguageID)
        {
            SYS_tblUserDRO result = new SYS_tblUserDRO();
            try
            {
                using (var scope = Container.BeginLifetimeScope())
                {
                    List<SYS_tblUserDTO> temp = new List<SYS_tblUserDTO>();
                    var db = scope.Resolve<ISYS_tblUserDAO>();
                    temp = db.LoadAllData(Username, LanguageID);
                    if (temp != null)
                    {
                        result.UserList = Mapper.Map<List<SYS_tblUserDCO>>(temp);
                        result.ResponseItem = new DCO.ResponseItem
                        {
                            Result = true,
                            Status = DCO.ResponseStatus.Success,
                            Message = "",
                            RequestUser = Username,
                            TotalItemCount = temp.Count
                        };
                    }
                }
            }
            catch (Exception ex)
            {
                result.UserList = Mapper.Map<List<SYS_tblUserDCO>>(new List<SYS_tblUserDTO>());
                result.ResponseItem = new DCO.ResponseItem
                {
                    Result = false,
                    Status = DCO.ResponseStatus.Exception,
                    Message = "Load user list failed: " + ex.Message,
                    TotalItemCount = 0
                };
                logger.Error(ex);
            }

            return result;
        }
示例#19
0
        private async Task DeleteUser()
        {
            user_code_list = "";
            foreach (int index in grvUser.GetSelectedRows())
            {
                user_code_list = string.Join("$", user_code_list, grvUser.GetRowCellDisplayText(index, gcolUsername));
            }

            if (user_code_list.Length > 0)
            {
                user_code_list = user_code_list.Substring(1);
            }

            SYS_tblUserDRO result = new SYS_tblUserDRO();

            result.ResponseItem.Message = "ready";
            if (!string.IsNullOrEmpty(user_code_list))
            {
                try
                {
                    if (user_code_list.Contains("$"))
                    {
                        if (CommonEngine.ShowConfirmMessageAlert(LanguageEngine.GetMessageCaption("000012", ConfigEngine.Language).Replace("$Count$", user_code_list.Split('$').Length.ToString())))
                        {
                            CommonEngine.ShowWaitForm(this.ParentForm);
                            result = await SYS_tblUserBUS.DeleteUser(user_code_list, CommonEngine.userInfo.Username, ConfigEngine.Language, new SYS_tblActionLogDTO
                            {
                                Activity      = BaseConstant.COMMAND_INSERT_EN,
                                UserID        = CommonEngine.userInfo.UserID,
                                LanguageID    = ConfigEngine.Language,
                                ActionVN      = BaseConstant.COMMAND_DELETE_VI,
                                ActionEN      = BaseConstant.COMMAND_DELETE_EN,
                                FunctionID    = "10",
                                DescriptionVN = string.Format("Tài khoản '{0}' vừa xóa thành công người dùng có các tên tài khoản '{1}'.", CommonEngine.userInfo.UserID, user_code_list.Replace("$", ", ")),
                                DescriptionEN = string.Format("Account '{0}' has deleted user successfully with username are '{1}'.", CommonEngine.userInfo.UserID, user_code_list.Replace("$", ", "))
                            });
                        }
                    }
                    else
                    {
                        if (CommonEngine.ShowConfirmMessageAlert(LanguageEngine.GetMessageCaption("000005", ConfigEngine.Language)))
                        {
                            CommonEngine.ShowWaitForm(this.ParentForm);
                            result = await SYS_tblUserBUS.DeleteUser(user_code_list, CommonEngine.userInfo.Username, ConfigEngine.Language, new SYS_tblActionLogDTO
                            {
                                Activity      = BaseConstant.COMMAND_INSERT_EN,
                                UserID        = CommonEngine.userInfo.UserID,
                                LanguageID    = ConfigEngine.Language,
                                ActionVN      = BaseConstant.COMMAND_DELETE_VI,
                                ActionEN      = BaseConstant.COMMAND_DELETE_EN,
                                FunctionID    = "10",
                                DescriptionVN = string.Format("Tài khoản '{0}' vừa xóa thành công người dùng có tên tài khoản '{1}'.", CommonEngine.userInfo.UserID, user_code_list),
                                DescriptionEN = string.Format("Account '{0}' has deleted user successfully with username is '{1}'.", CommonEngine.userInfo.UserID, user_code_list)
                            });
                        }
                    }

                    if (!CommonEngine.CheckValidResponseItem(result.ResponseItem))
                    {
                        return;
                    }
                    if (!result.ResponseItem.Message.Equals("ready"))
                    {
                        if (string.IsNullOrEmpty(result.ResponseItem.Message))
                        {
                            GetAllUsers();
                        }
                        else
                        {
                            CommonEngine.ShowMessage(result.ResponseItem.Message, 0);
                        }
                    }
                }
                catch (Exception ex)
                {
                    CommonEngine.ShowExceptionMessage(ex);
                }
                finally
                {
                    CommonEngine.CloseWaitForm();
                }
            }
            else
            {
                CommonEngine.ShowMessage("000027", IMC.Helper.MessageType.Warning, true);
            }
        }