예제 #1
0
        private void XMLGenerate_SAPUpdate(PurchaseViewModels model)
        {
            try
            {
                //ApplicationUser currentUser = ApplicationUserManager.GetApplicationUser(User.Identity.Name, HttpContext.GetOwinContext());

                //unique id generation
                Guid   GuidRandomNo = Guid.NewGuid();
                string UniqueID     = GuidRandomNo.ToString();

                //fill viewmodel
                ModifyPurchaseQtn_XML xmlEditPurchaseQuotation = new ModifyPurchaseQtn_XML();
                xmlEditPurchaseQuotation.ModifyPurchaseQtnItem_XML = new AddPurchaseQtnItem_XML();
                xmlEditPurchaseQuotation.ModifyPurchaseQtnItem_XML.Viewmodel_AddPurchaseQuotationItemList = new List <Viewmodel_AddPurchaseQuotationItem>();

                xmlEditPurchaseQuotation.Viewmodel_ModifyPurchaseQuotation = GetXmlPurchaseQtn(model.PurchaseQuotation);
                xmlEditPurchaseQuotation.ModifyPurchaseQtnItem_XML.Viewmodel_AddPurchaseQuotationItemList = GetXmlPurchaseQtnItem(model.PurchaseQuotationItemList);

                //generate xml
                purchaseDb.GenerateXML(xmlEditPurchaseQuotation, UniqueID.ToString(), "Purchase");
            }
            catch (Exception ex)
            {
                ExceptionHandler.LogException(ex);
                ViewBag.AppErrorMessage = ex.Message;
            }
        }
예제 #2
0
        // GET: Purchase
        //[Authorize]
        public ActionResult Index()
        {
            try
            {
                LogHandler.WriteLog("Purchase Index page requested by #UserId");

                PurchaseViewModels model = new PurchaseViewModels();
                model.PurchaseQuotation = new PurchaseQuotation();
                //model.PurchaseQuotation.Quotation_Status = "Open";
                model.PurchaseQuotationList = purchaseDb.GetAllQuotation();
                model.BranchList            = purchaseDb.GetAddressList().ToList();

                model.BussinessList = purchaseDb.GetVendorList();
                model.ProductList   = purchaseDb.GetProductList();
                model.VATList       = purchaseDb.GetVATList();

                //model.PurchaseQuotation.Valid_Date = DateTime.Now;
                //model.PurchaseQuotation.Required_Date = DateTime.Now;
                //model.PurchaseQuotation.Posting_Date = DateTime.Now;

                return(View(model));
            }
            catch (Exception ex)
            {
                ExceptionHandler.LogException(ex);
                ViewBag.AppErrorMessage = ex.Message;
                return(View("Error"));
            }
        }
예제 #3
0
        public JsonResult GetVendor(string term)
        {
            PurchaseViewModels model = new PurchaseViewModels();

            model.ProductList = purchaseDb.GetProductList();

            //return Json(model.BranchList, JsonRequestBehavior.AllowGet);

            var items = new[] { "Apple", "Pear", "Banana", "Pineapple", "Peach" };

            var filteredItems = items.Where(
                item => item.IndexOf(term, StringComparison.InvariantCultureIgnoreCase) >= 0
                );

            return(Json(filteredItems, JsonRequestBehavior.AllowGet));
        }
예제 #4
0
        public PartialViewResult _ViewPartial(int id)
        {
            try
            {
                PurchaseViewModels model = new PurchaseViewModels();
                model.PurchaseQuotation         = purchaseDb.FindOneQuotationById(id);
                model.PurchaseQuotationItemList = purchaseDb.ViewOneQuotationItemById(id);

                model.BranchList    = purchaseDb.GetAddressList().ToList();
                model.BussinessList = purchaseDb.GetVendorList();

                return(PartialView(model));
            }
            catch (Exception ex)
            {
                ExceptionHandler.LogException(ex);
                ViewBag.AppErrorMessage = ex.Message;
                return(PartialView("Error"));
            }
        }
