public ActionResult Create(int?id)
        {
            EHMSEntities            ent   = new EHMSEntities();
            StockPurchaseOrderModel model = new StockPurchaseOrderModel();

            try
            {
                var          obj   = ent.StockPurchaseOrders.Where(x => x.PurchaseOrderId == ent.StockPurchaseOrders.Max(y => y.PurchaseOrderId)).SingleOrDefault();
                string[]     nums  = obj.PurchaseOrderNo.Split('O');
                RecordNumGen rcnum = new RecordNumGen(nums[1]);

                model.PurchaseOrderNo = "PO" + rcnum.RecNumGen();
            }
            catch (Exception e)
            {
                model.PurchaseOrderNo = "PO001";
            }
            model.DemandId = (int)id;
            var demandlist = ent.ItemDemandDetails.Where(x => x.ItemDemandID == id).ToList();

            foreach (var item in demandlist)
            {
                StockPurchaseItemEntry itementry = new StockPurchaseItemEntry();
                try
                {
                    itementry.StockCategoryId    = ent.SetupStockItemEntries.Where(x => x.StockItemEntryId == item.ItemID).SingleOrDefault().StockCategoryId;
                    itementry.StockSubCategoryId = ent.SetupStockItemEntries.Where(x => x.StockItemEntryId == item.ItemID).SingleOrDefault().StockSubCategoryId;
                    itementry.StockItemEntryId   = item.ItemID;
                    itementry.Quantity           = item.QuantityDemand;
                }
                catch { }
                model.StockPurchaseItemEntryList.Add(itementry);
            }
            return(View(model));
        }
        public ActionResult Create(StockPurchaseOrderModel model)
        {
            StockPurchaseOrderProvider pro = new StockPurchaseOrderProvider();

            if (model.StockPurchaseItemEntryList == null || model.StockPurchaseItemEntryList.Count == 0)
            {
                TempData["message"] = "Add Purchase Items!";
                return(View(model));
            }

            if (ModelState.IsValid)
            {
                try
                {
                    // TODO: Add insert logic here
                    int i = pro.Insert(model);
                    TempData["message"] = "Successfully Saved!";

                    model.PurchaseOrderId = i;
                    return(RedirectToAction("OrderReport", model));
                }
                catch
                {
                    return(View(model));
                }
            }
            else
            {
                return(View(model));
            }
        }
        public ActionResult Print(int id)
        {
            EHMSEntities            ent   = new EHMSEntities();
            StockPurchaseOrderModel model = new StockPurchaseOrderModel();
            var obj = ent.StockPurchaseOrders.Where(x => x.PurchaseOrderId == id).SingleOrDefault();

            AutoMapper.Mapper.Map(obj, model);
            return(RedirectToAction("OrderReport", model));
        }
        public ActionResult OrderReport(StockPurchaseOrderModel model)
        {
            StockPurchaseOrderProvider pro = new StockPurchaseOrderProvider();

            model.StockPurchaseOrderDetailsModel = new StockPurchaseOrderDetailsModel();
            model.StockPurchaseOrderDetailsModel.StockPurchaseOrderDetailsModelList = new List <StockPurchaseOrderDetailsModel>();
            model.StockPurchaseOrderDetailsModel.StockPurchaseOrderDetailsModelList = pro.GetPurchaseDetail(model.PurchaseOrderId);

            return(View(model));
        }
        //
        // GET: /StockPurchaseOrder/

        //public ActionResult Index()
        //{
        //    return View();
        //}
        public ActionResult Index()
        {
            ViewBag.rowid    = Session["rowid"];
            Session["rowid"] = null;
            StockPurchaseOrderModel    model = new StockPurchaseOrderModel();
            StockPurchaseOrderProvider pro   = new StockPurchaseOrderProvider();

            model.StockPurchaseOrderModelList = pro.GetList();
            return(View(model));
        }
        public ActionResult CreateView()
        {
            EHMSEntities            ent   = new EHMSEntities();
            StockPurchaseOrderModel model = new StockPurchaseOrderModel();

            if (ent.StockPurchaseOrders.Any())
            {
                model.PurchaseOrderNo = "PO" + ent.StockPurchaseOrders.Max(x => x.PurchaseOrderId + 1);
            }
            else
            {
                model.PurchaseOrderNo = "PO1";
            }
            model.StockPurchaseItemEntryList = Session["purchaseitementrylist"] as List <StockPurchaseItemEntry>;
            Session["purchaseitementrylist"] = null;
            return(View("Create", model));
        }
        public ActionResult Edit(int id, StockPurchaseOrderModel model)
        {
            StockPurchaseOrderProvider pro = new StockPurchaseOrderProvider();

            //if (model.StockPurchaseItemEntryList == null || model.StockPurchaseItemEntryList.Count == 0)
            //{
            //    TempData["message"] = "Add Purchase Items!";
            //    return View(model);
            //}
            if (ModelState.IsValid)
            {
                // TODO: Add update logic here
                pro.Udate(id, model);
                TempData["message"] = "Successfully Updated!";
                return(RedirectToAction("Index"));
            }
            return(View(model));
        }
        public void Udate(int id, StockPurchaseOrderModel model)
        {
            EHMSEntities ent = new EHMSEntities();
            var          obj = ent.StockPurchaseOrders.Where(x => x.PurchaseOrderId == id).SingleOrDefault();

            model.PurchaseOrderId = obj.PurchaseOrderId;

            AutoMapper.Mapper.Map(model, obj);

            obj.Status      = true;
            obj.CreatedBy   = 1;
            obj.CreatedDate = DateTime.Now;


            ent.Entry(obj).State = System.Data.EntityState.Modified;
            ent.SaveChanges();
            foreach (var item in ent.StockPurchaseOrderDetails.Where(x => x.PurchaseOrderId == model.PurchaseOrderId).ToList())
            {
                ent.StockPurchaseOrderDetails.Remove(item);

                ent.SaveChanges();
            }
            try
            {
                foreach (var item in model.StockPurchaseItemEntryList)
                {
                    StockPurchaseOrderDetail PurchaseDetail = new StockPurchaseOrderDetail();
                    PurchaseDetail.PurchaseOrderId = id;
                    PurchaseDetail.ItemId          = item.StockItemEntryId;
                    PurchaseDetail.Quantity        = Convert.ToInt32(item.Quantity);
                    PurchaseDetail.QuotationPrice  = item.QuatationPrice;
                    PurchaseDetail.TotalAmount     = item.Quantity * item.QuatationPrice;
                    PurchaseDetail.SupplierId      = model.StockPurchaseOrderDetailsModel.SupplierId;
                    PurchaseDetail.ManufactorerId  = model.StockPurchaseOrderDetailsModel.SupplierId;
                    PurchaseDetail.VendorId        = model.StockPurchaseOrderDetailsModel.SupplierId;
                    PurchaseDetail.Status          = true;
                    ent.StockPurchaseOrderDetails.Add(PurchaseDetail);
                }
            }
            catch
            {
            }
            ent.SaveChanges();
        }
        public int Insert(StockPurchaseOrderModel model)
        {
            EHMSEntities ent = new EHMSEntities();
            var          obj = AutoMapper.Mapper.Map <StockPurchaseOrderModel, StockPurchaseOrder>(model);

            obj.Status      = true;
            obj.CreatedBy   = 1;
            obj.CreatedDate = DateTime.Now;


            ent.StockPurchaseOrders.Add(obj);
            ent.SaveChanges();
            int id = ent.StockPurchaseOrders.Where(x => x.PurchaseOrderId == ent.StockPurchaseOrders.Max(y => y.PurchaseOrderId)).SingleOrDefault().PurchaseOrderId;

            foreach (var item in model.StockPurchaseItemEntryList)
            {
                decimal VatAmountTotal = Convert.ToDecimal(0);
                if (item.VatAmount > 0)
                {
                    VatAmountTotal = ((item.QuatationPrice * item.Quantity) * item.VatAmount / 100);
                }

                StockPurchaseOrderDetail PurchaseDetail = new StockPurchaseOrderDetail();
                PurchaseDetail.PurchaseOrderId = id;
                PurchaseDetail.ItemId          = item.StockItemEntryId;
                PurchaseDetail.Quantity        = Convert.ToInt32(item.Quantity);
                PurchaseDetail.QuotationPrice  = item.QuatationPrice;
                PurchaseDetail.TotalAmount     = (item.Quantity * item.QuatationPrice) + VatAmountTotal;
                PurchaseDetail.SupplierId      = model.StockPurchaseOrderDetailsModel.SupplierId;
                PurchaseDetail.ManufactorerId  = model.StockPurchaseOrderDetailsModel.SupplierId;
                PurchaseDetail.VendorId        = model.StockPurchaseOrderDetailsModel.SupplierId;
                PurchaseDetail.Status          = true;
                PurchaseDetail.VatAmount       = ((item.QuatationPrice * item.Quantity) * item.VatAmount / 100);
                ent.StockPurchaseOrderDetails.Add(PurchaseDetail);
            }
            ent.SaveChanges();
            return(obj.PurchaseOrderId);
        }
        public ActionResult Edit(int id)
        {
            //Session["rowid"] = rowid;
            EHMSEntities            ent   = new EHMSEntities();
            StockPurchaseOrderModel model = new StockPurchaseOrderModel();

            var obj = ent.StockPurchaseOrders.Where(x => x.PurchaseOrderId == id).SingleOrDefault();

            AutoMapper.Mapper.Map(obj, model);
            var PurchaseDetailList = ent.StockPurchaseOrderDetails.Where(x => x.PurchaseOrderId == id).ToList();

            foreach (var item in PurchaseDetailList)
            {
                StockPurchaseItemEntry itementry = new StockPurchaseItemEntry();
                itementry.StockCategoryId    = item.SetupStockItemEntry.SetupStockCategory.StockCategoryID;
                itementry.StockSubCategoryId = item.SetupStockItemEntry.SetupStockSubCategory.StockSubCategoryID;
                itementry.StockItemEntryId   = item.ItemId;
                itementry.Quantity           = item.Quantity;
                itementry.QuatationPrice     = item.QuotationPrice;
                model.StockPurchaseItemEntryList.Add(itementry);
            }

            return(View(model));
        }
