Example #1
0
        public List <ItemPricesListViewModel> FindAllItemPriceList()
        {
            List <Item> iList = itemService.FindAllActiveItems();
            List <ItemPricesListViewModel> ip      = new List <ItemPricesListViewModel>();
            ItemPricesListViewModel        myModel = new ItemPricesListViewModel();

            foreach (Item i in iList)
            {
                ip.Add(new ItemPricesListViewModel()
                {
                    ItemCode    = i.ItemCode,
                    Description = i.Description,
                    Code1       = itemPriceService.FindOneByItemAndSequence(i, 1).SupplierCode,
                    Code2       = itemPriceService.FindOneByItemAndSequence(i, 2).SupplierCode,
                    Code3       = itemPriceService.FindOneByItemAndSequence(i, 3).SupplierCode,
                    Price1      = itemPriceService.FindOneByItemAndSequence(i, 1).Price,
                    Price2      = itemPriceService.FindOneByItemAndSequence(i, 2).Price,
                    Price3      = itemPriceService.FindOneByItemAndSequence(i, 3).Price
                });
            }
            return(ip);
        }
        public ActionResult GeneratePrice()
        {
            //ViewBag.myFlag = flag;
            List <Item> iList = itemService.FindAllActiveItems();
            List <ItemPricesListViewModel> ip      = new List <ItemPricesListViewModel>();
            ItemPricesListViewModel        myModel = new ItemPricesListViewModel();

            foreach (Item i in iList)
            {
                ip.Add(new ItemPricesListViewModel()
                {
                    ItemCode    = i.ItemCode,
                    Description = i.Description,
                    Code1       = itemPriceService.FindOneByItemAndSequence(i, 1).SupplierCode,
                    Code2       = itemPriceService.FindOneByItemAndSequence(i, 2).SupplierCode,
                    Code3       = itemPriceService.FindOneByItemAndSequence(i, 3).SupplierCode,
                    Price1      = itemPriceService.FindOneByItemAndSequence(i, 1).Price,
                    Price2      = itemPriceService.FindOneByItemAndSequence(i, 2).Price,
                    Price3      = itemPriceService.FindOneByItemAndSequence(i, 3).Price
                });
            }
            return(View(ip));
        }
Example #3
0
        public ActionResult Save(List <PurchaseOrderDetailsViewModel> purchaseOrderDetailList)
        {
            List <Supplier> supList = new List <Supplier>();

            foreach (PurchaseOrderDetailsViewModel pod in purchaseOrderDetailList)
            {
                Item      item      = itemService.FindItemByItemCode(pod.ItemCode);
                ItemPrice itemPrice = itemPriceService.FindOneByItemAndSequence(item, pod.SupplierPriority);

                if (!supList.Contains(itemPrice.Supplier))
                {
                    supList.Add(itemPrice.Supplier);
                }
            }


            List <PurchaseOrder> poList = purchaseOrderService.CreatePOForEachSupplier(supList);


            List <string> purchaseOrderIds = new List <string>();

            foreach (PurchaseOrder pOrder in poList)
            {
                pOrder.CreatedBy            = userService.FindUserByEmail(System.Web.HttpContext.Current.User.Identity.GetUserName());
                pOrder.PurchaseOrderDetails = new List <PurchaseOrderDetail>();
                pOrder.DeliveryOrders       = new List <DeliveryOrder>();
                purchaseOrderService.Save(pOrder);
                purchaseOrderIds.Add(pOrder.PurchaseOrderNo);
            }

            foreach (PurchaseOrderDetailsViewModel pod in purchaseOrderDetailList)
            {
                PurchaseOrderDetail poDetail = new PurchaseOrderDetail();
                poDetail.Item            = itemService.FindItemByItemCode(pod.ItemCode);
                poDetail.ItemCode        = pod.ItemCode;
                poDetail.Quantity        = pod.QuantityOrdered;
                poDetail.Status          = statusService.FindStatusByStatusId(11);
                poDetail.Status.StatusId = 11;
                //poDetail.UpdatedDateTime = DateTime.Now;
                // poDetail.UpdatedBy = userService.FindUserByEmail(System.Web.HttpContext.Current.User.Identity.GetUserName());

                foreach (PurchaseOrder po in poList)
                {
                    Item      item      = itemService.FindItemByItemCode(pod.ItemCode);
                    ItemPrice itemPrice = itemPriceService.FindOneByItemAndSequence(item, pod.SupplierPriority);
                    if (itemPrice.SupplierCode == po.SupplierCode)
                    {
                        poDetail.PurchaseOrder = po;
                        po.PurchaseOrderDetails.Add(poDetail);

                        purchaseOrderService.Save(po);
                        break;
                    }
                }

                purchaseOrderService.SavePurchaseOrderDetail(poDetail);
            }

            return(new JsonResult {
                Data = new { purchaseOrders = purchaseOrderIds }
            });
        }