//
        // GET: /CostUpdation/

        public ActionResult CostUpdation(int id)
        {
            costUpdationVM Cost = new costUpdationVM();

            if (Session["UserID"] != null)
            {
                if (id > 0)
                {
                    Cost = CU.GetCostupdationbyCostUpID(id);
                    //  Cost.InvoiceDate = System.DateTime.UtcNow;
                    //BindMasters();
                    Cost.CostUpdationDetails = DAL.GetCostUpdationDetailsbyCostUpdationID(id);
                    foreach (var item in Cost.CostUpdationDetails)
                    {
                        string currency    = (from c in entity.CurrencyMasters where c.CurrencyID == item.ProvisionCurrencyID select c.CurrencyName).FirstOrDefault();
                        string revenuename = (from r in entity.RevenueTypes where r.RevenueTypeID == item.RevenueTypeID select r.RevenueType1).FirstOrDefault();
                        //  item.RevenueTypeName = revenuename;
                        //  item.CurrencyName = currency;
                    }
                    BindMasters_ForEdit(Cost);
                }
                else
                {
                    Cost.CostUpdationDetails = new List <costUpdationDetailVM>();
                    BindMasters();
                }
            }
            else
            {
                return(RedirectToAction("Login", "Login"));
            }

            return(View(Cost));
        }
        public void BindMasters_ForEdit(costUpdationVM costupdation)
        {
            List <SP_GetJobCodesForCostUpdation_Result> JobCodes = new List <SP_GetJobCodesForCostUpdation_Result>();

            JobCodes = CU.GetJobCodes();

            List <SP_GetAllEmployees_Result> Employees = new List <SP_GetAllEmployees_Result>();

            Employees = MM.GetAllEmployees();



            ViewBag.DocumentNos = costupdation.DocumentNo;

            ViewBag.AllJobCodes = new SelectList(JobCodes, "JobID", "JobCode", costupdation.JobID);

            //   ViewBag.Suppliers = new SelectList(new[] { new { SupplierID = "0", SupplierName = "Select" } }, "SupplierID", "SupplierName");

            ViewBag.Employes = new SelectList(Employees, "EmployeeID", "EmployeeName", costupdation.EmployeeID);
        }
        public ActionResult CostUpdation(costUpdationVM CostU, string Command)
        {
            BindMasters();

            int costupdationId = 0;

            if (Session["UserID"] != null)
            {
                CostU.UserID = Convert.ToInt32(Session["UserID"]);
                CostU.SupplierPaymentStatus = "1";
                CostU.SupplierID            = CostU.SelectedSupplierID;
                CostU.JobID = 0;
                // CostU.SupplierID = Convert.ToInt32(Suppliers);

                /*  if (CostU.JobID == null)
                 * {
                 *
                 *   CostU.InvoiceNo = CU.GetInvoiceNoByJobID(Convert.ToInt32(CostU.MultiJobID.First()));
                 *   CostU.JobID = CostU.MultiJobID.First();
                 * }
                 * else
                 * {
                 *    CostU.InvoiceNo = CU.GetInvoiceNoByJobID(Convert.ToInt32(CostU.JobID));
                 * }*/
                costupdationId = CU.SaveCostUpdation(CostU);

                if (costupdationId > 0)
                {
                    int n = 0;
                    foreach (var item in CostU.CostUpdationDetails)
                    {
                        ////////////////////////////////////

                        CU.SaveCostUpdationDetails(item, costupdationId);

                        //todo:fix to run by sethu
                        //  int jid = (from c in entity.CostUpdations where c.CostUpdationID == item select c.CostUpdationID).FirstOrDefault();
                        //todo:fix to run by sethu
                        //   var d = CostU.CostUpdationDetails.Where(x => x.CostUpdationID == jid).ToList();
                        //  if (d.Count==0)
                        //    {
                        //  var query1 = (from t in CostU.CostUpdationDetails where t.CostUpdationID == item select t).ToList();
                        //   foreach (var j in query1)
                        //   {
                        //    CU.SaveCostUpdationDetails(CostU.CostUpdationDetails[n], jid);
                        //  }
                        //    CU.SaveCostUpdationDetails(query1, item);
                        //   // CU.saveAcJournalDetails(item, Convert.ToInt32(Session["fyearid"]));
                        //  }
                        //  else
                        //  {
                        //  foreach (var i in d)
                        //  {
                        //var data = (from t in entity.CostUpdations where t.CostUpdationID == item select t.JobID).FirstOrDefault();
                        //var query = (from context in CostU.CostUpdationDetails where context.JobID == data select context).FirstOrDefault();
                        //if (query == null)
                        //{
                        //    var query1 = (from t in CostU.CostUpdationDetails where t.CostUpdationID == item select t).FirstOrDefault();
                        //    CU.SaveCostUpdationDetails(query1, item);
                        //    // CU.saveAcJournalDetails(item, Convert.ToInt32(Session["fyearid"]));
                        //}
                        //else
                        //{
                        //    CU.SaveCostUpdationDetails(query, item);
                        //    CU.saveAcJournalDetails(item, Convert.ToInt32(Session["fyearid"]));

                        //}

                        //  }

                        //  }
                        //var data=(from t in entity.CostUpdations where t.CostUpdationID==item select t.JobID).FirstOrDefault();
                        //var query=(from context in CostU.CostUpdationDetails where context.JobID==data select context).FirstOrDefault();
                        //if (query == null)
                        //{

                        //    var query1 = (from t in CostU.CostUpdationDetails where t.CostUpdationID == item select t).FirstOrDefault();
                        //    CU.SaveCostUpdationDetails(query1, item);
                        //   // CU.saveAcJournalDetails(item, Convert.ToInt32(Session["fyearid"]));


                        //}
                        //else
                        //{
                        //    CU.SaveCostUpdationDetails(query, item);
                        //    CU.saveAcJournalDetails(item, Convert.ToInt32(Session["fyearid"]));

                        //}
                        n = n + 1;
                    }
                    CU.saveAcJournalDetails(costupdationId, Convert.ToInt32(Session["fyearid"]));
                }
            }
            else
            {
                return(RedirectToAction("Login", "Login"));
            }
            return(RedirectToAction("CostUpdationDetails", "CostUpdation", new { ID = 15 }));
        }