<?php
 namespace VnChocola\Module\Master\MasterCarcompartments;
 use TCMS\Controller;
 use Model;
 use VnChocola\Model\CarCompartmentsModel;
 class IndexController extends Controller {
 public function index() {
 return view();
 }
 public function create() {
 return view();
 }
 private function getBranchIdByGroup(CarCompartmentsModel $model) {
 if(!$model->group) return 'Vui lòng chọn nhóm khoang';
 $groupModel = Model::load('CarCompartmentGroupModel');
 $group = $groupModel->find($model->group);
 if(!$group) return 'Không tìm thấy nhóm khoang';
 $model->branchID = $group->branchID;
 }
 public function postCreate(CarCompartmentsModel $model) {
 if($model->isValid()) {
 $msg = $this->getBranchIdByGroup($model);
 if($msg) {
 view()->addFlashMessage($msg, 'error');
 }
 else {
 if($model->save()) return route_redirect('create', 'Thêm thành công');
 view()->addFlashMessage('Thêm thất bại', 'error');
 }
 }
 return view($model);
 }
 public function update($id) {
 $model = Model::load('CarCompartmentsModel');
 $data = $model->find($id);
 if(!$data) return route_redirect('index', 'Id không tồn tại', 'error');
 return view($data);
 }
 public function postUpdate(CarCompartmentsModel $model) {
 if($model->isValid()) {
 $msg = $this->getBranchIdByGroup($model);
 if($msg) {
 view()->addFlashMessage($msg, 'error');
 }
 else {
 if($model->save()) return route_redirect('index', 'Cập nhật thành công');
 view()->addFlashMessage('Cập nhật thất bại', 'error');
 }
 }
 return view($model);
 }
 public function postDelete() {
 $id = \Request::get('data');
 $model = Model::load('CarCompartmentsModel');
 $isSuccess = $model->delete($id);
 if(\Request::isAjax()) return json(['success' => $isSuccess, 'message' => $isSuccess ? 'Xóa thành công' : 'Xóa thất bại']);
 return route_redirect('index', $isSuccess ? 'Xóa thành công' : 'Xóa thất bại');
 }
 }
