domingo, 27 de noviembre de 2016

pub

/////Lo que te puedes olvidar

spring.datasource.url=jdbc:mysql://localhost:3306/dbexamen

spring.datasource.username= root
spring.datasource.password= root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver


@Id

@GeneratedValue(strategy=GenerationType.AUTO)
private int id;


@Repository

@Transactional
public interface ArticuloRepository extends CrudRepository<Articulo, Integer>


@RequestMapping(value="/articulo/new",method=RequestMethod.POST) //HOME

public String saveArticulo(@Valid Articulo a,BindingResult result,Model model){

try {

if(result.hasErrors()){
model.addAttribute("message",result.toString());
return "newArticulo";
}

precioventa=articuloService.calcularPrecioVenta(a);
articuloService.saveArticulo(a);
model.addAttribute("message",
"El precio de venta ="+precioventa);
return "newArticulo";

} catch (Exception e) {
// TODO: handle exception
model.addAttribute("message",
e.getMessage());
return "newArticulo";
}
}

////ejem de querys


List<Articulo> findByClavearticuloOrderByPrecioventaDesc(int clavearticulo);



@Query("select u from Articulo u where u.precioventa between ?1 and ?2 ")
List<Articulo> findByPrecioventaRange(double pv1, double pv2);


@Query("select count(u) from Articulo u where u.clavearticulo=?1")
int countArticuloClavearticulo(int clavearticulo);

Pas

////Repository

package com.example.repository;



import java.util.List;


//import org.springframework.data.jpa.repository.Query;

import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;
import org.springframework.data.jpa.repository.*;

import org.springframework.transaction.annotation.Transactional;


import com.example.entities.Articulo;


@Repository

@Transactional
public interface ArticuloRepository extends CrudRepository<Articulo,Integer> {

List<Articulo> findByClavearticuloOrderByPrecioventaDesc(int clavearticulo);


@Query("select count(u) from Articulo u where u.clavearticulo=?1")
int countArticuloClavearticulo(int clavearticulo);

@Query("select u from Articulo u where u.precioventa between ?1 and ?2")

List<Articulo> findByPrecioVenta(double pv1, double pv2);
}


/////Service////1.-Irterface 

package com.example.service;

import com.example.entities.Articulo;



public interface ArticuloService {


Articulo saveArticulo(Articulo a);

Iterable<Articulo> listAllArticulos();

Iterable<Articulo> findClavearticuloOrderByPrecioventaDesc(int clavearticulo);

Iterable<Articulo> findByPrecioventaRange(double pv1, double pv2);

int countArticuloClavearticulo(int clavearticulo);

double calcularPrecioVenta(Articulo a);

}

//clase service

package com.example.service;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Service;

import com.example.entities.Articulo;

import com.example.repository.ArticuloRepository;


@Service

public class ArticuloServiceImple implements ArticuloService {

@Autowired

private ArticuloRepository articuloRepository;

@Override
public Articulo saveArticulo(Articulo a) {
// TODO Auto-generated method stub
return articuloRepository.save(a);
}

@Override

public Iterable<Articulo> listAllArticulos() {
// TODO Auto-generated method stub
return articuloRepository.findAll();
}

@Override

public Iterable<Articulo> findClavearticuloOrderByPrecioventaDesc(int clavearticulo) {
// TODO Auto-generated method stub
return articuloRepository.findByClavearticuloOrderByPrecioventaDesc(clavearticulo);
}

@Override

public Iterable<Articulo> findByPrecioventaRange(double pv1, double pv2) {
// TODO Auto-generated method stub
return articuloRepository.findByPrecioVenta(pv1, pv2);

}

@Override

public int countArticuloClavearticulo(int clavearticulo) {
// TODO Auto-generated method stub
return articuloRepository.countArticuloClavearticulo(clavearticulo);
}

@Override

public double calcularPrecioVenta(Articulo a) {
// TODO Auto-generated method stub
return 0;
}

}


////Controller


package com.example.controller;


import javax.validation.Valid;


import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;

import com.example.entities.Articulo;

import com.example.service.ArticuloService;

@Controller

