Exemplo n.º 1
0
        public static void generateDisbursementList()
        {
            Dictionary <string, List <ConsolidatedRequisitionListDetail> > consolidatedDictionary = new Dictionary <string, List <ConsolidatedRequisitionListDetail> >();
            List <string> dlist = new List <string>();
            List <ConsolidatedRequisitionList> el;

            el = ConsolidatedRequisitionListEFFacade.getAllDepInvolved();
            foreach (ConsolidatedRequisitionList e in el)
            {
                dlist.Add(e.DepartmentCode);
            }


            List <string> deplist = RequisitionDAO.getAllReqDepartments();

            if (deplist.Count() != 0)
            {
                for (int p = 0; p < deplist.Count(); p++)
                {
                    if (dlist.Contains(deplist[p]))
                    {
                        ConsolidatedRequisitionList cl = ConsolidatedRequisitionListEFFacade.getOpenListForDept(deplist[p]);
                        int           listid           = cl.ConsolidatedListID;
                        List <string> itemlist         = ConsolidatedRequisitionListEFFacade.getAllItemsOfList(listid);
                        List <Object> olist1           = RequisitionDAO.getAllApprovedOfDep(deplist[p]);

                        for (int i = 0; i < olist1.Count(); i++)
                        {
                            string itmeNum;
                            itmeNum = olist1[i].ToString().Substring(15, 4);
                            if (itemlist.Contains(itmeNum))
                            {
                                ConsolidatedRequisitionListEFFacade.addRequestedQtyForItem(listid, itmeNum, Convert.ToInt32(olist1[i].ToString().Substring(32, ((olist1[i].ToString().Length) - 34))));
                            }

                            else
                            {
                                ConsolidatedRequisitionListEFFacade.addDetailToList(listid, itmeNum, Convert.ToInt32(olist1[i].ToString().Substring(32, ((olist1[i].ToString().Length) - 34))), (RequisitionDAO.getTheFirstDatetDate(deplist[p])), 0);
                            }
                        }
                    }
                    if (dlist.Contains(deplist[p]) == false)
                    {
                        List <Object> olist = RequisitionDAO.getAllApprovedDetails(deplist[p]);
                        List <ConsolidatedRequisitionListDetail> crl = new List <ConsolidatedRequisitionListDetail>();
                        for (int i = 0; i < olist.Count(); i++)
                        {
                            ConsolidatedRequisitionListDetail c = new ConsolidatedRequisitionListDetail();
                            c.ItemNumber        = olist[i].ToString().Substring(15, 4);
                            c.QuantityRequested = Convert.ToInt32(olist[i].ToString().Substring(32, ((olist[i].ToString().Length) - 34)));
                            c.DateRequest       = RequisitionDAO.getTheFirstDatetDate(deplist[p]);
                            c.ActualQuantity    = 0;
                            crl.Add(c);
                        }
                        consolidatedDictionary.Add(deplist[p], crl);
                    }
                }
                ConsolidatedRequisitionListEFFacade.createNewConsolidatedRequisitionList(consolidatedDictionary);
                RequisitionDAO.changeApprovedToClosed();
            }
        }