public void CreateTimeOffRequestApprovalsForRequest (TimeOffRequest request, IEnumerable <string> userPolicyApproversId) { var approvals = new List <TimeOffRequestApproval>(); foreach (var approverId in userPolicyApproversId) { var approval = new TimeOffRequestApproval { UserId = approverId, TimeOffRequest = request, Status = unitOfWork.RequestApprovalStatuses.Get( (int)TimeOffRequestApprovalStatusesEnum.InProgres) }; approvals.Add(approval); } approvals.FirstOrDefault().Status = unitOfWork.RequestApprovalStatuses.Get( (int)TimeOffRequestApprovalStatusesEnum.Requested); foreach (var approval in approvals) { unitOfWork.RequestApprovals.Create(approval); } }
void SendNotification(TimeOffRequestApproval approval) { if (approval == null) { return; } var request = unitOfWork.TimeOffRequests.Get(approval.TimeOffRequest.Id); string mailAddressee = approval.User.Email; string mailRequesting = request.User.Email; //SendMail(mailAddressee, mailRequesting); }
public TimeOffRequestApproval SetNextAsRequested (TimeOffRequestApproval accepted) { var approval = unitOfWork.RequestApprovals.Find( a => a.TimeOffRequest.Id == accepted.TimeOffRequestId && a.Status.Id == (int)TimeOffRequestApprovalStatusesEnum.InProgres); if (approval != null) { approval.Status = unitOfWork.RequestApprovalStatuses.Get( (int)TimeOffRequestApprovalStatusesEnum.Requested); } return(approval); }