Browse Source

pequeño gràfico añadido a la página de inicio

robert2206 8 years ago
parent
commit
30683b46f8

+ 2 - 1
src/pages/home/home.html

@@ -14,5 +14,6 @@
 
 
 <ion-content padding>
-   <chart *ngIf="data.length > 0" [labels]="labels" [data]="data" type="bar"></chart>
+    <p text-center>Ranking de los 5 productos más vendidos</p>
+    <chart [labels]="labels" [data]="data" type="bar"></chart>
 </ion-content>

+ 5 - 1
src/pages/home/home.scss

@@ -1,3 +1,7 @@
 page-home {
-
+    p {
+        padding-top: 25px;
+        font-size: 10pt;
+        color: #909090;
+    }
 }

+ 20 - 40
src/pages/home/home.ts

@@ -9,8 +9,13 @@ import { DataProvider } from '../../providers/data-provider';
 })
 export class HomePage {
 
-    labels: Array<string>;
-    data: Array<Chart.Dataset>;
+    labels: string[] = ["", "", "", "", ""];
+    data: Chart.Dataset[] = [
+        {
+            label: "# de Ventas",
+            data: [0, 0, 0, 0, 0]
+        }
+    ];
 
     constructor(
         public navCtrl: NavController,
@@ -29,45 +34,20 @@ export class HomePage {
      *
      */
     draw(): void {
-        // this.dataProvider.getAll("products").then(result => {
-        //     let products: Array<any> = result.products.filter(item => {
-        //         return item.sales_count;
-        //     }).sort((left, right) => {
-        //         return left.sales_count - right.sales_count;
-        //     }).slice(0, 10);
+        this.dataProvider.getAll("products").then(result => {
+            let products: Array<any> = result.products.filter(item => {
+                return item.sales_count;
+            }).sort((left, right) => {
+                return left.sales_count - right.sales_count;
+            }).slice(0, 10);
 
-        //     for (let i = 0; i < products.length; i++) {
-        //         this.labels.push(products[i].name);
-        //         this.data.push(products[i].sales_count);
-        //     }
+            for (let i = 0; i < products.length; i++) {
+                this.labels[i] = products[i].name;
+                this.data[0].data[i] = products[i].sales_count;
+            }
             
-        // }).catch(e => {
-        //     console.log(e);
-        // });
-
-        this.labels = ["Producto 1", "Producto 2", "Producto 3", "Producto 4", "Producto 5", "Producto 6"];
-        this.data = [
-        {
-            label: '# de Ventas',
-            data: [12, 19, 3, 5, 2, 3],
-            // backgroundColor: [
-            //     'rgba(255, 99, 132, 0.2)',
-            //     'rgba(54, 162, 235, 0.2)',
-            //     'rgba(255, 206, 86, 0.2)',
-            //     'rgba(75, 192, 192, 0.2)',
-            //     'rgba(153, 102, 255, 0.2)',
-            //     'rgba(255, 159, 64, 0.2)'
-            // ],
-            // borderColor: [
-            //     'rgba(255,99,132,1)',
-            //     'rgba(54, 162, 235, 1)',
-            //     'rgba(255, 206, 86, 1)',
-            //     'rgba(75, 192, 192, 1)',
-            //     'rgba(153, 102, 255, 1)',
-            //     'rgba(255, 159, 64, 1)'
-            // ],
-            borderWidth: 1
-        }
-    ];
+        }).catch(e => {
+            console.log(e);
+        });
     }
 }

+ 1 - 1
src/pages/product-details/product-details.html

@@ -15,7 +15,7 @@
     <ion-card>
         <div style="position: relative">
             <img src="./assets/images/product.png" *ngIf="!product.image_medium"/>
-            <img src="data:image/jpeg;base64,{{ product.image_medium }}" *ngIf="product.image_medium"/>
+            <img [src]="product.image_medium | sanitizeUrl" *ngIf="product.image_medium"/>
 
             <ion-fab left bottom>
                 <button ion-fab color="yellow" class="fab-picture" (click)="showPhotoOptions()">

+ 15 - 0
src/providers/tools-provider.ts

@@ -16,6 +16,21 @@ export class ToolsProvider {
      *
      */
     initializeDatabase(): Promise<any> {
+        return new Promise((resolve, reject) => { 
+            Promise.all([
+                this.getUserInformation()
+            ]).then(() => { 
+                resolve();
+            }).catch(e => { 
+                reject(e);
+            });
+        });
+    }
+
+    /**
+     *
+     */
+    private getUserInformation(): Promise<any> {
         return new Promise((resolve, reject) => {
 
             this.dataProvider.getAll("users").then(r => {