Commit 917a1f5510ab4688b80be0e1d7ee6a8595df9f29

Authored by Marcelo Puebla

Merge branch 'master' into 'develop'

Master(benjamin)

See merge request !17
... ... @@ -29,11 +29,13 @@
29 29 ],
30 30 "styles": [
31 31 "./node_modules/bootstrap/dist/css/bootstrap.min.css",
  32 + "./node_modules/@fortawesome/fontawesome-free/css/all.min.css",
32 33 "src/styles.scss"
33 34 ],
34 35 "scripts": [
35 36 "./node_modules/jquery/dist/jquery.slim.min.js",
36 37 "./node_modules/popper.js/dist/umd/popper.min.js",
  38 + "./node_modules/@fortawesome/fontawesome-free/js/all.min.js",
37 39 "./node_modules/bootstrap/dist/js/bootstrap.min.js"
38 40 ]
39 41 },
... ... @@ -1881,6 +1881,12 @@
1881 1881 }
1882 1882 }
1883 1883 },
  1884 + "@fortawesome/fontawesome-free": {
  1885 + "version": "5.12.0",
  1886 + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-5.12.0.tgz",
  1887 + "integrity": "sha512-vKDJUuE2GAdBERaQWmmtsciAMzjwNrROXA5KTGSZvayAsmuTGjam5z6QNqNPCwDfVljLWuov1nEC3mEQf/n6fQ==",
  1888 + "dev": true
  1889 + },
1884 1890 "@ngtools/webpack": {
1885 1891 "version": "8.3.20",
1886 1892 "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-8.3.20.tgz",
... ... @@ -40,6 +40,7 @@
40 40 "@angular/cli": "~8.3.20",
41 41 "@angular/compiler-cli": "~8.2.14",
42 42 "@angular/language-service": "~8.2.14",
  43 + "@fortawesome/fontawesome-free": "^5.12.0",
43 44 "@types/jasmine": "~3.3.8",
44 45 "@types/jasminewd2": "~2.0.3",
45 46 "@types/node": "~8.9.4",
src/app/app-routing.module.ts
... ... @@ -47,6 +47,10 @@ const routes: Routes = [
47 47 path: 'pedidos-salientes',
48 48 loadChildren: () => import('./modules/pedidos-salientes/pedidos-salientes.module').then(m => m.PedidosSalientesModule)
49 49 },
  50 + {
  51 + path: 'comanda',
  52 + loadChildren: () => import('./modules/comanda/comanda.module').then(m => m.ComandaModule)
  53 + },
50 54 { path: '**', redirectTo: '', pathMatch: 'full' },
51 55 ];
52 56  
src/app/app.module.ts
... ... @@ -10,6 +10,7 @@ import { SplashScreenComponent } from './modules/splash-screen/splash-screen.com
10 10 import { AdminComponent } from './modules/admin/admin.component';
11 11 import { FooterComponent } from './shared/footer/footer.component';
12 12 import { SharedModule } from './modules/shared/shared.module';
  13 +import { NgxSpinnerModule } from 'ngx-spinner';
13 14  
14 15 @NgModule({
15 16 declarations: [
... ... @@ -28,6 +29,7 @@ import { SharedModule } from './modules/shared/shared.module';
28 29 ReactiveFormsModule,
29 30 ReactiveFormsModule.withConfig({ warnOnNgModelWithFormControl: 'never' }),
30 31 SharedModule.forRoot(),
  32 + NgxSpinnerModule,
31 33 ],
32 34 bootstrap: [AppComponent]
33 35 })
src/app/interfaces/IComanda.ts
... ... @@ -0,0 +1,34 @@
  1 +export interface IComanda {
  2 + id: string;
  3 + estado: number;
  4 + observacion: string;
  5 + pedidoAnombreDe: string;
  6 + paraLlevar: boolean;
  7 + detalles: IComandaDetalle[];
  8 + timerElaboracion?: any;
  9 + secondsElaboracion?: any;
  10 + hoursElaboracion?: any;
  11 + secondsPedido?: any;
  12 + hoursPedido?: any;
  13 +}
  14 +
  15 +export interface IComandaDetalle {
  16 + DetLar: string;
  17 + CodArt: number;
  18 + CodSec: number;
  19 + cantidad: number;
  20 + idArticulo: number;
  21 + componentes: IComponente[];
  22 + seeDetalle?: boolean;
  23 +}
  24 +
  25 +export interface IComponente {
  26 + CodArt: number;
  27 + CodSec: number;
  28 + DetArt: string;
  29 + esSustraible: number;
  30 + esAdicionable: number;
  31 + tipoArticulo: number;
  32 + cantidadSeleccionada: number;
  33 + importeAdicional: number;
  34 +}
