//SaveAdjustment public ActionResult SaveAdjustment(LeaveMoneyAdjustFormViewModel model, OptionsViewModel moreInfo) { var message = "OK"; if (model.NofDays > 0) { if (model.NofDays <= model.Balance) { var Absence = _hrUnitOfWork.Repository <LeaveType>().Where(a => a.Id == model.TypeId).Select(s => s.AbsenceType).FirstOrDefault(); var TransRecord = new LeaveTrans() { AbsenceType = Absence, CompanyId = CompanyId, CreatedUser = UserName, CreatedTime = DateTime.Now, TransFlag = -1, EmpId = model.EmpId, PeriodId = model.PeriodId, TypeId = model.TypeId, TransDate = DateTime.Now, TransType = 12, TransQty = model.NofDays }; _hrUnitOfWork.LeaveRepository.Add(TransRecord); var AdjustRecord = new LeaveAdjust() { NofDays = model.NofDays, EmpId = model.EmpId, PeriodId = model.PeriodId, CreatedUser = UserName, CreatedTime = DateTime.Now, TypeId = model.TypeId, AdjustDate = DateTime.Now, CompanyId = CompanyId, TransType = 12, PayDone = false }; _hrUnitOfWork.LeaveRepository.Add(AdjustRecord); } else { ModelState.AddModelError("", MsgUtils.Instance.Trls("NotEnoughBalance")); return(Json(Models.Utils.ParseFormErrors(ModelState))); } } else { ModelState.AddModelError("", MsgUtils.Instance.Trls("EnterNoOfDays")); return(Json(Models.Utils.ParseFormErrors(ModelState))); } var Errors = SaveChanges(Language); if (Errors.Count > 0) { message = Errors.First().errors.First().message; } return(Json(message)); }
public ActionResult SaveRestLeave(LeaveRestFormViewModel model) { var message = "OK"; int periodId = 0; var LeaveTypeRecord = _hrUnitOfWork.Repository <LeaveType>().Where(a => a.Id == model.TypeId).Select(s => new { Absence = s.AbsenceType, CalenderId = s.CalendarId }).FirstOrDefault(); var PeriodRecord = _hrUnitOfWork.Repository <Period>().Where(a => a.StartDate <= model.WorkingDate && a.EndDate >= model.WorkingDate && a.CalendarId == LeaveTypeRecord.CalenderId).FirstOrDefault(); if (PeriodRecord == null) { ModelState.AddModelError("", MsgUtils.Instance.Trls("Periodnotdefined")); return(Json(Models.Utils.ParseFormErrors(ModelState))); } else { periodId = PeriodRecord.Id; } foreach (var item in model.IEmpId) { var TransRecord = new LeaveTrans() { AbsenceType = LeaveTypeRecord.Absence, CompanyId = CompanyId, CreatedUser = UserName, CreatedTime = DateTime.Now, TransFlag = 1, EmpId = item, PeriodId = periodId, TypeId = model.TypeId, TransDate = DateTime.Now, TransType = 3, TransQty = model.NofDays }; _hrUnitOfWork.LeaveRepository.Add(TransRecord); var AdjustRecord = new LeaveAdjust() { NofDays = model.NofDays, EmpId = item, PeriodId = periodId, CreatedUser = UserName, CreatedTime = DateTime.Now, TypeId = model.TypeId, AdjustDate = DateTime.Now, CompanyId = CompanyId, TransType = 3, PayDone = false }; _hrUnitOfWork.LeaveRepository.Add(AdjustRecord); } var Errors = SaveChanges(Language); if (Errors.Count > 0) { message = Errors.First().errors.First().message; } return(Json(message)); }
public ActionResult DeleteRestBalance(int id) { DataSource <LeaveMoneyAdjustViewModel> Source = new DataSource <LeaveMoneyAdjustViewModel>(); List <Error> error = new List <Error>(); List <ErrorMessage> errorMessages = new List <ErrorMessage>(); List <Error> errors = new List <Error>(); LeaveAdjust obj = _hrUnitOfWork.LeaveRepository.GetLeaveAction(id); if (obj != null) { var status = _hrUnitOfWork.Repository <Period>().Where(a => a.Id == obj.PeriodId).Select(a => a.Status).FirstOrDefault(); if (status != 1) { ErrorMessage errormessa = new ErrorMessage() { message = MsgUtils.Instance.Trls("StatusIsClosed") }; errorMessages.Add(errormessa); Error err = new Error() { errors = errorMessages }; error.Add(err); Source.Errors = error; return(Json(Source)); } var Absence = _hrUnitOfWork.Repository <LeaveType>().Where(a => a.Id == obj.TypeId).Select(s => s.AbsenceType).FirstOrDefault(); AddLeaveTrans(obj, Absence, 14, -1); AutoMapper(new Models.AutoMapperParm { Source = obj, ObjectName = "LeaveAction", Transtype = TransType.Delete }); _hrUnitOfWork.LeaveRepository.Remove(obj); } string message = "OK"; if (errors.Count() > 0) { message = errors.First().errors.First().message; return(Json(message)); } errors = SaveChanges(Language); if (errors.Count() > 0) { message = errors.First().errors.First().message; } return(Json(message)); }
public void AddLeaveTrans(LeaveAdjust obj, short Absence, short TransType, short TransFlag) { var TransRecord = new LeaveTrans() { AbsenceType = Absence, CompanyId = CompanyId, CreatedUser = UserName, CreatedTime = DateTime.Now, TransFlag = TransFlag, EmpId = obj.EmpId, PeriodId = obj.PeriodId, TypeId = obj.TypeId, TransDate = DateTime.Now, TransType = TransType, TransQty = obj.NofDays }; _hrUnitOfWork.LeaveRepository.Add(TransRecord); }
public ActionResult DeleteLeaveaction(int id) { DataSource <LeaveActionViewModel> Source = new DataSource <LeaveActionViewModel>(); List <Error> error = new List <Error>(); List <ErrorMessage> errorMessages = new List <ErrorMessage>(); List <Error> errors = new List <Error>(); LeaveAdjust obj = _hrUnitOfWork.LeaveRepository.GetLeaveAction(id); //if (obj.Posted == false) //{ // ErrorMessage errormessa = new ErrorMessage() { message = "Change Posted Value to This Record Then Delete it" }; // errorMessages.Add(errormessa); // Error err = new Error() { errors = errorMessages }; // error.Add(err); // Source.Errors = error; // return Json(Source); //} if (obj != null) { AutoMapper(new Models.AutoMapperParm { Source = obj, ObjectName = "LeaveAction", Transtype = TransType.Delete }); _hrUnitOfWork.LeaveRepository.Remove(obj); } string message = "OK"; if (errors.Count() > 0) { message = errors.First().errors.First().message; return(Json(message)); } errors = SaveChanges(Language); if (errors.Count() > 0) { message = errors.First().errors.First().message; } return(Json(message)); }
public void AddActions(LeaveCreditAdjustFormViewModel model, short transType, short transFlag) { var Absence = _hrUnitOfWork.Repository <LeaveType>().Where(a => a.Id == model.TypeId).Select(s => s.AbsenceType).FirstOrDefault(); var TransRecord = new LeaveTrans() { AbsenceType = Absence, CompanyId = CompanyId, CreatedUser = UserName, CreatedTime = DateTime.Now, TransFlag = transFlag, EmpId = model.EmpId, PeriodId = model.PeriodId, TypeId = model.TypeId, TransDate = DateTime.Now, TransType = transType, TransQty = model.NofDays }; _hrUnitOfWork.LeaveRepository.Add(TransRecord); var AdjustRecord = new LeaveAdjust() { NofDays = model.NofDays, EmpId = model.EmpId, PeriodId = model.PeriodId, CreatedUser = UserName, CreatedTime = DateTime.Now, TypeId = model.TypeId, AdjustDate = DateTime.Now, CompanyId = CompanyId, TransType = transType, PayDone = false }; _hrUnitOfWork.LeaveRepository.Add(AdjustRecord); }
// Delete LeaveAdjust where Period Status is Open and Paydone in leave adjust equal false public ActionResult DeleteLeaveAdjust(int id) { DataSource <LeaveActionViewModel> Source = new DataSource <LeaveActionViewModel>(); List <Error> error = new List <Error>(); List <ErrorMessage> errorMessages = new List <ErrorMessage>(); List <Error> errors = new List <Error>(); LeaveAdjust obj = _hrUnitOfWork.LeaveRepository.GetLeaveAction(id); if (obj != null) { var status = _hrUnitOfWork.Repository <Period>().Where(a => a.Id == obj.PeriodId).Select(a => a.Status).FirstOrDefault(); if (obj.PayDone == true) { ErrorMessage errormessa = new ErrorMessage() { message = MsgUtils.Instance.Trls("PayDoneIsTrue") }; errorMessages.Add(errormessa); Error err = new Error() { errors = errorMessages }; error.Add(err); Source.Errors = error; return(Json(Source)); } if (status != 1) { ErrorMessage errormessa = new ErrorMessage() { message = MsgUtils.Instance.Trls("StatusIsClosed") }; errorMessages.Add(errormessa); Error err = new Error() { errors = errorMessages }; error.Add(err); Source.Errors = error; return(Json(Source)); } var Absence = _hrUnitOfWork.Repository <LeaveType>().Where(a => a.Id == obj.TypeId).Select(s => s.AbsenceType).FirstOrDefault(); var TransRecord = new LeaveTrans() { AbsenceType = Absence, CompanyId = CompanyId, CreatedUser = UserName, CreatedTime = DateTime.Now, TransFlag = 1, EmpId = obj.EmpId, PeriodId = obj.PeriodId, TypeId = obj.TypeId, TransDate = DateTime.Now, TransType = 24, TransQty = obj.NofDays }; _hrUnitOfWork.LeaveRepository.Add(TransRecord); AutoMapper(new Models.AutoMapperParm { Source = obj, ObjectName = "LeaveAction", Transtype = TransType.Delete }); _hrUnitOfWork.LeaveRepository.Remove(obj); } string message = "OK"; if (errors.Count() > 0) { message = errors.First().errors.First().message; return(Json(message)); } errors = SaveChanges(Language); if (errors.Count() > 0) { message = errors.First().errors.First().message; } return(Json(message)); }
public ActionResult GroupLeaveActionDetails(LeaveActionFormViewModel model, OptionsViewModel moreInfo, int[] grid1) { List <Error> errors = new List <Error>(); if (ModelState.IsValid) { if (ServerValidationEnabled) { errors = _hrUnitOfWork.SiteRepository.CheckForm(new CheckParm { CompanyId = CompanyId, ObjectName = "LeaveAction", TableName = "LeaveAdjusts", ParentColumn = "CompanyId", Columns = Models.Utils.GetColumnViews(ModelState.Where(a => !a.Key.Contains('.'))), Culture = Language }); if (errors.Count() > 0) { foreach (var e in errors) { foreach (var errorMsg in e.errors) { ModelState.AddModelError(errorMsg.field, errorMsg.message); } } return(Json(Models.Utils.ParseFormErrors(ModelState))); } } var message = "OK"; var Employee = _hrUnitOfWork.Repository <Assignment>().Where(a => grid1.Contains(a.DepartmentId)).Select(a => a.EmpId).ToList().Distinct(); if (Employee.Count() > 0) { foreach (var item in Employee) { var record = new LeaveAdjust(); AutoMapper(new Models.AutoMapperParm { Destination = record, Source = model, ObjectName = "LeaveAction", Options = moreInfo }); record.EmpId = item; record.CreatedUser = UserName; record.CreatedTime = DateTime.Now; record.AdjustDate = DateTime.Now; record.CompanyId = CompanyId; _hrUnitOfWork.LeaveRepository.Add(record); //_hrUnitOfWork.LeaveRepository.PostLeaveAction(record, UserName); } } else { message = MsgUtils.Instance.Trls("thereisnoEmployee"); } var Errors = SaveChanges(Language); if (Errors.Count > 0) { message = Errors.First().errors.First().message; } return(Json(message)); } return(Json(Models.Utils.ParseFormErrors(ModelState))); }
public ActionResult Details(LeaveActionFormViewModel model, OptionsViewModel moreInfo) { List <Error> errors = new List <Error>(); if (ModelState.IsValid) { if (ServerValidationEnabled) { errors = _hrUnitOfWork.SiteRepository.CheckForm(new CheckParm { CompanyId = CompanyId, ObjectName = "LeaveAction", TableName = "LeaveAdjusts", ParentColumn = "CompanyId", Columns = Models.Utils.GetColumnViews(ModelState.Where(a => !a.Key.Contains('.'))), Culture = Language }); if (errors.Count() > 0) { foreach (var e in errors) { foreach (var errorMsg in e.errors) { ModelState.AddModelError(errorMsg.field, errorMsg.message); } } return(Json(Models.Utils.ParseFormErrors(ModelState))); } } var record = _hrUnitOfWork.LeaveRepository.GetLeaveAction(model.Id); //insert if (record == null) { record = new LeaveAdjust(); AutoMapper(new Models.AutoMapperParm { Destination = record, Source = model, ObjectName = "LeaveAction", Options = moreInfo, Transtype = TransType.Insert }); record.CreatedUser = UserName; record.CreatedTime = DateTime.Now; record.AdjustDate = DateTime.Now; record.CompanyId = CompanyId; _hrUnitOfWork.LeaveRepository.Add(record); } //update else { AutoMapper(new Models.AutoMapperParm { Destination = record, Source = model, ObjectName = "LeaveAction", Options = moreInfo, Transtype = TransType.Update }); record.CompanyId = CompanyId; _hrUnitOfWork.LeaveRepository.Attach(record); _hrUnitOfWork.LeaveRepository.Entry(record).State = EntityState.Modified; } var Errors = SaveChanges(Language); var message = "OK"; if (Errors.Count > 0) { message = Errors.First().errors.First().message; } return(Json(message)); } return(Json(Models.Utils.ParseFormErrors(ModelState))); }