public function index() { if (Auth::check()) { $user_id = Auth::user()->id; $colonia = Session::get("colonia"); //obtener el rol que desempeña en la colonia $rol_id = AssigmentRole::where('user_id', '=', $user_id)->where('colony_id', '=', $colonia)->pluck('role_id'); Session::put("rol_usuario", $rol_id); $permisos = array(); $permisos = DB::table('permission_role')->where("role_id", "=", $rol_id)->select("permission_role.id", "permission_role.state")->orderBy("permission_role.id")->get(); Session::put("dato", $permisos); $urbanism = Urbanism::where('colony_id', '=', $colonia)->first(); $urbanismo = $urbanism->id; $urb_name = $urbanism->Colony->name; $breadcrumbs = Neighbors::where('user_id', '=', $user_id)->first(); $breadcrumbs_data = $breadcrumbs->name . " " . $breadcrumbs->last_name . " [ " . $urb_name . " ]"; $Total = DB::table('neighbors_properties')->select(DB::raw('Count(neighbors_properties.id) as total'))->where('neighbors_properties.urbanism_id', '=', $urbanismo)->get(); $Total = $Total[0]->total; $PorAceptar = DB::table('invited_neighbors')->select(DB::raw('count(invited_neighbors.id) as porAceptar'))->where('invited_neighbors.confirmed', '=', 0)->where('invited_neighbors.urbanism_id', '=', $urbanismo)->get(); $PorAceptar = $PorAceptar[0]->porAceptar; $Aceptadas = DB::table('invited_neighbors')->select(DB::raw('count(invited_neighbors.id) as Aceptadas'))->where('invited_neighbors.confirmed', '=', 1)->where('invited_neighbors.urbanism_id', '=', $urbanismo)->get(); $Aceptadas = $Aceptadas[0]->Aceptadas; $ano = date("Y"); $monthly_all = MonthlyFee::where('monthly_fee.urbanism_id', '=', $urbanismo)->where(DB::raw('DATE_FORMAT(monthly_fee.since,\'%Y\')'), '=', $ano)->get(); $months = array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Decem"); $cuotas = array(); foreach ($monthly_all as $cuota_mensual) { $ini = (int) date("m", strtotime($cuota_mensual->since)); $fin = (int) date("m", strtotime($cuota_mensual->until)); if ($cuota_mensual->until == NULL) { $fin = (int) date("m"); } for ($i = $ini; $i <= $fin; $i++) { $cuotas[$months[$i - 1]] = $cuota_mensual->amount; } } $j = (int) date("m"); $monthly_fee = $cuotas[$months[$j - 1]]; $mes = date("M"); $pagoMensual = PaymentStates::join('neighbors_properties', 'payment_states.neighbor_property_id', '=', 'neighbors_properties.id')->where($mes, '>=', $monthly_fee)->where('neighbors_properties.urbanism_id', '=', $urbanismo)->select(DB::raw('count(neighbors_properties.id) as cant'))->get(); if ($pagoMensual) { $pagoMensual = $pagoMensual[0]->cant; } else { $pagoMensual = 0; } $Egresos = Expense::join('sub_accounts', 'expenses.sub_account_id', '=', 'sub_accounts.id')->where('expenses.urbanism_id', '=', $urbanismo)->select(DB::raw('sum(expenses.amount) as amount'), 'sub_accounts.description')->groupBy('sub_accounts.description')->get(); $Ingresos = Payment::join('sub_accounts', 'payments.sub_account_id', '=', 'sub_accounts.id')->join('neighbors_properties', 'payments.neighbor_property_id', '=', 'neighbors_properties.id')->where('neighbors_properties.urbanism_id', '=', $urbanismo)->select(DB::raw('sum(payments.amount) as amount'), 'sub_accounts.description')->groupBy('sub_accounts.description')->get(); $EgresosMensual = Expense::where('expenses.urbanism_id', '=', $urbanismo)->select(DB::raw('sum(expenses.amount) as amount'), DB::raw('DATE_FORMAT(expenses.created_at,\'%m\') as mes'))->groupBy(DB::raw('Month(expenses.created_at)'))->get(); $IngresosMensual = Payment::join('neighbors_properties', 'payments.neighbor_property_id', '=', 'neighbors_properties.id')->where('neighbors_properties.urbanism_id', '=', $urbanismo)->select(DB::raw('sum(payments.amount) as amount'), DB::raw('DATE_FORMAT(payments.created_at,\'%m\') as mes'))->groupBy(DB::raw('Month(payments.created_at)'))->get(); return View::make('dashboard.home', ['Total' => $Total, 'PorAceptar' => $PorAceptar, 'Aceptadas' => $Aceptadas, 'monthly_fee' => $monthly_fee, 'pagoMensual' => $pagoMensual, 'Egresos' => $Egresos, 'Ingresos' => $Ingresos, 'EgresosMensual' => $EgresosMensual, 'IngresosMensual' => $IngresosMensual, 'Nombre' => $breadcrumbs_data]); } else { return Redirect::action('UsersController@login'); } }
public function confirm($code) { $confirm = InvitedNeighbors::where('Confirmation_code', '=', $code)->first(); if (!$confirm->confirmed) { //$confirm->confirmed = true; //$confirm->update(['id']); $email = $confirm->email; $urbanism_id = $confirm->urbanism_id; $colony = Urbanism::where('id', '=', $urbanism_id)->pluck('colony_id'); $expiration = Expiration::where('colony_id', '=', $colony)->first(); $datetime2 = new DateTime($expiration->expiration); $datetime1 = new DateTime(date('Y-m-d')); $interval = $datetime1->diff($datetime2); $days_expiration = $interval->format('%a'); Session::put('days_expiration', $days_expiration); $usuario = UserNeighbors::where('email', '=', $email)->first(); if ($usuario) { $rol_vecino = AssigmentRole::where('colony_id', '=', $colony)->where('user_id', '=', $usuario->id)->where('role_id', '=', 6)->first(); if ($rol_vecino) { $notice_msg = 'Ya se encuentra como vecino en la Colonia, acceda ahora a Habitaria'; return Redirect::action('UsersController@login')->with('notice', $notice_msg); } else { $neighbor = Neighbors::where('user_id', '=', $usuario->id)->first(); if ($neighbor) { $neighborP = NeighborProperty::where('neighbors_id', '=', $neighbor->id)->where('urbanism_id', '=', $urbanism_id)->first(); if (!$neighborP) { return Redirect::action('NeighborController@register_properties', array('neighbor' => $neighbor->id, 'urbanism_id' => $urbanism_id)); } } else { return Redirect::action('NeighborController@register_neighbors', array('user' => $usuario->id, 'urbanism_id' => $urbanism_id)); } } } else { $urbanism = Urbanism::findOrFail($urbanism_id); $urbanism_name = $urbanism->name; $urbanism_type = $urbanism->urbanism_type_id; if ($urbanism_type == 3) { $catalog = BuildingCatalog::where('urbanism_id', '=', $urbanism_id)->orderBy('id', 'ASC')->lists('description', 'id'); $select = '¿Piso donde vive?'; $select_name = 'name_floor'; } else { $catalog = StreetCatalog::where('urbanism_id', '=', $urbanism_id)->orderBy('id', 'ASC')->lists('name', 'id'); $select = '¿Calle donde vive?'; $select_name = 'name_street'; } $notice_msg = Lang::get('confide::confide.alerts.confirmation_invitation'); return View::make('dashboard.neighbors.create', ['email' => $email, 'urbanism' => $urbanism_name, 'urbanism_id' => $urbanism_id, 'urbanism_type' => $urbanism_type, 'catalog' => $catalog, 'code' => $code, 'select_name' => $select_name, 'select' => ['' => $select], 'notice' => $notice_msg]); } } else { $notice_msg = 'Acceda a Habitaria con su usuario creado'; return Redirect::action('UsersController@login')->with('notice', $notice_msg); } }
public function profile() { $neighbor_id = Auth::user()->id; $colonia = Session::get("colonia"); $urbanismUsers = Urbanism::where('colony_id', '=', $colonia)->first(); $neighbor = Neighbors::with('NeighborProperty')->where('user_id', '=', $neighbor_id)->first(); $role = AssigmentRole::where('user_id', '=', $neighbor_id)->where('colony_id', '=', $colonia)->first(); $neighbor_role = ucfirst($role->Role->name); $licencia = License::where('colony_id', '=', $colonia)->first(); $expiration_license = LicenseExpiration::where('colony_id', '=', $colonia)->first(); $photo_user = UserPhoto::where('user_id', '=', $neighbor_id)->where('colony_id', '=', $colonia)->pluck('filename'); return View::make('dashboard.neighbors.profile', ['neighbor' => $neighbor, 'colonia_nombre' => $urbanismUsers->Colony->name, 'urbanism' => $urbanismUsers->Colony->name, 'role' => $neighbor_role, 'licencia' => $licencia, 'photo_user' => $photo_user, 'expiration_license' => $expiration_license]); }
public function profile() { $user_id = Auth::user()->id; $user_data = Data_users::where('user_id', '=', $user_id)->first(); $role = AssigmentRole::where('user_id', '=', $user_id)->first(); $user_role = ucfirst($role->Role->name); return View::make('users.profile', ['role' => $user_role, 'user' => $user_data]); }
public function config_store() { $user_id = Auth::user()->id; $num_street_id = NULL; $num_floor_id = NULL; $data = Input::all(); $name_floor = Input::get('name_floor'); $name_street = Input::get('name_street'); //~====================SAVE STEP 1=============================== $colony = new Colony(); $colony->location_id = Input::get('city'); $colony->name = Input::get('colony_name'); if ($colony->save()) { $created_colony = date('Y-m-j', strtotime($colony->created_at)); $newExpiration = strtotime('+1 month', strtotime($created_colony)); $newExpiration = date('Y-m-j', $newExpiration); $expiration = new Expiration(); $expiration->colony_id = $colony->id; $expiration->expiration = $newExpiration; $expiration->status = 1; $expiration->save(); $expiration_lic = new LicenseExpiration(); $expiration_lic->colony_id = $colony->id; $expiration_lic->expiration = null; $expiration_lic->save(); $datetime2 = new DateTime($expiration->expiration); $datetime1 = new DateTime(date('Y-m-d')); $interval = $datetime1->diff($datetime2); $days_expiration = $interval->format('%a'); Session::put('days_expiration', $days_expiration); $role = AssigmentRole::where('user_id', '=', $user_id)->where('role_id', '=', 2)->where('colony_id', '=', 0)->first(); if ($role) { $rol = AssigmentRole::findOrFail($role->id); $rol->colony_id = $colony->id; $rol->update(['id']); } else { $rol = new AssigmentRole(); $rol->user_id = $user_id; $rol->role_id = 2; $rol->colony_id = $colony->id; $rol->save(); } } $last_colony_add = $colony->id; $urbanism = new Urbanism(); $urbanism->colony_id = $last_colony_add; $urbanism->urbanism_type_id = Input::get('urbanism_type'); //$urbanism->name = Input::get('urbanism_name'); $urbanism->save(); $last_urbanism_add = $urbanism->id; $user_id = Auth::user()->id; $neighbor = Neighbors::where('user_id', '=', $user_id)->pluck('id'); if (!$neighbor) { $admin_colonies = new Neighbors(); $admin_colonies->user_id = $user_id; $admin_colonies->name = Input::get('admin_name'); $admin_colonies->last_name = Input::get('admin_lname'); $admin_colonies->phone = Input::get('admin_phone'); $admin_colonies->save(); $last_adminColonies_add = $admin_colonies->id; } if ($neighbor) { $last_adminColonies_add = $neighbor; } $streets = $data['streets']; if ($urbanism->urbanism_type_id == 3) { foreach ($streets as $Building_name) { $Building = new BuildingCatalog(); $Building->urbanism_id = $last_urbanism_add; $Building->description = $Building_name; $Building->save(); if ($Building_name == $name_floor) { $num_floor_id = $Building->id; } } } else { foreach ($streets as $street_name) { $street = new StreetCatalog(); $street->urbanism_id = $last_urbanism_add; $street->name = $street_name; $street->save(); if ($street_name == $name_street) { $num_street_id = $street->id; } } } $neighbor_properties = new NeighborProperty(); $neighbor_properties->neighbors_id = $last_adminColonies_add; $neighbor_properties->urbanism_id = $last_urbanism_add; $neighbor_properties->num_street_id = $num_street_id; $neighbor_properties->num_floor_id = $num_floor_id; $neighbor_properties->num_house_or_apartment = Input::get('num_house_or_apartment'); $neighbor_properties->status = 1; $neighbor_properties->save(); //~====================SAVE STEP 2=============================== $monthly_fee = new MonthlyFee(); $monthly_fee->urbanism_id = $last_urbanism_add; $monthly_fee->amount = Input::get('monthly_fee'); $monthly_fee->since = date("Y-m") . "-01"; $monthly_fee->until = NULL; $monthly_fee->save(); //~====================SAVE STEP 3=============================== //~====================sub cuentas egreso e ingreso por defecto =============================== $subAccounts_ingreso = new SubAccount(); $subAccounts_ingreso->account_id = 1; $subAccounts_ingreso->urbanism_id = $urbanism->id; $subAccounts_ingreso->description = 'Pago de cuota mensual'; $subAccounts_ingreso->save(); $subAccount_egreso = new SubAccount(); $subAccount_egreso->account_id = 2; $subAccount_egreso->urbanism_id = $urbanism->id; $subAccount_egreso->description = 'Nómina de guardias'; $subAccount_egreso->save(); $cobrador = Collector::where('user_id', '=', $user_id)->where('urbanism_id', '=', $urbanism->id)->pluck('id'); if (!$cobrador) { $collector = new Collector(); $collector->user_id = $user_id; $collector->urbanism_id = $urbanism->id; $collector->save(); } $campoEmail = Input::get('email'); if ($campoEmail) { $invited_neighbors = $data['mails']; $invited_id = md5(uniqid(mt_rand(), true)); foreach ($invited_neighbors as $neighbor_email) { $encrypted = Crypt::encrypt(md5(uniqid(mt_rand(), true))); $invited = new InvitedNeighbors(); $invited->neighbor_id = $last_adminColonies_add; $invited->invited_id = $invited_id; $invited->urbanism_id = $last_urbanism_add; $invited->email = $neighbor_email; $invited->confirmed = false; $invited->confirmation_code = $encrypted; $invited->save(); } return Redirect::action('HomeController@sendMailInvitation', array('invited_id' => $invited_id, 'admin_colonia' => $last_adminColonies_add, 'urbanismo' => $last_urbanism_add)); } else { return Redirect::action('NeighborController@admin_neighbor', array('admin_colonia' => $last_adminColonies_add, 'urbanismo' => $last_urbanism_add)); } }