Exemplo n.º 1
0
        /*
         * helper method to consolidate each [approved requisitions for one item] into [one RetrievalItemDTO]
         */
        private static RetrievalListDTO ConsolidateNewRequisitions(List <RequisitionDetail> requisitionDetailList)
        {
            var itemsToRetrieve = new RetrievalListDTO();

            //group RequisitionDetail list by item: e.g.: List<ReqDetail>-for-pen, List<ReqDetail>-for-Paper, and store these lists in List:
            List <List <RequisitionDetail> > groupedReqListByItem = requisitionDetailList
                                                                    .GroupBy(rd => rd.ItemNum).Select(grp => grp.ToList()).ToList();

            //each list merge into ONE RetrievalItemDTO. e.g.: List<ReqDetail>-for-pen to be converted into ONE RetrievalItemDTO.
            foreach (List <RequisitionDetail> reqListForOneItem in groupedReqListByItem)
            {
                var retrievalItem = new RetrievalItemDTO(reqListForOneItem);

                itemsToRetrieve.Add(retrievalItem);
            }

            return(itemsToRetrieve);
        }
Exemplo n.º 2
0
        /*
         * helper method to consolidate each [unfullfilled Disbursements for one item] add to / into [one RetrievalItemDTO]
         */
        private static RetrievalListDTO ConsolidateUnfulfilledDisbursements(
            List <DisbursementDetail> unfullfilledDisDetailList)
        {
            var itemsToRetrieve = new RetrievalListDTO();

            //group DisbursementDetail list by item: e.g.: List<DisDetail>-for-pen, List<DisDetail>-for-Paper, and store these lists in List:
            List <List <DisbursementDetail> > groupedDisListByItem =
                unfullfilledDisDetailList.GroupBy(rd => rd.ItemNum).Select(grp => grp.ToList()).ToList();

            //each list merge into ONE RetrievalItemDTO. e.g.: List<DisDetail>-for-pen to be converted into ONE RetrievalItemDTO.
            foreach (List <DisbursementDetail> disListForOneItem in groupedDisListByItem)
            {
                var retrievalItem = new RetrievalItemDTO(disListForOneItem);

                itemsToRetrieve.Add(retrievalItem);
            }

            return(itemsToRetrieve);
        }
Exemplo n.º 3
0
        private RetrievalListDTO CreateRetrievalList()
        {
            var itemsToRetrieve = new RetrievalListDTO();

            //adding remaining qty from unfulfilled disbursement
            var unfulfilledDisbursementDetails       = _disbursementRepo.GetUnfulfilledDisbursementDetails().ToList();
            var consolidatedUnfulfilledDisbursements =
                ConsolidateUnfulfilledDisbursements(unfulfilledDisbursementDetails);

            itemsToRetrieve.AddRange(consolidatedUnfulfilledDisbursements);

            //adding requested qty from newly approved requisitions
            var approvedRequisitionDetails  = _requisitionRepo.GetApprovedRequisitionDetails().ToList();
            var consolidatedNewRequisitions = ConsolidateNewRequisitions(approvedRequisitionDetails);

            itemsToRetrieve.AddRange(consolidatedNewRequisitions);

            return(itemsToRetrieve);
        }