විකුණුම් වාර්තා සහ Eloquent Queries
සාමාන්ය දත්ත ලබාගැනීමෙන් ඔබ්බට ගොස්, Eloquent Query Builder හි aggregate (`sum`, `count`, `avg`) සහ filtering (`where`, `whereBetween`) methods භාවිතයෙන්, සංකීර්ණ දත්ත විශ්ලේෂණයක් සිදුකර, අර්ථවත් විකුණුම් වාර්තා නිර්මාණය කිරීමට ඉගෙන ගැනීම.
Eloquent ORM මගින් සරල දත්ත ලබාගැනීම් වලට අමතරව, සංකීර්ණ SQL විමසුම් (queries) ලිවීමට අවශ්ය සියලුම පහසුකම් සපයයි. වාර්තා ජනනය කිරීමේදී, දත්ත පෙරීම (filtering), කාණ්ඩ කිරීම (grouping), සහ සමූහ ශ්රිත (aggregates) යෙදීම අත්යවශ්ය වේ.
where('column', 'operator', 'value'): නිශ්චිත කොන්දේසියකට අනුව දත්ත පෙරීම.whereBetween('column', [start, end]): දින හෝ අගයන් පරාසයකට අනුව දත්ත පෙරීම.with('relationship'): N+1 ගැටළුව විසඳීමට Eager Loading.latest() / oldest(): දිනයට අනුව දත්ත පිළිවෙල කිරීම.sum('column'), count(), avg('column'): සමූහ ශ්රිත (Aggregates).වාර්තා පිටුව සඳහා අපට වෙනම Controller එකක් (`ReportController`) සහ Route එකක් නිර්මාණය කළ හැක. පරිශීලකයා විසින් සපයන දින පරාසය (`start_date`, `end_date`) Request එකෙන් ලබාගෙන, එම දත්ත අනුව Eloquent query එක ගොඩනැගිය යුතුය.
පියවර 1: `ReportController` සහ Route සෑදීම
Command Prompt එකේ පහත විධානය ක්රියාත්මක කරන්න:
`routes/web.php` ගොනුවේ, මෙම controller එකේ `index` method එකට යොමුවන නව route එකක් සාදන්න.
පියවර 2: Controller Logic එක සම්පූර්ණ කිරීම
ඉහත උදාහරණයේ පෙන්වා ඇති පරිදි, `ReportController` හි `index` method එක තුළ, request එකෙන් එන දින පරාසයට අදාළ විකුණුම් (`Sales`) දත්ත ලබාගෙන, මුළු ආදායම (`totalRevenue`) ගණනය කර, එම දත්ත view එකට යැවීමට කේතය ලියන්න.
පියවර 3: වාර්තා සඳහා View එක (`reports/index.blade.php`) සෑදීම
`resources/views/reports/` ෆෝල්ඩරය තුළ `index.blade.php` නමින් නව ගොනුවක් සාදන්න. මෙම ගොනුව තුළ පහත අංග ඇතුළත් විය යුතුය:
මෙම පිටුව නිර්මාණය කිරීමෙන් පසු, ඔබට ඕනෑම කාල සීමාවකට අදාළ විකුණුම් දත්ත පහසුවෙන් විශ්ලේෂණය කර, ව්යාපාරය පිළිබඳව වැදගත් තොරතුරු ලබාගත හැකි වනු ඇත.