public ActionResult IssueVoucher(DepartmentIssueVoucherModel model)
        {
            if (model != null)
            {
                if (Session["DepartmentVoucherId"] == null)
                {
                    DepartmentVoucher departmentVoucher = new DepartmentVoucher();
                    departmentVoucher.DepartmentId = model.DepartmentId;
                    db.DepartmentVoucher.Add(departmentVoucher);
                    db.SaveChanges();
                    Session["DepartmentVoucherId"] = departmentVoucher.VoucherNO;
                }

                int departmentVoucherId = (int)Session["DepartmentVoucherId"];
                DepartmentVoucherItem departmentVoucherItem = new DepartmentVoucherItem()
                {
                    DepartmentVoucherId = departmentVoucherId,
                    Amount       = model.Amount,
                    ItemMasterId = model.ItemMasterId,
                    Units        = model.Units
                };

                //check if the department voucher item exists
                var checkForDepartmentVoucherItem = db.DepartmentVoucherItem
                                                    .Where(p => p.DepartmentVoucherId == departmentVoucherId && p.ItemMasterId == model.ItemMasterId)
                                                    .Include(x => x.ItemMaster)
                                                    .FirstOrDefault();

                if (checkForDepartmentVoucherItem != null)
                {
                    var units = model.Units + checkForDepartmentVoucherItem.Units;
                    var Rate  = Convert.ToInt32(checkForDepartmentVoucherItem.ItemMaster.SellingPriceUnit);

                    db.DepartmentVoucherItem.Attach(checkForDepartmentVoucherItem);
                    checkForDepartmentVoucherItem.Units  = units;
                    checkForDepartmentVoucherItem.Amount = Rate * units;
                    db.SaveChanges();
                }
                else
                {
                    db.DepartmentVoucherItem.Add(departmentVoucherItem);
                    db.SaveChanges();
                }
            }

            int id = (int)Session["DepartmentVoucherId"];

            var data = db.DepartmentVoucherItem.Include(p => p.ItemMaster)
                       .Where(p => p.DepartmentVoucherId == id)
                       .ToList();


            return(PartialView("~/Areas/MedicalStore/Views/DepartmentTransactionMStore/_lstDeptIssueVoucher.cshtml", data));
        }
        public ActionResult CategoryMaster(Category category)
        {
            category.StoreName = "FixedAssets";
            if (category != null)
            {
                db.Category.Add(category);
                db.SaveChanges();

                var data = db.Category.Where(p => p.StoreName == "FixedAssets").OrderByDescending(p => p.CategoryID).Take(10).ToList();
                return(PartialView("~/Areas/MedicalStore/Views/MedicalStoreMaster/_CategoryList.cshtml", data));
            }

            return(Json(category, JsonRequestBehavior.AllowGet));
        }
        public JsonResult AddNewCompany(string name)
        {
            MfgCo mfgCo = new MfgCo()
            {
                Name = name
            };

            if (ModelState.IsValid)
            {
                db.MfgCo.Add(mfgCo);
                db.SaveChanges();
                return(Json("", JsonRequestBehavior.AllowGet));
            }
            return(Json("", JsonRequestBehavior.AllowGet));
        }
        public ActionResult RackMaster(RackMaster rackMaster)
        {
            rackMaster.department = "Pharmacy";
            if (ModelState.IsValid)
            {
                db.RackMaster.Add(rackMaster);
                db.SaveChanges();

                var data = db.RackMaster.Where(p => p.department == "Pharmacy").OrderByDescending(p => p.Id).ToList();

                return(PartialView("~/Areas/MedicalStore/Views/MedicalStoreMaster/_RackMasterList.cshtml", data));
            }

            return(Json("Error Occured", JsonRequestBehavior.AllowGet));
        }
Exemple #5
0
        public string EditDose(Dose dose)
        {
            if (ModelState.IsValid)
            {
                var db_dose = db2.Dose.Find(dose.Id);
                db_dose.Name         = dose.Name;
                db_dose.Quantity     = dose.Quantity;
                db_dose.StandardTime = dose.StandardTime;
                db_dose.Description  = dose.Description;
                var res = db2.SaveChanges();

                return("Update was Successful");
            }
            return("Update Failed");
        }
 public ActionResult ItemMaster(ItemMaster item)
 {
     db.ItemMaster.Add(item);
     db.SaveChanges();
     return(Json(""));
 }