src/app/modules/comanda/comanda-routing.module.ts
... ... @@ -0,0 +1,14 @@
  1 +import { NgModule } from '@angular/core';
  2 +import { Routes, RouterModule } from '@angular/router';
  3 +import { ComandaComponent } from './comanda.component';
  4 +
  5 +
  6 +const routes: Routes = [
  7 + { path: '', component: ComandaComponent }
  8 +];
  9 +
  10 +@NgModule({
  11 + imports: [RouterModule.forChild(routes)],
  12 + exports: [RouterModule]
  13 +})
  14 +export class ComandaRoutingModule { }
src/app/modules/comanda/comanda.component.html
... ... @@ -0,0 +1,116 @@
  1 +<div class="container-fluid d-flex flex-column h-100 fade-in pb-4 pr-2">
  2 + <div class="row pt-5 mt-n5">
  3 + <div class="col-12">
  4 + <p class="mb-3 h2 text-center mt-2">Pedidos a elaborar</p>
  5 + </div>
  6 + </div>
  7 + <div class="row flex-fill m-0 overflow-scroll">
  8 + <div class="col-12 px-2">
  9 + <div class="card-columns h-100 m-1 fade-in disable-user-select">
  10 + <div
  11 + *ngFor="let comanda of comandas"
  12 + class="card fade-in rounded-xs shadow-sm mt-2"
  13 + [ngClass]="{
  14 + 'bg-light': comanda.estado === 1,
  15 + 'bg-danger': comanda.estado === 2,
  16 + 'bg-success swing-out-top-bck': comanda.estado === 3
  17 + }">
  18 + <div class="card-body p-2">
  19 + <div class="row justify-content-between">
  20 + <img
  21 + src="../../../assets/img/para-llevar-fondo-sombra.png"
  22 + class="w-25 h-25 float-left ml-0 mt-n3"
  23 + *ngIf="comanda.paraLlevar == true">
  24 + <div></div>
  25 + <!-- NUMERO DE PEDIDO -->
  26 + <p class="h1 text-right mr-3">
  27 + {{rellenar(comanda.id.toString().slice(0), 3)}}
  28 + </p>
  29 + </div>
  30 + <div>
  31 + <!-- PEDIDO A NOMBRE DE -->
  32 + <p class="text-center m-0">
  33 + {{comanda.pedidoAnombreDe ? comanda.pedidoAnombreDe.toUpperCase() : ''}}
  34 + </p>
  35 + <!-- TIMER PEDIDO -->
  36 + <div class="d-flex justify-content-between align-items-center mt-2">
  37 + <p><i class="fas fa-user-clock text-info"></i></p>
  38 + <p class="text-center mb-1">
  39 + {{comanda.hoursPedido}}:{{comanda.minutesPedido}}:{{comanda.secondsPedido}}
  40 + </p>
  41 + <p><i class="far fa-clock fa-spin text-info"></i></p>
  42 + </div>
  43 + <div *ngFor="let detalle of comanda.detalles">
  44 + <p
  45 + class="card-text border-top pt-2 mb-2"
  46 + [ngClass]="
  47 + {
  48 + 'border-secondary': comanda.estado === 1,
  49 + 'border-light': comanda.estado != 1
  50 + }">
  51 + <!-- DETALLE Y CANTIDAD -->
  52 + <small>{{detalle.DetLar}}</small><br>
  53 + <small>CANT.{{detalle.cantidad}}</small>
  54 + </p>
  55 + </div>
  56 + <!-- BOTONES -->
  57 + <button
  58 + *ngIf="comanda.estado === 1"
  59 + class="btn btn-block btn-primary shadow-sm btn-elaborar"
  60 + (click)="updateComanda(comanda, 2, 'En elaboracion')">
  61 + <div class="row justify-content-between">
  62 + <div></div>
  63 + <p class="ml-4" style="color: #fff;">Elaborar</p>
  64 + <img
  65 + draggable="false"
  66 + ondragstart="return false;"
  67 + (contextmenu)="false"
  68 + class="icon-30 mr-2"
  69 + src="assets/img/ir.svg">
  70 + </div>
  71 + </button>
  72 + <button
  73 + *ngIf="comanda.estado === 2"
  74 + class="btn btn-block shadow-sm btn-terminar"
  75 + (click)="updateComanda(comanda, 3, 'Terminado')">
  76 + <div class="row justify-content-between">
  77 + <div></div>
  78 + <p class="ml-4">Terminar</p>
  79 + <img
  80 + draggable="false"
  81 + ondragstart="return false;"
  82 + (contextmenu)="false"
  83 + class="icon-30 mr-2"
  84 + src="assets/img/flecha-borde-color.svg">
  85 + </div>
  86 + </button>
  87 + <button
  88 + *ngIf="comanda.estado === 2"
  89 + class="btn btn-block btn-deshacer btn-sm shadow-sm p-0"
  90 + (click)="updateComanda(comanda, 1, 'Pagado')">
  91 + <div class="row justify-content-between">
  92 + <div></div>
  93 + <span class="h6 ml-4"><small>Deshacer</small></span>
  94 + <i class="fas fa-undo-alt text-info mr-4 my-auto"></i>
  95 + </div>
  96 + </button>
  97 + </div>
  98 + <!-- TIMER DE ELABORACION -->
  99 + <div *ngIf="comanda.estado === 2" class="d-flex justify-content-between align-items-center mt-2">
  100 + <div *ngIf="comanda.estado !== 1">
  101 + <i class="fa fa-utensils text-info" aria-hidden="true"></i>
  102 + </div>
  103 + <span *ngIf="comanda.estado === 1" class="text-dark">
  104 + {{comanda.hoursElaboracion}}:{{comanda.minutesElaboracion}}:{{comanda.secondsElaboracion}}
  105 + </span>
  106 + <span *ngIf="comanda.estado !== 1" class="text-white">
  107 + {{comanda.hoursElaboracion}}:{{comanda.minutesElaboracion}}:{{comanda.secondsElaboracion}}
  108 + </span>
  109 + <i class="fas fa-clock fa-spin text-info"></i>
  110 + </div>
  111 + </div>
  112 + </div>
  113 + </div>
  114 + </div>
  115 + </div>
  116 +</div>
