Paradox
1 سال پیش توسط Paradox مطرح شد
0 پاسخ

غیرفعال کردن آیتم در پنل مدیریت

سلام وقت بخیر من میخام یه بخش تو پنل مدیریت ، قابلیت فعال و غیرفعال کردن منطقه ها رو اضافه کنم
از طریق ایجکس استان و شهر و منطقه رو نمایش میدم
حالا میخام اگه مثلا شهر تهران انتخاب شد تمام منطقه های مربوط به شهر تهران رو تو دیتابیس غیرفعال کنم یا بالعکس اگه غیرفعال هست بتونم فعال کنم
برای اینکار یه فیلد به جدول منطقه اضافه کردم

            $table->tinyInteger('status')->default(1);

حالا میخام بگم وقتی استان و شهر انتخاب شد دکمه فعال و غیرفعال سازی منطقه باشه مثل عکس زیر
مثل این

تو ایجکس برای منطقه به شکل زیر نوشتم ولی خب فقط دکمه غیرفعال میشه و نمیدونم چطوری بگم status تمام منطقه های یک شهر رو برابر با صفر کنه تو دیتابیس

 $('#city-dropdown').on('change', function () {
            var idCity = this.value;
            $("#region-dropdown").html('');
            $.ajax({
                url: "{{url('admin/locations/fetch-regions')}}",
                type: "POST",
                data: {
                    city_id: idCity,
                    _token: '{{csrf_token()}}'
                },
 dataType: 'json',
                success: function (res) {
                    $('#region-dropdown').html('<option value="status">غیرفعال</option>');
                    $.each(res.regions, function (key, value) {
                        // $("#region-dropdown").append('<option value="' + value
                        //     .id + '">' + value.status + '</option>');

                            // $("#region-dropdown").attr("disabled", false);

                            $("#region-dropdown").click(function() {
                            $('#region-dropdown').html('<option value="status">غیرفعال</option>').attr("disabled", true);

                            $.ajax({
                                url: '/location/fetch-regions',
                                data: { 
                                    action: 'viewRekonInfo'
                                },
                                type: 'post',
                                success: function(response){
                                    //success process here
                                    $("#alertContainer").delay(1000).fadeOut(800);

                                    $("#region-dropdown").attr("disabled", false);
                                },
                                error: errorhandler,
                                dataType: 'json'
                            });
                        });

                    });
                }

تو کنترلر هم به این شکل نوشتم حتی که روی دکمه ثبت کلیک شد برابر با صفر بشه ولی جواب نگرفتم

       $request->validate([
            'province' => 'required',
            'city' => 'required',
            'region' => '',
            'status' => ''
        ]);

        if (Region::where('city_id', $request->city)->count() > 0)
        {
            if ($request->region == 'status') {

                Region::updated([
                    'status' => 0
                ]);

            } else {

                $region = Region::where('city_id', $request->city)->get();
            }

        } else {
            return redirect(route('locations'));
        }

        return redirect(route('locations'));

ثبت پرسش جدید

به همدیگه کمک کنیم

به Paradox کمک کنید تا مشکل خودش را حل کند؛ این‌طور می‌توانیم با هم پیشرفت کنیم.

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام