Example #1
0
        public async Task <IActionResult> Index()
        {
            var parrent = User.Getparrent();

            if (parrent == null)
            {
                return(Json(new ResultContract <int>()
                {
                    statuse = false, message = "برای استفاده از نرم افزار ابتدا وارد شوید"
                }));
            }

            var District = await ConnectApi.GetDataFromHttpClientAsync <ResultContract <List <District> > >(null, Const.GetDistrcits, ApiMethode.Post);

            var academyCategory = await ConnectApi.GetDataFromHttpClientAsync <ResultContract <List <AcademyCategory> > >(null, Const.GetAcademyCategories, ApiMethode.Post);

            var academies = await ConnectApi.GetDataFromHttpClientAsync <ResultContract <List <Academy> > >(new AcademyFiterViewModel { AcademyCaregoryId = 1, DistrcitId = 1 }, Const.GetFiltredAcademeis, ApiMethode.Post);

            if (District != null)
            {
                ViewData["District"] = new SelectList(District.Data, "Id", "Name");
            }
            if (academyCategory != null)
            {
                ViewData["academyCategory"] = new SelectList(academyCategory.Data, "Id", "Name");
            }
            if (academies != null)
            {
                ViewData["academy"] = new SelectList(academies.Data, "Id", "Name");
            }

            return(View());
        }
Example #2
0
        public async Task <IActionResult> Reservs()
        {
            var Parrent = User.Getparrent();

            if (Parrent == null)
            {
                return(Unauthorized());
            }

            GetServiceHistoryViewModel vm = new GetServiceHistoryViewModel()
            {
                ParrentId   = Parrent.Id,
                RequsetSate = RequsetSate.Reserve
            };
            var data = await ConnectApi.GetDataFromHttpClientAsync <ResultContract <List <ServiceRequset> > >(vm, Const.ServiceHistory, ApiMethode.Post);

            if (data != null)
            {
                return(View(data.Data));
            }
            else
            {
                return(View(new List <ServiceRequset>()));
            }
        }
Example #3
0
        public async Task <IActionResult> Activeservice()
        {
            var driver = User.GetDriver();

            if (driver == null)
            {
                return(Unauthorized());
            }
            GetTaxiCabHistoryViewModel vm = new GetTaxiCabHistoryViewModel()
            {
                DriverId     = driver.Id,
                TaxiCabState = TaxiCabState.Ready
            };
            var data = await ConnectApi.GetDataFromHttpClientAsync <ResultContract <string> >(vm, Const.GetTaxiCabHistory, ApiMethode.Post);

            var dt = JsonConvert.DeserializeObject <List <TaxiService> >(data.Data);

            if (dt != null)
            {
                return(View(dt));
            }
            else
            {
                return(View(new List <TaxiService>()));
            }
        }
Example #4
0
        public async Task <IActionResult> ChangeState([FromBody] ChangestateViewModel model)
        {
            var driver = User.GetDriver();

            if (driver != null)
            {
                model.DriverId = driver.Id;
                var data = await ConnectApi.GetDataFromHttpClientAsync <ResultContract <bool> >(model, Const.ChangeState, ApiMethode.Post);

                if (data != null)
                {
                    return(Json(data));
                }
                else
                {
                    return(Json(new ResultContract <bool>()
                    {
                        statuse = false, message = Const.InterntErrorMessag
                    }));
                }
            }
            return(Json(new ResultContract <bool>()
            {
                statuse = false, message = Const.PremisionErrorMessag
            }));
        }
Example #5
0
        public async Task <IActionResult> ServiceDetail(string id)
        {
            var Driver = User.GetDriver();

            if (Driver == null)
            {
                return(View(new TaxiService()));
            }
            var model = new GetTaxiCabDetailViewModel()
            {
                TaxiCabId = id, DriverId = Driver.Id
            };
            ResultContract <string> data = await ConnectApi
                                           .GetDataFromHttpClientAsync <ResultContract <string> >
                                               (model, Const.GetTaxiCabDetail, ApiMethode.Post);

            //var setting = new JsonSerializerSettings
            //{
            //    PreserveReferencesHandling = PreserveReferencesHandling.Objects
            //};
            var dt = JsonConvert.DeserializeObject <TaxiService>(data.Data);

            if (dt == null)
            {
                return(View(new TaxiService()));
            }
            return(View(dt));
        }
