protected void btnSaveClose_Click(object sender, EventArgs e)
        {
            //PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
            int eeID = GetQueryIntValue("id");

            Infobasis.Data.DataEntity.User user = DB.Users
                                                  .Where(u => u.ID == eeID).FirstOrDefault();
            if (user == null)
            {
                // 参数错误,首先弹出Alert对话框然后关闭弹出窗口
                Alert.Show("参数错误!", String.Empty, ActiveWindow.GetHideReference());
                return;
            }

            int    newHireStatus  = Change.ToInt(DropDownChangeHireStatus.SelectedValue);
            string adjustItemName = "";

            if (user.HireStatus.HasValue && user.HireStatus.Value != newHireStatus)
            {
                user.HireStatus = newHireStatus;
                if (!string.IsNullOrEmpty(tbxRemark.Text))
                {
                    user.Remark = user.Remark + "," + tbxRemark.Text;
                }

                if (newHireStatus == 0)
                {
                    adjustItemName = "再入职";
                }
                else if (newHireStatus == 1)
                {
                    adjustItemName = "离职";
                }

                EmployeeAdjust eeAdjust = new EmployeeAdjust()
                {
                    UserID         = user.ID,
                    AdjustItemName = adjustItemName,
                    AdjustDate     = DateTime.Now,
                    AllChangeData  = user.ToString(),
                    isAdjusted     = true,
                    CreateByID     = UserInfo.Current.ID,
                    CreateByName   = UserInfo.Current.ChineseName,
                    CreateDatetime = DateTime.Now
                };

                DB.EmployeeAdjusts.Add(eeAdjust);
            }

            SaveChanges();
            ShowNotify("修改成功");
            //PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
            PageContext.RegisterStartupScript("refreshTopWindow();" + ActiveWindow.GetHideRefreshReference());
        }
Esempio n. 2
0
        protected void btnBank_Click(object sender, EventArgs e)
        {
            int id = GetQueryIntValue("id");

            Infobasis.Data.DataEntity.EmployeeBank eeBank = DB.EmployeeBanks.Where(u => u.UserID == id).FirstOrDefault();
            bool createNew = false;

            if (eeBank != null)
            {
                eeBank.LastUpdateDatetime = DateTime.Now;
                eeBank.LastUpdateByID     = UserInfo.Current.ID;
                eeBank.LastUpdateByName   = UserInfo.Current.ChineseName;
            }
            else
            {
                eeBank = new EmployeeBank();
                eeBank.CreateDatetime = DateTime.Now;
                eeBank.CreateByID     = UserInfo.Current.ID;
                eeBank.CreateByName   = UserInfo.Current.ChineseName;
                eeBank.Default        = true;

                createNew = true;
            }

            eeBank.UserID        = id;
            eeBank.BankName      = tbxBankName.Text.Trim();
            eeBank.AccountHolder = tbxBankUserName.Text.Trim();
            eeBank.BankAccount   = tbxBankAccount.Text.Trim();
            eeBank.Remark        = tbxBankRemark.Text;

            EmployeeAdjust eeAdjust = new EmployeeAdjust()
            {
                UserID         = id,
                AdjustItemName = "银行账号",
                AdjustDate     = DateTime.Now,
                AllChangeData  = eeBank.ToString(),
                isAdjusted     = true,
                CreateByID     = UserInfo.Current.ID,
                CreateByName   = UserInfo.Current.ChineseName,
                CreateDatetime = DateTime.Now
            };

            DB.EmployeeAdjusts.Add(eeAdjust);

            if (createNew)
            {
                DB.EmployeeBanks.Add(eeBank);
            }

            SaveChanges();

            ShowNotify("保存成功!");
        }
