public void Add(DailyLeave dailyLeave) { if (IsExist(dailyLeave)) { var existingObject = GetByID(dailyLeave.ID); FillEntity(existingObject, dailyLeave); } else { _RASContext.DailyLeaves.Add(dailyLeave); } }
public void FillEntity(DailyLeave dailyLeave, DailyLeave entity) { dailyLeave.ID = entity.ID; dailyLeave.ProjectID = entity.ProjectID; dailyLeave.SuccessorID = entity.SuccessorID; dailyLeave.Type = entity.Type; dailyLeave.OrganisationId = entity.OrganisationId; dailyLeave.RegisterDate = entity.RegisterDate; dailyLeave.From = entity.From; dailyLeave.To = entity.To; dailyLeave.WorkflowStageID = entity.WorkflowStageID; dailyLeave.UserID = entity.UserID; }
public IActionResult SaveDailyLeave(DailyLeave dailyLeave) { try { if (dailyLeave == null) { throw new Exception("اطلاعات مرخصی ارسال نشده است"); } if (string.IsNullOrEmpty(dailyLeave.PersianDateFrom)) { throw new Exception("تاریخ شروع ارسال نشده است"); } if (string.IsNullOrEmpty(dailyLeave.PersianDateTo)) { throw new Exception("تاریخ پایان ارسال نشده است"); } var currentUser = new UserHelper().GetCurrent(this._uow, this.UserName); DailyLeaveManager dlm = new DailyLeaveManager(this._uow); ProjectManager pm = new ProjectManager(this._uow); UserManager um = new UserManager(this._uow); dailyLeave.UserID = currentUser.ID; dailyLeave.OrganisationId = currentUser.OrganizationUnitID; if (dailyLeave.ProjectID == Guid.Empty) { dailyLeave.ProjectID = null; } if (dailyLeave.SuccessorID == Guid.Empty) { dailyLeave.SuccessorID = null; } if (dailyLeave.ID == Guid.Empty) { dlm.Add(dailyLeave); } else { dlm.Edit(dailyLeave); } return(Ok(true)); } catch (Exception ex) { return(this.ReturnError(ex, "خطا در ذخیره مرخصی روزانه")); } }
// GET: DailyLeaves/Details/5 public ActionResult Details(Guid id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } DailyLeaveManager dlm = new DailyLeaveManager(UOW); DailyLeave dailyLeave = dlm.GetByID(id); if (dailyLeave == null) { return(HttpNotFound()); } return(View(new DailyLeaveAssembles().ToJson(dailyLeave))); }
// GET: DailyLeaves/Details/5 public ActionResult Details(Guid id) { if (id == Guid.Empty) { return(this.StatusCode(statusCode: (int)System.Net.HttpStatusCode.BadRequest, "آی دی مرخصی ارسال نشده است")); } DailyLeaveManager dlm = new DailyLeaveManager(UOW); DailyLeave dailyLeave = dlm.GetByID(id); if (dailyLeave == null) { return(this.StatusCode(statusCode: (int)System.Net.HttpStatusCode.NotFound, "مرخصی با آی دی ارسال شده یافت نشد")); } return(View(new DailyLeaveAssembles().ToJson(dailyLeave))); }
public ActionResult Edit(DailyLeave dailyLeave) { DailyLeaveManager dlm = new DailyLeaveManager(UOW); ProjectManager pm = new ProjectManager(UOW); UserManager um = new UserManager(UOW); if (ModelState.IsValid) { dlm.Edit(dailyLeave); return(RedirectToAction("Index")); } ViewBag.ProjectID = new SelectList(pm.GetByUser(this.CurrentUser), "ID", "Title"); ViewBag.SuccessorID = new SelectList(um.GetAll(), "ID", "UserTitle"); return(View(dailyLeave)); }
public DailyLeaveJson ToJson(DailyLeave dailyLeave) { DailyLeaveJson result = new DailyLeaveJson(); result.ID = dailyLeave.ID; result.RejisterDate = DateUtility.GetPersianDate(dailyLeave.RegisterDate); result.From = DateUtility.GetPersianDate(dailyLeave.From); result.TO = DateUtility.GetPersianDate(dailyLeave.To); result.Organisation = dailyLeave.OrganisationId != null? dailyLeave.Organisation.Title : "فاقد واحد سازمانی"; result.PersonnelNumber = dailyLeave.User.Code != null ? dailyLeave.User.Code : "فاقد کد پرسنلی"; result.ProjectTitle = dailyLeave.Project != null? dailyLeave.Project.Title:"فاقد پروژه"; result.Type = Enum.IsDefined(dailyLeave.Type) ? dailyLeave.Type.GetDisplayName() :"فاقد نوع"; result.Successor = dailyLeave.Successor != null?dailyLeave.Successor.UserTitle.ToString() : "فاقد جانشین"; result.UserTitle = dailyLeave.User.UserTitle; return(result); }
public ActionResult Edit([Bind(Include = "ID,From,To,SuccessorID,ProjectID,Type")] DailyLeave dailyLeave) { DailyLeaveManager dlm = new DailyLeaveManager(UOW); ProjectManager pm = new ProjectManager(UOW); UserManager um = new UserManager(UOW); var currentUser = new UserHelper().GetCurrent(); if (ModelState.IsValid) { dlm.Edit(dailyLeave); return(RedirectToAction("Index")); } ViewBag.ProjectID = new SelectList(pm.GetByUser(currentUser), "ID", "Title"); ViewBag.SuccessorID = new SelectList(um.GetAll(), "ID", "UserTitle"); return(View(dailyLeave)); }
// POST: DailyLeaves/Approve/5 public ActionResult Deny(Guid id) { DailyLeaveManager dlm = new DailyLeaveManager(UOW); ProjectManager pm = new ProjectManager(UOW); UserManager um = new UserManager(UOW); var currentUser = new UserHelper().GetCurrent(); if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } DailyLeave dailyLeave = dlm.GetByID(id); if (dailyLeave == null) { return(HttpNotFound()); } return(View(new DailyLeaveAssembles().ToJson(dailyLeave))); }
// GET: DailyLeaves/Edit/5 public ActionResult Edit(Guid id) { DailyLeaveManager dlm = new DailyLeaveManager(UOW); ProjectManager pm = new ProjectManager(UOW); UserManager um = new UserManager(UOW); if (id == Guid.Empty) { return(this.StatusCode(statusCode: (int)System.Net.HttpStatusCode.BadRequest, "آی دی مرخصی ارسال نشده است")); } DailyLeave dailyLeave = dlm.GetByID(id); if (dailyLeave == null) { return(this.StatusCode(statusCode: (int)System.Net.HttpStatusCode.NotFound, "مرخصی با آی دی ارسال شده یافت نشد")); } ViewBag.ProjectID = new SelectList(pm.GetByUser(this.CurrentUser), "ID", "Title"); ViewBag.SuccessorID = new SelectList(um.GetAll(), "ID", "UserTitle"); return(View(dailyLeave)); }
public ActionResult Create(DailyLeave dailyLeave) { DailyLeaveManager dlm = new DailyLeaveManager(UOW); ProjectManager pm = new ProjectManager(UOW); UserManager um = new UserManager(UOW); dailyLeave.UserID = this.CurrentUser.ID; dailyLeave.OrganisationId = this.CurrentUser.OrganizationUnitID; if (ModelState.IsValid) { dlm.Add(dailyLeave); return(RedirectToAction("Index")); } ViewBag.ProjectID = new SelectList(pm.GetByUser(this.CurrentUser), "ID", "Title"); ViewBag.SuccessorID = new SelectList(um.GetAll(), "ID", "UserTitle"); return(View(dailyLeave)); }
public ActionResult Create([Bind(Include = "ID,From,To,PersianDateFrom,PersianDateTo,SuccessorID,ProjectID,Type")] DailyLeave dailyLeave) { DailyLeaveManager dlm = new DailyLeaveManager(UOW); ProjectManager pm = new ProjectManager(UOW); UserManager um = new UserManager(UOW); var currentUser = new UserHelper().GetCurrent(); dailyLeave.UserID = currentUser.ID; dailyLeave.OrganisationId = currentUser.OrganizationUnitID; if (ModelState.IsValid) { dlm.Add(dailyLeave); return(RedirectToAction("Index")); } ViewBag.ProjectID = new SelectList(pm.GetByUser(currentUser), "ID", "Title"); ViewBag.SuccessorID = new SelectList(um.GetAll(), "ID", "UserTitle"); return(View(dailyLeave)); }
// GET: DailyLeaves/Edit/5 public ActionResult Edit(Guid id) { DailyLeaveManager dlm = new DailyLeaveManager(UOW); ProjectManager pm = new ProjectManager(UOW); UserManager um = new UserManager(UOW); var currentUser = new UserHelper().GetCurrent(); if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } DailyLeave dailyLeave = dlm.GetByID(id); if (dailyLeave == null) { return(HttpNotFound()); } ViewBag.ProjectID = new SelectList(pm.GetByUser(currentUser), "ID", "Title"); ViewBag.SuccessorID = new SelectList(um.GetAll(), "ID", "UserTitle"); return(View(dailyLeave)); }
public bool IsExist(DailyLeave dailyLeave) { return(_RASContext.DailyLeaves.Any(x => x.ID == dailyLeave.ID)); }
public void Edit(DailyLeave dailyLeave) { var editdailyLeave = GetByID(dailyLeave.ID); FillEntity(editdailyLeave, dailyLeave); }
public void Delete(DailyLeave dailyLeave) { _RASContext.DailyLeaves.Remove(dailyLeave); }
private void approveDenyDailyLeave(bool isApprove, Domain.User currentUser, TimeSheetManager timeSheetManager, DailyLeaveManager dlm, DailyLeave dailyLeave, string userDescription) { if (dailyLeave.WorkflowStage.Type == "Final") { throw new Exception("هم اکنون تایید نهایی می باشد"); } var isManager = timeSheetManager.IsUserOrganisationMnager(dailyLeave.UserID, currentUser); if (dailyLeave.WorkflowStage.Type == "Manager" && !isManager) { throw new Exception("آیتم منتظر تایید مدیر ستادی است"); } var data = new ApproveAndDenyJson() { id = dailyLeave.ID.ToString(), date = DateTime.Now, description = userDescription, workflowStageID = dailyLeave.WorkflowStageID }; if (isApprove) { dlm.Approve(dailyLeave); HistoryUtilities.RegisterApproveHistory(data, this._uow, currentUser); } else { dlm.Deny(dailyLeave); HistoryUtilities.RegisterApproveHistory(data, this._uow, currentUser); } }
public IActionResult SaveDailyLeave(DailyLeave dailyLeave) { try { if (dailyLeave == null) { throw new Exception("اطلاعات مرخصی ارسال نشده است"); } if (string.IsNullOrEmpty(dailyLeave.PersianDateFrom)) { throw new Exception("تاریخ شروع ارسال نشده است"); } if (string.IsNullOrEmpty(dailyLeave.PersianDateTo)) { throw new Exception("تاریخ پایان ارسال نشده است"); } var currentUser = new UserHelper().GetCurrent(this._uow, this.UserName); DailyLeaveManager dlm = new DailyLeaveManager(this._uow); ProjectManager pm = new ProjectManager(this._uow); UserManager um = new UserManager(this._uow); dailyLeave.UserID = currentUser.ID; dailyLeave.OrganisationId = currentUser.OrganizationUnitID; if (dailyLeave.ProjectID == Guid.Empty) { dailyLeave.ProjectID = null; } if (dailyLeave.SuccessorID == Guid.Empty) { dailyLeave.SuccessorID = null; } if (dailyLeave.ID == Guid.Empty) { dlm.Add(dailyLeave); } else { dlm.Edit(dailyLeave); } var data = new ApproveAndDenyJson() { id = dailyLeave.ID.ToString(), date = DateTime.Now, description = "", workflowStageID = dailyLeave.WorkflowStageID }; HistoryUtilities.RegisterApproveHistory(data, this._uow, currentUser); return(Ok(true)); } catch (Exception ex) { return(this.ReturnError(ex, "خطا در ذخیره مرخصی روزانه")); } }