src/app/modules/comanda/comanda.component.scss
... ... @@ -0,0 +1,163 @@
  1 +@media (min-width: 1200px) {
  2 + .col-1-5 {
  3 + flex: 0 0 12.5%;
  4 + max-width: 12.5%;
  5 + position: relative;
  6 + width: 100%;
  7 + padding-right: 15px;
  8 + padding-left: 15px;
  9 + }
  10 +}
  11 +
  12 +@media (min-width: 1200px) {
  13 + .card-columns {
  14 + column-count: 5 !important;
  15 + column-gap: 0.5rem !important;
  16 + }
  17 +}
  18 +
  19 +@media (max-width: 1200px) {
  20 + .card-columns {
  21 + column-count: 4 !important;
  22 + column-gap: 0.5rem !important;
  23 + }
  24 +}
  25 +
  26 +@media (max-width: 768px) {
  27 + .card-columns {
  28 + column-count: 3 !important;
  29 + column-gap: 0.5rem !important;
  30 + }
  31 +}
  32 +
  33 +.bg-danger {
  34 + transition: 0.2s;
  35 + background-color: #aa006b !important;
  36 + p {
  37 + color: #fff;
  38 + }
  39 +}
  40 +
  41 +.bg-success {
  42 + transition: 0.2s;
  43 + background-color: #EEEEF0 !important;
  44 + p {
  45 + color: black;
  46 + }
  47 +}
  48 +
  49 +.bg-light {
  50 + transition: 0.2s;
  51 + background-color: white !important;
  52 + p {
  53 + color: #212529;
  54 + }
  55 +}
  56 +
  57 +.bg-dark-red {
  58 + background-color: #670006 !important;
  59 + p {
  60 + color: white;
  61 + }
  62 +}
  63 +
  64 +.btn-elaborar {
  65 + border-radius: 2rem;
  66 + .p {
  67 + color: #fff;
  68 + }
  69 +}
  70 +
  71 +.btn-deshacer {
  72 + background-color: #fff;
  73 + border-radius: 2rem;
  74 +}
  75 +
  76 +.btn-terminar {
  77 + background-color: rgb(212, 212, 212);
  78 + border-radius: 2rem;
  79 + p {
  80 + color: #212529;
  81 + }
  82 +}
  83 +
  84 +.rounded-xs {
  85 + border-radius: 1rem;
  86 + border-color: #aa006b ;
  87 +}
  88 +
  89 +.card-comanda {
  90 + min-height: 250px;
  91 +}
  92 +
  93 +.swing-out-top-bck {
  94 + -webkit-animation: swing-out-top-bck 0.45s
  95 + cubic-bezier(0.6, -0.28, 0.735, 0.045) 10s both;
  96 + animation: swing-out-top-bck 0.8s cubic-bezier(0.6, -0.28, 0.735, 0.045) 10s
  97 + both;
  98 +}
  99 +
  100 +@-webkit-keyframes swing-out-top-bck {
  101 + 0% {
  102 + -webkit-transform: rotateX(0deg);
  103 + transform: rotateX(0deg);
  104 + -webkit-transform-origin: top;
  105 + transform-origin: top;
  106 + opacity: 1;
  107 + }
  108 + 75% {
  109 + -webkit-transform: rotateX(-100deg);
  110 + transform: rotateX(-100deg);
  111 + -webkit-transform-origin: top;
  112 + transform-origin: top;
  113 + }
  114 + 100% {
  115 + -webkit-transform: rotateX(-100deg);
  116 + transform: rotateX(-100deg);
  117 + -webkit-transform-origin: top;
  118 + transform-origin: top;
  119 + opacity: 0;
  120 + display: none;
  121 + position: absolute;
  122 + }
  123 +}
  124 +
  125 +@keyframes swing-out-top-bck {
  126 + 0% {
  127 + -webkit-transform: rotateX(0deg);
  128 + transform: rotateX(0deg);
  129 + -webkit-transform-origin: top;
  130 + transform-origin: top;
  131 + opacity: 1;
  132 + }
  133 + 75% {
  134 + -webkit-transform: rotateX(-100deg);
  135 + transform: rotateX(-100deg);
  136 + -webkit-transform-origin: top;
  137 + transform-origin: top;
  138 + }
  139 + 100% {
  140 + -webkit-transform: rotateX(-100deg);
  141 + transform: rotateX(-100deg);
  142 + -webkit-transform-origin: top;
  143 + transform-origin: top;
  144 + opacity: 0;
  145 + display: none;
  146 + position: absolute;
  147 + }
  148 +}
  149 +
  150 +blockquote p::before,
  151 +blockquote p::after {
  152 + content: "โ€œ";
  153 + font-family: Georgia;
  154 + font-size: 40px;
  155 + margin: -10px 0 0 -20px !important;
  156 + position: absolute;
  157 + opacity: 0.5;
  158 +}
  159 +
  160 +blockquote p::after {
  161 + content: "โ€";
  162 + margin: -5px 0 0 4px !important;
  163 +}