public class ArticuloController {

@Autowired
private ArticuloService articuloService;




@RequestMapping(value="/") //HOME
public String articulos(Model model)
{
model.addAttribute("articulo", new Articulo());
return "newArticulo"; //la vistaaaaa ctmare
}

@RequestMapping(value="/articulo/new",method=RequestMethod.POST) // home
public String saveArticulo(@Valid Articulo a, BindingResult result, Model model)
{
articuloService.saveArticulo(a);
return "newArticulo";
}

@RequestMapping(value="/articulos") // HOME
public String listararticulos(Model model)
{
model.addAttribute("articulos", articuloService.listAllArticulos());
return "articulos";//vista html
}

@RequestMapping(value="/articulosrange",method=RequestMethod.POST)
public String listarticulosRange(Model model,@RequestParam double pv1,@RequestParam double pv2)
{
model.addAttribute("articulos", articuloService.findByPrecioventaRange(pv1, pv2));

return "articulos";//vista html
}

@RequestMapping(value="/articulosclavearticulo", method=RequestMethod.POST)
public String listarticulosclavearticulo(Model model, @RequestParam int clavearticulo)
{
model.addAttribute("cantiarticulos", articuloService.countArticuloClavearticulo(clavearticulo));
model.addAttribute("articulos", articuloService.findClavearticuloOrderByPrecioventaDesc(clavearticulo));
return "articulos";
}
}

////vistas 1



<div class="container">

<!--/*/ <th:block th:include="fragments/header :: header"></th:block> /*/-->

<h2>Calcular Precio Venta</h2>

<div>


<!-- formulario de boostrap esto lo saque de:http://v4-alpha.getbootstrap.com/components/forms/ -->

<form class="form-horizontal" th:object="${articulo}"
th:action="@{/articulo/new}" method="post">
<input type="hidden" th:field="*{id}" />
<div class="form-group">
<label class="col-sm-2 control-label">Nombre Articulo:</label>
<div class="col-sm-10">
<input type="text" class="form-control" th:field="*{nombre}"
required="required" /> <span
th:if="${#fields.hasErrors('nombre')}" th:errors="*{nombre}">Nombre
Error </span>
</div>
</div>



<div class="form-group">

<label class="col-sm-2 control-label">Clave Articulo:</label>
<div class="col-sm-10">
<select class="form-control" th:field="*{clavearticulo}">


<option value="1">1</option>

<option value="2">2</option>
<option value="3">3</option>
<option value="3">4</option>
<option value="3">5</option>
<option value="3">6</option>

</select>

</div>
</div>

<div class="form-group">

<label class="col-sm-2 control-label">Costo Materia Prima:</label>
<div class="col-sm-10">
<input type="text" class="form-control" th:field="*{costomp}"
required="required" /> <span
th:if="${#fields.hasErrors('costomp')}" th:errors="*{costomp}">Costomp
Error </span>
</div>
</div>

<!-- Estos botones los saque de :http://v4-alpha.getbootstrap.com/components/buttons/ -->

<div class="form-group">
<label class="col-sm-2 control-label"></label>
<div class="col-sm-10">
<button type="submit" class="btn btn-success">Save</button>

</div>

</div>

</form>


<div class="form-group">

<p th:text="${message}">1</p>
</div>
</div>
</div>


///vista 2


<body>

<!-- Division container solo tiene una tabla<table> -->
<div class="container">
<!--/*/ <th:block th:include="fragments/header :: header"></th:block> /*/-->

<!-- Division para buscar rango precio venta -->

<div class="panel panel-default">
<div class="panel-body">
<form role="form" th:action="@{/articulosrange}" method="post">
<div class="row">
<div class="col-sm-2">
<label for="name">Precio Min:</label>
</div>
<div class="col-sm-2">
<input type="number" step="any" class="form-control" id="pv1"
name="pv1" required="required" />
</div>
<div class="col-sm-2">
<label for="name">Precio Max:</label>
</div>
<div class="col-sm-2">
<input type="number" step="any" class="form-control" id="pv2"
name="pv2" required="required" />
</div>
<div class="col-sm-2">
<input type="submit" value="Buscar" class="btn btn-success" />
</div>
</div>
</form>
</div>
</div>

<h2>Lista Articulos</h2>


<div class="row">


<table class="table table-striped">

<tr>
<th>Id</th>
<th>Nombre</th>
<th>Clave</th>
<th>Costo Materia Prima</th>
<th>Costo Mano Obra</th>
<th>Gasto Fabricacion</th>
<th>Costo Produccion</th>
<th>Precio Venta</th>

</tr>