Esempio n. 3
0
        protected void btnFixPay_Click(object sender, EventArgs e)
        {
            int id = GetQueryIntValue("id");

            Infobasis.Data.DataEntity.EmployeeFixPay fixPay = DB.EmployeeFixPays.Where(u => u.UserID == id).FirstOrDefault();
            bool createNew = false;

            if (fixPay != null)
            {
                fixPay.LastUpdateDatetime = DateTime.Now;
                fixPay.LastUpdateByID     = UserInfo.Current.ID;
                fixPay.LastUpdateByName   = UserInfo.Current.ChineseName;
            }
            else
            {
                fixPay = new EmployeeFixPay();
                fixPay.CreateDatetime = DateTime.Now;
                fixPay.CreateByID     = UserInfo.Current.ID;
                fixPay.CreateByName   = UserInfo.Current.ChineseName;
                createNew             = true;
            }

            fixPay.UserID = id;
            fixPay.ProbationFixPayValue  = Change.ToDecimal(tbxProbationFixPayValue.Text);
            fixPay.FixPayValue           = Change.ToDecimal(tbxFixPayValue.Text);
            fixPay.JobAllowanceValue     = Change.ToDecimal(tbxJobAllowanceValue.Text);
            fixPay.TrafficAllowanceValue = Change.ToDecimal(tbxTrafficAllowanceValue.Text);
            fixPay.DiningAllowanceValue  = Change.ToDecimal(tbxDiningAllowanceValue.Text);

            EmployeeAdjust eeAdjust = new EmployeeAdjust()
            {
                UserID         = id,
                AdjustItemName = "固定薪酬",
                AdjustDate     = DateTime.Now,
                AllChangeData  = fixPay.ToString(),
                isAdjusted     = true,
                CreateByID     = UserInfo.Current.ID,
                CreateByName   = UserInfo.Current.ChineseName,
                CreateDatetime = DateTime.Now
            };

            DB.EmployeeAdjusts.Add(eeAdjust);

            if (createNew)
            {
                DB.EmployeeFixPays.Add(fixPay);
            }

            SaveChanges();

            ShowNotify("保存成功!");
        }
        protected void btnEducation_Click(object sender, EventArgs e)
        {
            int    id        = GetQueryIntValue("id");
            int    uid       = GetQueryIntValue("uid");
            string activeTab = GetQueryValue("activeTab");

            Infobasis.Data.DataEntity.EmployeeEducation eeEd = DB.EmployeeEducations.Where(u => u.ID == id).FirstOrDefault();
            bool createNew = false;

            if (eeEd != null)
            {
                eeEd.LastUpdateDatetime = DateTime.Now;
                eeEd.LastUpdateByID     = UserInfo.Current.ID;
                eeEd.LastUpdateByName   = UserInfo.Current.ChineseName;
            }
            else
            {
                eeEd = new EmployeeEducation();
                eeEd.CreateDatetime = DateTime.Now;
                eeEd.CreateByID     = UserInfo.Current.ID;
                eeEd.CreateByName   = UserInfo.Current.ChineseName;

                createNew = true;
            }

            eeEd.UserID = uid;
            eeEd.EducationalInstitution = tbxEducationalInstitution.Text;
            eeEd.Major             = tbxMajor.Text;
            eeEd.Education         = Change.ToInt(DropDownEducation.SelectedValue);
            eeEd.EducationName     = DropDownEducation.SelectedText;
            eeEd.EducationType     = Change.ToInt(DropDownEducationType.SelectedValue);
            eeEd.EducationTypeName = DropDownEducationType.SelectedText;
            eeEd.AcademicDegree    = tbxAcademicDegree.Text;

            DateTime startDate = Change.ToDateTime(tbxStartDate.Text);
            DateTime endDate   = Change.ToDateTime(tbxEndDate.Text);

            if (startDate != DateTime.MinValue)
            {
                eeEd.StartDate = Change.ToDateTime(tbxStartDate.Text);
            }
            if (endDate != DateTime.MinValue)
            {
                eeEd.EndDate = Change.ToDateTime(tbxEndDate.Text);
            }

            eeEd.IsHighest = cbxIsHighest.Checked;
            eeEd.Remark    = tbxRemark.Text;

            EmployeeAdjust eeAdjust = new EmployeeAdjust()
            {
                UserID         = uid,
                AdjustItemName = "教育培训经历",
                AdjustDate     = DateTime.Now,
                AllChangeData  = eeEd.ToString(),
                isAdjusted     = true,
                CreateByID     = UserInfo.Current.ID,
                CreateByName   = UserInfo.Current.ChineseName,
                CreateDatetime = DateTime.Now
            };

            DB.EmployeeAdjusts.Add(eeAdjust);

            if (createNew)
            {
                DB.EmployeeEducations.Add(eeEd);
            }

            SaveChanges();

            ShowNotify("保存成功!");
            PageContext.RegisterStartupScript("refreshTopWindow();");
        }
