// GET: Orders/Create
        public ActionResult Create(int?id)
        {
            if (id == null)
            {
                return(View("Error", new string[] { "You must specify an order to add!" }));
            }
            List <ProcurementDetail> AllProcurementDetails = new List <ProcurementDetail>();
            var query2 = from e in _context.ProcurementDetails
                         select e;

            query2 = query2.Include(o => o.Book).Include(o => o.Procurement).Where(o => o.Procurement.Completed == false && o.Procurement.ProcurementType == ProcurementType.Manual && o.Book.BookID == id);
            AllProcurementDetails = query2.ToList();
            if (AllProcurementDetails.Any())
            {
                return(View("Error", new string[] { "You already have this book in your reorder cart!" }));
            }
            Procurement pro = _context.Procurements.OrderByDescending(p => p.ProcurementID)
                              .FirstOrDefault(p => p.Completed == false);
            Book bo = _context.Books.FirstOrDefault(b => b.BookID == id);

            if (pro == null)
            {
                return(View("Error", new string[] { "Order not found!" }));
            }

            ProcurementDetail pd = new ProcurementDetail()
            {
                Procurement = pro, Book = bo, BookPrice = bo.Cost
            };

            return(View("Create", pd));
        }
Esempio n. 2
0
        public static void Get()
        {
            DataTable rawData = Helper.OpenExcel("Procurements");
            int       N       = 0;

            Helper.Context.Context.Configuration.AutoDetectChangesEnabled = false;
            Helper.Context.Context.Configuration.ValidateOnSaveEnabled    = false;
            foreach (DataRow row in rawData.Rows)
            {
                Procurement procurement = new Procurement()
                {
                    Document = Helper.getString(row, 1),
                    Date     = Helper.getDate(row, 2),
                    Product  = Helper.Context.Products.Get(Lexicon.Products[Helper.getInteger(row, 3)]),
                    Supplier = Helper.Context.Suppliers.Get(Lexicon.Suppliers[Helper.getInteger(row, 4)]),
                    Quantity = Helper.getInteger(row, 5),
                    Price    = Helper.getDouble(row, 6)
                };
                N++;
                if (N % 100 == 0)
                {
                    Console.Write($"{N} ");
                }
                Helper.Context.Procurements.Insert(procurement);
            }
            Helper.Context.Commit();
            Console.WriteLine(N);
        }