Example #6
0
        public async Task <IActionResult> Complete(RegisterStudentParrentViewModel model)
        {
            var s = _cache.GetString("number");

            if (string.IsNullOrWhiteSpace(s))
            {
                ModelState.AddModelError("", "اعتبار زمانی تمام شده است دوباره  ثبت نام کنید");
                return(View(model));
            }
            model.PhoneNumber = s;
            if (ModelState.IsValid)
            {
                var data = await ConnectApi.GetDataFromHttpClientAsync <ResultContract <StudentParent> >
                               (model, Const.RegisterStudentParent, ApiMethode.Post);

                if (data == null)
                {
                    ModelState.AddModelError("", "ارتباط با سرور میسر نشد !");
                    return(View(model));
                }
                if (data.statuse)
                {
                    await AddAuthAsync(data);

                    return(RedirectToLocal(""));
                }
                ModelState.AddModelError("", data.message);
            }

            return(View(model));
        }
Example #7
0
        public async Task <IActionResult> ValidateingNumber(string phoneNumber, string vierfiyCode)
        {
            var c = await _cache.GetStringAsync(phoneNumber);

            ViewBag.newrequset = false;
            if (c == null)
            {
                ViewBag.msg         = "این کد منقضی شده است لطفا یک کد دیگر درخواست کنید";
                ViewBag.phoneNumber = phoneNumber;
                ViewBag.newrequset  = true;
                return(View());
            }
            if (c == vierfiyCode)
            {
                var model = new RegisterStudentParrentViewModel()
                {
                    PhoneNumber = phoneNumber,
                    Name        = "user",
                    TelNumber   = "00"
                };
                var data = await ConnectApi.GetDataFromHttpClientAsync <ResultContract <StudentParent> >
                               (model, Const.IsExistStudentparrent, ApiMethode.Post);

                if (data == null)
                {
                    ViewBag.msg         = "ارتباط با سرور برقرار نشد ، لطفا بعد امتحان کنید";
                    ViewBag.phoneNumber = phoneNumber;
                    ViewBag.newrequset  = true;
                    return(View());
                }
                if (data.statuse == true)
                {
                    await AddAuthAsync(data);

                    return(RedirectToLocal(""));
                }
                model.Name = "";
                await AddCashAsync("number", phoneNumber, 3);

                return(RedirectToAction(nameof(Complete), model));
            }
            ViewBag.msg         = "کد وارد شده معتبر نمی باشد";
            ViewBag.phoneNumber = phoneNumber;
            return(View());
        }
Example #8
0
        public async Task <IActionResult> EditProfile(EditStudentParrentViewModel model)
        {
            var parrent = User.Getparrent();

            model.PhoneNubmber = parrent.PhoneNubmber;
            if (ModelState.IsValid)
            {
                var data = await ConnectApi.GetDataFromHttpClientAsync <ResultContract <StudentParent> >
                               (model, Const.EditStudentParent, ApiMethode.Post);

                if (data == null)
                {
                    ModelState.AddModelError("", "ارتباط با سرور میسر نشد !");
                    return(View(model));
                }
                ModelState.AddModelError("", data.message);
            }
            return(View(model));
        }
Example #9
0
        public async Task <IActionResult> GetAcademyFilter([FromBody] AcademyFiterViewModel model)
        {
            if (model != null)
            {
                var data = await ConnectApi.GetDataFromHttpClientAsync <ResultContract <List <Academy> > >(model, Const.GetFiltredAcademeis, ApiMethode.Post);

                //ViewData["academy"] = new SelectList(data.Data, "Id", "Name");
                return(Json(new ResultContract <List <Academy> >()
                {
                    statuse = true, message = "یافت نشد", Data = data.Data
                }));
            }
            else
            {
                return(Json(new ResultContract <List <Academy> >()
                {
                    statuse = false, message = "یافت نشد"
                }));
            }
        }
