Beispiel #1
0
        public static DisbursementLockerModel UpdateDisbursementLocker(DisbursementLockerModel lislm, out string error)
        {
            error = "";
            // entites used only by Get Methods
            LUSSISEntities          entities = new LUSSISEntities();
            disbursementlocker      disl     = new disbursementlocker();
            DisbursementLockerModel dislm    = new DisbursementLockerModel();

            try
            {
                disl = entities.disbursementlockers.Where(p => p.reqid == lislm.ReqID && p.lockerid == lislm.LockerID).FirstOrDefault();

                disl.collecteddate = DateTime.Now;
                disl.status        = lislm.Status;
                entities.SaveChanges();

                dislm = GetDisbursementLockerByReqIDAndLockerID(disl.reqid, disl.lockerid, out error);
            }

            // if locker not found, will throw NOTFOUND exception
            catch (NullReferenceException)
            {
                // if there is NULL Exception error, error will be 404
                error = ConError.Status.NOTFOUND;
            }
            catch (Exception e)
            {
                // for other exceptions
                error = e.Message;
            }
            //retuning the lockercollectionpoint object
            return(dislm);
        }
Beispiel #2
0
        public static DisbursementLockerModel GetDisbursementLockerByReqIDAndLockerID(int ReqID, int LockerID, out string error)
        {
            error = "";

            LUSSISEntities          entities = new LUSSISEntities();
            disbursementlocker      disl     = new disbursementlocker();
            DisbursementLockerModel dislm    = new DisbursementLockerModel();

            try
            {
                disl = entities.disbursementlockers.Where(p => p.reqid == ReqID && p.lockerid == LockerID).FirstOrDefault();

                dislm = CovertDisLockertoModel(disl);
            }
            catch (NullReferenceException)
            {
                // if there is NULL Exception error, error will be 404
                error = ConError.Status.NOTFOUND;
            }
            catch (Exception e)
            {
                // for other exceptions
                error = e.Message;
            }
            return(dislm);
        }
Beispiel #3
0
        // update the Requisition Pending to Preparing
        public static List <RequisitionWithDisbursementModel> UpdateAllRequestStatusToPreparing(out string error)
        {
            error = "";
            // declare and initialize new LUSSISEntities to perform update
            LUSSISEntities     entities = new LUSSISEntities();
            List <requisition> reqs     = new List <requisition>();
            List <RequisitionWithDisbursementModel> reqdisms = new List <RequisitionWithDisbursementModel>();

            try
            {
                reqs = entities.requisitions.Where(p => p.status == ConRequisition.Status.REQUESTPENDING).ToList();
                foreach (requisition req in reqs)
                {
                    req.status = ConRequisition.Status.PREPARING;
                    entities.SaveChanges();

                    DisbursementLockerModel dislm = new DisbursementLockerModel();
                    dislm.DisID  = req.disbursements.First().disid;
                    dislm.ReqID  = req.reqid;
                    dislm.DeptID = req.deptid;
                    List <LockerCollectionPointModel> lcpms = LockerCollectionPointRepo.GetAllLockerCP(out error);
                    LockerCollectionPointModel        lcpm  = lcpms.Where(p => p.Cpid == req.cpid && p.Status == ConLockerCollectionPoint.Active.AVAILABLE).FirstOrDefault();
                    if (lcpm == null)
                    {
                        List <DisbursementLockerModel> Currentdislms = new List <DisbursementLockerModel>();
                        Currentdislms = LockerCollectionPointRepo.GetDisbursementLockersByDeptIDAndStatus(req.deptid, 1, out error);
                        if (Currentdislms.Count > 0)
                        {
                            dislm = Currentdislms.First();
                        }
                        else
                        {
                            lcpm = new LockerCollectionPointModel();
                            lcpm = lcpms.Where(p => p.Cpid == req.cpid).FirstOrDefault();
                        }
                    }
                    else
                    {
                        dislm.LockerID = lcpm.Lockerid;
                    }
                    dislm = LockerCollectionPointRepo.CreateDisbursementLocker(dislm, out error);
                    reqdisms.Add(CovertDBRequisitionDistoAPIRequisitionDiswithDetails(req));
                }
            }
            catch (NullReferenceException)
            {
                error = ConError.Status.NOTFOUND;
            }
            catch (Exception e)
            {
                error = e.Message;
            }
            return(reqdisms);
        }
Beispiel #4
0
        public IHttpActionResult UpdateDisbursementLocker(DisbursementLockerModel disl)
        {
            string error = "";
            DisbursementLockerModel dislm = LockerCollectionPointRepo.UpdateDisbursementLocker(disl, out error);

            if (error != "" || dislm == null)
            {
                return(Content(HttpStatusCode.BadRequest, error));
            }
            return(Ok(dislm));
        }
