public ActionResult Edit(int id) { ViewBag.Customer = db.CustomerMasters.ToList(); ViewBag.Movement = db.CourierMovements.ToList(); var _invoice = db.CustomerInvoices.Find(id); CustomerInvoiceVM _custinvoice = new CustomerInvoiceVM(); _custinvoice.CustomerInvoiceID = _invoice.CustomerInvoiceID; _custinvoice.InvoiceDate = _invoice.InvoiceDate; _custinvoice.CustomerInvoiceNo = _invoice.CustomerInvoiceNo; _custinvoice.CustomerID = _invoice.CustomerID; _custinvoice.InvoiceTotal = _invoice.InvoiceTotal; _custinvoice.Remarks = _invoice.Remarks; List <CustomerInvoiceDetailVM> _details = new List <CustomerInvoiceDetailVM>(); _details = RevenueDAO.GenerateInvoice(DateTime.Now, DateTime.Now, _invoice.CustomerID, 0, _invoice.CustomerInvoiceID); int _index = 0; foreach (var item in _details) { _details[_index].AWBChecked = true; //_details[_index].TotalCharges = Convert.ToDecimal(_details[_index].CourierCharge) + Convert.ToDecimal(_details[_index].CustomCharge) + Convert.ToDecimal(_details[_index].OtherCharge); _custinvoice.TotalCharges += _details[_index].TotalCharges; _index++; } _custinvoice.CustomerInvoiceDetailsVM = _details; Session["InvoiceListing"] = _details; return(View(_custinvoice)); }
public ActionResult GetCustomerAWBList(int Id) { DatePicker datePicker = SessionDataModel.GetTableVariable(); List <CustomerInvoiceDetailVM> _details = new List <CustomerInvoiceDetailVM>(); _details = (from c in db.InScanMasters where (c.TransactionDate >= datePicker.FromDate && c.TransactionDate < datePicker.ToDate) && (c.InvoiceID == null || c.InvoiceID == 0) && c.PaymentModeId == 3 && //account c.CustomerID == Id select new CustomerInvoiceDetailVM { ConsignmentNo = c.ConsignmentNo, AWBDateTime = c.TransactionDate, ConsigneeName = c.Consignee, ConsigneeCountryName = c.ConsigneeCountryName, FreightCharge = 10, CustomsCharge = c.CustomsValue == null ? 0 : c.CustomsValue, OtherCharge = 0, //c.OtherCharge == null ? 0 : c.OtherCharge, DocCharge = 0, //c.OtherCharge == null ? 0 : c.OtherCharge, //StatusPaymentMode = c.StatusPaymentMode, InScanID = c.InScanID, MovementId = c.MovementID == null ? 0 : c.MovementID.Value, AWBChecked = true }).ToList().Where(tt => tt.MovementId != null).ToList().Where(cc => datePicker.SelectedValues.ToList().Contains(cc.MovementId.Value)).ToList(); int _index = 0; CustomerInvoiceVM customerInvoice = new CustomerInvoiceVM(); foreach (var item in _details) { _details[_index].TotalCharges = Convert.ToDecimal(_details[_index].FreightCharge) + Convert.ToDecimal(_details[_index].CustomsCharge) + Convert.ToDecimal(_details[_index].OtherCharge); customerInvoice.TotalCharges += _details[_index].TotalCharges; _index++; } //if (customerInvoice.CustomerInvoiceTax != 0) //{ // customerInvoice.ChargeableWT = (Convert.ToDouble(customerInvoice.TotalCharges) * (Convert.ToDouble(customerInvoice.CustomerInvoiceTax) / Convert.ToDouble(100.00))); // customerInvoice.AdminAmt = (Convert.ToDecimal(customerInvoice.TotalCharges) * (Convert.ToDecimal(customerInvoice.AdminPer) / Convert.ToDecimal(100))); // customerInvoice.FuelAmt = (Convert.ToDecimal(customerInvoice.TotalCharges) * (Convert.ToDecimal(customerInvoice.FuelPer) / Convert.ToDecimal(100))); // customerInvoice.InvoiceTotal = Convert.ToDecimal(customerInvoice.TotalCharges) + Convert.ToDecimal(customerInvoice.ChargeableWT) + customerInvoice.AdminAmt + customerInvoice.FuelAmt; //} customerInvoice.CustomerInvoiceDetailsVM = _details; //Session["InvoiceListing"] = _details; return(PartialView("InvoiceList", customerInvoice)); }
public ActionResult Details(int id) { int branchid = Convert.ToInt32(Session["CurrentBranchID"].ToString()); int companyid = Convert.ToInt32(Session["CurrentCompanyID"].ToString()); ViewBag.Customer = db.CustomerMasters.ToList(); ViewBag.Movement = db.CourierMovements.ToList(); var _invoice = db.CustomerInvoices.Find(id); CustomerInvoiceVM _custinvoice = new CustomerInvoiceVM(); _custinvoice.CustomerInvoiceID = _invoice.CustomerInvoiceID; _custinvoice.InvoiceDate = _invoice.InvoiceDate; _custinvoice.CustomerInvoiceNo = _invoice.CustomerInvoiceNo; _custinvoice.CustomerID = _invoice.CustomerID; _custinvoice.CustomerName = db.CustomerMasters.Find(_invoice.CustomerID).CustomerName; _custinvoice.InvoiceTotal = _invoice.InvoiceTotal; string monetaryunit = Session["MonetaryUnit"].ToString(); _custinvoice.InvoiceTotalInWords = NumberToWords.ConvertAmount(Convert.ToDouble(_custinvoice.InvoiceTotal), monetaryunit); var comp = db.AcCompanies.Find(companyid); _custinvoice.CurrencyName = db.CurrencyMasters.Find(comp.CurrencyID).Symbol; List <CustomerInvoiceDetailVM> _details = new List <CustomerInvoiceDetailVM>(); _details = RevenueDAO.GenerateInvoice(DateTime.Now, DateTime.Now, _invoice.CustomerID, 0, _invoice.CustomerInvoiceID); int _index = 0; foreach (var item in _details) { _details[_index].AWBChecked = true; _custinvoice.TotalCharges += _details[_index].TotalCharges; _index++; } _custinvoice.CustomerInvoiceDetailsVM = _details; Session["InvoiceListing"] = _details; return(View(_custinvoice)); }
public JsonResult GetTotalCharge(CustomerInvoiceVM customerinvoice) { int _index = 0; List <CustomerInvoiceDetailVM> _details = customerinvoice.CustomerInvoiceDetailsVM; //List<CustomerInvoiceDetailVM> _details = Session["InvoiceListing"] as List<CustomerInvoiceDetailVM>; if (_details != null) { foreach (var item in _details) { if (item.AWBChecked) { _details[_index].TotalCharges = Convert.ToDecimal(_details[_index].FreightCharge) + Convert.ToDecimal(_details[_index].CustomsCharge) + Convert.ToDecimal(_details[_index].OtherCharge) + Convert.ToDecimal(_details[_index].DocCharge); customerinvoice.TotalCharges += _details[_index].TotalCharges; } _index++; } customerinvoice.InvoiceTotal = Convert.ToDecimal(customerinvoice.TotalCharges); } return(Json(new { data = customerinvoice }, JsonRequestBehavior.AllowGet)); }
public static List <CustomerInvoiceVM> GetInvoiceList(DateTime FromDate, DateTime ToDate, string InvoiceNo, int FyearId) { SqlCommand cmd = new SqlCommand(); string strConnString = ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString; cmd.Connection = new SqlConnection(strConnString); cmd.CommandText = "SP_GetInvoiceList"; cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@FromDate", FromDate.ToString("MM/dd/yyyy")); cmd.Parameters.AddWithValue("@ToDate", ToDate.ToString("MM/dd/yyyy")); cmd.Parameters.AddWithValue("@FYearId", FyearId); if (InvoiceNo == null) { InvoiceNo = ""; } cmd.Parameters.AddWithValue("@InvoiceNo", @InvoiceNo); SqlDataAdapter da = new SqlDataAdapter(cmd); DataSet ds = new DataSet(); da.Fill(ds); List <CustomerInvoiceVM> objList = new List <CustomerInvoiceVM>(); CustomerInvoiceVM obj; if (ds != null && ds.Tables.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { obj = new CustomerInvoiceVM(); obj.CustomerInvoiceID = CommanFunctions.ParseInt(ds.Tables[0].Rows[i]["CustomerInvoiceID"].ToString()); obj.CustomerInvoiceNo = ds.Tables[0].Rows[i]["CustomerInvoiceNo"].ToString(); obj.InvoiceDate = Convert.ToDateTime(ds.Tables[0].Rows[i]["InvoiceDate"].ToString()); obj.CustomerName = ds.Tables[0].Rows[i]["CustomerName"].ToString(); obj.CustomerID = CommanFunctions.ParseInt(ds.Tables[0].Rows[i]["CustomerID"].ToString()); obj.InvoiceTotal = CommanFunctions.ParseDecimal(ds.Tables[0].Rows[i]["InvoiceTotal"].ToString()); objList.Add(obj); } } return(objList); }
public ActionResult InvoicePrintold(int id) { int branchid = Convert.ToInt32(Session["CurrentBranchID"].ToString()); int companyid = Convert.ToInt32(Session["CurrentCompanyID"].ToString()); NumberToWords _numtoword = new NumberToWords(); ViewBag.Customer = db.CustomerMasters.ToList(); ViewBag.Movement = db.CourierMovements.ToList(); var _invoice = db.CustomerInvoices.Find(id); CustomerInvoiceVM _custinvoice = new CustomerInvoiceVM(); _custinvoice.CustomerInvoiceID = _invoice.CustomerInvoiceID; _custinvoice.InvoiceDate = _invoice.InvoiceDate; _custinvoice.CustomerInvoiceNo = _invoice.CustomerInvoiceNo; _custinvoice.CustomerID = _invoice.CustomerID; var _cust = db.CustomerMasters.Find(_invoice.CustomerID); _custinvoice.CustomerName = _cust.CustomerName; _custinvoice.CustomerCountryName = _cust.CountryName; _custinvoice.CustomerCityName = _cust.CityName; _custinvoice.CustomerPhoneNo = _cust.Phone; _custinvoice.CustomerCode = _cust.CustomerCode; _custinvoice.CustomerTRNNo = _cust.VATTRN; _custinvoice.InvoiceTotal = _invoice.InvoiceTotal; //_custinvoice.invoiceFooter = (from c in db.GeneralSetups join d in db.GeneralSetupTypes on c.SetupID equals d.ID where d.TypeName == "Invoicefooter" select c.Text1).FirstOrDefault(); _custinvoice.generalSetup = (from c in db.GeneralSetups join d in db.GeneralSetupTypes on c.SetupID equals d.ID where d.TypeName == "InvoiceFooter" && c.BranchId == branchid select c).FirstOrDefault(); var comp = db.AcCompanies.Find(companyid); _custinvoice.CurrencyName = db.CurrencyMasters.Find(comp.CurrencyID).Symbol; if (comp.LogoFileName == "" || comp.LogoFileName == null) { ViewBag.LogoPath = "/UploadFiles/" + "defaultlogo.png"; } else { ViewBag.LogoPath = "/UploadFiles/" + comp.LogoFileName; } string monetaryunit = Session["MonetaryUnit"].ToString(); _custinvoice.InvoiceTotalInWords = NumberToWords.ConvertAmount(Convert.ToDouble(_custinvoice.InvoiceTotal), monetaryunit); List <CustomerInvoiceDetailVM> _details = new List <CustomerInvoiceDetailVM>(); _details = RevenueDAO.GenerateInvoice(DateTime.Now, DateTime.Now, _invoice.CustomerID, 0, _invoice.CustomerInvoiceID); int _index = 0; foreach (var item in _details) { _details[_index].AWBChecked = true; _custinvoice.TotalCharges += _details[_index].TotalCharges; _index++; } _custinvoice.CustomerInvoiceDetailsVM = _details; _custinvoice.CustomerInvoiceDetailsVM = _details; Session["InvoiceListing"] = _details; return(View(_custinvoice)); }
public ActionResult Edit(CustomerInvoiceVM model) { var userid = Convert.ToInt32(Session["UserID"]); if (model.CustomerInvoiceID > 0) { CustomerInvoice _custinvoice = new CustomerInvoice(); _custinvoice = db.CustomerInvoices.Find(model.CustomerInvoiceID); _custinvoice.InvoiceDate = model.InvoiceDate; _custinvoice.TaxPercent = model.TaxPercent; _custinvoice.InvoiceTotal = model.InvoiceTotal; _custinvoice.Remarks = model.Remarks; _custinvoice.ModifiedBy = userid; _custinvoice.ModifiedDate = CommanFunctions.GetCurrentDateTime(); db.Entry(_custinvoice).State = EntityState.Modified; db.SaveChanges(); List <CustomerInvoiceDetailVM> e_Details = model.CustomerInvoiceDetailsVM; // Session["InvoiceListing"] as List<CustomerInvoiceDetailVM>; model.CustomerInvoiceDetailsVM = e_Details; if (model.CustomerInvoiceDetailsVM != null) { foreach (var e_details in model.CustomerInvoiceDetailsVM) { if (e_details.CustomerInvoiceDetailID == 0 && e_details.AWBChecked) { CustomerInvoiceDetail _detail = new CustomerInvoiceDetail(); _detail.CustomerInvoiceDetailID = db.CustomerInvoiceDetails.Select(x => x.CustomerInvoiceDetailID).DefaultIfEmpty(0).Max() + 1; _detail.CustomerInvoiceID = _custinvoice.CustomerInvoiceID; _detail.ConsignmentNo = e_details.ConsignmentNo; _detail.InScanID = e_details.InScanID; //_detail.StatusPaymentMode = e_details.StatusPaymentMode; _detail.FreightCharge = e_details.FreightCharge; _detail.CustomsCharge = e_details.CustomsCharge; _detail.DocCharge = e_details.DocCharge; _detail.OtherCharge = e_details.OtherCharge; db.CustomerInvoiceDetails.Add(_detail); db.SaveChanges(); //inscan invoice modified InScanMaster _inscan = db.InScanMasters.Find(e_details.InScanID); _inscan.InvoiceID = _custinvoice.CustomerInvoiceID; db.Entry(_inscan).State = EntityState.Modified; db.SaveChanges(); RevenueUpdateMaster _revenueupdate = db.RevenueUpdateMasters.Where(cc => cc.InScanID == e_details.InScanID).FirstOrDefault(); _revenueupdate.InvoiceId = _custinvoice.CustomerInvoiceID; db.Entry(_revenueupdate).State = EntityState.Modified; db.SaveChanges(); } else if (e_details.CustomerInvoiceDetailID == 0 && e_details.AWBChecked == false) { //CustomerInvoiceDetail _detail = new CustomerInvoiceDetail(); //_detail = db.CustomerInvoiceDetails.Find(e_details.CustomerInvoiceID); //_detail.CourierCharge = e_details.CourierCharge; //_detail.CustomCharge = e_details.CustomCharge; //_detail.OtherCharge = e_details.OtherCharge; //db.CustomerInvoiceDetails.Add(_detail); //db.SaveChanges(); ////inscan invoice modified //InScanMaster _inscan = db.InScanMasters.Find(e_details.InscanID); //_inscan.InvoiceID = _custinvoice.CustomerInvoiceID; //db.Entry(_inscan).State = System.Data.EntityState.Modified; //db.SaveChanges(); } else if (e_details.CustomerInvoiceDetailID > 0 && e_details.AWBChecked == false) { CustomerInvoiceDetail _detail = new CustomerInvoiceDetail(); _detail = db.CustomerInvoiceDetails.Find(e_details.CustomerInvoiceDetailID); db.CustomerInvoiceDetails.Remove(_detail); db.SaveChanges(); ////inscan invoice modified InScanMaster _inscan = db.InScanMasters.Find(e_details.InScanID); _inscan.InvoiceID = null; db.Entry(_inscan).State = EntityState.Modified; db.SaveChanges(); RevenueUpdateMaster _revenueupdate = db.RevenueUpdateMasters.Where(cc => cc.InScanID == e_details.InScanID).FirstOrDefault(); List <RevenueUpdateDetail> revenueUpdateDetails = db.RevenueUpdateDetails.Where(cc => cc.MasterID == _revenueupdate.ID).ToList(); foreach (RevenueUpdateDetail item in revenueUpdateDetails) { item.InvoiceId = null; db.Entry(item).State = EntityState.Modified; db.SaveChanges(); } //_revenueupdate.InvoiceId = null; //db.Entry(_revenueupdate).State = EntityState.Modified; //db.SaveChanges(); } } } //Accounts Posting PickupRequestDAO _dao = new PickupRequestDAO(); _dao.GenerateInvoicePosting(_custinvoice.CustomerInvoiceID); TempData["SuccessMsg"] = "You have successfully Updated the Customer Invoice"; return(RedirectToAction("Index")); } else { return(RedirectToAction("Index")); } }
public ActionResult Create(CustomerInvoiceVM model) { int branchid = Convert.ToInt32(Session["CurrentBranchID"].ToString()); int companyId = Convert.ToInt32(Session["CurrentCompanyID"].ToString()); var userid = Convert.ToInt32(Session["UserID"]); int yearid = Convert.ToInt32(Session["fyearid"].ToString()); if (model.CustomerInvoiceID == 0) { CustomerInvoice _custinvoice = new CustomerInvoice(); var max = db.CustomerInvoices.Select(x => x.CustomerInvoiceID).DefaultIfEmpty(0).Max() + 1; _custinvoice.CustomerInvoiceID = max; _custinvoice.CustomerInvoiceNo = model.CustomerInvoiceNo; _custinvoice.InvoiceDate = model.InvoiceDate; _custinvoice.CustomerID = model.CustomerID; //_custinvoice.CustomerInvoiceTax = model.CustomerInvoiceTax; //_custinvoice.ChargeableWT = model.ChargeableWT; //_custinvoice.AdminPer = model.AdminPer; //_custinvoice.AdminAmt = model.AdminAmt; //_custinvoice.FuelPer = model.FuelPer; //_custinvoice.FuelAmt = model.FuelAmt; //_custinvoice.OtherCharge = model.OtherCharge; _custinvoice.InvoiceTotal = model.InvoiceTotal; _custinvoice.AcFinancialYearID = yearid; _custinvoice.AcCompanyID = companyId; _custinvoice.BranchID = branchid; _custinvoice.Remarks = model.Remarks; _custinvoice.CreatedBy = userid; _custinvoice.CreatedDate = CommanFunctions.GetCurrentDateTime(); _custinvoice.ModifiedBy = userid; _custinvoice.ModifiedDate = CommanFunctions.GetCurrentDateTime(); db.CustomerInvoices.Add(_custinvoice); db.SaveChanges(); List <CustomerInvoiceDetailVM> e_Details = model.CustomerInvoiceDetailsVM; // Session["InvoiceListing"] as List<CustomerInvoiceDetailVM>; model.CustomerInvoiceDetailsVM = e_Details; if (model.CustomerInvoiceDetailsVM != null) { foreach (var e_details in model.CustomerInvoiceDetailsVM) { if (e_details.CustomerInvoiceDetailID == 0 && e_details.AWBChecked) { CustomerInvoiceDetail _detail = new CustomerInvoiceDetail(); _detail.CustomerInvoiceDetailID = db.CustomerInvoiceDetails.Select(x => x.CustomerInvoiceDetailID).DefaultIfEmpty(0).Max() + 1; _detail.CustomerInvoiceID = _custinvoice.CustomerInvoiceID; _detail.ConsignmentNo = e_details.ConsignmentNo; _detail.InScanID = e_details.InScanID; //_detail.StatusPaymentMode = e_details.StatusPaymentMode; _detail.FreightCharge = e_details.FreightCharge; _detail.CustomsCharge = e_details.CustomsCharge; _detail.OtherCharge = e_details.OtherCharge; _detail.DocCharge = e_details.DocCharge; _detail.NetValue = e_details.TotalCharges; db.CustomerInvoiceDetails.Add(_detail); db.SaveChanges(); //inscan invoice modified InScanMaster _inscan = db.InScanMasters.Find(e_details.InScanID); _inscan.InvoiceID = _custinvoice.CustomerInvoiceID; db.Entry(_inscan).State = EntityState.Modified; db.SaveChanges(); RevenueUpdateMaster _revenueupdate = db.RevenueUpdateMasters.Where(cc => cc.InScanID == e_details.InScanID).FirstOrDefault(); var revenuedetails = db.RevenueUpdateDetails.Where(cc => cc.MasterID == _revenueupdate.ID && cc.InvoiceId == null).ToList(); foreach (var revdetail in revenuedetails) { revdetail.InvoiceId = _custinvoice.CustomerInvoiceID; db.Entry(revdetail).State = EntityState.Modified; db.SaveChanges(); } _revenueupdate.InvoiceId = _custinvoice.CustomerInvoiceID; db.Entry(_revenueupdate).State = EntityState.Modified; db.SaveChanges(); } } } //Accounts Posting PickupRequestDAO _dao = new PickupRequestDAO(); _dao.GenerateInvoicePosting(_custinvoice.CustomerInvoiceID); TempData["SuccessMsg"] = "You have successfully Saved the Customer Invoice"; return(RedirectToAction("Index")); } else { return(RedirectToAction("Index")); } }
public ActionResult Create() { int branchid = Convert.ToInt32(Session["CurrentBranchID"].ToString()); int companyid = Convert.ToInt32(Session["CurrentCompanyID"].ToString()); int yearid = Convert.ToInt32(Session["fyearid"].ToString()); DatePicker datePicker = SessionDataModel.GetTableVariable(); ViewBag.Token = datePicker; ViewBag.Movement = db.CourierMovements.ToList(); if (datePicker != null) { ViewBag.Customer = (from c in db.InScanMasters join cust in db.CustomerMasters on c.CustomerID equals cust.CustomerID where (c.TransactionDate >= datePicker.FromDate && c.TransactionDate < datePicker.ToDate) select new CustmorVM { CustomerID = cust.CustomerID, CustomerName = cust.CustomerName }).Distinct(); } CustomerInvoiceVM _custinvoice = new CustomerInvoiceVM(); PickupRequestDAO _dao = new PickupRequestDAO(); DateTime saveNow = DateTime.Now; DateTime myDt; myDt = DateTime.SpecifyKind(saveNow, DateTimeKind.Unspecified); _custinvoice.InvoiceDate = myDt;// DateTimeKind. DateTimeOffset.Now.UtcDateTime.AddHours(5.30); // DateTime.Now; _custinvoice.CustomerInvoiceNo = _dao.GetMaxInvoiceNo(companyid, branchid); //_custinvoice.FromDate = datePicker.FromDate; //_custinvoice.ToDate = datePicker.ToDate.Date.AddHours(23).AddMinutes(59).AddSeconds(59); List <CustomerInvoiceDetailVM> _details = new List <CustomerInvoiceDetailVM>(); if (datePicker != null) { if (datePicker.CustomerId != null) { _custinvoice.CustomerID = Convert.ToInt32(datePicker.CustomerId); } _details = RevenueDAO.GenerateInvoice(datePicker.FromDate, datePicker.ToDate, Convert.ToInt32(datePicker.CustomerId), yearid, 0); int _index = 0; _custinvoice.InvoiceTotal = 0; foreach (var item in _details) { _details[_index].AWBChecked = true; _custinvoice.TotalCharges = _custinvoice.TotalCharges + _details[_index].TotalCharges; _index++; } _custinvoice.InvoiceTotal = _custinvoice.TotalCharges; //_custinvoice.InvoiceTotal = Convert.ToDecimal(customerinvoice.TotalCharges) + Convert.ToDecimal(customerinvoice.ChargeableWT) + customerinvoice.AdminAmt + customerinvoice.FuelAmt + customerinvoice.OtherCharge; } ////CustomerInvoiceDetailVM _detail = new CustomerInvoiceDetailVM(); ////_detail.AWBNo = "1010"; ////_detail.CourierCharge = 100; ////_detail.OtherCharge = 2020; ////_details.Add(_detail); /// _custinvoice.CustomerInvoiceDetailsVM = _details; if (_details.Count == 0) { TempData["SuccessMsg"] = "No more Items pending to Invoice!"; } Session["InvoiceListing"] = _details; return(View(_custinvoice)); }