src/app/modules/comanda/comanda.component.spec.ts
... ... @@ -0,0 +1,25 @@
  1 +import { async, ComponentFixture, TestBed } from '@angular/core/testing';
  2 +
  3 +import { ComandaComponent } from './comanda.component';
  4 +
  5 +describe('ComandaComponent', () => {
  6 + let component: ComandaComponent;
  7 + let fixture: ComponentFixture<ComandaComponent>;
  8 +
  9 + beforeEach(async(() => {
  10 + TestBed.configureTestingModule({
  11 + declarations: [ ComandaComponent ]
  12 + })
  13 + .compileComponents();
  14 + }));
  15 +
  16 + beforeEach(() => {
  17 + fixture = TestBed.createComponent(ComandaComponent);
  18 + component = fixture.componentInstance;
  19 + fixture.detectChanges();
  20 + });
  21 +
  22 + it('should create', () => {
  23 + expect(component).toBeTruthy();
  24 + });
  25 +});
src/app/modules/comanda/comanda.component.ts
... ... @@ -0,0 +1,118 @@
  1 +import { Component, OnInit } from '@angular/core';
  2 +import { IComanda, IComandaDetalle, IComponente } from 'src/app/interfaces/IComanda';
  3 +import { ComandaService } from 'src/app/services/comanda/comanda.service';
  4 +import * as _ from 'lodash';
  5 +import { NgxSpinnerService } from 'ngx-spinner'
  6 +
  7 +@Component({
  8 + selector: 'app-comanda',
  9 + templateUrl: './comanda.component.html',
  10 + styleUrls: ['./comanda.component.scss']
  11 +})
  12 +export class ComandaComponent implements OnInit {
  13 + comandas: IComanda[] = [];
  14 + cicloTime: any;
  15 +
  16 + constructor(
  17 + private comandaService: ComandaService,
  18 + private spinnerService: NgxSpinnerService,
  19 + ) { }
  20 +
  21 + ngOnInit() {
  22 + this.getComandas();
  23 + this.timerGetComandas();
  24 + }
  25 +
  26 + ngOnDestroy() {
  27 + clearInterval(this.cicloTime);
  28 + }
  29 +
  30 + timerGetComandas() {
  31 + this.cicloTime = setInterval(() => {
  32 + this.getComandas();
  33 + }, 5000);
  34 + }
  35 +
  36 + getComandas() {
  37 + this.comandaService.getAll()
  38 + .subscribe((resComandas: IComanda[]) => {
  39 + this.addNewComandas(resComandas);
  40 + }, e => console.error(e));
  41 + }
  42 +
  43 + addNewComandas(resComandas: IComanda[]) {
  44 + for (let j = 0; j < resComandas.length; j++) {
  45 + for (let i = 0; i < this.comandas.length; i++) {
  46 + if (this.comandas[i].id === resComandas[j].id) {
  47 + resComandas.splice(j, 1);
  48 + }
  49 + }
  50 + }
  51 + if (!resComandas.length) return;
  52 + Array.prototype.push.apply(this.comandas, resComandas);
  53 + this.startTimersPedido(resComandas);
  54 + }
  55 +
  56 + updateComanda(comanda: IComanda, estadoNuevo: number, observacionNueva: string) {
  57 + let data = {
  58 + idComanda: comanda.id,
  59 + estado: estadoNuevo,
  60 + observacion: observacionNueva,
  61 + tiempoEspera: `${comanda.hoursPedido}:${comanda.secondsPedido}:${comanda.secondsPedido}`,
  62 + tiempoElaboracion: `${comanda.hoursElaboracion}:${comanda.secondsElaboracion}:${comanda.secondsElaboracion}`,
  63 + }
  64 + if (data.estado == 3) {
  65 + this.comandaService.imprimirComandaCocina(parseInt(data.idComanda))
  66 + .subscribe(res => { }, err => console.error(err)
  67 + );
  68 + }
  69 +
  70 + if (estadoNuevo !== 2) comanda.detalles.forEach(d => d.seeDetalle = false);
  71 +
  72 + this.comandaService.update(data)
  73 + .subscribe((res: any) => {
  74 + if (res.data) {
  75 + comanda.estado = estadoNuevo;
  76 + comanda.observacion = observacionNueva;
  77 + if (estadoNuevo == 2) {
  78 + this.startTimerElaboracion(comanda);
  79 + } else if (comanda.timerElaboracion) {
  80 + clearInterval(comanda.timerElaboracion)
  81 + }
  82 + }
  83 + }, e => console.error(e));
  84 + }
  85 +
  86 + rellenar(relleno, longitud) {
  87 + relleno = '' + relleno;
  88 + while (relleno.length < longitud) {
  89 + relleno = '0' + relleno;
  90 + }
  91 + return relleno;
  92 + }
  93 +
  94 + toggleVerComponentes(detalle: IComandaDetalle, comanda: IComanda) {
  95 + detalle.seeDetalle = !detalle.seeDetalle;
  96 + }
  97 +
  98 + hasTipo(componentes: IComponente[]) {
  99 + return componentes.some(c => c.tipoArticulo === 6);
  100 + }
  101 +
  102 + //#region TIMERS
  103 + startTimersPedido(comandas) {
  104 + comandas.forEach((comanda: IComanda) => {
  105 + this.comandaService.startTimerComanda(comanda, 'Pedido');
  106 + if (comanda.estado === 2) {
  107 + this.startTimerElaboracion(comanda);
  108 + }
  109 + });
  110 + }
  111 +
  112 + startTimerElaboracion(comanda: IComanda) {
  113 + this.spinnerService.show(comanda.id.toString());
  114 + this.comandaService.startTimerComanda(comanda, 'Elaboracion');
  115 + }
  116 + //#endregion
  117 +
  118 +}