Esempio n. 5
0
        protected void btnEmployeement_Click(object sender, EventArgs e)
        {
            int    id        = GetQueryIntValue("id");
            int    uid       = GetQueryIntValue("uid");
            string activeTab = GetQueryValue("activeTab");

            Infobasis.Data.DataEntity.EmployeeContract eeEd = DB.EmployeeContracts.Where(u => u.ID == id).FirstOrDefault();
            bool createNew = false;

            if (eeEd != null)
            {
                eeEd.LastUpdateDatetime = DateTime.Now;
                eeEd.LastUpdateByID     = UserInfo.Current.ID;
                eeEd.LastUpdateByName   = UserInfo.Current.ChineseName;
            }
            else
            {
                eeEd = new EmployeeContract();
                eeEd.CreateDatetime = DateTime.Now;
                eeEd.CreateByID     = UserInfo.Current.ID;
                eeEd.CreateByName   = UserInfo.Current.ChineseName;

                createNew = true;
            }

            eeEd.UserID       = uid;
            eeEd.ContractCode = tbxContractNo.Text;
            eeEd.JobTitle     = tbxJobTitle.Text;

            DateTime startDate = Change.ToDateTime(tbxStartDate.Text);
            DateTime endDate   = Change.ToDateTime(tbxEndDate.Text);

            if (startDate != DateTime.MinValue)
            {
                eeEd.ContractStartDate = Change.ToDateTime(tbxStartDate.Text);
            }
            if (endDate != DateTime.MinValue)
            {
                eeEd.ContractEndDate = Change.ToDateTime(tbxEndDate.Text);
            }

            eeEd.Remark = tbxRemark.Text;

            EmployeeAdjust eeAdjust = new EmployeeAdjust()
            {
                UserID         = uid,
                AdjustItemName = "合同管理",
                AdjustDate     = DateTime.Now,
                AllChangeData  = eeEd.ToString(),
                isAdjusted     = true,
                CreateByID     = UserInfo.Current.ID,
                CreateByName   = UserInfo.Current.ChineseName,
                CreateDatetime = DateTime.Now
            };

            DB.EmployeeAdjusts.Add(eeAdjust);

            if (createNew)
            {
                DB.EmployeeContracts.Add(eeEd);
            }

            SaveChanges();

            ShowNotify("保存成功!");
            PageContext.RegisterStartupScript("refreshTopWindow();");
        }
