У меня есть форма заявки, текстовые данные которой хранятся в одной таблице. Допустим, таблица A (только одна запись). Вложения хранятся в таблице B, в которой есть несколько записей (поскольку пользователь может добавить несколько вложений), и на них ссылается номер приложения.
Я хочу отправить данные в виде ответа JSON, что Я делаю через пункт leftJoin. Я заметил, что данные из таблицы A циклически повторяются до тех пор, пока не будет использована таблица B.
JSON sample:
{
"id": 1,
"BR_ID": 5,
"ClientID": 237,
"SLT_CODE": 12,
"PURPOSE": 1,
"PAMT": "100,000.00",
"TERMS": 36,
"PPMT_MODE": 4,
"PPMT_MFAC": 0,
"PPMT_MOD2": 4,
"INT_RATE": 12,
"PEN_RATE": 24,
"OL_TEMP_APP_NO": "04152020566167",
"APPLICATION_NO": null,
"ActivityListID": 1,
"DateRequested": "2020-04-15 14:22:36",
"DateApproved": null,
"ClientRemarks": "Every fight needs mending\nEvery start has an end\nLike the sunrise and the sunset\nThat's just how it is",
"FilePath": "C:\\Users\\Personal\\laravel\\storage\\app\\public\\documents\\04152020566167.20200221_141512.jpg",
"AttachmentName": "04152020566167.20200221_141512.jpg",
"created_at": null,
"updated_at": null
}
В основном все данные по l oop то же самое, за исключением "FilePath"
и "AttachmentName"
, поскольку они являются данными из таблицы B.
В любом случае я могу структурировать свой JSON ответ следующим образом:
{
"id": 1,
"BR_ID": 5,
"ClientID": 237,
"SLT_CODE": 12,
"PURPOSE": 1,
"PAMT": "100,000.00",
"TERMS": 36,
"PPMT_MODE": 4,
"PPMT_MFAC": 0,
"PPMT_MOD2": 4,
"INT_RATE": 12,
"PEN_RATE": 24,
"OL_TEMP_APP_NO": "04152020566167",
"APPLICATION_NO": null,
"ActivityListID": 1,
"DateRequested": "2020-04-15 14:22:36",
"DateApproved": null,
"ClientRemarks": "Every fight needs mending\nEvery start has an end\nLike the sunrise and the sunset\nThat's just how it is",
"Attachments":
[
{
"FilePath": "C:\\Users\\Personal\\laravel\\storage\\app\\public\\documents\\04152020566167.20200221_141512.jpg",
"AttachmentName": "04152020566167.20200221_141512.jpg",
},
{
"FilePath": "C:\\Users\\Personal\\laravel\\storage\\app\\public\\documents\\04152020566167.20200228_170949.jpg",
"AttachmentName": "04152020566167.20200228_170949.jpg"
}
]
"created_at": null,
"updated_at": null
}
Это мой запрос:
$newLoans = Loans::
where('tblloanapp.ActivityListID', 1)
->leftJoin('tblattachments', 'tblattachments.OL_TEMP_APP_NO', '=', 'tblloanapp.OL_TEMP_APP_NO')
->get();
return response()->json($newLoans);