public ActionResult EditOncall(SalesOrderOncall model, string btnsave)
        {
            //validasi manual
            bool palid = true;

            if (btnsave != "draft planning")
            {
                if (!model.IdDataTruck.HasValue)
                {
                    ModelState.AddModelError("IdDataTruck", "Truk harus diisi.");
                    palid = false;
                }
                if (!model.Driver1Id.HasValue)
                {
                    ModelState.AddModelError("Driver1Id", "Driver harus diisi.");
                    palid = false;
                }
            }
            if (!model.AtmId.HasValue || model.AtmId.Value == 0)
            {
                ModelState.AddModelError("AtmId", "Rekening harus diisi.");
                palid = false;
            }
            if (palid)
            {
                Context.SalesOrder dbitem = RepoSalesOrder.FindByPK(model.SalesOrderId.Value);
                string             act    = "";
                if (btnsave != null && btnsave != "")
                {
                    act           = "Draft";
                    dbitem.Status = btnsave;
                }
                else
                {
                    if (model.Status.ToLower() == "save")
                    {
                        act             = "Return";
                        dbitem.isReturn = true;
                    }
                    else
                    {
                        act             = "Submit";
                        dbitem.isReturn = false;
                    }

                    dbitem.Status = model.Status;
                }

                model.setDbOperasional(dbitem.SalesOrderOncall, act, "Operational");
                dbitem.UpdatedBy = UserPrincipal.id;
                RepoSalesOrder.save(dbitem);
                RepoAuditrail.saveKonfirmasiHistory(dbitem);
                if (dbitem.AdminUangJalanId.HasValue)
                {
                    Context.AdminUangJalan dbauj = RepoAdminUangJalan.FindByPK(dbitem.AdminUangJalanId.Value);
                    dbauj.IdDriver1 = dbitem.SalesOrderOncall.Driver1Id;
                    RepoAdminUangJalan.save(dbauj);
                }
                return(RedirectToAction("Index"));
            }
            else
            {
                ViewBag.kondisi  = "konfirmasi";
                ViewBag.name     = model.SONumber;
                ViewBag.Title    = "Konfirmsai Sales Order Oncall " + model.SONumber;
                ViewBag.PostData = "EditOncall";
                return(View("SalesOrderOncall/FormReadOnly", model));
            }
        }