在控制器Laravel5.7中运行存储功能之前检查下拉列表的选定值

问题描述 投票:0回答:1

我在商店中有不同的情况,我有三个输入(客户名称-公司名称-代理商名称),并且如果[],则下拉菜单名为(payment_type)>

情况:付款类型为(现金),所需值为客户名称,(公司名称-代理商名称)必须为空

案例:付款类型为(贷方),所需值为公司名称,(客户名称-代理商名称)必须为空

案例:付款类型为(待定),所需值为代理商名称,(客户名称-公司名称)必须为空

我的问题是控制器内的if语句不起作用

这是我的控制器代码:

 if ( Input::has('payment_type') == 'cash') {

        $this->validate($request,[
            'tkt_no'=>'required',
            'sector'=>'required',
            'airline'=>'required',
            'supplier'=>'required',
            'fare'=>'required',
            'tax'=>'required',
            'total_vat'=>'required',
            'total_cost'=>'required',
            'k7'=>'required',
            'comm'=>'required',
            'profit'=>'required',
            'sale_price'=>'required',
            'pax_name'=>'required',
            'client'=>'required',
            'mob'=>'required',
            'amount_arabic'=>'required',
            'amount_english'=>'required',
            'action_type'=>'required',
            'trans_type'=>'required',
            'payment_type'=>'required',
        ]);

        $ticket = new Ticket();
        $ticket->date = Carbon::now();
        $ticket->pnr = $request->get('pnr');
        $ticket->tkt_no = $request->get('tkt_no');
        $ticket->sector = $request->get('sector');
        $ticket->airline = $request->get('airline');
        $ticket->supplier = $request->get('supplier');
        $ticket->fare = $request->get('fare');
        $ticket->tax = $request->get('tax');
        $ticket->total_vat = $request->get('total_vat');
        $ticket->total_cost = $request->get('total_cost');
        $ticket->k7 = $request->get('k7');
        $ticket->comm = $request->get('comm');
        $ticket->profit = $request->get('profit');
        $ticket->sale_price = $request->get('sale_price');
        $ticket->sign = Auth::user()->shortsign;
        $ticket->branch =Auth::user()->branch_id;
        $ticket->pax_name = $request->get('pax_name');
        $ticket->client = $request->get('client');
        $ticket->agent = null;
        $ticket->company = null;
        $ticket->mob = $request->get('mob');
        $ticket->amount_arabic = $request->get('amount_arabic');
        $ticket->amount_english = $request->get('amount_english');
        $ticket->action_type = $request->get('action_type');
        $ticket->trans_type = $request->get('trans_type');
        $ticket->payment_type = $request->get('payment_type');
        $ticket->post_flag = '0';
        $ticket->save();

        session()->flash('success',__('site.added_successfully'));
        return redirect()->route('tickets.index');

    } else if( Input::has('payment_type') == 'credit'){

        $this->validate($request,[
            'tkt_no'=>'required',
            'sector'=>'required',
            'airline'=>'required',
            'supplier'=>'required',
            'fare'=>'required',
            'tax'=>'required',
            'total_vat'=>'required',
            'total_cost'=>'required',
            'k7'=>'required',
            'comm'=>'required',
            'profit'=>'required',
            'sale_price'=>'required',
            'pax_name'=>'required',
            'company'=>'required',
            'mob'=>'required',
            'amount_arabic'=>'required',
            'amount_english'=>'required',
            'action_type'=>'required',
            'trans_type'=>'required',
            'payment_type'=>'required',
        ]);

        $ticket = new Ticket();
        $ticket->date = Carbon::now();
        $ticket->pnr = $request->get('pnr');
        $ticket->tkt_no = $request->get('tkt_no');
        $ticket->sector = $request->get('sector');
        $ticket->airline = $request->get('airline');
        $ticket->supplier = $request->get('supplier');
        $ticket->fare = $request->get('fare');
        $ticket->tax = $request->get('tax');
        $ticket->total_vat = $request->get('total_vat');
        $ticket->total_cost = $request->get('total_cost');
        $ticket->k7 = $request->get('k7');
        $ticket->comm = $request->get('comm');
        $ticket->profit = $request->get('profit');
        $ticket->sale_price = $request->get('sale_price');
        $ticket->sign = Auth::user()->shortsign;
        $ticket->branch =Auth::user()->branch_id;
        $ticket->pax_name = $request->get('pax_name');
        $ticket->client = null;
        $ticket->agent = null;
        $ticket->company = $request->get('company');
        $ticket->mob = $request->get('mob');
        $ticket->amount_arabic = $request->get('amount_arabic');
        $ticket->amount_english = $request->get('amount_english');
        $ticket->action_type = $request->get('action_type');
        $ticket->trans_type = $request->get('trans_type');
        $ticket->payment_type = $request->get('payment_type');
        $ticket->post_flag = '0';
        $ticket->save();

        session()->flash('success',__('site.added_successfully'));
        return redirect()->route('tickets.index');

    }else if( Input::has('payment_type') == 'pending'){

        $this->validate($request,[
            'tkt_no'=>'required',
            'sector'=>'required',
            'airline'=>'required',
            'supplier'=>'required',
            'fare'=>'required',
            'tax'=>'required',
            'total_vat'=>'required',
            'total_cost'=>'required',
            'k7'=>'required',
            'comm'=>'required',
            'profit'=>'required',
            'sale_price'=>'required',
            'pax_name'=>'required',
            'agent'=>'required',
            'mob'=>'required',
            'amount_arabic'=>'required',
            'amount_english'=>'required',
            'action_type'=>'required',
            'trans_type'=>'required',
            'payment_type'=>'required',
        ]);

        $ticket = new Ticket();
        $ticket->date = Carbon::now();
        $ticket->pnr = $request->get('pnr');
        $ticket->tkt_no = $request->get('tkt_no');
        $ticket->sector = $request->get('sector');
        $ticket->airline = $request->get('airline');
        $ticket->supplier = $request->get('supplier');
        $ticket->fare = $request->get('fare');
        $ticket->tax = $request->get('tax');
        $ticket->total_vat = $request->get('total_vat');
        $ticket->total_cost = $request->get('total_cost');
        $ticket->k7 = $request->get('k7');
        $ticket->comm = $request->get('comm');
        $ticket->profit = $request->get('profit');
        $ticket->sale_price = $request->get('sale_price');
        $ticket->sign = Auth::user()->shortsign;
        $ticket->branch =Auth::user()->branch_id;
        $ticket->pax_name = $request->get('pax_name');
        $ticket->client = null;
        $ticket->agent = $request->get('agent');
        $ticket->company = null;
        $ticket->mob = $request->get('mob');
        $ticket->amount_arabic = $request->get('amount_arabic');
        $ticket->amount_english = $request->get('amount_english');
        $ticket->action_type = $request->get('action_type');
        $ticket->trans_type = $request->get('trans_type');
        $ticket->payment_type = $request->get('payment_type');
        $ticket->post_flag = '0';
        $ticket->save();

        session()->flash('success',__('site.added_successfully'));
        return redirect()->route('tickets.index');

    }

