{"version":3,"sources":["./src/app/system/menu/menu.service.ts","./src/app/system/sales/new-order/new-order.component.ts","./src/app/system/sales/new-order/new-order.component.html","./src/app/system/catalog/catalog.component.html","./src/app/system/catalog/catalog.component.ts","./src/app/system/inventory/inventory.component.ts","./src/app/system/inventory/inventory.component.html","./src/app/system/users/users.component.ts","./src/app/system/users/users.component.html","./src/app/system/sales/sales.component.ts","./src/app/system/sales/sales.component.html","./src/app/error.interceptor.ts","./src/app/system/header/header.component.html","./src/app/system/header/header.component.ts","./src/app/homepage/header-public/header-public.component.ts","./src/app/homepage/header-public/header-public.component.html","./src/environments/environment.ts","./src/app/system/catalog/product.pipe.ts","./src/app/system/dashboard/dashboard.component.html","./src/app/system/dashboard/dashboard.component.ts","./src/app/system/inventory/products/products.component.ts","./src/app/system/inventory/products/products.component.html","./src/app/homepage/contact/contact.component.ts","./src/app/homepage/contact/contact.component.html","./src/app/system/users/user.service.ts","./src/app/homepage/catalog-public/catalog-public.component.html","./src/app/homepage/catalog-public/catalog-public.component.ts","./src/app/system/inventory/acquisitions/acquisitions.component.ts","./src/app/system/inventory/acquisitions/acquisitions.component.html","./src/app/system/main/main.component.ts","./src/app/system/main/main.component.html","./src/app/system/sales/clients/clients.component.ts","./src/app/system/sales/clients/clients.component.html","./node_modules/moment/locale sync ^\\.\\/.*$","./src/app/app.component.ts","./src/app/app.component.html","./src/app/homepage/home/home.component.html","./src/app/homepage/home/home.component.ts","./src/app/system/dashboard/dashboard.service.ts","./src/app/login/login.service.ts","./src/app/app.module.ts","./src/app/system/orders/orders.service.ts","./src/app/system/inventory/products-manage/products-manage.component.ts","./src/app/system/inventory/products-manage/products-manage.component.html","./src/app/jwt.interceptor.ts","./src/app/system/inventory/products/compress-image.service.ts","./src/app/system/sales/sales.service.ts","./src/app/system/menu/menu.component.html","./src/app/system/menu/menu.component.ts","./src/app/system/sales/edit-order/edit-order.component.ts","./src/app/system/sales/edit-order/edit-order.component.html","./src/app/auth.guard.ts","./src/app/app-routing.module.ts","./src/app/login/login.component.ts","./src/app/login/login.component.html","./src/app/system/orders/orders.component.ts","./src/app/system/orders/orders.component.html","./src/app/system/inventory/inventory.service.ts","./src/app/homepage/homepage.service.ts","./src/app/system/sales/order-list/order-list.component.html","./src/app/system/sales/order-list/order-list.component.ts","./src/main.ts","./$_lazy_route_resource lazy namespace object"],"names":[],"mappings":"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AyB;QAAzB,gIAAyB;QAAC,+FAAoC;QAK9D,0DAAyB;QAAzB,gIAAyB;QAAC,uFAA4B;QAKtD,0DAAyB;QAAzB,gIAAyB;QAAC,4FAAiC;QAM5E,0DAAuB;QAAvB,uFAAuB;QAEvB,0DAAsB;QAAtB,sFAAsB;;;;;;;;;;;;;AC7I/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA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","file":"main.js","sourcesContent":["import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MenuService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n baseUrl = environment.baseUrl;\r\n\r\n getUserModulesById(id) {\r\n let data = { clientId: id };\r\n return this.http.post(`${this.baseUrl}MenuModules`, data, { responseType: 'json' })\r\n }\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { LoginService } from 'src/app/login/login.service';\r\nimport { UserService } from '../../users/user.service';\r\nimport { SalesService } from '../sales.service';\r\n\r\n@Component({\r\n selector: 'app-new-order',\r\n templateUrl: './new-order.component.html',\r\n styleUrls: ['./new-order.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [MessageService]\r\n})\r\nexport class NewOrderComponent implements OnInit {\r\n\r\n constructor(\r\n private salesService: SalesService,\r\n private userService: UserService,\r\n private loginService: LoginService,\r\n private messageService: MessageService,\r\n private router: Router) { }\r\n\r\n availableProducts: any;\r\n allOrders: any;\r\n allUsers: any;\r\n allClients: any;\r\n selectedProduct: any;\r\n selectedProductMax: any;\r\n selectedProductQuantity: any;\r\n selectedClient: any;\r\n currentUser: any;\r\n\r\n productRowSelected: any;\r\n\r\n clientStatus: boolean = false;\r\n adminStatus: boolean = false;\r\n\r\n\r\n msg: any\r\n\r\n orderForm = {\r\n Client: '',\r\n ClientId: null,\r\n Invoice: false,\r\n Location: '',\r\n Status: null,\r\n Price: 0,\r\n Salesman: null,\r\n SuggestedPrice: 0,\r\n Extras: '',\r\n Phone: null,\r\n Products: []\r\n }\r\n\r\n ngOnInit(): void {\r\n this.salesService.getProductsAvailable().subscribe(data => this.availableProducts = data);\r\n this.salesService.getClients().subscribe(data => this.allClients = data);\r\n this.userService.getUsersInformation().subscribe(data => {\r\n this.allUsers = data\r\n this.loginService.getUserId().subscribe(res => {\r\n let userId = res.clientid;\r\n let userModules = res.modules;\r\n userModules.forEach(item => { if (item == \"dashboard\") { this.adminStatus = true; } });\r\n this.currentUser = null;\r\n this.allUsers.forEach(item => { if (userId == item.clientId) { this.currentUser = item; } });\r\n this.orderForm.Salesman = this.currentUser;\r\n })\r\n });\r\n }\r\n sendActionNotification(data)\r\n {\r\n let notification = {\r\n ID: data.id,\r\n Acción: data.name ,\r\n Productos: data.products,\r\n Vendedor: this.orderForm.Salesman.name,\r\n Precio: this.orderForm.Price,\r\n \"Precio Sugerido\": this.orderForm.SuggestedPrice,\r\n Cliente: this.orderForm.Client\r\n }\r\n\r\n this.salesService.sendNotification(notification).subscribe();\r\n }\r\n isAdmin()\r\n {\r\n\r\n let currentUser = JSON.parse(localStorage.getItem('currentUser'))\r\n let userModules = currentUser.modules\r\n userModules.forEach(obj => {\r\n if (obj == \"dashboard\")\r\n {return true}\r\n else\r\n {return false}\r\n });\r\n return false\r\n }\r\n\r\n clearForm() {\r\n this.orderForm = {\r\n Client: '',\r\n ClientId: null,\r\n Invoice: false,\r\n Location: '',\r\n Status: null,\r\n Price: 0,\r\n Salesman: '',\r\n SuggestedPrice: 0,\r\n Extras: '',\r\n Phone: null,\r\n Products: []\r\n }\r\n }\r\n\r\n onRowSelect(event) {\r\n this.productRowSelected = event.data;\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.productRowSelected = null;\r\n\r\n }\r\n\r\n clientChange() {\r\n this.orderForm = {\r\n Client: this.selectedClient.client,\r\n ClientId: this.selectedClient.id,\r\n Invoice: false,\r\n Location: this.selectedClient.location,\r\n Status: null,\r\n Price: 0,\r\n Salesman: '',\r\n SuggestedPrice: 0,\r\n Extras: '',\r\n Phone: this.selectedClient.phone,\r\n Products: []\r\n }\r\n }\r\n\r\n productChange() {\r\n this.selectedProductMax = this.selectedProduct.totalpieces;\r\n if (this.selectedProductMax < 20) {\r\n this.selectedProductQuantity = this.selectedProductMax;\r\n } else { this.selectedProductQuantity = 20; }\r\n }\r\n\r\n addProductValidation() {\r\n let addedProduct = false;\r\n this.msg = [];\r\n\r\n if (this.selectedProduct != null) {\r\n if (this.orderForm.Products.length > 0) {\r\n this.orderForm.Products.forEach(item => {\r\n if (this.selectedProduct.id == item.id) { addedProduct = true; }\r\n })\r\n }\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Seleccione un producto' });\r\n }\r\n if (this.selectedProductQuantity == null || this.selectedProductQuantity == 0) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Ingrese cantidad de producto' });\r\n } else if (addedProduct) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Producto ya en lista' });\r\n } else if (this.selectedProductQuantity > this.selectedProductMax) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Cantidad excede las piezas existentes' });\r\n } else {\r\n this.addProductToOrder();\r\n }\r\n }\r\n\r\n addProductToOrder() {\r\n let item = {\r\n id: this.selectedProduct.id,\r\n name: this.selectedProduct.name,\r\n netcontent: this.selectedProduct.netcontent,\r\n price: this.selectedProduct.price,\r\n pieces: this.selectedProductQuantity\r\n }\r\n var currentTime: Date = new Date();\r\n // CHECK IF PASS AFETER 22HRS TO CHOOSE PRICE\r\n if (currentTime.getHours() >= 9 && currentTime.getHours() < 22) {\r\n Object.assign(item, { price: this.selectedProduct.price });\r\n } else {\r\n Object.assign(item, { price: this.selectedProduct.priceNight });\r\n }\r\n this.orderForm.Products.push(item);\r\n this.updateTotalPrice();\r\n }\r\n\r\n deleteProduct(item) {\r\n let index = this.orderForm.Products.indexOf(item)\r\n this.orderForm.Products.splice(index, 1);\r\n this.productRowSelected = null;\r\n this.updateTotalPrice();\r\n }\r\n\r\n updateTotalPrice() {\r\n this.orderForm.SuggestedPrice = 0;\r\n this.orderForm.Products.forEach(item => {\r\n this.orderForm.SuggestedPrice += item.price * item.pieces;\r\n })\r\n this.orderForm.Price = this.orderForm.SuggestedPrice;\r\n }\r\n\r\n createOrderValidation() {\r\n this.msg = [];\r\n const { Client, Location, Price, Products, Phone, Invoice } = this.orderForm;\r\n\r\n if (this.clientStatus && this.selectedClient == null) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Seleccione Cliente existente' });\r\n } else if (Client == '') {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Cliente es requerido' });\r\n } else if (Location == '') {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Ubicación es requerida' });\r\n } else if (Price == null) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Precio es requerida' });\r\n } else if (Products.length == 0) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Ingrese al menos un producto' });\r\n } else if (Invoice && Phone < 999999999) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Telefono requerido si factura' });\r\n } else {\r\n this.productAvailabilityValidation();\r\n }\r\n }\r\n\r\n formatProducts() {\r\n let list = [];\r\n let stringProducts = \"\";\r\n this.orderForm.Products.forEach(item => {\r\n let obj = {\r\n id: item.id,\r\n quantity: item.pieces,\r\n price: item.price,\r\n };\r\n stringProducts = stringProducts + \",\" + item.name + \":\" + item.pieces\r\n list.push(obj);\r\n })\r\n return [list, stringProducts];\r\n }\r\n\r\n createOrder() {\r\n const [formatedProducts,stringProducts] = this.formatProducts();\r\n if (this.orderForm.Salesman.clientId == null) { this.orderForm.Salesman = this.currentUser }\r\n\r\n let data = {\r\n action: \"create\",\r\n client: this.orderForm.Client,\r\n price: this.orderForm.Price,\r\n suggestedPrice: this.orderForm.SuggestedPrice,\r\n invoice: this.orderForm.Invoice,\r\n location: this.orderForm.Location,\r\n products: formatedProducts,\r\n salesman: this.orderForm.Salesman.clientId\r\n }\r\n if (this.orderForm.Phone) { Object.assign(data, { clientPhone: this.orderForm.Phone }); }\r\n if (this.orderForm.Extras) { Object.assign(data, { extras: this.orderForm.Extras }); }\r\n if (this.clientStatus) { Object.assign(data, { clientId: this.orderForm.ClientId }); }\r\n\r\n this.salesService.OrderActions(data).subscribe(ID => {\r\n\r\n let action = {\r\n id: ID,\r\n name: 'Orden Creada',\r\n products: stringProducts\r\n }\r\n if(!this.isAdmin()) {this.sendActionNotification(action)}\r\n this.router.navigateByUrl('/system/sales/orderList?ID=' + ID)})\r\n }\r\n\r\n productAvailabilityValidation() {\r\n this.salesService.getProductsAvailable().subscribe(data => {\r\n this.availableProducts = data;\r\n let available: boolean = true;\r\n this.orderForm.Products.forEach(x => {\r\n this.availableProducts.forEach(y => {\r\n if (x.id == y.id && x.pieces > y.totalpieces) { available = false; }\r\n });\r\n })\r\n if (available) {\r\n this.createOrder()\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Algun producto excede las piezas existentes' });\r\n }\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n\r\n
\r\n Cliente existente : \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n
Cliente*
\r\n \r\n
\r\n
\r\n
Telefono
\r\n \r\n \r\n
\r\n
\r\n
Ubicación*
\r\n \r\n
\r\n
\r\n
Extras
\r\n \r\n
\r\n
\r\n
Vendedor
\r\n \r\n \r\n
\r\n
\r\n
\r\n
Producto
\r\n \r\n \r\n
\r\n
\r\n
Cantidad
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n 0\" [value]=\"orderForm.Products\" [scrollable]=\"true\"\r\n selectionMode=\"single\" [(selection)]=\"productRowSelected\" dataKey=\"id\" (onRowSelect)=\"onRowSelect($event)\"\r\n (onRowUnselect)=\"onRowUnselect($event)\">\r\n \r\n \r\n Piezas\r\n Producto\r\n Cont.Net.\r\n Precio\r\n Opciones\r\n \r\n \r\n \r\n \r\n {{product.pieces}}\r\n {{product.name}}\r\n {{product.netcontent}}\r\n {{product.price}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n\r\n
\r\n Factura : \r\n
\r\n
\r\n Precio sugerido {{orderForm.SuggestedPrice}}\r\n
\r\n
\r\n Precio Final :\r\n \r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n
","
\r\n\r\n\r\n
Catalogo
\r\n\r\n
\r\n\r\n
\r\n \r\n
Cargando productos...
\r\n
\r\n\r\n \r\n \r\n
\r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n Cambiar modo de vista:\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{product.name}}
\r\n
\r\n \r\n \r\n {{setCategoryName(product.category)}}\r\n \r\n
\r\n
Cont.Net. : {{product.netcontent}}
\r\n
\r\n \r\n {{product.price | currency}}\r\n
\r\n
\r\n
\r\n 0 ? 'green' : 'red' }\">\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {{setCategoryName(product.category)}}\r\n
\r\n 0 ? 'green' : 'red' }\">\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{product.name}}
\r\n
{{product.netcontent}}
\r\n
{{product.price | currency}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { InventoryService } from '../inventory/inventory.service';\r\n\r\n@Component({\r\n selector: 'app-catalog',\r\n templateUrl: './catalog.component.html',\r\n styleUrls: ['./catalog.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class CatalogComponent implements OnInit {\r\n\r\n constructor(private intentoryService: InventoryService) { }\r\n\r\n allProducts: any;\r\n categories: any;\r\n categoryFilter: any;\r\n appliedFilter: any;\r\n textFilter: any;\r\n\r\n otherFilters: any = [\r\n { id: 1, label: 'Mayor a Menor precio' },\r\n { id: 2, label: 'Menor a Mayor precio' },\r\n { id: 3, label: 'En Existencia' },\r\n { id: 4, label: 'Agotado' }\r\n ];\r\n\r\n defaultImage: string = 'assets/Images/system/default.png'\r\n\r\n ngOnInit(): void {\r\n this.intentoryService.getCategories().subscribe(data => this.categories = data);\r\n this.intentoryService.getCatalog().subscribe(data => this.allProducts = data);\r\n }\r\n\r\n setCategoryName(id) {\r\n let text = \"\";\r\n this.categories.forEach(item => {\r\n if (id == item.id) { text = item.category }\r\n });\r\n return text;\r\n }\r\n\r\n ProductPhoto(item: any) {\r\n if (item.photoStatus == null) {\r\n this.intentoryService.GetProductPhoto(item.id).subscribe(data => {\r\n Object.assign(item, { photo: data });\r\n });\r\n Object.assign(item, { photoStatus: true });\r\n }\r\n return null;\r\n }\r\n}\r\n","import { isNgTemplate, NullTemplateVisitor } from '@angular/compiler';\r\nimport { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { SalesService } from '../sales/sales.service';\r\nimport { UserService } from '../users/user.service';\r\nimport { InventoryService } from './inventory.service';\r\n\r\n@Component({\r\n selector: 'app-inventory',\r\n templateUrl: './inventory.component.html',\r\n styleUrls: ['./inventory.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [MessageService]\r\n})\r\nexport class InventoryComponent implements OnInit {\r\n\r\n constructor(\r\n private intentoryService: InventoryService,\r\n private messageService: MessageService,\r\n private userService: UserService,\r\n private salesService: SalesService) { }\r\n\r\n msg: any[] = [];\r\n\r\n allProducts: any;\r\n AvailableProducts: any;\r\n allAcquisitions: any;\r\n allWarehouses: any;\r\n allCurrencies: any;\r\n allCategories: any;\r\n allUsers: any;\r\n categoryFilter: any;\r\n appliedFilter: any;\r\n textFilter: any;\r\n file: any;\r\n\r\n productToEdit: any;\r\n productToDelete: any;\r\n categoryName: any;\r\n categoryToEdit: any;\r\n categoryToDelete: any;\r\n warehouseName: any;\r\n wharehouseOwner: any = null;\r\n wharehouseOwnerStatus: boolean = false;\r\n warehouseToEdit: any;\r\n warehouseToDelete: any;\r\n currencyToEdit: any;\r\n currencyToDelete: any;\r\n\r\n productToMove: any;\r\n productAcquisitions: any;\r\n productTotalPieces: any;\r\n warehousesPieces: any;\r\n warehouseFrom: any;\r\n warehouseTo: any;\r\n piecesToMove: any;\r\n maxPiecesToMove: any;\r\n\r\n\r\n otherFilters: any = [\r\n { id: 1, label: 'Mayor a Menor precio' },\r\n { id: 2, label: 'Menor a Mayor precio' },\r\n { id: 3, label: 'En Existencia' },\r\n { id: 4, label: 'Agotado' }\r\n ];\r\n\r\n productForm = {\r\n Name: '',\r\n Price: null,\r\n Category: null,\r\n NetContent: '',\r\n Photo: null\r\n }\r\n\r\n acquisitionForm = {\r\n id: null,\r\n product: { id: null, name: null },\r\n warehouse: { id: null, name: null },\r\n currency: { id: null, name: null },\r\n pieces: null,\r\n cost: null,\r\n admission: null,\r\n soldOut: null,\r\n acquired: null,\r\n }\r\n\r\n currencyForm = {\r\n id: null,\r\n name: '',\r\n abbreviation: '',\r\n value: null\r\n }\r\n\r\n\r\n\r\n productModalStatus: boolean = false;\r\n productDeleteModalStatus: boolean = false;\r\n productEditModalStatus: boolean = false;\r\n acquisitionModalStatus: boolean = false;\r\n acquisitionDetailsModalStatus: boolean = false;\r\n acquisitionEditStatus: boolean = false;\r\n categoriesModalStatus: boolean = false;\r\n categoryCreateStatus: boolean = false;\r\n categoryEditStatus: boolean = false;\r\n categoryDeleteStatus: boolean = false;\r\n warehousesModalStatus: boolean = false;\r\n warehouseCreateStatus: boolean = false;\r\n warehouseEditStatus: boolean = false;\r\n warehouseDeleteStatus: boolean = false;\r\n currenciesModalStatus: boolean = false;\r\n currencyEditStatus: boolean = false;\r\n currencyCreateStatus: boolean = false;\r\n currencyDeleteStatus: boolean = false;\r\n\r\n defaultImage: string = 'assets/Images/system/default.png'\r\n\r\n ngOnInit(): void {\r\n //this.intentoryService.getCategories().subscribe(data => this.allCategories = data);\r\n //this.intentoryService.getAllProducts().subscribe(data => this.allProducts = data);\r\n //this.intentoryService.getAcquisitions().subscribe(data => this.allAcquisitions = data);\r\n //this.salesService.getProductsAvailable().subscribe(data => this.AvailableProducts = data)\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n}\r\n","
\r\n
\r\n\r\n
Inventario
\r\n\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { LoginService } from 'src/app/login/login.service';\r\nimport { MenuService } from '../menu/menu.service';\r\nimport { UserService } from './user.service';\r\nimport { MessageService } from 'primeng/api';\r\n\r\n@Component({\r\n selector: 'app-users',\r\n templateUrl: './users.component.html',\r\n styleUrls: ['./users.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [MessageService]\r\n})\r\nexport class UsersComponent implements OnInit {\r\n\r\n constructor(private userService: UserService, private menuService: MenuService, private loginservice: LoginService, private messageService: MessageService) { }\r\n\r\n isMobileDevice = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\r\n roles: any;\r\n modules: any;\r\n userList: any;\r\n userId: any;\r\n UserModalStatus: boolean = false;\r\n UserEditStatus: boolean = false;\r\n UserDeleteStatus: boolean = false;\r\n RolesModalStatus: boolean = false;\r\n RoleDeleteStatus: boolean = false;\r\n RoleCreateStatus: boolean = false;\r\n RoleEditStatus: boolean = false;\r\n RoleEditedName: any;\r\n changePassword: boolean = false;\r\n userToDelete: any;\r\n roleToEdit: any;\r\n roleToDelete: any;\r\n roleName: any;\r\n selectedClientid: any;\r\n msg: any[] = [];\r\n msgRoles: any[] = [];\r\n\r\n createForm = {\r\n Name: '',\r\n LastName: '',\r\n Username: '',\r\n Phone: null,\r\n Password: '',\r\n PasswordRepeat: '',\r\n Role: { id: null, role: null },\r\n Modules: []\r\n }\r\n\r\n editForm = {\r\n Name: '',\r\n LastName: '',\r\n Username: '',\r\n Phone: null,\r\n Password: '',\r\n PasswordRepeat: '',\r\n Role: { id: null, role: null },\r\n Modules: [],\r\n ClientId: ''\r\n }\r\n\r\n userRowSelected: any;\r\n\r\n ngOnInit(): void {\r\n this.userService.getUsersInformation().subscribe(data => { this.userList = data; });\r\n this.loginservice.getUserId().subscribe(res => { this.userId = res.clientid; })\r\n }\r\n\r\n onRowSelect(event) {\r\n this.userRowSelected = event.data;\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.userRowSelected = null;\r\n }\r\n\r\n rolesModal() {\r\n this.userService.getRoles().subscribe(data => {\r\n this.roles = data;\r\n this.userService.getUsersInformation().subscribe(data => {\r\n this.userList = data;\r\n this.roles.forEach(role => {\r\n let count = 0;\r\n this.userList.forEach(user => {\r\n if (user.role == role.role) { count += 1 }\r\n });\r\n Object.assign(role, { \"count\": count });\r\n });\r\n this.RolesModalStatus = true;\r\n });\r\n });\r\n }\r\n\r\n createRole() {\r\n let data = {\r\n action: 'create',\r\n role: this.roleName\r\n };\r\n this.userService.createRole(data).subscribe(data => {\r\n if (data != '\"0\"') {\r\n this.rolesModal();\r\n this.roleName = '';\r\n this.RoleCreateStatus = false;\r\n } else {\r\n this.msg = [];\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Ya existe ese cargo' });\r\n }\r\n });\r\n }\r\n\r\n deleteRoleModal(role) {\r\n this.roleToDelete = role;\r\n this.RoleDeleteStatus = true;\r\n }\r\n\r\n deleteRole() {\r\n let data = {\r\n action: 'delete',\r\n id: this.roleToDelete.id\r\n }\r\n this.userService.deleteRole(data).subscribe(data => {\r\n this.rolesModal();\r\n this.RoleDeleteStatus = false;\r\n });\r\n }\r\n\r\n createUserValidation() {\r\n this.msg = [];\r\n const { Name, LastName, Phone, Username, Password, PasswordRepeat, Role, Modules } = this.createForm;\r\n if (Name == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Nombre es requerido' });\r\n } else if (LastName == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Apellidos es requerido' });\r\n } else if (Phone < 999999999) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Telefono debe contar con 10 numeros' });\r\n } else if (Username == '' || Username.length < 6) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Nombre de usuario es requerido y debe contar con al menos 6 caracteres' });\r\n } else if (Password == '' || Password.length < 6) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Clave es requerida y debe contar con al menos 6 caracteres' });\r\n } else if (Password != PasswordRepeat) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Las claves no coinciden' });\r\n } else if (Role == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Seleccione un cargo para el usuario' });\r\n } else if (Modules == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Seleccione al menos un modulo para el usuario' });\r\n } else {\r\n this.createUser();\r\n }\r\n }\r\n\r\n createUser() {\r\n let generatedId = this.generateClientId();\r\n let data = {\r\n action: \"create\",\r\n clientid: generatedId,\r\n userName: this.createForm.Username,\r\n password: this.createForm.Password,\r\n name: this.createForm.Name,\r\n lastname: this.createForm.LastName,\r\n phone: this.createForm.Phone,\r\n role: this.createForm.Role.id,\r\n modules: this.createForm.Modules\r\n }\r\n this.userService.createUser(data).subscribe(res => {\r\n if (res.length == 3) {\r\n this.msg = [];\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Ya existe ese nombre de usuario' });\r\n } else {\r\n this.UserModalStatus = false;\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Usuario agregado correctamente' });\r\n this.userService.getUsersInformation().subscribe(data => { this.userList = data; });\r\n }\r\n });\r\n }\r\n\r\n generateClientId() {\r\n var result = '';\r\n var characters = 'abcdefghijklmnopqrstuvwxyz0123456789';\r\n for (var j = 0; j < 4; j++) {\r\n for (var i = 0; i < 5; i++) {\r\n result += characters.charAt(Math.floor(Math.random() * characters.length));\r\n }\r\n if (result.length < 23) {\r\n result += \"-\"\r\n }\r\n }\r\n return result;\r\n }\r\n\r\n createUserModal() {\r\n this.msg = [];\r\n this.userService.getRoles().subscribe(data => this.roles = data);\r\n this.userService.getModules().subscribe(data => this.modules = data);\r\n this.createForm.Name = \"\";\r\n this.createForm.LastName = \"\";\r\n this.createForm.Phone = null;\r\n this.createForm.Username = \"\";\r\n this.createForm.Password = \"\";\r\n this.createForm.PasswordRepeat = \"\";\r\n this.createForm.Role = null;\r\n this.createForm.Modules = null;\r\n this.selectedClientid = \"\";\r\n this.UserModalStatus = true;\r\n }\r\n\r\n deleteUserModal(user) {\r\n this.UserDeleteStatus = true;\r\n this.userToDelete = user;\r\n }\r\n\r\n deleteUser() {\r\n let data = {\r\n action: \"delete\",\r\n username: this.userToDelete\r\n }\r\n this.userService.deleteUser(data).subscribe(res => {\r\n this.userService.getUsersInformation().subscribe(data => { this.userList = data; });\r\n this.UserDeleteStatus = false;\r\n })\r\n }\r\n\r\n editUser() {\r\n let data = {\r\n action: \"update\",\r\n name: this.editForm.Name,\r\n lastname: this.editForm.LastName,\r\n clientid: this.editForm.ClientId,\r\n phone: this.editForm.Phone,\r\n role: this.editForm.Role.id,\r\n modules: this.editForm.Modules\r\n };\r\n if (this.changePassword) { Object.assign(data, { \"password\": this.editForm.Password }); }\r\n this.userService.editUser(data).subscribe(res => {\r\n this.UserEditStatus = false;\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Usuario editado correctamente' });\r\n this.userService.getUsersInformation().subscribe(data => { this.userList = data; });\r\n });\r\n }\r\n\r\n editUserModal(user) {\r\n this.msg = [];\r\n // Set User role on Roles Dropdown\r\n this.userService.getRoles().subscribe(data => {\r\n this.roles = data;\r\n this.roles.forEach(item => {\r\n if (item.role == user.role) { this.editForm.Role = item }\r\n });\r\n });\r\n // Set User modules on Modules MultiSelect\r\n this.userService.getModules().subscribe(data => {\r\n this.modules = data;\r\n this.menuService.getUserModulesById(user.clientId).subscribe(res => {\r\n let data: any = res;\r\n let userModules = [];\r\n data.forEach(usermodule => {\r\n this.modules.forEach(item => {\r\n if (item.id == usermodule.id) { userModules.push(item) }\r\n });\r\n });\r\n this.editForm.Modules = userModules;\r\n });\r\n });\r\n // Set other Values\r\n this.editForm.Username = user.username;\r\n this.editForm.Name = user.name;\r\n this.editForm.LastName = user.lastname;\r\n this.editForm.Phone = user.phone;\r\n this.editForm.ClientId = user.clientId;\r\n this.editForm.Password = \"\";\r\n this.editForm.PasswordRepeat = \"\";\r\n this.changePassword = false;\r\n // Show modal\r\n this.UserEditStatus = true;\r\n }\r\n\r\n editUserValidation() {\r\n this.msg = [];\r\n const { Name, LastName, Phone, Username, Password, PasswordRepeat, Role, Modules } = this.editForm;\r\n if (Name == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Nombre es requerido' });\r\n } else if (LastName == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Apellidos es requerido' });\r\n } else if (Phone < 999999999) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Telefono debe contar con 10 numeros' });\r\n } else if (Username == '' || Username.length < 6) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Nombre de usuario es requerido y debe contar con al menos 6 caracteres' });\r\n } else if (this.changePassword == true && Password == '' || this.changePassword == true && Password.length < 6) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Clave es requerida y debe contar con al menos 6 caracteres' });\r\n } else if (this.changePassword == true && Password != PasswordRepeat) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Las claves no coinciden' });\r\n } else if (Role == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Seleccione un cargo para el usuario' });\r\n } else if (Modules == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Seleccione al menos un modulo para el usuario' });\r\n } else {\r\n this.editUser();\r\n }\r\n }\r\n\r\n openRoleEditModal(role) {\r\n this.roleToEdit = role;\r\n this.RoleEditedName = role.role;\r\n this.RoleEditStatus = true;\r\n }\r\n\r\n editRole() {\r\n let data = {\r\n action: \"update\",\r\n id: this.roleToEdit.id,\r\n role: this.RoleEditedName\r\n }\r\n this.userService.editRole(data).subscribe(data => {\r\n if (data != '\"0\"') {\r\n this.rolesModal();\r\n this.RoleEditedName = '';\r\n this.RoleEditStatus = false;\r\n } else {\r\n this.msg = [];\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Ya existe ese cargo' });\r\n }\r\n })\r\n }\r\n\r\n}\r\n","
\r\n\r\n
Usuarios
\r\n\r\n
\r\n
\r\n Administracion de usuarios\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n Nombre\r\n Usuario\r\n Telefono\r\n Cargo\r\n Opciones\r\n \r\n \r\n \r\n \r\n {{user.fullname}}\r\n {{user.username}}\r\n {{user.phone}}\r\n {{user.role}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n
\r\n
\r\n \r\n \r\n\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n\r\n \r\n \r\n
\r\n
\r\n
Nombre:
\r\n \r\n
\r\n
\r\n
Apellidos:
\r\n \r\n
\r\n
\r\n
Telefono:
\r\n \r\n
\r\n
\r\n
Nombre de usuario:
\r\n \r\n
\r\n
\r\n
Clave:
\r\n \r\n
\r\n
\r\n
Repita clave:
\r\n \r\n
\r\n
\r\n
Cargo:
\r\n \r\n
\r\n
\r\n
Modulos:
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
Nombre:
\r\n \r\n
\r\n
\r\n
Apellidos:
\r\n \r\n
\r\n
\r\n
Telefono:
\r\n \r\n
\r\n
\r\n
Nombre de usuario:
\r\n \r\n
\r\n
\r\n
Cargo:
\r\n \r\n
\r\n
\r\n
Modulos:
\r\n \r\n
\r\n
\r\n Cambiar contraseña\r\n \r\n
\r\n
\r\n
\r\n
Nueva clave:
\r\n \r\n
\r\n
\r\n
Repita clave:
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
¿Seguro que desea eliminar el usuario?
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n Cargo\r\n Usuarios con ese cargo\r\n Opciones\r\n \r\n \r\n \r\n \r\n {{role.role}}\r\n {{role.count}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
¿Seguro que desea eliminar el cargo?
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n
Nombre para el nuevo cargo:
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n
Nombre para el cargo:
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n \r\n\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-sales',\r\n templateUrl: './sales.component.html',\r\n styleUrls: ['./sales.component.css']\r\n})\r\nexport class SalesComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n\r\n
Ventas
\r\n\r\n
\r\n \r\n
\r\n
\r\n
","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\n\r\nimport { LoginService } from './login/login.service';\r\n\r\n@Injectable()\r\nexport class ErrorInterceptor implements HttpInterceptor {\r\n constructor(private loginService: LoginService) { }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n return next.handle(request).pipe(catchError(err => {\r\n if (err.status === 401) {\r\n // auto logout if 401 response returned from api\r\n this.loginService.logout();\r\n location.reload(true);\r\n }\r\n\r\n const error = err.error.message || err.statusText;\r\n return throwError(error);\r\n }))\r\n }\r\n}","
\r\n
\r\n \r\n
\r\n \r\n
","import { Component, HostListener, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MenuItem } from 'primeng/api';\r\nimport { LoginService } from '../../login/login.service';\r\nimport { MainComponent } from '../main/main.component'\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n\r\n userId: string;\r\n client: any;\r\n items: MenuItem[];\r\n UserName: string;\r\n\r\n logoOnly = \"assets/Images/logoOnly.svg\";\r\n horizontalLogo = \"assets/Images/horizontalLogo.svg\";\r\n\r\n constructor(private loginservice: LoginService, private router: Router, private mobile: MainComponent) { }\r\n\r\n mobDeviceFlag: boolean = false;\r\n\r\n ngOnInit(): void {\r\n if (window.innerWidth < 768) { this.mobDeviceFlag = true }\r\n }\r\n\r\n logout() {\r\n this.loginservice.logout()\r\n this.router.navigateByUrl('');\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onresize(event) {\r\n if (window.innerWidth < 768) { this.mobDeviceFlag = true }\r\n else { this.mobDeviceFlag = false }\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-header-public',\r\n templateUrl: './header-public.component.html',\r\n styleUrls: ['./header-public.component.css']\r\n})\r\nexport class HeaderPublicComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n
o
\r\n \r\n
\r\n Servicio las 24 horas los 7 dias de la semana\r\n
\r\n
\r\n\r\n
\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n // baseUrl:\"https://localhost:44370/\"\r\n baseUrl:\"https://api.barmanvinosylicores.com/\"\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'productFilter'\r\n})\r\nexport class ProductPipe implements PipeTransform {\r\n\r\n transform(list: any, category: any, other: any, searchText: string): any {\r\n\r\n let filterResults = [];\r\n\r\n const checkCategoryFilter = (product) => {\r\n let isCorrect = true;\r\n if (category) {\r\n isCorrect = product.category === category.id;\r\n }\r\n return isCorrect;\r\n }\r\n\r\n const checkOthersFilter = (product) => {\r\n let isCorrect = true;\r\n if (other) {\r\n switch (other.id) {\r\n case 3: {\r\n //En Existencia; \r\n isCorrect = product.totalpieces > 0;\r\n break;\r\n }\r\n case 4: {\r\n //Agotado; \r\n isCorrect = product.totalpieces == 0;\r\n break;\r\n }\r\n }\r\n\r\n }\r\n return isCorrect;\r\n }\r\n\r\n const checkTextFilter = (product) => {\r\n let isCorrect = true;\r\n if (searchText) {\r\n isCorrect = product.name.toLowerCase().includes(searchText.toLowerCase())\r\n }\r\n return isCorrect;\r\n }\r\n\r\n list && list.forEach(item => {\r\n const validation =\r\n checkCategoryFilter(item) &&\r\n checkOthersFilter(item) &&\r\n checkTextFilter(item);\r\n if (validation) { filterResults.push(item); }\r\n });\r\n\r\n if (other) {\r\n switch (other.id) {\r\n case 1: {\r\n //Mayor a menor precio; \r\n filterResults.sort((a, b) => parseFloat(b.price) - parseFloat(a.price));\r\n break;\r\n }\r\n case 2: {\r\n //Menor a mayor precio; \r\n filterResults.sort((a, b) => parseFloat(a.price) - parseFloat(b.price));\r\n break;\r\n }\r\n case 3: {\r\n //Existencia; \r\n filterResults.sort((a, b) => parseFloat(b.totalpieces) - parseFloat(a.totalpieces));\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return filterResults;\r\n\r\n }\r\n\r\n}\r\n","
\r\n\r\n
\r\n\r\n
Ventas de unidades semanales
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n {{slide.category}}\r\n
\r\n slide.lastWeekPieces\" class=\"pi pi-caret-up\"\r\n style=\"font-size: 1.5rem;color: green;padding-left: 45px;\">\r\n \r\n
{{slide.currentWeekPieces}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n {{slide.category}}\r\n
\r\n slide.lastWeekPieces\" class=\"pi pi-caret-up\"\r\n style=\"font-size: 1.5rem;color: green;padding-left: 45px;\">\r\n \r\n
{{slide.currentWeekPieces}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n Concentrado de ganancias y perdidas
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n Disponibilidad
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n {{item.name}}
\r\n
\r\n 50\" class=\"highValue\"\r\n [value]=\"item.percentage\" [showValue]=\"false\">\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
Ganancias por categoria esta semana
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n {{slide.category}}\r\n
\r\n
\r\n {{slide.percentage}}%
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n {{slide.category}}\r\n
\r\n
\r\n {{slide.percentage}}%
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n Productos vendidos esta semana\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{item.category}}
\r\n
\r\n {{item.percentage}}%
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { DashboardService } from './dashboard.service';\r\n\r\n@Component({\r\n selector: 'app-dashboard',\r\n templateUrl: './dashboard.component.html',\r\n styleUrls: ['./dashboard.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class DashboardComponent implements OnInit {\r\n\r\n options: any;\r\n pieOptions: any;\r\n dashboardInfo: any;\r\n\r\n chartData: any;\r\n chartLabels: string[] = [];\r\n chartIncomes: number[] = [];\r\n chartOutcomes: number[] = [];\r\n\r\n topCarouselData: any;\r\n availabilityData: any;\r\n soldCategoryProductsData: any;\r\n soldCategoryIncomeData: any[] = [];\r\n\r\n soldCategoryIncomeInfo: any;\r\n\r\n\r\n loadingStatus: boolean = true;\r\n\r\n constructor(private dashboardService: DashboardService) {\r\n this.options = {\r\n legend: { labels: { fontColor: 'white' } },\r\n scales: {\r\n yAxes: [\r\n { ticks: { fontColor: 'white' } },\r\n // { gridLines : {tickMarkLength:'-4' , color: 'gray', zeroLineColor: 'gray' } }\r\n ],\r\n xAxes: [\r\n { ticks: { fontColor: 'white' } },\r\n // { gridLines : { color: 'gray', zeroLineColor: 'gray'} }\r\n ]\r\n }\r\n };\r\n\r\n this.pieOptions = {\r\n legend: { display: false },\r\n cutoutPercentage: 85\r\n }\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.dashboardService.getDashboardInfo().subscribe(data => {\r\n this.dashboardInfo = data;\r\n this.availabilityData = this.dashboardInfo.lowPiecesProducts;\r\n this.soldCategoryIncomeInfo = this.dashboardInfo.soldCategoryIncome;\r\n this.soldCategoryProductsData = this.dashboardInfo.soldCategoryProducts;\r\n this.transformChartData();\r\n this.transformPieChart();\r\n });\r\n }\r\n\r\n SetTooltipText(firstLine, secondLine) {\r\n return \"Semana actual: \" + firstLine + \"\\n Semana pasada: \" + secondLine;\r\n }\r\n\r\n transformChartData() {\r\n let chartInfo = this.dashboardInfo.Chart;\r\n chartInfo.forEach(item => {\r\n this.chartLabels.push(item.period);\r\n this.chartIncomes.push(item.income);\r\n this.chartOutcomes.push(item.outcome);\r\n });\r\n this.chartData = {\r\n labels: this.chartLabels,\r\n datasets: [\r\n {\r\n label: 'Ganancias',\r\n data: this.chartIncomes,\r\n fill: false,\r\n borderColor: '#CAA462'\r\n },\r\n {\r\n label: 'Perdidas',\r\n data: this.chartOutcomes,\r\n fill: false,\r\n borderColor: 'gray'\r\n }\r\n ]\r\n };\r\n }\r\n\r\n transformPieChart() {\r\n this.soldCategoryIncomeInfo.forEach(item => {\r\n let chart = {\r\n labels: ['Este producto', 'Otros productos'],\r\n datasets: [{\r\n data: [item.percentage, 100 - item.percentage],\r\n backgroundColor: [\"#CAA462\", \"#848484\"],\r\n hoverBackgroundColor: [\"#CAA462\", \"#848484\"],\r\n borderWidth: 0\r\n }]\r\n }\r\n\r\n let obj = {\r\n chartData: chart,\r\n category: item.category,\r\n income: item.income,\r\n percentage: item.percentage\r\n }\r\n\r\n this.soldCategoryIncomeData.push(obj);\r\n })\r\n this.loadingStatus = false;\r\n }\r\n\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { InventoryService } from '../inventory.service';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { CompressImageService } from './compress-image.service';\r\nimport { FileUpload } from 'primeng/fileupload';\r\nimport { take } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-products',\r\n templateUrl: './products.component.html',\r\n styleUrls: ['./products.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [MessageService]\r\n})\r\nexport class ProductsComponent implements OnInit {\r\n\r\n constructor(\r\n private intentoryService: InventoryService,\r\n private messageService: MessageService,\r\n private compressImage: CompressImageService,\r\n private DomSanitizer: DomSanitizer) { }\r\n\r\n\r\n isMobileDevice = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\r\n msg: any[] = [];\r\n\r\n allProducts: any;\r\n allCategories: any;\r\n categoryFilter: any;\r\n appliedFilter: any;\r\n textFilter: any;\r\n file: any;\r\n fileName: any;\r\n\r\n productToEdit: any;\r\n productToDelete: any;\r\n categoryName: any;\r\n categoryToEdit: any;\r\n categoryToDelete: any;\r\n\r\n productRowSelected: any;\r\n\r\n otherFilters: any = [\r\n { id: 1, label: 'Mayor a Menor precio' },\r\n { id: 2, label: 'Menor a Mayor precio' },\r\n { id: 3, label: 'En Existencia' },\r\n { id: 4, label: 'Agotado' }\r\n ];\r\n\r\n productForm = {\r\n Name: '',\r\n Price: null,\r\n PriceNight: null,\r\n Category: null,\r\n NetContent: '',\r\n Photo: null\r\n }\r\n\r\n\r\n productModalStatus: boolean = false;\r\n productDeleteModalStatus: boolean = false;\r\n productEditModalStatus: boolean = false;\r\n categoriesModalStatus: boolean = false;\r\n categoryCreateStatus: boolean = false;\r\n categoryEditStatus: boolean = false;\r\n categoryDeleteStatus: boolean = false;\r\n\r\n defaultImage: string = 'assets/Images/system/default.png'\r\n\r\n ngOnInit(): void {\r\n this.intentoryService.getCategories().subscribe(data => this.allCategories = data);\r\n this.intentoryService.getAllProducts().subscribe(data => this.allProducts = data);\r\n }\r\n\r\n getBase64(event: any) {\r\n let image: File = event\r\n this.compressImage.compress(image)\r\n .pipe(take(1))\r\n .subscribe(compressedImage => {\r\n let me = this;\r\n let file = compressedImage;\r\n let reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = function () {\r\n me.productForm.Photo = (reader.result);\r\n };\r\n reader.onerror = function (error) {\r\n console.log('Error: ', error);\r\n };\r\n });\r\n }\r\n onUpload(event: any) {\r\n for (let file of event.files) { this.getBase64(file); }\r\n }\r\n SanitizerURL(url: any) {\r\n return this.DomSanitizer.bypassSecurityTrustResourceUrl(url);\r\n }\r\n clearImages() {\r\n this.productForm.Photo = null;\r\n }\r\n\r\n sendActionNotification(data)\r\n {\r\n let notification = {\r\n ID: data.id,\r\n Acción: data.name ,\r\n Producto: this.productForm.Name,\r\n Categoria: this.productForm.Category.category,\r\n Precio: this.productForm.Price,\r\n \"Precio Nocturno\": this.productForm.PriceNight,\r\n \"Contenido Neto\": this.productForm.NetContent\r\n }\r\n this.intentoryService.sendNotification(notification).subscribe();\r\n }\r\n\r\n // PRODUCTS\r\n\r\n setCategoryName(id) {\r\n let text = \"\";\r\n if (this.allCategories != null) {\r\n this.allCategories.forEach(item => {\r\n if (id == item.id) { text = item.category }\r\n });\r\n }\r\n return text;\r\n }\r\n\r\n setAvailabilityStatus(totalpieces) {\r\n let status = 'pi-times-circle';\r\n if (totalpieces > 0) { status = 'pi-check-circle'; }\r\n return status;\r\n }\r\n\r\n onRowSelect(event) {\r\n this.productRowSelected = event.data;\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.productRowSelected = null;\r\n }\r\n\r\n onFileSelected(e, form) {\r\n for (var i = 0; i < e.files.length; i++) {\r\n let file = Object.assign(e.files[i]);\r\n this.productForm.Photo = file;\r\n this.fileName = file.name;\r\n }\r\n e.originalEvent.target.value = null;\r\n form.clear();\r\n let me = this;\r\n let reader = new FileReader();\r\n reader.readAsDataURL(this.productForm.Photo);\r\n reader.onload = function () {\r\n me.productForm.Photo = reader.result;\r\n };\r\n }\r\n\r\n createProduct() {\r\n let data = {\r\n action: \"create\",\r\n name: this.productForm.Name,\r\n price: this.productForm.Price,\r\n priceNight: this.productForm.PriceNight,\r\n category: this.productForm.Category.id,\r\n netcontent: this.productForm.NetContent\r\n };\r\n if (this.productForm.Photo) { Object.assign(data, { photo: this.productForm.Photo }); }\r\n this.intentoryService.ProductActions(data).subscribe(data => {\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Producto agregado correctamente' });\r\n this.intentoryService.getAllProducts().subscribe(data => this.allProducts = data);\r\n this.productModalStatus = false;\r\n let action = {\r\n id: data,\r\n name: 'Producto Creado'\r\n }\r\n\r\n if(!this.isAdmin()) {this.sendActionNotification(action)}\r\n\r\n });\r\n }\r\n\r\n deleteProduct() {\r\n let data = {\r\n action: \"delete\",\r\n id: this.productToDelete,\r\n };\r\n this.intentoryService.ProductActions(data).subscribe(data => {\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Producto elimindado correctamente' });\r\n this.intentoryService.getAllProducts().subscribe(data => this.allProducts = data);\r\n this.productDeleteModalStatus = false;\r\n let action = {\r\n id: this.productToDelete,\r\n name: 'Producto Eliminado'\r\n }\r\n if(!this.isAdmin()) {this.sendActionNotification(action)}\r\n\r\n });\r\n }\r\n\r\n editProduct() {\r\n let data = {\r\n action: \"update\",\r\n id: this.productToEdit,\r\n name: this.productForm.Name,\r\n price: this.productForm.Price,\r\n priceNight: this.productForm.PriceNight,\r\n category: this.productForm.Category.id,\r\n netcontent: this.productForm.NetContent\r\n };\r\n if (this.productForm.Photo) { Object.assign(data, { photo: this.productForm.Photo }); }\r\n this.intentoryService.ProductActions(data).subscribe(data => {\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Producto actualizado correctamente' });\r\n this.productEditModalStatus = false;\r\n this.intentoryService.getAllProducts().subscribe(data => this.allProducts = data);\r\n let action = {\r\n id: this.productToEdit,\r\n name: 'Producto Actualizado'\r\n }\r\n\r\n if(!this.isAdmin()) {this.sendActionNotification(action)}\r\n\r\n });\r\n }\r\n\r\n isAdmin()\r\n {\r\n\r\n let currentUser = JSON.parse(localStorage.getItem('currentUser'))\r\n let userModules = currentUser.modules\r\n userModules.forEach(obj => {\r\n if (obj == \"dashboard\")\r\n {return true}\r\n else\r\n {return false}\r\n });\r\n return false\r\n }\r\n\r\n editProductValidation() {\r\n this.msg = [];\r\n const { Name, Category, NetContent, Price, PriceNight } = this.productForm;\r\n if (Name == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Nombre es requerido' });\r\n } else if (Price == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Precio de día es requerido' });\r\n } else if (PriceNight == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Precio de noche es requerido' });\r\n } else if (Category == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Seleccione una categoria' });\r\n } else if (NetContent == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Contenido es requerido' });\r\n } else {\r\n this.editProduct();\r\n }\r\n }\r\n\r\n createProductValidation() {\r\n this.msg = [];\r\n const { Name, Category, NetContent, Price, PriceNight } = this.productForm;\r\n if (Name == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Nombre es requerido' });\r\n } else if (Price == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Precio de día es requerido' });\r\n } else if (PriceNight == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Precio de noche es requerido' });\r\n } else if (Category == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Seleccione una categoria' });\r\n } else if (NetContent == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Contenido es requerido' });\r\n } else {\r\n this.createProduct();\r\n }\r\n }\r\n\r\n openProductModal() {\r\n this.msg = [];\r\n this.productForm = {\r\n Name: '',\r\n Price: null,\r\n PriceNight: null,\r\n Category: null,\r\n NetContent: '',\r\n Photo: null\r\n };\r\n this.productModalStatus = true;\r\n }\r\n\r\n openDeleteProductModal(product) {\r\n let selectedCategory\r\n this.allCategories.forEach(item => {\r\n if (item.id == product.category) { selectedCategory = item; }\r\n });\r\n this.productToDelete = product.id\r\n this.productForm = {\r\n Name: product.name,\r\n Price: product.price,\r\n PriceNight: product.priceNight,\r\n Category: selectedCategory,\r\n NetContent: product.netcontent,\r\n Photo: null\r\n };\r\n this.productDeleteModalStatus = true;\r\n }\r\n\r\n openEditProductModal(id) {\r\n this.msg = [];\r\n this.intentoryService.getCategories().subscribe(data => {\r\n this.allCategories = data;\r\n this.intentoryService.getProductDetails(id).subscribe(res => {\r\n let productInfo: any = res;\r\n\r\n let selectedCategory\r\n this.allCategories.forEach(item => {\r\n if (item.id == productInfo.category) { selectedCategory = item; }\r\n });\r\n\r\n if (productInfo.price == 0) { productInfo.price = null; }\r\n\r\n this.productToEdit = productInfo.id;\r\n\r\n this.productForm = {\r\n Name: productInfo.name,\r\n Price: productInfo.price,\r\n PriceNight: productInfo.priceNight,\r\n Category: selectedCategory,\r\n NetContent: productInfo.netcontent,\r\n Photo: productInfo.photo\r\n };\r\n let productName: string = productInfo.name;\r\n this.fileName = productName.replace(/\\s/g, \"\") + \".jpg\";\r\n this.productEditModalStatus = true;\r\n })\r\n });\r\n }\r\n\r\n // CATEGORIES\r\n\r\n openCategoriesModal() {\r\n this.intentoryService.getCategories().subscribe(data => {\r\n this.allCategories = data;\r\n this.intentoryService.getAllProducts().subscribe(data => {\r\n this.allProducts = data;\r\n this.allCategories.forEach(category => {\r\n let count = 0;\r\n this.allProducts.forEach(product => {\r\n if (product.category == category.id) { count += 1 }\r\n });\r\n Object.assign(category, { \"count\": count });\r\n });\r\n this.categoriesModalStatus = true;\r\n });\r\n });\r\n }\r\n\r\n openCreateCategory() {\r\n this.categoryName = null;\r\n this.categoryCreateStatus = true;\r\n }\r\n\r\n createCategory() {\r\n if (this.categoryName != null) {\r\n let data = {\r\n action: \"create\",\r\n category: this.categoryName\r\n };\r\n\r\n this.intentoryService.CategoryActions(data).subscribe(data => {\r\n if (data != '\"0\"') {\r\n this.openCategoriesModal();\r\n this.categoryCreateStatus = false;\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Categoria agregada correctamente' });\r\n this.msg = [];\r\n } else {\r\n this.msg = [];\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Categoria ya existe' });\r\n }\r\n });\r\n } else {\r\n this.msg = [];\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Categoria es requerida' });\r\n }\r\n }\r\n\r\n openDeleteCategoryModal(Id) {\r\n this.categoryToDelete = Id;\r\n this.categoryDeleteStatus = true;\r\n }\r\n\r\n deleteCategory() {\r\n let data = {\r\n action: \"delete\",\r\n id: this.categoryToDelete\r\n };\r\n this.intentoryService.CategoryActions(data).subscribe(data => {\r\n this.openCategoriesModal();\r\n this.categoryDeleteStatus = false;\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Categoria eliminada correctamente' });\r\n this.msg = [];\r\n });\r\n }\r\n\r\n openEditCategoryModal(obj) {\r\n this.msg = [];\r\n this.categoryToEdit = obj.id;\r\n this.categoryName = obj.category;\r\n this.categoryEditStatus = true;\r\n }\r\n\r\n editCategory() {\r\n if (this.categoryName != \"\") {\r\n let data = {\r\n action: \"update\",\r\n id: this.categoryToEdit,\r\n category: this.categoryName\r\n };\r\n\r\n this.intentoryService.CategoryActions(data).subscribe(data => {\r\n if (data != '\"0\"') {\r\n this.openCategoriesModal();\r\n this.categoryEditStatus = false;\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Categoria editada correctamente' });\r\n this.msg = [];\r\n } else {\r\n this.msg = [];\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Categoria ya existe' });\r\n }\r\n });\r\n } else {\r\n this.msg = [];\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Categoria es requerida' });\r\n }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Nombre\r\n Categoria\r\n Cont.Net.\r\n Precio\r\n Disponible\r\n Opciones\r\n \r\n \r\n \r\n \r\n {{product.name}}\r\n {{setCategoryName(product.category)}}\r\n {{product.netcontent}}\r\n {{product.price | currency}}\r\n 0 ? 'green' : 'red' }\"\r\n pTooltip=\"{{product.totalpieces}}\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
Nombre:
\r\n \r\n
\r\n
\r\n
Precio de día:
\r\n \r\n \r\n
\r\n
\r\n
Precio de noche:
\r\n \r\n
\r\n
\r\n
Categoria:
\r\n \r\n \r\n
\r\n
\r\n
Contenido neto
\r\n \r\n
\r\n \r\n\r\n \r\n\r\n
\r\n
Foto:
\r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
¿Seguro que desea eliminar el producto?
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n
\r\n
Nombre:
\r\n \r\n
\r\n
\r\n
Precio de día:
\r\n \r\n \r\n
\r\n
\r\n
Precio de noche:
\r\n \r\n
\r\n
\r\n
Categoria:
\r\n \r\n \r\n
\r\n
\r\n
Contenido neto
\r\n \r\n
\r\n \r\n \r\n\r\n
\r\n
Foto:
\r\n
\r\n \"\"\r\n \r\n
\r\n
\r\n\r\n
\r\n
Foto:
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n Cargo\r\n Usuarios con ese cargo\r\n Opciones\r\n \r\n \r\n \r\n \r\n {{category.category}}\r\n {{category.count}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
¿Seguro que desea eliminar la categoria?
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { HomepageService } from '../homepage.service';\r\n\r\n@Component({\r\n selector: 'app-contact',\r\n templateUrl: './contact.component.html',\r\n styleUrls: ['./contact.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [MessageService]\r\n})\r\nexport class ContactComponent implements OnInit {\r\n\r\n menuDisplay: boolean = false;\r\n logoCompleto: string = '/assets/Images/fullLogo.svg';\r\n msg: any[] = [];\r\n form = { Name: '', Phone: null, Message: '' };\r\n\r\n constructor(private HomeService: HomepageService, private router: Router, private messageService: MessageService) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n quoteValidation() {\r\n this.msg = [];\r\n const { Name, Phone, Message } = this.form;\r\n\r\n let PhoneLenght: number = 0;\r\n if (Phone) { let x: string = Phone.toString(); PhoneLenght = x.length; }\r\n\r\n if (Name == '') {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Nombre es requerido' });\r\n } else if (Phone == null || PhoneLenght < 10) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Telefono debe contar con 10 numeros' });\r\n } else if (Message == '') {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Descripcion es necesaria' });\r\n } else {\r\n this.sendMail();\r\n }\r\n }\r\n\r\n goHome() {\r\n this.router.navigate(['']);\r\n }\r\n\r\n sendMail() {\r\n this.HomeService.sendQuote(this.form).subscribe(res => {\r\n this.form = { Name: '', Phone: null, Message: '' };\r\n this.msg = [];\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Cotizacion enviada' });\r\n }, (error) => {\r\n this.msg = [];\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Oops ocurrio un error!!' });\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
Cotizaciones
\r\n\r\n
\r\n
\r\n
\r\n Para realizar una cotización es necesario que ingrese los siguientes datos, una vez enviados los datos\r\n un miembro del personal lo contactara para atender todas sus dudas y brindarle el mejor apoyo.\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Escriba a continuación los detalles de la cotización (Productos, cantidad y fecha deseada de entrega) :\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n
","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n baseUrl = environment.baseUrl;\r\n\r\n getUsersInformation() {\r\n return this.http.get(`${this.baseUrl}Users`, { responseType: 'json' })\r\n }\r\n\r\n createUser(data) {\r\n return this.http.post(`${this.baseUrl}Users`, data, { responseType: 'text' })\r\n }\r\n\r\n deleteUser(data) {\r\n return this.http.post(`${this.baseUrl}Users`, data, { responseType: 'text' })\r\n }\r\n\r\n editUser(data) {\r\n return this.http.post(`${this.baseUrl}Users`, data, { responseType: 'text' })\r\n }\r\n\r\n getRoles() {\r\n return this.http.get(`${this.baseUrl}Roles`, { responseType: 'json' })\r\n }\r\n\r\n deleteRole(data) {\r\n return this.http.post(`${this.baseUrl}Roles`, data, { responseType: 'text' })\r\n }\r\n\r\n createRole(data) {\r\n return this.http.post(`${this.baseUrl}Roles`, data, { responseType: 'text' })\r\n }\r\n\r\n editRole(data) {\r\n return this.http.post(`${this.baseUrl}Roles`, data, { responseType: 'text' })\r\n }\r\n\r\n getModules() {\r\n return this.http.get(`${this.baseUrl}MenuModules`, { responseType: 'json' })\r\n }\r\n\r\n}\r\n","
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
Catalogo
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
Filtrar productos
\r\n\r\n
Categoria :
\r\n \r\n
Nombre :
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
Cargando lista de productos...
\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n
\r\n
Cambiar modo de vista :
\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {{product.name}}
\r\n
\r\n \r\n \r\n {{setCategoryName(product.category)}}\r\n \r\n
\r\n
Cont.Net. : {{product.netcontent}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {{setCategoryName(product.category)}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
{{product.name}}
\r\n
{{product.netcontent}}
\r\n
{{product.price |\r\n currency}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
","import { ViewportScroller } from '@angular/common';\r\nimport { Component, HostListener, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { HomepageService } from '../homepage.service';\r\n\r\n@Component({\r\n selector: 'app-catalog-public',\r\n templateUrl: './catalog-public.component.html',\r\n styleUrls: ['./catalog-public.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class CatalogPublicComponent implements OnInit {\r\n\r\n allProducts: any;\r\n categories: any;\r\n categoryFilter: any;\r\n appliedFilter: any;\r\n textFilter: any;\r\n menuDisplay: boolean = false;\r\n selectedProductStatus: boolean = false;\r\n selectedProduct: any = { name: '', photo: '' };\r\n scrollTopStatus: boolean = false;\r\n\r\n logoCompleto: string = '/assets/Images/fullLogo.svg';\r\n defaultImage: string = 'assets/Images/system/default.png'\r\n\r\n @HostListener('window:scroll', ['$event']) onScroll(event) {\r\n if (window.pageYOffset > 300) { this.scrollTopStatus = true; } else { this.scrollTopStatus = false; }\r\n }\r\n\r\n constructor(private HomeService: HomepageService, private router: Router, private scroll: ViewportScroller) { }\r\n\r\n ngOnInit(): void {\r\n\r\n this.HomeService.getCategories().subscribe(res1 => {\r\n this.categories = res1;\r\n this.HomeService.getCatalog().subscribe(res2 => this.allProducts = res2);\r\n });\r\n }\r\n\r\n setCategoryName(id) {\r\n let text = \"\";\r\n this.categories.forEach(item => {\r\n if (id == item.id) { text = item.category }\r\n });\r\n return text;\r\n }\r\n\r\n showProduct(item) {\r\n this.selectedProduct = item;\r\n this.selectedProductStatus = true;\r\n }\r\n\r\n scrollToTop() {\r\n this.scroll.scrollToPosition([0, 0]);\r\n }\r\n\r\n goHome() {\r\n this.router.navigate(['']);\r\n }\r\n\r\n ProductPhoto(item: any) {\r\n if (item.photoStatus == null) {\r\n this.HomeService.GetProductPhoto(item.id).subscribe(data => {\r\n Object.assign(item, { photo: data });\r\n });\r\n Object.assign(item, { photoStatus: true });\r\n }\r\n return null;\r\n }\r\n\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { UserService } from '../../users/user.service';\r\nimport { InventoryService } from '../inventory.service';\r\n\r\n@Component({\r\n selector: 'app-acquisitions',\r\n templateUrl: './acquisitions.component.html',\r\n styleUrls: ['./acquisitions.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [MessageService]\r\n})\r\nexport class AcquisitionsComponent implements OnInit {\r\n\r\n constructor(private intentoryService: InventoryService,\r\n private messageService: MessageService,\r\n private userService: UserService,) { }\r\n\r\n msg: any[] = [];\r\n isMobileDevice = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\r\n\r\n allProducts: any;\r\n allAcquisitions: any;\r\n allWarehouses: any;\r\n allWarehousesFilter: any;\r\n allCurrencies: any;\r\n allUsers: any;\r\n\r\n warehouseName: any;\r\n wharehouseOwner: any = null;\r\n wharehouseOwnerStatus: boolean = false;\r\n warehouseToEdit: any;\r\n warehouseToDelete: any;\r\n currencyToEdit: any;\r\n currencyToDelete: any;\r\n totalRecords: any;\r\n isAscendingAcqui = null;\r\n isAscendingCost = null;\r\n\r\n acquisitionRowSelected:any;\r\n\r\n acquisitionForm = {\r\n id: null,\r\n product: { id: null, name: null },\r\n warehouse: { id: null, name: null },\r\n currency: { id: null, name: null },\r\n pieces: null,\r\n cost: null,\r\n admission: null,\r\n soldOut: null,\r\n acquired: null,\r\n }\r\n\r\n lazyData = {\r\n action: \"get\",\r\n id: null,\r\n product: null,\r\n acquired: null,\r\n warehouse: null,\r\n cost: null,\r\n pageSize: null,\r\n offsetRecords: null,\r\n acquisitionsOrder: null,\r\n costOrder: null\r\n }\r\n\r\n currencyForm = {\r\n id: null,\r\n name: '',\r\n abbreviation: '',\r\n value: null\r\n }\r\n\r\n acquisitionModalStatus: boolean = false;\r\n acquisitionDetailsModalStatus: boolean = false;\r\n acquisitionEditStatus: boolean = false;\r\n warehousesModalStatus: boolean = false;\r\n warehouseCreateStatus: boolean = false;\r\n warehouseEditStatus: boolean = false;\r\n warehouseDeleteStatus: boolean = false;\r\n currenciesModalStatus: boolean = false;\r\n currencyEditStatus: boolean = false;\r\n currencyCreateStatus: boolean = false;\r\n currencyDeleteStatus: boolean = false;\r\n\r\n ngOnInit(): void {\r\n this.intentoryService.getAllProducts().subscribe(data => this.allProducts = data);\r\n this.intentoryService.getWarehouses().subscribe(data => this.allWarehousesFilter = data);\r\n }\r\n\r\n // ACQUISITIONS\r\n\r\n getAcquisitions(data){\r\n\r\n this.intentoryService.getLazyAcquisitions(data).subscribe((data:any) => {\r\n this.allAcquisitions = data.acquisitions\r\n this.totalRecords = data.totalResults\r\n });\r\n }\r\n\r\n getLazyAcquisitions(event){\r\n this.lazyData.offsetRecords = event.first\r\n this.lazyData.pageSize = event.rows\r\n this.getAcquisitions(this.lazyData)\r\n\r\n }\r\n\r\n sendActionNotification(data)\r\n {\r\n let notification = {\r\n ID: data.id,\r\n Acción: data.name ,\r\n Producto: this.acquisitionForm.product.name,\r\n Almacén: this.acquisitionForm.warehouse.name,\r\n Piezas: this.acquisitionForm.acquired,\r\n Costo: this.acquisitionForm.cost,\r\n Divisa: this.acquisitionForm.currency.name,\r\n Fecha: this.acquisitionForm.admission\r\n }\r\n this.intentoryService.sendNotification(notification).subscribe();\r\n }\r\n\r\n onRowSelect(event) {\r\n this.acquisitionRowSelected = event.data;\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.acquisitionRowSelected = null;\r\n }\r\n\r\n tableFilter(){\r\n this.getAcquisitions(this.lazyData)\r\n }\r\n\r\n isAdmin()\r\n {\r\n\r\n let currentUser = JSON.parse(localStorage.getItem('currentUser'))\r\n let userModules = currentUser.modules\r\n userModules.forEach(obj => {\r\n if (obj == \"dashboard\")\r\n {return true}\r\n else\r\n {return false}\r\n });\r\n return false\r\n }\r\n\r\n clearId(){\r\n this.lazyData.id = null;\r\n this.getAcquisitions(this.lazyData)\r\n }\r\n clearProduct(){\r\n this.lazyData.product = null;\r\n this.getAcquisitions(this.lazyData)\r\n }\r\n clearLocation(){\r\n this.lazyData.warehouse = null;\r\n this.getAcquisitions(this.lazyData)\r\n }\r\n orderDirectionAcquisitions(){\r\n [this.isAscendingAcqui,this.lazyData.acquisitionsOrder] = this.validateIsAscending(this.isAscendingAcqui);\r\n this.getAcquisitions(this.lazyData)\r\n }\r\n orderDirectionCosts(){\r\n [this.isAscendingCost,this.lazyData.costOrder] = this.validateIsAscending(this.isAscendingCost);\r\n this.getAcquisitions(this.lazyData)\r\n }\r\n\r\n validateIsAscending(isAscending)\r\n {\r\n let data = null;\r\n if (isAscending === null) {\r\n isAscending = true;\r\n data = \"ASC\";\r\n } else if (isAscending === true) {\r\n isAscending = false;\r\n data = \"DESC\";\r\n } else {\r\n isAscending = null;\r\n data = null;\r\n }\r\n\r\n return [isAscending,data]\r\n }\r\n openCreateAcquisitions() {\r\n this.intentoryService.getCurrencies().subscribe(data => this.allCurrencies = data);\r\n this.intentoryService.getWarehouses().subscribe(data => this.allWarehouses = data);\r\n this.intentoryService.getAllProducts().subscribe(data => {\r\n this.allProducts = data;\r\n this.acquisitionModalStatus = true;\r\n });\r\n this.acquisitionForm = {\r\n id: null,\r\n product: null,\r\n warehouse: null,\r\n currency: null,\r\n pieces: null,\r\n cost: null,\r\n admission: null,\r\n soldOut: null,\r\n acquired: null,\r\n }\r\n }\r\n\r\n openAcquisitionsDetails(item) {\r\n let SelectedProduct: any;\r\n this.intentoryService.getCurrencies().subscribe(data => { this.allCurrencies = data; });\r\n this.intentoryService.getWarehouses().subscribe(data => { this.allWarehouses = data; });\r\n this.intentoryService.getAllProducts().subscribe(data => {\r\n this.allProducts = data;\r\n SelectedProduct = this.allProducts.findIndex(x => x.id == item.product.id);\r\n\r\n this.acquisitionForm = {\r\n id: item.id,\r\n product: this.allProducts[SelectedProduct],\r\n warehouse: item.warehouse,\r\n currency: item.currency,\r\n pieces: item.pieces,\r\n cost: item.cost,\r\n admission: item.admission,\r\n soldOut: item.soldOut,\r\n acquired: item.acquired\r\n };\r\n this.acquisitionEditStatus = true;\r\n this.acquisitionDetailsModalStatus = true;\r\n });\r\n }\r\n\r\n createAcquisitionValidation() {\r\n this.msg = [];\r\n const { product, warehouse, currency, cost, admission, acquired } = this.acquisitionForm;\r\n\r\n if (product == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Producto es requerido' });\r\n } else if (admission == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Admision es requerido' });\r\n } else if (cost == '' || cost == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Costo es requerido' });\r\n } else if (currency == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Divisa es requerida' });\r\n } else if (acquired == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Piezas adquiridas es requerido' });\r\n } else if (warehouse == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Almacen es requerido' });\r\n } else {\r\n this.createAcquisition();\r\n }\r\n }\r\n\r\n updateAcquisitionValidation() {\r\n this.msg = [];\r\n const { product, warehouse, currency, cost, admission, acquired, pieces } = this.acquisitionForm;\r\n\r\n if (product == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Producto es requerido' });\r\n } else if (admission == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Admision es requerido' });\r\n } else if (cost == '' || cost == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Costo es requerido' });\r\n } else if (currency == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Divisa es requerida' });\r\n } else if (acquired == null || acquired == 0) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Piezas adquiridas es requerido' });\r\n } else if (warehouse == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Almacen es requerido' });\r\n } else if (pieces == null || pieces == 0) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Piezas existentes es requerido' });\r\n } else if (pieces > acquired) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Piezas existentes debe ser menor o igual a adquiridas' });\r\n } else {\r\n this.UpdateAcquisition();\r\n }\r\n }\r\n\r\n createAcquisition() {\r\n let data = {\r\n action: 'create',\r\n productId: this.acquisitionForm.product.id,\r\n warehouseId: this.acquisitionForm.warehouse.id,\r\n acquired: this.acquisitionForm.acquired,\r\n cost: this.acquisitionForm.cost,\r\n currencyId: this.acquisitionForm.currency.id,\r\n admission: this.acquisitionForm.admission\r\n }\r\n this.intentoryService.AcquisitionsActions(data).subscribe(data => {\r\n this.acquisitionModalStatus = false;\r\n this.getAcquisitions(this.lazyData)\r\n let action = {\r\n id: data,\r\n name: 'Adquisicion Creada'\r\n }\r\n if(!this.isAdmin()){this.sendActionNotification(action)}\r\n });\r\n }\r\n\r\n UpdateAcquisition() {\r\n let data = {\r\n action: 'update',\r\n id: this.acquisitionForm.id,\r\n productId: this.acquisitionForm.product.id,\r\n warehouseId: this.acquisitionForm.warehouse.id,\r\n acquired: this.acquisitionForm.acquired,\r\n cost: this.acquisitionForm.cost,\r\n currencyId: this.acquisitionForm.currency.id,\r\n admission: this.acquisitionForm.admission,\r\n pieces: this.acquisitionForm.pieces\r\n }\r\n this.intentoryService.AcquisitionsActions(data).subscribe(data => {\r\n this.acquisitionDetailsModalStatus = false;\r\n this.getAcquisitions(this.lazyData)\r\n let action = {\r\n id: this.acquisitionForm.id,\r\n name: 'Adquisicion Actualizada'\r\n }\r\n\r\n if(!this.isAdmin()) {this.sendActionNotification(action)}\r\n });\r\n }\r\n\r\n deleteAcquisition() {\r\n let data = {\r\n action: 'delete',\r\n id: this.acquisitionForm.id,\r\n }\r\n this.intentoryService.AcquisitionsActions(data).subscribe(data => {\r\n this.acquisitionDetailsModalStatus = false;\r\n this.getAcquisitions(this.lazyData)\r\n let action = {\r\n id: this.acquisitionForm.id,\r\n name: 'Adquisicion Eliminada'\r\n }\r\n\r\n if(!this.isAdmin()) {this.sendActionNotification(action)}\r\n });\r\n }\r\n\r\n // WAREHOUSES\r\n\r\n openWarehousesModal() {\r\n this.intentoryService.getWarehouses().subscribe(data => {\r\n this.allWarehouses = data;\r\n this.intentoryService.getLazyAcquisitions(this.lazyData).subscribe((data:any) => {\r\n this.allAcquisitions = data.acquisitions\r\n this.totalRecords = data.totalResults\r\n this.allWarehouses.forEach(warehouse => {\r\n let count = 0;\r\n this.allAcquisitions.forEach(acquisition => {\r\n if (acquisition.warehouse.id == warehouse.id) { count += 1 }\r\n });\r\n Object.assign(warehouse, { \"count\": count });\r\n });\r\n this.userService.getUsersInformation().subscribe(data => this.allUsers = data);\r\n this.warehousesModalStatus = true;\r\n });\r\n });\r\n }\r\n\r\n openEditWarehouseModal(obj) {\r\n this.msg = [];\r\n this.warehouseToEdit = obj.id;\r\n this.warehouseName = obj.name;\r\n if (obj.owner != null) {\r\n let selectedUser\r\n this.allUsers.forEach(user => { if (obj.owner == user.clientId) { selectedUser = user; } });\r\n this.wharehouseOwner = selectedUser;\r\n this.wharehouseOwnerStatus = true;\r\n } else {\r\n this.wharehouseOwner = null;\r\n this.wharehouseOwnerStatus = false;\r\n }\r\n this.warehouseEditStatus = true;\r\n }\r\n\r\n editWarehouseValidation() {\r\n this.msg = [];\r\n\r\n if (this.warehouseName == \"\") {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Almacen es requerida' });\r\n } else if (this.wharehouseOwnerStatus) {\r\n if (this.wharehouseOwner != null) { this.editWarehouse(); }\r\n else { this.msg.push({ severity: 'error', summary: '', detail: 'Usuario es requerido' }); }\r\n } else {\r\n this.editWarehouse();\r\n }\r\n\r\n }\r\n\r\n editWarehouse() {\r\n let data = {\r\n action: \"update\",\r\n id: this.warehouseToEdit,\r\n warehouse: this.warehouseName\r\n };\r\n if (this.wharehouseOwnerStatus) { Object.assign(data, { owner: this.wharehouseOwner.clientId }); }\r\n this.intentoryService.WarehouseActions(data).subscribe(data => {\r\n if (data != '\"0\"') {\r\n this.openWarehousesModal();\r\n this.warehouseEditStatus = false;\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Almacen editado correctamente' });\r\n this.msg = [];\r\n } else {\r\n this.msg = [];\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Nombre ya existe y/o existe uno con el mismo usuario' });\r\n }\r\n });\r\n }\r\n\r\n openCreateWarehouse() {\r\n this.msg = [];\r\n this.warehouseName = \"\";\r\n this.wharehouseOwnerStatus = false;\r\n this.wharehouseOwner = null;\r\n this.warehouseCreateStatus = true;\r\n }\r\n\r\n createWarehouseValidation() {\r\n this.msg = [];\r\n\r\n if (this.warehouseName == \"\") {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Almacen es requerida' });\r\n } else if (this.wharehouseOwnerStatus) {\r\n if (this.wharehouseOwner != null) { this.createWarehouse(); }\r\n else { this.msg.push({ severity: 'error', summary: '', detail: 'Usuario es requerido' }); }\r\n } else {\r\n this.createWarehouse();\r\n }\r\n\r\n }\r\n\r\n createWarehouse() {\r\n let data = {\r\n action: 'create',\r\n warehouse: this.warehouseName,\r\n };\r\n if (this.wharehouseOwnerStatus) { Object.assign(data, { owner: this.wharehouseOwner.clientId }); }\r\n this.intentoryService.WarehouseActions(data).subscribe(data => {\r\n if (data != '\"0\"') {\r\n this.openWarehousesModal()\r\n this.warehouseCreateStatus = false;\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Almacen creado correctamente' });\r\n this.msg = [];\r\n } else {\r\n this.msg = [];\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Nombre ya existe y/o existe uno con el mismo usuario' });\r\n }\r\n });\r\n }\r\n\r\n openDeleteWarehouseModal(Id) {\r\n this.warehouseToDelete = Id;\r\n this.warehouseDeleteStatus = true;\r\n }\r\n\r\n deleteWarehouse() {\r\n let data = {\r\n action: \"delete\",\r\n id: this.warehouseToDelete\r\n };\r\n this.intentoryService.WarehouseActions(data).subscribe(data => {\r\n this.openWarehousesModal();\r\n this.warehouseDeleteStatus = false;\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'almacen eliminado correctamente' });\r\n this.msg = [];\r\n });\r\n }\r\n\r\n // CURRENCIES\r\n\r\n openCurrenciesModal() {\r\n this.intentoryService.getCurrencies().subscribe(data => {\r\n this.allCurrencies = data;\r\n this.intentoryService.getLazyAcquisitions(this.lazyData).subscribe((data:any) => {\r\n this.allAcquisitions = data.acquisitions\r\n this.totalRecords = data.totalResults\r\n this.allCurrencies.forEach(currency => {\r\n let count = 0;\r\n this.allAcquisitions.forEach(acquisition => {\r\n if (acquisition.currency.id == currency.id) { count += 1 }\r\n });\r\n Object.assign(currency, { \"count\": count });\r\n });\r\n this.currenciesModalStatus = true;\r\n });\r\n });\r\n }\r\n\r\n openCreateCurrency() {\r\n this.currencyForm = {\r\n id: null,\r\n name: '',\r\n abbreviation: '',\r\n value: null\r\n };\r\n this.currencyCreateStatus = true;\r\n }\r\n\r\n createCurrencyValidation() {\r\n this.msg = [];\r\n const { name, value, abbreviation } = this.currencyForm;\r\n\r\n if (name == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'nombre es requerido' });\r\n } else if (abbreviation == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'abreviación es requerido' });\r\n } else if (value == null && value > 0) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'valor es requerida' });\r\n } else {\r\n this.createCurrency();\r\n }\r\n }\r\n\r\n createCurrency() {\r\n let data = {\r\n action: 'create',\r\n name: this.currencyForm.name,\r\n abbreviation: this.currencyForm.abbreviation,\r\n value: this.currencyForm.value\r\n }\r\n this.intentoryService.CurrenciesActions(data).subscribe(data => {\r\n if (data != '\"0\"') {\r\n this.openCurrenciesModal();\r\n this.currencyCreateStatus = false;\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Divisa creada correctamente' });\r\n this.msg = [];\r\n } else {\r\n this.msg = [];\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Divisa o abreviación ya existe' });\r\n }\r\n });\r\n }\r\n\r\n openEditCurrencyModal(obj) {\r\n this.msg = [];\r\n this.currencyToEdit = obj\r\n this.currencyForm = this.currencyToEdit;\r\n this.currencyEditStatus = true;\r\n }\r\n\r\n editCurrencyValidation() {\r\n this.msg = [];\r\n const { name, abbreviation, value } = this.currencyForm;\r\n if (name == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'nombre es requerido' });\r\n } else if (abbreviation == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'abreviación es requerida' });\r\n } else if (value == null) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'valor es requerido' });\r\n } else {\r\n this.editCurrency();\r\n }\r\n }\r\n\r\n editCurrency() {\r\n let data = {\r\n action: \"update\",\r\n id: this.currencyForm.id,\r\n name: this.currencyForm.name,\r\n abbreviation: this.currencyForm.abbreviation,\r\n value: this.currencyForm.value\r\n };\r\n this.intentoryService.CurrenciesActions(data).subscribe(data => {\r\n if (data != '\"0\"') {\r\n this.openCurrenciesModal();\r\n this.currencyEditStatus = false;\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Divisa editada correctamente' });\r\n this.msg = [];\r\n } else {\r\n this.msg = [];\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Divisa o abreviación ya existe' });\r\n }\r\n });\r\n }\r\n\r\n openDeleteCurrencyModal(Id) {\r\n this.currencyToDelete = Id;\r\n this.currencyDeleteStatus = true;\r\n }\r\n\r\n deleteCurrency() {\r\n let data = {\r\n action: \"delete\",\r\n id: this.currencyToDelete\r\n };\r\n this.intentoryService.CurrenciesActions(data).subscribe(data => {\r\n this.openCurrenciesModal();\r\n this.currencyDeleteStatus = false;\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Divisa eliminada correctamente' });\r\n this.msg = [];\r\n });\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n Productos Ingresados\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Id\r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Producto\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Existencia / Adquiridas\r\n \r\n \r\n \r\n \r\n Ubicacion\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n Costos / Precio de compra\r\n \r\n \r\n \r\n Detalles\r\n \r\n
\r\n \r\n \r\n {{acquisition.id}}\r\n {{acquisition.product.name}}\r\n {{acquisition.pieces}}/{{acquisition.acquired}}\r\n {{acquisition.warehouse.name}}\r\n {{acquisition.cost}} {{acquisition.currency.name}}\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
Id:
\r\n \r\n
\r\n
\r\n
Producto:
\r\n \r\n \r\n
\r\n
\r\n
Admision:
\r\n \r\n
\r\n
\r\n
Costo:
\r\n \r\n \r\n
\r\n
\r\n
Divisa:
\r\n \r\n \r\n
\r\n
\r\n
Piezas existentes:
\r\n \r\n \r\n
\r\n
\r\n
Piezas adquiridas:
\r\n \r\n \r\n
\r\n
\r\n
Almacen:
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
Producto:
\r\n \r\n \r\n
\r\n
\r\n
Admision:
\r\n \r\n
\r\n
\r\n
Costo:
\r\n \r\n \r\n
\r\n
\r\n
Divisa:
\r\n \r\n
\r\n
\r\n
Piezas adquiridas:
\r\n \r\n
\r\n
\r\n
Almacen:
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n Almacen\r\n Adquisiciones con este almacen\r\n Opciones\r\n \r\n \r\n \r\n \r\n {{warehouse.name}}\r\n {{warehouse.count}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
Nombre para nuevo almacen:
\r\n \r\n
\r\n
Almacen de usuario :
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
Nombre para almacen:
\r\n \r\n
\r\n
Almacen de usuario :
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n
¿Seguro que desea eliminar el almacen?
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n Divisa\r\n Valor\r\n Aquisiciones con esta divisa\r\n Opciones\r\n \r\n \r\n \r\n \r\n {{currency.name}} ({{currency.abbreviation}})\r\n {{currency.value}}\r\n {{currency.count}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
Nombre:
\r\n \r\n
\r\n
\r\n
Abreviación:
\r\n \r\n
\r\n
\r\n
Valor:
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
Nombre:
\r\n \r\n
\r\n
\r\n
Abreviación:
\r\n \r\n
\r\n
\r\n
Valor:
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n
¿Seguro que desea eliminar la divisa?
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n","import { Component, HostListener, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { LoginService } from 'src/app/login/login.service';\r\n\r\n@Component({\r\n selector: 'app-main',\r\n templateUrl: './main.component.html',\r\n styleUrls: ['./main.component.css']\r\n})\r\nexport class MainComponent implements OnInit {\r\n\r\n constructor(private loginservice: LoginService, private router: Router) { }\r\n\r\n mobDeviceFlag: boolean = false;\r\n\r\n ngOnInit(): void {\r\n if (window.innerWidth < 768) { this.mobDeviceFlag = true }\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onresize(event) {\r\n if (window.innerWidth < 768) { this.mobDeviceFlag = true }\r\n else { this.mobDeviceFlag = false }\r\n }\r\n\r\n}\r\n","
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { SalesService } from '../sales.service';\r\n\r\n@Component({\r\n selector: 'app-clients',\r\n templateUrl: './clients.component.html',\r\n styleUrls: ['./clients.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [MessageService]\r\n})\r\nexport class ClientsComponent implements OnInit {\r\n\r\n allClients: any;\r\n clientRowSelected: any;\r\n isMobileDevice = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\r\n clientDetailsModalStatus: boolean = false;\r\n clientAddModalStatus: boolean = false;\r\n clientEditStatus: boolean = false;\r\n fullDataClient: boolean = false;\r\n\r\n msg: any\r\n\r\n clientForm = {\r\n Id: null,\r\n Client: '',\r\n Address: '',\r\n Email: '',\r\n ExpenseType: '',\r\n RFC: '',\r\n Location: '',\r\n Phone: null\r\n }\r\n\r\n constructor(private salesService: SalesService, private messageService: MessageService) { }\r\n\r\n ngOnInit(): void {\r\n this.salesService.getClients().subscribe(data => this.allClients = data);\r\n }\r\n\r\n onRowSelect(event) {\r\n this.clientRowSelected = event.data;\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.clientRowSelected = null;\r\n }\r\n sendActionNotification(data)\r\n {\r\n let notification = {\r\n Acción: data.name ,\r\n Cliente: this.clientForm.Client,\r\n Dirección: this.clientForm.Address,\r\n Teléfono: this.clientForm.Phone\r\n }\r\n\r\n this.salesService.sendNotification(notification).subscribe();\r\n }\r\n isAdmin()\r\n {\r\n\r\n let currentUser = JSON.parse(localStorage.getItem('currentUser'))\r\n let userModules = currentUser.modules\r\n userModules.forEach(obj => {\r\n if (obj == \"dashboard\")\r\n {return true}\r\n else\r\n {return false}\r\n });\r\n return false\r\n }\r\n openClientDetailsModal(item) {\r\n this.msg = [];\r\n this.clientForm = {\r\n Id: item.id,\r\n Client: item.client,\r\n Address: item.address,\r\n Email: item.email,\r\n ExpenseType: item.expenseType,\r\n RFC: item.rfc,\r\n Location: item.location,\r\n Phone: item.phone\r\n }\r\n this.clientEditStatus = false;\r\n this.clientDetailsModalStatus = true;\r\n }\r\n\r\n openAddClientModal() {\r\n this.msg = [];\r\n this.clientForm = {\r\n Id: null,\r\n Client: '',\r\n Address: '',\r\n Email: '',\r\n ExpenseType: '',\r\n RFC: '',\r\n Location: '',\r\n Phone: null\r\n }\r\n this.clientAddModalStatus = true;\r\n }\r\n\r\n selectClientValidation() {\r\n if (this.fullDataClient) {\r\n this.addFullClientValidation();\r\n } else {\r\n this.addClientValidation();\r\n }\r\n }\r\n\r\n addFullClientValidation() {\r\n this.msg = [];\r\n const { Client, Address, Email, ExpenseType, RFC, Location, Phone } = this.clientForm;\r\n if (Client == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Cliente es requerido' });\r\n } else if (Phone == null || Phone > 9999999999 || Phone < 999999999) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Telefono es requerido (10 digitos)' });\r\n } else if (Location == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Ubicación es requerida' });\r\n } else if (Address == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Dirección es requerida' });\r\n } else if (Email == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Email es requerido' });\r\n } else if (ExpenseType == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Tipo de gasto es requerido' });\r\n } else if (RFC == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'RFC es requerido' });\r\n } else {\r\n this.addClient();\r\n }\r\n }\r\n\r\n addClientValidation() {\r\n this.msg = [];\r\n const { Client, Location, Phone } = this.clientForm;\r\n if (Client == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Cliente es requerido' });\r\n } else if (Phone == null || Phone > 9999999999 || Phone < 999999999) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Telefono es requerido (10 digitos)' });\r\n } else if (Location == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Ubicación es requerida' });\r\n } else {\r\n this.addClient();\r\n }\r\n }\r\n\r\n addClient() {\r\n let data = {\r\n action: 'create',\r\n client: this.clientForm.Client,\r\n address: this.clientForm.Address,\r\n email: this.clientForm.Email,\r\n expenseType: this.clientForm.ExpenseType,\r\n rfc: this.clientForm.RFC,\r\n location: this.clientForm.Location,\r\n phone: this.clientForm.Phone\r\n }\r\n this.salesService.ClientActions(data).subscribe(response => {\r\n this.clientAddModalStatus = false;\r\n this.salesService.getClients().subscribe(data => this.allClients = data);\r\n if(!this.isAdmin()) {this.sendActionNotification({name: 'Cliente Agregado'})}\r\n })\r\n }\r\n\r\n updateClientValidation() {\r\n this.msg = [];\r\n const { Client, Location, Phone } = this.clientForm;\r\n if (Client == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Cliente es requerido' });\r\n } else if (Phone == null || Phone > 9999999999 || Phone < 999999999) {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Telefono es requerido (10 digitos)' });\r\n } else if (Location == '') {\r\n this.msg.push({ severity: 'error', summary: '', detail: 'Ubicación es requerida' });\r\n } else {\r\n this.updateClient();\r\n }\r\n }\r\n\r\n updateClient() {\r\n let data = {\r\n action: 'update',\r\n id: this.clientForm.Id,\r\n client: this.clientForm.Client,\r\n address: this.clientForm.Address,\r\n email: this.clientForm.Email,\r\n expenseType: this.clientForm.ExpenseType,\r\n rfc: this.clientForm.RFC,\r\n location: this.clientForm.Location,\r\n phone: this.clientForm.Phone\r\n }\r\n this.salesService.ClientActions(data).subscribe(response => {\r\n this.clientDetailsModalStatus = false;\r\n this.salesService.getClients().subscribe(data => this.allClients = data);\r\n if(!this.isAdmin()) {this.sendActionNotification({name: 'Cliente Actualizado'})}\r\n })\r\n }\r\n\r\n deleteClient() {\r\n let data = {\r\n action: 'delete',\r\n id: this.clientForm.Id\r\n }\r\n this.salesService.ClientActions(data).subscribe(response => {\r\n this.clientDetailsModalStatus = false;\r\n this.salesService.getClients().subscribe(data => this.allClients = data);\r\n if(!this.isAdmin()) {this.sendActionNotification({name: 'Cliente Eliminado'})}\r\n })\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n Clientes registrados\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n Id\r\n Nombre\r\n Telefono\r\n Detalles\r\n \r\n \r\n \r\n \r\n {{client.id}}\r\n {{client.client}}\r\n {{client.phone}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
Cliente:
\r\n \r\n
\r\n
\r\n
Telefono:
\r\n \r\n \r\n
\r\n
\r\n
Ubicación:
\r\n \r\n
\r\n
\r\n Cliente completo:\r\n \r\n
\r\n
\r\n
\r\n
Dirección:
\r\n \r\n
\r\n
\r\n
Email:
\r\n \r\n
\r\n
\r\n
Tipo de gasto:
\r\n \r\n
\r\n
\r\n
RFC:
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n \r\n
\r\n
\r\n
Cliente:
\r\n \r\n
\r\n
\r\n
Telefono:
\r\n \r\n \r\n
\r\n
\r\n
Dirección:
\r\n \r\n
\r\n
\r\n
Email:
\r\n \r\n
\r\n
\r\n
Tipo de gasto:
\r\n \r\n
\r\n
\r\n
RFC:
\r\n \r\n
\r\n
\r\n
Ubicación:
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn-bd\": \"loYQ\",\n\t\"./bn-bd.js\": \"loYQ\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-mx\": \"tbfe\",\n\t\"./es-mx.js\": \"tbfe\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";","import { Component } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { LoginService } from './login/login.service';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent {\r\n title = 'WineUI';\r\n\r\n currentUser: any;\r\n\r\n constructor(private router: Router, private loginService: LoginService) {\r\n this.loginService.currentUser.subscribe(x => this.currentUser = x);\r\n }\r\n\r\n logout() {\r\n this.loginService.logout();\r\n this.router.navigate(['/login']);\r\n }\r\n}\r\n","","\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \"logo\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
{{slide.title}}
\r\n \"slider\r\n
{{slide.description}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"logo\r\n
\r\n
\r\n
\r\n
\r\n \"logo\r\n
\r\n
\r\n
\r\n
\r\n \"logo\r\n
\r\n
\r\n
\r\n
\r\n \"logo\r\n
\r\n
\r\n
\r\n
\r\n \"logo\r\n
\r\n
\r\n
\r\n
\r\n \"logo\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Productos mas vendidos
\r\n \"slider\r\n
\r\n \r\n
Cargando productos...
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
{{product.name}}
\r\n
{{product.netcontent}}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Ver ahora\r\n
\r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n
Porque elegirnos
\r\n \"slider\r\n
\r\n
\r\n \r\n
Calidad
\r\n
\r\n Todos nuestros productos son adnquiridos directamente con los distribuidores a travez de todo el\r\n mundo. garantizamos la alta calidad.\r\n
\r\n
\r\n
\r\n \r\n
Personal y comercial
\r\n
\r\n Hacemos ventas de mayoreo y menudeo, asi como envios a travez de todo mexico con tiempos de entrega\r\n eficientes, contamos con entrega inmediata en el municipio de culiacan, Sinaloa.\r\n
\r\n
\r\n
\r\n \r\n
Mejores precios
\r\n
\r\n El precio de nuestros productos es justo y costeable. estara sorprendido una vez que se realice la\r\n entrega de su paquete.
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"logo\r\n
\r\n Barman ©. Todos los derechos reservados\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { HomepageService } from '../homepage.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class HomeComponent implements OnInit {\r\n\r\n slides: any;\r\n topProducts: any;\r\n menuDisplay: boolean = false;\r\n\r\n logoCompleto: string = '/assets/Images/fullLogo.svg';\r\n sliderLine: string = '/assets/Images/homepage/slider-line.png';\r\n\r\n logoBaileys: string = '/assets/Images/homepage/brands/Baileys.svg';\r\n logoBuchanans: string = '/assets/Images/homepage/brands/Buchanans.svg';\r\n logoDonJulio: string = '/assets/Images/homepage/brands/DonJulio.svg';\r\n logoJackDaniels: string = '/assets/Images/homepage/brands/JackDaniels.svg';\r\n logoJonnieWalker: string = '/assets/Images/homepage/brands/JonnieWalker.svg';\r\n logoMoet: string = '/assets/Images/homepage/brands/Moet.svg';\r\n\r\n\r\n constructor(private HomeService: HomepageService, private router: Router) { }\r\n\r\n ngOnInit(): void {\r\n\r\n this.slides = [\r\n {\r\n class: \"slide1\",\r\n title: \"Mision\",\r\n description: `Ser líderes a nivel estatal en distribución de vinos y licores manteniendo \r\n nuestro compromisos de suministro, calidad y precio.`\r\n },\r\n {\r\n class: \"slide2\",\r\n title: \"Vision\",\r\n description: `Buscamos ofrecer un extenso portafolio de productos a buen precio para ser \r\n los más competentes en el mercado llevando de la mano el éxito y la felicidad de nuestros clientes.`\r\n },\r\n {\r\n class: \"slide3\",\r\n title: \"Quienes somos\",\r\n description: `Somos una empresa que se dedica a la comecializacion de vinos y licores,\r\n asi como tambien, poseemos la capacidad de obtener algun vino o licor fuera de nuestro\r\n catalogo.`\r\n }\r\n ]\r\n\r\n this.HomeService.getTopProducts().subscribe(data => { this.topProducts = data });\r\n \r\n }\r\n\r\n test() {\r\n this.router.navigate(['Catalogo']);\r\n }\r\n\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DashboardService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n baseUrl = environment.baseUrl;\r\n\r\n getDashboardInfo() {\r\n return this.http.get(`${this.baseUrl}Dashboard`, { responseType: 'json' })\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from '../../../src/environments/environment';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { map } from 'rxjs/operators';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoginService {\r\n\r\n private currentUserSubject: BehaviorSubject;\r\n public currentUser: Observable;\r\n\r\n constructor(private http: HttpClient) {\r\n this.currentUserSubject = new BehaviorSubject(JSON.parse(localStorage.getItem('currentUser')));\r\n this.currentUser = this.currentUserSubject.asObservable();\r\n }\r\n baseUrl = environment.baseUrl;\r\n\r\n public get currentUserValue(): any {\r\n return this.currentUserSubject.value;\r\n }\r\n\r\n getUserId() {\r\n this.currentUserSubject = new BehaviorSubject(JSON.parse(localStorage.getItem('currentUser')));\r\n this.currentUser = this.currentUserSubject.asObservable();\r\n return this.currentUser;\r\n }\r\n\r\n login(data) {\r\n return this.http.post(`${this.baseUrl}UserAccess`, data, { responseType: 'json' })\r\n .pipe(map(res => {\r\n if (res.toString() != \"\") {\r\n localStorage.setItem('currentUser', JSON.stringify(res));\r\n this.currentUserSubject.next(data);\r\n }\r\n return res;\r\n }));\r\n }\r\n\r\n logout() {\r\n localStorage.removeItem('currentUser');\r\n this.currentUserSubject.next(null);\r\n }\r\n\r\n}\r\n","// Angular modules\r\nimport { NgModule } from '@angular/core';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\n\r\n// Components\r\nimport { AppComponent } from './app.component';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { MainComponent } from './system/main/main.component';\r\nimport { HeaderComponent } from './system/header/header.component';\r\nimport { HomeComponent } from './homepage/home/home.component';\r\nimport { UsersComponent } from './system/users/users.component';\r\nimport { InventoryComponent } from './system/inventory/inventory.component';\r\nimport { DashboardComponent } from './system/dashboard/dashboard.component';\r\nimport { SalesComponent } from './system/sales/sales.component';\r\nimport { OrdersComponent } from './system/orders/orders.component';\r\nimport { MenuComponent } from './system/menu/menu.component';\r\nimport { CatalogComponent } from './system/catalog/catalog.component';\r\nimport { CatalogPublicComponent } from './homepage/catalog-public/catalog-public.component';\r\nimport { ContactComponent } from './homepage/contact/contact.component';\r\nimport { HeaderPublicComponent } from './homepage/header-public/header-public.component';\r\nimport { NewOrderComponent } from './system/sales/new-order/new-order.component';\r\nimport { ClientsComponent } from './system/sales/clients/clients.component';\r\nimport { OrderListComponent } from './system/sales/order-list/order-list.component';\r\nimport { EditOrderComponent } from './system/sales/edit-order/edit-order.component';\r\nimport { ProductsComponent } from './system/inventory/products/products.component';\r\nimport { ProductsManageComponent } from './system/inventory/products-manage/products-manage.component';\r\nimport { AcquisitionsComponent } from './system/inventory/acquisitions/acquisitions.component';\r\n\r\n// NgPrime modules\r\nimport { ChartModule } from 'primeng/chart';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { CardModule } from 'primeng/card';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { TableModule } from 'primeng/table';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { InputNumberModule } from 'primeng/inputnumber';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\nimport { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { MessageModule } from 'primeng/message';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { SidebarModule } from 'primeng/sidebar';\r\nimport { TabViewModule } from 'primeng/tabview';\r\nimport { DataViewModule } from 'primeng/dataview';\r\nimport { TagModule } from 'primeng/tag';\r\nimport { ScrollTopModule } from 'primeng/scrolltop';\r\nimport { FileUploadModule } from 'primeng/fileupload';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { CarouselModule } from 'primeng/carousel';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { CheckboxModule } from 'primeng/checkbox';\r\nimport { ProgressBarModule } from 'primeng/progressbar';\r\n\r\n// Other Libraries\r\nimport { JwtInterceptor, } from './jwt.interceptor';\r\nimport { ErrorInterceptor } from './error.interceptor';\r\nimport { ProductPipe } from './system/catalog/product.pipe';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HeaderComponent,\r\n LoginComponent,\r\n MainComponent,\r\n HeaderComponent,\r\n HomeComponent,\r\n UsersComponent,\r\n InventoryComponent,\r\n DashboardComponent,\r\n SalesComponent,\r\n OrdersComponent,\r\n MenuComponent,\r\n ProductPipe,\r\n CatalogComponent,\r\n CatalogPublicComponent,\r\n ContactComponent,\r\n HeaderPublicComponent,\r\n NewOrderComponent,\r\n ClientsComponent,\r\n OrderListComponent,\r\n EditOrderComponent,\r\n ProductsComponent,\r\n ProductsManageComponent,\r\n AcquisitionsComponent\r\n ],\r\n imports: [\r\n FormsModule,\r\n HttpClientModule,\r\n BrowserModule,\r\n AppRoutingModule,\r\n ChartModule,\r\n ButtonModule,\r\n CardModule,\r\n InputTextModule,\r\n BrowserAnimationsModule,\r\n TableModule,\r\n TooltipModule,\r\n DialogModule,\r\n InputNumberModule,\r\n DropdownModule,\r\n MultiSelectModule,\r\n InputSwitchModule,\r\n MessagesModule,\r\n MessageModule,\r\n ToastModule,\r\n SidebarModule,\r\n TabViewModule,\r\n DataViewModule,\r\n TagModule,\r\n ScrollTopModule,\r\n FileUploadModule,\r\n CalendarModule,\r\n CarouselModule,\r\n InputTextareaModule,\r\n CheckboxModule,\r\n ProgressBarModule\r\n ],\r\n providers: [\r\n { provide: HTTP_INTERCEPTORS, useClass: JwtInterceptor, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true }\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OrdersService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n baseUrl = environment.baseUrl;\r\n\r\n getOrders(data) {\r\n return this.http.post(`${this.baseUrl}SalesmanOrders`, data, { responseType: 'json' })\r\n }\r\n\r\n getInvoiceOrders(data) {\r\n return this.http.post(`${this.baseUrl}Order`, data, { responseType: 'json' })\r\n }\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { MessageService } from 'primeng/api';\r\nimport { SalesService } from '../../sales/sales.service';\r\nimport { InventoryService } from '../inventory.service';\r\n\r\n@Component({\r\n selector: 'app-products-manage',\r\n templateUrl: './products-manage.component.html',\r\n styleUrls: ['./products-manage.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [MessageService]\r\n})\r\nexport class ProductsManageComponent implements OnInit {\r\n\r\n constructor(\r\n private intentoryService: InventoryService,\r\n private messageService: MessageService,\r\n private salesService: SalesService) { }\r\n\r\n msg: any[] = [];\r\n\r\n AvailableProducts: any;\r\n allWarehouses: any;\r\n allProducts: any;\r\n\r\n productToMove: any;\r\n productAcquisitions: any;\r\n productTotalPieces: any;\r\n warehousesPieces: any;\r\n warehouseFrom: any;\r\n warehouseTo: any;\r\n piecesToMove: any;\r\n maxPiecesToMove: any;\r\n\r\n warehouseToLook: any;\r\n allWarehousesToLook: any;\r\n warehousesProducts: any;\r\n\r\n moveProductConfirmationModal: boolean = false;\r\n undoConfirmationModal: boolean = false;\r\n\r\n defaultImage: string = 'assets/Images/system/default.png'\r\n\r\n ngOnInit(): void {\r\n this.salesService.getProductsAvailable().subscribe(data => this.AvailableProducts = data);\r\n this.intentoryService.getWarehouses().subscribe(data => this.allWarehousesToLook = data);\r\n this.intentoryService.getAllProducts().subscribe(data => this.allProducts = data);\r\n }\r\n\r\n getWarehouseProducts() {\r\n let data = {\r\n action: \"getWarehousePices\",\r\n id: this.warehouseToLook.id\r\n }\r\n this.intentoryService.ProductManage(data).subscribe(data => this.warehousesProducts = data);\r\n\r\n }\r\n\r\n sendActionNotification(data)\r\n {\r\n console.log(this.warehouseFrom);\r\n let notification = {\r\n ID: this.productToMove.id,\r\n Acción: data ,\r\n Cantidad: this.piecesToMove,\r\n \"Almacén de destino\": this.warehouseFrom.warehouseName,\r\n \"Almacén de origen\": this.warehouseTo.name\r\n }\r\n this.intentoryService.sendNotification(notification).subscribe();\r\n }\r\n isAdmin()\r\n {\r\n let currentUser = JSON.parse(localStorage.getItem('currentUser'))\r\n let userModules = currentUser.modules\r\n userModules.forEach(obj => {\r\n if (obj == \"dashboard\")\r\n {return true}\r\n else\r\n {return false}\r\n });\r\n return false\r\n }\r\n // PRODUCT MANAGEMENT\r\n\r\n getMoveProduct() {\r\n let data = {\r\n action: \"getProductPices\",\r\n id: this.productToMove.id\r\n }\r\n this.intentoryService.ProductManage(data).subscribe(data => {\r\n this.warehousesPieces = data;\r\n if (this.warehousesPieces != null) {\r\n this.warehouseFrom = this.warehousesPieces[0];\r\n this.intentoryService.getWarehouses().subscribe(data => {\r\n this.allWarehouses = data;\r\n this.maxPiecesToMove = this.warehousesPieces[0].pieces;\r\n this.piecesToMove = this.maxPiecesToMove;\r\n let item: any;\r\n this.allWarehouses.forEach(element => {\r\n if (element.id == this.warehousesPieces[0].warehouseId) { item = element; }\r\n });\r\n const index = this.allWarehouses.indexOf(item, 0);\r\n if (index > -1) { this.allWarehouses.splice(index, 1); }\r\n this.warehouseTo = this.allWarehouses[0];\r\n });\r\n }\r\n });\r\n }\r\n\r\n setMoveProduct() {\r\n this.maxPiecesToMove = this.warehouseFrom.pieces;\r\n this.piecesToMove = this.maxPiecesToMove;\r\n this.intentoryService.getWarehouses().subscribe(data => {\r\n this.allWarehouses = data;\r\n let item: any;\r\n this.allWarehouses.forEach(element => {\r\n if (element.id == this.warehouseFrom.warehouseId) { item = element; }\r\n });\r\n const index = this.allWarehouses.indexOf(item, 0);\r\n if (index > -1) { this.allWarehouses.splice(index, 1); }\r\n this.warehouseTo = this.allWarehouses[0];\r\n });\r\n }\r\n\r\n moveProduct() {\r\n this.moveProductConfirmationModal = false;\r\n let data = {\r\n action: \"move\",\r\n productId: this.productToMove.id,\r\n quantity: this.piecesToMove,\r\n warehouseFromId: this.warehouseFrom.warehouseId,\r\n warehouseToId: this.warehouseTo.id\r\n };\r\n this.intentoryService.ProductManage(data).subscribe(data => {\r\n this.getMoveProduct();\r\n this.salesService.getProductsAvailable().subscribe(data => this.AvailableProducts = data)\r\n this.msg = [];\r\n if(!this.isAdmin()) {this.sendActionNotification('Piezas Movidas')}\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Piezas movidas correctamente' });\r\n });\r\n }\r\n\r\n undoChanges() {\r\n this.intentoryService.ProductManage({ action: \"undo\" }).subscribe(res => {\r\n this.undoConfirmationModal = false;\r\n this.getMoveProduct();\r\n this.msg = [];\r\n this.messageService.add({ severity: 'success', summary: '', detail: 'Cambios deshechos correctamente' });\r\n }, (error) => {\r\n this.undoConfirmationModal = false;\r\n this.msg = [];\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'No hay cambios por deshacer' });\r\n });\r\n }\r\n\r\n showConfirmationModal() {\r\n if (this.piecesToMove <= this.maxPiecesToMove) {\r\n this.moveProductConfirmationModal = true;\r\n } else {\r\n this.msg = [];\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Piezas a mover excede las existentes' });\r\n }\r\n }\r\n}\r\n","
\r\n \r\n \r\n
\r\n
Seleccione el producto a mover
\r\n \r\n
Producto:
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n Almacen\r\n Piezas\r\n \r\n \r\n \r\n \r\n {{product.warehouseName}}\r\n {{product.pieces}}\r\n \r\n \r\n \r\n
\r\n
Seleccine el almancen de origen, la cantidad de piezas a mover y almacen\r\n de\r\n destino:
\r\n
Almacen de origen:
\r\n \r\n \r\n
Piezas a mover:
\r\n \r\n \r\n
Almacen de destino:
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
Seleccione el almacen
\r\n \r\n
Almacen:
\r\n \r\n \r\n\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n Producto\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Piezas\r\n \r\n \r\n \r\n \r\n {{product.ProductName}}\r\n {{product.pieces}}\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
¿Seguro que desea hacer el siguiente movimiento?

\r\n {{piecesToMove + \" piezas de \"+ productToMove.name + \" desde \"\r\n + warehouseFrom.warehouseName + \" hacia \"\r\n + this.warehouseTo.name }}\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
\r\n
¿Seguro que desea deshacer cambios?
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n
","import { Injectable } from '@angular/core';\r\nimport { HttpRequest, HttpHandler, HttpEvent, HttpInterceptor } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { LoginService } from './login/login.service';\r\n\r\n\r\n@Injectable()\r\nexport class JwtInterceptor implements HttpInterceptor {\r\n constructor(private loginService: LoginService) { }\r\n\r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n // add authorization header with jwt token if available\r\n let currentUser = this.loginService.currentUserValue;\r\n if (currentUser && currentUser.token) {\r\n request = request.clone({\r\n setHeaders: {\r\n Authorization: `Bearer ${currentUser.token}`\r\n }\r\n });\r\n }\r\n\r\n return next.handle(request);\r\n }\r\n}","import { Injectable } from '@angular/core'\r\nimport { Observable } from 'rxjs'\r\n\r\n// in bytes, compress images larger than 1MB\r\nconst fileSizeMax = 1 * 1024 * 1024\r\n// in pixels, compress images have the width or height larger than 1024px\r\nconst widthHeightMax = 1024\r\nconst defaultWidthHeightRatio = 1\r\nconst defaultQualityRatio = 0.7\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CompressImageService {\r\n compress(file: File): Observable {\r\n const imageType = file.type || 'image/jpeg'\r\n const reader = new FileReader()\r\n reader.readAsDataURL(file)\r\n\r\n return new Observable((observer: any) => {\r\n // This event is triggered each time the reading operation is successfully completed.\r\n reader.onload = ev => {\r\n // Create an html image element\r\n const img = this.createImage(ev)\r\n // Choose the side (width or height) that longer than the other\r\n const imgWH = img.width > img.height ? img.width : img.height\r\n\r\n // Determines the ratios to compress the image\r\n let withHeightRatio = (imgWH > widthHeightMax) ? widthHeightMax / imgWH : defaultWidthHeightRatio\r\n let qualityRatio = (file.size > fileSizeMax) ? fileSizeMax / file.size : defaultQualityRatio\r\n\r\n // Fires immediately after the browser loads the object\r\n img.onload = () => {\r\n const elem = document.createElement('canvas')\r\n // resize width, height\r\n elem.width = img.width * withHeightRatio\r\n elem.height = img.height * withHeightRatio\r\n\r\n const ctx = elem.getContext('2d')\r\n ctx.drawImage(img, 0, 0, elem.width, elem.height)\r\n ctx.canvas.toBlob(\r\n // callback, called when blob created\r\n blob => {\r\n observer.next(new File(\r\n [blob as BlobPart],\r\n file.name,\r\n {\r\n type: imageType,\r\n lastModified: Date.now(),\r\n }\r\n ))\r\n },\r\n imageType,\r\n qualityRatio, // reduce image quantity\r\n )\r\n }\r\n }\r\n\r\n // Catch errors when reading file\r\n reader.onerror = error => observer.error(error)\r\n })\r\n }\r\n\r\n private createImage(ev: any) {\r\n let imageContent = ev.target.result\r\n const img = new Image()\r\n img.src = imageContent\r\n return img\r\n }\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SalesService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n baseUrl = environment.baseUrl;\r\n\r\n getProductsAvailable() {\r\n return this.http.post(`${this.baseUrl}ProductList`, { \"action\": \"getAvailability\" }, { responseType: 'json' })\r\n }\r\n\r\n getLazyOrders(data) {\r\n return this.http.post(`${this.baseUrl}Order`, data, { responseType: 'json' })\r\n }\r\n\r\n getOrders() {\r\n return this.http.get(`${this.baseUrl}Order`, { responseType: 'json' })\r\n }\r\n\r\n getOrderDetails(Id) {\r\n let data = { action: \"getOrderDetails\", id: Id }\r\n return this.http.post(`${this.baseUrl}Order`, data, { responseType: 'json' })\r\n }\r\n\r\n getOrderStatus() {\r\n return this.http.get(`${this.baseUrl}OrderStatus`, { responseType: 'json' })\r\n }\r\n\r\n confirmOrderDelivery(Id) {\r\n let data = { action: \"confirmOrderDelivery\", id: Id }\r\n return this.http.post(`${this.baseUrl}OrderStatus`, data, { responseType: 'json' })\r\n }\r\n\r\n OrderActions(data) {\r\n return this.http.post(`${this.baseUrl}Order`, data, { responseType: 'text' })\r\n }\r\n\r\n getClients() {\r\n return this.http.get(`${this.baseUrl}Client`, { responseType: 'json' })\r\n }\r\n\r\n ClientActions(data) {\r\n return this.http.post(`${this.baseUrl}Client`, data, { responseType: 'text' })\r\n }\r\n\r\n getClientDetails(Id) {\r\n let data = { action: \"getDetails\", id: Id }\r\n return this.http.post(`${this.baseUrl}Client`, data, { responseType: 'json' })\r\n }\r\n\r\n sendNotification(data) {\r\n return this.http.post(`${this.baseUrl}Notifications`, data, { responseType: 'json' })\r\n }\r\n\r\n}\r\n","
\r\n\r\n
\r\n\r\n \r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n \r\n
\r\n {{item.module}}\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n Inventario\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n
\r\n\r\n \r\n
\r\n {{item.module}}\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n Inventario\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n\r\n
","import { Component, HostListener, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { LoginService } from 'src/app/login/login.service';\r\nimport { MenuService } from './menu.service';\r\n\r\n@Component({\r\n selector: 'app-menu',\r\n templateUrl: './menu.component.html',\r\n styleUrls: ['./menu.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class MenuComponent implements OnInit {\r\n\r\n constructor(private loginservice: LoginService, private menuService: MenuService, private router: Router) { }\r\n\r\n menuModules: any;\r\n userId: any;\r\n display: boolean = false;\r\n InventorySubmodule: boolean = false;\r\n SalesSubmodule: boolean = false;\r\n\r\n mobDeviceFlag: boolean = false;\r\n\r\n Logo = \"assets/Images/menuLogo.svg\"\r\n logoOnly = \"assets/Images/logoOnly.svg\";\r\n horizontalLogo = \"assets/Images/horizontalLogo.svg\";\r\n\r\n ngOnInit(): void {\r\n if (window.innerWidth < 768) { this.mobDeviceFlag = true }\r\n this.loginservice.getUserId().subscribe(res => {\r\n this.userId = res.clientid;\r\n this.menuService.getUserModulesById(this.userId).subscribe(res => {\r\n this.menuModules = res;\r\n });\r\n });\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onresize(event) {\r\n if (window.innerWidth < 768) { this.mobDeviceFlag = true }\r\n else { this.mobDeviceFlag = false }\r\n }\r\n\r\n logout() {\r\n this.loginservice.logout()\r\n this.router.navigateByUrl('');\r\n }\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { LoginService } from 'src/app/login/login.service';\r\nimport { UserService } from '../../users/user.service';\r\nimport { SalesService } from '../sales.service';\r\n\r\n@Component({\r\n selector: 'app-edit-order',\r\n templateUrl: './edit-order.component.html',\r\n styleUrls: ['./edit-order.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [MessageService]\r\n})\r\nexport class EditOrderComponent implements OnInit {\r\n\r\n constructor(\r\n private salesService: SalesService,\r\n private userService: UserService,\r\n private loginService: LoginService,\r\n private messageService: MessageService,\r\n private router: Router,\r\n private activeroute: ActivatedRoute) { }\r\n\r\n availableProducts: any;\r\n allOrders: any;\r\n allUsers: any;\r\n allClients: any;\r\n selectedProduct: any;\r\n selectedProductMax: any;\r\n selectedProductQuantity: any;\r\n selectedClient: any;\r\n currentUser: any;\r\n\r\n orderId: any;\r\n orderInfo: any;\r\n\r\n productRowSelected: any;\r\n\r\n loadingStatus: boolean = true;\r\n wrongStatus: boolean = false;\r\n clientStatus: boolean = false;\r\n adminStatus: boolean = false;\r\n\r\n msg: any\r\n\r\n orderForm = {\r\n Client: '',\r\n ClientId: null,\r\n Invoice: false,\r\n Location: '',\r\n Status: null,\r\n Price: 0,\r\n Salesman: null,\r\n SuggestedPrice: 0,\r\n Extras: '',\r\n Phone: null,\r\n Products: []\r\n }\r\n\r\n ngOnInit(): void {\r\n this.salesService.getProductsAvailable().subscribe(data => { this.availableProducts = data; this.initFunction(); });\r\n this.salesService.getClients().subscribe(data => { this.allClients = data; this.initFunction(); });\r\n this.userService.getUsersInformation().subscribe(data => {\r\n this.allUsers = data\r\n this.initFunction();\r\n this.loginService.getUserId().subscribe(res => {\r\n let userId = res.clientid;\r\n let userModules = res.modules;\r\n userModules.forEach(item => { if (item == \"dashboard\") { this.adminStatus = true; } });\r\n this.currentUser = null;\r\n this.allUsers.forEach(item => { if (userId == item.clientId) { this.currentUser = item; } });\r\n this.orderForm.Salesman = this.currentUser;\r\n })\r\n });\r\n\r\n this.activeroute.params.subscribe(params => {\r\n if (this.activeroute.snapshot.params.id > 0) {\r\n this.orderId = this.activeroute.snapshot.params.id;\r\n this.salesService.getOrderDetails(this.orderId).subscribe(data => { this.orderInfo = data; this.initFunction(); });\r\n }\r\n });\r\n }\r\n\r\n initFunction() {\r\n if (this.allClients != null && this.allUsers != null && this.orderInfo != null && this.availableProducts != null) {\r\n if (this.orderInfo.orderStatus == 1) {\r\n this.setOrderInformation();\r\n } else {\r\n this.loadingStatus = false;\r\n this.wrongStatus = true;\r\n }\r\n }\r\n }\r\n sendActionNotification(data)\r\n {\r\n let notification = {\r\n ID: data.id,\r\n Acción: data.name ,\r\n Productos: data.products,\r\n Vendedor: this.orderForm.Salesman.name,\r\n Precio: this.orderForm.Price,\r\n \"Precio Sugerido\": this.orderForm.SuggestedPrice,\r\n Cliente: this.orderForm.Client\r\n }\r\n\r\n this.salesService.sendNotification(notification).subscribe();\r\n }\r\n isAdmin()\r\n {\r\n\r\n let currentUser = JSON.parse(localStorage.getItem('currentUser'))\r\n let userModules = currentUser.modules\r\n userModules.forEach(obj => {\r\n if (obj == \"dashboard\")\r\n {return true}\r\n else\r\n {return false}\r\n });\r\n return false\r\n }\r\n setOrderInformation() {\r\n this.orderForm = {\r\n Client: this.orderInfo.client,\r\n ClientId: null,\r\n Invoice: this.orderInfo.invoice,\r\n Location: this.orderInfo.location,\r\n Status: this.orderInfo.orderStatus,\r\n Price: this.orderInfo.price,\r\n Salesman: null,\r\n SuggestedPrice: this.orderInfo.suggestedPrice,\r\n Extras: this.orderInfo.extras,\r\n Phone: this.orderInfo.clientPhone,\r\n Products: []\r\n }\r\n\r\n let selected: any;\r\n\r\n if (this.orderInfo.clientId) {\r\n this.clientStatus = true;\r\n this.allClients.forEach(item => { if (item.id == this.orderInfo.clientId) { selected = item; } });\r\n this.selectedClient = selected;\r\n }\r\n\r\n this.allUsers.forEach(item => { if (item.clientId == this.orderInfo.salesman.id) { selected = item; } });\r\n this.orderForm.Salesman = selected\r\n\r\n this.orderInfo.products.forEach(item => {\r\n let obj = {\r\n id: item.id,\r\n pieces: item.quantity,\r\n name: item.name,\r\n netcontent: null,\r\n price: item.priceAtTheTime,\r\n priceNight: item.priceAtTheTime,\r\n totalpieces: item.quantity\r\n };\r\n this.orderForm.Products.push(obj);\r\n\r\n let productInList = false\r\n this.availableProducts.forEach(product => {\r\n if (product.id == item.id) {\r\n product.totalpieces = product.totalpieces + item.quantity;\r\n productInList = true;\r\n }\r\n });\r\n if (!productInList) { this.availableProducts.push(obj); }\r\n });\r\n\r\n\r\n this.loadingStatus = false;\r\n }\r\n\r\n clearForm() {\r\n this.orderForm = {\r\n Client: '',\r\n ClientId: null,\r\n Invoice: false,\r\n Location: '',\r\n Status: null,\r\n Price: 0,\r\n Salesman: '',\r\n SuggestedPrice: 0,\r\n Extras: '',\r\n Phone: null,\r\n Products: []\r\n }\r\n }\r\n\r\n onRowSelect(event) {\r\n this.productRowSelected = event.data;\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.productRowSelected = null;\r\n\r\n }\r\n\r\n clientChange() {\r\n this.orderForm = {\r\n Client: this.selectedClient.client,\r\n ClientId: this.selectedClient.id,\r\n Invoice: false,\r\n Location: this.selectedClient.location,\r\n Status: null,\r\n Price: 0,\r\n Salesman: '',\r\n SuggestedPrice: 0,\r\n Extras: '',\r\n Phone: this.selectedClient.phone,\r\n Products: []\r\n }\r\n }\r\n\r\n productChange() {\r\n this.selectedProductMax = this.selectedProduct.totalpieces;\r\n if (this.selectedProductMax < 20) {\r\n this.selectedProductQuantity = this.selectedProductMax;\r\n } else { this.selectedProductQuantity = 20; }\r\n }\r\n\r\n addProductValidation() {\r\n let addedProduct = false;\r\n this.msg = [];\r\n\r\n if (this.selectedProduct != null) {\r\n if (this.orderForm.Products.length > 0) {\r\n this.orderForm.Products.forEach(item => {\r\n if (this.selectedProduct.id == item.id) { addedProduct = true; }\r\n })\r\n }\r\n } else {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Seleccione un producto' });\r\n }\r\n if (this.selectedProductQuantity == null || this.selectedProductQuantity == 0) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Ingrese cantidad de producto' });\r\n } else if (addedProduct) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Producto ya en lista' });\r\n } else if (this.selectedProductQuantity > this.selectedProductMax) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Cantidad excede las piezas existentes' });\r\n } else {\r\n this.addProductToOrder();\r\n }\r\n }\r\n\r\n addProductToOrder() {\r\n let item = {\r\n id: this.selectedProduct.id,\r\n name: this.selectedProduct.name,\r\n netcontent: this.selectedProduct.netcontent,\r\n price: this.selectedProduct.price,\r\n pieces: this.selectedProductQuantity\r\n }\r\n var currentTime: Date = new Date();\r\n // CHECK IF PASS AFETER 22HRS TO CHOOSE PRICE\r\n if (currentTime.getHours() >= 9 && currentTime.getHours() < 22) {\r\n Object.assign(item, { price: this.selectedProduct.price });\r\n } else {\r\n Object.assign(item, { price: this.selectedProduct.priceNight });\r\n }\r\n this.orderForm.Products.push(item);\r\n this.updateTotalPrice();\r\n }\r\n\r\n deleteProduct(item) {\r\n let index = this.orderForm.Products.indexOf(item)\r\n this.orderForm.Products.splice(index, 1);\r\n this.updateTotalPrice();\r\n }\r\n\r\n updateTotalPrice() {\r\n this.orderForm.SuggestedPrice = 0;\r\n this.orderForm.Products.forEach(item => {\r\n this.orderForm.SuggestedPrice += item.price * item.pieces;\r\n })\r\n this.orderForm.Price = this.orderForm.SuggestedPrice;\r\n }\r\n\r\n editOrderValidation() {\r\n this.msg = [];\r\n const { Client, Location, Price, Products, Phone, Invoice } = this.orderForm;\r\n\r\n if (this.clientStatus && this.selectedClient == null) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Seleccione Cliente existente' });\r\n } else if (Client == '') {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Cliente es requerido' });\r\n } else if (Location == '') {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Ubicación es requerida' });\r\n } else if (Price == null) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Precio es requerida' });\r\n } else if (Products.length == 0) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Ingrese al menos un producto' });\r\n } else if (Invoice && Phone < 999999999) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Telefono requerido si factura' });\r\n } else {\r\n this.createOrder();\r\n }\r\n }\r\n\r\n formatProducts() {\r\n let list = [];\r\n let stringProducts = \"\";\r\n this.orderForm.Products.forEach(item => {\r\n let obj = {\r\n id: item.id,\r\n quantity: item.pieces,\r\n price: item.price,\r\n };\r\n stringProducts = stringProducts + \",\" + item.name + \":\" + item.pieces\r\n list.push(obj);\r\n })\r\n return [list, stringProducts];\r\n }\r\n\r\n createOrder() {\r\n const [formatedProducts,stringProducts] = this.formatProducts();\r\n if (this.orderForm.Salesman.clientId == null) { this.orderForm.Salesman = this.currentUser }\r\n\r\n let data = {\r\n action: \"update\",\r\n id: this.orderId,\r\n client: this.orderForm.Client,\r\n price: this.orderForm.Price,\r\n suggestedPrice: this.orderForm.SuggestedPrice,\r\n invoice: this.orderForm.Invoice,\r\n location: this.orderForm.Location,\r\n products: formatedProducts,\r\n salesman: this.orderForm.Salesman.clientId\r\n }\r\n if (this.orderForm.Phone) { Object.assign(data, { clientPhone: this.orderForm.Phone }); }\r\n if (this.orderForm.Extras) { Object.assign(data, { extras: this.orderForm.Extras }); }\r\n if (this.clientStatus) { Object.assign(data, { clientId: this.orderForm.ClientId }); }\r\n\r\n\r\n this.salesService.OrderActions(data).subscribe(ID => {\r\n let action = {\r\n id: ID,\r\n name: 'Orden Editada',\r\n products: stringProducts\r\n }\r\n if(!this.isAdmin()) {this.sendActionNotification(action)}\r\n this.router.navigateByUrl('/system/sales/orderList?ID=' + ID)\r\n })\r\n }\r\n\r\n}\r\n","
\r\n
\r\n\r\n
\r\n Cliente existente : \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n
Cliente*
\r\n \r\n
\r\n
\r\n
Telefono
\r\n \r\n \r\n
\r\n
\r\n
Ubicación*
\r\n \r\n
\r\n
\r\n
Extras
\r\n \r\n
\r\n
\r\n
Vendedor
\r\n \r\n \r\n
\r\n
\r\n
\r\n
Producto
\r\n \r\n \r\n
\r\n
\r\n
Cantidad
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n 0\" [value]=\"orderForm.Products\" [scrollable]=\"true\"\r\n selectionMode=\"single\" [(selection)]=\"productRowSelected\" dataKey=\"id\" (onRowSelect)=\"onRowSelect($event)\"\r\n (onRowUnselect)=\"onRowUnselect($event)\">\r\n \r\n \r\n Piezas\r\n Producto\r\n Cont.Net.\r\n Precio\r\n Opciones\r\n \r\n \r\n \r\n \r\n {{product.pieces}}\r\n {{product.name}}\r\n {{product.netcontent}}\r\n {{product.price}}\r\n \r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n Factura : \r\n
\r\n
\r\n Precio sugerido {{orderForm.SuggestedPrice}}\r\n
\r\n
\r\n Precio Final :\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
Cargando Informacion...
\r\n
\r\n\r\n
\r\n
ESTA ORDEN YA SE ENCUENTRA COMPLETADA O CANCELADA
\r\n
\r\n\r\n\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\nimport { LoginService } from './login/login.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AuthGuard implements CanActivate {\r\n\r\n constructor(private router: Router, private loginService: LoginService) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n const currentUser = this.loginService.currentUserValue;\r\n if (currentUser) {\r\n let currentModule = state.url.split(\"/\")\r\n // verify if the user has access to the requested module\r\n let grantedAccess = false;\r\n currentUser.modules.forEach(route => {\r\n if (currentModule.length > 3) {\r\n if (currentModule[2] == route) { grantedAccess = true }\r\n } else {\r\n if (currentModule[2] == \"sales\") { this.router.navigate(['/system/sales/newOrder']); }\r\n if (state.url == '/system/' + route) { grantedAccess = true }\r\n }\r\n });\r\n if (grantedAccess) { return true; }\r\n else {\r\n this.router.navigate(['/system/' + currentUser.modules[0]]);\r\n return false;\r\n }\r\n }\r\n\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['login']);\r\n return false;\r\n }\r\n}","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { AuthGuard } from './auth.guard';\r\nimport { CatalogPublicComponent } from './homepage/catalog-public/catalog-public.component';\r\nimport { ContactComponent } from './homepage/contact/contact.component';\r\nimport { HomeComponent } from './homepage/home/home.component';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { CatalogComponent } from './system/catalog/catalog.component';\r\nimport { DashboardComponent } from './system/dashboard/dashboard.component';\r\nimport { AcquisitionsComponent } from './system/inventory/acquisitions/acquisitions.component';\r\nimport { InventoryComponent } from './system/inventory/inventory.component';\r\nimport { ProductsManageComponent } from './system/inventory/products-manage/products-manage.component';\r\nimport { ProductsComponent } from './system/inventory/products/products.component';\r\nimport { MainComponent } from './system/main/main.component';\r\nimport { OrdersComponent } from './system/orders/orders.component';\r\nimport { ClientsComponent } from './system/sales/clients/clients.component';\r\nimport { EditOrderComponent } from './system/sales/edit-order/edit-order.component';\r\nimport { NewOrderComponent } from './system/sales/new-order/new-order.component';\r\nimport { OrderListComponent } from './system/sales/order-list/order-list.component';\r\nimport { SalesComponent } from './system/sales/sales.component';\r\nimport { UsersComponent } from './system/users/users.component';\r\n\r\n\r\nconst routes: Routes = [\r\n\r\n // SYSTEM PATHS\r\n { path: \"login\", component: LoginComponent },\r\n {\r\n path: 'system', component: MainComponent, canActivate: [AuthGuard], children: [\r\n { path: \"users\", component: UsersComponent },\r\n { path: \"sales\", component: SalesComponent, children: [\r\n { path: \"newOrder\", component: NewOrderComponent },\r\n { path: \"orderList\", component: OrderListComponent },\r\n { path: \"clients\", component: ClientsComponent },\r\n { path: \"editOrder/:id\", component: EditOrderComponent }]},\r\n { path: \"inventory\", component: InventoryComponent,children: [\r\n { path: \"products\", component: ProductsComponent },\r\n { path: \"acquisitions\", component: AcquisitionsComponent },\r\n { path: \"productManage\", component: ProductsManageComponent }]},\r\n { path: \"dashboard\", component: DashboardComponent },\r\n { path: \"orders\", component: OrdersComponent },\r\n { path: \"catalog\", component: CatalogComponent },\r\n ]\r\n },\r\n\r\n // HOMEPAGE PATHS\r\n { path: '', component: HomeComponent },\r\n { path: 'Catalogo', component: CatalogPublicComponent },\r\n { path: 'Contacto', component: ContactComponent },\r\n { path: '**', redirectTo: '' }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { first } from 'rxjs/operators';\r\nimport { AuthGuard } from '../auth.guard';\r\nimport { LoginService } from './login.service';\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class LoginComponent implements OnInit {\r\n\r\n constructor(private loginService: LoginService, private router: Router, private authentication: AuthGuard) {\r\n if (this.loginService.currentUserValue) { this.router.navigate(['system']); }\r\n }\r\n\r\n user: string = \"\";\r\n pass: string = \"\";\r\n msg: string;\r\n validationStatus: boolean = false;\r\n returnUrl: string;\r\n\r\n backImage2 = \"assets/Images/system/Login/LoginBackground.jpg\"\r\n backImage = \"assets/Images/system/Background.png\"\r\n Logo = \"assets/Images/mainLogo.svg\"\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n connect() {\r\n\r\n this.validationStatus = false;\r\n\r\n if (this.user != \"\" && this.pass != \"\") {\r\n let data = {\r\n user: this.user,\r\n pass: this.pass\r\n }\r\n this.loginService.login(data).pipe(first()).subscribe(res => {\r\n let response: any = res;\r\n if (response.length != 0) {\r\n window.location.reload();\r\n } else {\r\n this.msg = \"Usuario y/o contraseña incorrectos\";\r\n this.validationStatus = true;\r\n }\r\n }, error => {\r\n console.log(error);\r\n });\r\n } else {\r\n this.msg = \"Llene ambos campos\";\r\n this.validationStatus = true;\r\n }\r\n }\r\n goHome(){\r\n this.router.navigate(['']);\r\n }\r\n\r\n\r\n}\r\n","
\r\n \r\n\r\n
\r\n\r\n \r\n \r\n
Inicio de sesión
\r\n
Ingrese sus credenciales
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
{{msg}}
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MessageService } from 'primeng/api';\r\nimport { SalesService } from '../sales/sales.service';\r\nimport { UserService } from '../users/user.service';\r\nimport { OrdersService } from './orders.service';\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\n\r\n@Component({\r\n selector: 'app-orders',\r\n templateUrl: './orders.component.html',\r\n styleUrls: ['./orders.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [MessageService]\r\n})\r\nexport class OrdersComponent implements OnInit {\r\n\r\n constructor(\r\n private orderService: OrdersService,\r\n private userService: UserService,\r\n private salesService: SalesService,\r\n private router: Router,\r\n private messageService: MessageService) { }\r\n\r\n msg: any;\r\n\r\n rangeDates: Date[];\r\n salesman: any;\r\n allUsers: any;\r\n allStatus: any;\r\n\r\n invoiceRangeDates: Date[];\r\n invoiceTextFilter: any;\r\n invoiceCreateDate: Date = new Date();\r\n invoiceTotal: any;\r\n\r\n allInvoiceOrders: any;\r\n orderInvoiceRowSelected: any;\r\n\r\n allOrders: any;\r\n orderRowSelected: any;\r\n suggestedIncomingPrice: any;\r\n searchData: any;\r\n\r\n orderForm = {\r\n Id: null,\r\n Client: '',\r\n ClientId: null,\r\n Invoice: false,\r\n Location: '',\r\n Date: null,\r\n Status: null,\r\n Price: 0,\r\n Salesman: '',\r\n SuggestedPrice: 0,\r\n Extras: '',\r\n Phone: null,\r\n Delivery: null,\r\n Products: [],\r\n Origin: null\r\n }\r\n\r\n clientForm = {\r\n Id: null,\r\n Client: '',\r\n Address: '',\r\n Email: '',\r\n ExpenseType: '',\r\n RFC: '',\r\n Location: '',\r\n Phone: null\r\n }\r\n\r\n productsOriginModalStatus: boolean = false;\r\n orderDetailsModalStatus: boolean = false;\r\n isURL: boolean = false;\r\n\r\n ngOnInit(): void {\r\n this.userService.getUsersInformation().subscribe(data => this.allUsers = data);\r\n this.salesService.getOrderStatus().subscribe(data => this.allStatus = data);\r\n }\r\n\r\n onRowSelect(event) {\r\n this.orderRowSelected = event.data;\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.orderRowSelected = null;\r\n }\r\n\r\n setStatusIcon(id) {\r\n if (id == 1) { return \"pi-clock\" }\r\n else if (id == 2) { return \"pi-check-circle\" }\r\n else { return \"pi-times-circle\" }\r\n }\r\n\r\n setStatusColor(id) {\r\n if (id == 1) { return \"color:#ffff94\" }//YELLOW\r\n else if (id == 2) { return \"color:#6eb16e\" }//GREEN\r\n else { return \"color:#ff7171\" } //RED\r\n }\r\n\r\n setOrderStatus(id) {\r\n let res = \"\";\r\n if (this.allStatus != null) {\r\n this.allStatus.forEach(item => {\r\n if (item.id == id) { res = item.name }\r\n });\r\n }\r\n return res\r\n }\r\n\r\n openOrderDetails(item) {\r\n this.msg = [];\r\n this.salesService.getOrderDetails(item.id).subscribe(data => {\r\n let order: any = data;\r\n this.orderForm = {\r\n Id: order.id,\r\n Client: order.client,\r\n ClientId: order.clientId,\r\n Invoice: order.invoice,\r\n Location: order.location,\r\n Date: order.orderDate,\r\n Status: order.orderStatus,\r\n Price: order.price,\r\n Salesman: order.salesman.name,\r\n SuggestedPrice: order.suggestedPrice,\r\n Extras: order.extras,\r\n Delivery: order.delivery,\r\n Products: order.products,\r\n Phone: order.clientPhone,\r\n Origin: order.productOrigin\r\n }\r\n try { let url = new URL(order.location); this.isURL = true; } catch (_) { this.isURL = false; }\r\n this.orderDetailsModalStatus = true;\r\n });\r\n }\r\n\r\n searchOrders() {\r\n this.orderRowSelected = null;\r\n if (!this.rangeDates) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Seleccione un rango de fechas' });\r\n } else if (this.rangeDates[1] == null) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Seleccione una segunda fecha' });\r\n } else {\r\n let data = {\r\n dateFrom: this.rangeDates[0],\r\n dateTo: this.rangeDates[1]\r\n };\r\n if (this.salesman) { Object.assign(data, { salesman: this.salesman.clientId }) }\r\n this.searchData = data\r\n this.orderService.getOrders(data).subscribe(res => { this.allOrders = res; this.updateIncomingPrice() });\r\n }\r\n }\r\n\r\n confirmDelivery() {\r\n this.salesService.confirmOrderDelivery(this.orderForm.Id).subscribe(res => {\r\n this.orderService.getOrders(this.searchData).subscribe(res => { this.allOrders = res; this.updateIncomingPrice(); this.orderDetailsModalStatus = false; });\r\n })\r\n }\r\n\r\n getDeliveryTime() {\r\n var time = new Date(this.orderForm.Delivery).getTime() - new Date(this.orderForm.Date).getTime();\r\n\r\n // transform milliseconds to Minutes\r\n time = time / 60000;\r\n let units = \" Min\";\r\n var res = time.toFixed(2) + units;\r\n // transform Minutes to Hours and limited to 2 decimals\r\n if (time >= 60 && units == \" Min\") {\r\n time = time / 60;\r\n units = \" Hrs\";\r\n res = time.toFixed(2) + units;\r\n }\r\n // transform Hours to Days and limited to 2 decimals\r\n if (time >= 24 && units == \" Hrs\") {\r\n time = time / 24;\r\n units = \" Dias\";\r\n res = time.toFixed(2) + units;\r\n }\r\n return res;\r\n }\r\n\r\n CancelOrder() {\r\n let data = {\r\n \"action\": \"cancel\",\r\n \"id\": this.orderForm.Id\r\n }\r\n this.salesService.OrderActions(data).subscribe(res => {\r\n this.orderService.getOrders(this.searchData).subscribe(res => { this.allOrders = res; this.updateIncomingPrice(); this.orderDetailsModalStatus = false; });\r\n })\r\n }\r\n\r\n editOrder() {\r\n this.router.navigate(['/system/sales/editOrder/' + this.orderForm.Id]);\r\n }\r\n\r\n updateIncomingPrice() {\r\n this.suggestedIncomingPrice = 0;\r\n this.allOrders.forEach(item => {\r\n if (item.orderStatus == 2) {\r\n this.suggestedIncomingPrice += item.suggestedPrice;\r\n }\r\n });\r\n }\r\n\r\n PDFdownload() {\r\n let doc = new jsPDF('p', 'pt', 'a4');\r\n let content = document.getElementById('exportTable');\r\n doc.html(content, {\r\n callback: (doc) => {\r\n var img = new Image();\r\n img.src = 'assets/Images/horizontalLogo.png';\r\n doc.addImage(img, 'png', 25, 65, 200, 42)\r\n doc.save('Corte.pdf');\r\n }\r\n });\r\n }\r\n\r\n ////////////////////////////////////////////INVOICE///////////////////////////////////////////\r\n\r\n onInvoiceRowSelect(event) {\r\n if (event.data.orderStatus == 2) { this.orderInvoiceRowSelected = event.data; }\r\n else { this.orderInvoiceRowSelected = null; }\r\n }\r\n\r\n onInvoiceRowUnselect(event) {\r\n this.orderInvoiceRowSelected = null;\r\n }\r\n\r\n searchInvoiceOrders() {\r\n this.orderInvoiceRowSelected = null;\r\n if (!this.invoiceRangeDates) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Seleccione un rango de fechas' });\r\n } else if (this.invoiceRangeDates[1] == null) {\r\n this.messageService.add({ severity: 'error', summary: '', detail: 'Seleccione una segunda fecha' });\r\n } else {\r\n let data = {\r\n action: \"getInvoiceOrders\",\r\n dateFrom: this.invoiceRangeDates[0],\r\n dateTo: this.invoiceRangeDates[1]\r\n };\r\n if (this.invoiceTextFilter) { Object.assign(data, { textFilter: this.invoiceTextFilter }) }\r\n this.orderService.getInvoiceOrders(data).subscribe(res => { this.allInvoiceOrders = res; });\r\n }\r\n }\r\n\r\n PDFdownloadInvoice(order) {\r\n\r\n this.orderForm = {\r\n Id: order.id,\r\n Client: order.client,\r\n ClientId: order.clientId,\r\n Invoice: order.invoice,\r\n Location: order.location,\r\n Date: order.orderDate,\r\n Status: order.orderStatus,\r\n Price: order.price,\r\n Salesman: order.salesman.name,\r\n SuggestedPrice: order.suggestedPrice,\r\n Extras: order.extras,\r\n Delivery: order.delivery,\r\n Products: order.products,\r\n Phone: order.clientPhone,\r\n Origin: null\r\n }\r\n\r\n if (this.orderForm.ClientId != null) {\r\n this.salesService.getClientDetails(this.orderForm.ClientId).subscribe(data => {\r\n let res: any = data;\r\n this.clientForm = {\r\n Id: res.id,\r\n Client: res.client,\r\n RFC: res.rfc,\r\n Email: res.email,\r\n Address: res.address,\r\n ExpenseType: res.expenseType,\r\n Location: res.location,\r\n Phone: res.phone\r\n };\r\n });\r\n } else {\r\n this.clientForm = {\r\n Id: \"N/A\",\r\n Client: this.orderForm.Client,\r\n RFC: \"N/A\",\r\n Email: \"N/A\",\r\n Address: \"N/A\",\r\n ExpenseType: \"N/A\",\r\n Location: \"N/A\",\r\n Phone: this.orderForm.Phone\r\n };\r\n }\r\n\r\n setTimeout(() => {\r\n let doc = new jsPDF('p', 'pt', 'a4');\r\n let content = document.getElementById('InvoiceOrder');\r\n doc.html(content, {\r\n callback: (doc) => {\r\n var img = new Image();\r\n img.src = 'assets/Images/horizontalLogo.png';\r\n doc.addImage(img, 'png', 62, 65, 200, 42)\r\n doc.save('Factura.pdf');\r\n }\r\n });\r\n }, 3000);\r\n\r\n\r\n }\r\n\r\n}\r\n","
\r\n\r\n
Gestion de ventas
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
Seleccione el periodo :
\r\n \r\n \r\n
\r\n
\r\n
Seleccione el Usuario :
\r\n \r\n \r\n
\r\n \r\n\r\n \r\n
\r\n\r\n \r\n\r\n \r\n \r\n N. de Orden\r\n Cliente\r\n Vendedor\r\n Fecha y hora\r\n Status\r\n Detalles\r\n \r\n \r\n \r\n \r\n {{order.id}}\r\n {{order.client}}\r\n {{order.salesman}}\r\n {{order.orderDate | date:'short'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n
ID : {{orderForm.Id}}
\r\n
ClientId : {{orderForm.ClientId}}
\r\n
Cliente : {{orderForm.Client}}
\r\n
Fecha : {{orderForm.Date | date:'short'}}
\r\n
Status : \r\n \r\n \r\n {{setOrderStatus(orderForm.Status)}}\r\n {{getDeliveryTime()}}\r\n \r\n\r\n
\r\n
Factura : {{orderForm.Invoice}}
\r\n
Vendedor : {{orderForm.Salesman}}
\r\n
Ubicación : \r\n Abrir en Maps\r\n {{orderForm.Location}}\r\n
\r\n
Telefono : {{orderForm.Phone}}
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n Cantidad\r\n Nombre\r\n Precio de compra\r\n \r\n \r\n \r\n \r\n {{order.quantity}}\r\n {{order.name}}\r\n {{order.priceAtTheTime}}\r\n \r\n \r\n \r\n
\r\n Extras : {{orderForm.Extras}}\r\n \r\n \r\n
\r\n
\r\n Precio sugerido : {{orderForm.SuggestedPrice}}\r\n
\r\n
\r\n Precio final : {{orderForm.Price}}\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n Cantidad\r\n Producto\r\n Almacen\r\n \r\n \r\n \r\n \r\n {{order.substracted}}\r\n {{order.productName}}\r\n {{order.warehouseName}}\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
Corte\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n Periodo: \r\n {{rangeDates[0] | date:'shortDate'}} -\r\n {{rangeDates[1] | date:'shortDate'}}\r\n
\r\n
Vendedor: {{salesman.name}}
\r\n
Vendedor: Todos
\r\n
\r\n\r\n
\r\n
Corte sugerido:{{suggestedIncomingPrice}}
\r\n
Total de corte:______________
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
N. de OrdenClienteVendedorFecha y horaStatusPrecio sugeridoPrecio venta
{{order.id}}{{order.client}}{{order.salesman}}{{order.orderDate | date:'short'}}{{setOrderStatus(order.orderStatus)}}{{order.suggestedPrice}}{{order.price}}
{{product.quantity}}{{product.name}}{{product.priceAtTheTime}}
Extras: {{order.extras}}
\r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n Seleccione el periodo : \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n\r\n
\r\n\r\n \r\n\r\n \r\n \r\n N. de Orden\r\n Cliente\r\n Vendedor\r\n Fecha y hora\r\n Status\r\n Detalles\r\n \r\n \r\n \r\n \r\n {{order.id}}\r\n {{order.client}}\r\n {{order.salesman}}\r\n {{order.orderDate | date:'short'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n\r\n
\r\n
Factura
\r\n
Servicios Barman S.A. De C. V.
\r\n
Culiacán, Sinaloa, México.
\r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n
\r\n Cliente: \r\n
{{clientForm.Client}}
\r\n Dirección: \r\n
{{clientForm.Address}}
\r\n RFC:\r\n
{{clientForm.RFC}}
\r\n
\r\n\r\n
\r\n Tipo de gasto: \r\n
{{clientForm.ExpenseType}}
\r\n Correo: \r\n
{{clientForm.Email}}
\r\n Telefono:\r\n
{{clientForm.Phone}}
\r\n
\r\n\r\n
\r\n # de Orden\r\n
{{orderForm.Id}}
\r\n Fecha de compra\r\n
{{orderForm.Date | date:'shortDate'}}
\r\n Generación de factura\r\n
{{invoiceCreateDate | date:'shortDate'}}
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ProductoCantidadPrecioIVACantidad
{{product.name}}{{product.quantity}}{{product.priceAtTheTime * 0.84 | currency}}{{product.priceAtTheTime * 0.16 | currency}}{{product.priceAtTheTime * product.quantity | currency}}
\r\n
\r\n Extras: {{orderForm.Extras}}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n Notas:\r\n
El costo total, asi como el costo de los productos puede variar segun el\r\n estado\r\n del mercado al momento de compra.
\r\n
En caso de requerir productos extras fuera de nuestro catalogo, estos no\r\n tienen\r\n reflejado un costo en la presente factura.
\r\n
\r\n
\r\n
\r\n
\r\n
TOTAL
\r\n
{{orderForm.Price | currency}}
\r\n
precio sugerido ({{orderForm.SuggestedPrice | currency}})
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n \r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class InventoryService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n baseUrl = environment.baseUrl;\r\n\r\n\r\n getCatalog() {\r\n return this.http.get(`${this.baseUrl}Product`, { responseType: 'json' })\r\n }\r\n\r\n getAllProducts() {\r\n return this.http.get(`${this.baseUrl}ProductList`, { responseType: 'json' })\r\n }\r\n\r\n getProductDetails(id) {\r\n return this.http.post(`${this.baseUrl}ProductDetails`, { 'id': id }, { responseType: 'json' })\r\n }\r\n\r\n ProductActions(data) {\r\n return this.http.post(`${this.baseUrl}Product`, data, { responseType: 'text' })\r\n }\r\n\r\n getCategories() {\r\n return this.http.get(`${this.baseUrl}Category`, { responseType: 'json' })\r\n }\r\n\r\n CategoryActions(data) {\r\n return this.http.post(`${this.baseUrl}Category`, data, { responseType: 'text' })\r\n }\r\n\r\n getLazyAcquisitions(data) {\r\n return this.http.post(`${this.baseUrl}Acquisitions`, data, { responseType: 'json' })\r\n }\r\n getAcquisitions() {\r\n return this.http.get(`${this.baseUrl}Acquisitions`, { responseType: 'json' })\r\n }\r\n AcquisitionsActions(data) {\r\n return this.http.post(`${this.baseUrl}Acquisitions`, data, { responseType: 'text' })\r\n }\r\n\r\n getWarehouses() {\r\n return this.http.get(`${this.baseUrl}Warehouse`, { responseType: 'json' })\r\n }\r\n\r\n WarehouseActions(data) {\r\n return this.http.post(`${this.baseUrl}Warehouse`, data, { responseType: 'text' })\r\n }\r\n\r\n getCurrencies() {\r\n return this.http.get(`${this.baseUrl}Currencies`, { responseType: 'json' })\r\n }\r\n\r\n CurrenciesActions(data) {\r\n return this.http.post(`${this.baseUrl}Currencies`, data, { responseType: 'text' })\r\n }\r\n\r\n ProductManage(data) {\r\n return this.http.post(`${this.baseUrl}ProductManage`, data, { responseType: 'json' })\r\n }\r\n\r\n GetProductPhoto(id: any) {\r\n return this.http.post(`${this.baseUrl}GetProducImage`, { id: id })\r\n }\r\n\r\n sendNotification(data) {\r\n return this.http.post(`${this.baseUrl}Notifications`, data, { responseType: 'json' })\r\n }\r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from '../../environments/environment';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class HomepageService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n baseUrl = environment.baseUrl;\r\n\r\n getTopProducts() {\r\n return this.http.get(`${this.baseUrl}TopProducts`, { responseType: 'json' })\r\n }\r\n\r\n getCatalog() {\r\n return this.http.get(`${this.baseUrl}Catalog`, { responseType: 'json' })\r\n }\r\n\r\n sendQuote(data) {\r\n return this.http.post(`${this.baseUrl}Quotes`, data, { responseType: 'text' })\r\n }\r\n\r\n GetProductPhoto(id: any) {\r\n return this.http.post(`${this.baseUrl}GetProducImage`, { id: id })\r\n }\r\n\r\n getCategories() {\r\n return this.http.get(`${this.baseUrl}GetProductCategories`)\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \r\n
\r\n\r\n \r\n\r\n \r\n\r\n
\r\n
Factura:
\r\n \r\n
\r\n\r\n \r\n N. de Orden\r\n Cliente\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n Vendedor\r\n Fecha y hora\r\n Status\r\n Detalles\r\n \r\n
\r\n \r\n \r\n {{order.id}}\r\n {{order.client}}\r\n {{order.salesman}}\r\n {{order.orderDate | date:'short'}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n \r\n \r\n
\r\n
ID : {{orderForm.Id}}
\r\n
ClientId : {{orderForm.ClientId}}
\r\n
Cliente : {{orderForm.Client}}
\r\n
Fecha : {{orderForm.Date | date:'short'}}
\r\n
Status : \r\n \r\n \r\n {{orderForm.Status}}\r\n {{getDeliveryTime()}}\r\n \r\n\r\n
\r\n
Factura : {{orderForm.Invoice}}
\r\n
Vendedor : {{orderForm.Salesman}}
\r\n
Ubicación : \r\n Abrir en Maps\r\n {{orderForm.Location}}\r\n
\r\n
Telefono : {{orderForm.Phone}}
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n Cantidad\r\n Nombre\r\n Precio de compra\r\n \r\n \r\n \r\n \r\n {{order.quantity}}\r\n {{order.name}}\r\n {{order.priceAtTheTime}}\r\n \r\n \r\n \r\n
\r\n Extras : {{orderForm.Extras}}\r\n \r\n \r\n
\r\n
\r\n Precio sugerido : {{orderForm.SuggestedPrice}}\r\n
\r\n
\r\n Precio final : {{orderForm.Price}}\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n \r\n
\r\n\r\n \r\n \r\n \r\n Cantidad\r\n Producto\r\n Almacen\r\n \r\n \r\n \r\n \r\n {{order.substracted}}\r\n {{order.productName}}\r\n {{order.warehouseName}}\r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { SalesService } from '../sales.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-order-list',\r\n templateUrl: './order-list.component.html',\r\n styleUrls: ['./order-list.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class OrderListComponent implements OnInit {\r\n\r\n allOrders: any;\r\n allWarehouses: any;\r\n allProducts: any;\r\n allClients: any;\r\n\r\n orderRowSelected: any;\r\n\r\n productsOrigin: any = [];\r\n\r\n msg: any;\r\n\r\n productsOriginModalStatus: boolean = false;\r\n orderDetailsModalStatus: boolean = false;\r\n isURL: boolean = false;\r\n totalRecords: any;\r\n isSelectedInvoice: boolean = false;\r\n clientFilter: any;\r\n\r\n orderForm = {\r\n Id: null,\r\n Client: '',\r\n ClientId: null,\r\n Invoice: false,\r\n Location: '',\r\n Date: null,\r\n Status: null,\r\n OrderStatus: null,\r\n Icon: null,\r\n Color: null,\r\n Price: 0,\r\n Salesman: '',\r\n SuggestedPrice: 0,\r\n Extras: '',\r\n Phone: null,\r\n Delivery: null,\r\n Products: [],\r\n Origin: null\r\n }\r\n\r\n lazyData = {\r\n action: \"getOrders\",\r\n invoice: false,\r\n client: null,\r\n pageSize: null,\r\n offsetRecords: null\r\n }\r\n\r\n constructor(\r\n private salesService: SalesService,\r\n private router: Router,\r\n private activeroute: ActivatedRoute) { }\r\n\r\n ngOnInit(): void {\r\n this.salesService.getClients().subscribe(data => this.allClients = data);\r\n this.activeroute.queryParams.subscribe(params => {\r\n if (params['ID']) {\r\n let obj = { id: parseInt(params['ID'].replace('\"', '')) };\r\n this.openOrderDetails(obj);\r\n }\r\n });\r\n }\r\n\r\n onRowSelect(event) {\r\n this.orderRowSelected = event.data;\r\n }\r\n\r\n //Start Filters and Lazy data\r\n getOrders(data)\r\n {\r\n this.salesService.getLazyOrders(data).subscribe((data:any) => {\r\n this.allOrders = data.orders\r\n this.totalRecords = data.totalResults\r\n });\r\n }\r\n\r\n getLazyOrders(event){\r\n this.lazyData.offsetRecords = event.first\r\n this.lazyData.pageSize = event.rows\r\n this.getOrders(this.lazyData)\r\n }\r\n\r\n tableFilter(){\r\n this.getOrders(this.lazyData)\r\n }\r\n clearClient()\r\n {\r\n this.lazyData.client = null;\r\n this.getOrders(this.lazyData)\r\n }\r\n\r\n invoiceFilter(){\r\n this.isSelectedInvoice = !this.isSelectedInvoice\r\n this.lazyData.invoice = !this.lazyData.invoice\r\n this.getOrders(this.lazyData)\r\n }\r\n\r\n onRowUnselect(event) {\r\n this.orderRowSelected = null;\r\n }\r\n\r\n openOrderDetails(item) {\r\n this.salesService.getOrderDetails(item.id).subscribe(data => {\r\n let order: any = data;\r\n this.orderForm = {\r\n Id: order.id,\r\n Client: order.client,\r\n ClientId: order.clientId,\r\n Invoice: order.invoice,\r\n Location: order.location,\r\n Date: order.orderDate,\r\n Status: order.status,\r\n OrderStatus: order.orderStatus,\r\n Icon: order.icon,\r\n Color: order.color,\r\n Price: order.price,\r\n Salesman: order.salesman.name,\r\n SuggestedPrice: order.suggestedPrice,\r\n Extras: order.extras,\r\n Delivery: order.delivery,\r\n Products: order.products,\r\n Phone: order.clientPhone,\r\n Origin: order.productOrigin\r\n\r\n }\r\n try { let url = new URL(order.location); this.isURL = true; } catch (_) { this.isURL = false; }\r\n\r\n this.orderDetailsModalStatus = true;\r\n });\r\n }\r\n\r\n\r\n confirmDelivery() {\r\n this.salesService.confirmOrderDelivery(this.orderForm.Id).subscribe(res => {\r\n this.salesService.getLazyOrders(this.lazyData).subscribe((data:any) => {\r\n if(!this.isAdmin()) {this.sendActionNotification({name: 'Orden Confirmada'})}\r\n this.allOrders = data.orders\r\n this.totalRecords = data.totalResults\r\n this.orderDetailsModalStatus = false;\r\n });\r\n })\r\n }\r\n sendActionNotification(data)\r\n {\r\n let notification = {\r\n ID: this.orderForm.Id,\r\n Acción: data.name ,\r\n Vendedor: this.orderForm.Salesman,\r\n Fecha: this.orderForm.Date,\r\n Cliente: this.orderForm.Client\r\n }\r\n\r\n this.salesService.sendNotification(notification).subscribe();\r\n }\r\n isAdmin()\r\n {\r\n\r\n let currentUser = JSON.parse(localStorage.getItem('currentUser'))\r\n let userModules = currentUser.modules\r\n userModules.forEach(obj => {\r\n if (obj == \"dashboard\")\r\n {return true}\r\n else\r\n {return false}\r\n });\r\n return false\r\n }\r\n\r\n getDeliveryTime() {\r\n var time = new Date(this.orderForm.Delivery).getTime() - new Date(this.orderForm.Date).getTime();\r\n\r\n // transform milliseconds to Minutes\r\n time = time / 60000;\r\n let units = \" Min\";\r\n var res = time.toFixed(2) + units;\r\n // transform Minutes to Hours and limited to 2 decimals\r\n if (time >= 60 && units == \" Min\") {\r\n time = time / 60;\r\n units = \" Hrs\";\r\n res = time.toFixed(2) + units;\r\n }\r\n // transform Hours to Days and limited to 2 decimals\r\n if (time >= 24 && units == \" Hrs\") {\r\n time = time / 24;\r\n units = \" Dias\";\r\n res = time.toFixed(2) + units;\r\n }\r\n return res;\r\n }\r\n\r\n CancelOrder() {\r\n let data = {\r\n \"action\": \"cancel\",\r\n \"id\": this.orderForm.Id\r\n }\r\n this.salesService.OrderActions(data).subscribe(res => {\r\n this.salesService.getLazyOrders(this.lazyData).subscribe((data:any) => {\r\n if(!this.isAdmin()) {this.sendActionNotification({name: 'Orden Cancelada'})}\r\n this.allOrders = data.orders\r\n this.totalRecords = data.totalResults\r\n this.orderDetailsModalStatus = false;\r\n });\r\n })\r\n }\r\n\r\n editOrder() {\r\n this.router.navigate(['/system/sales/editOrder/' + this.orderForm.Id]);\r\n }\r\n\r\n}\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"zn8P\";"],"sourceRoot":"webpack:///"}