Как сохранить данные массива в JSON с помощью контроллера LARAVEL - PullRequest
0 голосов
/ 26 марта 2019

Я хочу сохранить эти данные, сгенерированные представлением create.blade.php,

после того, как я нажму кнопку отправки, вывод журнала консоли будет выглядеть как код ниже


    {
  "kode_trx": "PO-2019030004",
  "no_po": "0005/DIN/III/2019",
  "pic_po": "Carlo Donadini",
  "pic_telp": "+39438778020",
  "top": "RRRRR",
  "supplier_id": "1",
  "delivery_date": "28-03-2019",
  "created_by_id": "1",
  "total_barang": "7",
  "grand_total": "122500000",
  "tb_detail_po": [
    [
      "BRG-2019030004",
      "Electric Deep Fryer",
      "SC-81",
      "290",
      "440",
      "310",
      "4",
      "17500000",
      "70000000",
      "  ",
      "4",
      "PO-2019030004",
      "0005/DIN/III/2019",
      "1",
      "5"
    ],
    [
      "BRG-2019030004",
      "Electric Deep Fryer",
      "SC-81",
      "290",
      "440",
      "310",
      "3",
      "17500000",
      "52500000",
      "  ",
      "4",
      "PO-2019030004",
      "0005/DIN/III/2019",
      "1",
      "5"
    ]
  ]
}

так что я хочу сохранить его в 2 разных таблицы, таблицы покупок и purchase_details

как мне предположить написать мой код в POController в хранилище методов? ???

Ответы [ 3 ]

0 голосов
/ 26 марта 2019

Вы можете хранить данные в таблице purchase, как показано ниже

class POController extends Controller
{
    public function store(Request $request)
    {
        $purchase = Purchase::create([
            "id_penerimaan" => $request->no_nota,
            "id_customer" => $request->customer,
            "id_karyawan" => $request->karyawan,
            "tgl_penerimaan" => \Carbon\Carbon::now()->format('Y-m-d H:i:s'),            
        ]);

        return $purchase;
    }
}

А для таблицы purchase_details, если вы используете Наблюдатель , это было бы здорово

Пример Обозревателя:

class UserObserver
{
    public function created(Purchase $purchase)
    {
        if (request()->tb_detail_po) {
            foreach(request()->tb_detail_po as $detail) {
                PurchaseDetail::create([
                    'id_purchase' => $purchase->id,
                    'id_penerimaan' => request()->no_nota,
                    'id_karyawan' => $detail[9],
                    'id_kategori' => $detail[8],
                    'sn_barang' => $detail[1],
                    'nama_barang' => $detail[0],
                    'kelengkapan' => $detail[2],
                    'keluhan' => $detail[3],
                    'id_garansi' => $detail[10],
                    'id_status' => '1',
                    'kondisi' => '1'
                ]);
            }
        }
    }
}
0 голосов
/ 26 марта 2019
Try to use **JSON_DECODE($data)** OR **JSON_ENCODE($data)**
0 голосов
/ 26 марта 2019
$result = $request->all();
$created = Your Model::create([Your Data For Table 1]);
if($created) {
   foreach($request->tb_detail_po as $details) {
      Your Model2::create([Your Detail Data For Table 2]);
   }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...