Esempio n. 6
0
        private void SaveItem()
        {
            int id = GetQueryIntValue("id");
            List <EmployeeAdjustItem> adjustItems = new List <EmployeeAdjustItem>();
            int companyID = UserInfo.Current.CompanyID;

            Infobasis.Data.DataEntity.User item = null;
            if (id == 0)
            {
                item = new Infobasis.Data.DataEntity.User();
                if (string.IsNullOrEmpty(tbxUserName.Text))
                {
                    item.Name = tbxTel.Text.Trim();
                }

                if (string.IsNullOrEmpty(tbxPassWord.Text))
                {
                    item.Password = PasswordUtil.CreateDbPassword(tbxPassWord.Text.Trim());
                }
                item.CreateDatetime = DateTime.Now;
                item.HireStatus     = 0;

                adjustItems.Add(EmployeeAdjustItem.Create);
            }
            else
            {
                item = DB.Users.Include("UserPermissionRoles").Where(u => u.ID == id).FirstOrDefault();
                item.LastUpdateByID     = UserInfo.Current.ID;
                item.LastUpdateByName   = UserInfo.Current.ChineseName;
                item.LastUpdateDatetime = DateTime.Now;

                if (item.EmploymentType != (ddlEmploymentType.SelectedValue != null ? Change.ToInt(ddlEmploymentType.SelectedValue) : 1))
                {
                    adjustItems.Add(EmployeeAdjustItem.EmploymentType);
                }

                if (Change.ValueIsChanged(item.ReportsTo, Change.ToInt(tbxReportToID.Text)))
                {
                    adjustItems.Add(EmployeeAdjustItem.ReportsTo);
                }

                if (Change.ValueIsChanged(item.JobID, Change.ToInt(ddbTitles.Value)))
                {
                    adjustItems.Add(EmployeeAdjustItem.Job);
                }

                if (Change.ValueIsChanged(item.DepartmentID, Change.ToInt(ddbDept.Value)))
                {
                    adjustItems.Add(EmployeeAdjustItem.Department);
                }

                if (item.OnBoardDate != Change.ToDateTime(tbxOnBoardDate.Text))
                {
                    adjustItems.Add(EmployeeAdjustItem.OnBoard);
                }
            }

            item.ChineseName       = tbxName.Text.Trim();
            item.EmployeeSpellCode = ChinesePinyin.GetFirstPinyin(tbxName.Text.Trim());
            item.EnglishName       = ChinesePinyin.GetPinyin(tbxName.Text.Trim());
            item.EmployeeCode      = tbxEmployeeNum.Text.Trim();
            item.Email             = tbxEmail.Text.Trim();
            item.Remark            = tbxRemark.Text.Trim();
            item.Enabled           = true;
            item.CompanyID         = companyID;
            item.UserType          = UserType.Employee;
            item.Gender            = ddlGender.SelectedValue;
            item.DateOfBirth       = Change.ToDateTime(dpBirthDay.Text);

            item.EmployeeCode   = tbxEmployeeNum.Text.Trim();
            item.EmploymentType = ddlEmploymentType.SelectedValue != null?Change.ToInt(ddlEmploymentType.SelectedValue) : 1;

            item.MaritalStatus = ddlMarriage.SelectedValue;
            item.Ethnic        = ddlNation.SelectedValue;
            item.OnBoardDate   = Change.ToDateTime(tbxOnBoardDate.Text);

            if (tbxBecomeRegularDate.Text != null)
            {
                item.BecomeRegularDate = Change.ToDateTime(tbxBecomeRegularDate.Text);
            }

            if (tbxReportToID.Text != null && Change.ToInt(tbxReportToID.Text) > 0)
            {
                item.ReportsTo = Change.ToInt(tbxReportToID.Text);
            }

            item.IDType       = ddlCertificates.SelectedValue;
            item.IDNumber     = tbxIDCardEdit.Text;
            item.Education    = ddlEducation.Text;
            item.NativePlace  = ddlNativePlace.SelectedValue;
            item.MailAddress  = tbxNativePlace.Text;
            item.MobileNumber = tbxTel.Text.Trim();

            // 添加角色
            int[] newEntityIDs = ddbRoles.Values != null?ddbRoles.Values.Select(r => Convert.ToInt32(r)).ToArray() : new int[1];

            if (item.UserPermissionRoles == null)
            {
                item.UserPermissionRoles = new List <UserPermissionRole>();
            }

            ICollection <UserPermissionRole> existEntities = DB.UserPermissionRoles.Where(up => up.UserID == item.ID).ToList();

            int[] tobeAdded   = newEntityIDs.Except(existEntities.Select(x => x.PermissionRoleID)).ToArray();
            int[] tobeRemoved = existEntities.Select(x => x.PermissionRoleID).Except(newEntityIDs).ToArray();

            foreach (int pid in tobeAdded)
            {
                UserPermissionRole newEntity = new UserPermissionRole()
                {
                    CompanyID        = companyID,
                    UserID           = item.ID,
                    PermissionRoleID = pid,
                    CreateDatetime   = DateTime.Now
                };
                //moduleRoleRepository.Insert(newEntity, out msg, false);
                item.UserPermissionRoles.Add(newEntity);
            }

            foreach (int pid in tobeRemoved)
            {
                var removeEntity = DB.UserPermissionRoles.Find(pid);
                item.UserPermissionRoles.Remove(removeEntity);
            }

            if (tobeAdded.Length > 0 || tobeRemoved.Length > 0)
            {
                adjustItems.Add(EmployeeAdjustItem.UserPermissionRole);
            }

            // 添加所有部门
            if (ddbDept.Value != null && Change.ToInt(ddbDept.Value) > 0)
            {
                item.DepartmentID = Change.ToInt(ddbDept.Value);
            }

            // 添加所有职称
            if (ddbTitles.Values != null && Change.ToInt(ddbTitles.Value) > 0)
            {
                item.JobID = Change.ToInt(ddbTitles.Value);
            }

            if (id == 0)
            {
                DB.Users.Add(item);
            }

            string adjustItemNames = "";

            if (adjustItems.Count == 0)
            {
                adjustItems.Add(EmployeeAdjustItem.Others);
            }

            foreach (var adjustItem in adjustItems)
            {
                adjustItemNames += ", " + EnumHelper.GetDescription(adjustItem);
            }

            EmployeeAdjust eeAdjust = new EmployeeAdjust()
            {
                UserID         = item.ID,
                AdjustItemName = adjustItemNames,
                AdjustDate     = DateTime.Now,
                AllChangeData  = item.ToString(),
                isAdjusted     = true,
                CreateByID     = UserInfo.Current.ID,
                CreateByName   = UserInfo.Current.ChineseName,
                CreateDatetime = DateTime.Now
            };

            DB.EmployeeAdjusts.Add(eeAdjust);

            SaveChanges();
        }