<tr th:each="a : ${articulos}">
<td th:text="${a.id}">id</td>
<td th:text="${a.nombre}">Nombre</td>
<td th:text="${a.clavearticulo}">clavearticulo</td>
<td th:text="${a.costomp}">costomp</td>
<td th:text="${a.costomo}">costomo</td>
<td th:text="${a.gastofabricacion}">gastofabricacion</td>
<td th:text="${a.costoproduccion}">costoproduccion</td>
<td th:text="${a.precioventa}">precioventa</td>
</tr>
</table>
</div>
</div>
</body>

///vista que corre


<!DOCTYPE html>

<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="ISO-8859-1"/>
<title>Insert title here</title>
</head>
<body>

<form th:object="${articulo}" th:action="@{/articulo/new}" method="post">

Nombre:
<input type="text" th:field="*{nombre}" />
<br/>

Clave Articulo:
<select th:field="*{clavearticulo}">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="3">4</option>
<option value="3">5</option>
<option value="3">6</option>
</select>
<br/>
Costo Materia Prima:
<input type="text" th:field="*{costomp}"/>
<br/>

<button type="submit">Save</button>

</form>
<p>1</p>



</body>

</html>

lunes, 27 de junio de 2016

¿Cómo bañar a tu perro? Algunos Tip's


Bañar al el perro quizás sea parte de tu castigo pero, si no, entonces es porque deseas que tu mascota este aseada de cuando en vez. Bañar al engreído de casa puede ser una tarea ardua y con complicaciones, si además, tu perro no esta acostumbrado al baño entonces llegaste al lugar correcto. En este articulo te brindaremos algunos tip's para el baño de tu mascota, ahorrando servicios de veterinarias y con articulo al alcance de tus manos.


ANTES DEL BAÑO

  • Conseguir unas toallas y shampoo para perro, las toallas que ya utilices las puedes usar ahora exclusivamente para tu mascota y el shampoo tiene que ser especial para perro, recuerda que el shampoo que tu usas es demasiado fuerte para el pelo de tu mascota.
  • Tener a la mano un secador y cepillos de acuerdo al pelaje de tu perro si deseas compra accesorios para tu mascota (ropa, hueso de goma, etc),la ropa para después del secado y el hueso para distraer el la ducha.
  • Esponja para baño y algodón para las orejas, así como tú, tu perro puede sufrir de agua en la oreja y en ellos es más peligroso OJO.


DURANTE EL BAÑO

  • Primero humedecemos el pelaje y la piel para aplicar el shampoo.
  • Usamos la esponja para esparcir el shampoo  y sacar la mayor cantidad de espuma.
  • Enjuagamos y si deseas agregas bálsamo.
  • Usamos para toalla para quitar el agua en el pelo y para el secado total usamos la secadora.
  • Por ultimo, mientra se seca peinamos al perro.


Si no te quedó del todo claro puedes revisar el siguiente video.


Fuente: Diana Por ODA canal youtube

¡Adornos o decorativos para tu hogar!

¡Hola amigos, en esta oportunidad te traemos algunas decoraciones para tu hogar!



Son en forma de animalitos y muy hermosos, son útiles para distintas ocasiones y lo mejor es que son de material reciclables. No te preocupes, te dejaremos vídeos de como se realizan los decorativos/adornos para tu hogar y con los materiales que necesitaras. Sin mas que decir... ¡Comencemos!

Gatitos hechas de botellas



Búhos decorativos de botellas



Alcancías hechas de botellas



Conejitos con toallas de baño



Cajita para dulces animales


Bueno amigos, eso es todo. Todos los tutoriales son usan materiales reciclables ah excepción del ultimo que tienes que imprimir, jeje. Bueno, nos vemos en un próximo post, ¡nos vemos!


domingo, 26 de junio de 2016

¡8 alimentos que no debes darle a tu gato!

Hola amiguitos, otra ves de nuevo, ¿como están?
En esta ocasión le traemos algunos alimentos que NO debes darle a tu gatito. Asi que ten cuidado con el tipo de alimentos que le proporcionas, ya que pueden afectar la salud del animal. Sin mas que decir... ¡Comencemos!



El chocolate (Intoxicación)

El atún (Intoxicación)

Pescado crudo (Tiene parásitos que dañan al animal)

Frutas y verduras (La cereza, el ajo, la cebolla, la cereza, los melocotones, el ajo, la uva y los hongos, contienen sustancias toxicas que dañan al animal)

Leche (Si es intolerante a la lactosa le causara diarrea y problemas gástricos)

Huesos o espinas (Perforan sus intestinos)

Sal (Daña los riñones y pueden causarle problemas urinarios)