Exemple #7
0
        public ActionResult SaveIssueVoucher()
        {
            //used the attach method to update entities
            List <DepartmentVoucherItem> departmentVoucherItems = new List <DepartmentVoucherItem>();

            if (Session["DepartmentVoucherId"] != null)
            {
                int id   = (int)Session["DepartmentVoucherId"];
                var data = db.DepartmentVoucher.Include(p => p.DepartmentVoucherItems)
                           .Where(p => p.VoucherNO == id)
                           .FirstOrDefault();
                //TODO: Does not load the department voucher items, load them to calculate totals
                var totalsCalculation = db.DepartmentVoucherItem.Where(p => p.DepartmentVoucherId == id).Sum(x => x.Amount);

                db.DepartmentVoucher.Attach(data);
                data.IsItemIssued = true;
                data.IssueDate    = DateTime.Now;
                data.Total        = totalsCalculation;


                if (db.SaveChanges() == 1)
                {
                    var depVoucherItems = db.DepartmentVoucherItem.Include(k => k.ItemMaster).Include(o => o.DepartmentVoucher).Where(p => p.DepartmentVoucherId == id).ToList();

                    foreach (var dit in depVoucherItems)
                    {
                        DrugTransactions drugTransaction = new DrugTransactions()
                        {
                            DepartmentId    = data.DepartmentId,
                            ItemMasterId    = dit.ItemMasterId,
                            TransactionDate = DateTime.Now,
                            QuantityIssued  = dit.Units,
                            User            = (int)Session["UserId"],
                            Rate            = Convert.ToInt32(dit.ItemMaster.CostPriceUnit)
                        };

                        db.DrugTransactions.Add(drugTransaction);
                        db.SaveChanges();

                        if (dit.DepartmentVoucher.DepartmentId == db2.Departments.FirstOrDefault(e => e.DepartmentName == "Pharmacy").Id)
                        {
                            var PItem = db.ItemMaster.FirstOrDefault(e => e.StoreName == "P" && e.ItemName == dit.ItemMaster.ItemName &&
                                                                     e.BatchNo == dit.ItemMaster.BatchNo);

                            if (PItem != null)
                            {
                                PItem.CurrentStock = PItem.CurrentStock + dit.Units;
                                db.SaveChanges();
                            }
                            else
                            {
                                var departmentToIssue = db2.Departments.Find(dit.DepartmentVoucher.DepartmentId);

                                using (ProcurementDbContext entity = new ProcurementDbContext())
                                {
                                    var newIM = dit.ItemMaster;

                                    newIM.CurrentStock = dit.Units;
                                    newIM.StoreName    = "P";

                                    entity.ItemMaster.Add(newIM);
                                    entity.SaveChanges();
                                }
                            }
                        }
                        else
                        {
                            var departmentToIssue = db2.Departments.Find(dit.DepartmentVoucher.DepartmentId);

                            var DepartmentItem = db.ItemMaster.FirstOrDefault(e => e.StoreName == departmentToIssue.DepartmentName &&
                                                                              e.ItemName == dit.ItemMaster.ItemName && e.BatchNo == dit.ItemMaster.BatchNo);

                            if (DepartmentItem != null)
                            {
                                DepartmentItem.CurrentStock = DepartmentItem.CurrentStock + dit.Units;
                                db.SaveChanges();
                            }
                            else
                            {
                                using (ProcurementDbContext entity = new ProcurementDbContext())
                                {
                                    var newIM = dit.ItemMaster;

                                    newIM.CurrentStock = dit.Units;
                                    newIM.StoreName    = departmentToIssue.DepartmentName;

                                    entity.ItemMaster.Add(newIM);
                                    entity.SaveChanges();
                                }
                            }
                        }
                        ProcurementDbContext custdb = new ProcurementDbContext();

                        var MSItem = custdb.ItemMaster.FirstOrDefault(e => e.StoreName == "MS" && e.ItemName == dit.ItemMaster.ItemName &&
                                                                      e.BatchNo == dit.ItemMaster.BatchNo);

                        MSItem.CurrentStock = MSItem.CurrentStock - dit.Units;

                        int res = custdb.SaveChanges();
                        if (res > 0)
                        {
                            Session["DepartmentVoucherId"] = null;
                        }
                    }
                }


                Session["DepartmentVoucherId"] = null;

                return(PartialView("~/Areas/MedicalStore/Views/DepartmentTransactionMStore/_lstDeptIssueVoucher.cshtml", new List <DepartmentVoucherItem>()));
            }
            return(PartialView("~/Areas/MedicalStore/Views/DepartmentTransactionMStore/_lstDeptIssueVoucher.cshtml", departmentVoucherItems));
        }