这是我的刀片文件代码:

 <div class="form-group col-md-2">
                                    <label>@lang('site.payment_type')</label>
                                    <select class="form-control select2 status-type" style="width: 100%;"
                                            name="payment_type"
                                            onchange="showresult(this.value)"
                                            id="payment_type">
                                        <option selected value="cash">@lang('site.cash')</option>
                                        <option value="credit">@lang('site.credit')</option>
                                        {{--                                            <option value="advance">@lang('site.advance')</option>--}}
                                        <option value="pending">@lang('site.pending')</option>
                                    </select>
                                </div>
                                <div id="pax_name_div" class="col-md-3">
                                    <div class="form-group">
                                        <label for="pax_name">@lang('site.pax_name')</label>
                                        <div class="position-relative has-icon-left">
                                            <input type="text" id="pax_name" class="form-control"
                                                   name="pax_name"
                                                   value="{{ old('pax_name') }}" >
                                            <div class="form-control-position">
                                                <i  class="la la-keyboard-o"></i>
                                            </div>
                                        </div>
                                    </div>
                                </div>

                                <div id="company_div" style="display: none" class="form-group col-md-3">
                                    <label >@lang('site.company_name')</label>
                                    <select class="form-control select2 status-type" style="width: 100%;"
                                            name="company"
                                            id="company">
                                        @foreach ($companies as $company)
                                            <option value="{{ $company->id }}">{{ $company->name }}</option>
                                        @endforeach
                                    </select>
                                </div>

                                <div id="agent_div" style="display: none" class="form-group col-md-3">
                                    <label >@lang('site.agent_name')</label>
                                    <select class="form-control select2 status-type" style="width: 100%;"
                                            name="agent"
                                            id="agent">
                                        @foreach ($agents as $agent)
                                            <option value="{{ $agent->id }}">{{ $agent->name }}</option>
                                        @endforeach
                                    </select>
                                </div>


                                <div id="client_div" style="display: block" class="col-md-3">
                                    <div class="form-group">
                                        <label for="client">@lang('site.client_name')</label>
                                        <div class="position-relative has-icon-left">
                                            <input type="text" id="client" class="form-control"
                                                   name="client"
                                                   value="{{ old('client') }}">
                                            <div class="form-control-position">
                                                <i class="la la-keyboard-o"></i>
                                            </div>
                                        </div>
                                    </div>
                                </div>

您能帮我吗?

我在商店中有不同的案例,如果案例:付款类型为(现金)值是客户名称和(...],则我有三个输入(客户名称-公司名称-代理名称),并且下拉菜单名为(payment_type)。] >

这是因为您正在使用:

如果(Input :: has('payment_type')

=='现金')

has('field')返回布尔值,因此请尝试像这样进行获取:

Input::get('payment_type') == 'cash'
laravel
1个回答
0
投票

这是因为您正在使用:

© www.soinside.com 2019 - 2024. All rights reserved.