src/app/modules/comanda/comanda.module.ts
... ... @@ -0,0 +1,15 @@
  1 +import { NgModule } from '@angular/core';
  2 +import { CommonModule } from '@angular/common';
  3 +
  4 +import { ComandaRoutingModule } from './comanda-routing.module';
  5 +import { ComandaComponent } from './comanda.component';
  6 +
  7 +
  8 +@NgModule({
  9 + declarations: [ComandaComponent],
  10 + imports: [
  11 + CommonModule,
  12 + ComandaRoutingModule
  13 + ]
  14 +})
  15 +export class ComandaModule { }
src/app/modules/mensaje-final/mensaje-final.component.ts
... ... @@ -8,6 +8,7 @@ import { Router } from &#39;@angular/router&#39;;
8 8 styleUrls: ['./mensaje-final.component.scss']
9 9 })
10 10 export class MensajeFinalComponent implements OnInit {
  11 + timer: any;
11 12  
12 13 constructor(
13 14 public articuloService: ArticuloService,
... ... @@ -15,11 +16,15 @@ export class MensajeFinalComponent implements OnInit {
15 16 ) { }
16 17  
17 18 ngOnInit() {
18   - setTimeout(() => {
  19 + this.timer = setTimeout(() => {
19 20 this.goToSplash();
20 21 }, 10000);
21 22 }
22 23  
  24 + ngOnDestroy() {
  25 + clearTimeout(this.timer);
  26 + }
  27 +
23 28 goToSplash() {
24 29 this.articuloService.cleanShoppingCar();
25 30 this.router.navigate(['']);
src/app/services/comanda/comanda.service.ts
1 1 import { Injectable } from '@angular/core';
2 2 import { HttpClient } from '@angular/common/http';
3 3 import { APP_SETTINGS } from 'src/etc/AppSettings';
  4 +import { IComanda } from 'src/app/interfaces/IComanda';
4 5  
5 6 @Injectable({
6 7 providedIn: 'root'
... ... @@ -16,8 +17,40 @@ export class ComandaService {
16 17 return this.http.get(`${this.urlDeboSuite}/comandas/pendientes-entrega`);
17 18 }
18 19  
  20 + update(data: object) {
  21 + return this.http.post(`${this.urlDeboSuite}/comandas/update`, { data: data });
  22 + }
  23 +
19 24 getAll() {
20 25 return this.http.get(`${this.urlDeboSuite}/comandas`);
21 26 }
22 27  
  28 + imprimirComandaCocina(idComanda: number) {
  29 + return this.http.get(`${this.urlDeboSuite}/comandas/imprimir/${idComanda}`);
  30 + }
  31 +
  32 + startTimerComanda(comanda: IComanda, tipo: string) {
  33 + let hours = 0;
  34 + let minutes = 0;
  35 + let seconds = 0;
  36 + comanda[`hours${tipo}`] = '0';
  37 + comanda[`seconds${tipo}`] = comanda[`minutes${tipo}`] = '00';
  38 + comanda[`timer${tipo}`] = setInterval(() => {
  39 + seconds++;
  40 + comanda[`seconds${tipo}`] = seconds < 10 ? `0${seconds}` : seconds.toString();
  41 + if (seconds === 60) {
  42 + minutes++;
  43 + comanda[`minutes${tipo}`] = minutes < 10 ? `0${minutes}` : minutes.toString();
  44 + seconds = 0;
  45 + comanda[`seconds${tipo}`] = '00';
  46 + }
  47 + if (minutes === 60) {
  48 + hours++;
  49 + minutes = 0;
  50 + comanda[`hours${tipo}`] = hours.toString();
  51 + comanda[`minutes${tipo}`] = '00';
  52 + }
  53 + }, 1000);
  54 + }
  55 +
23 56 }
src/assets/img/flecha-borde-color.svg
... ... @@ -0,0 +1,18 @@
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
  3 +<!-- Creator: CorelDRAW X7 -->
  4 +<svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" width="19.8306mm" height="19.8306mm" version="1.1" style="shape-rendering:geometricPrecision; text-rendering:geometricPrecision; image-rendering:optimizeQuality; fill-rule:evenodd; clip-rule:evenodd"
  5 +viewBox="0 0 523 523"
  6 + xmlns:xlink="http://www.w3.org/1999/xlink">
  7 + <defs>
  8 + <style type="text/css">
  9 + <![CDATA[
  10 + .fil0 {fill:#AA006B;fill-rule:nonzero}
  11 + ]]>
  12 + </style>
  13 + </defs>
  14 + <g id="Capa_x0020_1">
  15 + <metadata id="CorelCorpID_0Corel-Layer"/>
  16 + <path class="fil0" d="M262 0c72,0 137,29 185,77 47,47 76,112 76,185 0,72 -29,137 -76,185 -48,47 -113,76 -185,76 -73,0 -138,-29 -185,-76 -48,-48 -77,-113 -77,-185 0,-73 29,-138 77,-185 47,-48 112,-77 185,-77zm169 92c-43,-43 -103,-70 -169,-70 -66,0 -126,27 -170,70 -43,44 -70,104 -70,170 0,66 27,126 70,169 44,43 104,70 170,70 66,0 126,-27 169,-70 43,-43 70,-103 70,-169 0,-66 -27,-126 -70,-170zm-202 32l110 138 -110 137 -16 -16 95 -121 -95 -122 16 -16z"/>
  17 + </g>
  18 +</svg>
src/assets/img/logodebogris.png

26.1 KB

src/assets/img/para-llevar-fondo-sombra.png

8.33 KB

src/assets/img/para-llevar-fondo.png

6.99 KB