Exemple #8
0
        public ActionResult AddNewInvoice(AddNewInvoice addNewInvoice)
        {
            //add to details table
            RepoProcurement <Models.Invoice>       invoice        = new RepoProcurement <Models.Invoice>();
            RepoProcurement <Models.InvoiceDetail> invoiceDetails = new RepoProcurement <Models.InvoiceDetail>();

            //if (Session["InvoiceNumber"] == null)
            //{
            //    db.Invoice.Add(addNewInvoice.invoice);
            //    db.SaveChanges();

            //    Session["InvoiceNumber"] = addNewInvoice.invoice.Id;
            //}

            var invoiceexists = db.Invoice.FirstOrDefault(e => e.InvoiceNo == addNewInvoice.invoice.InvoiceNo);

            if (invoiceexists == null)
            {
                var SupplierId = db.supplier.FirstOrDefault(e => e.Supplier_Name == addNewInvoice.invoice.SupplierName);
                addNewInvoice.invoice.SupplierId = SupplierId.Supplier_Code;
                db.Invoice.Add(addNewInvoice.invoice);
                db.SaveChanges();

                invoiceexists = db.Invoice.FirstOrDefault(e => e.InvoiceNo == addNewInvoice.invoice.InvoiceNo);

                Session["InvoiceNumber"] = addNewInvoice.invoice.Id;
            }


            //make the last invoice the invoice number for the invoice detail

            addNewInvoice.invoiceDetails.InvoiceNo = invoiceexists.Id;
            var drugid = db.Drug.Where(p => p.Name.Contains(addNewInvoice.invoiceDetails.Item)).FirstOrDefault().Id;

            addNewInvoice.invoiceDetails.DrugId = drugid;

            if (invoiceexists == null)
            {
                //add new invoice detail if invoice
                db.InvoiceDetail.Add(addNewInvoice.invoiceDetails);
                db.SaveChanges();
            }
            else if (invoiceexists != null && !invoiceexists.FinalApproval)
            {
                //add new invoice detail if invoice hasent been authorized
                db.InvoiceDetail.Add(addNewInvoice.invoiceDetails);
                db.SaveChanges();
            }



            int invNo = Convert.ToInt32(Session["InvoiceNumber"]);
            var model = db.InvoiceDetail.Where(p => p.InvoiceNo == invoiceexists.Id).OrderByDescending(p => p.Id).ToList();

            return(PartialView("~/Areas/Procurement/Views/ProcurementPurchase/_InvoiceList.cshtml", model));
        }
 public void Add(TEntity entity)
 {
     db.Set <TEntity>().Add(entity);
     db.SaveChanges();
 }