Bebidas (Café, té y alcohol, pueden causarle la muerte)

Estos son algunos alimentos dañinos para tu mascota, si quieres saber mas, visita estas paginas. ¡Nos vemos!

http://genial.guru/mascotas/estas-son-las-comidas-que-no-debes-darle-a-tu-gato-783/#image16924
http://www.lacuarta.com/noticias/mascotas/2013/08/528-157102-9-diez-alimentos-que-tu-gato-no-debe-comer.shtml
http://comohacerpara.com/alimentos-peligrosos-para-gatos_9468h.html
http://www.consumer.es/web/es/mascotas/perros/alimentacion/2013/06/13/216937.php
http://comohacerpara.com/7-alimentos-que-nunca-debes-darle-a-tu-gato_9296h.html


sábado, 25 de junio de 2016

Ahora puedes cuidar a tu mascota con una apliacación movile

Crean aplicación para cuidar a las mascotas usando los celulares

Ahora vacunar, bañar y alimentar a su mascota será más fácil gracias a ‘Pety’, una herramienta digital diseñada por un grupo de emprendedores de Medellín que les permitirá a los amos llevar el control de las necesidades de su perro o gato a través de dispositivos móviles.

La propuesta, que fue realizada por Daniel Gómez, Robert Parada y Jonnathan Pulgarín con la asesoría de Innovación Eafit, busca mejorar la calidad de vida de los animales de compañía y optimizar el tiempo de los dueños.

“Lo que queremos es que las personas cuiden mejor a sus amigos de cuatro patas, por eso ofrecemos indicadores e indicaciones para que estén al día con todas sus necesidades, mejoren su bienestar y logren que vivan más tiempo”, aseguró Gómez.

Foto: Guillermo Ossa/EL TIEMPO

Con esa aplicación gratuita se espera impactar a cerca de 4 millones de mascotas en el país, por eso desde el pasado 27 de mayo está disponible para Android y, en los próximos días, para iOS, con prueba piloto en la capital antioqueña.
Fuente: El Tiempo


Sensación del momento "Peluquería Pet" GROOMING

Sensación del momento "Peluquería Pet"

El Grooming en un salón de mascotas de Tainán, Taiwánes la sensación del momento.  FUENTE:YO SOY 502

s

"Igogo", como se llama el sitio que impuso una curiosa moda entre los perritos y gatitos de la ciudad.  Se trata de cortes con formas que hacen que los reyes de la casa desborden ternura.
Dinosauriososos de pelucheleones y hasta estampados de personajes de caricatura, se plasman en la melena de los animales domésticos, luciendo muy divertidos. 

Uber Petfriendly-Taxi para mascotas

Taxi para mascotas

Uber brinda servicio a pet friendly's y a madres, a travez de su linea Buggy Rides, un servicio diferente a todas las remiserías de Nuevo Mexico hasta San Francisco.  


¿Qué preferirías para tu siguiente viaje, Uber, el servicio de transporte basado en San Francisco o un Buggy Ride, una aplicación creada por mexicanos? Tu respuesta quizá sea el que preste un mejor servicio, y es justo ahí donde los cofundadores de esta aplicación Luis Javier Mendoza, León Guerrero y Ricardo Rubio están apostando.

"Llegamos con una nueva opción de movilidad para el mercado mexicano con valor agregado muy claro, como son autos ‘pet friendly’,silla para bebés, rack para bicicleta, conductores bilingües y hasta WiFi", dijo Bernadette Lara, directora general de Buggy Rides en el lanzamiento de la aplicación. 

De acuerdo con Lara, cada uno de estos servicios tienen un precio extra de aproximadamente 20 pesos.

Sin embargo, su apuesta mayor está en el sector no bancarizado que de acuerdo con la compañía, representa el 85 por ciento de la población en México y que podrá hacer uso del servicio gracias a recargas de saldo, tan fácil como agregarle crédito a un teléfono celular a través de tiendas de conveniencia, entre las que se encuentran 7 eleven, Extra, Farmacias Benavides, Farmacias del Ahorro, Mambo, entre otros. 

"Queremos que vean que es un servicio seguro, incluyente, no importa si estás bancarizado o no y llegar al mayor número de personas. Hemos visto históricamente que el sector no bancarizado es un sector que necesita el servicio y que requiere este servicio de movilidad urbana y como es el mayor número de población nosotros brindamos alternativas, dijo a El Financiero Luis Javier Mendoza. 

