public ActionResult EditDisbursementList(string dept_id, string dept_name) { DisbursementDAO disbursementDAO = new DisbursementDAO(); CollectionPointDAO collectionPointDAO = new CollectionPointDAO(); CollectionPoint collectionPoint = collectionPointDAO.GetCollectionPointByDeptID(dept_id); List <ItemRequest> itemList = disbursementDAO.GetDisburseItemsForRep(dept_id); DisbursementVM disbursement = new DisbursementVM(); disbursement.DeptName = dept_name; disbursement.DeptId = dept_id; disbursement.CollectionPointName = collectionPoint.Name; disbursement.ItemList = itemList; return(View(disbursement)); }
public List <DisbursementVM> WebGetDisbursementsByClerk(int clerkID) { List <DisbursementVM> disbursements = new List <DisbursementVM>(); SqlDataReader reader = null; DisbursementVM dis = null; try { connection.Open(); string sql = "spGetRepresentative"; SqlCommand cmd = new SqlCommand(sql, connection); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@ClerkID", clerkID); reader = cmd.ExecuteReader(); while (reader.Read()) { dis = new DisbursementVM() { DeptId = reader["ID"].ToString(), RepName = reader["RepName"].ToString(), DeptName = reader["DeptName"].ToString() }; disbursements.Add(dis); System.Diagnostics.Debug.WriteLine("MDis Dept " + dis.DeptId); } reader.Close(); List <ItemRequest> items = new List <ItemRequest>(); sql = "spDisbursementsByClerk"; cmd = new SqlCommand(sql, connection); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@ClerkID", clerkID); reader = cmd.ExecuteReader(); ItemRequest itemRequest = null; string deptId; int prev = -1; while (reader.Read()) { itemRequest = new ItemRequest() { Description = reader["Description"].ToString(), ItemId = reader["ItemID"].ToString(), NeededQty = (int)reader["Total"], ActualQty = (int)reader["Actual"] }; deptId = reader["deptID"].ToString(); System.Diagnostics.Debug.WriteLine("Dept Reader " + deptId); // var dis = from d in disbursements where d.DeptId.Equals(deptId) select d; int index = disbursements.FindIndex(d => d.DeptId.Equals(deptId)); if (prev == -1) { prev = index; } if (index != -1) { if (prev != index) { items = new List <ItemRequest>(); } items.Add(itemRequest); disbursements[index].ItemList = items; disbursements[index].CollectionPointID = (int)reader["CollectionPointID"]; prev = index; } } } catch (Exception e) { System.Diagnostics.Debug.WriteLine("Error " + e.Message); return(null); } finally { if (reader != null) { reader.Close(); } connection.Close(); } return(disbursements); }