public IActionResult SubmitSettlement(string travelOrderNo)
        {
            TravelVoucherViewModel vmObj = new TravelVoucherViewModel();

            try
            {
                var result = Approvedtravelorder_PortClientService()
                             .ReadAsync(travelOrderNo)
                             .GetAwaiter()
                             .GetResult()
                             .approvedtravelorder;

                vmObj.Travel_Order_Form_No     = result.Travel_Order_No;
                vmObj.Travelrs_ID_No           = result.Employee_No;
                vmObj.Travelers_Name           = result.Employee_Name;
                vmObj.Actual_Departure_Date_AD = result.Depature_Date_AD;
                vmObj.Actual_Arrival_Date_AD   = result.Arrival_Date_AD;
            }
            catch (Exception ex)
            {
                TempData["Notify"] = JsonConvert.SerializeObject(new Notify {
                    title = "Exception Error", text = ex.Message, type = "error"
                });
            }
            return(View(vmObj));
        }
        public IActionResult SubmitSettlement(TravelVoucherViewModel vmObj)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var obj = _mapper.Map <travelvoucher>(vmObj);

                    Create createObj = new Create
                    {
                        travelvoucher = obj
                    };

                    createObj.travelvoucher.Actual_Departure_Date_ADSpecified = true;
                    createObj.travelvoucher.Actual_Arrival_Date_ADSpecified   = true;
                    createObj.travelvoucher.Claimed_Travel_ExpensesSpecified  = true;
                    createObj.travelvoucher.Claimed_Driver_AllowanceSpecified = true;
                    createObj.travelvoucher.Claimed_Fuel_ExpensesSpecified    = true;
                    createObj.travelvoucher.Guest_Expenses_NrsSpecified       = true;

                    var result = Travelvoucher_PortClientService()
                                 .CreateAsync(createObj)
                                 .GetAwaiter()
                                 .GetResult()
                                 .travelvoucher;

                    if (result != null)
                    {
                        var postResult = Hrmgt_PortClientService()
                                         .PosttravelvoucherwebAsync(result.Travel_Order_Form_No)
                                         .GetAwaiter()
                                         .GetResult()
                                         .return_value;

                        if (postResult == 200)
                        {
                            TempData["Notify"] = JsonConvert.SerializeObject(new Notify {
                                title = "Travel Settlement", text = "Travel settlement submitted successfully.", type = "success"
                            });
                            return(RedirectToAction(nameof(Index)));
                        }
                        else
                        {
                            TempData["Notify"] = JsonConvert.SerializeObject(new Notify {
                                title = "Error", text = "Travel settlement created but submitting failed.", type = "error"
                            });
                        }
                    }
                    else
                    {
                        TempData["Notify"] = JsonConvert.SerializeObject(new Notify {
                            title = "Error", text = "Creating travel settlement failed. Try again.", type = "error"
                        });
                    }
                }
                else
                {
                    TempData["Notify"] = JsonConvert.SerializeObject(new Notify {
                        title = "Validation Error", text = "Insert proper values for each fields.", type = "error"
                    });
                }
            }
            catch (Exception ex)
            {
                TempData["Notify"] = JsonConvert.SerializeObject(new Notify {
                    title = "Exception Error", text = ex.Message, type = "error"
                });
            }
            return(RedirectToAction(nameof(SubmitSettlement), new { travelOrderNo = vmObj.Travel_Order_Form_No }));
        }