Buggy Rides además acepta pagos mediante tarjeta de crédito y débito.

Otro factor que destacaron los fundadores de la aplicación es que a diferencia de la competencia, no se cobran tarifas progresivas y el usuario paga por la distancia y el tipo de auto que requiere, entre los que se encuentra taxis convencionales, coches de gama baja y de lujo.

Para los conductores, la compañía presume ofrecer prestaciones tales como seguro social, mientras que por el uso de la plataforma se les cobra 25 por ciento de cada viaje. 

Pese a que los directivos de la firma no revelaron el número de unidades con el que iniciarán operaciones, proyectaron hace un par de meses arrancar el servicio en el Distrito Federal con 420 unidades y de acuerdo con Mendoza, incluso llevan una mejor cifra.

Mendoza también resaltó que en materia de legalidad se han apegado ya a las normativas impuestas hace algunos meses por las autoridades capitalinas para la operación de este tipo de aplicaciones, entre las que destacan destinar 1.5 del cobro de cada viaje para un fondo creando en beneficio de la ciudadanía, así como que las unidades registradas tengan un valor mínimo de 200 mil pesos. 

Aplicación para buscar pareja a tu máscota


¿Buscas pareja para tu mascota? Esta aplicación te ayudará


Se trata de DogJuan, una innovadora app gratuita peruana que ya se encuentra disponible en Google Play. Ernesto Llanos, director creativo de esta útil propuesta para amantes de los animales, da detalles al respecto.

"DogJuan es una aplicación categorizada como Red Social, pero solo y exclusivamente para canes, a travez de esta red social podemos contactar con otras cuentas de mascotas, obviamente administrada por sus criador, con la finalidad de encontrar pareja para su engreído, se puede pactar reuniones y más"



Esta es la primera aplicación de Ernesto Llanos. DogJuan se gestó entre el 2014 y 2015, con inversión propia. "Tras registrar el nombre, la inscribimos en Start Up Perú, donde aún estamos en proceso de selección. La aplicación fue hecha con inversión propia y ha llamado bastante la atención, sobre todo elnombre, el logo y el concepto", remarca Llanos.

martes, 21 de junio de 2016

¡Los mejores juguetes para gatos hechas a mano!

Hola de nuevo, el día de hoy te traemos videotutoriales de como hacer juguetes para gatos. Son muy fáciles de hacer y en su mayoría, no se usan demasiados materiales. Esta es una oportunidad ya que hoy en día los juguetes para gatos son muy caros. En estos vídeos aprenderás a como realizar juguetes para tu gato de manera muy económica. Sin mas que decir comencemos.

Primer vídeo

En este primer vídeo nos muestra como hacer 2 juguetes: Una almohada de peluche con catnip y una barita.


Materiales de Almohada de Peluche con Catnip:

  • Tela (Peluche)
  • Fieltro (Negro)
  • Tijeras
  • Regla
  • Marcador
  • Popote (Pajilla o sorbete)
  • Relleno de Poliéster
  • Silicona caliete
  • Plumas de colores
  • Hijo y aguja


Materiales de Barita para Gato:

  • Goma Eva (Fomy)
  • Tijeras
  • Regla
  • Marcador o pluma
  • Solicona caliente
  • Cascabel
  • Navaja
  • Palito de madera

Segundo vídeo

En el siguiente videotutorial se muestra como hacer ¡4 juguetes! Veamos los materiales.


Materiales para el Raton de Juguete:

  • Liston macrame, estambre y/o mecate
  • Pompones pequeños
  • Plumas de colores
  • Bolas de unicel en forma de huevo
  • Pistola de silicon
  • Tijeras
  • Aguja e hilo
  • Pequeño palito de madera
  • Pabilo

Materiales para el Caramelo de Juguete:

  • Liston macrame, estambre y/o mecate
  • Plumas de colores
  • Bolas de unicel en forma de esfera
  • Pistola de silicona
  • Tijeras

Materiales para el Rascador:

  • Una caja rectangular en forma de bandeja
  • Silicona de pistola o silicona liquida
  • Cuter
  • Regla
  • Tiras de cartón corrugado

Materiales para el Juego del Topo:

  • Una caja rectangular grande
  • Papel de regalo
  • Silicona liquida
  • Goma
  • Pistola de silicon
  • Cuter
  • Un molde circular


Espero que les haya gustado y servido nuestro post, y no olviden darle lo mejor siempre a sus mascotas que forman parte de nuestra familia. Nos vemos hasta la próxima.