/** * guardar o editar usuario * @param Trabajador $trabajador * @return bool */ public function persistir(Trabajador $trabajador) { if (!is_null($trabajador->getId())) { // editar try { DB::table('trabajador')->where('idTrabajador', $trabajador->getId())->update(['Nombre' => $trabajador->getNombre(), 'Paterno' => $trabajador->getPaterno(), 'Materno' => $trabajador->getMaterno(), 'Celular' => $trabajador->getCelular(), 'Email' => $trabajador->getEmail(), 'idArea' => $trabajador->getArea()->numero(), 'idPuesto' => $trabajador->getPuesto()->getId(), 'FechaModificacion' => DB::raw('GETDATE()')]); if ($trabajador->tieneCuenta()) { // generar usuario y contraseña $this->persistirUsuario($trabajador); } return true; } catch (\Exception $e) { return false; } } // insertar try { $idTrabajador = DB::table('trabajador')->insertGetId(['Nombre' => $trabajador->getNombre(), 'Paterno' => $trabajador->getPaterno(), 'Materno' => $trabajador->getMaterno(), 'Celular' => $trabajador->getCelular(), 'Email' => $trabajador->getEmail(), 'idArea' => $trabajador->getArea()->numero(), 'idPuesto' => $trabajador->getPuesto()->getId(), 'FechaCreacion' => DB::raw('GETDATE()')]); // id del trabajador insertado $trabajador->setId($idTrabajador); if ($trabajador->tieneCuenta()) { // generar usuario y contraseña $this->persistirUsuario($trabajador); } return true; } catch (\PDOException $e) { echo $e->getMessage(); return false; } }