public IActionResult CreateEmployment(CreateEmploymentViewModel model) { if (ModelState.IsValid) { Employement Newemployment = new Employement { CompanyId = int.Parse(model.SelectedCompany), EmployeeId = int.Parse(model.SelectedStudent), StartDate = model.StartDate, EndDate = model.EndDate }; _manageEmployment.AddEmployment(Newemployment); Salary NewSalary = new Salary { Amount = model.Amount, Role = model.Role, PayDay = model.PayDay, EmployeeId = int.Parse(model.SelectedStudent) }; _manageEmployment.AddSalary(NewSalary); return(RedirectToAction("index", "home")); } return(View()); }
public async Task <IActionResult> PutEmployement(long id, Employement employement) { if (id != employement.OperationId) { return(BadRequest()); } _context.Entry(employement).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!EmployementExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public void Remove(Employement employment) { if (Context.Entry(employment).State == EntityState.Detached) { context.Employements.Attach(employment); } context.Employements.Remove(employment); }
public double GetProfileCount(int empId, int companyId, byte version) { // NeedToReview List <PersonProfileVM> list = new List <PersonProfileVM>(); List <string> IgnoreCols = new List <string>() { "TaxFamlyCnt", "BnftFamlyCnt" }; //People List <string> columns = context.FormsColumns.Where(f => f.Section.FieldSet.PageId == HrContext.GetPageId(companyId, "People", version) && f.isVisible && f.InputType != "button").Select(f => f.ColumnName).ToList(); Person peopleRecord = context.People.Where(e => e.Id == empId).FirstOrDefault(); PersonProfileVM countObj = peopleRecord != null?getCounts(columns, peopleRecord) : getCounts(columns, new Person()); list.Add(countObj); //HasImage list.Add(new PersonProfileVM { NofVisible = 1, NofData = peopleRecord.HasImage ? 1 : 0 }); //Additinal Info var flex = (from fc in context.FlexColumns where fc.PageId == HrContext.GetPageId(companyId, "People", version) && fc.isVisible join fd in context.FlexData on new { fc.PageId, fc.ColumnName } equals new { fd.PageId, fd.ColumnName } into g from fd in g.Where(b => b.SourceId == empId).DefaultIfEmpty() select new { fd.Value, fc.ColumnName }).ToList(); list.Add(new PersonProfileVM { NofVisible = flex.Count(), NofData = flex.Count(l => !String.IsNullOrEmpty(l.Value)) }); //Employments columns = context.FormsColumns.Where(f => f.Section.FieldSet.PageId == HrContext.GetPageId(companyId, "Emp", version) && f.isVisible && f.InputType != "button" && f.ColumnName != "Profession").Select(f => f.ColumnName).ToList(); Employement empRecord = context.Employements.Where(e => e.EmpId == empId && e.Status == 1).FirstOrDefault() ?? new Employement(); list.Add(getCounts(columns, empRecord)); //Assignments IgnoreCols = new List <string>() { "ManagerId", "EmpTasks", "IsDepManager", "PositionId", "IBranches", "IPayrollGrades", "IPositions", "ICompanyStuctures", "IEmployments", "IJobs", "IPayrolls", "IPeopleGroups" }; columns = context.FormsColumns.Where(f => f.Section.FieldSet.PageId == HrContext.GetPageId(companyId, "AssignmentsForm", version) && f.isVisible && !IgnoreCols.Contains(f.ColumnName) && f.InputType != "button").Select(f => f.ColumnName).ToList(); var today = DateTime.Today.Date; Assignment assignRecord = context.Assignments.Where(a => a.EmpId == empId && a.AssignDate <= today && a.EndDate >= today).FirstOrDefault() ?? new Assignment(); list.Add(getCounts(columns, assignRecord)); //--Calculations double value = Math.Round(list.Sum(l => l.NofData) / list.Sum(l => l.NofVisible), 2) * 100; return(value); }
public async Task <ActionResult <Employement> > PostEmployement(Employement employement) { _context.Employements.Add(employement); try { await _context.SaveChangesAsync(); } catch (DbUpdateException) { if (EmployementExists(employement.OperationId)) { return(Conflict()); } else { throw; } } return(CreatedAtAction("GetEmployement", new { id = employement.OperationId }, employement)); }
public DbEntityEntry <Employement> Entry(Employement Emp) { return(Context.Entry(Emp)); }
public void Attach(Employement Emp) { context.Employements.Attach(Emp); }
public void Add(Employement Emp) { context.Employements.Add(Emp); }
//ReadEmployments public string CheckCode(Employement Emp, string culture) { string error = "OK"; byte genCode = 2; bool codeReuse = false; var personnal = GetPersonSetup(Emp.CompanyId); if (personnal != null) { genCode = personnal.GenEmpCode; codeReuse = personnal.CodeReuse; } if (string.IsNullOrEmpty(Emp.Code)) { if (genCode == 3) { return(MsgUtils.Instance.Trls(culture, "NationalIdRequired")); // National/Resident Id is required, please first enter it } else { return(MsgUtils.Instance.Trls(culture, "CodeIsRequired")); // Code is required } } var isDuplicate = true; while (isDuplicate) { if (codeReuse) { isDuplicate = context.Employements.Where(a => a.CompanyId == Emp.CompanyId && a.Code == Emp.Code && a.Status == 1).FirstOrDefault() != null; } else { isDuplicate = context.Employements.Where(a => a.CompanyId == Emp.CompanyId && a.EmpId != Emp.EmpId && a.Code == Emp.Code).FirstOrDefault() != null; } if (isDuplicate == false && genCode == 1) { return(error); } else if (genCode == 3 && Emp.Code != null) { return(error); } else if (genCode == 2 && !isDuplicate) { return(error); } else { return(MsgUtils.Instance.Trls(culture, "CodeUsedBefore")); // Code is used before, please enter anothor code } } return(error); }