public ActionResult edit(int id) { try { ViewBag.Debit = dbcontext.GL_AccountSetup.Where(a => a.AccountType == 1 || a.AccountType == 3).ToList().Select(m => new { Code = m.AccountNumber + "-[" + m.AccountName + ']', ID = m.ID }); ViewBag.Credites = dbcontext.GL_AccountSetup.Where(a => a.AccountType == 2 || a.AccountType == 3).ToList().Select(m => new { Code = m.AccountNumber + "-[" + m.AccountName + ']', ID = m.ID }); ViewBag.PayrollTransactionJournalSetup = dbcontext.PayrollTransactionJournalSetup.ToList().Select(m => new { Code = m.JournalName_BatchCode + "-[" + m.JournalDesc + ']', ID = m.ID }); ViewBag.Checktype = dbcontext.Checktype.ToList().Select(m => new { Code = m.Code + "-[" + m.Name + ']', ID = m.ID }); ViewBag.ExtendedFields_Header = dbcontext.ExtendedFields_Header.Where(a => a.Purpose == 3).ToList().Select(m => new { Code = m.ExtendedFields_Code + "-[" + m.ExtendedFields_Desc + ']', ID = m.ID }); ViewBag.salaryitem = dbcontext.salary_code.Where(a => a.SourceEntry == 3).ToList().Select(m => new { Code = m.SalaryCodeID + "-[" + m.SalaryCodeDesc + ']', ID = m.ID }); var old_model = dbcontext.ManualPaymentTypes_Header.FirstOrDefault(m => m.ID == id); var header = new Headers { ManualPaymentTypes_Header = old_model, Transaction_Type = (Transaction_Type)old_model.Transaction_Type, Payment_Type_Source_Document = (Payment_Type_Source_Document)old_model.PaymentTypeSourceDocument, Frequency_Periodic_type = (Frequency_Periodic_type)old_model.FrequencyPeriodType }; var old_details = dbcontext.ManualPaymentTypes_Detail.Where(m => m.PaymentTypeCode == old_model.ID.ToString()).ToList(); var new_model = new VMs { ManualPaymentTypes_Detail = old_details, Header = header }; return(View(new_model)); } catch (Exception) { return(RedirectToAction("index")); } }
public ActionResult edit(VMs model, FormCollection form) { try { ViewBag.Debit = dbcontext.GL_AccountSetup.Where(a => a.AccountType == 1 || a.AccountType == 3).ToList().Select(m => new { Code = m.AccountNumber + "-[" + m.AccountName + ']', ID = m.ID }); ViewBag.Credites = dbcontext.GL_AccountSetup.Where(a => a.AccountType == 2 || a.AccountType == 3).ToList().Select(m => new { Code = m.AccountNumber + "-[" + m.AccountName + ']', ID = m.ID }); ViewBag.PayrollTransactionJournalSetup = dbcontext.PayrollTransactionJournalSetup.ToList().Select(m => new { Code = m.JournalName_BatchCode + "-[" + m.JournalDesc + ']', ID = m.ID }); ViewBag.Checktype = dbcontext.Checktype.ToList().Select(m => new { Code = m.Code + "-[" + m.Name + ']', ID = m.ID }); ViewBag.ExtendedFields_Header = dbcontext.ExtendedFields_Header.Where(a => a.Purpose == 3).ToList().Select(m => new { Code = m.ExtendedFields_Code + "-[" + m.ExtendedFields_Desc + ']', ID = m.ID }); ViewBag.salaryitem = dbcontext.salary_code.Where(a => a.SourceEntry == 3).ToList().Select(m => new { Code = m.SalaryCodeID + "-[" + m.SalaryCodeDesc + ']', ID = m.ID }); ///update//// var updated_model = dbcontext.ManualPaymentTypes_Header.FirstOrDefault(m => m.ID == model.Header.ManualPaymentTypes_Header.ID); updated_model.Type_Code = model.Header.ManualPaymentTypes_Header.Type_Code; updated_model.ExtendedFields_Code = model.Header.ManualPaymentTypes_Header.ExtendedFields_Code; updated_model.Modified_By = User.Identity.Name; updated_model.Modified_Date = DateTime.Now.Date; updated_model.Transaction_Type = model.Header.Transaction_Type.GetHashCode(); updated_model.PaymentTypeSourceDocument = model.Header.Payment_Type_Source_Document.GetHashCode(); updated_model.FrequencyPeriodType = model.Header.Frequency_Periodic_type.GetHashCode(); dbcontext.SaveChanges(); ///////////delete////////// var update_details = dbcontext.ManualPaymentTypes_Detail.Where(m => m.PaymentTypeCode == updated_model.ID.ToString()).ToList(); dbcontext.ManualPaymentTypes_Detail.RemoveRange(update_details); dbcontext.SaveChanges(); ///////////////////add/////// var codeid = form["codeid"].Split(','); var SalaryDes = form["SalaryDes"].Split(','); var TypeE = form["TypeE"].Split(','); var ValueType = form["ValueType"].Split(','); var DefaultValue = form["DefaultValue"].Split(','); for (var i = 0; i < codeid.Length; i++) { if (codeid[i] != "") { var nejjw_details = new ManualPaymentTypes_Detail { PaymentTypeCode = updated_model.ID.ToString(), Created_By = User.Identity.Name, Created_Date = DateTime.Now.Date, SalaryCodeID = codeid[i], DefaultValue = int.Parse(DefaultValue[i]), Salarycodedescription = SalaryDes[i], Type = TypeE[i], ValueType = ValueType[i] }; dbcontext.ManualPaymentTypes_Detail.Add(nejjw_details); dbcontext.SaveChanges(); } } //////////////// return(RedirectToAction("index")); } catch (Exception e) { return(View(model)); } }