Example #10
0
        public async Task <IActionResult> ServiceDetail(string id)
        {
            var model = new GetDetailViewModel()
            {
                Id = id
            };
            ResultContract <ServiceRequset> data = await ConnectApi
                                                   .GetDataFromHttpClientAsync <ResultContract <ServiceRequset> >
                                                       (model, Const.ServiceDetail, ApiMethode.Post);

            if (data == null || data.statuse == false)
            {
                return(NotFound());
            }
            if (data.Data.StudentParrentId != User.Getparrent()?.Id)
            {
                return(NotFound());
            }
            data.Data.Distination = $"{data.Data.Academy.Longtude},{data.Data.Academy.Latitude}";
            data.Data.Origin      = $"{data.Data.Longtude},{data.Data.Latitue}";
            return(View(data.Data));
        }
Example #11
0
        public async Task <IActionResult> Login([FromForm] LoginDriverViewModel model, string ReturnUrl)
        {
            var data = await ConnectApi.GetDataFromHttpClientAsync <ResultContract <Driver> >
                           (model, Const.Logindriver, ApiMethode.Post);

            if (data == null)
            {
                ViewBag.msg = "ارتباط با سرور میسر نشد !";
                return(View());
            }

            if (data.statuse)
            {
                await AddAuthAsync(data);



                return(RedirectToLocal(ReturnUrl));
            }
            ViewBag.msg = data.message;
            return(View());
        }
Example #12
0
        public async Task <IActionResult> CancelOrAccept([FromBody] CancelAndAcceptRequsetViewModel model)
        {
            if (model != null)
            {
                var parrent = User.Getparrent();
                if (parrent == null)
                {
                    return(Unauthorized());
                }
                ResultContract <int> res = await ConnectApi.
                                           GetDataFromHttpClientAsync <ResultContract <int> >
                                               (new CancelAndAcceptRequsetViewModel()
                {
                    RequsetState = model.RequsetState, Token = parrent.Token, RequsetId = model.RequsetId
                }, Const.CancelAndAcceptRequset, ApiMethode.Post);

                if (res != null && res.statuse == true)
                {
                    return(Json(new ResultContract <int>()
                    {
                        statuse = true, message = res.message
                    }));
                }
                else
                {
                    return(Json(new ResultContract <int>()
                    {
                        statuse = false, message = "ارتباط با سرور برقرار نشد"
                    }));
                }
            }
            return(Json(new ResultContract <int>()
            {
                statuse = false, message = "اطلاعات ارسالی معتبر نبود"
            }));
        }
Example #13
0
        public async Task <IActionResult> RequsetService([FromBody] RequsetServiceViewModel model)
        {
            if (!ModelState.IsValid || model.AcademyId <= 0)
            {
                return(Json(new ResultContract <int>()
                {
                    statuse = false, message = "تکمیل همه اطلاعات الزامی است"
                }));
            }
            if (model != null)
            {
                var parrent = User.Getparrent();
                if (parrent == null)
                {
                    return(Json(new ResultContract <int>()
                    {
                        statuse = false, message = "برای ثبت درخواست باید ابتدا وارد شوید "
                    }));
                }
                model.StudentParrentId = parrent.Id;

                string Distination           = "";
                ResultContract <Academy> res = await ConnectApi.
                                               GetDataFromHttpClientAsync <ResultContract <Academy> >
                                                   (new GetDetailViewModel()
                {
                    Id = model.AcademyId.ToString()
                }, Const.GetAcademy, ApiMethode.Post);

                if (res != null && res.statuse == true)
                {
                    Distination = $"{res.Data.Longtude},{res.Data.Latitude}";
                }
                string origin     = $"{model.Longtude},{model.Latitue}";
                var    navigation = await utils.GetNavigation(origin, Distination);

                if (navigation != null && navigation.code == "Ok")
                {
                    var dis = navigation.routes.FirstOrDefault().distance;
                    model.Distance = (((decimal)dis) / 1000);
                }
                var data = await ConnectApi.GetDataFromHttpClientAsync <ResultContract <string> >
                               (model, Const.RequsertService, ApiMethode.Post);

                if (data == null)
                {
                    return(Json(new ResultContract <int>()
                    {
                        statuse = false, message = "یافت نشد"
                    }));
                }
                return(Json(data));
            }
            else
            {
                return(Json(new ResultContract <int>()
                {
                    statuse = false, message = "اطلاعات ارسالی معتبر نبود"
                }));
            }
        }