public HttpResponseMessage GetSalaryTicketDetail([FromUri] SalaryTicketDetailModel detail) { try { IList <SalaryTicketDetail> listdetail = null; listdetail = salaryTicketDetailManager.GetSalaryTicketDetails(detail); if (listdetail == null) { return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "There are no ticket detail's name match the search value!!!")); } return(Request.CreateResponse(HttpStatusCode.OK, new { SalaryTicketDetailModel = listdetail })); } catch (Exception e) { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Error occured while executing GetSalaryTicketDetail:" + e.Message)); } }
public bool UpdateSalaryTicketDetail(SalaryTicketDetailModel salaryTicketDetail) { using (var ctx = new SalaryManagement_SWD391_ProjectEntities_SalaryTicketDetail()) { var checkExistingTicketDetail = ctx.SalaryTicketDetails.Where(c => c.SalaryTicketID == salaryTicketDetail.SalaryTicketID).FirstOrDefault <SalaryTicketDetail>(); if (checkExistingTicketDetail != null) { checkExistingTicketDetail.TaxID = salaryTicketDetail.TaxID; checkExistingTicketDetail.AllowanceID = salaryTicketDetail.AllowanceID; checkExistingTicketDetail.WorkingTimeID = salaryTicketDetail.WorkingTimeID; checkExistingTicketDetail.WageTier = (int)salaryTicketDetail.WageTier; checkExistingTicketDetail.BasicSalary = (double)salaryTicketDetail.BasicSalary; checkExistingTicketDetail.FinalSalary = (double)salaryTicketDetail.FinalSalary; ctx.SaveChanges(); return(true); } else { return(false); } } }
public HttpResponseMessage PutFinalSalary(SalaryTicketDetailModel salaryTicketDetail) { try { if (!ModelState.IsValid) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Invalid data!!!")); } bool check = salaryTicketDetailManager.CalculateFinalSalary(salaryTicketDetail); if (check) { return(Request.CreateResponse(HttpStatusCode.OK, "Ticket's detail updated!")); } else { return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Ticket's detail not found!!!")); } } catch (Exception e) { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, "Error occured while executing Put:" + e.Message)); } }
public IList <SalaryTicketDetail> GetSalaryTicketDetails(SalaryTicketDetailModel detail) { IList <SalaryTicketDetail> listdetail = null; using (var ctx = new SalaryManagement_SWD391_ProjectEntities_SalaryTicketDetail()) { if (detail != null) { listdetail = ctx.SalaryTicketDetails.Where(c => (c.SalaryTicketID.Contains(detail.SalaryTicketID) || detail.SalaryTicketID == null) && (c.AllowanceID.Contains(detail.AllowanceID) || detail.AllowanceID == null) && (c.TaxID.Contains(detail.TaxID) || detail.TaxID == null) && (c.WorkingTimeID.Contains(detail.WorkingTimeID) || detail.WorkingTimeID == null) && (c.WageTier == detail.WageTier || detail.WageTier == null) && (c.BasicSalary == detail.BasicSalary || detail.BasicSalary == null) && (c.FinalSalary == detail.FinalSalary || detail.FinalSalary == null) ).ToList <SalaryTicketDetail>(); } else { listdetail = ctx.SalaryTicketDetails.ToList <SalaryTicketDetail>(); } } return(listdetail); }
public bool CalculateFinalSalary(SalaryTicketDetailModel salaryTicketDetail) { double?taxcoefficient = 1, allowanceMoney = 1, wagecoefficient = 1, workedtime = 1, standardworkingdays = 1, basicsalary = 1, finalsalary = 1; string periodId = ""; using (var ctx = new SalaryManagement_SWD391_ProjectEntities_Tax()) { var tax = ctx.PersonalIncomeTaxes.Where(c => c.TaxID == salaryTicketDetail.TaxID).FirstOrDefault <PersonalIncomeTax>(); if (tax != null) { taxcoefficient = tax.Coefficient; } } using (var ctx = new SalaryManagement_SWD391_Project_Allowance_Entities()) { var allowance = ctx.Allowances.Where(c => c.AllowanceID == salaryTicketDetail.AllowanceID).FirstOrDefault <Allowance>(); if (allowance != null) { allowanceMoney = Double.Parse(allowance.AllowanceMoney); } } using (var ctx = new SalaryManagement_SWD391_ProjectEntities_Payroll()) { var payroll = ctx.Payrolls.Where(c => c.WageTier == salaryTicketDetail.WageTier).FirstOrDefault <Payroll>(); if (payroll != null) { wagecoefficient = payroll.Coefficient; } } using (var ctx = new SalaryManagement_SWD391_ProjectEntities_WorkingTime()) { var time = ctx.WorkingTimes.Where(c => c.WorkingTimeID == salaryTicketDetail.WorkingTimeID).FirstOrDefault <WorkingTime>(); if (time != null) { workedtime = time.WorkedTime; } } using (var ctx = new SalaryManagement_SWD391_ProjectEntities_SalaryTicket()) { var ticket = ctx.SalaryTickets.Where(c => c.SalaryTicketID == salaryTicketDetail.SalaryTicketID).FirstOrDefault <SalaryTicket>(); if (ticket != null) { periodId = ticket.PeriodID; } } using (var ctx = new SalaryManagement_SWD391_ProjectEntities_Period()) { var period = ctx.Periods.Where(c => c.PeriodID == periodId).FirstOrDefault <Period>(); if (period != null) { standardworkingdays = period.StandardWorkingDays; } } basicsalary = salaryTicketDetail.BasicSalary; finalsalary = ((basicsalary * wagecoefficient) * (workedtime / standardworkingdays)) - (basicsalary * taxcoefficient) + allowanceMoney; using (var ctx = new SalaryManagement_SWD391_ProjectEntities_SalaryTicketDetail()) { var checkExistingTicketDetail = ctx.SalaryTicketDetails.Where(c => c.SalaryTicketID == salaryTicketDetail.SalaryTicketID).FirstOrDefault <SalaryTicketDetail>(); if (checkExistingTicketDetail != null) { checkExistingTicketDetail.FinalSalary = finalsalary; ctx.SaveChanges(); return(true); } else { return(false); } } }