示例#1
0
        /// <summary>
        /// Sinh mã cán bộ dựa vào cấu hình hệ thống:
        /// -   Tiền tố của mã cán bộ
        /// -   Số lượng chữ số theo sau tiền tố
        /// </summary>
        /// <returns>Mã cán bộ mới được sinh ra</returns>
        private string GenerateEmployeeCode()
        {
            var departments     = string.Join(",", CurrentUser.Departments.Select(d => d.Id));
            var prefix          = SystemConfigController.GetValueByNameFollowDepartment(SystemConfigParameter.PREFIX, departments);
            var numberCharacter = SystemConfigController.GetValueByNameFollowDepartment(SystemConfigParameter.NUMBER_OF_CHARACTER, departments);

            if (string.IsNullOrEmpty(prefix))
            {
                prefix = "CB";
            }
            var number = string.IsNullOrEmpty(numberCharacter) ? 5 : int.Parse(numberCharacter);

            var record  = RecordController.GetByEmployeeCodeGenerate(prefix, number);
            var oldMaCb = _generateEmployeeConst;

            if (record != null && !string.IsNullOrEmpty(record.EmployeeCode))
            {
                oldMaCb = record.EmployeeCode;
            }
            var oldNumber = long.Parse("" + oldMaCb.Substring(prefix.Length));

            oldNumber++;
            var newMaCb = _generateEmployeeConst + oldNumber;

            newMaCb = prefix + newMaCb.Substring(newMaCb.Length - number);
            return(newMaCb);
        }
        public void GenerateRewardDecisionNumber()
        {
            var departments = string.Join(",", CurrentUser.Departments.Select(d => d.Id));
            var suffix      =
                SystemConfigController.GetValueByNameFollowDepartment(SystemConfigParameter.SUFFIX_SOHOPDONG,
                                                                      departments);

            if (string.IsNullOrEmpty(suffix))
            {
                suffix = "QĐ";
            }
            var decisioNumber = GenerateDecisionNumber(suffix);

            txtSoQuyetDinhHangLoat.Text = decisioNumber;
        }
示例#3
0
        public void GenerateSoQD()
        {
            var departments = string.Join(",", CurrentUser.Departments.Select(d => d.Id));
            var suffix      =
                SystemConfigController.GetValueByNameFollowDepartment(SystemConfigParameter.SUFFIX_SOHOPDONG,
                                                                      departments);

            if (string.IsNullOrEmpty(suffix))
            {
                suffix = SuffixDecision;
            }
            var contractNumber = GenerateContractNumber(suffix);

            txtHopDongSoHopDong.Text = contractNumber;
        }
示例#4
0
        private void sendEmailCreateAccount(UserInfo uInfo)
        {
            // send email to user
            //SystemController htController = new SystemController();
            object mailFrom =
                SystemConfigController.GetValueByNameFollowDepartment(SystemConfigParameter.EMAIL,
                                                                      string.Join(",", CurrentUser.Departments.Select(d => d.Id)));
            string from = mailFrom != null?mailFrom.ToString() : "";

            string mailPassword =
                SystemConfigController.GetValueByNameFollowDepartment(SystemConfigParameter.PASSWORD_EMAIL,
                                                                      string.Join(",", CurrentUser.Departments.Select(d => d.Id)));
            string fromEmailPassword = mailPassword != null ? mailPassword : "";

            if (from == "" || fromEmailPassword != "")
            {
                from = "*****@*****.**";
                fromEmailPassword = "******";
            }

            string mailName = "Đăng ký tài khoản";
            string subject  = "Đăng ký tài khoản";
            string content  = Util.GetInstance().ReadFile(Server.MapPath(
                                                              "../../Modules/MailTemplate/CreateAccount.vi-VN.html"));

            if (uInfo.DisplayName == null)
            {
                content = string.Format(content, uInfo.UserName, uInfo.UserName, uInfo.Password);
            }
            else
            {
                content = string.Format(content, uInfo.DisplayName, uInfo.UserName, uInfo.Password);
            }

            if (mailFrom != "" && mailPassword != "")
            {
                SoftCore.Utilities.Email.SendEmail(from, fromEmailPassword, mailName, uInfo.Email, subject, content);

                X.Msg.Alert("Cảnh báo", "Đã gửi mail đến người dùng!").Show();
            }

            // end send email to user
        }
