#laravel #laravel-8
Вопрос:
У меня есть система, в которой пользователь получает данные, отфильтрованные по критериям поиска пользователя, из документов таблицы базы данных и получает данные в таблице, в каждой строке которой есть контрольный список для каждой строки. Когда пользователь хочет передать запрос для дальнейшей обработки, он ставит галочки и отправляет запрос. Я хочу захватить эти запрошенные данные и сохранить их в другой таблице под названием платежи в той же базе данных.
Вот мое мнение
<form method="POST" >
@csrf
<button type="submit" formaction="original_po" name="submit" class="btn btn-success checklistpo">Request Payment</button>
<div class="table-responsive">
<table class="table custom-table">
<thead>
<tr>
<th scope="col" ></th>
<th scope="col" >S.N</th>
<th scope="col">LC NO</th>
<th scope="col">Applicant</th>
<th scope="col">Doc Value</th>
<th scope="col">Doc Received date</th>
<th scope="col">LC Type</th>
</tr>
</thead>
<tbody>
<?php $number = 1;?>
@foreach($datas as $items)
<tr>
<td><input type="checkbox" name="checkboxlist[]" value="{{$items->id}}" /></td>
<td>{{$number}}</td>
<td>{{$items->lc_no}}</td>
<td>{{$items->applicant}}</td>
<td>{{$items->doc_value}}</td>
<td>{{$items->rec_date}}</td>
<td>{{$items->sight_usance}}</td>
</tr>
<?php $number ; ?>
@endforeach
</tbody>
</table>
</div>
</form>
Вот контроллер
function original_list_request(Request $req){
$validate = Validator::make($req->all(), [
"checkboxlist" => "required|array"
]);
if ($validate->fails()) {
return redirect()->back()->with("errors", $validate->errors());
}
$payment_data = new Payment;
foreach ($req->checkboxlist as $list) {
$data = Doc::find($list);
$list= $payment_data->org_document_id;
$data->lc_no= $payment_data->lc_no;
$data->doc_value = $payment_data->payment_amount;
$data->Payment_status = "Payment Requested";
$payment_data->payment_type = "Original";
$payment_data->save();
$data->save();
}
}
моя схема документа
public function up()
{
Schema::create('docs', function (Blueprint $table) {
$table->id();
$table->string('lc_no')->nullable();
$table->string('nb_ref')->nullable();
$table->string('nego_bank')->nullable();
$table->string('doc_value')->nullable();
$table->string('applicant')->nullable();
$table->string('sight_usance')->nullable();
$table->string('sol_id')->nullable();
$table->string('con_lc')->nullable();
$table->date('rec_date')->nullable();
$table->string('bene')->nullable();
$table->string('email')->nullable();
$table->string('cur')->nullable();
$table->string('doclot')->nullable();
$table->string('check_staus')->nullable();
$table->string('doc_type')->nullable();
$table->string('cln_dis')->nullable();
$table->string('status')->nullable();
$table->date('maturity_date')->nullable();
$table->date('pmt_msg_date')->nullable();
$table->date('value_date')->nullable();
$table->date('settlement_date')->nullable();
$table->date('acceptance_date')->nullable();
$table->date('hold_date')->nullable();
$table->string('payment_status')->nullable();
$table->string('maturity_status')->nullable();
$table->string('entered_by')->nullable();
$table->string('verified_by')->nullable();
$table->string('doc_comment')->nullable();
$table->string('settlement_comment')->nullable();
$table->string('payment_comment')->nullable();
$table->string('treasury_comment')->nullable();
$table->string('hold_comment')->nullable();
$table->timestamps();
});
}
моя схема оплаты
public function up()
{
Schema::create('payments', function (Blueprint $table) {
$table->id();
$table->integer('org_document_id')->nullable();
$table->string('lc_no')->nullable();
$table->string('payment_amount')->nullable();
$table->string('payment_status')->nullable();
$table->string('payment_type')->nullable();
$table->string('msg_type')->nullable();
$table->string('other')->nullable();
$table->timestamps();
});
}
Комментарии:
1. можете ли вы указать, какую ошибку вы получаете в текущем коде
2. я не получаю ошибку, но не обновляюсь в таблице платежей @JohnLobo
3. foreach ($req->список флажков как $список) { $data = Doc::найти($список); $payment_data = новый платеж; $payment_data->>org_document_id=$данные->>>org_document_id; $payment_data->>>>lc_no= $данные->>>>>lc_no; $payment_data->>>>>значение документа = $данные->>>>>>>payment_amount; $payment_data->>>>>>>>Payment_status = «Запрошен платеж»; $payment_data->>>>>>>>>payment_type = «Оригинал»; $payment_data->>>>>>>>>>сохранить(); }
4. я только обновляю payment_type как исходный, но не получаю других данных, таких как lc_no и другие данные @JohnLobo
5. можете ли вы показать схему таблицы и объяснить, какое поле вы обновили при отправке. Также проверьте dd($request->все());