Beispiel #5
0
        public IHttpActionResult GetDisbursementLockerByLockerIDAndReqID(int lockerid, int reqid)
        {
            string error = "";
            DisbursementLockerModel dislm = LockerCollectionPointRepo.GetDisbursementLockerByReqIDAndLockerID(reqid, lockerid, out error);

            if (error != "" || dislm == null)
            {
                if (error == ConError.Status.NOTFOUND)
                {
                    return(Content(HttpStatusCode.NotFound, "Locker Disbursement Not Found"));
                }
                return(Content(HttpStatusCode.BadRequest, error));
            }
            return(Ok(dislm));
        }
Beispiel #6
0
        public IHttpActionResult UpdateDisbursementLockerToCollected(DisbursementLockerModel disl)
        {
            string error = "";
            DisbursementLockerModel dislm = LockerCollectionPointRepo.UpdateDisbursementLocker(disl, out error);

            LockerCollectionPointModel lcpm = LockerCollectionPointRepo.GetLockerCPByLockerid(dislm.LockerID, out error);

            lcpm.Status = ConLockerCollectionPoint.Active.AVAILABLE;
            lcpm        = LockerCollectionPointRepo.UpdateLockerCP(lcpm, out error);

            if (error != "" || dislm == null)
            {
                return(Content(HttpStatusCode.BadRequest, error));
            }


            return(Ok(dislm));
        }
        public IHttpActionResult UpdateRequisitionCompleted(RequisitionModel po)
        {
            string error = "";

            po = RequisitionRepo.GetRequisitionByRequisitionId(po.Reqid, out error);

            // if the staff has already updated the status to "preparing"
            if (po.Status == ConRequisition.Status.COMPLETED)
            {
                return(Ok(po));
            }
            po.Status = ConRequisition.Status.COMPLETED;

            OutstandingReqModel outreqm;

            outreqm = OutstandingReqRepo.GetOutstandingReqByReqId(po.Reqid, out error);
            if (outreqm.ReqId != 0)
            {
                po.Status = ConRequisition.Status.OUTSTANDINGREQUISITION;
            }

            // updating the status
            RequisitionModel pom = RequisitionRepo.UpdateRequisition(po, out error);


            // update the locker disburement to collected

            DisbursementLockerModel dislm = LockerCollectionPointRepo.GetDisbursementLockerByReqID(po.Reqid, out error);

            dislm = LockerCollectionPointRepo.UpdateDisbursementLockerToCollected(dislm, out error);

            if (error != "" || pom == null)
            {
                if (error == ConError.Status.NOTFOUND)
                {
                    return(Content(HttpStatusCode.NotFound, "PO Not Found"));
                }
                return(Content(HttpStatusCode.BadRequest, error));
            }
            return(Ok(pom));
        }
Beispiel #8
0
        public static DisbursementLockerModel CreateDisbursementLocker(DisbursementLockerModel lislm, out string error)
        {
            error = "";
            // entites used only by Get Methods
            LUSSISEntities          entities = new LUSSISEntities();
            disbursementlocker      disl     = new disbursementlocker();
            DisbursementLockerModel dislm    = new DisbursementLockerModel();

            try
            {
                disl.disid         = lislm.DisID;
                disl.reqid         = lislm.ReqID;
                disl.lockerid      = lislm.LockerID;
                disl.deptid        = lislm.DeptID;
                disl.delivereddate = DateTime.Now.AddDays(2);
                disl.collecteddate = DateTime.Now.AddDays(9);
                disl.status        = 1;
                entities.disbursementlockers.Add(disl);
                entities.SaveChanges();

                LockerCollectionPointModel lcpm = GetLockerCPByLockerid(disl.lockerid, out error);
                lcpm.Status = ConLockerCollectionPoint.Active.NOTAVAILABLE;
                lcpm        = UpdateLockerCP(lcpm, out error);

                dislm = GetDisbursementLockerByReqIDAndLockerID(disl.reqid, disl.lockerid, out error);
            }

            // if locker not found, will throw NOTFOUND exception
            catch (NullReferenceException)
            {
                // if there is NULL Exception error, error will be 404
                error = ConError.Status.NOTFOUND;
            }
            catch (Exception e)
            {
                // for other exceptions
                error = e.Message;
            }
            //retuning the lockercollectionpoint object
            return(dislm);
        }
Beispiel #9
0
        private static DisbursementLockerModel CovertDisLockertoModel(disbursementlocker disl)
        {
            DisbursementLockerModel dislm = new DisbursementLockerModel(disl.disid, disl.reqid, disl.lockerid, disl.delivereddate, disl.collecteddate, disl.status, disl.requisition.deptid);

            return(dislm);
        }