Exemple #11
0
        public ActionResult Index(DemandMasterModel model)
        {
            EHMSEntities ent = new EHMSEntities();
            string       s   = "";

            //ViewBag.datef = datefrom;
            //ViewBag.datet = dateto;
            //ViewBag.dmdno = demandno;

            //if (saveDetails != null)
            //{
            //    if (demandno == "")
            //    {
            //        model.DemandMasterList = pro.GetCustomDemandList(model.DepartmentID, datefrom, dateto);
            //    }
            foreach (var item in model.DemandDetailList)
            {
                if (item.CancellationStatus == false && item.isSelected == false && item.QuantityIssued == 0)
                {
                    TempData["message"] = "Enter quantity to be dispatched!";

                    return(View(model));
                }
            }

            s = proA.Insert(model);

            if (s != "")
            {
                TempData["message"] = s;
                foreach (var item in model.DemandDetailList)
                {
                    if (ent.ItemDemandDetails.Any(x => x.ItemID == item.ItemID && x.ItemDemandID == item.ItemDemandID && x.DispatchStatus == true))
                    {
                        model.DemandDetailList = model.DemandDetailList.Where(x => x.ItemID != item.ItemID && x.ItemDemandID != item.ItemDemandID).ToList();
                    }
                }
                return(View(model));
            }
            if (model.isSelected == true)
            {
                StockPurchaseOrderModel purchasemodel = new StockPurchaseOrderModel();
                purchasemodel.StockPurchaseItemEntryList = new List <StockPurchaseItemEntry>();
                foreach (var item in model.DemandDetailList)
                {
                    if (item.isSelected == true)
                    {
                        StockPurchaseItemEntry itementry = new StockPurchaseItemEntry();
                        var obj = ent.SetupStockItemEntries.Where(x => x.StockItemEntryId == item.ItemID).SingleOrDefault();
                        itementry.StockCategoryId    = obj.StockCategoryId;
                        itementry.StockSubCategoryId = obj.StockSubCategoryId;
                        itementry.StockItemEntryId   = obj.StockItemEntryId;
                        purchasemodel.StockPurchaseItemEntryList.Add(itementry);
                    }
                }
                Session["purchaseitementrylist"] = purchasemodel.StockPurchaseItemEntryList;
                return(RedirectToAction("CreateView", "StockPurchaseOrder"));
            }
            //}

            //model.DemandDetailList = new List<DemandDetailModel>();
            //if (demandno != "")
            //{

            //    var objList = (from dd in ent.ItemDemandDetail
            //                   join dm in ent.ItemDemandMaster
            //                       on dd.ItemDemandID equals dm.ItemDemandID
            //                   where dm.ItemDemandNo == demandno && dd.DispatchStatus == false
            //                   select dd).ToList();
            //    try
            //    {
            //        int i = objList[0].ItemDemandID;
            //        model.ItemDemandNo = ent.ItemDemandMaster.Where(x => x.ItemDemandID == i).SingleOrDefault().ItemDemandNo;
            //        AutoMapper.Mapper.Map(objList, model.DemandDetailList);
            //    }
            //    catch { }
            //        try
            //    {
            //        string num = ent.ItemAllotmentMaster.Max(x => x.ItemAllotmentNo);
            //        string[] nums = num.Split('N');
            //        RecordNumGen rcnum = new RecordNumGen(nums[1]);

            //        model.ItemAllotmentNo = "AN" + rcnum.RecNumGen();
            //    }
            //    catch (Exception e)
            //    {
            //        model.ItemAllotmentNo = "AN001";
            //    }

            //}
            //else
            //{
            //    model.DemandMasterList = pro.GetCustomDemandList(model.DepartmentID, datefrom, dateto);
            //    if (DemandId != "")
            //    {

            //        model.DemandDetailList = pro.GetCDemandDetails(Convert.ToInt32(DemandId));
            //        try
            //        {
            //            int i = model.DemandDetailList[0].ItemDemandID;
            //            model.ItemDemandNo = ent.ItemDemandMaster.Where(x => x.ItemDemandID == i).SingleOrDefault().ItemDemandNo;
            //        }
            //        catch { }
            //            try
            //        {
            //            string num = ent.ItemAllotmentMaster.Max(x => x.ItemAllotmentNo);
            //            string[] nums = num.Split('N');
            //            RecordNumGen rcnum = new RecordNumGen(nums[1]);

            //            model.ItemAllotmentNo = "AN" + rcnum.RecNumGen();
            //        }
            //        catch (Exception e)
            //        {
            //            model.ItemAllotmentNo = "AN001";
            //        }
            //    }

            //}



            return(RedirectToAction("AllotmentMaster"));
        }