Esempio n. 3
0
        public async Task <IActionResult> Edit(int id, [Bind("ProcurementID,ProcurementDate,SupplierID,DeliveryNoteNumber,MerchandiseName,MeasureUnit,UnitPrice,Quantity")] Procurement procurement)
        {
            if (id != procurement.ProcurementID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                procurement.TotalPrice = procurement.UnitPrice * procurement.Quantity;
                try
                {
                    _context.Update(procurement);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ProcurementExists(procurement.ProcurementID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["SupplierID"] = new SelectList(_context.Suppliers, "SupplierID", "SupplierName", procurement.SupplierID);
            return(View(procurement));
        }
        public IActionResult Create(ProcurementDetail pd)
        {
            if (pd.Quantity == 0)
            {
                return(RedirectToAction("EditOrder", "Procurements", new { id = pd.Procurement.ProcurementID }));
            }

            else
            {
                Book bo = _context.Books.FirstOrDefault(b => b.BookID == pd.Book.BookID);
                pd.Book = bo;

                Procurement pro = _context.Procurements.Find(pd.Procurement.ProcurementID);
                pd.Procurement = pro;

                bo.Cost = pd.BookPrice;
                _context.Books.Update(bo);
                _context.SaveChanges();

                pd.ExtendedPrice = pd.Quantity * pd.BookPrice;

                if (ModelState.IsValid)
                {
                    _context.ProcurementDetails.Add(pd);
                    _context.SaveChanges();
                    return(RedirectToAction("EditOrder", "Procurements", new { id = pd.Procurement.ProcurementID }));
                }
                return(View(pd));
            }
        }
Esempio n. 5
0
        public OperationResult Create(ProcurementViewModel input)
        {
            var result = new OperationResult();

            try
            {
                BizModel    context    = new BizModel();
                var         repository = new BizRepository <Procurement>(context);
                Procurement entity     = new Procurement()
                {
                    PartNo           = input.PartNo,
                    PurchasingDay    = input.PurchasingDay,
                    Quantity         = input.Quantity,
                    InvetoryQuantity = input.InvetoryQuantity,
                    UintPrice        = input.UnitPrice
                };
                repository.Create(entity);
                context.SaveChanges();
                result.IsSuccessful = true;
            }
            catch (Exception ex)
            {
                result.IsSuccessful = false;
                result.exception    = ex;
            }
            return(result);
        }
Esempio n. 6
0
        public static void Get()
        {
            IBillingRepository <Procurement> procurements = new BillingRepository <Procurement>(Help.Context);
            IBillingRepository <Supplier>    suppliers    = new BillingRepository <Supplier>(Help.Context);
            IBillingRepository <Product>     products     = new BillingRepository <Product>(Help.Context);
            DataTable rawData = Help.OpenExcel("Procurements");
            int       N       = 0;

            foreach (DataRow row in rawData.Rows)
            {
                Supplier    supplier    = suppliers.Get(Help.dicSupp[Help.getInteger(row, 2)]);
                Product     product     = products.Get(Help.dicProd[Help.getInteger(row, 3)]);
                Procurement procurement = new Procurement()
                {
                    Document = Help.getString(row, 0),
                    Date     = Help.getDate(row, 1),
                    Supplier = supplier,
                    Product  = product,
                    Quantity = Help.getInteger(row, 4),
                    Price    = Help.getDouble(row, 5)
                };
                N++;
                procurements.Insert(procurement);
            }
            procurements.Commit();
            Console.WriteLine(N);
        }
Esempio n. 7
0
        public async Task <ActionResult> Create([Bind(Include = "id_procurement,date_procurement,cost_procurement,count_procurement,id_storage,id_product")] Procurement procurement)
        {
            var product = await db.Products.ToListAsync();

            if (product.Count == 0)
            {
                ViewBag.no_product = "Требуется выбор названия товара";
            }

            ViewBag.id_product = new SelectList(db.Products, "id_product", "name_product");


            if (ModelState.IsValid && product.Count != 0)
            {
                db.Procurements.Add(procurement);

                if (db.Product_storage.Find(procurement.id_product) == null)
                {
                    db.Product_storage.Add(new Product_storage(procurement.count_procurement, procurement.id_product));
                }
                else
                {
                    db.Product_storage.Find(procurement.id_product).id_product = procurement.id_product;
                    db.Product_storage.Find(procurement.id_product).count     += procurement.count_procurement;
                }

                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }


            return(View(procurement));
        }
 public ConcreteMediator(Admin component1, Log component2, Procurement component3,
                         Search component4, Storage component5, Store component6, Supplier component7, Warehouse_Core.Models.Task component8,
                         Transfer component9, User component10)
 {
     this._component1 = component1;
     this._component1.SetMediator(this);
     this._component2 = component2;
     this._component2.SetMediator(this);
     this._component3 = component3;
     this._component3.SetMediator(this);
     this._component4 = component4;
     this._component4.SetMediator(this);
     this._component5 = component5;
     this._component5.SetMediator(this);
     this._component6 = component6;
     this._component6.SetMediator(this);
     this._component7 = component7;
     this._component7.SetMediator(this);
     this._component8 = component8;
     this._component8.SetMediator(this);
     this._component9 = component9;
     this._component9.SetMediator(this);
     this._component10 = component10;
     this._component10.SetMediator(this);
 }
Esempio n. 9
0
        public List <Procurement> FindDocuments(string substring)
        {
            var zipNames = GetZipNames();

            var procurements = new List <Procurement>();

            foreach (var zipName in zipNames)
            {
                var documents = GetAllDocumentsFromZip(zipName);

                foreach (var pair in documents)
                {
                    var name = pair.Key;
                    if (pair.Value.Contains(substring))
                    {
                        var procurement = new Procurement()
                        {
                            Name        = name,
                            ArchiveName = zipName,
                            Url         = $"{uri}{zipName}",
                            Value       = pair.Value
                        };

                        procurements.Add(procurement);
                    }
                }
            }

            return(procurements);
        }
Esempio n. 10
0
        //[ValidateAntiForgeryToken]
        public ActionResult EditProcurement([Bind(Include = "ProcurementId, ProductName, PurchaseDate, Quantity, UnitPrize, ProductId")] Procurement procurement)
        {
            //var procurement = JsonConvert.DeserializeObject<Procurement>(procurementJson);
            ProductRepository           productRepo     = new ProductRepository(db);
            ProcurementRepository       procurementRepo = new ProcurementRepository(db);
            List <ProcurementViewModel> procurements    = new List <ProcurementViewModel>();

            //將變更儲存在資料庫
            if (ModelState.IsValid)
            {
                db.Entry(procurement).State = EntityState.Modified;
                db.SaveChanges();
            }
            //抓取改變後的資料
            foreach (Procurement item in procurementRepo.GetAll().ToList())
            {
                ProcurementViewModel procurementVM = new ProcurementViewModel()
                {
                    ProductName   = productRepo.GetProductNameByID(item.ProductId),
                    ProcurementId = item.ProcurementId,
                    PurchaseDate  = item.PurchaseDate.ToString("yyyy/MM/dd hh:mm:ss"),
                    Quantity      = item.Quantity,
                    UnitPrize     = item.UnitPrize,
                };
                procurements.Add(procurementVM);
            }
            return(Json(procurements));
        }
        public async Task <IActionResult> Edit(int id, [Bind("ProcurementID,ProcurementDate,Price,Quantity")] Procurement procurement)
        {
            if (id != procurement.ProcurementID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(procurement);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ProcurementExists(procurement.ProcurementID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(procurement));
        }
        public bool Insert(ProcurementVM procurementVM)
        {
            var push = new Procurement(procurementVM);
            var get  = myContext.Item.Find(procurementVM.Item_Id);

            if (get != null)
            {
                push.Item = get;
                myContext.Procurement.Add(push);
                var result = myContext.SaveChanges();
                if (result > 0)
                {
                    status = true;
                    return(status);
                }
                else
                {
                    return(status);
                }
            }
            else
            {
                return(status);
            }
        }
        //change the procurement status and
        public IActionResult ReorderConfirmed(int?id)
        {
            if (id == null)
            {
                return(View("Error", new string[] { "You need to specify an order id" }));
            }
            Procurement pro = _context.Procurements.Include(p => p.ProcurementDetails).ThenInclude(p => p.Book)
                              .FirstOrDefault(p => p.ProcurementID == id);

            if (pro == null)
            {
                return(RedirectToAction("Index"));
            }

            AppUser user = _context.Users.FirstOrDefault(x => x.UserName == User.Identity.Name);

            pro.AppUser = user;

            pro.Completed = true;
            _context.Procurements.Update(pro);
            _context.SaveChanges();

            foreach (ProcurementDetail pd in pro.ProcurementDetails)
            {
                Book bo = _context.Books.Include(b => b.ProcurementDetails).FirstOrDefault(b => b.BookID == pd.Book.BookID);
                bo.QuantityOnOrder = bo.QuantityOnOrder + pd.Quantity;

                _context.Books.Update(bo);
                _context.SaveChanges();
            }
            return(RedirectToAction("Index"));
        }
        public IActionResult AutomaticOrder(int[] IdsToAdd, string[] QuantityToAdd, Decimal Cost)
        {
            var query = from r in _context.Books select r;
            //change to < r.ReplenishMinimum, exclude books on active procurement
            List <Book> allBooks = new List <Book>();

            allBooks = query.ToList();

            List <Book> SelectedBooks = new List <Book>();

            foreach (Book book in allBooks)
            {
                foreach (int id in IdsToAdd)
                {
                    if (id == book.BookID)
                    {
                        SelectedBooks.Add(book);
                    }
                }
            }

            Int16 Qt = Convert.ToInt16(QuantityToAdd);

            foreach (Book b in SelectedBooks)
            {
                Procurement procurement = new Procurement();
                procurement.Price = Cost;
                //procurement.Quantity = Quantity;
            }



            return(View("Index"));
        }
Esempio n. 15
0
        public ActionResult CreateProcurement([Bind(Include = "ProductId,PurchaseDate,Quantity,UnitPrize")] Procurement procurement)
        {
            ProductRepository           productRepo     = new ProductRepository(db);
            ProcurementRepository       procurementRepo = new ProcurementRepository(db);
            List <ProcurementViewModel> procurements    = new List <ProcurementViewModel>();

            //將輸入資料儲存在資料庫
            if (ModelState.IsValid)
            {
                db.Procurement.Add(procurement);
                db.SaveChanges();
            }
            //抓取改變後的資料
            foreach (Procurement item in procurementRepo.GetAll().ToList())
            {
                ProcurementViewModel procurementVM = new ProcurementViewModel()
                {
                    ProductName   = productRepo.GetProductNameByID(item.ProductId),
                    ProcurementId = item.ProcurementId,
                    PurchaseDate  = item.PurchaseDate.ToString("yyyy/MM/dd hh:mm:ss"),
                    Quantity      = item.Quantity,
                    UnitPrize     = item.UnitPrize,
                };
                procurements.Add(procurementVM);
            }
            return(Json(procurements));
        }
Esempio n. 16
0
        public void Should_ReturnExpectedResult_WithChangedColumnOrder(string header, string line)
        {
            var deserializeRowData = new DeserializeRowData <Procurement>();
            var lineParser         = new LineParser();
            var expected           = new Procurement
            {
                Project       = "2",
                Description   = "Harmonize Lactobacillus acidophilus sourcing",
                StartDate     = "2014-01-01 00:00:00.000",
                Category      = "Dairy",
                Responsible   = "Daisy Milks",
                SavingsAmount = "NULL",
                Currency      = "EUR",
                Complexity    = "Simple"
            };


            var headerColumnDictionary = lineParser.TabSeparatedParser(header);
            var rowColumnDictionary    = lineParser.TabSeparatedParser(line);
            var actual             = deserializeRowData.Deserialize(headerColumnDictionary, rowColumnDictionary, attributeMappings);
            var expectedJsonString = JsonConvert.SerializeObject(expected);
            var actualJsonString   = JsonConvert.SerializeObject(actual);

            Assert.Equal(expectedJsonString, actualJsonString);
        }
        private void confirmGoodButton_Click(object sender, RoutedEventArgs e)
        {
            IWareHouseDao    whd           = new WareHouseDao();
            IProcurementDao  ipd           = new ProcementDao();
            IGoodDao         igd           = new GoodDao();
            Procurement      procurment    = new Procurement();
            List <WareHouse> warehouseList = whd.getWareHouseList();
            int warehouseid = Convert.ToInt32(warehouseBox.Text);

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                for (int j = 0; j < warehouseList.Count; j++)
                {
                    if (warehouseid == warehouseList[j].WareHouseID)
                    {
                        procurment.WareHouse = warehouseList[j];
                        Good good = igd.getSingleGood(Convert.ToInt32(dt.Rows[i][0]));
                        Dictionary <Good, int> listgood_number = new Dictionary <Good, int>();
                        listgood_number.Add(good, Convert.ToInt32(dt.Rows[i][3]));
                        //procurment还需要自己添加一个自身employee信息
                        procurment.addGood(good, listgood_number[good]);
                    }
                }
            }
            DateTime now = DateTime.Now;

            procurment.WareHouse.WareHouseID = warehouseid;
            procurment.Employee.EmployeeID   = 0;
            procurment.StorageTime           = now;
            ipd.addProcurement(procurment);
            dt.Clear();
            dataGridDetail.ItemsSource = dt.DefaultView;
        }
Esempio n. 18
0
        public ActionResult DeleteConfirmed(int id)
        {
            Procurement procurement = db.Procurement.Find(id);

            db.Procurement.Remove(procurement);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
 private void GetProcurementProducts()
 {
     products.Clear();
     Procurement = (Procurement)listView.SelectedItems[0].Tag;
     Procurement.ProductsWithPrice
     .Select(keyValue => new KeyValuePair <Product, long>(keyValue.Key, keyValue.Value))
     .ToList()
     .ForEach(keyValue => products.Add(keyValue));
 }
Esempio n. 20
0
        List <Procurement> IProcurementDao.getAllProcurementList(DateTime starttime, DateTime endtime)
        {
            List <Procurement> ProcurementList = new List <Procurement>();

            try
            {
                if (con.State == ConnectionState.Closed)
                {
                    con.Open();
                }
                string sql = "select *" +
                             " from procurement natural join wareHouse " +
                             " where :endtime >= storageTime and storageTime >= :starttime  ";

                OracleCommand cmd = new OracleCommand(sql, con);
                cmd.Parameters.Add(":endtime", OracleDbType.TimeStamp);
                cmd.Parameters.Add(":starttime", OracleDbType.TimeStamp);
                //           cmd.Parameters.Add(":id", OracleDbType.Int32);
                cmd.Parameters[0].Value = endtime;
                cmd.Parameters[1].Value = starttime;
                //           cmd.Parameters[2].Value = employeeID;
                OracleDataReader DataReader = cmd.ExecuteReader();
                while (DataReader.Read())
                {
                    Procurement Procurement      = new Procurement();
                    int         id               = int.Parse(DataReader["ProcurementID"].ToString());
                    DateTime    time             = (DateTime)DataReader["storageTime"];
                    int         wareHouseId      = int.Parse(DataReader["wareHouseID"].ToString());
                    int         employeeId       = int.Parse(DataReader["employeeID"].ToString());
                    string      wareHouseName    = DataReader["name"].ToString();
                    string      wareHouseAddress = DataReader["address"].ToString();
                    WareHouse   wareHouse        = new WareHouse();
                    wareHouse.Name    = wareHouseName;
                    wareHouse.Address = wareHouseAddress;
                    wareHouse.Address = wareHouseAddress;

                    Employee employee = new Employee();
                    employee.EmployeeID       = employeeId;
                    Procurement.Employee      = employee;
                    Procurement.ProcurementID = id;
                    Procurement.StorageTime   = time;
                    Procurement.WareHouse     = wareHouse;
                    ProcurementList.Add(Procurement);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            finally
            {
                con.Close();
            }

            //MessageBox.Show(ProcurementList[0].ToString());
            return(ProcurementList);
        }
Esempio n. 21
0
        private void AddProcurementToListView(Procurement procurement)
        {
            ListViewItem item = new ListViewItem(procurement.PaymentDate.ToShortDateString());

            item.SubItems.Add(procurement.IsRecieved ? procurement.RecieveDate.ToShortDateString() : "");
            item.SubItems.Add(procurement.ToString());
            item.SubItems.Add(procurement.TotalPrice.ToString());
            item.Tag = procurement;
            listView_Procurements.Items.Add(item);
        }
Esempio n. 22
0
        private void CreateProcurementForm_Load(object sender, EventArgs e)
        {
            ProductsContainer.Instance.Load();
            checkBox_recieved.Checked      = false;
            dateTimePicker_recieve.Enabled = false;

            procurement = null;
            products.Clear();
            FillComboBox();
        }
        public async Task <IActionResult> Create([Bind("ProcurementID,ProcurementDate,Price,Quantity")] Procurement procurement)
        {
            if (ModelState.IsValid)
            {
                _context.Add(procurement);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(procurement));
        }
Esempio n. 24
0
        public async Task <ActionResult> Edit([Bind(Include = "id_procurement,date_procurement,cost_procurement,count_procurement,id_storage,id_product")] Procurement procurement)
        {
            if (ModelState.IsValid)
            {
                db.Entry(procurement).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(procurement));
        }
        public async Task <IActionResult> DeleteConfirmed(int id)
        {
            var pd = await _context.ProcurementDetails.FindAsync(id);

            Procurement pro = _context.Procurements.FirstOrDefault(r => r.ProcurementDetails.Any(p => p.ProcurementDetailID == id));

            _context.ProcurementDetails.Remove(pd);
            await _context.SaveChangesAsync();

            return(RedirectToAction("EditOrder", "Procurements", new { id = pro.ProcurementID }));
        }
Esempio n. 26
0
 public ActionResult Edit([Bind(Include = "ProcurementId,ProductId,PurchaseDate,Quantity,UnitPrize")] Procurement procurement)
 {
     if (ModelState.IsValid)
     {
         db.Entry(procurement).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.ProductId = new SelectList(db.Products, "ProductId", "Name", procurement.ProductId);
     return(View(procurement));
 }
        private Procurement ToEntity(ProcurementDTO DTO)
        {
            var DTOValue = new Procurement()
            {
                NameSeller    = DTO.NameSeller,
                ContactSeller = DTO.ContactSeller,
                ProductName   = DTO.ProductName,
                ProductPrice  = DTO.ProductPrice,
            };

            return(DTOValue);
        }
Esempio n. 28
0
        private void Button_Delete_Click(object sender, EventArgs e)
        {
            Procurement selectedProcurement = listView_Procurements.SelectedItems[0].Tag as Procurement;

            if (selectedProcurement is null)
            {
                MessageBox.Show("Выберите элемент, который вы хотите удалить!", "Удаление", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            ProcurementsContainer.Instance.Delete(selectedProcurement);
            RefreshListView();
        }
Esempio n. 29
0
        public async Task <IActionResult> Create([Bind("ProcurementID,ProcurementDate,SupplierID,DeliveryNoteNumber,MerchandiseName,MeasureUnit,UnitPrice,Quantity")] Procurement procurement)
        {
            if (ModelState.IsValid)
            {
                procurement.TotalPrice = procurement.UnitPrice * procurement.Quantity;
                _context.Add(procurement);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["SupplierID"] = new SelectList(_context.Suppliers, "SupplierID", "SupplierName", procurement.SupplierID);
            return(View(procurement));
        }
Esempio n. 30
0
        public async Task <ActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Procurement procurement = await db.Procurements.Include(x => x.product).SingleOrDefaultAsync(i => i.id_procurement == id);

            if (procurement == null)
            {
                return(HttpNotFound());
            }
            return(View(procurement));
        }
        private static string GetDonors(Procurement procurement)
        {
            var donorList = procurement.ProcurementDonors.Select(GetDonorDisplayString()).Aggregate((working, next) => working + "; " + next);

            return donorList;
        }
 private static string GetBusinessName(Procurement procurement)
 {
     return procurement.ProcurementDonors.FirstOrDefault().Donor.BusinessName;
 }
 public static SerializableProcurement ConvertProcurementToSerializableProcurement(Procurement procurement)
 {
     return new SerializableProcurement()
                {
                    CatalogNumber      = procurement.CatalogNumber,
                    Description        = procurement.Description,
                    Procurement_ID     = procurement.Procurement_ID,
                    Year               = procurement.ContactProcurement.Auction.Year,
                    AuctionNumber      = procurement.AuctionNumber,
                    ItemNumber         = procurement.ItemNumber,
                    Quantity           = procurement.Quantity,
                    EstimatedValue     = procurement.EstimatedValue,
                    SoldFor            = procurement.SoldFor,
                    Category_ID        = procurement.Category_ID,
                    CategoryName       = procurement.Category == null ? "" : procurement.Category.CategoryName,
                    GeoLocation_ID     = procurement.ContactProcurement.Donor == null ? null : procurement.ContactProcurement.Donor.GeoLocation_ID,
                    GeoLocationName    = (procurement.ContactProcurement.Donor == null || procurement.ContactProcurement.Donor.GeoLocation == null) ? "" : procurement.ContactProcurement.Donor.GeoLocation.GeoLocationName,
                    PerItemValue       = procurement.PerItemValue,
                    BusinessName       = GetBusinessName(procurement),
                    Donors             = GetDonors(procurement),
                    Procurer_ID        = procurement.Procurement_ID,
                    ProcurerName       = procurement.ContactProcurement.Procurer == null ? "" : procurement.ContactProcurement.Procurer.FirstName + " " + procurement.ContactProcurement.Procurer.LastName,
                    Notes              = procurement.Notes,
                    Donation           = procurement.Donation,
                    ThankYouLetterSent = procurement.ThankYouLetterSent,
                    Certificate        = procurement.Certificate,
                    Limitations        = procurement.Limitations,
                    CreatedOn          = procurement.CreatedOn,
                    ProcurementType_ID = procurement.ProcurementType_ID,
                    ProcurementType    = procurement.ProcurementType == null ? "" : procurement.ProcurementType.ProcurementTypeDesc,
                    Title              = procurement.Title
                };
 }