예제 #5
0
 public PartialViewResult _EditPartial(int id)
 {
     try
     {
         PurchaseViewModels model = new PurchaseViewModels();
         model.PurchaseQuotation         = purchaseDb.FindOneQuotationById(id);
         model.PurchaseQuotationItemList = purchaseDb.FindOneQuotationItemById(id);
         model.BranchList    = purchaseDb.GetAddressList().ToList();
         model.BussinessList = purchaseDb.GetVendorList();
         model.ProductList   = purchaseDb.GetProductList();
         model.VATList       = purchaseDb.GetVATList();
         TempData["oldPurchaseQuotation_Name"] = model.PurchaseQuotation.Vendor;
         return(PartialView(model));
     }
     catch (Exception ex)
     {
         ExceptionHandler.LogException(ex);
         ViewBag.AppErrorMessage = ex.Message;
         return(PartialView("Error"));
     }
 }
예제 #6
0
        public ActionResult _ExporttoExcel()
        {
            try
            {
                PurchaseViewModels model = new PurchaseViewModels();
                //get all manufacturer
                var purchase     = purchaseDb.GetAllQuotation().ToList();
                var purchaseItem = purchaseDb.GetAllQuotationItem().ToList();

                //create datatable and add columns
                DataTable dt = new DataTable();
                dt.Columns.Add(new DataColumn("Vendor"));
                dt.Columns.Add(new DataColumn("Reference Number"));
                dt.Columns.Add(new DataColumn("Quotation Status"));
                dt.Columns.Add(new DataColumn("Ship To"));
                dt.Columns.Add(new DataColumn("Freight"));
                dt.Columns.Add(new DataColumn("Loading"));
                dt.Columns.Add(new DataColumn("Posting Date"));
                dt.Columns.Add(new DataColumn("Required Date"));
                dt.Columns.Add(new DataColumn("Valid Up To"));
                dt.Columns.Add(new DataColumn("Tax Amount"));
                dt.Columns.Add(new DataColumn("Total Bef DocDisc"));
                dt.Columns.Add(new DataColumn("Total Quotation Amount"));
                dt.Columns.Add(new DataColumn("Remarks"));
                dt.Columns.Add(new DataColumn("Item Code"));
                dt.Columns.Add(new DataColumn("Item Required Date"));
                dt.Columns.Add(new DataColumn("Required Quantity"));
                dt.Columns.Add(new DataColumn("Unit Price"));
                dt.Columns.Add(new DataColumn("Discount"));
                dt.Columns.Add(new DataColumn("VAT Code"));
                dt.Columns.Add(new DataColumn("Amount"));

                //fill data table
                foreach (var e in purchase)
                {
                    int     repeat   = 0;
                    DataRow dr_final = dt.NewRow();
                    dr_final["Vendor"]                 = e.Vendor_Name;
                    dr_final["Reference Number"]       = e.Reference_Number;
                    dr_final["Quotation Status"]       = e.Quotation_Status;
                    dr_final["Ship To"]                = e.Ship_To;
                    dr_final["Freight"]                = e.Freight;
                    dr_final["Loading"]                = e.Loading;
                    dr_final["Posting Date"]           = e.Posting_Date;
                    dr_final["Required Date"]          = e.Required_Date;
                    dr_final["Valid Up To"]            = e.Valid_Date;
                    dr_final["Tax Amount"]             = e.TaxAmt;
                    dr_final["Total Bef DocDisc"]      = e.TotalBefDocDisc;
                    dr_final["Total Quotation Amount"] = e.TotalQtnAmt;
                    dr_final["Remarks"]                = e.Remarks;

                    foreach (var i in purchaseItem)
                    {
                        if (e.Purchase_Quote_Id == i.Purchase_Quote_Id)
                        {
                            if (repeat == 0)
                            {
                                dr_final["Item Code"]          = i.ProductName;
                                dr_final["Item Required Date"] = i.Required_date;
                                dr_final["Required Quantity"]  = i.Required_qty;
                                dr_final["Unit Price"]         = i.Unit_price;
                                dr_final["Discount"]           = i.Discount_percent;
                                dr_final["VAT Code"]           = i.Vat_Code;
                                dr_final["Amount"]             = i.LineTotal;
                                dt.Rows.Add(dr_final);
                                repeat++;
                            }
                            {
                                DataRow dr_Item = dt.NewRow();
                                dr_Item["Item Code"]          = i.ProductName;
                                dr_Item["Item Required Date"] = i.Required_date;
                                dr_Item["Required Quantity"]  = i.Required_qty;
                                dr_Item["Unit Price"]         = i.Unit_price;
                                dr_Item["Discount"]           = i.Discount_percent;
                                dr_Item["VAT Code"]           = i.Vat_Code;
                                dr_Item["Amount"]             = i.LineTotal;
                                dt.Rows.Add(dr_Item);
                            }
                        }
                    }
                    repeat = 0;

                    //dt.Rows.Add(dr_final);
                }

                System.Web.UI.WebControls.GridView gridvw = new System.Web.UI.WebControls.GridView();
                gridvw.DataSource = dt; //bind the datatable to the gridview
                gridvw.DataBind();
                Response.ClearContent();
                Response.Buffer = true;
                Response.AddHeader("content-disposition", "attachment; filename=PurchaseQuotation.xls"); //Microsoft Office Excel Worksheet (.xlsx)
                Response.ContentType = "application/ms-excel";                                           //"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                Response.Charset     = "";
                StringWriter   sw  = new StringWriter();
                HtmlTextWriter htw = new HtmlTextWriter(sw);
                gridvw.RenderControl(htw);
                Response.Output.Write(sw.ToString());
                Response.Flush();
                Response.End();

                return(RedirectToAction("Index", "Purchase"));
            }
            catch (Exception ex)
            {
                ExceptionHandler.LogException(ex);
                ViewBag.AppErrorMessage = ex.Message;
                return(View("Error"));
            }
        }
