auth(__FUNCTION__); return response()->json(PeriodoContabilService::create(), Response::HTTP_OK); } public function store(Request $request) { $this->auth(__FUNCTION__); return response()->json(PeriodoContabilService::store($request), Response::HTTP_CREATED); } public function destroy($id) { $this->auth(__FUNCTION__); PeriodoContabilService::destroy($id); return response()->noContent(); } public function datatable() { return datatables() ->of(PeriodoContabilService::datatable()) ->filterColumn('periodo_contabil.inicio', fn ($query, $keyword) => $query ->whereRaw("DATE_FORMAT(periodo_contabil.inicio, '%d/%m/%Y') like ?", ["%{$keyword}%"]) ->orWhereRaw( "CONCAT( SUBSTR(periodo_contabil.inicio, 9, 2), SUBSTR(periodo_contabil.inicio, 6, 2), SUBSTR(periodo_contabil.inicio, 1, 4) ) like ?", ["%{$keyword}%"] ) ) ->filterColumn('periodo_contabil.fim', fn ($query, $keyword) => $query ->whereRaw("DATE_FORMAT(periodo_contabil.fim, '%d/%m/%Y') like ?", ["%{$keyword}%"]) ->orWhereRaw( "CONCAT( SUBSTR(periodo_contabil.fim, 9, 2), SUBSTR(periodo_contabil.fim, 6, 2), SUBSTR(periodo_contabil.fim, 1, 4) ) like ?", ["%{$keyword}%"] ) ) ->skipTotalRecords() ->toJson(); } }