コード例 #1
0
        public void GenerateFormsByDivision(string div)
        {
            var list = Employee.GetAll().Where(x => x.FilerType == Constants.FilerType._450_FILER && (x.Division.ToLower() == div.ToLower() || x.Division.ToLower().Contains(div.ToLower() + ",") || x.Division.ToLower().Contains(", " + div.ToLower()))).ToList();

            foreach (Employee emp in list)
            {
                try
                {
                    var form = OGEForm450.GetCurrentFormByUser(emp.AccountName);

                    if (form == null)
                    {
                        if (emp.ReportingStatus != Constants.ReportingStatus.NEW_ENTRANT)
                        {
                            emp.ReportingStatus = Constants.ReportingStatus.NEW_ENTRANT;
                            emp.Save();
                        }

                        Employee.GetEmployeeUserProfileInfo(emp);

                        form = OGEForm450.Create(emp);
                        form.ProcessEmails();
                    }
                }
                catch (Exception ex)
                {
                    HandleException(ex);
                }
            }
        }
コード例 #2
0
        private void CreateFormForEmployee(Employee emp, Settings settings)
        {
            try
            {
                Employee.GetEmployeeUserProfileInfo(emp);

                if (emp != null && !string.IsNullOrEmpty(emp.AccountName))
                {
                    var        previousForm = OGEForm450.GetPreviousFormByUser(emp.AccountName, settings);
                    OGEForm450 form;

                    if (previousForm == null)
                    {
                        form = OGEForm450.Create(emp);
                    }
                    else
                    {
                        form = OGEForm450.Create(emp, previousForm, settings);
                    }

                    form.ProcessEmails();
                }
            }
            catch (Exception ex)
            {
                HandleException(ex);
            }
        }
コード例 #3
0
        public IHttpActionResult Update(Employee item)
        {
            try
            {
                var identity = HttpContext.Current.User.Identity as ClaimsIdentity;
                OGE450User = UserInfo.GetUser(identity);

                if (OGE450User.IsAdmin)
                {
                    if (item.Inactive || item.EmployeeStatus == Constants.EmployeeStatus.INACTIVE)
                    {
                        item.Deactivate();
                    }

                    var oldItem = Employee.Get(item.Id);

                    oldItem.FilerType       = item.FilerType;
                    oldItem.AppointmentDate = item.AppointmentDate;
                    oldItem.ReportingStatus = item.ReportingStatus;
                    oldItem.GenerateForm    = item.GenerateForm;
                    oldItem.EmployeeStatus  = item.EmployeeStatus;
                    oldItem.Inactive        = item.Inactive || item.EmployeeStatus == Constants.EmployeeStatus.INACTIVE;
                    oldItem.InactiveDate    = item.InactiveDate;

                    var emp = oldItem.Save();

                    if (oldItem.GenerateForm && !oldItem.Inactive)
                    {
                        var form = OGEForm450.Create(item);

                        form.ProcessEmails();
                    }

                    return(Json(emp, CamelCase));
                }
                else
                {
                    return(Unauthorized());
                }
            }
            catch (Exception ex)
            {
                return(HandleException(ex));
            }
        }