示例#5
0
        /// <summary>
        /// Reset mật khẩu người dùng
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void mnuResetPassword_Click(object sender, DirectEventArgs e)
        {
            string userid     = "";
            string failUserId = "";

            try
            {
                string[]      ds         = hdfListUserID.Text.Split(',');
                List <string> userIdList = new List <string>();
                for (int i = 0; i < ds.Count(); i++)
                {
                    if (ds[i] != "")
                    {
                        userIdList.Add(ds[i]);
                    }
                }

                string mailContent = Util.GetInstance().ReadFile(Server.MapPath("EmailHTML/ResetPassword.htm"));
                string systemName  = SystemConfigController
                                     .GetValueByNameFollowDepartment(SystemConfigParameter.COMPANY_NAME, string.Join(",", CurrentUser.Departments.Select(d => d.Id)))
                                     .ToString();
                string systemEmail =
                    SystemConfigController.GetValueByNameFollowDepartment(SystemConfigParameter.EMAIL,
                                                                          string.Join(",", CurrentUser.Departments.Select(d => d.Id)));
                string systemPassword =
                    SystemConfigController.GetValueByNameFollowDepartment(SystemConfigParameter.PASSWORD_EMAIL,
                                                                          string.Join(",", CurrentUser.Departments.Select(d => d.Id)));
                foreach (var item in userIdList)
                {
                    string   password = Util.GetInstance().GetRandomString(7);
                    UserInfo u        = UsersController.GetInstance().GetUser(int.Parse(item));
                    if (Email.SendEmail(systemEmail, systemPassword, systemName, u.Email, "Thông báo mật khẩu mới",
                                        string.Format(mailContent, password, u.DisplayName)))
                    {
                        u.Password = password;
                        UsersController.GetInstance().UpdateUser(u);
                        userid += item + ", ";
                    }
                    else
                    {
                        failUserId += item + ", ";
                    }
                }

                if (!string.IsNullOrEmpty(failUserId))
                {
                    X.MessageBox.Alert("Thông báo", "Các mã tài khoản sau không đổi đổi được mật khẩu: " + failUserId)
                    .Show();
                }
                else
                {
                    X.MessageBox.Alert("Thông báo", "Đặt lại mật khẩu thành công").Show();
                }

                //var accessDiary = new AccessHistory
                //{
                //    Function = "Đặt lại mật khẩu",
                //    Description = "Đặt lại mật khẩu",
                //    IsError = false,
                //    UserName = CurrentUser.User.UserName,
                //    Time = DateTime.Now,
                //    BusinessCode = "Users",
                //    ComputerName = Util.GetInstance().GetComputerName(Request.UserHostAddress),
                //    ComputerIP = Request.UserHostAddress,
                //    Referent = "Các UserId bị reset mật khẩu : " + userid
                //};
                //AccessHistoryServices.Create(accessDiary);
            }
            catch (Exception ex)
            {
                //var accessDiary = new AccessHistory
                //{
                //    Function = "Đặt lại mật khẩu",
                //    Description = ex.Message.Replace("'", " "),
                //    IsError = true,
                //    UserName = CurrentUser.User.UserName,
                //    Time = DateTime.Now,
                //    BusinessCode = "Users",
                //    ComputerName = Util.GetInstance().GetComputerName(Request.UserHostAddress),
                //    ComputerIP = Request.UserHostAddress,
                //    Referent = "Các UserId bị reset mật khẩu : " + userid
                //};
                //AccessHistoryServices.Create(accessDiary);
            }
        }