예제 #7
0
        public ActionResult Index(string submitButton, PurchaseViewModels model, HttpPostedFileBase file)
        {
            try
            {
                ApplicationUser currentUser = ApplicationUserManager.GetApplicationUser(User.Identity.Name, HttpContext.GetOwinContext());

                if (submitButton == "Save")
                {
                    //vendor = Request.Form["PurchaseQuotation.Vendor_Code"].ToString();
                    //model.PurchaseQuotation.Vendor_Code = Convert.ToInt32(vendor.Remove(0,1));
                    model.PurchaseQuotation.Quotation_Status   = "Open";
                    model.PurchaseQuotation.Created_Branc_Id   = currentUser.Created_Branch_Id;
                    model.PurchaseQuotation.Created_Date       = DateTime.Now;
                    model.PurchaseQuotation.Created_User_Id    = currentUser.Created_User_Id;    //GetUserId()
                    model.PurchaseQuotation.Creating_Branch    = currentUser.Created_Branch_Id;; //GetBranch
                    model.PurchaseQuotation.Modified_User_Id   = currentUser.Modified_User_Id;
                    model.PurchaseQuotation.Modified_Date      = DateTime.Now;
                    model.PurchaseQuotation.Modified_Branch_Id = currentUser.Modified_Branch_Id;


                    var QuotationList = model.PurchaseQuotationItemList.Where(x => x.IsDummy == 0);
                    model.PurchaseQuotationItemList = QuotationList.ToList();

                    for (int i = 0; i < model.PurchaseQuotationItemList.Count; i++)
                    {
                        model.PurchaseQuotationItemList[i].Quoted_qty  = model.PurchaseQuotationItemList[i].Required_qty;
                        model.PurchaseQuotationItemList[i].Quoted_date = model.PurchaseQuotationItemList[i].Required_date;
                    }

                    if (purchaseDb.AddNewQuotation(model.PurchaseQuotation, model.PurchaseQuotationItemList, ref ErrorMessage))
                    {
                        XMLGenerate_SAPInsert(model);
                        //for (int i = 0; i < model.PurchaseQuotationItemList.Count; i++)
                        //{
                        //    XMLGenerate_Quotation_SAPInsert(model.PurchaseQuotationItemList[i]);
                        //}
                        return(RedirectToAction("Index", "Purchase"));
                    }
                    else
                    {
                        ViewBag.AppErrorMessage = ErrorMessage;
                        return(View("Error"));
                    }
                }
                else if (submitButton == "Update")
                {
                    //vendor = Request.Form["PurchaseQuotation.Vendor_Code"].ToString();
                    //model.PurchaseQuotation.Vendor_Code = Convert.ToInt32(vendor.Remove(0, 1));
                    Temp_Purchase = Convert.ToString(TempData["oldPurchaseQuotation_Name"]);
                    model.PurchaseQuotation.Created_Branc_Id   = currentUser.Created_Branch_Id;
                    model.PurchaseQuotation.Created_Date       = DateTime.Now;
                    model.PurchaseQuotation.Created_User_Id    = currentUser.Created_User_Id;   //GetUserId()
                    model.PurchaseQuotation.Creating_Branch    = currentUser.Created_Branch_Id; //GetBranch
                    model.PurchaseQuotation.Modified_User_Id   = currentUser.Modified_User_Id;
                    model.PurchaseQuotation.Modified_Date      = DateTime.Now;
                    model.PurchaseQuotation.Modified_Branch_Id = currentUser.Modified_Branch_Id;

                    var QuotationList = model.PurchaseQuotationItemList.Where(x => x.IsDummy == 0);
                    model.PurchaseQuotationItemList = QuotationList.ToList();

                    //for (int i = 0; i < model.PurchaseQuotationItemList.Count; i++)
                    //{
                    //    model.PurchaseQuotationItemList[i].Quoted_qty = 10; //GetQuantity()
                    //    model.PurchaseQuotationItemList[i].Quoted_date = DateTime.Now;
                    //}

                    if (purchaseDb.UpdateQuotation(model.PurchaseQuotation, model.PurchaseQuotationItemList, ref ErrorMessage))
                    {
                        XMLGenerate_SAPUpdate(model);

                        return(RedirectToAction("Index", "Purchase"));
                    }
                    else
                    {
                        ViewBag.AppErrorMessage = ErrorMessage;
                        return(View("Error"));
                    }
                }
                else if (submitButton == "Export")
                {
                    _ExporttoExcel();
                }

                if (Convert.ToString(Request.Files["FileUpload"]).Length > 0)
                {
                    try
                    {
                        string fileExtension = System.IO.Path.GetExtension(Request.Files["FileUpload"].FileName);

                        string fileName = System.IO.Path.GetFileName(Request.Files["FileUpload"].FileName.ToString());

                        if (fileExtension == ".xls" || fileExtension == ".xlsx")
                        {
                            if (UploadExcelData(fileExtension, fileName, ref ErrorMessage))
                            {
                                return(Json(new { success = true, Message = "File Uploaded Successfully" }, JsonRequestBehavior.AllowGet));
                            }
                            else
                            {
                                return(Json(new { success = false, Message = ErrorMessage }, JsonRequestBehavior.AllowGet));
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        return(Json(new { success = false, Error = "File Upload failed :" + ex.Message }, JsonRequestBehavior.AllowGet));
                    }
                }

                return(RedirectToAction("Index", "Purchase"));
            }
            catch (Exception ex)
            {
                ExceptionHandler.LogException(ex);
                ViewBag.AppErrorMessage = ex.Message;
                return(View("Error"));
            }
        }