Exemple #10
0
        private void Seed()
        {
            using (var context = new ProcurementDbContext(ContextOptions))
            {
                context.Database.EnsureDeleted();
                context.Database.EnsureCreated();

                var manager1 = new SiteManager {
                    StaffId = "EMP1", FirstName = "FirstName", LastName = "LastName", MobileNo = "0718956874"
                };

                context.SiteManagers.Add(manager1);
                context.SiteManagers.Add(new SiteManager {
                    StaffId = "EMP2", FirstName = "FirstName", LastName = "LastName", MobileNo = "0718956874"
                });
                context.SiteManagers.Add(new SiteManager {
                    StaffId = "EMP3", FirstName = "FirstName", LastName = "LastName", MobileNo = "0718956874"
                });

                context.ManagementStaff.Add(new ManagementStaff {
                    StaffId = "EMP11", FirstName = "FirstName", LastName = "LastName", MobileNo = "0718956874"
                });
                context.ManagementStaff.Add(new ManagementStaff {
                    StaffId = "EMP12", FirstName = "FirstName", LastName = "LastName", MobileNo = "0718956874"
                });
                context.ManagementStaff.Add(new ManagementStaff {
                    StaffId = "EMP13", FirstName = "FirstName", LastName = "LastName", MobileNo = "0718956874"
                });

                context.AccountingStaff.Add(new AccountingStaff {
                    StaffId = "EMP21", FirstName = "FirstName", LastName = "LastName", MobileNo = "0718956874"
                });
                context.AccountingStaff.Add(new AccountingStaff {
                    StaffId = "EMP22", FirstName = "FirstName", LastName = "LastName", MobileNo = "0718956874"
                });
                context.AccountingStaff.Add(new AccountingStaff {
                    StaffId = "EMP23", FirstName = "FirstName", LastName = "LastName", MobileNo = "0718956874"
                });

                var site1 = new Site {
                    SiteCode = "SITE001", SiteName = "SLIIT Campus Site", SiteAddress = "Malabe", Description = "Malabe SLIIT Campus working site", SiteOfficeNo = "0115489657", SiteManager = manager1
                };

                context.Sites.Add(site1);

                var supplier1 = new Supplier {
                    SupplierCode = "SP1", SupplierName = "MAS Holdings", Address1 = "Colombo 3", CompanyNo = "011548795", MobileNo = "077485698", Email = "*****@*****.**"
                };

                context.Supplier.Add(supplier1);
                context.Supplier.Add(new Supplier {
                    SupplierCode = "SP2", SupplierName = "MAS Holdings", Address1 = "Colombo 3", CompanyNo = "011548795", MobileNo = "077485698", Email = "*****@*****.**"
                });
                context.Supplier.Add(new Supplier {
                    SupplierCode = "SP3", SupplierName = "MAS Holdings", Address1 = "Colombo 3", CompanyNo = "011548795", MobileNo = "077485698", Email = "*****@*****.**"
                });

                var item1 = new Item {
                    ItemId = "IT001", ItemName = "Roofing Sheets", ItemPrice = 200.20, Description = "Roof sheets"
                };
                var item2 = new Item {
                    ItemId = "IT002", ItemName = "Roofing Sheets", ItemPrice = 200.20, Description = "Roof sheets"
                };
                var item3 = new Item {
                    ItemId = "IT003", ItemName = "Roofing Sheets", ItemPrice = 200.20, Description = "Roof sheets"
                };
                context.Items.Add(item1);
                context.Items.Add(item2);
                context.Items.Add(item3);
                var itemSupplier1 = new ItemSuppliers {
                    Item = item1, Supplier = supplier1
                };
                var itemSupplier2 = new ItemSuppliers {
                    Item = item2, Supplier = supplier1
                };
                var itemSupplier3 = new ItemSuppliers {
                    Item = item3, Supplier = supplier1
                };
                context.Add(itemSupplier1);
                context.Add(itemSupplier2);
                context.Add(itemSupplier3);

                var requisition1 = new PurchaseRequisition
                {
                    RequisitionNo   = 1,
                    ShippingAddress = "Malabe",
                    TotalCost       = 2000.00,
                    Status          = "Pending",
                    SiteManager     = manager1,
                    Supplier        = supplier1,
                    Site            = site1
                };
                context.PurchaseRequisitions.Add(requisition1);
                var requisitionItem1 = new PurchaseRequisitionItems {
                    Item = item1, PurchaseRequisition = requisition1, ItemCount = 3
                };
                var requisitionItem2 = new PurchaseRequisitionItems {
                    Item = item2, PurchaseRequisition = requisition1, ItemCount = 2
                };
                var requisitionItem3 = new PurchaseRequisitionItems {
                    Item = item3, PurchaseRequisition = requisition1, ItemCount = 1
                };
                context.Add(requisitionItem1);
                context.Add(requisitionItem2);
                context.Add(requisitionItem3);

                var order1 = new PurchaseOrder
                {
                    OrderReference  = 1,
                    ShippingAddress = "Malabe",
                    TotalCost       = 2000.00,
                    OrderStatus     = "IN PROCESS",
                    SiteManager     = manager1,
                    Supplier        = supplier1,
                    Site            = site1
                };
                context.PurchaseOrders.Add(order1);
                var orderItems1 = new PurchaseOrderItems {
                    Item = item1, PurchaseOrder = order1, ItemCount = 3
                };
                var orderItems2 = new PurchaseOrderItems {
                    Item = item2, PurchaseOrder = order1, ItemCount = 2
                };
                var orderItems3 = new PurchaseOrderItems {
                    Item = item3, PurchaseOrder = order1, ItemCount = 1
                };
                context.Add(orderItems1);
                context.Add(orderItems2);
                context.Add(orderItems3);

                var enquiry1 = new Enquiry {
                    EnquiryId = 1, Description = "Why order is late?", EnquiryStatus = "Pending", OrderReference = order1, SiteManager = manager1
                };
                var enquiry2 = new Enquiry {
                    EnquiryId = 2, Description = "Why order is late?", EnquiryStatus = "Pending", OrderReference = order1, SiteManager = manager1
                };
                var enquiry3 = new Enquiry {
                    EnquiryId = 3, Description = "Why order is late?", EnquiryStatus = "Pending", OrderReference = order1, SiteManager = manager1
                };
                context.Add(enquiry1);
                context.Add(enquiry2);
                context.Add(enquiry3);

                var delivery1 = new Delivery {
                    DeliveryId = "DL001", OnSiteDelivery = true, DeliveryStatus = "On Process", IsFullDelivery = true, Site = site1, PurchaseOrder = order1
                };
                context.Deliveries.Add(delivery1);

                var goodsReceipt1 = new GoodsReceipt {
                    ReceiptId = 1, PurchaseOrder = order1, Supplier = supplier1, Site = site1, Delivery = delivery1
                };
                context.GoodsReceipt.Add(goodsReceipt1);

                var invoice1 = new Invoice {
                    InvoiceId = "INV001", NetAmount = 2000.00, Description = "Order 1 invoice", GoodsReceipt = goodsReceipt1, Supplier = supplier1, InvoiceStatus = "Payment Due"
                };
                context.Invoice.Add(invoice1);

                context.SaveChanges();
            }
        }