示例#6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnUpdateHopDong_Click(object sender, DirectEventArgs e)
        {
            try
            {
                var contract   = new hr_Contract();
                var controller = new ContractController();
                var util       = new ConvertUtils();
                // upload file
                string path = string.Empty;
                if (fufHopDongTepTin.HasFile)
                {
                    // string directory = Server.MapPath("../");
                    path = UploadFile(fufHopDongTepTin, Constant.PathContract);
                }

                contract.RecordId = Convert.ToInt32(hdfPrKey.Text);
                if (!string.IsNullOrEmpty(hdfCbxJobId.Text))
                {
                    contract.JobId = Convert.ToInt32(hdfCbxJobId.Text);
                }
                if (!string.IsNullOrEmpty(hdfContractTypeId.Text))
                {
                    contract.ContractTypeId = Convert.ToInt32(hdfContractTypeId.Text);
                }
                if (!string.IsNullOrEmpty(hdfContractStatusId.Text))
                {
                    contract.ContractStatusId = Convert.ToInt32(hdfContractStatusId.Text);
                }
                if (!util.IsDateNull(dfHopDongNgayHopDong.SelectedDate))
                {
                    contract.ContractDate = dfHopDongNgayHopDong.SelectedDate;
                }
                if (!string.IsNullOrEmpty(hdfRecruitmentTypeId.Text))
                {
                    contract.RecruitmentTypeId = Convert.ToInt32(hdfRecruitmentTypeId.Text);
                }

                // sinh số hợp đồng
                string departments = string.Join(",", CurrentUser.Departments.Select(d => d.Id));
                string suffix      =
                    SystemConfigController.GetValueByNameFollowDepartment(SystemConfigParameter.SUFFIX_SOHOPDONG,
                                                                          departments);
                contract.ContractNumber = GenerateContractNumber(suffix);
                if (!string.IsNullOrEmpty(txtHopDongSoHopDong.Text))
                {
                    contract.ContractNumber = txtHopDongSoHopDong.Text;
                }

                if (!util.IsDateNull(dfHopDongNgayKiKet.SelectedDate))
                {
                    contract.ContractEndDate = dfHopDongNgayKiKet.SelectedDate;
                }
                if (!util.IsDateNull(dfNgayCoHieuLuc.SelectedDate))
                {
                    contract.EffectiveDate = dfNgayCoHieuLuc.SelectedDate;
                }
                contract.PersonRepresent = txt_NguoiKyHD.Text;
                if (!string.IsNullOrEmpty(hdfCbxPositionId.Text))
                {
                    contract.PersonPositionId = Convert.ToInt32(hdfCbxPositionId.Text);
                }
                contract.AttachFileName = path != "" ? path : hdfHopDongTepTinDK.Text;
                contract.Note           = txtHopDongGhiChu.Text;
                contract.CreatedBy      = CurrentUser.User.UserName;
                contract.CreatedDate    = DateTime.Now;
                if (e.ExtraParams["Command"] == "Update")
                {
                    contract.Id = int.Parse("0" + hdfRecordId.Text);
                    controller.Update(contract);
                    wdHopDong.Hide();
                }
                else
                {
                    // kiểm tra còn hợp đồng nào chưa hết hạn không
                    var checkContract =
                        controller.CheckContractBeforeInsert(Convert.ToInt32(hdfRecordId.Text), contract.EffectiveDate);
                    if (checkContract != null) // cán bộ còn ít nhất 1 hợp đồng có giá trị
                    {
                        ExtNet.Msg.Alert("Thông báo",
                                         "Hợp đồng hiện tại của cán bộ vẫn còn hiệu lực. Bạn không được phép thay đổi hợp đồng.")
                        .Show();
                        return;
                    }

                    controller.Insert(contract);

                    if (e.ExtraParams["Close"] == "True")
                    {
                        wdHopDong.Hide();
                    }
                    else
                    {
                        GenerateSoQD();
                    }
                }

                grpContract.Reload();
            }
            catch (Exception ex)
            {
                ExtNet.Msg.Alert("Thông báo từ hệ thống", "Có lỗi xảy ra: " + ex.Message).Show();
            }
        }