Exemplo n.º 1
0
        //if existing then return the existing otp
        public static string CreateNewRequestee(string targetEmail)
        {
            DAL dalDataContext = new DAL();
            try
            {

                Table<Requestee> requestees = dalDataContext.requestees;

                Requestee existingRequestee = (from requestee in dalDataContext.requestees
                                               where requestee.TargetEmail.ToLower() == targetEmail.ToLower()
                                                select requestee).SingleOrDefault<Requestee>();

                if (existingRequestee == null)
                {
                    string otp = OTPGenerator.Generate();

                    Requestee newRequestee = new Requestee(targetEmail,otp);
                    dalDataContext.requestees.DeleteOnSubmit(newRequestee);
                    dalDataContext.SubmitChanges();
                    return otp;
                }
                else
                {
                    return existingRequestee.Otp;
                }

            }
            catch (Exception ex)
            {
                throw new FaultException<SException>(new SException(ex.Message),
                    new FaultReason("An Error occured While Creating New Requestee: " + ex.Message));
            }
        }
Exemplo n.º 2
0
        //to approve or reject
        public static void ChangeStatus(Requestee requestee, int requestID, RequestStatus status, string remark)
        {
            DAL dalDataContext = new DAL();
            try
            {

                Request request = (from requests in dalDataContext.requests
                                   where requests.RequestID == requestID
                                   && requests.TargetEmail.Equals(requests.TargetEmail)
                                   select requests).FirstOrDefault();

                if (request == null)
                {
                    throw new FaultException<SException>(new SException(),
                        new FaultReason("Invalid Request"));
                }
                else if (!request.TargetEmail.Equals(requestee.TargetEmail, StringComparison.CurrentCultureIgnoreCase))
                {
                    throw new FaultException<SException>(new SException(),
                        new FaultReason("You are not authorized to perform this task"));
                }
                else
                {
                    if (status == RequestStatus.Cancelled || status == RequestStatus.Pending)
                    {
                        throw new FaultException<SException>(new SException(),
                                        new FaultReason("You can either approve or reject the request!"));
                    }
                    request.Status = status;
                    request.Remark = remark;
                    dalDataContext.SubmitChanges();

                    RequestLogController.InsertRequestLog(request);
                }

            }
            catch (Exception ex)
            {
                throw new FaultException<SException>(new SException(ex.Message),
                    new FaultReason("An Error occured While Updating Request: " + ex.Message));
            }
        }
Exemplo n.º 3
0
 public List<Request> ViewRequests(Requestee requestee, DateTime fromDate, DateTime toDate, RequestStatus status, bool viewAllStatus)
 {
     return RequestController.ViewRequests(requestee, fromDate, toDate, status, viewAllStatus);
 }
Exemplo n.º 4
0
        public static List<Request> ViewRequests(Requestee requestee, DateTime fromDate, DateTime toDate, RequestStatus status, bool viewAllStatus)
        {
            // RequesteeController.ValidateRequestee(targetEmail,OTP);

            DAL dalDataContext = new DAL();

            try
            {
                IQueryable<Request> Requests = (from requests in dalDataContext.requests
                                          where requests.TargetEmail.ToLower() == requestee.TargetEmail.ToLower() &&
                                          requests.RequestDate.Date >= fromDate.Date &&
                                          requests.RequestDate.Date <= toDate.Date
                                          select requests);
                if (!viewAllStatus)
                    Requests = Requests.Where(f => f.Status == status);

                return Requests.OrderByDescending(r => r.RequestDate).ToList<Request>();
            }
            catch (Exception ex)
            {
                throw new FaultException<SException>(new SException(ex.Message),
                      new FaultReason("An Error occured While Viewing Request"));
            }
        }
Exemplo n.º 5
0
 public void ChangeStatus(Requestee requestee, int requestID, RequestStatus status, string remark)
 {
     RequestController.ChangeStatus(requestee, requestID, status, remark);
 }