1.(Datepicker) คำถามจะลดค่า Previousyear ของ '$DateStart' AND '$DateEnd' ลงได้อย่างไร โดยส่งมาจากฟอร์มเดียวกัน
สมมุติเลือกข้อมูลปี BETWEEN 2018-01-01 AND 2018-01-31 ข้อมูลของ Previousyear ต้องลดลง 1 ปี เป็น BETWEEN 2017-01-01 AND 2017-01-31
ส่วน Currentyear ก็รับค่ามาแสดง list รายการตามปกติ
ค่าปีที่ลดจะเอามาแสดงส่วนที่เป็น กราฟ เพราะต้องการเปรียบเทียบ กราฟคนละปี เดือนเดียวกัน
Code (PHP)
public function show(Request $request) {
$DateStart = $request->DateStart;
$DateEnd = $request->DateEnd;
$nowyear = date('Y');
$startyear = 2017;
$bargraph = DB::select("
SELECT * FROM
(SELECT count(tbmaster.id) as Previousyear
FROM TB_INFO tbinfo
LEFT JOIN TB_MASTER tbmaster
ON tbinfo.id = tbmaster.id
LEFT JOIN TB_NAME tbname
ON tbinfo.id = tbname.id
WHERE tbinfo.datetime is not null
AND tbinfo.datetime BETWEEN '$DateStart' AND '$DateEnd' // ลดค่าลง 1 ปี BETWEEN 2017-01-01 AND 2017-01-31
AND tbmaster.CancleCode is not null
AND tbmaster.CancleCode in ('10','20')
AND tbname.suff ='1'
) as Y1,
(SELECT Count(tbmaster.id) as Currentyear
FROM TB_INFO tbinfo
LEFT JOIN TB_MASTER tbmaster
ON tbinfo.id = tbmaster.id
LEFT JOIN TB_NAME tbname
ON tbinfo.id = tbname.id
WHERE tbinfo.datetime is not null
AND tbinfo.datetime BETWEEN '$DateStart' AND '$DateEnd' //รับค่าจากฟอร์มปีปัจจุบัน BETWEEN 2018-01-01 AND 2018-01-31
AND tbmaster.CancleCode is not null
AND tbmaster.CancleCode in ('10','20')
AND tbname.suff ='1'
) as Y2 ");
//dd($bargraph);
return view('myview')->with(['bargraph' => $bargraph, 'nowyear' => $nowyear, 'startyear' => $startyear]);
}