{"version":3,"sources":["./$_lazy_route_resource lazy namespace object","./node_modules/moment/locale sync ^\\.\\/.*$","./src/app/app.component.html","./src/app/pages/cubeWork/navbar-cubeWork/navbar-cubeWork.component.html","./src/app/pages/dashboard/dashboard-page/dashboard-page.component.html","./src/app/pages/estimation/ai-estimate/ai-estimate.component.html","./src/app/pages/estimation/import-from-library/import-from-library.component.html","./src/app/pages/estimation/system-controller/system-controller.component.html","./src/app/pages/home/my-activity/create-update-activity-dinamic/create-update-activity-dinamic.component.html","./src/app/pages/home/responsive/responsive.component.html","./src/app/pages/inventory/parts/new-part/new-part.component.html","./src/app/pages/inventory/vendors/vendor-alps-popup/vendor-alps-popup.component.html","./src/app/pages/login-recover-passwd-cw/login-recover-passwd-cw.component.html","./src/app/pages/login-recover-passwd/login-recover-passwd.component.html","./src/app/pages/login/company-registration/company-registration.component.html","./src/app/pages/login/login-cubeworks/login-cubeworks.component.html","./src/app/pages/login/login-usertemp/login-usertemp.component.html","./src/app/pages/login/login.component.html","./src/app/pages/project-management/add-edit-workflow/add-edit-workflow.component.html","./src/app/pages/project-management/alarm-work-flow-summary/alarm-work-flow-summary.component.html","./src/app/pages/project-management/card-list-phases/card-list-phases.component.html","./src/app/pages/project-management/edit-project/new-progress-report/new-progress-report.component.html","./src/app/pages/project-management/edit-project/new-push-list-item/new-push-list-item.component.html","./src/app/pages/project-management/edit-project/new-rfi/new-rfi.component.html","./src/app/pages/sales-management/alarm-customers/alarm-customers.component.html","./src/app/pages/sales-management/edit-customer-reutilizable/edit-customer-reutilizable.component.html","./src/app/pages/sales-management/employee-activities/forms/new-customer/new-customer.component.html","./src/app/pages/sales-management/employee-activities/forms/new-empleoye-activities/new-empleoye-activities.component.html","./src/app/pages/sales-management/employee-activities/forms/new-service-site/new-service-site.component.html","./src/app/pages/sales-management/market-analysis/market-companies-that-you-compete/market-companies-that-you-compete.component.html","./src/app/pages/sales-management/sales-leads/modals/new-sales-lead/new-sales-lead.component.html","./src/app/pages/sales-management/sales-project/create-update-sales-project/create-update-sales-project.component.html","./src/app/pages/sales-management/sales-project/new-sales-round/new-sales-round.component.html","./src/app/pages/service-management/services-map/components/new-service-work-order/new-service-work-order.component.html","./src/app/pages/shop/applications/applications.component.html","./src/app/pages/simpleView/simple-view-commissioning/simple-view-commissioning.component.html","./src/app/shared/EditSystemMultiple/EditSystemMultiple.component.html","./src/app/shared/create-update-task/create-update-task.component.html","./src/app/shared/dashboard-draggable-options/dashboard-draggable-options.component.html","./src/app/shared/default-layout/default-layout.component.html","./src/app/shared/dinamic-modal/dinamic-modal.component.html","./src/app/shared/edit-service-work-order/edit-service-work-order.component.html","./src/app/shared/memorized-task/memorized-task.component.html","./src/app/shared/navbar-sidebar/navbar-sidebar.component.html","./src/app/shared/new-contact/new-contact.component.html","./src/app/shared/new-employee/new-employee.component.html","./src/app/shared/project-attached-document/project-attached-document.component.html","./src/app/shared/report-viewer/report-viewer.component.html","./src/app/shared/schedule-values/schedule-values.component.html","./src/app/shared/service-list/service-list.component.html","./src/app/shared/shared-dashboard/shared-dashboard.component.html","./src/app/shared/shared-datagrid/shared-datagrid.component.html","./src/app/shared/task-list/task-list.component.html","./src/app/shared/treeview-area-system/treeview-area-system.component.html","./node_modules/tslib/tslib.es6.js","./src/app/app-config.service.service.ts","./src/app/app.component.scss","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/app.routes.ts","./src/app/auth/auth-interceptor.ts","./src/app/config/app-configuration.ts","./src/app/config/json-app-config.service.ts","./src/app/custom-pipe/GetTypePipe.ts","./src/app/custom-pipe/KeysPipe.ts","./src/app/custom-pipe/SearchPipe.ts","./src/app/custom-pipe/TruncatePipe.ts","./src/app/models/component-data.ts","./src/app/pages/cubeWork/navbar-cubeWork/navbar-cubeWork.component.scss","./src/app/pages/cubeWork/navbar-cubeWork/navbar-cubeWork.component.ts","./src/app/pages/cubeWork/navbar-cubeWork/navbar-cubeWork.module.ts","./src/app/pages/dashboard/dashboard-page/dashboard-page.component.scss","./src/app/pages/dashboard/dashboard-page/dashboard-page.component.ts","./src/app/pages/estimation/ai-estimate/ai-estimate.component.scss","./src/app/pages/estimation/ai-estimate/ai-estimate.component.ts","./src/app/pages/estimation/ai-estimate/ai-estimate.module.ts","./src/app/pages/estimation/import-from-library/import-from-library.component.scss","./src/app/pages/estimation/import-from-library/import-from-library.component.ts","./src/app/pages/estimation/import-from-library/import-from-library.module.ts","./src/app/pages/estimation/system-controller/system-controller.component.scss","./src/app/pages/estimation/system-controller/system-controller.component.ts","./src/app/pages/estimation/system-controller/system-controller.module.ts","./src/app/pages/home/my-activity/create-update-activity-dinamic/create-update-activity-dinamic.component.scss","./src/app/pages/home/my-activity/create-update-activity-dinamic/create-update-activity-dinamic.component.ts","./src/app/pages/home/my-activity/create-update-activity-dinamic/create-update-activity-dinamic.module.ts","./src/app/pages/home/responsive/responsive.component.scss","./src/app/pages/home/responsive/responsive.component.ts","./src/app/pages/inventory/parts/new-part/new-part.component.scss","./src/app/pages/inventory/parts/new-part/new-part.component.ts","./src/app/pages/inventory/parts/new-part/new-part.module.ts","./src/app/pages/inventory/vendors/vendor-alps-popup/vendor-alps-popup.component.scss","./src/app/pages/inventory/vendors/vendor-alps-popup/vendor-alps-popup.component.ts","./src/app/pages/inventory/vendors/vendor-alps-popup/vendor-alps-popup.module.ts","./src/app/pages/login-recover-passwd-cw/login-recover-passwd-cw.component.scss","./src/app/pages/login-recover-passwd-cw/login-recover-passwd-cw.component.ts","./src/app/pages/login-recover-passwd/login-recover-passwd.component.scss","./src/app/pages/login-recover-passwd/login-recover-passwd.component.ts","./src/app/pages/login/company-registration/company-registration.component.scss","./src/app/pages/login/company-registration/company-registration.component.ts","./src/app/pages/login/login-cubeworks/login-cubeworks.component.scss","./src/app/pages/login/login-cubeworks/login-cubeworks.component.ts","./src/app/pages/login/login-usertemp/login-usertemp.component.scss","./src/app/pages/login/login-usertemp/login-usertemp.component.ts","./src/app/pages/login/login.component.scss","./src/app/pages/login/login.component.ts","./src/app/pages/project-management/add-edit-workflow/add-edit-workflow.component.scss","./src/app/pages/project-management/add-edit-workflow/add-edit-workflow.component.ts","./src/app/pages/project-management/add-edit-workflow/add-edit-workflow.module.ts","./src/app/pages/project-management/alarm-work-flow-summary/alarm-work-flow-summary.component.scss","./src/app/pages/project-management/alarm-work-flow-summary/alarm-work-flow-summary.component.ts","./src/app/pages/project-management/alarm-work-flow-summary/alarm-work-flow-summary.module.ts","./src/app/pages/project-management/card-list-phases/card-list-phases.component.scss","./src/app/pages/project-management/card-list-phases/card-list-phases.component.ts","./src/app/pages/project-management/card-list-phases/card-list-phases.module.ts","./src/app/pages/project-management/edit-project/new-progress-report/new-progress-report.component.scss","./src/app/pages/project-management/edit-project/new-progress-report/new-progress-report.component.ts","./src/app/pages/project-management/edit-project/new-progress-report/new-progress-report.module.ts","./src/app/pages/project-management/edit-project/new-push-list-item/new-push-list-item.component.scss","./src/app/pages/project-management/edit-project/new-push-list-item/new-push-list-item.component.ts","./src/app/pages/project-management/edit-project/new-push-list-item/new-push-list-item.module.ts","./src/app/pages/project-management/edit-project/new-rfi/new-rfi.component.scss","./src/app/pages/project-management/edit-project/new-rfi/new-rfi.component.ts","./src/app/pages/project-management/edit-project/new-rfi/new-rfi.module.ts","./src/app/pages/sales-management/alarm-customers/alarm-customers.component.scss","./src/app/pages/sales-management/alarm-customers/alarm-customers.component.ts","./src/app/pages/sales-management/alarm-customers/alarm-customers.module.ts","./src/app/pages/sales-management/edit-customer-reutilizable/edit-customer-reutilizable.component.scss","./src/app/pages/sales-management/edit-customer-reutilizable/edit-customer-reutilizable.component.ts","./src/app/pages/sales-management/edit-customer-reutilizable/edit-customer-reutilizable.module.ts","./src/app/pages/sales-management/employee-activities/forms/new-customer/new-customer.component.scss","./src/app/pages/sales-management/employee-activities/forms/new-customer/new-customer.component.ts","./src/app/pages/sales-management/employee-activities/forms/new-customer/new-customer.module.ts","./src/app/pages/sales-management/employee-activities/forms/new-empleoye-activities/new-empleoye-activities.component.scss","./src/app/pages/sales-management/employee-activities/forms/new-empleoye-activities/new-empleoye-activities.component.ts","./src/app/pages/sales-management/employee-activities/forms/new-empleoye-activities/new-empleoye-activities.module.ts","./src/app/pages/sales-management/employee-activities/forms/new-service-site/new-service-site.component.scss","./src/app/pages/sales-management/employee-activities/forms/new-service-site/new-service-site.component.ts","./src/app/pages/sales-management/employee-activities/forms/new-service-site/new-service-site.module.ts","./src/app/pages/sales-management/market-analysis/market-companies-that-you-compete/market-companies-that-you-compete.component.scss","./src/app/pages/sales-management/market-analysis/market-companies-that-you-compete/market-companies-that-you-compete.component.ts","./src/app/pages/sales-management/market-analysis/market-companies-that-you-compete/market-companies-that-you-compete.module.ts","./src/app/pages/sales-management/sales-leads/modals/new-sales-lead/new-sales-lead.component.scss","./src/app/pages/sales-management/sales-leads/modals/new-sales-lead/new-sales-lead.component.ts","./src/app/pages/sales-management/sales-leads/modals/new-sales-lead/new-sales-lead.module.ts","./src/app/pages/sales-management/sales-project/create-update-sales-project/create-update-sales-project.component.scss","./src/app/pages/sales-management/sales-project/create-update-sales-project/create-update-sales-project.component.ts","./src/app/pages/sales-management/sales-project/create-update-sales-project/create-update-sales-project.module.ts","./src/app/pages/sales-management/sales-project/new-sales-round/new-sales-round.component.scss","./src/app/pages/sales-management/sales-project/new-sales-round/new-sales-round.component.ts","./src/app/pages/service-management/services-map/components/new-service-work-order/new-service-work-order.component.scss","./src/app/pages/service-management/services-map/components/new-service-work-order/new-service-work-order.component.ts","./src/app/pages/service-management/services-map/components/new-service-work-order/new-service-work-order.module.ts","./src/app/pages/shop/applications/applications-routing.module.ts","./src/app/pages/shop/applications/applications.component.scss","./src/app/pages/shop/applications/applications.component.ts","./src/app/pages/shop/applications/applications.module.ts","./src/app/pages/simpleView/simple-view-commissioning/simple-view-commissioning-routing.module.ts","./src/app/pages/simpleView/simple-view-commissioning/simple-view-commissioning.component.scss","./src/app/pages/simpleView/simple-view-commissioning/simple-view-commissioning.component.ts","./src/app/pages/simpleView/simple-view-commissioning/simple-view-commissioning.module.ts","./src/app/services/app.service.ts","./src/app/services/company-settings.service.ts","./src/app/services/config.service.ts","./src/app/services/contact.service.ts","./src/app/services/customer.service.ts","./src/app/services/dashboard.service.ts","./src/app/services/datagrid.service.ts","./src/app/services/deltaworld.service.ts","./src/app/services/driveservice.service.ts","./src/app/services/employees.service.ts","./src/app/services/estimate.service.ts","./src/app/services/general.service.ts","./src/app/services/integration-quickbooks.service.ts","./src/app/services/interfacectrlmap.service.ts","./src/app/services/loading.service.ts","./src/app/services/map-information.service.ts","./src/app/services/market-analysis.service.ts","./src/app/services/open-punch-list.service.ts","./src/app/services/open-rif.service.ts","./src/app/services/parts.service.ts","./src/app/services/pipeline.service.ts","./src/app/services/project.service.ts","./src/app/services/sales-project.service.ts","./src/app/services/saleslead.service.ts","./src/app/services/site.service.ts","./src/app/services/swo.service.ts","./src/app/services/system-component.service.ts","./src/app/services/task.service.ts","./src/app/services/text-to-voice.service.ts","./src/app/services/user.service.ts","./src/app/services/utility.service.ts","./src/app/services/voice-recognition.service.ts","./src/app/shared/EditSystemMultiple/EditSystemMultiple.component.scss","./src/app/shared/EditSystemMultiple/EditSystemMultiple.component.ts","./src/app/shared/EditSystemMultiple/EditSystemMultiple.module.ts","./src/app/shared/ErrorInterceptor.ts","./src/app/shared/LoadingInterceptor.ts","./src/app/shared/create-update-task/create-update-task.component.scss","./src/app/shared/create-update-task/create-update-task.component.ts","./src/app/shared/create-update-task/create-update-task.module.ts","./src/app/shared/dashboard-draggable-options/dashboard-draggable-options.component.scss","./src/app/shared/dashboard-draggable-options/dashboard-draggable-options.component.ts","./src/app/shared/data-service/data.service.service.ts","./src/app/shared/default-layout/default-layout.component.scss","./src/app/shared/default-layout/default-layout.component.ts","./src/app/shared/dinamic-modal/dinamic-modal.component.scss","./src/app/shared/dinamic-modal/dinamic-modal.component.ts","./src/app/shared/dinamic-modal/dinamic-modal.module.ts","./src/app/shared/edit-service-work-order/edit-service-work-order.component.scss","./src/app/shared/edit-service-work-order/edit-service-work-order.component.ts","./src/app/shared/edit-service-work-order/edit-service-work-order.module.ts","./src/app/shared/mdb-global.module.ts","./src/app/shared/memorized-task/memorized-task.component.scss","./src/app/shared/memorized-task/memorized-task.component.ts","./src/app/shared/memorized-task/memorized-task.module.ts","./src/app/shared/navbar-sidebar/navbar-sidebar.component.scss","./src/app/shared/navbar-sidebar/navbar-sidebar.component.ts","./src/app/shared/navbar-sidebar/navbar-sidebar.module.ts","./src/app/shared/new-contact/new-contact.component.scss","./src/app/shared/new-contact/new-contact.component.ts","./src/app/shared/new-contact/new-contact.module.ts","./src/app/shared/new-employee/new-employee.component.scss","./src/app/shared/new-employee/new-employee.component.ts","./src/app/shared/new-employee/new-employee.module.ts","./src/app/shared/project-attached-document/project-attached-document.component.scss","./src/app/shared/project-attached-document/project-attached-document.component.ts","./src/app/shared/project-attached-document/project-attached-document.module.ts","./src/app/shared/report-viewer/report-viewer-routing.module.ts","./src/app/shared/report-viewer/report-viewer.component.ts","./src/app/shared/report-viewer/report-viewer.module.ts","./src/app/shared/schedule-values/schedule-values-routing.module.ts","./src/app/shared/schedule-values/schedule-values.component.scss","./src/app/shared/schedule-values/schedule-values.component.ts","./src/app/shared/schedule-values/schedule-values.module.ts","./src/app/shared/service-list/service-list-routing.module.ts","./src/app/shared/service-list/service-list.component.scss","./src/app/shared/service-list/service-list.component.ts","./src/app/shared/service-list/service-list.module.ts","./src/app/shared/shared-dashboard/dashboard-routing.module.ts","./src/app/shared/shared-dashboard/dashboard.module.ts","./src/app/shared/shared-dashboard/shared-dashboard.component.scss","./src/app/shared/shared-dashboard/shared-dashboard.component.ts","./src/app/shared/shared-datagrid/shared-datagrid-routing.module.ts","./src/app/shared/shared-datagrid/shared-datagrid.component.scss","./src/app/shared/shared-datagrid/shared-datagrid.component.ts","./src/app/shared/shared-datagrid/shared-datagrid.module.ts","./src/app/shared/task-list/task-list.component.scss","./src/app/shared/task-list/task-list.component.ts","./src/app/shared/task-list/task-list.module.ts","./src/app/shared/treeview-area-system/treeview-area-system.component.scss","./src/app/shared/treeview-area-system/treeview-area-system.component.ts","./src/app/shared/treeview-area-system/treeview-area-system.module.ts","./src/app/tranlation-config/tranlation-config.module.ts","./src/environments/environment.ts","./src/main.ts","fs (ignored)","crypto (ignored)","stream (ignored)"],"names":[],"mappings":";;;;;;;;;AAAA;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;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;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;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;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;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,GAAG;AACH;;AAEA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA,qC;;;;;;;;;;;AChpCA;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;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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S,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC1iG,4CAA4C;QAC5C,yBAAoB,GAA2B,CAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC/iG,4CAA4C;QAC5C,gBAAW,GAA2B,CAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAA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","file":"main-es2015.js","sourcesContent":["var map = {\n\t\"./pages/accounting/account-receivable/account-receivable.module\": [\n\t\t\"./src/app/pages/accounting/account-receivable/account-receivable.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-accounting-account-receivable-account-receivable-module\"\n\t],\n\t\"./pages/accounting/credit-management/credit-management.module\": [\n\t\t\"./src/app/pages/accounting/credit-management/credit-management.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-accounting-credit-management-credit-management-module\"\n\t],\n\t\"./pages/admin-tools/admin-eng-utility/admin-eng-utility.module\": [\n\t\t\"./src/app/pages/admin-tools/admin-eng-utility/admin-eng-utility.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-cubegraphics-~6eeacccf\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-commissioning~bfb04fe4\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-eng-utility-e~df539f76\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-eng-utility-e~28637911\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-inventory-rma-rma-module~~682ecfe8\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-eng-utility-e~b13aeb23\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-admin-tools-client-activa~6c613b86\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-inventory-parts-DinamicGr~129fd02e\",\n\t\t\"pages-admin-tools-admin-eng-utility-admin-eng-utility-module\"\n\t],\n\t\"./pages/admin-tools/admin-eng-utility/system-components-master/system-components-master.module\": [\n\t\t\"./src/app/pages/admin-tools/admin-eng-utility/system-components-master/system-components-master.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-system-components-master-system-components-master-module~1dc7ae48\"\n\t],\n\t\"./pages/admin-tools/adminbilling/adminbilling.module\": [\n\t\t\"./src/app/pages/admin-tools/adminbilling/adminbilling.module.ts\",\n\t\t\"pages-admin-tools-adminbilling-adminbilling-module\"\n\t],\n\t\"./pages/admin-tools/client-activation/client-activation.module\": [\n\t\t\"./src/app/pages/admin-tools/client-activation/client-activation.module.ts\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-admin-tools-client-activa~6c613b86\",\n\t\t\"pages-admin-tools-client-activation-client-activation-module\"\n\t],\n\t\"./pages/admin-tools/company-metrics/company-metrics.module\": [\n\t\t\"./src/app/pages/admin-tools/company-metrics/company-metrics.module.ts\",\n\t\t\"pages-admin-tools-company-metrics-company-metrics-module\"\n\t],\n\t\"./pages/admin-tools/configure-image-svg/configure-image-svg.module\": [\n\t\t\"./src/app/pages/admin-tools/configure-image-svg/configure-image-svg.module.ts\",\n\t\t\"pages-admin-tools-configure-image-svg-configure-image-svg-module\"\n\t],\n\t\"./pages/admin-tools/cube-menu/cube-menu.module\": [\n\t\t\"./src/app/pages/admin-tools/cube-menu/cube-menu.module.ts\",\n\t\t\"pages-admin-tools-cube-menu-cube-menu-module\"\n\t],\n\t\"./pages/admin-tools/cube-releases/cube-releases.module\": [\n\t\t\"./src/app/pages/admin-tools/cube-releases/cube-releases.module.ts\",\n\t\t\"pages-admin-tools-cube-releases-cube-releases-module\"\n\t],\n\t\"./pages/admin-tools/menu-cube/menu-cube.module\": [\n\t\t\"./src/app/pages/admin-tools/menu-cube/menu-cube.module.ts\",\n\t\t\"pages-admin-tools-menu-cube-menu-cube-module\"\n\t],\n\t\"./pages/admin-tools/system-library-master/system-library-master.module\": [\n\t\t\"./src/app/pages/admin-tools/system-library-master/system-library-master.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-system-components-master-system-components-master-module~1dc7ae48\",\n\t\t\"pages-admin-tools-system-library-master-system-library-master-module\"\n\t],\n\t\"./pages/admin-tools/system-log/system-log.module\": [\n\t\t\"./src/app/pages/admin-tools/system-log/system-log.module.ts\",\n\t\t\"pages-admin-tools-system-log-system-log-module\"\n\t],\n\t\"./pages/admin-tools/tooltip/tooltip.module\": [\n\t\t\"./src/app/pages/admin-tools/tooltip/tooltip.module.ts\",\n\t\t\"pages-admin-tools-tooltip-tooltip-module\"\n\t],\n\t\"./pages/admin-tools/trainingvideos/trainingvideos.module\": [\n\t\t\"./src/app/pages/admin-tools/trainingvideos/trainingvideos.module.ts\",\n\t\t\"pages-admin-tools-trainingvideos-trainingvideos-module\"\n\t],\n\t\"./pages/admin-tools/unlock-user/unlock-user.module\": [\n\t\t\"./src/app/pages/admin-tools/unlock-user/unlock-user.module.ts\",\n\t\t\"pages-admin-tools-unlock-user-unlock-user-module\"\n\t],\n\t\"./pages/cs-portal/cs-portal.module\": [\n\t\t\"./src/app/pages/cs-portal/cs-portal.module.ts\",\n\t\t\"default~pages-cs-portal-cs-portal-module~pages-estimation-io-optimizer-io-optimizer-module~src-app-p~ea5c4b78\",\n\t\t\"pages-cs-portal-cs-portal-module\"\n\t],\n\t\"./pages/cube-settings/company-notification/company-notification.module\": [\n\t\t\"./src/app/pages/cube-settings/company-notification/company-notification.module.ts\",\n\t\t\"pages-cube-settings-company-notification-company-notification-module\"\n\t],\n\t\"./pages/cube-settings/config-grid/config-grid.module\": [\n\t\t\"./src/app/pages/cube-settings/config-grid/config-grid.module.ts\",\n\t\t\"pages-cube-settings-config-grid-config-grid-module\"\n\t],\n\t\"./pages/cube-settings/import-center/import-center.module\": [\n\t\t\"./src/app/pages/cube-settings/import-center/import-center.module.ts\",\n\t\t\"pages-cube-settings-import-center-import-center-module\"\n\t],\n\t\"./pages/cube-settings/integration/biadmin-component/biadmin-component.module\": [\n\t\t\"./src/app/pages/cube-settings/integration/biadmin-component/biadmin-component.module.ts\",\n\t\t\"pages-cube-settings-integration-biadmin-component-biadmin-component-module\"\n\t],\n\t\"./pages/cube-settings/integration/edit-integration/edit-integration.module\": [\n\t\t\"./src/app/pages/cube-settings/integration/edit-integration/edit-integration.module.ts\",\n\t\t\"pages-cube-settings-integration-edit-integration-edit-integration-module\"\n\t],\n\t\"./pages/cube-settings/integration/integration.module\": [\n\t\t\"./src/app/pages/cube-settings/integration/integration.module.ts\",\n\t\t\"pages-cube-settings-integration-integration-module\"\n\t],\n\t\"./pages/cube-settings/update-center/update-center.module\": [\n\t\t\"./src/app/pages/cube-settings/update-center/update-center.module.ts\",\n\t\t\"pages-cube-settings-update-center-update-center-module\"\n\t],\n\t\"./pages/cube-settings/utility-tables/utility-tables.module\": [\n\t\t\"./src/app/pages/cube-settings/utility-tables/utility-tables.module.ts\",\n\t\t\"pages-cube-settings-utility-tables-utility-tables-module\"\n\t],\n\t\"./pages/cube-settings/vehicles/edit-vehicles/edit-vehicles.module\": [\n\t\t\"./src/app/pages/cube-settings/vehicles/edit-vehicles/edit-vehicles.module.ts\",\n\t\t\"common\",\n\t\t\"pages-cube-settings-vehicles-edit-vehicles-edit-vehicles-module\"\n\t],\n\t\"./pages/cube-settings/vehicles/vehicles.module\": [\n\t\t\"./src/app/pages/cube-settings/vehicles/vehicles.module.ts\",\n\t\t\"common\",\n\t\t\"pages-cube-settings-vehicles-vehicles-module\"\n\t],\n\t\"./pages/cubeWork/billing-cw/billing-cw.module\": [\n\t\t\"./src/app/pages/cubeWork/billing-cw/billing-cw.module.ts\",\n\t\t\"pages-cubeWork-billing-cw-billing-cw-module\"\n\t],\n\t\"./pages/dashboard/dashboardBi_windows/dashboard-bi-viewer/dashboard-bi-viewer.module\": [\n\t\t\"./src/app/pages/dashboard/dashboardBi_windows/dashboard-bi-viewer/dashboard-bi-viewer.module.ts\",\n\t\t\"pages-dashboard-dashboardBi_windows-dashboard-bi-viewer-dashboard-bi-viewer-module\"\n\t],\n\t\"./pages/education/trainings/edit-training/edit-training.module\": [\n\t\t\"./src/app/pages/education/trainings/edit-training/edit-training.module.ts\",\n\t\t\"pages-education-trainings-edit-training-edit-training-module\"\n\t],\n\t\"./pages/education/trainings/trainings.module\": [\n\t\t\"./src/app/pages/education/trainings/trainings.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-education-trainings-trainings-module\"\n\t],\n\t\"./pages/engineering/commissioning/commissioning.module\": [\n\t\t\"./src/app/pages/engineering/commissioning/commissioning.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~1a037abf\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~cc0086b9\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-commissioning~bfb04fe4\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~shared-shared-reports-shared-reports-module\",\n\t\t\"pages-engineering-commissioning-commissioning-module\"\n\t],\n\t\"./pages/engineering/cubegraphics/cubegraphics.module\": [\n\t\t\"./src/app/pages/engineering/cubegraphics/cubegraphics.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~1a037abf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~d79d1d29\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4ba67f4b\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ef975e38\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4f5b46ba\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ba398d9b\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~cc0086b9\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~01ad3153\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-cubegraphics-~6eeacccf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~80de8536\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~52ad2ef8\",\n\t\t\"pages-engineering-cubegraphics-cubegraphics-module\"\n\t],\n\t\"./pages/engineering/delta-world/delta-world.module\": [\n\t\t\"./src/app/pages/engineering/delta-world/delta-world.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~1a037abf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~d79d1d29\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4ba67f4b\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ef975e38\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4f5b46ba\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ba398d9b\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~cc0086b9\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~01ad3153\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-cubegraphics-~6eeacccf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~80de8536\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~52ad2ef8\",\n\t\t\"pages-engineering-delta-world-delta-world-module\"\n\t],\n\t\"./pages/engineering/eng-utility/eng-utility.module\": [\n\t\t\"./src/app/pages/engineering/eng-utility/eng-utility.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-commissioning~bfb04fe4\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-eng-utility-e~df539f76\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-eng-utility-e~28637911\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-eng-utility-e~b13aeb23\",\n\t\t\"default~pages-engineering-eng-utility-eng-utility-module~src-app-pages-cube-box-cube-box-module\",\n\t\t\"pages-engineering-eng-utility-eng-utility-module\"\n\t],\n\t\"./pages/engineering/gatewayAdmin/gatewayAdmin.module\": [\n\t\t\"./src/app/pages/engineering/gatewayAdmin/gatewayAdmin.module.ts\",\n\t\t\"pages-engineering-gatewayAdmin-gatewayAdmin-module\"\n\t],\n\t\"./pages/engineering/programmer/programmer.module\": [\n\t\t\"./src/app/pages/engineering/programmer/programmer.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~1a037abf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~d79d1d29\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4ba67f4b\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ef975e38\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4f5b46ba\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ba398d9b\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~cc0086b9\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~01ad3153\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-cubegraphics-~6eeacccf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~80de8536\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~52ad2ef8\",\n\t\t\"pages-engineering-programmer-programmer-module\"\n\t],\n\t\"./pages/engineering/system-components/find-and-replace/find-and-replace.module\": [\n\t\t\"./src/app/pages/engineering/system-components/find-and-replace/find-and-replace.module.ts\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~d79d1d29\"\n\t],\n\t\"./pages/engineering/system-components/system-components.module\": [\n\t\t\"./src/app/pages/engineering/system-components/system-components.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~1a037abf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~d79d1d29\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4ba67f4b\"\n\t],\n\t\"./pages/engineering/system-library/system-library.module\": [\n\t\t\"./src/app/pages/engineering/system-library/system-library.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-engineering-system-library-system-library-module\"\n\t],\n\t\"./pages/engineering/tech-view-delta/edit-tech-view/edit-tech-view.module\": [\n\t\t\"./src/app/pages/engineering/tech-view-delta/edit-tech-view/edit-tech-view.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~1a037abf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~d79d1d29\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4ba67f4b\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ef975e38\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4f5b46ba\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ba398d9b\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~cc0086b9\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~01ad3153\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-cubegraphics-~6eeacccf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~80de8536\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~52ad2ef8\",\n\t\t\"pages-engineering-tech-view-delta-edit-tech-view-edit-tech-view-module\"\n\t],\n\t\"./pages/estimation/edit-estimate/edit-estimate.module\": [\n\t\t\"./src/app/pages/estimation/edit-estimate/edit-estimate.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~1a037abf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~d79d1d29\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4ba67f4b\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4f5b46ba\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ba398d9b\",\n\t\t\"pages-estimation-edit-estimate-edit-estimate-module\"\n\t],\n\t\"./pages/estimation/estimates/turn-over-sheet-harris/turn-over-sheet-harris.module\": [\n\t\t\"./src/app/pages/estimation/estimates/turn-over-sheet-harris/turn-over-sheet-harris.module.ts\",\n\t\t\"pages-estimation-estimates-turn-over-sheet-harris-turn-over-sheet-harris-module\"\n\t],\n\t\"./pages/estimation/io-optimizer/io-optimizer.module\": [\n\t\t\"./src/app/pages/estimation/io-optimizer/io-optimizer.module.ts\",\n\t\t\"default~pages-cs-portal-cs-portal-module~pages-estimation-io-optimizer-io-optimizer-module~src-app-p~ea5c4b78\",\n\t\t\"pages-estimation-io-optimizer-io-optimizer-module\"\n\t],\n\t\"./pages/grid-reports/grid-reports.module\": [\n\t\t\"./src/app/pages/grid-reports/grid-reports.module.ts\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-commissioning~bfb04fe4\",\n\t\t\"pages-grid-reports-grid-reports-module\"\n\t],\n\t\"./pages/home/home.module\": [\n\t\t\"./src/app/pages/home/home.module.ts\",\n\t\t\"common\",\n\t\t\"pages-home-home-module\"\n\t],\n\t\"./pages/home/issues/issues.module\": [\n\t\t\"./src/app/pages/home/issues/issues.module.ts\",\n\t\t\"pages-home-issues-issues-module\"\n\t],\n\t\"./pages/home/my-activity/my-activity.module\": [\n\t\t\"./src/app/pages/home/my-activity/my-activity.module.ts\",\n\t\t\"default~pages-home-my-activity-my-activity-module~pages-sales-management-sales-leads-sales-lead-modu~50c7cde0\",\n\t\t\"default~pages-home-my-activity-my-activity-module~pages-sales-management-sales-leads-sales-lead-module\",\n\t\t\"pages-home-my-activity-my-activity-module\"\n\t],\n\t\"./pages/home/my-commissions/my-commissions.module\": [\n\t\t\"./src/app/pages/home/my-commissions/my-commissions.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"common\",\n\t\t\"pages-home-my-commissions-my-commissions-module\"\n\t],\n\t\"./pages/home/my-edit-project/my-edit-project.module\": [\n\t\t\"./src/app/pages/home/my-edit-project/my-edit-project.module.ts\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~ca9f4a03\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~69747e18\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~78dc4c19\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~a16153aa\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~ad0c195b\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~0faca14a\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~162b4225\",\n\t\t\"pages-home-my-edit-project-my-edit-project-module\"\n\t],\n\t\"./pages/home/my-expense-reports/edit-expense-reports/edit-expense-reports.module\": [\n\t\t\"./src/app/pages/home/my-expense-reports/edit-expense-reports/edit-expense-reports.module.ts\",\n\t\t\"common\",\n\t\t\"pages-home-my-expense-reports-edit-expense-reports-edit-expense-reports-module\"\n\t],\n\t\"./pages/home/my-expense-reports/my-expense-reports.module\": [\n\t\t\"./src/app/pages/home/my-expense-reports/my-expense-reports.module.ts\",\n\t\t\"pages-home-my-expense-reports-my-expense-reports-module\"\n\t],\n\t\"./pages/home/my-information/my-information.module\": [\n\t\t\"./src/app/pages/home/my-information/my-information.module.ts\",\n\t\t\"pages-home-my-information-my-information-module\"\n\t],\n\t\"./pages/home/my-schedule/my-schedule.module\": [\n\t\t\"./src/app/pages/home/my-schedule/my-schedule.module.ts\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~ca9f4a03\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~69747e18\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~78dc4c19\",\n\t\t\"default~pages-home-my-schedule-my-schedule-module~pages-project-management-task-management-task-mana~af165693\",\n\t\t\"default~pages-home-my-schedule-my-schedule-module~pages-project-management-task-management-task-mana~48e2cc01\",\n\t\t\"pages-home-my-schedule-my-schedule-module\"\n\t],\n\t\"./pages/home/my-time-sheet-plus/my-time-sheet.module\": [\n\t\t\"./src/app/pages/home/my-time-sheet-plus/my-time-sheet.module.ts\",\n\t\t\"common\",\n\t\t\"pages-home-my-time-sheet-plus-my-time-sheet-module\"\n\t],\n\t\"./pages/home/my-time-sheet/my-time-sheet.module\": [\n\t\t\"./src/app/pages/home/my-time-sheet/my-time-sheet.module.ts\",\n\t\t\"common\",\n\t\t\"pages-home-my-time-sheet-my-time-sheet-module\"\n\t],\n\t\"./pages/home/my-trainings/my-trainings.module\": [\n\t\t\"./src/app/pages/home/my-trainings/my-trainings.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-home-my-trainings-my-trainings-module\"\n\t],\n\t\"./pages/home/new-activity/new-activity.module\": [\n\t\t\"./src/app/pages/home/new-activity/new-activity.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-home-new-activity-new-activity-module\"\n\t],\n\t\"./pages/home/responsive/responsive.module\": [\n\t\t\"./src/app/pages/home/responsive/responsive.module.ts\",\n\t\t\"pages-home-responsive-responsive-module\"\n\t],\n\t\"./pages/human-resources/employee-documents/employee-documents.module\": [\n\t\t\"./src/app/pages/human-resources/employee-documents/employee-documents.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-human-resources-employee-documents-employee-documents-module\"\n\t],\n\t\"./pages/human-resources/employees/employees.module\": [\n\t\t\"./src/app/pages/human-resources/employees/employees.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-human-resources-employees-employees-module\"\n\t],\n\t\"./pages/human-resources/expense-report/edit-expense-report/edit-expense-report.module\": [\n\t\t\"./src/app/pages/human-resources/expense-report/edit-expense-report/edit-expense-report.module.ts\",\n\t\t\"common\",\n\t\t\"pages-human-resources-expense-report-edit-expense-report-edit-expense-report-module\"\n\t],\n\t\"./pages/human-resources/expense-report/expense-report.module\": [\n\t\t\"./src/app/pages/human-resources/expense-report/expense-report.module.ts\",\n\t\t\"pages-human-resources-expense-report-expense-report-module\"\n\t],\n\t\"./pages/human-resources/forms/forms.module\": [\n\t\t\"./src/app/pages/human-resources/forms/forms.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-human-resources-forms-forms-module\"\n\t],\n\t\"./pages/human-resources/prevailing-wages/prevailing-wages.module\": [\n\t\t\"./src/app/pages/human-resources/prevailing-wages/prevailing-wages.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-human-resources-prevailing-wages-prevailing-wages-module\"\n\t],\n\t\"./pages/human-resources/run-payroll/run-payroll.module\": [\n\t\t\"./src/app/pages/human-resources/run-payroll/run-payroll.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"common\",\n\t\t\"pages-human-resources-run-payroll-run-payroll-module\"\n\t],\n\t\"./pages/human-resources/sales-commissioning/sales-commissioning.module\": [\n\t\t\"./src/app/pages/human-resources/sales-commissioning/sales-commissioning.module.ts\",\n\t\t\"pages-human-resources-sales-commissioning-sales-commissioning-module\"\n\t],\n\t\"./pages/human-resources/time-sheet/time-sheet.module\": [\n\t\t\"./src/app/pages/human-resources/time-sheet/time-sheet.module.ts\",\n\t\t\"default~pages-human-resources-time-sheet-time-sheet-module~pages-sales-management-pipeline-pipeline-~6d2bdaf4\",\n\t\t\"common\",\n\t\t\"pages-human-resources-time-sheet-time-sheet-module\"\n\t],\n\t\"./pages/inventory/inventory/inventory.module\": [\n\t\t\"./src/app/pages/inventory/inventory/inventory.module.ts\",\n\t\t\"default~pages-inventory-inventory-inventory-module~src-app-pages-inventory-inventory-edit-transfers-~67c90a96\",\n\t\t\"pages-inventory-inventory-inventory-module\"\n\t],\n\t\"./pages/inventory/material-request-plus/material-request.module\": [\n\t\t\"./src/app/pages/inventory/material-request-plus/material-request.module.ts\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-commissioning~bfb04fe4\",\n\t\t\"default~pages-inventory-material-request-material-request-module~pages-inventory-material-request-pl~71f8060f\",\n\t\t\"pages-inventory-material-request-plus-material-request-module\"\n\t],\n\t\"./pages/inventory/material-request/material-request.module\": [\n\t\t\"./src/app/pages/inventory/material-request/material-request.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-inventory-material-request-material-request-module~pages-inventory-material-request-pl~71f8060f\",\n\t\t\"pages-inventory-material-request-material-request-module\"\n\t],\n\t\"./pages/inventory/part-categories/part-categories.module\": [\n\t\t\"./src/app/pages/inventory/part-categories/part-categories.module.ts\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ef975e38\",\n\t\t\"pages-inventory-part-categories-part-categories-module\"\n\t],\n\t\"./pages/inventory/parts/DinamicGridPart/parts.module\": [\n\t\t\"./src/app/pages/inventory/parts/DinamicGridPart/parts.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-commissioning~bfb04fe4\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-eng-utility-e~28637911\",\n\t\t\"default~pages-inventory-parts-DinamicGridPart-parts-module~pages-inventory-parts-parts-module\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-inventory-parts-DinamicGr~129fd02e\",\n\t\t\"pages-inventory-parts-DinamicGridPart-parts-module\"\n\t],\n\t\"./pages/inventory/parts/parts.module\": [\n\t\t\"./src/app/pages/inventory/parts/parts.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-inventory-parts-DinamicGridPart-parts-module~pages-inventory-parts-parts-module\",\n\t\t\"pages-inventory-parts-parts-module\"\n\t],\n\t\"./pages/inventory/purchase-order/purchase-order.module\": [\n\t\t\"./src/app/pages/inventory/purchase-order/purchase-order.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-inventory-purchase-order-purchase-order-module\"\n\t],\n\t\"./pages/inventory/reconcile/reconcile.module\": [\n\t\t\"./src/app/pages/inventory/reconcile/reconcile.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-inventory-reconcile-reconcile-module\"\n\t],\n\t\"./pages/inventory/rma/rma.module\": [\n\t\t\"./src/app/pages/inventory/rma/rma.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-inventory-rma-rma-module~~682ecfe8\",\n\t\t\"pages-inventory-rma-rma-module\"\n\t],\n\t\"./pages/inventory/ship-items/ship-items.module\": [\n\t\t\"./src/app/pages/inventory/ship-items/ship-items.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-inventory-ship-items-ship-items-module\"\n\t],\n\t\"./pages/inventory/subcontractor/subcontractor.module\": [\n\t\t\"./src/app/pages/inventory/subcontractor/subcontractor.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-inventory-subcontractor-subcontractor-module\"\n\t],\n\t\"./pages/inventory/vendors/vendors.module\": [\n\t\t\"./src/app/pages/inventory/vendors/vendors.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-commissioning~bfb04fe4\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-eng-utility-e~28637911\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-inventory-rma-rma-module~~682ecfe8\",\n\t\t\"pages-inventory-vendors-vendors-module\"\n\t],\n\t\"./pages/login/card-plans/card-plans.module\": [\n\t\t\"./src/app/pages/login/card-plans/card-plans.module.ts\",\n\t\t\"pages-login-card-plans-card-plans-module\"\n\t],\n\t\"./pages/login/create-client-user/register-client-user.module\": [\n\t\t\"./src/app/pages/login/create-client-user/register-client-user.module.ts\",\n\t\t\"pages-login-create-client-user-register-client-user-module\"\n\t],\n\t\"./pages/login/create-cubeworks-user/register-cubeworks-user.module\": [\n\t\t\"./src/app/pages/login/create-cubeworks-user/register-cubeworks-user.module.ts\",\n\t\t\"pages-login-create-cubeworks-user-register-cubeworks-user-module\"\n\t],\n\t\"./pages/login/creditcard/creditcard.module\": [\n\t\t\"./src/app/pages/login/creditcard/creditcard.module.ts\",\n\t\t\"default~pages-login-creditcard-creditcard-module~pages-login-payment-payment-module~src-app-pages-us~8117b49b\",\n\t\t\"pages-login-creditcard-creditcard-module\"\n\t],\n\t\"./pages/login/payment/payment.module\": [\n\t\t\"./src/app/pages/login/payment/payment.module.ts\",\n\t\t\"default~pages-login-creditcard-creditcard-module~pages-login-payment-payment-module~src-app-pages-us~8117b49b\",\n\t\t\"pages-login-payment-payment-module\"\n\t],\n\t\"./pages/login/register-external-user/register-externa-user.module\": [\n\t\t\"./src/app/pages/login/register-external-user/register-externa-user.module.ts\",\n\t\t\"pages-login-register-external-user-register-externa-user-module\"\n\t],\n\t\"./pages/machine-learning-images/machine-learning-images.module\": [\n\t\t\"./src/app/pages/machine-learning-images/machine-learning-images.module.ts\",\n\t\t\"pages-machine-learning-images-machine-learning-images-module\"\n\t],\n\t\"./pages/management/business-strategy/business-strategy.module\": [\n\t\t\"./src/app/pages/management/business-strategy/business-strategy.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-management-business-strategy-business-strategy-module\"\n\t],\n\t\"./pages/management/departments/departments.module\": [\n\t\t\"./src/app/pages/management/departments/departments.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-management-departments-departments-module\"\n\t],\n\t\"./pages/management/job-description/job-description.module\": [\n\t\t\"./src/app/pages/management/job-description/job-description.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-management-job-description-job-description-module\"\n\t],\n\t\"./pages/my-projects/my-projects.module\": [\n\t\t\"./src/app/pages/my-projects/my-projects.module.ts\",\n\t\t\"default~pages-my-projects-my-projects-module~pages-project-management-projectpart-projectsparts-modu~45d4467d\",\n\t\t\"pages-my-projects-my-projects-module\"\n\t],\n\t\"./pages/project-management/edit-project/edit-change-order/edit-change-order.module\": [\n\t\t\"./src/app/pages/project-management/edit-project/edit-change-order/edit-change-order.module.ts\",\n\t\t\"pages-project-management-edit-project-edit-change-order-edit-change-order-module\"\n\t],\n\t\"./pages/project-management/edit-project/edit-project.module\": [\n\t\t\"./src/app/pages/project-management/edit-project/edit-project.module.ts\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~ca9f4a03\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~69747e18\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~78dc4c19\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~a16153aa\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~ad0c195b\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~0faca14a\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~162b4225\",\n\t\t\"pages-project-management-edit-project-edit-project-module\"\n\t],\n\t\"./pages/project-management/edit-requisition/edit-requisition.module\": [\n\t\t\"./src/app/pages/project-management/edit-requisition/edit-requisition.module.ts\",\n\t\t\"default~pages-project-management-edit-requisition-edit-requisition-module~pages-service-management-s~95f55fc5\",\n\t\t\"pages-project-management-edit-requisition-edit-requisition-module\"\n\t],\n\t\"./pages/project-management/gantt-scheduler/gantt-scheduler.module\": [\n\t\t\"./src/app/pages/project-management/gantt-scheduler/gantt-scheduler.module.ts\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~69747e18\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~a16153aa\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~ad0c195b\",\n\t\t\"pages-project-management-gantt-scheduler-gantt-scheduler-module\"\n\t],\n\t\"./pages/project-management/open-punch-list/edit-open-punch-list/edit-open-punch-list.module\": [\n\t\t\"./src/app/pages/project-management/open-punch-list/edit-open-punch-list/edit-open-punch-list.module.ts\",\n\t\t\"pages-project-management-open-punch-list-edit-open-punch-list-edit-open-punch-list-module\"\n\t],\n\t\"./pages/project-management/open-punch-list/open-punch-list.module\": [\n\t\t\"./src/app/pages/project-management/open-punch-list/open-punch-list.module.ts\",\n\t\t\"pages-project-management-open-punch-list-open-punch-list-module\"\n\t],\n\t\"./pages/project-management/open-rif/edit-open-rif/edit-open-rif.module\": [\n\t\t\"./src/app/pages/project-management/open-rif/edit-open-rif/edit-open-rif.module.ts\",\n\t\t\"pages-project-management-open-rif-edit-open-rif-edit-open-rif-module\"\n\t],\n\t\"./pages/project-management/open-rif/open-rif.module\": [\n\t\t\"./src/app/pages/project-management/open-rif/open-rif.module.ts\",\n\t\t\"pages-project-management-open-rif-open-rif-module\"\n\t],\n\t\"./pages/project-management/project-analysis/project-analysis.module\": [\n\t\t\"./src/app/pages/project-management/project-analysis/project-analysis.module.ts\",\n\t\t\"pages-project-management-project-analysis-project-analysis-module\"\n\t],\n\t\"./pages/project-management/project-labor-analysis/project-labor-analysis.module\": [\n\t\t\"./src/app/pages/project-management/project-labor-analysis/project-labor-analysis.module.ts\",\n\t\t\"pages-project-management-project-labor-analysis-project-labor-analysis-module\"\n\t],\n\t\"./pages/project-management/project-labor-projection/project-labor-projection.module\": [\n\t\t\"./src/app/pages/project-management/project-labor-projection/project-labor-projection.module.ts\",\n\t\t\"default~pages-project-management-project-labor-projection-project-labor-projection-module~pages-proj~56f3c7d9\"\n\t],\n\t\"./pages/project-management/project-revenue-projection/project-revenue-projection.module\": [\n\t\t\"./src/app/pages/project-management/project-revenue-projection/project-revenue-projection.module.ts\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~ca9f4a03\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~78dc4c19\",\n\t\t\"pages-project-management-project-revenue-projection-project-revenue-projection-module\"\n\t],\n\t\"./pages/project-management/projectpart/projectsparts.module\": [\n\t\t\"./src/app/pages/project-management/projectpart/projectsparts.module.ts\",\n\t\t\"default~pages-my-projects-my-projects-module~pages-project-management-projectpart-projectsparts-modu~45d4467d\",\n\t\t\"pages-project-management-projectpart-projectsparts-module\"\n\t],\n\t\"./pages/project-management/projects/projects.module\": [\n\t\t\"./src/app/pages/project-management/projects/projects.module.ts\",\n\t\t\"default~pages-my-projects-my-projects-module~pages-project-management-projectpart-projectsparts-modu~45d4467d\",\n\t\t\"pages-project-management-projects-projects-module\"\n\t],\n\t\"./pages/project-management/task-management/task-management.module\": [\n\t\t\"./src/app/pages/project-management/task-management/task-management.module.ts\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~ca9f4a03\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~69747e18\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~78dc4c19\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~a16153aa\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-eng-utility-e~df539f76\",\n\t\t\"default~pages-home-my-schedule-my-schedule-module~pages-project-management-task-management-task-mana~af165693\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~0faca14a\",\n\t\t\"default~pages-home-my-schedule-my-schedule-module~pages-project-management-task-management-task-mana~48e2cc01\",\n\t\t\"default~pages-project-management-project-labor-projection-project-labor-projection-module~pages-proj~56f3c7d9\",\n\t\t\"pages-project-management-task-management-task-management-module\"\n\t],\n\t\"./pages/project-management/work-flow-summary/work-flow-summary.module\": [\n\t\t\"./src/app/pages/project-management/work-flow-summary/work-flow-summary.module.ts\",\n\t\t\"pages-project-management-work-flow-summary-work-flow-summary-module\"\n\t],\n\t\"./pages/sales-management/market-analysis/market-analysis.module\": [\n\t\t\"./src/app/pages/sales-management/market-analysis/market-analysis.module.ts\",\n\t\t\"pages-sales-management-market-analysis-market-analysis-module\"\n\t],\n\t\"./pages/sales-management/marketing-campaign/marketing-campaign.module\": [\n\t\t\"./src/app/pages/sales-management/marketing-campaign/marketing-campaign.module.ts\",\n\t\t\"pages-sales-management-marketing-campaign-marketing-campaign-module\"\n\t],\n\t\"./pages/sales-management/sales-forecast/sales-forecast.module\": [\n\t\t\"./src/app/pages/sales-management/sales-forecast/sales-forecast.module.ts\",\n\t\t\"pages-sales-management-sales-forecast-sales-forecast-module\"\n\t],\n\t\"./pages/sales-management/sales-reports/sales-reports.module\": [\n\t\t\"./src/app/pages/sales-management/sales-reports/sales-reports.module.ts\",\n\t\t\"pages-sales-management-sales-reports-sales-reports-module\"\n\t],\n\t\"./pages/service-management/edit-service-contract-plus/edit-service-contract-plus.module\": [\n\t\t\"./src/app/pages/service-management/edit-service-contract-plus/edit-service-contract-plus.module.ts\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~ca9f4a03\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~9ed2c666\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~69747e18\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~4936ef04\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~a16153aa\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~ad0c195b\",\n\t\t\"default~pages-home-my-schedule-my-schedule-module~pages-project-management-task-management-task-mana~af165693\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~0faca14a\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~e45f9e30\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~162b4225\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~450d0831\",\n\t\t\"pages-service-management-edit-service-contract-plus-edit-service-contract-plus-module\"\n\t],\n\t\"./pages/service-management/edit-service-contract/edit-service-contract.module\": [\n\t\t\"./src/app/pages/service-management/edit-service-contract/edit-service-contract.module.ts\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~ca9f4a03\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~9ed2c666\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~69747e18\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~4936ef04\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~a16153aa\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~ad0c195b\",\n\t\t\"default~pages-home-my-schedule-my-schedule-module~pages-project-management-task-management-task-mana~af165693\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~0faca14a\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~e45f9e30\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-project-management-edit-project-edit~162b4225\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~450d0831\",\n\t\t\"pages-service-management-edit-service-contract-edit-service-contract-module\"\n\t],\n\t\"./pages/service-management/pm-utility/pm-utility.module\": [\n\t\t\"./src/app/pages/service-management/pm-utility/pm-utility.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-home-my-activity-my-activity-module~pages-sales-management-sales-leads-sales-lead-modu~50c7cde0\",\n\t\t\"pages-service-management-pm-utility-pm-utility-module\"\n\t],\n\t\"./pages/service-management/sales-service-assets/sales-service-sites.module\": [\n\t\t\"./src/app/pages/service-management/sales-service-assets/sales-service-sites.module.ts\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~9ed2c666\",\n\t\t\"pages-service-management-sales-service-assets-sales-service-sites-module\"\n\t],\n\t\"./pages/service-management/sales-service-sites/sales-service-sites.module\": [\n\t\t\"./src/app/pages/service-management/sales-service-sites/sales-service-sites.module.ts\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~9ed2c666\",\n\t\t\"pages-service-management-sales-service-sites-sales-service-sites-module\"\n\t],\n\t\"./pages/service-management/service-contracts-plus/service-contracts-plus.module\": [\n\t\t\"./src/app/pages/service-management/service-contracts-plus/service-contracts-plus.module.ts\",\n\t\t\"default~pages-my-projects-my-projects-module~pages-project-management-projectpart-projectsparts-modu~45d4467d\",\n\t\t\"pages-service-management-service-contracts-plus-service-contracts-plus-module\"\n\t],\n\t\"./pages/service-management/service-contracts/service-contracts.module\": [\n\t\t\"./src/app/pages/service-management/service-contracts/service-contracts.module.ts\",\n\t\t\"default~pages-my-projects-my-projects-module~pages-project-management-projectpart-projectsparts-modu~45d4467d\",\n\t\t\"pages-service-management-service-contracts-service-contracts-module\"\n\t],\n\t\"./pages/service-management/service-management/service-management.module\": [\n\t\t\"./src/app/pages/service-management/service-management/service-management.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-service-management-service-management-service-management-module\"\n\t],\n\t\"./pages/service-management/service-quotes/service-quotes.module\": [\n\t\t\"./src/app/pages/service-management/service-quotes/service-quotes.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"pages-service-management-service-quotes-service-quotes-module\"\n\t],\n\t\"./pages/service-management/service-recommendations/service-recommendations.module\": [\n\t\t\"./src/app/pages/service-management/service-recommendations/service-recommendations.module.ts\",\n\t\t\"pages-service-management-service-recommendations-service-recommendations-module\"\n\t],\n\t\"./pages/service-management/service-reports/service-reports.module\": [\n\t\t\"./src/app/pages/service-management/service-reports/service-reports.module.ts\",\n\t\t\"pages-service-management-service-reports-service-reports-module\"\n\t],\n\t\"./pages/service-management/service-sites/service-sites.module\": [\n\t\t\"./src/app/pages/service-management/service-sites/service-sites.module.ts\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~9ed2c666\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~4936ef04\",\n\t\t\"default~pages-service-management-service-sites-service-sites-module~src-app-pages-cube-box-add-to-as~dcdb372e\",\n\t\t\"pages-service-management-service-sites-service-sites-module\"\n\t],\n\t\"./pages/service-management/service-work-order/service-work-order.module\": [\n\t\t\"./src/app/pages/service-management/service-work-order/service-work-order.module.ts\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~9ed2c666\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~4936ef04\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~e45f9e30\",\n\t\t\"default~pages-sales-management-pipeline-pipeline-module~pages-sales-management-sales-leads-sales-lea~ab9c1700\",\n\t\t\"default~pages-project-management-edit-requisition-edit-requisition-module~pages-service-management-s~95f55fc5\",\n\t\t\"default~pages-service-management-service-work-order-service-work-order-module~pages-service-manageme~34df2477\"\n\t],\n\t\"./pages/service-management/services-map/map-service/services-map.module\": [\n\t\t\"./src/app/pages/service-management/services-map/map-service/services-map.module.ts\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~9ed2c666\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~4936ef04\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~e45f9e30\",\n\t\t\"default~pages-sales-management-pipeline-pipeline-module~pages-sales-management-sales-leads-sales-lea~ab9c1700\",\n\t\t\"default~pages-project-management-edit-requisition-edit-requisition-module~pages-service-management-s~95f55fc5\",\n\t\t\"default~pages-service-management-service-work-order-service-work-order-module~pages-service-manageme~34df2477\",\n\t\t\"common\",\n\t\t\"pages-service-management-services-map-map-service-services-map-module\"\n\t],\n\t\"./pages/simpleView/cubecx-dashboard/cubecx-dashboard.module\": [\n\t\t\"./src/app/pages/simpleView/cubecx-dashboard/cubecx-dashboard.module.ts\",\n\t\t\"pages-simpleView-cubecx-dashboard-cubecx-dashboard-module\"\n\t],\n\t\"./pages/simpleView/simple-view-commissioning/simple-view-commissioning.module\": [\n\t\t\"./src/app/pages/simpleView/simple-view-commissioning/simple-view-commissioning.module.ts\"\n\t],\n\t\"./pages/simpleView/simple-view-estimating/simple-view-estimating.module\": [\n\t\t\"./src/app/pages/simpleView/simple-view-estimating/simple-view-estimating.module.ts\",\n\t\t\"pages-simpleView-simple-view-estimating-simple-view-estimating-module\"\n\t],\n\t\"./pages/user-administration/administration-component-dashboard/administration-component-dashboard.module\": [\n\t\t\"./src/app/pages/user-administration/administration-component-dashboard/administration-component-dashboard.module.ts\",\n\t\t\"pages-user-administration-administration-component-dashboard-administration-component-dashboard-module\"\n\t],\n\t\"./pages/user-administration/external-users/external-users.module\": [\n\t\t\"./src/app/pages/user-administration/external-users/external-users.module.ts\",\n\t\t\"common\",\n\t\t\"pages-user-administration-external-users-external-users-module\"\n\t],\n\t\"./pages/user-administration/license-management/license-management.module\": [\n\t\t\"./src/app/pages/user-administration/license-management/license-management.module.ts\",\n\t\t\"pages-user-administration-license-management-license-management-module\"\n\t],\n\t\"./pages/user-administration/manage-users/groups/groups.module\": [\n\t\t\"./src/app/pages/user-administration/manage-users/groups/groups.module.ts\",\n\t\t\"pages-user-administration-manage-users-groups-groups-module\"\n\t],\n\t\"./pages/user-administration/manage-users/manage-users.module\": [\n\t\t\"./src/app/pages/user-administration/manage-users/manage-users.module.ts\",\n\t\t\"common\",\n\t\t\"pages-user-administration-manage-users-manage-users-module\"\n\t],\n\t\"./pages/videoTutorial/videoTutorial.module\": [\n\t\t\"./src/app/pages/videoTutorial/videoTutorial.module.ts\",\n\t\t\"pages-videoTutorial-videoTutorial-module\"\n\t],\n\t\"./shared/shared-reports/shared-reports.module\": [\n\t\t\"./src/app/shared/shared-reports/shared-reports.module.ts\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-commissioning~bfb04fe4\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~shared-shared-reports-shared-reports-module\"\n\t],\n\t\"src/app/home-duplicate/home-duplicate.module\": [\n\t\t\"./src/app/home-duplicate/home-duplicate.module.ts\",\n\t\t\"common\",\n\t\t\"src-app-home-duplicate-home-duplicate-module\"\n\t],\n\t\"src/app/pages/accounting/credit-management/edit-credit-management/edit-credit-management.module\": [\n\t\t\"./src/app/pages/accounting/credit-management/edit-credit-management/edit-credit-management.module.ts\",\n\t\t\"src-app-pages-accounting-credit-management-edit-credit-management-edit-credit-management-module\"\n\t],\n\t\"src/app/pages/admin-tools/choose-resource/choose-resource.module\": [\n\t\t\"./src/app/pages/admin-tools/choose-resource/choose-resource.module.ts\",\n\t\t\"src-app-pages-admin-tools-choose-resource-choose-resource-module\"\n\t],\n\t\"src/app/pages/cube-box/add-to-assets/add-to-assets.module\": [\n\t\t\"./src/app/pages/cube-box/add-to-assets/add-to-assets.module.ts\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~9ed2c666\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~4936ef04\",\n\t\t\"default~pages-service-management-service-sites-service-sites-module~src-app-pages-cube-box-add-to-as~dcdb372e\",\n\t\t\"default~src-app-pages-cube-box-add-to-assets-add-to-assets-module~src-app-pages-cube-box-cube-box-module\",\n\t\t\"src-app-pages-cube-box-add-to-assets-add-to-assets-module\"\n\t],\n\t\"src/app/pages/cube-box/cube-box-diagram/cube-box-diagram.module\": [\n\t\t\"./src/app/pages/cube-box/cube-box-diagram/cube-box-diagram.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~1a037abf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~d79d1d29\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4ba67f4b\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ef975e38\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4f5b46ba\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ba398d9b\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~cc0086b9\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~01ad3153\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-cubegraphics-~6eeacccf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~80de8536\",\n\t\t\"src-app-pages-cube-box-cube-box-diagram-cube-box-diagram-module\"\n\t],\n\t\"src/app/pages/cube-box/cube-box.module\": [\n\t\t\"./src/app/pages/cube-box/cube-box.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~1a037abf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~d79d1d29\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4ba67f4b\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ef975e38\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4f5b46ba\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ba398d9b\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~cc0086b9\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~01ad3153\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-cubegraphics-~6eeacccf\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~9ed2c666\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-commissioning~bfb04fe4\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~80de8536\",\n\t\t\"default~pages-service-management-edit-service-contract-edit-service-contract-module~pages-service-ma~4936ef04\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-eng-utility-e~df539f76\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~52ad2ef8\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-eng-utility-e~28637911\",\n\t\t\"default~pages-service-management-service-sites-service-sites-module~src-app-pages-cube-box-add-to-as~dcdb372e\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-eng-utility-e~b13aeb23\",\n\t\t\"default~pages-cs-portal-cs-portal-module~pages-estimation-io-optimizer-io-optimizer-module~src-app-p~ea5c4b78\",\n\t\t\"default~pages-sales-management-sales-project-sales-project-module~src-app-pages-cube-box-cube-box-module\",\n\t\t\"default~pages-engineering-eng-utility-eng-utility-module~src-app-pages-cube-box-cube-box-module\",\n\t\t\"default~src-app-pages-cube-box-add-to-assets-add-to-assets-module~src-app-pages-cube-box-cube-box-module\",\n\t\t\"default~pages-service-contract-service-contract-module~src-app-pages-cube-box-cube-box-module\",\n\t\t\"src-app-pages-cube-box-cube-box-module\"\n\t],\n\t\"src/app/pages/cube-box/find-replace/find-replace.module\": [\n\t\t\"./src/app/pages/cube-box/find-replace/find-replace.module.ts\",\n\t\t\"src-app-pages-cube-box-find-replace-find-replace-module\"\n\t],\n\t\"src/app/pages/cube-settings/aiconsumption/aiconsumption.module\": [\n\t\t\"./src/app/pages/cube-settings/aiconsumption/aiconsumption.module.ts\",\n\t\t\"src-app-pages-cube-settings-aiconsumption-aiconsumption-module\"\n\t],\n\t\"src/app/pages/cube-settings/cube-advertisement/cube-advertisement.module\": [\n\t\t\"./src/app/pages/cube-settings/cube-advertisement/cube-advertisement.module.ts\",\n\t\t\"src-app-pages-cube-settings-cube-advertisement-cube-advertisement-module\"\n\t],\n\t\"src/app/pages/cube-settings/customer-webinars/customer-webinars.module\": [\n\t\t\"./src/app/pages/cube-settings/customer-webinars/customer-webinars.module.ts\",\n\t\t\"src-app-pages-cube-settings-customer-webinars-customer-webinars-module\"\n\t],\n\t\"src/app/pages/cube-settings/task-category-grid/task-category-grid.module\": [\n\t\t\"./src/app/pages/cube-settings/task-category-grid/task-category-grid.module.ts\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ef975e38\",\n\t\t\"src-app-pages-cube-settings-task-category-grid-task-category-grid-module\"\n\t],\n\t\"src/app/pages/cubeWork/ai-support/ai-support-tables.module\": [\n\t\t\"./src/app/pages/cubeWork/ai-support/ai-support-tables.module.ts\",\n\t\t\"default~pages-cubeWork-workflow-table-workflow-table-module~src-app-pages-cubeWork-ai-support-ai-sup~ef552017\",\n\t\t\"src-app-pages-cubeWork-ai-support-ai-support-tables-module\"\n\t],\n\t\"src/app/pages/cubeWork/choose-settings/choose-settings.module\": [\n\t\t\"./src/app/pages/cubeWork/choose-settings/choose-settings.module.ts\",\n\t\t\"default~pages-cubeWork-workflow-table-workflow-table-module~src-app-pages-cubeWork-ai-support-ai-sup~ef552017\",\n\t\t\"src-app-pages-cubeWork-choose-settings-choose-settings-module\"\n\t],\n\t\"src/app/pages/cubeWork/client-dasboard/client-dasboard.module\": [\n\t\t\"./src/app/pages/cubeWork/client-dasboard/client-dasboard.module.ts\",\n\t\t\"src-app-pages-cubeWork-client-dasboard-client-dasboard-module\"\n\t],\n\t\"src/app/pages/cubeWork/completed-jobs/completed-jobs.module\": [\n\t\t\"./src/app/pages/cubeWork/completed-jobs/completed-jobs.module.ts\",\n\t\t\"src-app-pages-cubeWork-completed-jobs-completed-jobs-module\"\n\t],\n\t\"src/app/pages/cubeWork/contracts/contracts.module\": [\n\t\t\"./src/app/pages/cubeWork/contracts/contracts.module.ts\",\n\t\t\"src-app-pages-cubeWork-contracts-contracts-module\"\n\t],\n\t\"src/app/pages/cubeWork/cube-workmessage/cube-workmessage.module\": [\n\t\t\"./src/app/pages/cubeWork/cube-workmessage/cube-workmessage.module.ts\",\n\t\t\"default~src-app-pages-cubeWork-cube-workmessage-cube-workmessage-module~src-app-pages-cubeWork-profi~083fb8fe\"\n\t],\n\t\"src/app/pages/cubeWork/cw-utility-tables/cw-utility-tables.module\": [\n\t\t\"./src/app/pages/cubeWork/cw-utility-tables/cw-utility-tables.module.ts\",\n\t\t\"default~pages-cubeWork-workflow-table-workflow-table-module~src-app-pages-cubeWork-ai-support-ai-sup~ef552017\",\n\t\t\"src-app-pages-cubeWork-cw-utility-tables-cw-utility-tables-module\"\n\t],\n\t\"src/app/pages/cubeWork/dashboard-talents/dashboard-talents.module\": [\n\t\t\"./src/app/pages/cubeWork/dashboard-talents/dashboard-talents.module.ts\",\n\t\t\"src-app-pages-cubeWork-dashboard-talents-dashboard-talents-module\"\n\t],\n\t\"src/app/pages/cubeWork/detail-job/detail-job.module\": [\n\t\t\"./src/app/pages/cubeWork/detail-job/detail-job.module.ts\",\n\t\t\"src-app-pages-cubeWork-detail-job-detail-job-module\"\n\t],\n\t\"src/app/pages/cubeWork/find-work/find-work.module\": [\n\t\t\"./src/app/pages/cubeWork/find-work/find-work.module.ts\",\n\t\t\"src-app-pages-cubeWork-find-work-find-work-module\"\n\t],\n\t\"src/app/pages/cubeWork/job-post/job-post.module\": [\n\t\t\"./src/app/pages/cubeWork/job-post/job-post.module.ts\",\n\t\t\"src-app-pages-cubeWork-job-post-job-post-module\"\n\t],\n\t\"src/app/pages/cubeWork/jobs/jobs.module\": [\n\t\t\"./src/app/pages/cubeWork/jobs/jobs.module.ts\",\n\t\t\"src-app-pages-cubeWork-jobs-jobs-module\"\n\t],\n\t\"src/app/pages/cubeWork/my-feed/my-feed.module\": [\n\t\t\"./src/app/pages/cubeWork/my-feed/my-feed.module.ts\",\n\t\t\"default~src-app-pages-cubeWork-my-feed-my-feed-module~src-app-pages-cubeWork-profile-talent-profile-~ce40779a\",\n\t\t\"src-app-pages-cubeWork-my-feed-my-feed-module\"\n\t],\n\t\"src/app/pages/cubeWork/my-jobs-details-talent/my-jobs-details.module\": [\n\t\t\"./src/app/pages/cubeWork/my-jobs-details-talent/my-jobs-details.module.ts\",\n\t\t\"src-app-pages-cubeWork-my-jobs-details-talent-my-jobs-details-module\"\n\t],\n\t\"src/app/pages/cubeWork/my-jobs-details/my-jobs-details.module\": [\n\t\t\"./src/app/pages/cubeWork/my-jobs-details/my-jobs-details.module.ts\",\n\t\t\"src-app-pages-cubeWork-my-jobs-details-my-jobs-details-module\"\n\t],\n\t\"src/app/pages/cubeWork/my-jobs/my-jobs.module\": [\n\t\t\"./src/app/pages/cubeWork/my-jobs/my-jobs.module.ts\",\n\t\t\"src-app-pages-cubeWork-my-jobs-my-jobs-module\"\n\t],\n\t\"src/app/pages/cubeWork/my-proposals/my-proposals.module\": [\n\t\t\"./src/app/pages/cubeWork/my-proposals/my-proposals.module.ts\",\n\t\t\"src-app-pages-cubeWork-my-proposals-my-proposals-module\"\n\t],\n\t\"src/app/pages/cubeWork/myfeed2/myfeed2.module\": [\n\t\t\"./src/app/pages/cubeWork/myfeed2/myfeed2.module.ts\",\n\t\t\"src-app-pages-cubeWork-myfeed2-myfeed2-module\"\n\t],\n\t\"src/app/pages/cubeWork/offer-view/offer-view.module\": [\n\t\t\"./src/app/pages/cubeWork/offer-view/offer-view.module.ts\",\n\t\t\"src-app-pages-cubeWork-offer-view-offer-view-module\"\n\t],\n\t\"src/app/pages/cubeWork/profile-talent/profile-talent.module\": [\n\t\t\"./src/app/pages/cubeWork/profile-talent/profile-talent.module.ts\",\n\t\t\"default~src-app-pages-cubeWork-cube-workmessage-cube-workmessage-module~src-app-pages-cubeWork-profi~083fb8fe\",\n\t\t\"default~src-app-pages-cubeWork-my-feed-my-feed-module~src-app-pages-cubeWork-profile-talent-profile-~ce40779a\",\n\t\t\"src-app-pages-cubeWork-profile-talent-profile-talent-module\"\n\t],\n\t\"src/app/pages/cubeWork/reports-work-cube/reports-work-cube.module\": [\n\t\t\"./src/app/pages/cubeWork/reports-work-cube/reports-work-cube.module.ts\",\n\t\t\"src-app-pages-cubeWork-reports-work-cube-reports-work-cube-module\"\n\t],\n\t\"src/app/pages/cubeWork/review-post/review-post.module\": [\n\t\t\"./src/app/pages/cubeWork/review-post/review-post.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~1a037abf\",\n\t\t\"default~src-app-pages-cubeWork-review-post-review-post-module~src-app-pages-cubeWork-search-job-new-~e3a7ab3e\",\n\t\t\"src-app-pages-cubeWork-review-post-review-post-module\"\n\t],\n\t\"src/app/pages/cubeWork/reviews/reviews.module\": [\n\t\t\"./src/app/pages/cubeWork/reviews/reviews.module.ts\",\n\t\t\"src-app-pages-cubeWork-reviews-reviews-module\"\n\t],\n\t\"src/app/pages/cubeWork/search-job-new/search-job-new.module\": [\n\t\t\"./src/app/pages/cubeWork/search-job-new/search-job-new.module.ts\",\n\t\t\"default~src-app-pages-cubeWork-cube-workmessage-cube-workmessage-module~src-app-pages-cubeWork-profi~083fb8fe\",\n\t\t\"default~src-app-pages-cubeWork-review-post-review-post-module~src-app-pages-cubeWork-search-job-new-~e3a7ab3e\",\n\t\t\"src-app-pages-cubeWork-search-job-new-search-job-new-module\"\n\t],\n\t\"src/app/pages/cubeWork/search-job/search-job.module\": [\n\t\t\"./src/app/pages/cubeWork/search-job/search-job.module.ts\",\n\t\t\"default~src-app-pages-cubeWork-cube-workmessage-cube-workmessage-module~src-app-pages-cubeWork-profi~083fb8fe\",\n\t\t\"src-app-pages-cubeWork-search-job-search-job-module\"\n\t],\n\t\"src/app/pages/cubeWork/send-offer/send-offer.module\": [\n\t\t\"./src/app/pages/cubeWork/send-offer/send-offer.module.ts\",\n\t\t\"default~src-app-pages-cubeWork-cube-workmessage-cube-workmessage-module~src-app-pages-cubeWork-profi~083fb8fe\",\n\t\t\"src-app-pages-cubeWork-send-offer-send-offer-module\"\n\t],\n\t\"src/app/pages/cubeWork/settings-cube-work/settings-cube-work.module\": [\n\t\t\"./src/app/pages/cubeWork/settings-cube-work/settings-cube-work.module.ts\",\n\t\t\"src-app-pages-cubeWork-settings-cube-work-settings-cube-work-module\"\n\t],\n\t\"src/app/pages/cubeWork/submit-proposal/submit-proposal.module\": [\n\t\t\"./src/app/pages/cubeWork/submit-proposal/submit-proposal.module.ts\",\n\t\t\"src-app-pages-cubeWork-submit-proposal-submit-proposal-module\"\n\t],\n\t\"src/app/pages/cubeWork/view-job-posting/view-job-posting.module\": [\n\t\t\"./src/app/pages/cubeWork/view-job-posting/view-job-posting.module.ts\",\n\t\t\"src-app-pages-cubeWork-view-job-posting-view-job-posting-module\"\n\t],\n\t\"src/app/pages/cubeWork/view-proposals/view-proposals.module\": [\n\t\t\"./src/app/pages/cubeWork/view-proposals/view-proposals.module.ts\",\n\t\t\"default~src-app-pages-cubeWork-cube-workmessage-cube-workmessage-module~src-app-pages-cubeWork-profi~083fb8fe\",\n\t\t\"src-app-pages-cubeWork-view-proposals-view-proposals-module\"\n\t],\n\t\"src/app/pages/education/kbs/edit-kbas/edit-kbas.module\": [\n\t\t\"./src/app/pages/education/kbs/edit-kbas/edit-kbas.module.ts\",\n\t\t\"src-app-pages-education-kbs-edit-kbas-edit-kbas-module\"\n\t],\n\t\"src/app/pages/education/kbs/kbs.module\": [\n\t\t\"./src/app/pages/education/kbs/kbs.module.ts\",\n\t\t\"src-app-pages-education-kbs-kbs-module\"\n\t],\n\t\"src/app/pages/gantt-service/gantt-service.module\": [\n\t\t\"./src/app/pages/gantt-service/gantt-service.module.ts\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~ca9f4a03\",\n\t\t\"default~pages-home-my-schedule-my-schedule-module~pages-project-management-task-management-task-mana~af165693\"\n\t],\n\t\"src/app/pages/gantt-task/gantt.module\": [\n\t\t\"./src/app/pages/gantt-task/gantt.module.ts\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~ca9f4a03\",\n\t\t\"default~pages-home-my-edit-project-my-edit-project-module~pages-home-my-schedule-my-schedule-module~~78dc4c19\"\n\t],\n\t\"src/app/pages/human-resources/applicant/applicant.module\": [\n\t\t\"./src/app/pages/human-resources/applicant/applicant.module.ts\",\n\t\t\"src-app-pages-human-resources-applicant-applicant-module\"\n\t],\n\t\"src/app/pages/human-resources/applicant/edit-applicant/edit-applicant.module\": [\n\t\t\"./src/app/pages/human-resources/applicant/edit-applicant/edit-applicant.module.ts\",\n\t\t\"src-app-pages-human-resources-applicant-edit-applicant-edit-applicant-module\"\n\t],\n\t\"src/app/pages/human-resources/applicant/edit-positions/edit-positions.module\": [\n\t\t\"./src/app/pages/human-resources/applicant/edit-positions/edit-positions.module.ts\",\n\t\t\"src-app-pages-human-resources-applicant-edit-positions-edit-positions-module\"\n\t],\n\t\"src/app/pages/inventory/inventory/edit-location-group/edit-location-group.module\": [\n\t\t\"./src/app/pages/inventory/inventory/edit-location-group/edit-location-group.module.ts\",\n\t\t\"src-app-pages-inventory-inventory-edit-location-group-edit-location-group-module\"\n\t],\n\t\"src/app/pages/inventory/inventory/edit-transfers/edit-transfers.module\": [\n\t\t\"./src/app/pages/inventory/inventory/edit-transfers/edit-transfers.module.ts\",\n\t\t\"default~pages-inventory-inventory-inventory-module~src-app-pages-inventory-inventory-edit-transfers-~67c90a96\"\n\t],\n\t\"src/app/pages/inventory/rma/edit-rma/edit-rma.module\": [\n\t\t\"./src/app/pages/inventory/rma/edit-rma/edit-rma.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-inventory-rma-rma-module~~682ecfe8\",\n\t\t\"src-app-pages-inventory-rma-edit-rma-edit-rma-module\"\n\t],\n\t\"src/app/pages/login-new-account/login-new-account.module\": [\n\t\t\"./src/app/pages/login-new-account/login-new-account.module.ts\",\n\t\t\"src-app-pages-login-new-account-login-new-account-module\"\n\t],\n\t\"src/app/pages/shop/add-new-payment/add-new-payment.module\": [\n\t\t\"./src/app/pages/shop/add-new-payment/add-new-payment.module.ts\",\n\t\t\"src-app-pages-shop-add-new-payment-add-new-payment-module\"\n\t],\n\t\"src/app/pages/shop/add-new-shipping/add-new-shipping.module\": [\n\t\t\"./src/app/pages/shop/add-new-shipping/add-new-shipping.module.ts\",\n\t\t\"src-app-pages-shop-add-new-shipping-add-new-shipping-module\"\n\t],\n\t\"src/app/pages/shop/aiestimateshop/aiestimateshop.module\": [\n\t\t\"./src/app/pages/shop/aiestimateshop/aiestimateshop.module.ts\",\n\t\t\"src-app-pages-shop-aiestimateshop-aiestimateshop-module\"\n\t],\n\t\"src/app/pages/shop/all-project-cube-shop/all-project-cube-shop.module\": [\n\t\t\"./src/app/pages/shop/all-project-cube-shop/all-project-cube-shop.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~src-app-pages-shop-all-project-cube-shop-all-project-cube-shop-module~src-app-pages-shop-det~a1d52c26\",\n\t\t\"src-app-pages-shop-all-project-cube-shop-all-project-cube-shop-module\"\n\t],\n\t\"src/app/pages/shop/application-filtered/application-filtered.module\": [\n\t\t\"./src/app/pages/shop/application-filtered/application-filtered.module.ts\",\n\t\t\"src-app-pages-shop-application-filtered-application-filtered-module\"\n\t],\n\t\"src/app/pages/shop/application-type/application-type.module\": [\n\t\t\"./src/app/pages/shop/application-type/application-type.module.ts\",\n\t\t\"src-app-pages-shop-application-type-application-type-module\"\n\t],\n\t\"src/app/pages/shop/applications/applications.module\": [\n\t\t\"./src/app/pages/shop/applications/applications.module.ts\"\n\t],\n\t\"src/app/pages/shop/detail-project/detail-project.module\": [\n\t\t\"./src/app/pages/shop/detail-project/detail-project.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~1a037abf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~d79d1d29\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4ba67f4b\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ef975e38\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~4f5b46ba\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~ba398d9b\",\n\t\t\"default~pages-engineering-commissioning-commissioning-module~pages-engineering-cubegraphics-cubegrap~cc0086b9\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~01ad3153\",\n\t\t\"default~pages-admin-tools-admin-eng-utility-admin-eng-utility-module~pages-engineering-cubegraphics-~6eeacccf\",\n\t\t\"default~pages-engineering-cubegraphics-cubegraphics-module~pages-engineering-delta-world-delta-world~80de8536\",\n\t\t\"default~src-app-pages-shop-all-project-cube-shop-all-project-cube-shop-module~src-app-pages-shop-det~a1d52c26\",\n\t\t\"src-app-pages-shop-detail-project-detail-project-module\"\n\t],\n\t\"src/app/pages/shop/list-systems/list-systems.module\": [\n\t\t\"./src/app/pages/shop/list-systems/list-systems.module.ts\",\n\t\t\"src-app-pages-shop-list-systems-list-systems-module\"\n\t],\n\t\"src/app/pages/shop/my-cart/my-cart.module\": [\n\t\t\"./src/app/pages/shop/my-cart/my-cart.module.ts\",\n\t\t\"src-app-pages-shop-my-cart-my-cart-module\"\n\t],\n\t\"src/app/pages/shop/my-projects/my-projects.module\": [\n\t\t\"./src/app/pages/shop/my-projects/my-projects.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"default~src-app-pages-shop-all-project-cube-shop-all-project-cube-shop-module~src-app-pages-shop-det~a1d52c26\",\n\t\t\"src-app-pages-shop-my-projects-my-projects-module\"\n\t],\n\t\"src/app/pages/shop/order-detail/order-detail.module\": [\n\t\t\"./src/app/pages/shop/order-detail/order-detail.module.ts\",\n\t\t\"src-app-pages-shop-order-detail-order-detail-module\"\n\t],\n\t\"src/app/pages/shop/order/order.module\": [\n\t\t\"./src/app/pages/shop/order/order.module.ts\",\n\t\t\"src-app-pages-shop-order-order-module\"\n\t],\n\t\"src/app/pages/shop/payment-information/payment-information.module\": [\n\t\t\"./src/app/pages/shop/payment-information/payment-information.module.ts\",\n\t\t\"src-app-pages-shop-payment-information-payment-information-module\"\n\t],\n\t\"src/app/pages/shop/products-cart/products-cart.module\": [\n\t\t\"./src/app/pages/shop/products-cart/products-cart.module.ts\",\n\t\t\"src-app-pages-shop-products-cart-products-cart-module\"\n\t],\n\t\"src/app/pages/shop/products-category/products-category.module\": [\n\t\t\"./src/app/pages/shop/products-category/products-category.module.ts\",\n\t\t\"src-app-pages-shop-products-category-products-category-module\"\n\t],\n\t\"src/app/pages/shop/products-details/products-details.module\": [\n\t\t\"./src/app/pages/shop/products-details/products-details.module.ts\",\n\t\t\"src-app-pages-shop-products-details-products-details-module\"\n\t],\n\t\"src/app/pages/shop/shipping-address/shipping-address.module\": [\n\t\t\"./src/app/pages/shop/shipping-address/shipping-address.module.ts\",\n\t\t\"src-app-pages-shop-shipping-address-shipping-address-module\"\n\t],\n\t\"src/app/pages/shop/your-order/your-order.module\": [\n\t\t\"./src/app/pages/shop/your-order/your-order.module.ts\",\n\t\t\"src-app-pages-shop-your-order-your-order-module\"\n\t],\n\t\"src/app/pages/start-here/my-webinars/my-webinars.module\": [\n\t\t\"./src/app/pages/start-here/my-webinars/my-webinars.module.ts\",\n\t\t\"default~pages-accounting-account-receivable-account-receivable-module~pages-accounting-credit-manage~6eeb7e9e\",\n\t\t\"src-app-pages-start-here-my-webinars-my-webinars-module\"\n\t],\n\t\"src/app/pages/user-administration/gettoken/gettoken.module\": [\n\t\t\"./src/app/pages/user-administration/gettoken/gettoken.module.ts\",\n\t\t\"src-app-pages-user-administration-gettoken-gettoken-module\"\n\t],\n\t\"src/app/pages/user-administration/my-account/edit-payment-method/edit-payment-method.module\": [\n\t\t\"./src/app/pages/user-administration/my-account/edit-payment-method/edit-payment-method.module.ts\",\n\t\t\"default~pages-login-creditcard-creditcard-module~pages-login-payment-payment-module~src-app-pages-us~8117b49b\",\n\t\t\"src-app-pages-user-administration-my-account-edit-payment-method-edit-payment-method-module\"\n\t],\n\t\"src/app/pages/user-administration/my-account/my-account.module\": [\n\t\t\"./src/app/pages/user-administration/my-account/my-account.module.ts\",\n\t\t\"src-app-pages-user-administration-my-account-my-account-module\"\n\t],\n\t\"src/app/shared/report-designer/report-designer.module\": [\n\t\t\"./src/app/shared/report-designer/report-designer.module.ts\",\n\t\t\"src-app-shared-report-designer-report-designer-module\"\n\t],\n\t\"src/app/shared/report-viewer/report-viewer.module\": [\n\t\t\"./src/app/shared/report-viewer/report-viewer.module.ts\"\n\t],\n\t\"src/app/shared/reports/reports.module\": [\n\t\t\"./src/app/shared/reports/reports.module.ts\",\n\t\t\"src-app-shared-reports-reports-module\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./af\": \"./node_modules/moment/locale/af.js\",\n\t\"./af.js\": \"./node_modules/moment/locale/af.js\",\n\t\"./ar\": \"./node_modules/moment/locale/ar.js\",\n\t\"./ar-dz\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-dz.js\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-kw\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-kw.js\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-ly\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ly.js\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ma\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ma.js\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-sa\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-sa.js\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-tn\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar-tn.js\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar.js\": \"./node_modules/moment/locale/ar.js\",\n\t\"./az\": \"./node_modules/moment/locale/az.js\",\n\t\"./az.js\": \"./node_modules/moment/locale/az.js\",\n\t\"./be\": \"./node_modules/moment/locale/be.js\",\n\t\"./be.js\": \"./node_modules/moment/locale/be.js\",\n\t\"./bg\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bg.js\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bm\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bm.js\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bn\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bn-bd\": \"./node_modules/moment/locale/bn-bd.js\",\n\t\"./bn-bd.js\": \"./node_modules/moment/locale/bn-bd.js\",\n\t\"./bn.js\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bo\": \"./node_modules/moment/locale/bo.js\",\n\t\"./bo.js\": \"./node_modules/moment/locale/bo.js\",\n\t\"./br\": \"./node_modules/moment/locale/br.js\",\n\t\"./br.js\": \"./node_modules/moment/locale/br.js\",\n\t\"./bs\": \"./node_modules/moment/locale/bs.js\",\n\t\"./bs.js\": \"./node_modules/moment/locale/bs.js\",\n\t\"./ca\": \"./node_modules/moment/locale/ca.js\",\n\t\"./ca.js\": \"./node_modules/moment/locale/ca.js\",\n\t\"./cs\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cs.js\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cv\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cv.js\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cy\": \"./node_modules/moment/locale/cy.js\",\n\t\"./cy.js\": \"./node_modules/moment/locale/cy.js\",\n\t\"./da\": \"./node_modules/moment/locale/da.js\",\n\t\"./da.js\": \"./node_modules/moment/locale/da.js\",\n\t\"./de\": \"./node_modules/moment/locale/de.js\",\n\t\"./de-at\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-at.js\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-ch\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de-ch.js\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de.js\": \"./node_modules/moment/locale/de.js\",\n\t\"./dv\": \"./node_modules/moment/locale/dv.js\",\n\t\"./dv.js\": \"./node_modules/moment/locale/dv.js\",\n\t\"./el\": \"./node_modules/moment/locale/el.js\",\n\t\"./el.js\": \"./node_modules/moment/locale/el.js\",\n\t\"./en-au\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-au.js\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-ca\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-ca.js\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-gb\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-gb.js\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-ie\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-ie.js\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-il\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-il.js\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-in\": \"./node_modules/moment/locale/en-in.js\",\n\t\"./en-in.js\": \"./node_modules/moment/locale/en-in.js\",\n\t\"./en-nz\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-nz.js\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-sg\": \"./node_modules/moment/locale/en-sg.js\",\n\t\"./en-sg.js\": \"./node_modules/moment/locale/en-sg.js\",\n\t\"./eo\": \"./node_modules/moment/locale/eo.js\",\n\t\"./eo.js\": \"./node_modules/moment/locale/eo.js\",\n\t\"./es\": \"./node_modules/moment/locale/es.js\",\n\t\"./es-do\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-do.js\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-mx\": \"./node_modules/moment/locale/es-mx.js\",\n\t\"./es-mx.js\": \"./node_modules/moment/locale/es-mx.js\",\n\t\"./es-us\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es-us.js\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es.js\": \"./node_modules/moment/locale/es.js\",\n\t\"./et\": \"./node_modules/moment/locale/et.js\",\n\t\"./et.js\": \"./node_modules/moment/locale/et.js\",\n\t\"./eu\": \"./node_modules/moment/locale/eu.js\",\n\t\"./eu.js\": \"./node_modules/moment/locale/eu.js\",\n\t\"./fa\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fa.js\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fi\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fi.js\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fil\": \"./node_modules/moment/locale/fil.js\",\n\t\"./fil.js\": \"./node_modules/moment/locale/fil.js\",\n\t\"./fo\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fo.js\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fr\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fr-ca\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ca.js\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ch\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr-ch.js\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr.js\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fy\": \"./node_modules/moment/locale/fy.js\",\n\t\"./fy.js\": \"./node_modules/moment/locale/fy.js\",\n\t\"./ga\": \"./node_modules/moment/locale/ga.js\",\n\t\"./ga.js\": \"./node_modules/moment/locale/ga.js\",\n\t\"./gd\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gd.js\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gl\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gl.js\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gom-deva\": \"./node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-deva.js\": \"./node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-latn\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gom-latn.js\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gu\": \"./node_modules/moment/locale/gu.js\",\n\t\"./gu.js\": \"./node_modules/moment/locale/gu.js\",\n\t\"./he\": \"./node_modules/moment/locale/he.js\",\n\t\"./he.js\": \"./node_modules/moment/locale/he.js\",\n\t\"./hi\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hi.js\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hr\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hr.js\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hu\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hu.js\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hy-am\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./hy-am.js\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./id\": \"./node_modules/moment/locale/id.js\",\n\t\"./id.js\": \"./node_modules/moment/locale/id.js\",\n\t\"./is\": \"./node_modules/moment/locale/is.js\",\n\t\"./is.js\": \"./node_modules/moment/locale/is.js\",\n\t\"./it\": \"./node_modules/moment/locale/it.js\",\n\t\"./it-ch\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it-ch.js\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it.js\": \"./node_modules/moment/locale/it.js\",\n\t\"./ja\": \"./node_modules/moment/locale/ja.js\",\n\t\"./ja.js\": \"./node_modules/moment/locale/ja.js\",\n\t\"./jv\": \"./node_modules/moment/locale/jv.js\",\n\t\"./jv.js\": \"./node_modules/moment/locale/jv.js\",\n\t\"./ka\": \"./node_modules/moment/locale/ka.js\",\n\t\"./ka.js\": \"./node_modules/moment/locale/ka.js\",\n\t\"./kk\": \"./node_modules/moment/locale/kk.js\",\n\t\"./kk.js\": \"./node_modules/moment/locale/kk.js\",\n\t\"./km\": \"./node_modules/moment/locale/km.js\",\n\t\"./km.js\": \"./node_modules/moment/locale/km.js\",\n\t\"./kn\": \"./node_modules/moment/locale/kn.js\",\n\t\"./kn.js\": \"./node_modules/moment/locale/kn.js\",\n\t\"./ko\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ko.js\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ku\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ku.js\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ky\": \"./node_modules/moment/locale/ky.js\",\n\t\"./ky.js\": \"./node_modules/moment/locale/ky.js\",\n\t\"./lb\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lb.js\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lo\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lo.js\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lt\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lt.js\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lv\": \"./node_modules/moment/locale/lv.js\",\n\t\"./lv.js\": \"./node_modules/moment/locale/lv.js\",\n\t\"./me\": \"./node_modules/moment/locale/me.js\",\n\t\"./me.js\": \"./node_modules/moment/locale/me.js\",\n\t\"./mi\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mi.js\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mk\": \"./node_modules/moment/locale/mk.js\",\n\t\"./mk.js\": \"./node_modules/moment/locale/mk.js\",\n\t\"./ml\": \"./node_modules/moment/locale/ml.js\",\n\t\"./ml.js\": \"./node_modules/moment/locale/ml.js\",\n\t\"./mn\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mn.js\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mr\": \"./node_modules/moment/locale/mr.js\",\n\t\"./mr.js\": \"./node_modules/moment/locale/mr.js\",\n\t\"./ms\": \"./node_modules/moment/locale/ms.js\",\n\t\"./ms-my\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms-my.js\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms.js\": \"./node_modules/moment/locale/ms.js\",\n\t\"./mt\": \"./node_modules/moment/locale/mt.js\",\n\t\"./mt.js\": \"./node_modules/moment/locale/mt.js\",\n\t\"./my\": \"./node_modules/moment/locale/my.js\",\n\t\"./my.js\": \"./node_modules/moment/locale/my.js\",\n\t\"./nb\": \"./node_modules/moment/locale/nb.js\",\n\t\"./nb.js\": \"./node_modules/moment/locale/nb.js\",\n\t\"./ne\": \"./node_modules/moment/locale/ne.js\",\n\t\"./ne.js\": \"./node_modules/moment/locale/ne.js\",\n\t\"./nl\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nl-be\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl-be.js\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl.js\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nn\": \"./node_modules/moment/locale/nn.js\",\n\t\"./nn.js\": \"./node_modules/moment/locale/nn.js\",\n\t\"./oc-lnc\": \"./node_modules/moment/locale/oc-lnc.js\",\n\t\"./oc-lnc.js\": \"./node_modules/moment/locale/oc-lnc.js\",\n\t\"./pa-in\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pa-in.js\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pl\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pl.js\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pt\": \"./node_modules/moment/locale/pt.js\",\n\t\"./pt-br\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt-br.js\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt.js\": \"./node_modules/moment/locale/pt.js\",\n\t\"./ro\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ro.js\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ru\": \"./node_modules/moment/locale/ru.js\",\n\t\"./ru.js\": \"./node_modules/moment/locale/ru.js\",\n\t\"./sd\": \"./node_modules/moment/locale/sd.js\",\n\t\"./sd.js\": \"./node_modules/moment/locale/sd.js\",\n\t\"./se\": \"./node_modules/moment/locale/se.js\",\n\t\"./se.js\": \"./node_modules/moment/locale/se.js\",\n\t\"./si\": \"./node_modules/moment/locale/si.js\",\n\t\"./si.js\": \"./node_modules/moment/locale/si.js\",\n\t\"./sk\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sk.js\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sl\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sl.js\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sq\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sq.js\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sr\": \"./node_modules/moment/locale/sr.js\",\n\t\"./sr-cyrl\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr-cyrl.js\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr.js\": \"./node_modules/moment/locale/sr.js\",\n\t\"./ss\": \"./node_modules/moment/locale/ss.js\",\n\t\"./ss.js\": \"./node_modules/moment/locale/ss.js\",\n\t\"./sv\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sv.js\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sw\": \"./node_modules/moment/locale/sw.js\",\n\t\"./sw.js\": \"./node_modules/moment/locale/sw.js\",\n\t\"./ta\": \"./node_modules/moment/locale/ta.js\",\n\t\"./ta.js\": \"./node_modules/moment/locale/ta.js\",\n\t\"./te\": \"./node_modules/moment/locale/te.js\",\n\t\"./te.js\": \"./node_modules/moment/locale/te.js\",\n\t\"./tet\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tet.js\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tg\": \"./node_modules/moment/locale/tg.js\",\n\t\"./tg.js\": \"./node_modules/moment/locale/tg.js\",\n\t\"./th\": \"./node_modules/moment/locale/th.js\",\n\t\"./th.js\": \"./node_modules/moment/locale/th.js\",\n\t\"./tk\": \"./node_modules/moment/locale/tk.js\",\n\t\"./tk.js\": \"./node_modules/moment/locale/tk.js\",\n\t\"./tl-ph\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tl-ph.js\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tlh\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tlh.js\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tr\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tr.js\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tzl\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzl.js\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzm\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./tzm-latn\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm-latn.js\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm.js\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./ug-cn\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./ug-cn.js\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./uk\": \"./node_modules/moment/locale/uk.js\",\n\t\"./uk.js\": \"./node_modules/moment/locale/uk.js\",\n\t\"./ur\": \"./node_modules/moment/locale/ur.js\",\n\t\"./ur.js\": \"./node_modules/moment/locale/ur.js\",\n\t\"./uz\": \"./node_modules/moment/locale/uz.js\",\n\t\"./uz-latn\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz-latn.js\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz.js\": \"./node_modules/moment/locale/uz.js\",\n\t\"./vi\": \"./node_modules/moment/locale/vi.js\",\n\t\"./vi.js\": \"./node_modules/moment/locale/vi.js\",\n\t\"./x-pseudo\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./x-pseudo.js\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./yo\": \"./node_modules/moment/locale/yo.js\",\n\t\"./yo.js\": \"./node_modules/moment/locale/yo.js\",\n\t\"./zh-cn\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-cn.js\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-hk\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-hk.js\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-mo\": \"./node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-mo.js\": \"./node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-tw\": \"./node_modules/moment/locale/zh-tw.js\",\n\t\"./zh-tw.js\": \"./node_modules/moment/locale/zh-tw.js\"\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 = \"./node_modules/moment/locale sync recursive ^\\\\.\\\\/.*$\";","export default \"\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\\"CUBE-logo\\\"\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\"","export default \"
\\r\\n \\r\\n
\\r\\n \\r\\n \\\"CUBE-Work-logo\\\" \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
Change Password
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Password\\r\\n \\r\\n
\\r\\n
\\r\\n Password Confirm\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"ModuleDashboard.title\\\" | translate}}
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\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.DISPLAY_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\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\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 Components
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n System Type\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Component Type\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n Marked as Library\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

{{info.info.systemname}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n System Type\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Component Type\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n {{\\r\\n \\\"ModalEstimate.labelEstID\\\" | translate\\r\\n }}\\r\\n \\r\\n
\\r\\n (Est. {{ item.ID }}) {{ item.PROJECT_NAME }}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n Marked as Library\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
0\\\">\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n \\r\\n {{info.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
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Import system: {{title}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n System Type\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n Component Type\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n {{\\r\\n \\\"ModalEstimate.labelEstID\\\" | translate\\r\\n }}\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n (Est. {{ item.ID }}) {{ item.PROJECT_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 Marked as Library\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
0\\\">\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n \\r\\n {{info.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\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n (Est. {{item.ID}}) {{item.PROJECT_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

Do you want to remove current system components?

\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\"","export default \"\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n {{'ModalEditController.title' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n {{'ModalEditController.labelBACADD' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalEditController.labelNet1' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalEditController.labelNet2' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalEditController.labelMacADD' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalEditController.labelNet1To' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalEditController.labelNetTo' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalEditController.labelCUBEBOX' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n System Parent 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\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\"","export default \" \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
{{'ModalActivity.labelActivityName' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
{{'ModalActivity.labelEmployeeName' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
{{'ModuleSalesLeads.labelDuration' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
Activity Date
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
Sort
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
{{'ModalActivity.labelActivityType' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
{{'ModuleSalesLeads.labelExtLink' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModuleSalesLeads.labelFollowUp' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
{{'ModuleSalesLeads.labelfolloUpReq' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
{{'ModuleSalesLeads.labelActClosed' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{'ModuleSalesLeads.labelDescription' | translate}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleSalesLeads.labelFollowUpComm' | translate}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Description
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Description
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Welcome!
\\r\\n

You can now access CUBE Edge.

\\r\\n Go to Login\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewPart.title' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewPart.labelNum' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewPart.labelType' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewPart.labelStanCost' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
Manufactured
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"description\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n

{{'ModalNewPart.errorDescrip' | translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewPart.labelTaxable' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"description\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n

{{'ModalNewPart.errorDescrip' | translate}}

\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
{{'ModalNewPart.labelProduct' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewPart.labelSalesprice' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewPart.labelProductDetails' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\"","export default \"\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n {{'ModuleVendorPartList.filter' | translate}}:\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n {{type.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 {{'ModuleVendorPartList.filter' | translate}}:\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\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

List: ${{product.ListPrice}}

\\r\\n
\\r\\n
\\r\\n

${{product.Price}}

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n {{product.Description}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModuleVendorPartList.filter' | translate}}:\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\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

List: ${{product.ListPrice}}

\\r\\n
\\r\\n
\\r\\n

${{product.Price}}

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{product.Description}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n {{category.Name}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

First, let's find your account

\\r\\n
{{'ModulRecoPasswd.msg' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Recall password?\\r\\n
\\r\\n\\r\\n
\\r\\n Already on Cube Work? Click Here\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n

{{'ModalCheckEmail.title' | translate}}

\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

{{'ModalCheckEmail.msg' | translate}}

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

{{'ModulRecoPasswd.title' | translate}}

\\r\\n
{{'ModulRecoPasswd.msg' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n

{{'ModalCheckEmail.title' | translate}}

\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n

{{'ModalCheckEmail.msg' | translate}}

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n

{{'ModuleRegistCompany.title' | translate}}

\\r\\n
{{'ModuleRegistCompany.msgSelectplan' | translate}}
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ 'ModuleRegistCompany.labelCompInfo' | translate }}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n {{ 'ModuleRegistCompany.labelterms' | translate }}\\r\\n \\r\\n {{ 'ModuleRegistCompany.linkterms' | translate }}\\r\\n \\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n Company already registered\\r\\n

\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
CUBE Terms and Conditions
\\r\\n
\\r\\n
\\r\\n
LEGAL NOTICE END USER LICENSE AGREEMENT
\\r\\n

\\r\\n This End User License Agreement (the “Agreement”) is entered by and between CUBE USA, LLC. (“CUBE”) and you or your company (“User”). The Agreement sets out the terms and conditions under which CUBE makes its software, services and products available (the “Software”). For purposes of these Agreements, the term “User” means any person or entity using Software for any purpose whatsoever in any manner whatsoever. By accessing the Software, the User agrees to all the terms and conditions set forth in the Agreement. If the User is acting on behalf of a corporate entity or institution, acceptance of the Agreement by the User constitutes acceptance by the corporate entity or institution and the User warrants that he or she has the corporate authority to enter into the Agreement on behalf of the corporate entity or institution, and its employees and affiliates. User hereby acknowledges and agrees that CUBE reserves the right to change the terms and conditions of the Agreement, the products, services, prices and programs at any time, at its sole discretion and without notice. CUBE reserves the right to seek all remedies available to it, by law and in equity, for any violation of the terms and conditions contained herein. All rights not expressly granted herein are herein reserved.\\r\\n

\\r\\n
1. Copyright Notice
\\r\\n

\\r\\n All information and materials appearing on the Software system, including without limitation any and all text, layout, functionality, toolsets, design features, and menus are protected by U.S. and International copyright laws. Ownership of said information and materials (“the CUBE Copyrighted Information”) lies exclusively with CUBE and its business affiliates, and except as specifically permitted, no portion of this system or the CUBE Copyrighted Information may be distributed or reproduced by any means, or in any form, without CUBE’s prior written permission.\\r\\n

\\r\\n User acknowledges that, aside from CUBE’s copyrighted material, the data, content and/or information contained in the Software may be subject to copyright protection by third parties (the “Third Party Copyrighted Information”). User shall be directly liable to the holder of the Third Party Copyright, and if User(s) are in violation of any applicable U.S. or international copyright law, User shall defend, cover, hold harmless and indemnify CUBE, its officers, directors, employees, agents and subcontractors from and against any claim, demand, expense, loss, or cause of action of or to third parties, including reasonable attorney’s fees and costs, arising out of or relating to such conduct. User shall also defend, cover, hold harmless and indemnify CUBE from and against any claim, demand, expense, loss or action of or to third parties, including reasonable attorney’s fees and costs, in the event that User fails to honor any other intellectual property rights owned by third parties.\\r\\n

\\r\\n
2.License to Use
\\r\\n

Subject to compliance with all of the terms and conditions of this Agreement, CUBE grants to User a single, renewable, non-exclusive, non-transferrable revocable license to access, view, and use the Software system, including but not limited to access to the various data, files and information of a User’s account, or other Software functions a certain User is authorized to 2\\r\\n access, subject to the following terms and conditions:\\r\\n\\r\\n

\\r\\n
    \\r\\n
      \\r\\n
    1. Access codes, including user names and passwords, are for the benefit of the original recipient of the access codes, shall be kept strictly confidential, and shall not be disclosed to anyone without the express prior written consent of CUBE, except as expressly provided herein.
    2. \\r\\n
    3. CUBE shall not be liable for the quality, soundness, accuracy or viability of any information appearing on the Software. User is solely responsible for all acts or omissions in connection information residing on the User’s account.
    4. \\r\\n
    5. CUBE reserves the exclusive right to terminate, suspend or otherwise revoke the User’s license in the event of non-payment, incomplete or partial payment or other violation of the Pricing terms set forth in Section 5, below. CUBE’s exercise of a right to terminate, suspend or otherwise revoke the User’s license is wholly within CUBE’s discretion.
    6. \\r\\n
    \\r\\n
\\r\\n
3. Warranties and Disclaimers; Liability Limitations
\\r\\n

EXCEPT AS EXPRESSLY PROVIDED OTHERWISE IN AN AGREEMENT BETWEEN USER AND CUBE, ALL INFORMATION, OPERABILITY AND USABILITY ON THE SOFTWARE ARE PROVIDED \\\"AS IS\\\" WITHOUT WARRANTY OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OR CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.\\r\\n

\\r\\n\\r\\n CUBE WILL USE ITS COMMERCIALLY REASONABLE EFFORTS TO PROTECT THE PRIVACY AND INTEGRITY OF THE INFORMATION, AND TO PROTECT AGAINST THEFT, UNAUTHORIZED REPRODUCTION OR LOSS OF ANY INFORMATION; HOWEVER, USERS ACKNOWLEDGE AND AGREE THAT CUBE CANNOT GIVE ANY WARRANTIES IN THIS RESPECT.\\r\\n

\\r\\n CUBE ASSUMES NO RESPONSIBILITY (1) FOR ERRORS OR OMISSIONS IN THE INFORMATION OR COMPUTER CODE OR (2) FOR INTERRUPTIONS IN SERVICE.\\r\\n

\\r\\n IN NO EVENT SHALL CUBE, ITS OFFICERS, DIRECTORS, MEMBERS, EMPLOYEES OR AGENTS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, THOSE RESULTING FROM: (1) RELIANCE ON THE OPERATIONAL AVAILABILITY OF THE SOFTWARE, (2) COSTS OF REPLACEMENT GOODS, (3) THEFT OF DATA OR LOSS OF USE, DATA, OR PROFITS, (4) DELAYS OR BUSINESS INTERRUPTIONS, AND (5) ANY THEORY OF LIABILITY, ARISING OUT OF, RELATING TO OR IN CONNECTION WITH THE USE OF ACCOUNTS AND DATA OR INFORMATION OR THE PERFORMANCE OF THE SOFTWARE, WHETHER OR NOT CUBE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.\\r\\n\\r\\n SOME JURISDICTIONS DO NOT ALLOW SOME OF THE EXCLUSIONS,\\r\\n\\r\\n LIMITATIONS AND DISCLAIMERS AS SET FORTH ABOVE. HOWEVER, IN SUCH EVENT, SUCH EXCLUSIONS, LIMITATIONS AND DISCLAIMERS SHALL BE VALID AND ENFORCEABLE TO THE FULLEST EXTENT ALLOWED BY LAW.\\r\\n\\r\\n CUBE’S TOTAL CUMULATIVE LIABILITY TO THE USER, FOR ANY REASON, SHALL BE LIMITED SOLELY TO THE LICENSE AMOUNT PERTAINING TO THE PARTICULAR USER IN QUESTION.\\r\\n\\r\\n

\\r\\n\\r\\n
4. Availability
\\r\\n

\\r\\n CUBE will make commercially reasonable efforts to make sure that the Software system is operational and running 24 hours a day, 7 days a week. However, User acknowledges that availability may sometimes be interrupted by: weather events (acts of God), hardware and software problems (whether internal to CUBE or third party providers), and software and hardware upgrades, installations and maintenance, as well as many other unforeseen possibilities. CUBE will make commercially reasonable efforts to keep the Software system up and running and in the event that the Software system is not operational in whole or in part, CUBE will make commercially reasonable efforts to restore full operation of the system promptly. USER, HOWEVER, ACKNOWLEDGES THAT IN NO EVENT SHALL CUBE BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, RESULTING FROM THE LAURIS ONLINE WEBSITE BEING UNACCESSIBLE FOR ANY AMOUNT OF TIME FOR ANY REASON.\\r\\n\\r\\n

\\r\\n\\r\\n
5. Pricing
\\r\\n

\\r\\n User agrees that the single (i.e., per seat) renewable license specified in Section 2, above, and under which User is operating the Software system, has a duration coterminous with the User’s subscription period.\\r\\n

\\r\\n\\r\\n User agrees that use of the Software system and the grant of the license specified in Section 2, above, is subject to the payment of any applicable licensing fees and costs. CUBE reserves the right to immediately and without notice cancel this Agreement, as well as restrict or terminate access to the Software system in the event registration fee payments remain outstanding. Similarly, in the event the license described in Section 2, above, is not renewed, CUBE reserves the right to terminate this Agreement, as well as restrict or terminate access to the Software system as of the date of the license’s expiration. In the event access to the Software system is restricted for non-payment or non-renewal, User agrees to hold harmless and release CUBE from and against any and all claims, damages, costs, fees, expenses, loss of business or business interruption suffered by User as a result of the restriction of access.\\r\\n

\\r\\n Pricing is subject to change without notice; and CUBE reserves the right to adjust or modify any pricing, at anytime after the pricing change is made. The full invoice amount is due prior to a user’s first use of the system, unless otherwise expressly indicated in a separate signed writing by CUBE. If User defaults in any payment when due, then the whole invoice amount shall immediately become due and payable upon demand, or CUBE, at its option without prejudice to other lawful remedies, may defer delivery or cancel this contract. Should User decide to terminate this Agreement prior to the expiration of the Agreement’s term, CUBE may, but is not\\r\\n

\\r\\n obligated to, return a part of the invoiced amount. User shall reimburse CUBE, upon demand, for any costs of collection incurred by CUBE, including reasonable attorneys’ fees.\\r\\n\\r\\n

\\r\\n\\r\\n
6. Monitoring
\\r\\n

\\r\\n Users acknowledges that CUBE may review or monitor utilization of the Software system and that such review or monitoring is to be carried out at CUBE’s sole discretion. User further acknowledges that the Software may, at its sole discretion, suspend, terminate or otherwise restrict User’s access to the Software system if, at CUBE’s sole discretion, it is determined that inappropriate account activity is or has taken place. IF USER RESTRICTIONS ARE PUT IN PLACE BY CUBE RELATED TO INAPPROPRIATE ACCOUNT ACTIVITY, USER AGREES CUBE WILL HAVE NO LIABILITY RELATED TO THE SYSTEM’S UNAVAILIABILITY.\\r\\n

\\r\\n
7. Restrictions on Use
\\r\\n\\r\\n

\\r\\n In connection with access or use of the Software system, User agrees not to:\\r\\n

\\r\\n
    \\r\\n
  1. modify, port, adapt, translate, reverse engineer, decompile, disassemble the Software system or any of the source codes of the Software system, or attempt to discover any of such source codes;
  2. \\r\\n
  3. introduce a virus, worm, Trojan horse or other harmful software code or similar files that may damage the operation of an CUBE computer, property or information;
  4. \\r\\n
  5. use the Software system in any manner that could damage, disable, overburden, or impair any CUBE server, or the network(s) connected to any server or interfere with any other party’s use and enjoyment of the Software system;
  6. \\r\\n
  7. attempt to gain unauthorized access to service, materials, other accounts, computer systems or networks connected to any CUBE server or to the Software system, through hacking, password mining, or any other means;
  8. \\r\\n
  9. obtain or attempt to obtain any materials or information through any means not intentionally made available through the Software system;
  10. \\r\\n
  11. host, on a subscription basis or otherwise, the Software system, including any related application;
  12. \\r\\n
  13. engage in any systematic extraction of data or data fields;
  14. \\r\\n
  15. sell, lease, or rent access to or use of the Software system, or otherwise transfer any rights to use the Software system;
  16. \\r\\n
  17. upload, or otherwise make available on the Software system, files or data that are protected by intellectual property laws, including, for example, and not as limitation, copyright or trademark laws, unless User owns or controls the rights thereto or have received all necessary consent to do the same.
  18. \\r\\n
\\r\\n
8. Data Privacy
\\r\\n

\\r\\n You agree that CUBE may process technical and related information about User which may include internet protocol address, hardware identification, operating system, peripheral hardware, and non-personally identifiable usage statistics to facilitate the provisioning of updates, support, invoicing or online services. To the extent that this information constitutes\\r\\n\\r\\n personal data, CUBE shall be the controller of such personal data.\\r\\n\\r\\n

9. Confidential Information and Protection Thereof
\\r\\n

\\r\\n The following information shall be considered Confidential Information, whether or not marked or identified as such: (a) information regarding CUBE pricing, product roadmaps or strategic marketing plans; and (b) non-public materials relating to the User or the Software.\\r\\n\\r\\n CUBE may use Confidential Information (a) to exercise its rights and perform its obligations under this EULA; or (b) in connection with the parties’ ongoing business relationship. CUBE will not use any Confidential Information of Discloser for any purpose not expressly permitted by this EULA, and will disclose the Confidential Information of Discloser only to the employees or contractors of CUBE who have a need to know such Confidential Information for purposes of this EULA and who are under a duty of confidentiality no less restrictive than CUBE duty hereunder. Recipient will protect Confidential Information from unauthorized use, access, or disclosure in the same manner as CUBE protects its own confidential or proprietary information of a similar nature but with no less than reasonable care.\\r\\n\\r\\n CUBE’s obligations under Section 9 with respect to any Confidential Information will terminate if CUBE can show by written records that such information: (a) was already known to CUBE at the time of disclosure by User; (b) was disclosed to CUBE by a third party who had the right to make such disclosure without any confidentiality restrictions; (c) is, or through no fault of CUBE has become, generally available to the public; or (d) was independently developed by CUBE without access to, or use of, User’s Information. In addition, Recipient will be allowed to disclose Confidential Information to the extent that such disclosure is required by law or by the order of a court of similar judicial or administrative body, provided that CUBE notifies User of such required disclosure promptly and in writing and cooperates with User, at User’s request and expense, in any lawful action to contest or limit the scope of such required disclosure.\\r\\n

\\r\\n\\r\\n
10. Governing Law, Venue and Jurisdiction
\\r\\n

\\r\\n\\r\\n In the event of any dispute, claim, question, or disagreement arising from or relating to this agreement or the breach thereof, the parties hereto shall use their best efforts to settle the dispute, claim, question, or disagreement. To this effect, they shall consult and negotiate with each other in good faith and, recognizing their mutual interests, attempt to reach a just and equitable solution satisfactory to both parties. If they do not reach such solution within a period of 60 days, then, upon notice by either party to the other, all disputes, claims, questions, or differences shall be finally settled by arbitration administered by the American Arbitration Association in accordance with the provisions of its Commercial Arbitration Rules. The place of arbitration shall be Miami, Florida.\\r\\n

\\r\\n\\r\\n Consistent with the expedited nature of arbitration, each party will, upon the written request of the other party, promptly provide the other with copies of documents relevant to the issues raised by any claim or counterclaim on which the producing party may rely in support of or in opposition to any claim or defense. Any dispute regarding discovery, or the relevance or scope thereof, shall be determined by the arbitrator, which determination shall be conclusive. All discovery shall be completed within 45 days following the appointment of the arbitrator.\\r\\n

\\r\\n\\r\\n The arbitrator shall award to the prevailing party, if any, as determined by the arbitrator, all of its costs and fees. “Costs and fees” mean all reasonable pre-award expenses of the arbitration, including the arbitrators’ fees, administrative fees, travel expenses, out-of-pocket expenses such as copying and telephone, court costs, witness fees, and attorneys’ fees. The arbitrator has no authority to award punitive or other damages not measured by the prevailing party’s actual damages, except as may be required by statute. Any award issued by the arbitrator shall include findings of fact and conclusions of law.\\r\\n

\\r\\n This agreement shall be governed by and interpreted in accordance with the laws of the State of Florida. The parties acknowledge that this agreement evidences a transaction involving interstate commerce. The United States Arbitration Act shall govern the interpretation, enforcement, and proceedings pursuant to the arbitration clause in this agreement.\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
CUBE USA
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Thank You for Registering!

\\r\\n

We’ve just sent an email to the address you provided. 📧

\\r\\n \\r\\n

\\r\\n Inside the email, you’ll find a unique code to verify your account.\\r\\n

\\r\\n \\r\\n

👉 Next Steps:

\\r\\n
    \\r\\n
  • Check your inbox (and spam/junk folder, just in case).
  • \\r\\n
  • Open the email from us with the subject line: \\\"Your Verification Code from Cube\\\".
  • \\r\\n
  • Click the link in the email and enter the code to complete your registration.
  • \\r\\n
  • If you don’t see the email in a few minutes, please resend the code or contact our support team.
  • \\r\\n
\\r\\n \\r\\n

\\r\\n Welcome to Cube—your smarter way to manage! 🎉\\r\\n

\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{'ModuleLogin.title' | translate}}

\\r\\n
\\r\\n
{{'ModuleLogin.labelWelcome' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleLogin.msgvalidReqUser' | translate}}\\r\\n \\r\\n {{'ModuleLogin.msgvalidEmail' | translate}}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleLogin.msgvalidReqPasswd' | translate}}\\r\\n \\r\\n {{'ModuleLogin.msginvalidPasswd' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{ msgError }}\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{'ModuleLogin.title' | translate}}

\\r\\n
\\r\\n
{{'ModuleLogin.labelWelcome' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleLogin.msgvalidReqUser' | translate}}\\r\\n \\r\\n {{'ModuleLogin.msgvalidEmail' | translate}}\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleLogin.msgvalidReqPasswd' | translate}}\\r\\n \\r\\n {{'ModuleLogin.msginvalidPasswd' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Company Register\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ msgError }}\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{'ModuleLogin.title' | translate}}

\\r\\n
\\r\\n
{{'ModuleLogin.labelWelcome' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleLogin.msgvalidReqUser' | translate}}\\r\\n \\r\\n {{'ModuleLogin.msgvalidEmail' | translate}}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleLogin.msgvalidReqPasswd' | translate}}\\r\\n \\r\\n {{'ModuleLogin.msginvalidPasswd' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Company Register\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{ msgError }}\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalWorFoSumm.title'| translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalAlarMWFS.title' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
{{'ModuleProjListPhase.labelSegment'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n {{list.NAME}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
{{'ModuleProjListPhase.labelID'| translate}} {{task.ID}}
\\r\\n
{{task.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
{{segmentSelected == 1 ? ' Status': ' Phase'}} List
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{'ModalNProgressReport.labelProject'| translate}}\\r\\n \\r\\n
\\r\\n {{item.value}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{actionDocument}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalDocument.labelName' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalDocument.labelType' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalDocument.labelRev' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalDocument.labelNotes' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalDocument.labelDescription' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Restricted
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModalDocument.msgValidFile' | translate}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
0\\\">\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalDocument.msgTabExternalF' | translate}}\\r\\n
\\r\\n {{'ModalDocument.msgExExternalF' | translate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n {{'ModalDocument.labelImporTo' | translate}}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{'ModalPushListI.title' | translate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalPushListI.labelProject' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{item.value}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalPushListI.labelItemName' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalPushListI.labelOpenDate' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalPushListI.labelResponsible' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalPushListI.labelReviewed' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalPushListI.labelReviewedDate' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalPushListI.labelClosed' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalPushListI.labelClosedDate' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalPushListI.labelDescription' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"ModalNRFI.labelRFIName\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"ModalNRFI.labelProject\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n {{item.value}}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNRFI.labelRFIDate' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNRFI.labelCreatedBy' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNRFI.labelPriority' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNRFI.labelRFISentTO' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n {{item.First}} \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNRFI.labelRespondedBy' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNRFI.labelResponded' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalNRFI.labelRFIDescrip' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalNRFI.labelRFIResponse' | translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Customer WorkFlow Flags
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\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
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelCustNum' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelCustName' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelCustTye' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelPhone1' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelPhone2' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelFax' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelWebSite' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelEmail' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelSalesRegion' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelSalesPerson' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelOtheSalesPerson' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelDefaultTax' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelhasCred' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelActive' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelCreatedOn' | translate}}
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
External Sales Person
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModuleCustomerEdit.labelAdd' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelSearchAdd' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelSearchAdd2' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelCity' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelZip' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelState' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelCountry' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{'ModuleCustomerEdit.labelBilliAdd' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelSearcAdd' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelSearcAdd2' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelCity' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelZip' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelState' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleCustomerEdit.labelCountry' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModuleCustomerEdit.labelNotes' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleSalesLeads.toolCreateTemplate' | translate}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n {{data.value}} \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Follow Up Comments: {{notes.data.FOLLOWUPCOMMENTSsinHTML}}\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\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.First}}\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n\\r\\n
\\r\\n {{data.value | 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
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n {{data.value | 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
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n\\r\\n
\\r\\n {{data.value | 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
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalAssociatePe.labelContact' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n {{item.First}}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalAssociatePe.labelDescription' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
{{'ModalAssociatePe.labelInfluence' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalAssociatePe.labelType' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesLeads.titleModalUpdateActivity' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n

Are you sure you want to delete this item?

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalImportTempla.title' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewTemplate.title' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n {{data.data.EMPLOYEENAME}}\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n {{data.data.TYPENAME}}\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
{{\\\"customerName\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"custType\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{\\\"phone1\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"phone2\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"fax\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"salesPerson\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
Address
\\r\\n
\\r\\n
{{\\\"ModuleSalesProject.labelSearchAdd\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"ModuleSalesProject.labelAdd\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"city\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"zipCode\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"state\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{\\\"country\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"ModuleCustomer.labelSalesRegion\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"ModuleCustomerEdit.labelDefaultTax\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{\\\"ModuleSalesProject.labelNotes\\\" | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"actName\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
{{\\\"customer\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
{{\\\"serviceSite\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{\\\"project\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{\\\"employeeName\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{\\\"actType\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{\\\"date\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{\\\"startTime\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"duration\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n {{\\\"description\\\" | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{\\\"followUpComments\\\" | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n {{popupServiceSite}}\\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalSeviceSites.title'| translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"siteName\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"Address\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{\\\"address2\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"city\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"state\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"zipCode\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"country\\\" | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{\\\"siteOwner\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{item.DESCRIPTION}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"vMarket\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{\\\"FlagSite\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{\\\"comments\\\" | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.titleModal' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelCompetitor' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelAddress1' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelAddress2' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelCity' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelState' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelZipCode' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelPhone' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalNewItemMarketAnalysis.labelStrengths' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{'ModalNewItemMarketAnalysis.labelNotes' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelPrincipal1' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelPrincipal2' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelPrincipal3' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelCompanySize' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelAnnualRevenue' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelTechRate' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewItemMarketAnalysis.labelInstallerRate' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalNewItemMarketAnalysis.labelWeaknesses' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{'ModalNewItemMarketAnalysis.labelHistory' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewSalesLeads.title' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{\\\"ModuleSalesLeads.labelLeadName\\\" | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{\\\"salesPerson\\\" | translate}}
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{\\\"datBIDDATE\\\" | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModuleSalesProject.labelReqBidDate' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelBidDate' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelQuoteID' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelQuoteName' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelQuoteNum' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelSiteName' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n Go to edit site\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelCategory' | translate}}
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelStatus' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelCloseDate' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
{{'ModuleSalesProject.labelQAmount' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n Refresh Price\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
{{'ModuleSalesProject.labelSalesMargin' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelConsFirm' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModuleSalesProject.labelSalesPerson' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelCustReqPrice' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n Go to edit customer\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelCustAwJob' | translate}}
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelReqBy' | translate}}
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n {{item.ContaNameID}}\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelVerticalMarket' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelAwardedTo' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
{{'ModuleSalesProject.labelProducSpecified' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelPrevWages' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelNotBidReason' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleSalesProject.labelProjectAdd' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
0\\\" class=\\\"dx-field\\\">\\r\\n
{{'ModuleSalesProject.labelGotoPipeline' | translate}}
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModuleSalesProject.labelSalesNotes' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{'ModuleSalesProject.labelSalesComm' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n{{popupNewContact}}\\r\\n
\\r\\n {{popupNewContact}}\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n {{popupServiceSite}}\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Campaign Name\\r\\n \\r\\n
\\r\\n
\\r\\n Open Date\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Cost\\r\\n \\r\\n
\\r\\n
\\r\\n Close Date\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Expected Return\\r\\n \\r\\n
\\r\\n
\\r\\n Zip Code2\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{\\\"description\\\" | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Sort\\r\\n \\r\\n
\\r\\n
\\r\\n Region Name\\r\\n \\r\\n
\\r\\n
\\r\\n Region Population\\r\\n \\r\\n
\\r\\n
\\r\\n Business\\r\\n \\r\\n
\\r\\n
\\r\\n Area Size\\r\\n \\r\\n
\\r\\n
\\r\\n Average Income\\r\\n \\r\\n
\\r\\n
\\r\\n Description\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Competitor \\r\\n \\r\\n
\\r\\n
\\r\\n Address 1 \\r\\n \\r\\n
\\r\\n
\\r\\n Address 2 \\r\\n \\r\\n
\\r\\n
\\r\\n City \\r\\n \\r\\n
\\r\\n
\\r\\n State \\r\\n \\r\\n
\\r\\n
\\r\\n Zip Code\\r\\n \\r\\n
\\r\\n
\\r\\n Phone \\r\\n \\r\\n
\\r\\n
\\r\\n Strengths\\r\\n \\r\\n
\\r\\n
\\r\\n Notes\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Principal 1\\r\\n \\r\\n
\\r\\n
\\r\\n Principal 2\\r\\n \\r\\n
\\r\\n
\\r\\n Principal 3\\r\\n \\r\\n
\\r\\n
\\r\\n Company Size\\r\\n \\r\\n
\\r\\n
\\r\\n Annual Revenue\\r\\n \\r\\n
\\r\\n
\\r\\n Tech Rate\\r\\n \\r\\n
\\r\\n
\\r\\n Installer Rate \\r\\n \\r\\n
\\r\\n
\\r\\n Weaknesses\\r\\n \\r\\n
\\r\\n
\\r\\n History\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

Sync Price With:

\\r\\n \\r\\n \\r\\n\\r\\n
Estimate
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewRound.titleModal' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalNewRound.labelCustomer' | translate}}\\r\\n \\r\\n
\\r\\n {{item.DESCRIPTION}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalNewRound.labelRound1' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalNewRound.labelRound2' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalNewRound.labelRound3' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalNewRound.labelRound4' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalNewRound.labelRound5' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalNewRound.labelRound6' | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n {{\\\"description\\\" | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalSWO.labelSiteName' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{ServiceName}}\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
{{'ModalSWO.labelSalesProj' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalSWO.labelReqBy' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{item.ContaNameID}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
{{'ModalSWO.labelCustPO' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalSWO.labelReqDate' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalSWO.labelPriority' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalSWO.labelOptions' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
{{'ModalSWO.labelServCate' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalSWO.labelServType' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalSWO.labelRespon' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
{{'ModalSWO.labelReso' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
{{'ModalSWO.labelEstHrs' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalSWO.labelScDate' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n {{\\\"resonForService\\\" | translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n {{popupServiceSite}}\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n

{{'ModalCubeW.msg' | translate}}

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
´\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
0 && !showCardHelp\\\">\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n {{ \\\"ModalMultiController.titleModal\\\" | translate }}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

{{ data.column.caption }}

\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

{{ data.column.caption }}

\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

{{ data.column.caption }}

\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n

{{ data.column.caption }}

\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

{{ data.column.caption }}

\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n

{{ data.column.caption }}

\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{\\r\\n data.column.caption\\r\\n }}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{\\r\\n data.column.caption\\r\\n }}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
0\\\">{{'ModalEditNTask.labelTask'| translate}} {{'ModalEditNTask.labelProject'| translate}}
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n {{item.value}}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelTaskName'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelResponsible'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelResources'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelSubContractor'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelStatus'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelCategory'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelPriority'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelArea'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelOrder'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelLocation'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelPhase'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Estimated Revenue
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
Recognized Revenue
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelStartDate'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelDuration'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelDueDate'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelPorcComplete'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelCompDate'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelSummTask'| translate}}
\\r\\n
\\r\\n \\r\\n >\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelIsMileston'| translate}}
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelCreatedOn'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditNTask.labelCreatedBy'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalEditNTask.labelNotes'| translate}}\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Note
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n\"","export default \"\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\"","export default \"\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\\"CUBE-logo\\\"\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \"","export default \"\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalSalesLeadStatus.titleSaleStatus' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalFollowLead.titleFollowUpS' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'toolNewContact' | translate}}\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n

{{'ModuleLeadContact.titleContactList' | translate}}

\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModuleEditSalesProj.titleNContact' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalCustomer.labelCustomer' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalCustomer.labelParticiType' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalCustomer.labelContact' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n {{item.ContaNameID}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalCustomer.labelContactType' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Service ID
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Site Name
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Site Address
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Requested By
\\r\\n
\\r\\n \\r\\n
\\r\\n {{item.First}} {{item.Last}}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Call Ahead
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Confirmed
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Customer PO
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Requested Date
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Priority\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Sales Project
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Service Type
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
PM Type
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Category
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Responsible
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Resources
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Estimated Hours
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Schedule Date
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Status
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Created By
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
Created Date
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
Completed By:
\\r\\n {{serviceDoneBy}}\\r\\n
Completed Date:
\\r\\n {{serviceDoneDate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n Reason For Service\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n\\r\\n\\r\\n
\\r\\n {{'ModuleTaskManagementMemTask.toolMemoTask' | translate}}\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{formatDuration(data.value)}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNTask.labelName' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNTask.labelSummTask' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNTask.labelRespon' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNTask.labelCateg' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNTask.labelPriority' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNTask.labelArea' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNTask.labelSort' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNTask.labelDuration' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNTask.labelMile' | translate}}
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNTask.labelAddAutoma' | translate}}
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNTask.labelCategories' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

{{'ModalTaskManagementMemNTask.labelDaysProj' | translate}}
{{'ModalTaskManagementMemNTask.labelStartDate' | translate}}

\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNSumTask.labelTaskNam' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalTaskManagementMemNSumTask.labelOrder' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\\"CUBE-Work-logo\\\"\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\\"CUBE-logo\\\"\\r\\n \\\"CUBE-logo\\\"\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
{{ UserCompanyName }}
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\\"CUBE-logo\\\"\\r\\n \\\"CUBE-logo\\\"\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\\"CUBE-logo\\\"\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Add Quick Estimate\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Create New Project\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{ \\\"ModalAlarms.title\\\" | translate }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n {{\\r\\n data.value\\r\\n }}\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n {{\\r\\n data.value\\r\\n }}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{\\r\\n data.value\\r\\n }}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{\\r\\n data.value\\r\\n }}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{ \\\"ModalChangeCompany.title\\\" | translate }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
LEGAL NOTICE END USER LICENSE AGREEMENT
\\r\\n

\\r\\n This End User License Agreement (the “Agreement”) is entered by and\\r\\n between CUBE USA, LLC. (“CUBE”) and you or your company (“User”). The\\r\\n Agreement sets out the terms and conditions under which CUBE makes its\\r\\n software, services and products available (the “Software”). For purposes\\r\\n of these Agreements, the term “User” means any person or entity using\\r\\n Software for any purpose whatsoever in any manner whatsoever. By\\r\\n accessing the Software, the User agrees to all the terms and conditions\\r\\n set forth in the Agreement. If the User is acting on behalf of a\\r\\n corporate entity or institution, acceptance of the Agreement by the User\\r\\n constitutes acceptance by the corporate entity or institution and the\\r\\n User warrants that he or she has the corporate authority to enter into\\r\\n the Agreement on behalf of the corporate entity or institution, and its\\r\\n employees and affiliates. User hereby acknowledges and agrees that CUBE\\r\\n reserves the right to change the terms and conditions of the Agreement,\\r\\n the products, services, prices and programs at any time, at its sole\\r\\n discretion and without notice. CUBE reserves the right to seek all\\r\\n remedies available to it, by law and in equity, for any violation of the\\r\\n terms and conditions contained herein. All rights not expressly granted\\r\\n herein are herein reserved.\\r\\n

\\r\\n
1. Copyright Notice
\\r\\n

\\r\\n All information and materials appearing on the Software system,\\r\\n including without limitation any and all text, layout, functionality,\\r\\n toolsets, design features, and menus are protected by U.S. and\\r\\n International copyright laws. Ownership of said information and\\r\\n materials (“the CUBE Copyrighted Information”) lies exclusively with\\r\\n CUBE and its business affiliates, and except as specifically permitted,\\r\\n no portion of this system or the CUBE Copyrighted Information may be\\r\\n distributed or reproduced by any means, or in any form, without CUBE’s\\r\\n prior written permission.\\r\\n

\\r\\n User acknowledges that, aside from CUBE’s copyrighted material, the\\r\\n data, content and/or information contained in the Software may be\\r\\n subject to copyright protection by third parties (the “Third Party\\r\\n Copyrighted Information”). User shall be directly liable to the holder\\r\\n of the Third Party Copyright, and if User(s) are in violation of any\\r\\n applicable U.S. or international copyright law, User shall defend,\\r\\n cover, hold harmless and indemnify CUBE, its officers, directors,\\r\\n employees, agents and subcontractors from and against any claim, demand,\\r\\n expense, loss, or cause of action of or to third parties, including\\r\\n reasonable attorney’s fees and costs, arising out of or relating to such\\r\\n conduct. User shall also defend, cover, hold harmless and indemnify CUBE\\r\\n from and against any claim, demand, expense, loss or action of or to\\r\\n third parties, including reasonable attorney’s fees and costs, in the\\r\\n event that User fails to honor any other intellectual property rights\\r\\n owned by third parties.\\r\\n

\\r\\n
2.License to Use
\\r\\n

\\r\\n Subject to compliance with all of the terms and conditions of this\\r\\n Agreement, CUBE grants to User a single, renewable, non-exclusive,\\r\\n non-transferrable revocable license to access, view, and use the\\r\\n Software system, including but not limited to access to the various\\r\\n data, files and information of a User’s account, or other Software\\r\\n functions a certain User is authorized to 2 access, subject to the\\r\\n following terms and conditions:\\r\\n

\\r\\n
    \\r\\n
      \\r\\n
    1. \\r\\n Access codes, including user names and passwords, are for the\\r\\n benefit of the original recipient of the access codes, shall be kept\\r\\n strictly confidential, and shall not be disclosed to anyone without\\r\\n the express prior written consent of CUBE, except as expressly\\r\\n provided herein.\\r\\n
    2. \\r\\n
    3. \\r\\n CUBE shall not be liable for the quality, soundness, accuracy or\\r\\n viability of any information appearing on the Software. User is\\r\\n solely responsible for all acts or omissions in connection\\r\\n information residing on the User’s account.\\r\\n
    4. \\r\\n
    5. \\r\\n CUBE reserves the exclusive right to terminate, suspend or otherwise\\r\\n revoke the User’s license in the event of non-payment, incomplete or\\r\\n partial payment or other violation of the Pricing terms set forth in\\r\\n Section 5, below. CUBE’s exercise of a right to terminate, suspend\\r\\n or otherwise revoke the User’s license is wholly within CUBE’s\\r\\n discretion.\\r\\n
    6. \\r\\n
    \\r\\n
\\r\\n
3. Warranties and Disclaimers; Liability Limitations
\\r\\n

\\r\\n EXCEPT AS EXPRESSLY PROVIDED OTHERWISE IN AN AGREEMENT BETWEEN USER AND\\r\\n CUBE, ALL INFORMATION, OPERABILITY AND USABILITY ON THE SOFTWARE ARE\\r\\n PROVIDED \\\"AS IS\\\" WITHOUT WARRANTY OR CONDITIONS OF ANY KIND, EITHER\\r\\n EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\\r\\n WARRANTIES OR CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR\\r\\n PURPOSE, OR NON-INFRINGEMENT.

\\r\\n\\r\\n CUBE WILL USE ITS COMMERCIALLY REASONABLE EFFORTS TO PROTECT THE PRIVACY\\r\\n AND INTEGRITY OF THE INFORMATION, AND TO PROTECT AGAINST THEFT,\\r\\n UNAUTHORIZED REPRODUCTION OR LOSS OF ANY INFORMATION; HOWEVER, USERS\\r\\n ACKNOWLEDGE AND AGREE THAT CUBE CANNOT GIVE ANY WARRANTIES IN THIS\\r\\n RESPECT.\\r\\n

\\r\\n CUBE ASSUMES NO RESPONSIBILITY (1) FOR ERRORS OR OMISSIONS IN THE\\r\\n INFORMATION OR COMPUTER CODE OR (2) FOR INTERRUPTIONS IN SERVICE.\\r\\n

\\r\\n IN NO EVENT SHALL CUBE, ITS OFFICERS, DIRECTORS, MEMBERS, EMPLOYEES OR\\r\\n AGENTS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL\\r\\n DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT\\r\\n LIMITATION, THOSE RESULTING FROM: (1) RELIANCE ON THE OPERATIONAL\\r\\n AVAILABILITY OF THE SOFTWARE, (2) COSTS OF REPLACEMENT GOODS, (3) THEFT\\r\\n OF DATA OR LOSS OF USE, DATA, OR PROFITS, (4) DELAYS OR BUSINESS\\r\\n INTERRUPTIONS, AND (5) ANY THEORY OF LIABILITY, ARISING OUT OF, RELATING\\r\\n TO OR IN CONNECTION WITH THE USE OF ACCOUNTS AND DATA OR INFORMATION OR\\r\\n THE PERFORMANCE OF THE SOFTWARE, WHETHER OR NOT CUBE HAS BEEN ADVISED OF\\r\\n THE POSSIBILITY OF SUCH DAMAGES. SOME JURISDICTIONS DO NOT ALLOW SOME OF\\r\\n THE EXCLUSIONS, LIMITATIONS AND DISCLAIMERS AS SET FORTH ABOVE. HOWEVER,\\r\\n IN SUCH EVENT, SUCH EXCLUSIONS, LIMITATIONS AND DISCLAIMERS SHALL BE\\r\\n VALID AND ENFORCEABLE TO THE FULLEST EXTENT ALLOWED BY LAW. CUBE’S TOTAL\\r\\n CUMULATIVE LIABILITY TO THE USER, FOR ANY REASON, SHALL BE LIMITED\\r\\n SOLELY TO THE LICENSE AMOUNT PERTAINING TO THE PARTICULAR USER IN\\r\\n QUESTION.\\r\\n

\\r\\n\\r\\n
4. Availability
\\r\\n

\\r\\n CUBE will make commercially reasonable efforts to make sure that the\\r\\n Software system is operational and running 24 hours a day, 7 days a\\r\\n week. However, User acknowledges that availability may sometimes be\\r\\n interrupted by: weather events (acts of God), hardware and software\\r\\n problems (whether internal to CUBE or third party providers), and\\r\\n software and hardware upgrades, installations and maintenance, as well\\r\\n as many other unforeseen possibilities. CUBE will make commercially\\r\\n reasonable efforts to keep the Software system up and running and in the\\r\\n event that the Software system is not operational in whole or in part,\\r\\n CUBE will make commercially reasonable efforts to restore full operation\\r\\n of the system promptly. USER, HOWEVER, ACKNOWLEDGES THAT IN NO EVENT\\r\\n SHALL CUBE BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR\\r\\n CONSEQUENTIAL DAMAGES OF ANY KIND, RESULTING FROM THE LAURIS ONLINE\\r\\n WEBSITE BEING UNACCESSIBLE FOR ANY AMOUNT OF TIME FOR ANY REASON.\\r\\n

\\r\\n\\r\\n
5. Pricing
\\r\\n

\\r\\n User agrees that the single (i.e., per seat) renewable license specified\\r\\n in Section 2, above, and under which User is operating the Software\\r\\n system, has a duration coterminous with the User’s subscription period.\\r\\n

\\r\\n\\r\\n User agrees that use of the Software system and the grant of the license\\r\\n specified in Section 2, above, is subject to the payment of any\\r\\n applicable licensing fees and costs. CUBE reserves the right to\\r\\n immediately and without notice cancel this Agreement, as well as\\r\\n restrict or terminate access to the Software system in the event\\r\\n registration fee payments remain outstanding. Similarly, in the event\\r\\n the license described in Section 2, above, is not renewed, CUBE reserves\\r\\n the right to terminate this Agreement, as well as restrict or terminate\\r\\n access to the Software system as of the date of the license’s\\r\\n expiration. In the event access to the Software system is restricted for\\r\\n non-payment or non-renewal, User agrees to hold harmless and release\\r\\n CUBE from and against any and all claims, damages, costs, fees,\\r\\n expenses, loss of business or business interruption suffered by User as\\r\\n a result of the restriction of access.\\r\\n

\\r\\n Pricing is subject to change without notice; and CUBE reserves the right\\r\\n to adjust or modify any pricing, at anytime after the pricing change is\\r\\n made. The full invoice amount is due prior to a user’s first use of the\\r\\n system, unless otherwise expressly indicated in a separate signed\\r\\n writing by CUBE. If User defaults in any payment when due, then the\\r\\n whole invoice amount shall immediately become due and payable upon\\r\\n demand, or CUBE, at its option without prejudice to other lawful\\r\\n remedies, may defer delivery or cancel this contract. Should User decide\\r\\n to terminate this Agreement prior to the expiration of the Agreement’s\\r\\n term, CUBE may, but is not\\r\\n

\\r\\n obligated to, return a part of the invoiced amount. User shall reimburse\\r\\n CUBE, upon demand, for any costs of collection incurred by CUBE,\\r\\n including reasonable attorneys’ fees.\\r\\n

\\r\\n\\r\\n
6. Monitoring
\\r\\n

\\r\\n Users acknowledges that CUBE may review or monitor utilization of the\\r\\n Software system and that such review or monitoring is to be carried out\\r\\n at CUBE’s sole discretion. User further acknowledges that the Software\\r\\n may, at its sole discretion, suspend, terminate or otherwise restrict\\r\\n User’s access to the Software system if, at CUBE’s sole discretion, it\\r\\n is determined that inappropriate account activity is or has taken place.\\r\\n \\r\\n IF USER RESTRICTIONS ARE PUT IN PLACE BY CUBE RELATED TO INAPPROPRIATE\\r\\n ACCOUNT ACTIVITY, USER AGREES CUBE WILL HAVE NO LIABILITY RELATED TO\\r\\n THE SYSTEM’S UNAVAILIABILITY.\\r\\n

\\r\\n
7. Restrictions on Use
\\r\\n\\r\\n

\\r\\n In connection with access or use of the Software system, User agrees not\\r\\n to:\\r\\n

\\r\\n
    \\r\\n
  1. \\r\\n modify, port, adapt, translate, reverse engineer, decompile,\\r\\n disassemble the Software system or any of the source codes of the\\r\\n Software system, or attempt to discover any of such source codes;\\r\\n
  2. \\r\\n
  3. \\r\\n introduce a virus, worm, Trojan horse or other harmful software code\\r\\n or similar files that may damage the operation of an CUBE computer,\\r\\n property or information;\\r\\n
  4. \\r\\n
  5. \\r\\n use the Software system in any manner that could damage, disable,\\r\\n overburden, or impair any CUBE server, or the network(s) connected to\\r\\n any server or interfere with any other party’s use and enjoyment of\\r\\n the Software system;\\r\\n
  6. \\r\\n
  7. \\r\\n attempt to gain unauthorized access to service, materials, other\\r\\n accounts, computer systems or networks connected to any CUBE server or\\r\\n to the Software system, through hacking, password mining, or any other\\r\\n means;\\r\\n
  8. \\r\\n
  9. \\r\\n obtain or attempt to obtain any materials or information through any\\r\\n means not intentionally made available through the Software system;\\r\\n
  10. \\r\\n
  11. \\r\\n host, on a subscription basis or otherwise, the Software system,\\r\\n including any related application;\\r\\n
  12. \\r\\n
  13. engage in any systematic extraction of data or data fields;
  14. \\r\\n
  15. \\r\\n sell, lease, or rent access to or use of the Software system, or\\r\\n otherwise transfer any rights to use the Software system;\\r\\n
  16. \\r\\n
  17. \\r\\n upload, or otherwise make available on the Software system, files or\\r\\n data that are protected by intellectual property laws, including, for\\r\\n example, and not as limitation, copyright or trademark laws, unless\\r\\n User owns or controls the rights thereto or have received all\\r\\n necessary consent to do the same.\\r\\n
  18. \\r\\n
\\r\\n
8. Data Privacy
\\r\\n

\\r\\n You agree that CUBE may process technical and related information about\\r\\n User which may include internet protocol address, hardware\\r\\n identification, operating system, peripheral hardware, and\\r\\n non-personally identifiable usage statistics to facilitate the\\r\\n provisioning of updates, support, invoicing or online services. To the\\r\\n extent that this information constitutes personal data, CUBE shall be\\r\\n the controller of such personal data.\\r\\n

\\r\\n\\r\\n
9. Confidential Information and Protection Thereof
\\r\\n

\\r\\n The following information shall be considered Confidential Information,\\r\\n whether or not marked or identified as such: (a) information regarding\\r\\n CUBE pricing, product roadmaps or strategic marketing plans; and (b)\\r\\n non-public materials relating to the User or the Software. CUBE may use\\r\\n Confidential Information (a) to exercise its rights and perform its\\r\\n obligations under this EULA; or (b) in connection with the parties’\\r\\n ongoing business relationship. CUBE will not use any Confidential\\r\\n Information of Discloser for any purpose not expressly permitted by this\\r\\n EULA, and will disclose the Confidential Information of Discloser only\\r\\n to the employees or contractors of CUBE who have a need to know such\\r\\n Confidential Information for purposes of this EULA and who are under a\\r\\n duty of confidentiality no less restrictive than CUBE duty hereunder.\\r\\n Recipient will protect Confidential Information from unauthorized use,\\r\\n access, or disclosure in the same manner as CUBE protects its own\\r\\n confidential or proprietary information of a similar nature but with no\\r\\n less than reasonable care. CUBE’s obligations under Section 9 with\\r\\n respect to any Confidential Information will terminate if CUBE can show\\r\\n by written records that such information: (a) was already known to CUBE\\r\\n at the time of disclosure by User; (b) was disclosed to CUBE by a third\\r\\n party who had the right to make such disclosure without any\\r\\n confidentiality restrictions; (c) is, or through no fault of CUBE has\\r\\n become, generally available to the public; or (d) was independently\\r\\n developed by CUBE without access to, or use of, User’s Information. In\\r\\n addition, Recipient will be allowed to disclose Confidential Information\\r\\n to the extent that such disclosure is required by law or by the order of\\r\\n a court of similar judicial or administrative body, provided that CUBE\\r\\n notifies User of such required disclosure promptly and in writing and\\r\\n cooperates with User, at User’s request and expense, in any lawful\\r\\n action to contest or limit the scope of such required disclosure.\\r\\n

\\r\\n\\r\\n
10. Governing Law, Venue and Jurisdiction
\\r\\n

\\r\\n In the event of any dispute, claim, question, or disagreement arising\\r\\n from or relating to this agreement or the breach thereof, the parties\\r\\n hereto shall use their best efforts to settle the dispute, claim,\\r\\n question, or disagreement. To this effect, they shall consult and\\r\\n negotiate with each other in good faith and, recognizing their mutual\\r\\n interests, attempt to reach a just and equitable solution satisfactory\\r\\n to both parties. If they do not reach such solution within a period of\\r\\n 60 days, then, upon notice by either party to the other, all disputes,\\r\\n claims, questions, or differences shall be finally settled by\\r\\n arbitration administered by the American Arbitration Association in\\r\\n accordance with the provisions of its Commercial Arbitration Rules. The\\r\\n place of arbitration shall be Miami, Florida.\\r\\n

\\r\\n\\r\\n Consistent with the expedited nature of arbitration, each party will,\\r\\n upon the written request of the other party, promptly provide the other\\r\\n with copies of documents relevant to the issues raised by any claim or\\r\\n counterclaim on which the producing party may rely in support of or in\\r\\n opposition to any claim or defense. Any dispute regarding discovery, or\\r\\n the relevance or scope thereof, shall be determined by the arbitrator,\\r\\n which determination shall be conclusive. All discovery shall be\\r\\n completed within 45 days following the appointment of the arbitrator.\\r\\n

\\r\\n\\r\\n The arbitrator shall award to the prevailing party, if any, as\\r\\n determined by the arbitrator, all of its costs and fees. “Costs and\\r\\n fees” mean all reasonable pre-award expenses of the arbitration,\\r\\n including the arbitrators’ fees, administrative fees, travel expenses,\\r\\n out-of-pocket expenses such as copying and telephone, court costs,\\r\\n witness fees, and attorneys’ fees. The arbitrator has no authority to\\r\\n award punitive or other damages not measured by the prevailing party’s\\r\\n actual damages, except as may be required by statute. Any award issued\\r\\n by the arbitrator shall include findings of fact and conclusions of law.\\r\\n

\\r\\n This agreement shall be governed by and interpreted in accordance with\\r\\n the laws of the State of Florida. The parties acknowledge that this\\r\\n agreement evidences a transaction involving interstate commerce. The\\r\\n United States Arbitration Act shall govern the interpretation,\\r\\n enforcement, and proceedings pursuant to the arbitration clause in this\\r\\n agreement.\\r\\n

\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n Technicial Support Ticket\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n {{ \\\"ModalSettings.title\\\" | translate }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n {{ \\\"ModalSettings.localInfo\\\" | translate }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n {{ \\\"ModalChangePasswd.title\\\" | translate }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{ \\\"ModalChangePasswd.labelPasswdMatch\\\" | translate }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\\"Descripción\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{ button.title }}\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\\"Assistant\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ message.authorName }}
\\r\\n
{{ message.text }}
\\r\\n
{{ message.time }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n Send\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n System Type\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Components\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n System Type\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n To enter the CUBE Suite you need to select an estimate or create one\\r\\n

\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n Qbic\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n\"","export default \"\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalNewContact.titleAccNewContact' | translate}}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'ModalNewContact.MsgValidationFirstName' | translate}}\\r\\n \\r\\n {{'ModalNewContact.MsgValidationCaract' | translate}} \\r\\n \\r\\n {{'ModalNewContact.MsgValidaUseDigits' | translate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'ModalNewContact.MsgValidaLastReq' | translate}}\\r\\n \\r\\n {{'ModalNewContact.MsgValidaLastMaxCaract' | translate}}\\r\\n \\r\\n {{'ModalNewContact.MsgValidaUseDigits' | translate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{'ModalNewContact.labelvalidEmail' | translate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{'ModalNewContact.labelOnlyUrl' | translate}}\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'ModalNewContact.labelMaxChaWebSite' | translate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.title' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n

{{'ModalNewEmployee.labelEmployeeDetail' | translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelEmplNum' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelFirstName' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelLastName' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
{{'ModalNewEmployee.labelBirtDate' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalNewEmployee.labelHireDate' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelTermDate' | translate}}
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelDepart' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelJobCode' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelSupervisor' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalNewEmployee.labelEmpType' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelActive' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{'ModalNewEmployee.labelContaInfo' | translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelPhoneNum' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelEmail' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelEmergContact' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelEmeContNum' | translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

{{'ModalNewEmployee.labelHomInfo' | translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalNewEmployee.labelAdd' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{ data.text }}\\r\\n Link\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{ data.text }}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{ data.text }}\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{ \\\"btnNewDocument\\\" | translate }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
0\\\">\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n

{{ info.imageName }}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{ \\\"btnNewDocument\\\" | translate }}\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{ data.text }}\\r\\n Link\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{ data.text }}\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n {{ \\\"ModalDeleteDoc.msgDelete\\\" | translate }}\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{ actionDocument }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ \\\"ModalDocument.labelName\\\" | translate }}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ \\\"ModalDocument.labelType\\\" | translate }}\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ \\\"ModalDocument.labelRev\\\" | translate }}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ \\\"ModalDocument.labelNotes\\\" | translate }}\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{ \\\"ModalDocument.labelDescription\\\" | translate }}\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Restricted
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{ \\\"ModalDocument.msgValidFile\\\" | translate }}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
0\\\">\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{\\r\\n \\\"ModalDocument.msgTabExternalF\\\" | translate\\r\\n }}\\r\\n
\\r\\n {{\\r\\n \\\"ModalDocument.msgExExternalF\\\" | translate\\r\\n }}\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n {{\\r\\n \\\"ModalDocument.labelImporTo\\\" | translate\\r\\n }}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n {{ \\\"ModalEnableCookies.msgEnableCook\\\" | translate }} {{ dominioactual\\r\\n }}{{ \\\"ModalEnableCookies.msg2EnableCook\\\" | translate }} \\\"\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\"","export default \"\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\"","export default \"
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleEditProjecSOV.toolNItem'| translate}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleEditProjecSOV.toolEditSOV'| translate}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleEditProjecSOV.toolDeleteMultiSOV'| translate}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleEditProjecSOV.toolReqMaterial'| translate}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleEditProjecSOV.toolFullScreen'| translate}}\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Save Estimate\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n {{data.text}}\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.text}}\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
{{'ModuleEditProjecSOV.labelNotes'| translate}} {{data.data.NOTES }}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleEditProjecSOV.toolSaveChanges'| translate}}\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n {{data.text}}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.text}}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
{{'ModalEditProjecSOV.labelNotes'| translate}} {{data.data.OVERRIDENOTES }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelProduct'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelSort'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelQuantity'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelUnitCost'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
Unit Price original
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelUniPrice'| translate}}
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Additional Mark Up %
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelTaxAmo'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelBillAmo'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelNotes'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelArea'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelBillCate'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelTax'| translate}}
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelTaxFact'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelShowBill'| translate}}
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelOverNotes'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjecNOpenItem.labelDescription'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

{{'ModalEditProjecDeleteItem.msg1'| translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

{{'ModalEditProjecDeleteItemSchedule.msg1'| translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalReqMaterial.titleModal'| translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjecBillSch.title'| translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n

{{'ModalEditProjecBillSch.labelMultiItemList'| translate}}

\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n {{data.text}}\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{info.column.caption}}\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{info.column.caption}}\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjecSpreadSheet.title'| translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalEditProjecSpreadSheet.btnUpload'| translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjecImportEst.title'| translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjecImportEst.labelEst'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n

{{'ModalEditProjecImportEst.labelEstList'| translate}}

\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}} %\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value | currency: settings.moneyFormat}}\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value | currency: settings.moneyFormat}}\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value | currency: settings.moneyFormat}}\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value | currency: settings.moneyFormat}}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjecImportChanOrder.title'| translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.text}}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{data.text}}\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

{{'ModalEditProjecMR.msg1'| translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n{{popupNewPart}}\\r\\n
\\r\\n {{popupNewPart}}\\r\\n \\r\\n \\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n

Service List

\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n {{data.data.ID}}\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value | date: 'yyyy-MM-dd'}}\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n {{data.value | date: 'yyyy-MM-dd'}}\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n {{data.value | date: 'yyyy-MM-dd'}}\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{ data.data.PRIORITY }}\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{ data.data.STATUSNAME }}\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\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.componentTitle}}

\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
    \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

Modal title

\\r\\n
\\r\\n
\\r\\n ...\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\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.data?.chartLabels[i]}}
    \\r\\n
    \\r\\n {{chartitem}}\\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\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.data?.chartLabels[i]}}
    \\r\\n
    \\r\\n {{chartitem}}\\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\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.data?.IndicatorValue}}
\\r\\n {{item.data?.Title}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
{{'ModuleDashboard.msgCreateDash' | translate}}
\\r\\n
{{'ModuleDashboard.msgCreateDash2' | translate}}
\\r\\n
{{'ModuleDashboard.msgCreateDash3' | translate}}
\\r\\n
\\r\\n\\r\\n
0 && components.length == 0\\\">\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
{{'ModuleDashboard.msgCreateComp' | translate}}
\\r\\n
{{'ModuleDashboard.msgCreateComp2' | translate}}
\\r\\n
{{'ModuleDashboard.msgCreateComp3' | translate}}
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
{{'ModuleDashboard.titlefilter' | translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Edit Settings
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
    \\r\\n
  • \\r\\n Task Name\\r\\n
  • \\r\\n
  • \\r\\n ID\\r\\n
  • \\r\\n
  • \\r\\n Due date\\r\\n
  • \\r\\n
  • \\r\\n Time\\r\\n
  • \\r\\n
  • \\r\\n Project 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
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Edit Settings
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
Edit Settings
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'ModalNewDashboard.validatioName' | translate}}\\r\\n \\r\\n {{'ModalNewDashboard.validatioName2' | translate}}\\r\\n \\r\\n
\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{'ModalNewDashboard.validationDescrip' | translate}}\\r\\n
\\r\\n

\\r\\n
\\r\\n {{'ModalNewDashboard.labelDefault' | translate}}\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n {{'ModalAddComponent.labelFilters' | translate}}

\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n

{{'ModalDeleteDashboard.msgDelete' | translate}} {{nameDashboardSelected}} {{'ModalDeleteDashboard.msgDelete2' | translate}}

\\r\\n

{{'ModalDeleteDashboard.msgDelete3' | translate}}

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n

{{'ModalSahreDashboard.msgShare1' | translate}} {{nameDashboardSelected}} {{'ModalSahreDashboard.msgShare2' | translate}}

\\r\\n

{{nameDashboardSelected}} {{'ModalSahreDashboard.msgShare3' | translate}}

\\r\\n\\r\\n
\\r\\n
{{'ModalSahreDashboard.labelUsers' | translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Edit Layout
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
Add Component
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n Filters

\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n

Delete {{nameDashboardSelected}} Dashboard

\\r\\n

Confirm that you want to delete this Dashboard.

\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \" \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n

Confirm that you want to delete

\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}} %\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{data.text}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
{{'ModuleEditProjectTask.labelNotes'| translate}} {{notes.data.notes}}\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{'ModuleEditProjectTask.toolViewSummTask'| translate}}\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n {{'ModuleEditProjectTask.toolRefresh'| translate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n {{'ModuleEditProjectTask.toolFilter'| translate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n {{'ModalEditfilter.labelStatus'| translate}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Sort\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{'ModalEditNSummTask.labelName'| translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{'ModalEditNSummTask.labelStartName'| translate}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{'ModalEditNSummTask.labelDueDate'| translate}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{'ModalEditNSummTask.labelPorComp'| translate}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{'ModalEditNSummTask.labelNotes'| translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n

{{'ModalEditDeleteSummTask.msg1'| translate}}

\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value * 100}} %\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

{{'ModalEditProjectDeleteMuTask.msg1'| translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjectEditTask.title'| translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjectEditTask.labelResponsible'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjectEditTask.labelResources'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjectEditTask.labelCategory'| translate}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjectEditTask.labelPorcComp'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjectEditTask.labelPriority'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
{{'ModalEditProjectEditTask.labelStatus'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjectEditTask.labelSummaryTask'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjectEditTask.labelOrder'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjectEditTask.labelArea'| translate}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}} %\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

{{'ModalEditProjectDeleteMuTask.msg1'| translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

{{'ModalEditProjectTaskDuplicate.msg1'| translate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjecSpreadSheet.titleTask'| translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalEditProjecSpreadSheet.btnUpload'|\\r\\n translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
{{'ModalEditProjecSpreadSheet.titleSummary'| translate}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalEditProjecSpreadSheet.btnUpload'|\\r\\n translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{data.value}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\"","export default \"\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{isDuplicating ? popupDeleteSystem ? 'Duplicate System' : 'Duplicate Area' : popupDeleteSystem ? 'Delete System' : 'Delete Area'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n

{{'ModalDeleteSystem.msg1'| translate}} {{popupDeleteSystem ?\\r\\n 'system' : 'area'}}\\r\\n \\r\\n

\\r\\n

{{'ModalDuplicateSystem.msg1'| translate}} {{popupDeleteSystem ?\\r\\n 'system' : 'area'}}\\r\\n \\r\\n

\\r\\n

{{'ModalDeleteSystem.msg2'| translate}} {{popupDeleteSystem ? 'system: ' : 'area: '}}.

\\r\\n

{{'ModalDuplicateSystem.msg2'| translate}} {{popupDeleteSystem ? 'system: ' : 'area: '}}.

\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalArea.titleModal'| translate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{'ModalSystem.titleModal'| translate}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n System Replication\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Labor Parts\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Add Systems\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Add Areas\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n Download\\r\\n Template \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n{{modal}}\\r\\n
\\r\\n {{modal}}\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{'ModalImportFromExcel.btnUpload'| translate}}\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n System Template\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n This action will overwrite the current template. Do you want to proceed?\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\"","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { Injectable, Injector } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Subject } from 'rxjs';\r\n// import { CompanySettingsService } from 'src/app/services/company-settings.service';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AppConfigService {\r\n\r\n public appConfig: any;\r\n appConfigJson: any;\r\n\r\n // Create a Subject to emit events\r\n private configChangedSubject = new Subject();\r\n\r\n // Observable to listen to config changes\r\n configChanged$ = this.configChangedSubject.asObservable();\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n loadAppConfig() {\r\n //let mythis = this;\r\n this.appConfig = environment;\r\n return this.http.get('/assets/data/appConfig.json')\r\n .toPromise()\r\n .then(data => {\r\n this.appConfigJson = data;\r\n });\r\n }\r\n\r\n expandSettings(otherSettings){\r\n this.appConfig = {...this.appConfig ,...otherSettings}\r\n this.configChangedSubject.next();\r\n\r\n }\r\n\r\n // This is an example property ... you can make it however you want.\r\n get apiBaseUrl() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n return this.appConfigJson.apiBaseUrl;\r\n }\r\n\r\n get apiBaseUrlUtility() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n return this.appConfigJson.apiBaseUrlUtility;\r\n }\r\n\r\n get urlAI() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n return this.appConfigJson.urlAI;\r\n }\r\n\r\n get EndpPointTag() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n return this.appConfigJson.EndpPointTag;\r\n }\r\n\r\n get dateFormat() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n\r\n let settings: any = localStorage.getItem('settings');\r\n\r\n if(settings && settings != 'null') {\r\n settings = JSON.parse(settings);\r\n\r\n let value = settings.dateFormat ? settings.dateFormat : this.appConfig.dateFormat;\r\n return value;\r\n }\r\n return this.appConfig.dateFormat;\r\n }\r\n\r\n get moneyFormat() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n // this.settings.GetClientSettings('')\r\n let settings: any = localStorage.getItem('settings');\r\n\r\n if(settings && settings != 'null') {\r\n settings = JSON.parse(settings);\r\n\r\n let value = settings.moneyFormat ? settings.moneyFormat : this.appConfig.moneyFormat;\r\n return value;\r\n }\r\n\r\n return this.appConfig.moneyFormat;\r\n }\r\n\r\n get estimateDefault() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n\r\n\r\n let settings: any = localStorage.getItem('settings');\r\n\r\n if(settings && settings != 'null') {\r\n settings = JSON.parse(settings);\r\n\r\n let value = settings.estimateidDefault ? settings.estimateidDefault : this.appConfig.estimateidDefault;\r\n return value;\r\n }\r\n return null;\r\n }\r\n \r\n get websocketserverURL() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n\r\n return this.appConfig.websocketserverURL;\r\n }\r\n\r\n get cubeAIserverURL() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n\r\n return this.appConfig.cubeAIserverURL;\r\n }\r\n\r\n get videoDashboardSelected() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n\r\n return this.appConfig.videoDashboardSelected;\r\n }\r\n\r\n get videoDashboardUnSelected() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n\r\n return this.appConfig.videoDashboardUnSelected;\r\n }\r\n\r\n get reportingURL() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n\r\n return this.appConfig.reportingURL;\r\n }\r\n\r\n get LinkGettingStarted() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n\r\n return this.appConfig.LinkGettingStarted;\r\n }\r\n\r\n get LinkCubeFlow() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n return this.appConfig.LinkCubeFlow;\r\n }\r\n\r\n get LinkWhatsNew() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n\r\n return this.appConfig.LinkWhatsNew;\r\n }\r\n\r\n get dashboardURL() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n // debugger;\r\n if (this.UseNewDashboard){\r\n return this.appConfig.newdashboardURL;\r\n }\r\n else {\r\n return this.appConfig.dashboardURL;\r\n } \r\n }\r\n\r\n get newdashboardURL() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n // debugger;\r\n return this.appConfig.newdashboardURL;\r\n }\r\n \r\n get quickbooksurl() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n // debugger;\r\n return this.appConfig.quickbooksurl;\r\n }\r\n \r\n get UseNewDashboard() {\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n try{\r\n return this.appConfig.UseNewDashboard == \"true\";\r\n }\r\n catch (ex){\r\n return false;\r\n }\r\n \r\n }\r\n\r\n get currencyData() {\r\n if (!this.appConfigJson) {\r\n throw Error('Config file not loaded!');\r\n }\r\n\r\n return this.appConfigJson.currencyData;\r\n }\r\n\r\n get dateFormatData() {\r\n if (!this.appConfigJson) {\r\n throw Error('Config file not loaded!');\r\n }\r\n\r\n return this.appConfigJson.dateFormatData;\r\n }\r\n\r\n get apiMasterVendorURL(){\r\n if (!this.appConfig) {\r\n throw Error('Config file not loaded!');\r\n }\r\n\r\n return this.appConfig.apiMasterVendorUrl;\r\n }\r\n \r\n get apiMasterTrainingURL(){\r\n if (!this.appConfig) {\r\n return \"https://cube-usa.mykajabi.com/welcome-to-cube-edge\";\r\n }\r\n\r\n return this.appConfig.TrainingURL;\r\n }\r\n\r\n get googleMapAPIKey(): string {\r\n if (!this.appConfig) {\r\n throw Error('Config data not loaded!');\r\n }\r\n\r\n return this.appConfig.googleMapAPIKey.toString();\r\n }\r\n}\r\n","export default \"body, html {\\n width: 100%;\\n height: 100%;\\n min-height: 100vh;\\n}\\n\\n.loader-background {\\n width: 100%;\\n height: 100%;\\n position: fixed;\\n /* Cambiamos de absolute a relative */\\n z-index: 9999;\\n}\\n\\n.pac-container {\\n z-index: 100000;\\n}\\n\\n.loader {\\n width: 60px;\\n height: 60px;\\n position: absolute;\\n /* cambiamos de fixed a absolute */\\n /* Ponemos el valor de left, bottom, right y top en 0 */\\n left: 0;\\n bottom: 0;\\n right: 0;\\n top: 0;\\n margin: auto;\\n /* Centramos vertical y horizontalmente */\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvRTpcXERldlxcQ1VCRVRFTVBcXG5ld2N1YmUvc3JjXFxhcHBcXGFwcC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvYXBwLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtBQ0NGOztBREVBO0VBQ0ksV0FBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0VBQWlCLHFDQUFBO0VBRWpCLGFBQUE7QUNDSjs7QURFQTtFQUFpQixlQUFBO0FDRWpCOztBREFBO0VBUUUsV0FBQTtFQUNBLFlBQUE7RUFFQSxrQkFBQTtFQUFvQixrQ0FBQTtFQUNwQix1REFBQTtFQUNBLE9BQUE7RUFDQSxTQUFBO0VBQ0EsUUFBQTtFQUNBLE1BQUE7RUFDQSxZQUFBO0VBQWMseUNBQUE7QUNIaEIiLCJmaWxlIjoic3JjL2FwcC9hcHAuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJib2R5LCBodG1sIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgbWluLWhlaWdodDogMTAwdmg7XHJcbn1cclxuXHJcbi5sb2FkZXItYmFja2dyb3VuZCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDsgLyogQ2FtYmlhbW9zIGRlIGFic29sdXRlIGEgcmVsYXRpdmUgKi9cclxuICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE0YTtcclxuICAgIHotaW5kZXg6IDk5OTk7XHJcbn1cclxuXHJcbi5wYWMtY29udGFpbmVyIHsgei1pbmRleDogMTAwMDAwOyB9XHJcblxyXG4ubG9hZGVye1xyXG4gIC8vXHJcbiAgLy8gbWFyZ2luLXRvcDogMjI1cHg7XHJcbiAgLy8gbWFyZ2luLWxlZnQ6IDc1MHB4O1xyXG4gIC8vIGJvcmRlcjogMTZweCBzb2xpZCAjZDRkNGQ0O1xyXG4gIC8vIGJvcmRlci10b3A6IDE2cHggc29saWQgIzM0OThkYjtcclxuICAvLyBib3JkZXItYm90dG9tOiAxNnB4IHNvbGlkICMzNDk4ZGI7XHJcbiAgLy8gYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gIHdpZHRoOiA2MHB4O1xyXG4gIGhlaWdodDogNjBweDtcclxuICAvLyBhbmltYXRpb246IHNwaW4gMS41cyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlOyAvKiBjYW1iaWFtb3MgZGUgZml4ZWQgYSBhYnNvbHV0ZSAqL1xyXG4gIC8qIFBvbmVtb3MgZWwgdmFsb3IgZGUgbGVmdCwgYm90dG9tLCByaWdodCB5IHRvcCBlbiAwICovXHJcbiAgbGVmdDogMDtcclxuICBib3R0b206IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIG1hcmdpbjogYXV0bzsgLyogQ2VudHJhbW9zIHZlcnRpY2FsIHkgaG9yaXpvbnRhbG1lbnRlICovXHJcbn1cclxuXHJcbi8vIEBrZXlmcmFtZXMgc3BpbiB7XHJcbi8vICAgICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XHJcbi8vICAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxyXG4vLyB9XHJcbiIsImJvZHksIGh0bWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuLmxvYWRlci1iYWNrZ3JvdW5kIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICAvKiBDYW1iaWFtb3MgZGUgYWJzb2x1dGUgYSByZWxhdGl2ZSAqL1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG4ucGFjLWNvbnRhaW5lciB7XG4gIHotaW5kZXg6IDEwMDAwMDtcbn1cblxuLmxvYWRlciB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLyogY2FtYmlhbW9zIGRlIGZpeGVkIGEgYWJzb2x1dGUgKi9cbiAgLyogUG9uZW1vcyBlbCB2YWxvciBkZSBsZWZ0LCBib3R0b20sIHJpZ2h0IHkgdG9wIGVuIDAgKi9cbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBtYXJnaW46IGF1dG87XG4gIC8qIENlbnRyYW1vcyB2ZXJ0aWNhbCB5IGhvcml6b250YWxtZW50ZSAqL1xufSJdfQ== */\"","import { Component, OnInit, AfterViewInit, OnChanges, SimpleChanges, HostListener } from '@angular/core';\r\nimport { LoadingService } from './services/loading.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\nimport { GeneralService } from './services/general.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent implements OnChanges {\r\n title = 'ng-uikit-pro-standard';\r\n isNavCollapse = false;\r\n visibleNav: boolean;\r\n userMenu: any;\r\n onlySubMenu: any;\r\n\r\n constructor(\r\n public loadingService: LoadingService,\r\n public translate: TranslateService,\r\n private router: Router,\r\n private generalService: GeneralService, public userService: UserService\r\n ) {\r\n translate.setDefaultLang('en');\r\n\r\n this.generalService.currentUrl.next(this.router.url);\r\n router.events.subscribe(event => {\r\n if (event instanceof NavigationEnd) {\r\n this.generalService.previousUrl.next(this.generalService.currentUrl.value);\r\n this.generalService.currentUrl.next(event.url);\r\n };\r\n\r\n });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n throw new Error('Method not implemented changeee.');\r\n }\r\n\r\n // @HostListener('window:resize', ['$event'])\r\n // onResize(event) {\r\n // console.log('windowwwww', event);\r\n // // this.innerWidth = window.innerWidth;\r\n // }\r\n\r\n ngAfterViewInit() {\r\n var mythis = this;\r\n const menu = localStorage.getItem('userMenu');\r\n if (!menu) {\r\n\r\n var mytoken = localStorage.getItem('token');\r\n\r\n if(mytoken){\r\n mythis.userService.getMenu().subscribe((data) => {\r\n localStorage.setItem('userMenu', JSON.stringify(data));\r\n mythis.loadMenu();\r\n });\r\n \r\n }\r\n\r\n }\r\n else {\r\n mythis.loadMenu();\r\n }\r\n }\r\n\r\n loadMenu() {\r\n\r\n var mythis = this\r\n this.onlySubMenu = [];\r\n this.userMenu = JSON.parse(localStorage.getItem('userMenu'));\r\n this.userMenu.userMenuNodes.forEach(function (element) {\r\n element.userModules.forEach(function (element2) {\r\n if (element2.mobile == 1) {\r\n mythis.onlySubMenu.push(element2);\r\n }\r\n });\r\n });\r\n }\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { NgModule, NO_ERRORS_SCHEMA, APP_INITIALIZER } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { AppComponent } from './app.component';\r\nimport { MDBBootstrapModulesPro, MDBSpinningPreloader, ToastModule } from 'ng-uikit-pro-standard';\r\n// pages references\r\nimport { APP_ROUTING } from './app.routes';\r\n// Menu\r\n//import { NavbarSidebarComponent } from './shared/navbar-sidebar/navbar-sidebar.component';\r\n// login Module\r\n// Eng Project Module\r\n// Training Module\r\n// FAQ Module\r\n// Help Module\r\n// Home module\r\n// Admin tools Module\r\n// User administration module\r\n\r\n// http service\r\nimport { UserService } from './services/user.service';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS, HttpClient } from '@angular/common/http';\r\nimport { AuthInterceptor } from './auth/auth-interceptor';\r\n\r\nimport { DataService } from \"./shared/data-service/data.service.service\";\r\n\r\n\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { ResponsiveComponent } from './pages/home/responsive/responsive.component'\r\n\r\n\r\nexport function createTranslateLoader(http: HttpClient) {\r\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\r\n}\r\n\r\n// import { EditProjectComponent } from './pages/sales-management/sales-project/edit-project/edit-project.component';\r\n\r\nimport { AppConfigService } from './app-config.service.service';\r\n// devexpress\r\n// tslint:disable-next-line: max-line-length\r\n// import { DxSchedulerModule, DxAccordionModule,DxDataGridComponent, DxSliderModule, DxTagBoxModule, DxDataGridModule, DxCheckBoxModule, DxScrollViewModule,DxAutocompleteModule, DxSchedulerComponent, DxTemplateModule, DxGanttModule, DxDiagramModule, DxDiagramComponent, DxContextMenuModule, DxButtonModule, DxPopupModule, DxTextBoxModule, DxDateBoxModule, DxSelectBoxModule, DxNumberBoxModule, DxRangeSliderModule, DxFormModule, DevExtremeModule } from \"devextreme-angular\";\r\n// import { Service, MovieData, TheatreData, Data } from './services/app.service';\r\nimport { Service, PriorityData, TypeData } from 'src/app/services/app.service';\r\n\r\n\r\nimport { LoadingInterceptor } from './shared/LoadingInterceptor';\r\nimport { ErrorInterceptor } from './shared/ErrorInterceptor';\r\nimport { CurrencyPipe, DatePipe, HashLocationStrategy, LocationStrategy } from '@angular/common';\r\nimport { LoginComponent } from './pages/login/login.component';\r\n\r\nimport { DefaultLayoutComponent } from './shared/default-layout/default-layout.component';\r\n\r\nimport { TranlationConfigModule } from './tranlation-config/tranlation-config.module';\r\nimport { AngularFontAwesomeModule } from 'angular-font-awesome';\r\nimport { MdbWysiwygModule } from 'mdb-wysiwyg';\r\nimport { MdbSortableModule } from 'mdb-sortable';\r\nimport { MdbFileUploadModule } from 'mdb-file-upload';\r\nimport { DevExtremeModule, DxRadioGroupModule, DxSchedulerModule, DxTextBoxModule } from 'devextreme-angular';\r\nimport { MdbGlobalModule } from './shared/mdb-global.module';\r\nimport { NavbarSidebarModule } from './shared/navbar-sidebar/navbar-sidebar.module';\r\nimport { LoginRecoverPasswdComponent } from './pages/login-recover-passwd/login-recover-passwd.component';\r\nimport { LoginRecoverPasswdCWComponent } from './pages/login-recover-passwd-cw/login-recover-passwd-cw.component';\r\n//import { ConfigGridComponent } from './pages/cube-settings/config-grid/config-grid.component';\r\n// import { PartCategoriesComponent } from './pages/inventory/part-categories/part-categories.component';\r\n\r\n// Google Maps\r\nimport { AgmCoreModule } from '@agm/core';\r\n// import { GoogleMapsModule } from '@angular/google-maps';\r\n\r\n// Config map\r\nimport { AppConfiguration } from './config/app-configuration';\r\nimport {JsonAppConfigService} from './config/json-app-config.service';\r\nimport { TruncatePipe } from './custom-pipe/TruncatePipe';\r\nimport { DinamicModalModule } from './shared/dinamic-modal/dinamic-modal.module';\r\n// import { ProductsCartComponent } from './pages/shop/products-cart/products-cart.component';\r\n// import { KbsComponent } from './pages/education/kbs/kbs.component';\r\n//import { CustomerWebinarsComponent } from './pages/cube-settings/customer-webinars/customer-webinars.component';\r\n//import { CompanyNotificationComponent } from './pages/cube-settings/company-notification/company-notification.component';\r\n//import { ReportDesignerComponent } from './shared/report-designer/report-designer.component';\r\n// import { ClientActivationComponent } from './pages/admin-tools/client-activation/client-activation.component';\r\n//import { CubeReleasesComponent } from './pages/admin-tools/cube-releases/cube-releases.component';\r\n// import { ReportViewerComponent } from './shared/report-viewer/report-viewer.component';\r\n//import { ServiceRecommendationsComponent } from './pages/service-management/service-recommendations/service-recommendations.component';\r\n// import { VehiclesComponent } from './pages/cube-settings/vehicles/vehicles.component';\r\nimport { RecaptchaModule } from 'ng-recaptcha';\r\nimport { ConfigureImageSvgComponent } from './pages/admin-tools/configure-image-svg/configure-image-svg.component';\r\nimport { LoginCubeWorksComponent } from './pages/login/login-cubeworks/login-cubeworks.component';\r\nimport { NavBarCubeWorkModule } from './pages/cubeWork/navbar-cubeWork/navbar-cubeWork.module';\r\n\r\nimport { LoginUserTempComponent } from './pages/login/login-usertemp/login-usertemp.component';\r\nimport { CompanyRegistrationComponent } from './pages/login/company-registration/company-registration.component';\r\n// import { CompanyMetricsComponent } from './pages/admin-tools/company-metrics/company-metrics.component';\r\n// import { LicenseManagementComponent } from './pages/user-administration/license-management/license-management.component';\r\n\r\n//import { CardPlansComponent } from './pages/login/card-plans/card-plans.component';\r\n//import { AIConsumptionComponent } from './pages/cube-settings/aiconsumption/aiconsumption.component';\r\n// import { CubeAdvertisementComponent } from './pages/cube-settings/cube-advertisement/cube-advertisement.component';\r\n//import { HomeDuplicateComponent } from './home-duplicate/home-duplicate.component';\r\n//import { CUBEcxDashboardComponent } from './pages/simpleView/cubecx-dashboard/cubecx-dashboard.component';\r\n//import { SimpleViewCommissioningComponent } from './pages/simpleView/simple-view-commissioning/simple-view-commissioning.component';\r\n//import { SimpleViewEstimatingComponent } from './pages/simpleView/simple-view-estimating/simple-view-estimating.component';\r\n//import { CsPortalComponent } from './pages/cs-portal/cs-portal.component';\r\n// import { MachineLearningImagesComponent } from './pages/machine-learning-images/machine-learning-images.component';\r\n// import { BillingCWComponent } from './pages/cubeWork/billing-cw/billing-cw.component';\r\n// import { Myfeed2Component } from './pages/cubeWork/myfeed2/myfeed2.component';\r\n// import { ReviewsComponent } from './pages/cubeWork/reviews/reviews.component';\r\n// import { CompletedJobsComponent } from './pages/cubeWork/completed-jobs/completed-jobs.component';\r\n// import { DashboardTalentsComponent } from './pages/cubeWork/dashboard-talents/dashboard-talents.component';\r\n// import { SendOfferComponent } from './pages/cubeWork/send-offer/send-offer.component';\r\n// import { CubeWorkmessageComponent } from './pages/cubeWork/cube-workmessage/cube-workmessage.component';\r\n// import { ViewJobPostingComponent } from './pages/cubeWork/view-job-posting/view-job-posting.component';\r\n// import { ViewProposalsComponent } from './pages/cubeWork/view-proposals/view-proposals.component';\r\n// import { SubmitProposalComponent } from './pages/cubeWork/submit-proposal/submit-proposal.component';\r\n// import { ChooseSettingsComponent } from './pages/cubeWork/choose-settings/choose-settings.component';\r\n\r\n//import { DashboardBiViewerComponent } from './pages/dashboard/dashboardBi_windows/dashboard-bi-viewer/dashboard-bi-viewer.component';\r\n// import { ApplicantComponent } from './pages/human-resources/applicant/applicant.component';\r\n// import { JobsComponent } from './pages/cubeWork/jobs/jobs.component';\r\n// import { ContractsComponent } from './pages/cubeWork/contracts/contracts.component';\r\n// import { JobPostComponent } from './pages/cubeWork/job-post/job-post.component';\r\n// import { ClientDasboardComponent } from './pages/cubeWork/client-dasboard/client-dasboard.component';\r\n// import { MyFeedComponent } from './pages/cubeWork/my-feed/my-feed.component';\r\n// import { SearchJobComponent } from './pages/cubeWork/search-job/search-job.component';\r\n// import { MyAccountComponent } from './pages/user-administration/my-account/my-account.component';\r\n//import { MyCartComponent } from './pages/shop/my-cart/my-cart.component';\r\n//import { ApplicationsComponent } from './pages/shop/applications/applications.component';\r\n//import { YourOrderComponent } from './pages/shop/your-order/your-order.component';\r\n//import { OrderDetailComponent } from './pages/shop/order-detail/order-detail.component';\r\n//import { OrderComponent } from './pages/shop/order/order.component';\r\n//import { AddNewShippingComponent } from './pages/shop/add-new-shipping/add-new-shipping.component';\r\n// import { ShippingAddressComponent } from './pages/shop/shipping-address/shipping-address.component';\r\n// import { AddNewPaymentComponent } from './pages/shop/add-new-payment/add-new-payment.component';\r\n// import { ProductsDetailsComponent } from './pages/shop/products-details/products-details.component';\r\n// import { MyProjectsComponent } from './pages/my-projects/my-projects.component';\r\n\r\n\r\n\r\nconst appInitializerFn = (appConfig: AppConfigService) => {\r\n return () => {\r\n return appConfig.loadAppConfig();\r\n };\r\n};\r\n\r\nexport function initializerFn(jsonAppConfigService: JsonAppConfigService){\r\n return () => {\r\n return jsonAppConfigService.load();\r\n };\r\n}\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n LoginComponent,\r\n LoginCubeWorksComponent,\r\n LoginUserTempComponent,\r\n CompanyRegistrationComponent,\r\n DefaultLayoutComponent,\r\n LoginRecoverPasswdComponent,\r\n LoginRecoverPasswdCWComponent,\r\n ResponsiveComponent,\r\n // CompanyMetricsComponent,\r\n // LicenseManagementComponent,\r\n //CardPlansComponent,\r\n //AIConsumptionComponent,\r\n // CubeAdvertisementComponent,\r\n //HomeDuplicateComponent,\r\n // CUBEcxDashboardComponent,\r\n //SimpleViewCommissioningComponent,\r\n //SimpleViewEstimatingComponent,\r\n //CsPortalComponent,\r\n // MachineLearningImagesComponent,\r\n // BillingCWComponent,\r\n // Myfeed2Component,\r\n // ReviewsComponent,\r\n // CompletedJobsComponent,\r\n // DashboardTalentsComponent,\r\n // SendOfferComponent,\r\n // CubeWorkmessageComponent,\r\n // ViewJobPostingComponent,\r\n // ViewProposalsComponent,\r\n // SubmitProposalComponent,\r\n // ChooseSettingsComponent,\r\n //DashboardBiViewerComponent,\r\n // ApplicantComponent,\r\n // JobsComponent,\r\n // ContractsComponent,\r\n // JobPostComponent,\r\n // ClientDasboardComponent,\r\n // MyFeedComponent,\r\n // SearchJobComponent,\r\n // MyAccountComponent,\r\n //MyCartComponent,\r\n// ApplicationsComponent,\r\n //YourOrderComponent,\r\n //OrderDetailComponent,\r\n // OrderComponent,\r\n // AddNewShippingComponent,\r\n // ShippingAddressComponent,\r\n // AddNewPaymentComponent,\r\n // MyProjectsComponent,\r\n // ProductsDetailsComponent,\r\n // ProductsCartComponent,\r\n // KbsComponent,\r\n //CustomerWebinarsComponent,\r\n //CompanyNotificationComponent,\r\n //ReportDesignerComponent,\r\n // ClientActivationComponent,\r\n // CubeReleasesComponent,\r\n // ReportViewerComponent\r\n //ServiceRecommendationsComponent\r\n // VehiclesComponent,\r\n // GoogleMapsModule\r\n //ConfigGridComponent\r\n // PartCategoriesComponent\r\n ],\r\n imports: [\r\n // NgbModule.forRoot(),\r\n NavbarSidebarModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n HttpClientModule,\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n MdbGlobalModule,\r\n DxRadioGroupModule,\r\n NavBarCubeWorkModule,\r\n ToastModule.forRoot({\r\n positionClass: 'md-toast-bottom-left',\r\n }),\r\n TranlationConfigModule.forRoot(),\r\n DinamicModalModule,\r\n APP_ROUTING,\r\n // GoogleMapsModule,\r\n\r\n AgmCoreModule.forRoot({\r\n apiKey: 'AIzaSyD-LC1IRlirpLm8n6GjaCLTsR9cTJ_NT68',\r\n libraries: ['places']\r\n }),\r\n\r\n RecaptchaModule\r\n ],\r\n providers: [\r\n CurrencyPipe,\r\n DatePipe,\r\n TruncatePipe,\r\n // TranslatePipe,\r\n AppConfigService,\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: appInitializerFn,\r\n multi: true,\r\n deps: [AppConfigService]\r\n },\r\n MDBSpinningPreloader,\r\n DataService,\r\n // Service, MovieData, TheatreData, Data,\r\n Service, PriorityData, TypeData,\r\n {\r\n provide: LocationStrategy,\r\n useClass: HashLocationStrategy\r\n },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: LoadingInterceptor,\r\n multi: true,\r\n },\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: ErrorInterceptor,\r\n multi: true,\r\n },\r\n UserService,\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: AuthInterceptor,\r\n multi: true\r\n },\r\n {\r\n provide: AppConfiguration,\r\n deps: [HttpClient],\r\n useExisting: JsonAppConfigService\r\n },\r\n\r\n {\r\n provide: APP_INITIALIZER,\r\n multi: true,\r\n deps: [JsonAppConfigService],\r\n useFactory: initializerFn\r\n }],\r\n bootstrap: [AppComponent],\r\n schemas: [NO_ERRORS_SCHEMA]\r\n})\r\nexport class AppModule { }\r\n","import { RouterModule, Routes } from '@angular/router';\r\nimport { LoginComponent } from './pages/login/login.component';\r\nimport { HomeComponent } from './pages/home/home.component';\r\nimport { ResponsiveComponent } from './pages/home/responsive/responsive.component'\r\n\r\nimport { LoginRecoverPasswdComponent } from './pages/login-recover-passwd/login-recover-passwd.component';\r\nimport { LoginRecoverPasswdCWComponent } from './pages/login-recover-passwd-cw/login-recover-passwd-cw.component';\r\n\r\nimport { LoginCubeWorksComponent } from './pages/login/login-cubeworks/login-cubeworks.component';\r\nimport { LoginUserTempComponent } from './pages/login/login-usertemp/login-usertemp.component';\r\nimport { MachineLearningImagesComponent } from './pages/machine-learning-images/machine-learning-images.component';\r\n// import { EditProjectComponent } from './pages/sales-management/sales-project/edit-project/edit-project.component';\r\n// import { DashboardCreateComponent } from './pages/dashboard/dashboard-create/dashboard-create.component'\r\n// import { DashboardWidgetComponent } from './pages/dashboard/dashboard-widget/dashboard-widget.component'\r\nimport { WorkFlowTablesModule } from './pages/cubeWork/workflow-table/workflow-table.module';\r\nimport { CompanyRegistrationComponent } from './pages/login/company-registration/company-registration.component';\r\n\r\nconst APP_ROUTES: Routes = [\r\n { path: '', component: LoginComponent },\r\n { path: '', redirectTo: '/login', pathMatch: 'full' },\r\n { path: 'login', component: LoginComponent },\r\n { path: 'logincubeworks', component: LoginCubeWorksComponent },\r\n { path: 'loginUserTemp', component: LoginUserTempComponent },\r\n { path: 'CompanyRegistration', component: CompanyRegistrationComponent },\r\n { path: 'actPass', component: ResponsiveComponent },\r\n { path: 'RecoverPassword', component: LoginRecoverPasswdComponent },\r\n { path: 'RecoverPasswordCW', component: LoginRecoverPasswdCWComponent },\r\n // { path: 'imagesIA', component: MachineLearningImagesComponent},\r\n {\r\n path: 'home',\r\n loadChildren: () => import('./pages/home/home.module').then(m => m.HomeModule)\r\n },\r\n {\r\n path: 'dashboard',\r\n loadChildren: () => import('./shared/shared-dashboard/dashboard.module').then(m => m.DashboardModule)\r\n },\r\n {\r\n path: 'salesProject',\r\n loadChildren: () => import('./pages/sales-management/sales-project/sales-project.module').then(m => m.SalesProjectModule)\r\n },\r\n {\r\n path: 'pipeline',\r\n loadChildren: () => import('./pages/sales-management/pipeline/pipeline.module').then(m => m.PipelineModule)\r\n },\r\n {\r\n path: 'salesLeads',\r\n loadChildren: () => import('./pages/sales-management/sales-leads/sales-lead.module').then(m => m.SalesLeadModule)\r\n },\r\n {\r\n path: 'contacts',\r\n loadChildren: () => import('./pages/sales-management/contacts/contacts.module').then(m => m.ContactsModule)\r\n },\r\n {\r\n path: 'comunicationboard',\r\n loadChildren: () => import('./pages/sales-management/comunication-board/comunication-board.module').then(m => m.ComunicationBoardModule)\r\n },\r\n {\r\n path: 'customers',\r\n loadChildren: () => import('./pages/sales-management/customers/customers.module').then(m => m.CustomersModule)\r\n },\r\n {\r\n path: 'employeeActivity',\r\n loadChildren: () => import('./pages/sales-management/employee-activities/employee-activities.module').then(m => m.EmployeeActivitiesModule)\r\n },\r\n {\r\n path: 'salesanalysis',\r\n loadChildren: () => import('./pages/sales-management/sales-analysis/sales-analysis.module').then(m => m.SalesAnalysisModule)\r\n },\r\n {\r\n path: 'salesSite',\r\n loadChildren: () => import('./pages/sales-management/sales-site/sales-site.module').then(m => m.SalesSiteModule)\r\n },\r\n {\r\n path: 'NewEstimates',\r\n loadChildren: () => import('./pages/estimationNew/estimation.module').then(m => m.EstimationModule)\r\n },\r\n {\r\n path: 'Estimates',\r\n loadChildren: () => import('./pages/estimation/estimation.module').then(m => m.EstimationModule)\r\n },\r\n {\r\n path: 'EstimatesServiceContract',\r\n loadChildren: () => import('./pages/service-contract/service-contract.module').then(m => m.ServiceContractModule)\r\n },\r\n {\r\n path: 'taskManagement',\r\n loadChildren: './pages/project-management/task-management/task-management.module#TaskManagementModule'\r\n },\r\n {\r\n path: 'ganttScheduler',\r\n loadChildren: './pages/project-management/gantt-scheduler/gantt-scheduler.module#GanttSchedulerProjectModule'\r\n },\r\n {\r\n path: 'swo',\r\n loadChildren: './pages/service-management/service-work-order/service-work-order.module#ServiceWorkOrderModule'\r\n },\r\n {\r\n path: 'projectAnalysis',\r\n loadChildren: './pages/project-management/project-analysis/project-analysis.module#ProjectAnalysisModule'\r\n },\r\n {\r\n path: 'openRif',\r\n loadChildren: './pages/project-management/open-rif/open-rif.module#OpenRifModule'\r\n },\r\n {\r\n path: 'openPunchList',\r\n loadChildren: './pages/project-management/open-punch-list/open-punch-list.module#OpenPunchListModule'\r\n },\r\n {\r\n path: 'projects',\r\n loadChildren: './pages/project-management/projects/projects.module#ProjectsModule'\r\n },\r\n {\r\n path: 'myprojects',\r\n loadChildren: './pages/my-projects/my-projects.module#MyProjectsModule'\r\n },\r\n {\r\n path: 'commissioning',\r\n loadChildren: './pages/engineering/commissioning/commissioning.module#CommissioningModule'\r\n },\r\n {\r\n path: 'systemLibrary',\r\n loadChildren: './pages/engineering/system-library/system-library.module#SystemLibraryModule'\r\n },\r\n {\r\n path: 'myTrainings',\r\n loadChildren: './pages/home/my-trainings/my-trainings.module#MyTrainingsModule'\r\n },\r\n {\r\n path: 'pmUtility',\r\n loadChildren: './pages/service-management/pm-utility/pm-utility.module#PmUtilityModule'\r\n },\r\n {\r\n path: 'serviceSites',\r\n loadChildren: './pages/service-management/service-sites/service-sites.module#ServiceSitesModule'\r\n },\r\n {\r\n path: 'saleservicesites',\r\n loadChildren: './pages/service-management/sales-service-sites/sales-service-sites.module#ServiceSaleSitesModule'\r\n },\r\n {\r\n path: 'saleserviceasset',\r\n loadChildren: './pages/service-management/sales-service-assets/sales-service-sites.module#ServiceSaleAssetsModule'\r\n },\r\n {\r\n path: 'serviceContracts',\r\n loadChildren: './pages/service-management/service-contracts/service-contracts.module#ServiceContractsModule'\r\n },\r\n {\r\n path: 'serviceContractsPlus',\r\n loadChildren: './pages/service-management/service-contracts-plus/service-contracts-plus.module#ServiceContractsPlusModule'\r\n },\r\n // {\r\n // path: 'editServiceContract',\r\n // loadChildren: './pages/service-management/edit-service-contract/edit.service-contract.module#EditServiceContractModule'\r\n // },\r\n {\r\n path: 'serviceQuotes',\r\n loadChildren: './pages/service-management/service-quotes/service-quotes.module#ServiceQuotesModule'\r\n },\r\n {\r\n path: 'businessStrategy',\r\n loadChildren: './pages/management/business-strategy/business-strategy.module#BusinessStrategyModule'\r\n },\r\n {\r\n path: 'timeSheet',\r\n loadChildren: './pages/human-resources/time-sheet/time-sheet.module#TimeSheetModule'\r\n },\r\n {\r\n path: 'runPayroll',\r\n loadChildren: './pages/human-resources/run-payroll/run-payroll.module#RunPayrollModule'\r\n },\r\n {\r\n path: 'employeeDocuments',\r\n loadChildren: './pages/human-resources/employee-documents/employee-documents.module#EmployeeDocumentsModule'\r\n },\r\n {\r\n path: 'forms',\r\n loadChildren: './pages/human-resources/forms/forms.module#FormsModule'\r\n },\r\n {\r\n path: 'projectLaborAnalysis',\r\n loadChildren: './pages/project-management/project-labor-analysis/project-labor-analysis.module#ProjectLaborAnalysisModule'\r\n },\r\n {\r\n path: 'projectLaborProjection',\r\n loadChildren: './pages/project-management/project-labor-projection/project-labor-projection.module#ProjectLaborProjectionModule'\r\n },\r\n {\r\n path: 'projectRevenueProjection',\r\n loadChildren: './pages/project-management/project-revenue-projection/project-revenue-projection.module#ProjectRevenueProjectionModule'\r\n },\r\n {\r\n path: 'employees',\r\n loadChildren: './pages/human-resources/employees/employees.module#EmployeesModule'\r\n },\r\n {\r\n path: 'myTimeSheet',\r\n loadChildren: './pages/home/my-time-sheet/my-time-sheet.module#MyTimeSheetModule'\r\n },\r\n {\r\n path: 'Training',\r\n loadChildren: () => import('./pages/training-video/training-video.module').then(m => m.TrainingVideoModule)\r\n },\r\n {\r\n path: 'myExpenseReports',\r\n loadChildren: './pages/home/my-expense-reports/my-expense-reports.module#MyExpenseReportsModule'\r\n },\r\n {\r\n path: 'expenseveReport',\r\n loadChildren: './pages/human-resources/expense-report/expense-report.module#ExpenseReportModule'\r\n },\r\n {\r\n path: 'adminComponent',\r\n loadChildren: './pages/user-administration/administration-component-dashboard/administration-component-dashboard.module#AdministrationComponentDashboardModule'\r\n },\r\n {\r\n path: 'manageUsers',\r\n loadChildren: './pages/user-administration/manage-users/manage-users.module#ManageUsersModule'\r\n },\r\n {\r\n path: 'externalUsers',\r\n loadChildren: './pages/user-administration/external-users/external-users.module#ExternalUsersModule'\r\n },\r\n {\r\n path: 'accountReceivable',\r\n loadChildren: './pages/accounting/account-receivable/account-receivable.module#AccountReceivableModule'\r\n },\r\n {\r\n path: 'purchaseOrder',\r\n loadChildren: './pages/inventory/purchase-order/purchase-order.module#PurchaseOrderModule'\r\n },\r\n {\r\n path: 'shipItems',\r\n loadChildren: './pages/inventory/ship-items/ship-items.module#ShipItemsModule'\r\n },\r\n {\r\n path: 'parts1',\r\n loadChildren: './pages/inventory/parts/parts.module#PartsModule'\r\n },\r\n {\r\n path: 'parts',\r\n loadChildren: './pages/inventory/parts/DinamicGridPart/parts.module#PartsModule'\r\n },\r\n {\r\n path: 'subcontractor',\r\n loadChildren: './pages/inventory/subcontractor/subcontractor.module#SubcontractorModule'\r\n },\r\n {\r\n path: 'deltaWorld',\r\n loadChildren: './pages/engineering/delta-world/delta-world.module#DeltaWorldModule'\r\n },\r\n {\r\n path: 'programmer',\r\n loadChildren: './pages/engineering/programmer/programmer.module#ProgrammerModule'\r\n },\r\n {\r\n path: 'prevailingWages',\r\n loadChildren: './pages/human-resources/prevailing-wages/prevailing-wages.module#PrevailingWagesModule'\r\n },\r\n {\r\n path: 'salesCommission',\r\n loadChildren: './pages/human-resources/sales-commissioning/sales-commissioning.module#SalesCommissioningModule'\r\n },\r\n {\r\n path: 'myTimeSheet',\r\n loadChildren: './pages/home/my-time-sheet/my-time-sheet.module#MyTimeSheetModule'\r\n },\r\n {\r\n path: 'myTimeSheetplus',\r\n loadChildren: './pages/home/my-time-sheet-plus/my-time-sheet.module#MyTimeSheetPlusModule'\r\n },\r\n {\r\n path: 'myCommissions',\r\n loadChildren: './pages/home/my-commissions/my-commissions.module#MyCommissionsModule'\r\n },\r\n {\r\n path: 'mySchedule',\r\n // loadChildren: () => import('./pages/home/my-schedule/my-schedule.module').then(m => m.MyScheduleModule)\r\n loadChildren: './pages/home/my-schedule/my-schedule.module#MyScheduleModule'\r\n // loadChildren: './pages/project-management/task-management/task-management.module#TaskManagementModule'\r\n },\r\n {\r\n path: 'newActivity',\r\n loadChildren: './pages/home/new-activity/new-activity.module#NewActivityModule'\r\n },\r\n {\r\n path: 'myInformation',\r\n loadChildren: './pages/home/my-information/my-information.module#MyInformationModule'\r\n },\r\n {\r\n path: 'systemComponent',\r\n loadChildren: './pages/engineering/system-components/system-components.module#SystemComponentsModule'\r\n },\r\n {\r\n path: 'vendors',\r\n loadChildren: './pages/inventory/vendors/vendors.module#VendorsModule'\r\n },\r\n {\r\n path: 'reconcile',\r\n loadChildren: './pages/inventory/reconcile/reconcile.module#ReconcileModule'\r\n },\r\n {\r\n path: 'rma',\r\n loadChildren: './pages/inventory/rma/rma.module#RmaModule'\r\n },\r\n {\r\n path: 'serviceManagement',\r\n loadChildren: './pages/service-management/service-management/service-management.module#ServiceManagementModule'\r\n },\r\n {\r\n path: 'serviceReports',\r\n loadChildren: './pages/service-management/service-reports/service-reports.module#ServiceReportsModule'\r\n },\r\n {\r\n path: 'departments',\r\n loadChildren: './pages/management/departments/departments.module#DepartmentsModule'\r\n },\r\n {\r\n path: 'jobDescriptions',\r\n loadChildren: './pages/management/job-description/job-description.module#JobDescriptionModule'\r\n },\r\n {\r\n path: 'materialRequest',\r\n loadChildren: './pages/inventory/material-request/material-request.module#MaterialRequestModule'\r\n },\r\n {\r\n path: 'materialrequestplus',\r\n loadChildren: './pages/inventory/material-request-plus/material-request.module#MaterialRequestModule'\r\n },\r\n \r\n {\r\n path: 'inventory',\r\n loadChildren: './pages/inventory/inventory/inventory.module#InventoryModule'\r\n },\r\n {\r\n path: 'trainings',\r\n loadChildren: './pages/education/trainings/trainings.module#TrainingsModule'\r\n },\r\n {\r\n path: 'editTraining',\r\n loadChildren: './pages/education/trainings/edit-training/edit-training.module#EditTrainingModule'\r\n },\r\n {\r\n path: 'creditManagement',\r\n loadChildren: './pages/accounting/credit-management/credit-management.module#CreditManagementModule'\r\n },\r\n {\r\n path: 'importCenter',\r\n loadChildren: './pages/cube-settings/import-center/import-center.module#ImportCenterModule'\r\n },\r\n {\r\n path: 'updateCenter',\r\n loadChildren: './pages/cube-settings/update-center/update-center.module#UpdateCenterModule'\r\n },\r\n {\r\n path: 'utilityTables',\r\n loadChildren: './pages/cube-settings/utility-tables/utility-tables.module#UtilityTablesModule'\r\n },\r\n {\r\n path: 'salesForecast',\r\n loadChildren: './pages/sales-management/sales-forecast/sales-forecast.module#SalesForecastModule'\r\n },\r\n {\r\n path: 'salesReports',\r\n loadChildren: './pages/sales-management/sales-reports/sales-reports.module#SalesReportsModule'\r\n },\r\n {\r\n path: 'reports/:departmentid',\r\n loadChildren: './shared/shared-reports/shared-reports.module#SharedReportsModule'\r\n },\r\n {\r\n path: 'marketAnalysis',\r\n loadChildren: './pages/sales-management/market-analysis/market-analysis.module#MarketAnalysisModule'\r\n },\r\n {\r\n path: 'marketingCampaign',\r\n loadChildren: './pages/sales-management/marketing-campaign/marketing-campaign.module#MarketingCampaignModule'\r\n },\r\n {\r\n path: 'integration',\r\n loadChildren: './pages/cube-settings/integration/integration.module#IntegrationModule'\r\n },\r\n {\r\n path: 'editProject',\r\n loadChildren: './pages/project-management/edit-project/edit-project.module#EditProjectModule'\r\n },\r\n {\r\n path: 'myEditProject',\r\n loadChildren: './pages/home/my-edit-project/my-edit-project.module#MyEditProjectModule'\r\n },\r\n {\r\n path: 'editServiceContract',\r\n loadChildren: './pages/service-management/edit-service-contract/edit-service-contract.module#EditServiceContractModule'\r\n },\r\n {\r\n path: 'editServiceContractPlus',\r\n loadChildren: './pages/service-management/edit-service-contract-plus/edit-service-contract-plus.module#EditServiceContractPlusModule'\r\n },\r\n {\r\n path: 'editRequisition',\r\n loadChildren: './pages/project-management/edit-requisition/edit-requisition.module#EditRequisitionModule'\r\n },\r\n {\r\n path: 'partCategories',\r\n loadChildren: './pages/inventory/part-categories/part-categories.module#PartCategoriesModule'\r\n },\r\n {\r\n path: 'editTechView',\r\n loadChildren: './pages/engineering/tech-view-delta/edit-tech-view/edit-tech-view.module#EditTechViewModule'\r\n },\r\n {\r\n path: 'configGrid',\r\n loadChildren: './pages/cube-settings/config-grid/config-grid.module#ConfigGridModule'\r\n },\r\n {\r\n path: 'services-map',\r\n loadChildren:'./pages/service-management/services-map/map-service/services-map.module#ServicesMapModule'\r\n },\r\n {\r\n path: 'editIntegration',\r\n loadChildren: './pages/cube-settings/integration/edit-integration/edit-integration.module#EditIntegrationModule'\r\n },\r\n {\r\n path: 'biAdminComponent',\r\n loadChildren: './pages/cube-settings/integration/biadmin-component/biadmin-component.module#BiAdminComponentModule'\r\n }, \r\n {\r\n path: 'editEstimate',\r\n loadChildren: './pages/estimation/edit-estimate/edit-estimate.module#EditEstimateModule'\r\n },\r\n {\r\n path: 'cubeMenu',\r\n loadChildren: './pages/admin-tools/cube-menu/cube-menu.module#CubeMenuModule'\r\n },\r\n {\r\n path: 'configureImageSVG',\r\n loadChildren: './pages/admin-tools/configure-image-svg/configure-image-svg.module#ConfigureImageSvgModule'\r\n },\r\n\r\n // {\r\n // path: 'workFlowSummary',\r\n // loadChildren: './pages/project-management/edit/work-flow-summary.module#WorkFlowSummaryModule'\r\n // },\r\n {\r\n path: 'workFlowSummary',\r\n loadChildren: './pages/project-management/work-flow-summary/work-flow-summary.module#WorkFlowSummaryModule'\r\n },\r\n {\r\n path: 'editOpenPunchList',\r\n loadChildren: './pages/project-management/open-punch-list/edit-open-punch-list/edit-open-punch-list.module#EditOpenPunchListModule'\r\n },\r\n {\r\n path: 'editRif',\r\n loadChildren: './pages/project-management/open-rif/edit-open-rif/edit-open-rif.module#EditOpenRifModule'\r\n },\r\n {\r\n path: 'editChangeOrder',\r\n loadChildren: './pages/project-management/edit-project/edit-change-order/edit-change-order.module#EditChangeOrderModule'\r\n },\r\n {\r\n path: 'vehicles',\r\n loadChildren: './pages/cube-settings/vehicles/vehicles.module#VehiclesModule'\r\n },\r\n {\r\n path: 'editVehicles',\r\n loadChildren: './pages/cube-settings/vehicles/edit-vehicles/edit-vehicles.module#EditVehiclesModule'\r\n },\r\n {\r\n path: 'recommendations',\r\n loadChildren: './pages/service-management/service-recommendations/service-recommendations.module#ServiceRecommendationsModule'\r\n },\r\n {\r\n path: 'home',\r\n loadChildren: './pages/home/home.module#HomeModule'\r\n },\r\n {\r\n path: 'engUtility',\r\n loadChildren: './pages/engineering/eng-utility/eng-utility.module#EngUtilityModule'\r\n },\r\n {\r\n path: 'groups/:id',\r\n loadChildren: './pages/user-administration/manage-users/groups/groups.module#GroupsModule'\r\n },\r\n {\r\n path: 'reportviewer',\r\n loadChildren: 'src/app/shared/report-viewer/report-viewer.module#ReportViewerModule'\r\n },\r\n {\r\n path: 'findReplace',\r\n loadChildren: './pages/engineering/system-components/find-and-replace/find-and-replace.module#FindAndReplaceModule'\r\n },\r\n {\r\n path: 'unlockUser',\r\n loadChildren: './pages/admin-tools/unlock-user/unlock-user.module#UnlockUserModule'\r\n },\r\n {\r\n path: 'cubeReleases',\r\n loadChildren: './pages/admin-tools/cube-releases/cube-releases.module#CubeReleasesModule'\r\n },\r\n {\r\n path: 'clientActivation',\r\n loadChildren: './pages/admin-tools/client-activation/client-activation.module#ClientActivationModule'\r\n },\r\n {\r\n path: 'responsive',\r\n loadChildren: './pages/home/responsive/responsive.module#ResponsiveModule'\r\n },\r\n {\r\n path: 'reportdesigner',\r\n loadChildren: 'src/app/shared/report-designer/report-designer.module#ReportDesignerModule'\r\n },\r\n {\r\n path: 'plans',\r\n loadChildren: './pages/login/payment/payment.module#PaymentModule'\r\n },\r\n {\r\n path: 'cartPlans',\r\n loadChildren: './pages/login/card-plans/card-plans.module#CardPlansModule'\r\n },\r\n {\r\n path: 'creditcard',\r\n loadChildren: './pages/login/creditcard/creditcard.module#CreditCardModule'\r\n },\r\n {\r\n path: 'companyNotification',\r\n loadChildren: './pages/cube-settings/company-notification/company-notification.module#CompanyNotificationModule'\r\n },\r\n {\r\n path: 'myWebinars',\r\n loadChildren: 'src/app/pages/start-here/my-webinars/my-webinars.module#MyWebinarsModule'\r\n },\r\n {\r\n path: 'customerWebinars',\r\n loadChildren: 'src/app/pages/cube-settings/customer-webinars/customer-webinars.module#CustomerWebinarsModule'\r\n },\r\n {\r\n path: 'taskCategory',\r\n loadChildren: 'src/app/pages/cube-settings/task-category-grid/task-category-grid.module#TaskCategoryGridModule'\r\n },\r\n {\r\n path: 'newAccount',\r\n loadChildren: 'src/app/pages/login-new-account/login-new-account.module#LoginNewAccountModule'\r\n },\r\n {\r\n path: 'editTransfers',\r\n loadChildren: 'src/app/pages/inventory/inventory/edit-transfers/edit-transfers.module#EditTransfersModule'\r\n },\r\n {\r\n path: 'editLocationGroup',\r\n loadChildren: 'src/app/pages/inventory/inventory/edit-location-group/edit-location-group.module#EditLocationGroupModule'\r\n },\r\n {\r\n path: 'editRMA',\r\n loadChildren: 'src/app/pages/inventory/rma/edit-rma/edit-rma.module#EditRmaModule'\r\n },\r\n {\r\n path: 'editCredit',\r\n loadChildren: 'src/app/pages/accounting/credit-management/edit-credit-management/edit-credit-management.module#EditCreditManagementModule'\r\n },\r\n {\r\n path: 'kbs',\r\n loadChildren: 'src/app/pages/education/kbs/kbs.module#KbsModule'\r\n },\r\n {\r\n path: 'editkbas',\r\n loadChildren: 'src/app/pages/education/kbs/edit-kbas/edit-kbas.module#EditKBAsModule'\r\n },\r\n {\r\n path: 'productsCart',\r\n loadChildren: 'src/app/pages/shop/products-cart/products-cart.module#ProductsCartModule'\r\n },\r\n {\r\n path: 'productsCategory',\r\n loadChildren: 'src/app/pages/shop/products-category/products-category.module#ProductsCategoryModule'\r\n },\r\n {\r\n path: 'externaluser',\r\n loadChildren: './pages/login/register-external-user/register-externa-user.module#RegisterExternaUserModule'\r\n },\r\n {\r\n path: 'clientuser',\r\n loadChildren: './pages/login/create-client-user/register-client-user.module#RegisterClientUserModule'\r\n },\r\n {\r\n path: 'createuserCW',\r\n loadChildren: './pages/login/create-cubeworks-user/register-cubeworks-user.module#RegisterCubeWorksUserModule'\r\n },\r\n {\r\n path: 'productsDetails',\r\n loadChildren: 'src/app/pages/shop/products-details/products-details.module#ProductsDetailsModule'\r\n },\r\n {\r\n path: 'registerCompany',\r\n loadChildren: './pages/login/register-external-user/register-externa-user.module#RegisterExternaUserModule'\r\n },\r\n // {\r\n // path: 'companyRegistration',\r\n // loadChildren: './pages/login/company-registration/company-registration.module#CompanyRegistrationModule'\r\n // },\r\n {\r\n path: 'paymentCart',\r\n loadChildren: 'src/app/pages/shop/payment-information/payment-information.module#PaymentInformationModule'\r\n },\r\n {\r\n path: 'newPayment',\r\n loadChildren: 'src/app/pages/shop/add-new-payment/add-new-payment.module#AddNewPaymentModule'\r\n },\r\n {\r\n path: 'shippingAddress',\r\n loadChildren: 'src/app/pages/shop/shipping-address/shipping-address.module#ShippingAddressModule'\r\n },\r\n {\r\n path: 'newShippingAddress',\r\n loadChildren: 'src/app/pages/shop/add-new-shipping/add-new-shipping.module#AddNewShippingModule'\r\n },\r\n {\r\n path: 'order',\r\n loadChildren: 'src/app/pages/shop/order/order.module#OrderModule'\r\n },\r\n {\r\n path: 'orderDetail',\r\n loadChildren: 'src/app/pages/shop/order-detail/order-detail.module#OrderDetailModule'\r\n },\r\n {\r\n path: 'applications',\r\n loadChildren: 'src/app/pages/shop/applications/applications.module#ApplicationsModule'\r\n },\r\n {\r\n path: 'AIShop',\r\n loadChildren: 'src/app/pages/shop/aiestimateshop/aiestimateshop.module#AIestimateShopModule'\r\n }, \r\n {\r\n path: 'yourOrder',\r\n loadChildren: 'src/app/pages/shop/your-order/your-order.module#YourOrderModule'\r\n },\r\n {\r\n path: 'myCart',\r\n loadChildren: 'src/app/pages/shop/my-cart/my-cart.module#MyCartModule'\r\n },\r\n {\r\n path: 'editExpenseReports',\r\n loadChildren: './pages/home/my-expense-reports/edit-expense-reports/edit-expense-reports.module#EditExpenseReportsModule'\r\n },\r\n {\r\n path: 'Report',\r\n loadChildren: './pages/grid-reports/grid-reports.module#GridReportsModule'\r\n },\r\n {\r\n path: 'editExpenseReport',\r\n loadChildren: './pages/human-resources/expense-report/edit-expense-report/edit-expense-report.module#EditExpenseReportModule'\r\n },\r\n {\r\n path: 'systemlog',\r\n loadChildren: './pages/admin-tools/system-log/system-log.module#SystemLogModule'\r\n },\r\n {\r\n path: 'projectpart',\r\n loadChildren: './pages/project-management/projectpart/projectsparts.module#ProjectsPartsModule'\r\n },\r\n {\r\n path: 'reports',\r\n loadChildren: 'src/app/shared/reports/reports.module#ReportsModule'\r\n },\r\n {\r\n path: 'my-account',\r\n loadChildren: 'src/app/pages/user-administration/my-account/my-account.module#MyAccountModule'\r\n },\r\n {\r\n path: 'editPayment',\r\n loadChildren: 'src/app/pages/user-administration/my-account/edit-payment-method/edit-payment-method.module#EditPaymentMethodModule'\r\n },\r\n {\r\n path: 'getMyToken',\r\n loadChildren: 'src/app/pages/user-administration/gettoken/gettoken.module#GettokenModule'\r\n },\r\n {\r\n path: 'gantt',\r\n loadChildren: 'src/app/pages/gantt-task/gantt.module#GanttModule'\r\n },\r\n {\r\n path: 'service-gantt',\r\n loadChildren: 'src/app/pages/gantt-service/gantt-service.module#GanttServiceModule'\r\n },\r\n\r\n //cube work\r\n {\r\n path: 'searchJobs',\r\n loadChildren: 'src/app/pages/cubeWork/search-job/search-job.module#SearchJobModule'\r\n },\r\n\r\n {\r\n path: 'searchJobsNew',\r\n loadChildren: 'src/app/pages/cubeWork/search-job-new/search-job-new.module#SearchJobNewModule'\r\n },\r\n\r\n {\r\n path: 'myFeed',\r\n loadChildren: 'src/app/pages/cubeWork/my-feed/my-feed.module#MyFeedModule'\r\n },\r\n {\r\n path: 'myFeed2',\r\n loadChildren: 'src/app/pages/cubeWork/myfeed2/myfeed2.module#Myfeed2Module'\r\n },\r\n {\r\n path: 'clientDashboard',\r\n loadChildren: 'src/app/pages/cubeWork/client-dasboard/client-dasboard.module#ClientDasboardModule'\r\n },\r\n {\r\n path: 'jobPost',\r\n loadChildren: 'src/app/pages/cubeWork/job-post/job-post.module#JobPostModule'\r\n },\r\n {\r\n path: 'contracts',\r\n loadChildren: 'src/app/pages/cubeWork/contracts/contracts.module#ContractsModule'\r\n },\r\n {\r\n path: 'jobs',\r\n loadChildren: 'src/app/pages/cubeWork/jobs/jobs.module#JobsModule'\r\n },\r\n {\r\n path: 'reviewPost',\r\n loadChildren: 'src/app/pages/cubeWork/review-post/review-post.module#ReviewPostModule'\r\n },\r\n {\r\n path: 'reportsWork',\r\n loadChildren: 'src/app/pages/cubeWork/reports-work-cube/reports-work-cube.module#ReportsWorkCubeModule'\r\n },\r\n {\r\n path: 'settings',\r\n loadChildren: 'src/app/pages/cubeWork/settings-cube-work/settings-cube-work.module#SettingsCubeWorkModule'\r\n },\r\n {\r\n path: 'profileTalent',\r\n loadChildren: 'src/app/pages/cubeWork/profile-talent/profile-talent.module#ProfileTalentModule'\r\n },\r\n {\r\n path: 'myProposals',\r\n loadChildren: 'src/app/pages/cubeWork/my-proposals/my-proposals.module#MyProposalsModule'\r\n },\r\n {\r\n path: 'findWork',\r\n loadChildren: 'src/app/pages/cubeWork/find-work/find-work.module#FindWorkModule'\r\n },\r\n {\r\n path: 'offerView',\r\n loadChildren: 'src/app/pages/cubeWork/offer-view/offer-view.module#OfferViewModule'\r\n },\r\n {\r\n path: 'detailJobCube',\r\n loadChildren: 'src/app/pages/cubeWork/detail-job/detail-job.module#DetailJobModule'\r\n },\r\n {\r\n path: 'myJobs',\r\n loadChildren: 'src/app/pages/cubeWork/my-jobs/my-jobs.module#MyJobsModule'\r\n },\r\n {\r\n path: 'detailsJobs',\r\n loadChildren: 'src/app/pages/cubeWork/my-jobs-details/my-jobs-details.module#MyJobsDetailsModule'\r\n },\r\n {\r\n path: 'detailsJobsTalent',\r\n loadChildren: 'src/app/pages/cubeWork/my-jobs-details-talent/my-jobs-details.module#MyJobsDetailsModule'\r\n },\r\n {\r\n path: 'cwUtility',\r\n loadChildren: 'src/app/pages/cubeWork/cw-utility-tables/cw-utility-tables.module#CWUtilityTablesModule'\r\n },\r\n\r\n {\r\n path: 'aiSupport',\r\n loadChildren: 'src/app/pages/cubeWork/ai-support/ai-support-tables.module#AISupportTablesModule'\r\n },\r\n // {\r\n // path: 'workflowUtility',\r\n // loadChildren: 'src/app/pages/cubeWork/workflow-table/workflow-table.module#workflow-table.module'\r\n // },\r\n\r\n {\r\n path: 'NotificationTemplateEmail',\r\n loadChildren: () => import('./pages/cubeWork/workflow-table/workflow-table.module').then(m => m.WorkFlowTablesModule)\r\n },\r\n\r\n {\r\n path: 'chooseSettings',\r\n loadChildren: 'src/app/pages/cubeWork/choose-settings/choose-settings.module#ChooseSettingsModule'\r\n },\r\n {\r\n path: 'chooseResource',\r\n loadChildren: 'src/app/pages/admin-tools/choose-resource/choose-resource.module#ChooseResourceModule'\r\n },\r\n {\r\n path: 'submitProposal',\r\n loadChildren: 'src/app/pages/cubeWork/submit-proposal/submit-proposal.module#SubmitProposalModule'\r\n },\r\n {\r\n path: 'viewProposal',\r\n loadChildren: 'src/app/pages/cubeWork/view-proposals/view-proposals.module#ViewProposalsModule'\r\n },\r\n {\r\n path: 'viewJobPosting',\r\n loadChildren: 'src/app/pages/cubeWork/view-job-posting/view-job-posting.module#ViewJobPostingModule'\r\n },\r\n {\r\n path: 'sendanOffer',\r\n loadChildren: 'src/app/pages/cubeWork/send-offer/send-offer.module#SendOfferModule'\r\n },\r\n {\r\n path: 'message',\r\n loadChildren: 'src/app/pages/cubeWork/cube-workmessage/cube-workmessage.module#CubeWorkmessageModule'\r\n },\r\n {\r\n path: 'dashboardTalents',\r\n loadChildren: 'src/app/pages/cubeWork/dashboard-talents/dashboard-talents.module#DashboardTalentsModule'\r\n },\r\n {\r\n path: 'completedJobs',\r\n loadChildren: 'src/app/pages/cubeWork/completed-jobs/completed-jobs.module#CompletedJobsModule'\r\n },\r\n {\r\n path: 'reviews',\r\n loadChildren: 'src/app/pages/cubeWork/reviews/reviews.module#ReviewsModule'\r\n },\r\n {\r\n path: 'BillingCW',\r\n loadChildren: './pages/cubeWork/billing-cw/billing-cw.module#BillingCWModule'\r\n },\r\n {\r\n path: 'applicant',\r\n loadChildren: 'src/app/pages/human-resources/applicant/applicant.module#ApplicantModule'\r\n },\r\n {\r\n path: 'editApplicant',\r\n loadChildren: 'src/app/pages/human-resources/applicant/edit-applicant/edit-applicant.module#EditApplicantModule'\r\n },\r\n {\r\n path: 'editPositions',\r\n loadChildren: 'src/app/pages/human-resources/applicant/edit-positions/edit-positions.module#EditPositionsModule'\r\n },\r\n {\r\n path: 'cubebox',\r\n loadChildren: 'src/app/pages/cube-box/cube-box.module#CubeBoxModule'\r\n },\r\n {\r\n path: 'findAndReplaceCubeBox',\r\n loadChildren: 'src/app/pages/cube-box/find-replace/find-replace.module#FindReplaceModule'\r\n },\r\n {\r\n path: 'cubeboxDiagram',\r\n loadChildren: 'src/app/pages/cube-box/cube-box-diagram/cube-box-diagram.module#CubeBoxDiagramModule'\r\n },\r\n {\r\n path: 'cubeboxAddToAssets',\r\n loadChildren: 'src/app/pages/cube-box/add-to-assets/add-to-assets.module#AddToAssetsModule'\r\n },\r\n {\r\n path: 'myActivity',\r\n loadChildren: './pages/home/my-activity/my-activity.module#MyActivityModule'\r\n },\r\n {\r\n path: 'turnOverSheet',\r\n loadChildren:'./pages/estimation/estimates/turn-over-sheet-harris/turn-over-sheet-harris.module#TurnOverSheetHarrisModule'\r\n },\r\n {\r\n path: 'dashboardviewer',\r\n loadChildren:'./pages/dashboard/dashboardBi_windows/dashboard-bi-viewer/dashboard-bi-viewer.module#DashboardBiViewerModule'\r\n },\r\n {\r\n path: 'gatewayAdmin',\r\n loadChildren: './pages/engineering/gatewayAdmin/gatewayAdmin.module#gatewayAdminModule'\r\n },\r\n {\r\n path: 'tooltip',\r\n loadChildren: './pages/admin-tools/tooltip/tooltip.module#tooltipModule'\r\n },\r\n {\r\n path: 'videoTutorial',\r\n loadChildren: './pages/videoTutorial/videoTutorial.module#videoTutorialModule'\r\n },\r\n {\r\n path: 'trainingvideos',\r\n loadChildren: './pages/admin-tools/trainingvideos/trainingvideos.module#trainingvideosModule'\r\n },\r\n {\r\n path: 'engUtilityMaster',\r\n loadChildren: './pages/admin-tools/admin-eng-utility/admin-eng-utility.module#AdminEngUtilityModule'\r\n },\r\n {\r\n path: 'systemComponentMaster',\r\n loadChildren: './pages/admin-tools/admin-eng-utility/system-components-master/system-components-master.module#SystemComponentsMasterModule'\r\n },\r\n {\r\n path: 'systemLibraryMaster',\r\n loadChildren: './pages/admin-tools/system-library-master/system-library-master.module#SystemLibraryMasterModule'\r\n },\r\n {\r\n path: 'collectImages',\r\n loadChildren: './pages/machine-learning-images/machine-learning-images.module#MachineLearningImagesModule'\r\n },\r\n {\r\n path: 'menuCube',\r\n loadChildren: './pages/admin-tools/menu-cube/menu-cube.module#MenuCubeModule'\r\n }, \r\n {\r\n path: 'ioOptimizer',\r\n loadChildren: './pages/estimation/io-optimizer/io-optimizer.module#IoOptimizerModule'\r\n }, \r\n {\r\n path: 'cs-portal',\r\n loadChildren: './pages/cs-portal/cs-portal.module#CsPortalModule'\r\n }, \r\n {\r\n path: 'CUBEest',\r\n loadChildren: './pages/simpleView/simple-view-estimating/simple-view-estimating.module#SimpleViewEstimatingModule'\r\n },\r\n {\r\n path: 'CUBEcx',\r\n loadChildren: './pages/simpleView/simple-view-commissioning/simple-view-commissioning.module#SimpleViewCommissioningModule'\r\n }, \r\n {\r\n path: 'adminBilling',\r\n loadChildren: './pages/admin-tools/adminbilling/adminbilling.module#AdminbillingModule'\r\n }, \r\n {\r\n path: 'CUBEcxDashboard',\r\n loadChildren: './pages/simpleView/cubecx-dashboard/cubecx-dashboard.module#CUBEcxDashboardModule'\r\n },\r\n\r\n {\r\n path: 'ApplicationType',\r\n loadChildren: 'src/app/pages/shop/application-type/application-type.module#ApplicationTypeModule'\r\n },\r\n\r\n {\r\n path: 'Applicationfiltered',\r\n loadChildren: 'src/app/pages/shop/application-filtered/application-filtered.module#ApplicationfilteredModule'\r\n },\r\n\r\n {\r\n path: 'ListSystems',\r\n loadChildren: 'src/app/pages/shop/list-systems/list-systems.module#ListSystemsModule'\r\n },\r\n\r\n {\r\n path: 'MyProjects',\r\n loadChildren: 'src/app/pages/shop/my-projects/my-projects.module#MyProjectsModule'\r\n },\r\n {\r\n path: 'DetailProject',\r\n loadChildren: 'src/app/pages/shop/detail-project/detail-project.module#DetailProjectModule'\r\n },\r\n {\r\n path: 'homeDuplicate',\r\n loadChildren: 'src/app/home-duplicate/home-duplicate.module#HomeDuplicateModule'\r\n },\r\n {\r\n path: 'cubeAdvertisement',\r\n loadChildren: 'src/app/pages/cube-settings/cube-advertisement/cube-advertisement.module#CubeAdvertisementModule'\r\n },\r\n {\r\n path: 'AIConsumption',\r\n loadChildren: 'src/app/pages/cube-settings/aiconsumption/aiconsumption.module#AIConsumptionModule'\r\n },\r\n {\r\n path: 'cubegraphics',\r\n loadChildren: './pages/engineering/cubegraphics/cubegraphics.module#CubeGraphicsModule'\r\n },\r\n\r\n {\r\n path: 'AllProjectShop',\r\n loadChildren: 'src/app/pages/shop/all-project-cube-shop/all-project-cube-shop.module#AllProjectCubeShopModule'\r\n },\r\n {\r\n path: 'licenseManagment',\r\n loadChildren: './pages/user-administration/license-management/license-management.module#LicenseManagementModule'\r\n },\r\n {\r\n path: 'issues',\r\n loadChildren: './pages/home/issues/issues.module#IssuesModule'\r\n },\r\n {\r\n path: 'companyMetrics',\r\n loadChildren: './pages/admin-tools/company-metrics/company-metrics.module#CompanyMetricsModule'\r\n },\r\n // {\r\n // path: 'companyCubeScore',\r\n // loadChildren: './pages/cube-box/company-cube-box-score/company-cube-box-score.module#CompanyCubeBoxScoreModule'\r\n // },\r\n];\r\n\r\nexport const APP_ROUTING = RouterModule.forRoot(APP_ROUTES);\r\n","import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { takeUntil, tap } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\nimport { AppConfiguration } from '../config/app-configuration';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable()\r\nexport class AuthInterceptor implements HttpInterceptor {\r\n private pendingHTTPRequests$ = new Subject();\r\n\r\n constructor(private router: Router, private appConfig: AppConfiguration) { }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n if (localStorage.getItem('token') != null) {\r\n if (req.url == environment.urlInformation) {\r\n const clonedReq = req.clone({\r\n headers: req.headers.set(\"Authorization\", \"Basic \" + btoa(environment.polarixapiuser + \":\" + environment.polarixapipass),)\r\n });\r\n return next.handle(clonedReq).pipe(\r\n tap(\r\n succ => { },\r\n err => {\r\n if (err.status === 401) {\r\n localStorage.removeItem('token');\r\n this.router.navigateByUrl('/user/login');\r\n }\r\n }\r\n )\r\n );\r\n\r\n } else {\r\n const clonedReq = req.clone({\r\n headers: req.headers.set('Authorization', 'Bearer ' + localStorage.getItem('token'))\r\n });\r\n return next.handle(clonedReq).pipe(\r\n takeUntil(this.pendingHTTPRequests$.asObservable()),\r\n tap(\r\n succ => { },\r\n err => {\r\n if (err.status === 401) {\r\n localStorage.removeItem('token');\r\n this.router.navigateByUrl('/user/login');\r\n }\r\n }\r\n )\r\n );\r\n }\r\n } else {\r\n return next.handle(req.clone());\r\n }\r\n }\r\n}\r\n","//https://www.youtube.com/watch?v=2YB0oC3Yt4M\r\n\r\nexport abstract class AppConfiguration{\r\n urlInformation: string;\r\n urlClientInformation: string;\r\n userName: string;\r\n pass: string;\r\n fleetuserid: string;\r\n conncode: string;\r\n polarixapiuser: string;\r\n polarixapipass: string;\r\n}","import { Injectable } from '@angular/core';\r\nimport {AppConfiguration} from './app-configuration';\r\nimport {HttpClient} from '@angular/common/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class JsonAppConfigService extends AppConfiguration {\r\n\r\n constructor(private http: HttpClient) { \r\n super();\r\n }\r\n\r\n load(){\r\n return this.http.get('/assets/data/appConfig.json')\r\n .toPromise()\r\n .then(data => {\r\n this.urlInformation = data['urlInformation'];\r\n this.urlClientInformation = data['apiBaseUrl'];\r\n this.userName = data['userName'];\r\n this.pass = data['pass'];\r\n this.fleetuserid = data['fleetuserid'];\r\n this.conncode = data['conncode']; \r\n this. polarixapiuser = data['polarixapiuser'];\r\n this.polarixapipass = data['polarixapipass'];\r\n })\r\n .catch(() => {\r\n console.error(\"Could not load Service Map configuration\");\r\n });\r\n }\r\n\r\n}\r\n\r\n// this.urlInformation = \"https://wsapi.foresightgps.com/ForesightFlexAPI.ashx\";\r\n// this.urlClientInformation = \"http://cube-mia.com/apicubeedge/\";\r\n// this.userName = \"qa@sfc-mia.com\";\r\n// this.pass = \"123456\";\r\n// this.fleetuserid = \"487\";\r\n// this.conncode = \"PolarixUSA\";\r\n// this. polarixapiuser = \"terpel\";\r\n// this.polarixapipass = \"fsgpsTerpel\";\r\n","import { PipeTransform, Pipe } from '@angular/core';\r\n\r\n@Pipe({name: 'GetType'})\r\nexport class GetTypePipe implements PipeTransform {\r\n transform(value, args: string[]): any {\r\n const keys = [];\r\n // tslint:disable-next-line: forin\r\n for (const key in value) {\r\n keys.push(key);\r\n }\r\n const test = keys.slice(0, keys.length);\r\n return keys.slice(0, keys.length);\r\n }\r\n}\r\n","import { PipeTransform, Pipe } from '@angular/core';\r\n\r\n@Pipe({name: 'keys'})\r\nexport class KeysPipe implements PipeTransform {\r\n transform(value, args: string[]): any {\r\n const keys = [];\r\n // tslint:disable-next-line: forin\r\n for (const key in value) {\r\n keys.push(key);\r\n }\r\n\r\n // Separate keys for space only for args = 0\r\n if (args[0] == '0') {\r\n for (let index = 0; index < keys.length; index++) {\r\n keys[index] = keys[index].replace(/([a-z])([A-Z])/g, '$1_$2').toLowerCase();\r\n }\r\n }\r\n\r\n return keys.slice(0, keys.length);\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'Filter'\r\n})\r\n\r\nexport class SearchPipe implements PipeTransform {\r\n transform(value: any, args?: any): any {\r\n\r\n if (!value) return null;\r\n if (!args) return value;\r\n\r\n args = args.toLowerCase();\r\n\r\n return value.filter(function (item) {\r\n return JSON.stringify(item).toLowerCase().includes(args);\r\n });\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'limitTo'\r\n})\r\nexport class TruncatePipe {\r\n transform(value: string, args: string) : string {\r\n // let limit = args.length > 0 ? parseInt(args[0], 10) : 10;\r\n // let trail = args.length > 1 ? args[1] : '...';\r\n let limit = args ? parseInt(args, 10) : 10;\r\n let trail = '...';\r\n\r\n return value.length > limit ? value.substring(0, limit) + trail : value;\r\n }\r\n}\r\n","export class Dashboard {\r\n dashboardID: number;\r\n name: string;\r\n description: string;\r\n dashboarddefault: boolean;\r\n dashboardSize: number;\r\n}\r\n\r\nexport class ComponentsType {\r\n colLayoutBig: number;\r\n colLayoutSmall: number;\r\n componentOrder: number;\r\n componentTypeID: number;\r\n serviceEndPoint: string;\r\n componentTitle: string;\r\n componentID: number;\r\n DashboardId: number;\r\n data: any;\r\n columns = [];\r\n disabled = false;\r\n}\r\n\r\nexport class ComponentTable {\r\n title: string;\r\n headers: string[];\r\n body: any;\r\n}\r\n\r\nexport class ComponentChart {\r\n chartTitle = 'Test title';\r\n chartType: string;\r\n chartDatasets: Array = new Array();\r\n chartLabels: Array = new Array();\r\n chartColors: Array = new Array();\r\n chartOptions: any;\r\n}\r\n\r\nexport class ComponentIndicator {\r\n title: string;\r\n value: number;\r\n}\r\n\r\nexport class ChartDatasets {\r\n data: Array = new Array();\r\n label: string;\r\n}\r\n\r\nexport class ChartColors {\r\n // tslint:disable-next-line: max-line-length\r\n backgroundClass: Array | string = [\r\n // tslint:disable-next-line: max-line-length\r\n 'flex-rectangle2', 'flex-rectangle3', 'flex-rectangle4', 'flex-rectangle5', 'flex-rectangle6', 'flex-rectangle7', 'flex-rectangle8', 'flex-rectangle9', 'flex-rectangle10', 'flex-rectangle11', 'flex-rectangle12', 'flex-rectangle1'\r\n ];\r\n borderWidth = 2;\r\n // tslint:disable-next-line: max-line-length\r\n backgroundColor: Array | string = [ '#a4e43f', '#63b598', '#ce7d78', '#ea9e70', '#a48a9e', '#c6e1e8', '#648177', '#0d5ac1', '#f205e6', '#1c0365', '#14a9ad', '#4ca2f9', '#d298e2', '#6119d0', '#d2737d', '#c0a43c', '#f2510e', '#651be6', '#79806e', '#61da5e', '#cd2f00', '#9348af', '#01ac53', '#c5a4fb', '#996635', '#b11573', '#4bb473', '#75d89e', '#2f3f94', '#2f7b99', '#da967d', '#34891f', '#b0d87b', '#ca4751', '#7e50a8', '#c4d647', '#e0eeb8', '#11dec1', '#289812', '#566ca0', '#ffdbe1', '#2f1179', '#935b6d', '#916988', '#513d98', '#aead3a', '#9e6d71', '#4b5bdc', '#0cd36d', '#250662', '#cb5bea', '#228916', '#ac3e1b', '#df514a', '#539397', '#880977', '#f697c1', '#ba96ce', '#679c9d', '#c6c42c', '#5d2c52', '#48b41b', '#e1cf3b', '#5be4f0', '#57c4d8', '#a4d17a', '#225b8', '#be608b', '#96b00c', '#088baf', '#f158bf', '#e145ba', '#ee91e3', '#05d371', '#5426e0', '#4834d0', '#802234', '#6749e8', '#0971f0', '#8fb413', '#b2b4f0', '#c3c89d', '#c9a941', '#41d158', '#fb21a3', '#51aed9', '#5bb32d', '#807fb', '#21538e', '#89d534', '#d36647', '#7fb411', '#0023b8', '#3b8c2a', '#986b53', '#f50422', '#983f7a', '#ea24a3', '#79352c', '#521250', '#c79ed2', '#d6dd92', '#e33e52', '#b2be57', '#fa06ec', '#1bb699', '#6b2e5f', '#64820f', '#1c271', '#21538e', '#89d534', '#d36647', '#7fb411', '#0023b8', '#3b8c2a', '#986b53', '#f50422', '#983f7a', '#ea24a3', '#79352c', '#521250', '#c79ed2', '#d6dd92', '#e33e52', '#b2be57', '#fa06ec', '#1bb699', '#6b2e5f', '#64820f', '#1c271', '#9cb64a', '#996c48', '#9ab9b7', '#06e052', '#e3a481', '#0eb621', '#fc458e', '#b2db15', '#aa226d', '#792ed8', '#73872a', '#520d3a', '#cefcb8', '#a5b3d9', '#7d1d85', '#c4fd57', '#f1ae16', '#8fe22a', '#ef6e3c', '#243eeb', '#1dc18', '#dd93fd', '#3f8473', '#e7dbce', '#421f79', '#7a3d93', '#635f6d', '#93f2d7', '#9b5c2a', '#15b9ee', '#0f5997', '#409188', '#911e20', '#1350ce', '#10e5b1', '#fff4d7', '#cb2582', '#ce00be', '#32d5d6', '#17232', '#608572', '#c79bc2', '#00f87c', '#77772a', '#6995ba', '#fc6b57', '#f07815', '#8fd883', '#060e27', '#96e591', '#21d52e', '#d00043', '#b47162', '#1ec227', '#4f0f6f', '#1d1d58', '#947002', '#bde052', '#e08c56', '#28fcfd', '#bb09b', '#36486a', '#d02e29', '#1ae6db', '#3e464c', '#a84a8f', '#911e7e', '#3f16d9', '#0f525f', '#ac7c0a', '#b4c086', '#c9d730', '#30cc49', '#3d6751', '#fb4c03', '#640fc1', '#62c03e', '#d3493a', '#88aa0b', '#406df9', '#615af0', '#4be47', '#2a3434', '#4a543f', '#79bca0', '#a8b8d4', '#00efd4', '#7ad236', '#7260d8', '#1deaa7', '#06f43a', '#823c59', '#e3d94c', '#dc1c06', '#f53b2a', '#b46238', '#2dfff6', '#a82b89', '#1a8011', '#436a9f', '#1a806a', '#4cf09d', '#c188a2', '#67eb4b', '#b308d3', '#fc7e41', '#af3101', '#ff065', '#71b1f4', '#a2f8a5', '#e23dd0', '#d3486d', '#00f7f9', '#474893', '#3cec35', '#1c65cb', '#5d1d0c', '#2d7d2a', '#ff3420', '#5cdd87', '#a259a4', '#e4ac44', '#1bede6', '#8798a4', '#d7790f', '#b2c24f', '#de73c2', '#d70a9c', '#25b67', '#88e9b8', '#c2b0e2', '#86e98f', '#ae90e2', '#1a806b', '#436a9e', '#0ec0ff', '#f812b3', '#b17fc9', '#8d6c2f', '#d3277a', '#2ca1ae', '#9685eb', '#8a96c6', '#dba2e6', '#76fc1b', '#608fa4', '#20f6ba', '#07d7f6', '#dce77a', '#77ecca'];\r\n // tslint:disable-next-line: max-line-length\r\n hoverBackgroundColor: Array | string = [ '#a4e43f', '#63b598', '#ce7d78', '#ea9e70', '#a48a9e', '#c6e1e8', '#648177', '#0d5ac1', '#f205e6', '#1c0365', '#14a9ad', '#4ca2f9', '#d298e2', '#6119d0', '#d2737d', '#c0a43c', '#f2510e', '#651be6', '#79806e', '#61da5e', '#cd2f00', '#9348af', '#01ac53', '#c5a4fb', '#996635', '#b11573', '#4bb473', '#75d89e', '#2f3f94', '#2f7b99', '#da967d', '#34891f', '#b0d87b', '#ca4751', '#7e50a8', '#c4d647', '#e0eeb8', '#11dec1', '#289812', '#566ca0', '#ffdbe1', '#2f1179', '#935b6d', '#916988', '#513d98', '#aead3a', '#9e6d71', '#4b5bdc', '#0cd36d', '#250662', '#cb5bea', '#228916', '#ac3e1b', '#df514a', '#539397', '#880977', '#f697c1', '#ba96ce', '#679c9d', '#c6c42c', '#5d2c52', '#48b41b', '#e1cf3b', '#5be4f0', '#57c4d8', '#a4d17a', '#225b8', '#be608b', '#96b00c', '#088baf', '#f158bf', '#e145ba', '#ee91e3', '#05d371', '#5426e0', '#4834d0', '#802234', '#6749e8', '#0971f0', '#8fb413', '#b2b4f0', '#c3c89d', '#c9a941', '#41d158', '#fb21a3', '#51aed9', '#5bb32d', '#807fb', '#21538e', '#89d534', '#d36647', '#7fb411', '#0023b8', '#3b8c2a', '#986b53', '#f50422', '#983f7a', '#ea24a3', '#79352c', '#521250', '#c79ed2', '#d6dd92', '#e33e52', '#b2be57', '#fa06ec', '#1bb699', '#6b2e5f', '#64820f', '#1c271', '#21538e', '#89d534', '#d36647', '#7fb411', '#0023b8', '#3b8c2a', '#986b53', '#f50422', '#983f7a', '#ea24a3', '#79352c', '#521250', '#c79ed2', '#d6dd92', '#e33e52', '#b2be57', '#fa06ec', '#1bb699', '#6b2e5f', '#64820f', '#1c271', '#9cb64a', '#996c48', '#9ab9b7', '#06e052', '#e3a481', '#0eb621', '#fc458e', '#b2db15', '#aa226d', '#792ed8', '#73872a', '#520d3a', '#cefcb8', '#a5b3d9', '#7d1d85', '#c4fd57', '#f1ae16', '#8fe22a', '#ef6e3c', '#243eeb', '#1dc18', '#dd93fd', '#3f8473', '#e7dbce', '#421f79', '#7a3d93', '#635f6d', '#93f2d7', '#9b5c2a', '#15b9ee', '#0f5997', '#409188', '#911e20', '#1350ce', '#10e5b1', '#fff4d7', '#cb2582', '#ce00be', '#32d5d6', '#17232', '#608572', '#c79bc2', '#00f87c', '#77772a', '#6995ba', '#fc6b57', '#f07815', '#8fd883', '#060e27', '#96e591', '#21d52e', '#d00043', '#b47162', '#1ec227', '#4f0f6f', '#1d1d58', '#947002', '#bde052', '#e08c56', '#28fcfd', '#bb09b', '#36486a', '#d02e29', '#1ae6db', '#3e464c', '#a84a8f', '#911e7e', '#3f16d9', '#0f525f', '#ac7c0a', '#b4c086', '#c9d730', '#30cc49', '#3d6751', '#fb4c03', '#640fc1', '#62c03e', '#d3493a', '#88aa0b', '#406df9', '#615af0', '#4be47', '#2a3434', '#4a543f', '#79bca0', '#a8b8d4', '#00efd4', '#7ad236', '#7260d8', '#1deaa7', '#06f43a', '#823c59', '#e3d94c', '#dc1c06', '#f53b2a', '#b46238', '#2dfff6', '#a82b89', '#1a8011', '#436a9f', '#1a806a', '#4cf09d', '#c188a2', '#67eb4b', '#b308d3', '#fc7e41', '#af3101', '#ff065', '#71b1f4', '#a2f8a5', '#e23dd0', '#d3486d', '#00f7f9', '#474893', '#3cec35', '#1c65cb', '#5d1d0c', '#2d7d2a', '#ff3420', '#5cdd87', '#a259a4', '#e4ac44', '#1bede6', '#8798a4', '#d7790f', '#b2c24f', '#de73c2', '#d70a9c', '#25b67', '#88e9b8', '#c2b0e2', '#86e98f', '#ae90e2', '#1a806b', '#436a9e', '#0ec0ff', '#f812b3', '#b17fc9', '#8d6c2f', '#d3277a', '#2ca1ae', '#9685eb', '#8a96c6', '#dba2e6', '#76fc1b', '#608fa4', '#20f6ba', '#07d7f6', '#dce77a', '#77ecca'];\r\n // tslint:disable-next-line: max-line-length\r\n borderColor: Array | string = [ '#a4e43f', '#63b598', '#ce7d78', '#ea9e70', '#a48a9e', '#c6e1e8', '#648177', '#0d5ac1', '#f205e6', '#1c0365', '#14a9ad', '#4ca2f9', '#d298e2', '#6119d0', '#d2737d', '#c0a43c', '#f2510e', '#651be6', '#79806e', '#61da5e', '#cd2f00', '#9348af', '#01ac53', '#c5a4fb', '#996635', '#b11573', '#4bb473', '#75d89e', '#2f3f94', '#2f7b99', '#da967d', '#34891f', '#b0d87b', '#ca4751', '#7e50a8', '#c4d647', '#e0eeb8', '#11dec1', '#289812', '#566ca0', '#ffdbe1', '#2f1179', '#935b6d', '#916988', '#513d98', '#aead3a', '#9e6d71', '#4b5bdc', '#0cd36d', '#250662', '#cb5bea', '#228916', '#ac3e1b', '#df514a', '#539397', '#880977', '#f697c1', '#ba96ce', '#679c9d', '#c6c42c', '#5d2c52', '#48b41b', '#e1cf3b', '#5be4f0', '#57c4d8', '#a4d17a', '#225b8', '#be608b', '#96b00c', '#088baf', '#f158bf', '#e145ba', '#ee91e3', '#05d371', '#5426e0', '#4834d0', '#802234', '#6749e8', '#0971f0', '#8fb413', '#b2b4f0', '#c3c89d', '#c9a941', '#41d158', '#fb21a3', '#51aed9', '#5bb32d', '#807fb', '#21538e', '#89d534', '#d36647', '#7fb411', '#0023b8', '#3b8c2a', '#986b53', '#f50422', '#983f7a', '#ea24a3', '#79352c', '#521250', '#c79ed2', '#d6dd92', '#e33e52', '#b2be57', '#fa06ec', '#1bb699', '#6b2e5f', '#64820f', '#1c271', '#21538e', '#89d534', '#d36647', '#7fb411', '#0023b8', '#3b8c2a', '#986b53', '#f50422', '#983f7a', '#ea24a3', '#79352c', '#521250', '#c79ed2', '#d6dd92', '#e33e52', '#b2be57', '#fa06ec', '#1bb699', '#6b2e5f', '#64820f', '#1c271', '#9cb64a', '#996c48', '#9ab9b7', '#06e052', '#e3a481', '#0eb621', '#fc458e', '#b2db15', '#aa226d', '#792ed8', '#73872a', '#520d3a', '#cefcb8', '#a5b3d9', '#7d1d85', '#c4fd57', '#f1ae16', '#8fe22a', '#ef6e3c', '#243eeb', '#1dc18', '#dd93fd', '#3f8473', '#e7dbce', '#421f79', '#7a3d93', '#635f6d', '#93f2d7', '#9b5c2a', '#15b9ee', '#0f5997', '#409188', '#911e20', '#1350ce', '#10e5b1', '#fff4d7', '#cb2582', '#ce00be', '#32d5d6', '#17232', '#608572', '#c79bc2', '#00f87c', '#77772a', '#6995ba', '#fc6b57', '#f07815', '#8fd883', '#060e27', '#96e591', '#21d52e', '#d00043', '#b47162', '#1ec227', '#4f0f6f', '#1d1d58', '#947002', '#bde052', '#e08c56', '#28fcfd', '#bb09b', '#36486a', '#d02e29', '#1ae6db', '#3e464c', '#a84a8f', '#911e7e', '#3f16d9', '#0f525f', '#ac7c0a', '#b4c086', '#c9d730', '#30cc49', '#3d6751', '#fb4c03', '#640fc1', '#62c03e', '#d3493a', '#88aa0b', '#406df9', '#615af0', '#4be47', '#2a3434', '#4a543f', '#79bca0', '#a8b8d4', '#00efd4', '#7ad236', '#7260d8', '#1deaa7', '#06f43a', '#823c59', '#e3d94c', '#dc1c06', '#f53b2a', '#b46238', '#2dfff6', '#a82b89', '#1a8011', '#436a9f', '#1a806a', '#4cf09d', '#c188a2', '#67eb4b', '#b308d3', '#fc7e41', '#af3101', '#ff065', '#71b1f4', '#a2f8a5', '#e23dd0', '#d3486d', '#00f7f9', '#474893', '#3cec35', '#1c65cb', '#5d1d0c', '#2d7d2a', '#ff3420', '#5cdd87', '#a259a4', '#e4ac44', '#1bede6', '#8798a4', '#d7790f', '#b2c24f', '#de73c2', '#d70a9c', '#25b67', '#88e9b8', '#c2b0e2', '#86e98f', '#ae90e2', '#1a806b', '#436a9e', '#0ec0ff', '#f812b3', '#b17fc9', '#8d6c2f', '#d3277a', '#2ca1ae', '#9685eb', '#8a96c6', '#dba2e6', '#76fc1b', '#608fa4', '#20f6ba', '#07d7f6', '#dce77a', '#77ecca'];\r\n}\r\n","export default \".divAssets {\\n margin: 2%;\\n padding: 2%;\\n}\\n\\n.labelSite {\\n margin: auto;\\n margin-left: 0;\\n margin-right: 0;\\n padding-left: 0;\\n padding-right: 0;\\n}\\n\\n.labelSite span {\\n font-size: 1.3rem;\\n font-weight: 400;\\n}\\n\\n.welcomeUser {\\n -webkit-box-align: end;\\n align-items: end;\\n text-align: end;\\n list-style: none;\\n}\\n\\n.div1 {\\n height: 100% !important;\\n}\\n\\n.div2 {\\n height: 90% !important;\\n}\\n\\n.div3 .div4 {\\n height: 100% !important;\\n}\\n\\n.treeview {\\n border: 1px solid #E0E0E0;\\n}\\n\\n::ng-deep .mypopup .dx-popup-content {\\n padding: 0;\\n}\\n\\n::ng-deep .dx-button.active .dx-button-content {\\n background-color: #95C83D !important;\\n color: white !important;\\n box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.06);\\n border-radius: 5px;\\n}\\n\\n::ng-deep .navbar-nav.top-nav.icon-header li a:hover {\\n color: #FEA30B !important;\\n}\\n\\n.c-g {\\n color: #FEA30B;\\n}\\n\\n::ng-deep .navbar.navbar-dark .breadcrumb .nav-item .nav-link, .navbar.navbar-dark .navbar-nav li a:hover {\\n color: #FEA30B !important;\\n}\\n\\n::ng-deep .navbar.navbar-dark .breadcrumb .nav-item .nav-link:hover {\\n background-color: #fff !important;\\n}\\n\\n::ng-deep .navbar.navbar-dark .navbar-nav .nav-item .nav-link:hover {\\n background-color: #fff !important;\\n}\\n\\n::ng-deep .dropdown .dropdown-menu.dropdown-primary .dropdown-item.active {\\n background-color: #fff !important;\\n box-shadow: none !important;\\n}\\n\\n::ng-deep .dropdown .dropdown-menu.dropdown-primary .dropdown-item:active {\\n background-color: #fff !important;\\n box-shadow: none !important;\\n}\\n\\n::ng-deep .dropdown .dropdown-menu.dropdown-primary .dropdown-item:hover {\\n background-color: #fff !important;\\n box-shadow: none !important;\\n}\\n\\n::ng-deep .dropleft .dropdown-menu.dropdown-primary .dropdown-item.active {\\n background-color: #fff !important;\\n box-shadow: none !important;\\n}\\n\\n::ng-deep .dropleft .dropdown-menu.dropdown-primary .dropdown-item:active {\\n background-color: #fff !important;\\n box-shadow: none !important;\\n}\\n\\n::ng-deep .dropleft .dropdown-menu.dropdown-primary .dropdown-item:hover {\\n background-color: #fff !important;\\n box-shadow: none !important;\\n}\\n\\n::ng-deep .dropright .dropdown-menu.dropdown-primary .dropdown-item.active {\\n background-color: #fff !important;\\n box-shadow: none !important;\\n}\\n\\n::ng-deep .dropright .dropdown-menu.dropdown-primary .dropdown-item:active {\\n background-color: #fff !important;\\n box-shadow: none !important;\\n}\\n\\n::ng-deep .dropup .dropdown-menu.dropdown-primary .dropdown-item.active {\\n background-color: #fff !important;\\n box-shadow: none !important;\\n}\\n\\n::ng-deep .dropup .dropdown-menu.dropdown-primary .dropdown-item:active {\\n background-color: #fff !important;\\n box-shadow: none !important;\\n}\\n\\n::ng-deep .dropup .dropdown-menu.dropdown-primary .dropdown-item:hover {\\n background-color: #fff !important;\\n box-shadow: none !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvY3ViZVdvcmsvbmF2YmFyLWN1YmVXb3JrL0U6XFxEZXZcXENVQkVURU1QXFxuZXdjdWJlL3NyY1xcYXBwXFxwYWdlc1xcY3ViZVdvcmtcXG5hdmJhci1jdWJlV29ya1xcbmF2YmFyLWN1YmVXb3JrLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9wYWdlcy9jdWJlV29yay9uYXZiYXItY3ViZVdvcmsvbmF2YmFyLWN1YmVXb3JrLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsVUFBQTtFQUNBLFdBQUE7QUNDRjs7QURFQTtFQUNFLFlBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtBQ0NGOztBREVBO0VBQ0ksaUJBQUE7RUFDQSxnQkFBQTtBQ0NKOztBREVBO0VBQ0Usc0JBQUE7VUFBQSxnQkFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtBQ0NGOztBREVBO0VBQ0UsdUJBQUE7QUNDRjs7QURFQTtFQUNFLHNCQUFBO0FDQ0Y7O0FERUE7RUFDRSx1QkFBQTtBQ0NGOztBREVBO0VBQ0UseUJBQUE7QUNDRjs7QURFQTtFQUNFLFVBQUE7QUNDRjs7QURFQTtFQUNFLG9DQUFBO0VBQ0EsdUJBQUE7RUFDQSwyQ0FBQTtFQUNBLGtCQUFBO0FDQ0Y7O0FEU0E7RUFDRSx5QkFBQTtBQ05GOztBRFNBO0VBQ0UsY0FBQTtBQ05GOztBRFNBO0VBQ0UseUJBQUE7QUNORjs7QURTQTtFQUNFLGlDQUFBO0FDTkY7O0FEU0E7RUFDRSxpQ0FBQTtBQ05GOztBRFNBO0VBQ0ksaUNBQUE7RUFDQSwyQkFBQTtBQ05KOztBRFVBO0VBQ0ksaUNBQUE7RUFDQSwyQkFBQTtBQ1BKOztBRFVBO0VBQ0ksaUNBQUE7RUFDQSwyQkFBQTtBQ1BKOztBRFVBO0VBQ0ksaUNBQUE7RUFDQSwyQkFBQTtBQ1BKOztBRFVBO0VBQ0ksaUNBQUE7RUFDQSwyQkFBQTtBQ1BKOztBRFVBO0VBQ0ksaUNBQUE7RUFDQSwyQkFBQTtBQ1BKOztBRFVBO0VBQ0ksaUNBQUE7RUFDQSwyQkFBQTtBQ1BKOztBRFVBO0VBQ0ksaUNBQUE7RUFDQSwyQkFBQTtBQ1BKOztBRFVBO0VBQ0ksaUNBQUE7RUFDQSwyQkFBQTtBQ1BKOztBRFVBO0VBQ0ksaUNBQUE7RUFDQSwyQkFBQTtBQ1BKOztBRFVBO0VBQ0ksaUNBQUE7RUFDQSwyQkFBQTtBQ1BKIiwiZmlsZSI6InNyYy9hcHAvcGFnZXMvY3ViZVdvcmsvbmF2YmFyLWN1YmVXb3JrL25hdmJhci1jdWJlV29yay5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5kaXZBc3NldHN7XHJcbiAgbWFyZ2luOiAyJTtcclxuICBwYWRkaW5nOiAyJTtcclxufVxyXG5cclxuLmxhYmVsU2l0ZXtcclxuICBtYXJnaW46IGF1dG87XHJcbiAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG59XHJcblxyXG4ubGFiZWxTaXRlIHNwYW4ge1xyXG4gICAgZm9udC1zaXplOiAxLjNyZW07XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG59XHJcblxyXG4ud2VsY29tZVVzZXJ7XHJcbiAgYWxpZ24taXRlbXM6IGVuZDtcclxuICB0ZXh0LWFsaWduOiBlbmQ7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5cclxuLmRpdjF7XHJcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5kaXYye1xyXG4gIGhlaWdodDogOTAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5kaXYzIC5kaXY0e1xyXG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udHJlZXZpZXd7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgI0UwRTBFMDtcclxufVxyXG5cclxuOjpuZy1kZWVwICAubXlwb3B1cCAuZHgtcG9wdXAtY29udGVudCB7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5keC1idXR0b24uYWN0aXZlIC5keC1idXR0b24tY29udGVudCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk1QzgzRCAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gIGJveC1zaGFkb3c6IDBweCA0cHggNHB4IHJnYigwIDAgMCAvIDYlKTtcclxuICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbn1cclxuXHJcblxyXG46Om5nLWRlZXAgIC5uYXZiYXItbmF2LnRvcC1uYXYuaWNvbi1oZWFkZXIgbGkubmF2LWl0ZW06aG92ZXIge1xyXG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogI0ZGRTdFMjtcclxuICAgIC8vIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XHJcbiAgICAvLyBwYWRkaW5nOiAwcHggMTBweDtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5uYXZiYXItbmF2LnRvcC1uYXYuaWNvbi1oZWFkZXIgbGkgYTpob3ZlciB7XHJcbiAgY29sb3I6ICNGRUEzMEIgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmMtZ3tcclxuICBjb2xvcjojRkVBMzBCXHJcbn1cclxuXHJcbjo6bmctZGVlcCAubmF2YmFyLm5hdmJhci1kYXJrIC5icmVhZGNydW1iIC5uYXYtaXRlbSAubmF2LWxpbmssIC5uYXZiYXIubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgbGkgYTpob3ZlcntcclxuICBjb2xvcjogI0ZFQTMwQiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgLm5hdmJhci5uYXZiYXItZGFyayAuYnJlYWRjcnVtYiAubmF2LWl0ZW0gLm5hdi1saW5rOmhvdmVye1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5uYXZiYXIubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1pdGVtIC5uYXYtbGluazpob3ZlcntcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tcHJpbWFyeSAuZHJvcGRvd24taXRlbS5hY3RpdmV7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAvLyBib3JkZXItcmFkaXVzOiAwLjEyNXJlbTtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5kcm9wZG93biAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1wcmltYXJ5IC5kcm9wZG93bi1pdGVtOmFjdGl2ZXtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIC8vIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtO1xyXG59XHJcbjo6bmctZGVlcCAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tcHJpbWFyeSAuZHJvcGRvd24taXRlbTpob3ZlcntcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIC8vIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtO1xyXG59XHJcbjo6bmctZGVlcCAuZHJvcGxlZnQgLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tcHJpbWFyeSAuZHJvcGRvd24taXRlbS5hY3RpdmV7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAvLyBib3JkZXItcmFkaXVzOiAwLjEyNXJlbTtcclxufVxyXG46Om5nLWRlZXAgLmRyb3BsZWZ0IC5kcm9wZG93bi1tZW51LmRyb3Bkb3duLXByaW1hcnkgLmRyb3Bkb3duLWl0ZW06YWN0aXZle1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgLy8gYm9yZGVyLXJhZGl1czogMC4xMjVyZW07XHJcbn1cclxuOjpuZy1kZWVwIC5kcm9wbGVmdCAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1wcmltYXJ5IC5kcm9wZG93bi1pdGVtOmhvdmVye1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgLy8gYm9yZGVyLXJhZGl1czogMC4xMjVyZW07XHJcbn1cclxuOjpuZy1kZWVwIC5kcm9wcmlnaHQgLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tcHJpbWFyeSAuZHJvcGRvd24taXRlbS5hY3RpdmV7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAvLyBib3JkZXItcmFkaXVzOiAwLjEyNXJlbTtcclxufVxyXG46Om5nLWRlZXAgLmRyb3ByaWdodCAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1wcmltYXJ5IC5kcm9wZG93bi1pdGVtOmFjdGl2ZXtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIC8vIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtO1xyXG59XHJcbjo6bmctZGVlcCAuZHJvcHVwIC5kcm9wZG93bi1tZW51LmRyb3Bkb3duLXByaW1hcnkgLmRyb3Bkb3duLWl0ZW0uYWN0aXZle1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgLy8gYm9yZGVyLXJhZGl1czogMC4xMjVyZW07XHJcbn1cclxuOjpuZy1kZWVwIC5kcm9wdXAgLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tcHJpbWFyeSAuZHJvcGRvd24taXRlbTphY3RpdmV7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAvLyBib3JkZXItcmFkaXVzOiAwLjEyNXJlbTtcclxufVxyXG46Om5nLWRlZXAgLmRyb3B1cCAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1wcmltYXJ5IC5kcm9wZG93bi1pdGVtOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIC8vIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtO1xyXG59XHJcbiIsIi5kaXZBc3NldHMge1xuICBtYXJnaW46IDIlO1xuICBwYWRkaW5nOiAyJTtcbn1cblxuLmxhYmVsU2l0ZSB7XG4gIG1hcmdpbjogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4ubGFiZWxTaXRlIHNwYW4ge1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLndlbGNvbWVVc2VyIHtcbiAgYWxpZ24taXRlbXM6IGVuZDtcbiAgdGV4dC1hbGlnbjogZW5kO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uZGl2MSB7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uZGl2MiB7XG4gIGhlaWdodDogOTAlICFpbXBvcnRhbnQ7XG59XG5cbi5kaXYzIC5kaXY0IHtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi50cmVldmlldyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFMEUwRTA7XG59XG5cbjo6bmctZGVlcCAubXlwb3B1cCAuZHgtcG9wdXAtY29udGVudCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbjo6bmctZGVlcCAuZHgtYnV0dG9uLmFjdGl2ZSAuZHgtYnV0dG9uLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTVDODNEICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwcHggNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMDYpO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbjo6bmctZGVlcCAubmF2YmFyLW5hdi50b3AtbmF2Lmljb24taGVhZGVyIGxpIGE6aG92ZXIge1xuICBjb2xvcjogI0ZFQTMwQiAhaW1wb3J0YW50O1xufVxuXG4uYy1nIHtcbiAgY29sb3I6ICNGRUEzMEI7XG59XG5cbjo6bmctZGVlcCAubmF2YmFyLm5hdmJhci1kYXJrIC5icmVhZGNydW1iIC5uYXYtaXRlbSAubmF2LWxpbmssIC5uYXZiYXIubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgbGkgYTpob3ZlciB7XG4gIGNvbG9yOiAjRkVBMzBCICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAubmF2YmFyLm5hdmJhci1kYXJrIC5icmVhZGNydW1iIC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAubmF2YmFyLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtaXRlbSAubmF2LWxpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tcHJpbWFyeSAuZHJvcGRvd24taXRlbS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5kcm9wZG93biAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1wcmltYXJ5IC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51LmRyb3Bkb3duLXByaW1hcnkgLmRyb3Bkb3duLWl0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5kcm9wbGVmdCAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1wcmltYXJ5IC5kcm9wZG93bi1pdGVtLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmRyb3BsZWZ0IC5kcm9wZG93bi1tZW51LmRyb3Bkb3duLXByaW1hcnkgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuZHJvcGxlZnQgLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tcHJpbWFyeSAuZHJvcGRvd24taXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmRyb3ByaWdodCAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1wcmltYXJ5IC5kcm9wZG93bi1pdGVtLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmRyb3ByaWdodCAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1wcmltYXJ5IC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmRyb3B1cCAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1wcmltYXJ5IC5kcm9wZG93bi1pdGVtLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmRyb3B1cCAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1wcmltYXJ5IC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmRyb3B1cCAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1wcmltYXJ5IC5kcm9wZG93bi1pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59Il19 */\"","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n ViewChild,\r\n Output,\r\n EventEmitter,\r\n} from \"@angular/core\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { ToastService } from \"ng-uikit-pro-standard\";\r\nimport { TranslateService } from \"@ngx-translate/core\";\r\nimport { CurrencyPipe, DatePipe } from \"@angular/common\";\r\nimport { DxDataGridComponent, DxAccordionComponent, DxSelectBoxComponent } from \"devextreme-angular\";\r\nimport { UserService } from \"src/app/services/user.service\";\r\nimport { MapInformationService } from '../../../services/map-information.service'\r\n\r\n\r\n@Component({\r\n selector: \"app-navbar-cubeWork\",\r\n templateUrl: \"./navbar-cubeWork.component.html\",\r\n styleUrls: [\"./navbar-cubeWork.component.scss\"],\r\n})\r\nexport class NavBarCubeWorkComponent implements OnInit {\r\n @ViewChild(DxSelectBoxComponent, { static: false }) SelectSites: DxSelectBoxComponent;\r\n isActive: boolean = false;\r\n cubeWork: boolean = true\r\n userName: any\r\n popupChangePass: boolean = false\r\n password: any;\r\n\r\n @Input() animationPopup: any;\r\n\r\n popupVisible = false;\r\n\r\n modelChangePassword = {\r\n pass: '',\r\n confirmPass: ''\r\n };\r\n\r\n\r\n\r\n constructor(\r\n private datePipe: DatePipe,\r\n private toast: ToastService,\r\n private translate: TranslateService,\r\n private currencyPipe: CurrencyPipe,\r\n public userService: UserService,\r\n public activatedRouter: ActivatedRoute,\r\n private router: Router,\r\n private translateService: TranslateService,\r\n public MapInformationService: MapInformationService\r\n ) {\r\n \r\n this.userName = localStorage.getItem(\"userName\");\r\n\r\n }\r\n\r\n ngOnInit() {}\r\n\r\n showPopup() {\r\n this.popupVisible = true;\r\n }\r\n\r\n onPopupHiding() {\r\n this.popupVisible = false;\r\n }\r\n\r\n NavCubeWorks(to){\r\n console.log(to)\r\n this.router.navigate([`/${to}`])\r\n this.isActive = !this.isActive;\r\n }\r\n\r\n ExpandCubeBox(){\r\n window.open(document.URL)\r\n }\r\n\r\n logOut() {\r\n let settings = localStorage.getItem('settings');\r\n sessionStorage.clear();\r\n localStorage.clear();\r\n this.userService.currentUserName.next('');\r\n this.router.navigateByUrl('/login');\r\n localStorage.setItem('settings', settings)\r\n }\r\n\r\n changePass() {\r\n this.userService.changePasswordCW(this.modelChangePassword.pass).subscribe(result => {\r\n if (result.response == 0) {\r\n this.toast.success('Password was changed.');\r\n }\r\n });\r\n }\r\n\r\n BackCubeEdge(){\r\n this.router.navigateByUrl('/home');\r\n }\r\n}\r\n","import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';\r\nimport { Component, Directive, Pipe } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\n\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\n\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { DxFileUploaderModule, DxButtonModule, DxTagBoxModule, DxScrollViewModule, DxTextBoxModule, DxDataGridModule, DxPopupModule, DxSelectBoxModule, DxDateBoxModule, DxRadioGroupModule, DxCheckBoxModule, DxAccordionModule, DxTabPanelModule, DxAutocompleteModule, DxNumberBoxModule, DxDropDownButtonModule, DxTabsModule, DxTemplateModule, DxTextAreaModule, DxToolbarModule, DxTreeViewModule, DxSortableModule, DxDiagramModule, DxTreeListModule, DxHtmlEditorModule, DxDropDownBoxModule, DxTooltipModule } from \"devextreme-angular\";\r\n\r\nimport { NavBarCubeWorkComponent } from './navbar-cubeWork.component';\r\n\r\nimport { NO_ERRORS_SCHEMA } from '@angular/core';\r\n\r\nimport { GooglePlaceModule } from \"ngx-google-places-autocomplete\";\r\nimport { NewEmpleoyeActivitiesModule } from 'src/app/pages/sales-management/employee-activities/forms/new-empleoye-activities/new-empleoye-activities.module';\r\nimport { NewCustomerModule } from 'src/app/pages/sales-management/employee-activities/forms/new-customer/new-customer.module';\r\nimport { CreateUpdateSalesProjectModule } from 'src/app/pages/sales-management/sales-project/create-update-sales-project/create-update-sales-project.module';\r\nimport { ServicesMapModule } from 'src/app/pages/service-management/services-map/map-service/services-map.module';\r\nimport { NewServiceWorkOrderModule } from 'src/app/pages/service-management/services-map/components/new-service-work-order/new-service-work-order.module';\r\nimport { NewRfiModule } from 'src/app/pages/project-management/edit-project/new-rfi/new-rfi.module';\r\nimport { NewPushListItemModule } from 'src/app/pages/project-management/edit-project/new-push-list-item/new-push-list-item.module';\r\nimport { NewProgressReportModule } from 'src/app/pages/project-management/edit-project/new-progress-report/new-progress-report.module';\r\nimport { AlarmWorkFlowSummaryModule } from 'src/app/pages/project-management/alarm-work-flow-summary/alarm-work-flow-summary.module';\r\nimport { AlarmCustomersModule } from 'src/app/pages/sales-management/alarm-customers/alarm-customers.module';\r\nimport { NewSalesLeadModule } from 'src/app/pages/sales-management/sales-leads/modals/new-sales-lead/new-sales-lead.module';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NavBarCubeWorkComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxCheckBoxModule,\r\n DxDropDownBoxModule,\r\n DxToolbarModule,\r\n DxButtonModule,\r\n DxTemplateModule,\r\n DxAutocompleteModule,\r\n GooglePlaceModule,\r\n DxTextBoxModule,\r\n DxPopupModule,\r\n DxTooltipModule,\r\n NewEmpleoyeActivitiesModule,\r\n NewCustomerModule,\r\n DxScrollViewModule,\r\n CreateUpdateSalesProjectModule,\r\n NewServiceWorkOrderModule,\r\n NewRfiModule,\r\n NewPushListItemModule,\r\n NewProgressReportModule,\r\n DxSelectBoxModule,\r\n DxDataGridModule,\r\n AlarmWorkFlowSummaryModule,\r\n AlarmCustomersModule,\r\n DxTextAreaModule,\r\n DxTagBoxModule,\r\n DxHtmlEditorModule,\r\n DxAccordionModule,\r\n NewSalesLeadModule\r\n ],\r\n exports: [\r\n NavBarCubeWorkComponent\r\n ],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\r\n})\r\nexport class NavBarCubeWorkModule { }\r\n","export default \"\\n@import url(\\\"https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css\\\");\\n@charset \\\"UTF-8\\\";\\n.flex-rectangleRed {\\n width: 100%;\\n background: #F7464A;\\n}\\n.flex-rectangleGreen {\\n width: 100%;\\n background: #95C83D;\\n}\\n.flex-rectangleBlue {\\n width: 100%;\\n background: #12A5DD;\\n}\\n.flex-rectangleOrange {\\n width: 100%;\\n background: #f9a21bdb;\\n}\\n.flex-rectangleGray {\\n width: 100%;\\n background: #4D5360;\\n}\\n.flex-rectangle:before {\\n content: \\\"\\\";\\n display: block;\\n padding-top: 25%;\\n}\\n.align-right {\\n text-align: right;\\n}\\n.align-left {\\n text-align: left;\\n}\\n.flex-rectangle2 {\\n background: #63b598;\\n}\\n.flex-rectangle3 {\\n background: #ce7d78;\\n}\\n.flex-rectangle4 {\\n background: #ea9e70;\\n}\\n.flex-rectangle5 {\\n background: #a48a9e;\\n}\\n.flex-rectangle6 {\\n background: #c6e1e8;\\n}\\n.flex-rectangle7 {\\n background: #648177;\\n}\\n.flex-rectangle8 {\\n background: #0d5ac1;\\n}\\n.flex-rectangle9 {\\n background: #f205e6;\\n}\\n.flex-rectangle10 {\\n background: #1c0365;\\n}\\n.flex-rectangle11 {\\n background: #14a9ad;\\n}\\n.flex-rectangle12 {\\n background: #4ca2f9;\\n}\\n.flex-rectangle1 {\\n background: #a4e43f;\\n}\\nmdb-accordion .mdb-accordion-indicator::after {\\n font-family: \\\"Font Awesome 5 Free\\\";\\n content: \\\"\\\";\\n font-weight: 900;\\n -webkit-transform: unset;\\n transform: unset;\\n border: 0;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvZGFzaGJvYXJkL2Rhc2hib2FyZC1wYWdlL0U6XFxEZXZcXENVQkVURU1QXFxuZXdjdWJlL3NyY1xcYXBwXFxwYWdlc1xcZGFzaGJvYXJkXFxkYXNoYm9hcmQtcGFnZVxcZGFzaGJvYXJkLXBhZ2UuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3BhZ2VzL2Rhc2hib2FyZC9kYXNoYm9hcmQtcGFnZS9kYXNoYm9hcmQtcGFnZS5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ1EsMEZBQUE7QUNEUixnQkFBZ0I7QURpQmhCO0VBQ0ksV0FBQTtFQUNBLG1CQUFBO0FDZEo7QURnQkE7RUFDSSxXQUFBO0VBQ0EsbUJBQUE7QUNiSjtBRGVBO0VBQ0ksV0FBQTtFQUNBLG1CQUFBO0FDWko7QURjQTtFQUNJLFdBQUE7RUFDQSxxQkFBQTtBQ1hKO0FEY0E7RUFDSSxXQUFBO0VBQ0EsbUJBQUE7QUNYSjtBRGNBO0VBQ0ksV0FBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtBQ1hKO0FEY0E7RUFDRSxpQkFBQTtBQ1hGO0FEY0E7RUFDRSxnQkFBQTtBQ1hGO0FEY0E7RUFBbUIsbUJBQUE7QUNWbkI7QURXQTtFQUFtQixtQkFBQTtBQ1BuQjtBRFFBO0VBQW1CLG1CQUFBO0FDSm5CO0FES0E7RUFBbUIsbUJBQUE7QUNEbkI7QURFQTtFQUFtQixtQkFBQTtBQ0VuQjtBRERBO0VBQW1CLG1CQUFBO0FDS25CO0FESkE7RUFBbUIsbUJBQUE7QUNRbkI7QURQQTtFQUFtQixtQkFBQTtBQ1duQjtBRFZBO0VBQW9CLG1CQUFBO0FDY3BCO0FEYkE7RUFBb0IsbUJBQUE7QUNpQnBCO0FEaEJBO0VBQW9CLG1CQUFBO0FDb0JwQjtBRG5CQTtFQUFtQixtQkFBQTtBQ3VCbkI7QURuQkE7RUFDQSxrQ0FBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtFQUNBLHdCQUFBO1VBQUEsZ0JBQUE7RUFDQSxTQUFBO0FDc0JBIiwiZmlsZSI6InNyYy9hcHAvcGFnZXMvZGFzaGJvYXJkL2Rhc2hib2FyZC1wYWdlL2Rhc2hib2FyZC1wYWdlLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbkBpbXBvcnQgdXJsKCdodHRwczovL21heGNkbi5ib290c3RyYXBjZG4uY29tL2ZvbnQtYXdlc29tZS80LjcuMC9jc3MvZm9udC1hd2Vzb21lLm1pbi5jc3MnKTtcclxuXHJcbi8vICNjb250ZW5pZG8ge1xyXG4vLyAgICAgd2lkdGg6NzAlO1xyXG4vLyAgICAgLy8gaGVpZ2h0OjIwMHB4O1xyXG4vLyAgICAgLy8gY29sb3I6d2hpdGU7XHJcbi8vICAgICBmb250LXNpemU6MC43NXJlbTtcclxuLy8gICAgIG92ZXJmbG93OmhpZGRlbjtcclxuLy8gICAgIHdoaXRlLXNwYWNlOm5vd3JhcDtcclxuLy8gICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4vLyB9XHJcblxyXG4vLyBwe1xyXG4vLyAgIGZvbnQtc2l6ZTogMC41cmVtICFpbXBvcnRhbnQ7XHJcbi8vIH1cclxuXHJcbi5mbGV4LXJlY3RhbmdsZVJlZHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogI0Y3NDY0QTtcclxufVxyXG4uZmxleC1yZWN0YW5nbGVHcmVlbntcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogIzk1QzgzRDtcclxufVxyXG4uZmxleC1yZWN0YW5nbGVCbHVle1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMTJBNUREO1xyXG59XHJcbi5mbGV4LXJlY3RhbmdsZU9yYW5nZXtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogI2Y5YTIxYmRiO1xyXG59XHJcblxyXG4uZmxleC1yZWN0YW5nbGVHcmF5e1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kOiAjNEQ1MzYwO1xyXG59XHJcblxyXG4uZmxleC1yZWN0YW5nbGU6YmVmb3Jle1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZy10b3A6IDI1JTtcclxufVxyXG5cclxuLmFsaWduLXJpZ2h0IHtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLmFsaWduLWxlZnQge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi5mbGV4LXJlY3RhbmdsZTIgeyBiYWNrZ3JvdW5kOiAjNjNiNTk4OyB9XHJcbi5mbGV4LXJlY3RhbmdsZTMgeyBiYWNrZ3JvdW5kOiAjY2U3ZDc4OyB9XHJcbi5mbGV4LXJlY3RhbmdsZTQgeyBiYWNrZ3JvdW5kOiAjZWE5ZTcwOyB9XHJcbi5mbGV4LXJlY3RhbmdsZTUgeyBiYWNrZ3JvdW5kOiAjYTQ4YTllOyB9XHJcbi5mbGV4LXJlY3RhbmdsZTYgeyBiYWNrZ3JvdW5kOiAjYzZlMWU4OyB9XHJcbi5mbGV4LXJlY3RhbmdsZTcgeyBiYWNrZ3JvdW5kOiAjNjQ4MTc3OyB9XHJcbi5mbGV4LXJlY3RhbmdsZTggeyBiYWNrZ3JvdW5kOiAjMGQ1YWMxOyB9XHJcbi5mbGV4LXJlY3RhbmdsZTkgeyBiYWNrZ3JvdW5kOiAjZjIwNWU2OyB9XHJcbi5mbGV4LXJlY3RhbmdsZTEwIHsgYmFja2dyb3VuZDogIzFjMDM2NTsgfVxyXG4uZmxleC1yZWN0YW5nbGUxMSB7IGJhY2tncm91bmQ6ICMxNGE5YWQ7IH1cclxuLmZsZXgtcmVjdGFuZ2xlMTIgeyBiYWNrZ3JvdW5kOiAjNGNhMmY5OyB9XHJcbi5mbGV4LXJlY3RhbmdsZTEgeyBiYWNrZ3JvdW5kOiAjYTRlNDNmOyB9XHJcblxyXG5cclxuXHJcbm1kYi1hY2NvcmRpb24gLm1kYi1hY2NvcmRpb24taW5kaWNhdG9yOjphZnRlciB7XHJcbmZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcclxuY29udGVudDogXCJcXGYwNjhcIjtcclxuZm9udC13ZWlnaHQ6IDkwMDtcclxudHJhbnNmb3JtOiB1bnNldDtcclxuYm9yZGVyOiAwO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9tYXhjZG4uYm9vdHN0cmFwY2RuLmNvbS9mb250LWF3ZXNvbWUvNC43LjAvY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzXCIpO1xuLmZsZXgtcmVjdGFuZ2xlUmVkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNGNzQ2NEE7XG59XG5cbi5mbGV4LXJlY3RhbmdsZUdyZWVuIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICM5NUM4M0Q7XG59XG5cbi5mbGV4LXJlY3RhbmdsZUJsdWUge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzEyQTVERDtcbn1cblxuLmZsZXgtcmVjdGFuZ2xlT3JhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmOWEyMWJkYjtcbn1cblxuLmZsZXgtcmVjdGFuZ2xlR3JheSB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjNEQ1MzYwO1xufVxuXG4uZmxleC1yZWN0YW5nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAyNSU7XG59XG5cbi5hbGlnbi1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uYWxpZ24tbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5mbGV4LXJlY3RhbmdsZTIge1xuICBiYWNrZ3JvdW5kOiAjNjNiNTk4O1xufVxuXG4uZmxleC1yZWN0YW5nbGUzIHtcbiAgYmFja2dyb3VuZDogI2NlN2Q3ODtcbn1cblxuLmZsZXgtcmVjdGFuZ2xlNCB7XG4gIGJhY2tncm91bmQ6ICNlYTllNzA7XG59XG5cbi5mbGV4LXJlY3RhbmdsZTUge1xuICBiYWNrZ3JvdW5kOiAjYTQ4YTllO1xufVxuXG4uZmxleC1yZWN0YW5nbGU2IHtcbiAgYmFja2dyb3VuZDogI2M2ZTFlODtcbn1cblxuLmZsZXgtcmVjdGFuZ2xlNyB7XG4gIGJhY2tncm91bmQ6ICM2NDgxNzc7XG59XG5cbi5mbGV4LXJlY3RhbmdsZTgge1xuICBiYWNrZ3JvdW5kOiAjMGQ1YWMxO1xufVxuXG4uZmxleC1yZWN0YW5nbGU5IHtcbiAgYmFja2dyb3VuZDogI2YyMDVlNjtcbn1cblxuLmZsZXgtcmVjdGFuZ2xlMTAge1xuICBiYWNrZ3JvdW5kOiAjMWMwMzY1O1xufVxuXG4uZmxleC1yZWN0YW5nbGUxMSB7XG4gIGJhY2tncm91bmQ6ICMxNGE5YWQ7XG59XG5cbi5mbGV4LXJlY3RhbmdsZTEyIHtcbiAgYmFja2dyb3VuZDogIzRjYTJmOTtcbn1cblxuLmZsZXgtcmVjdGFuZ2xlMSB7XG4gIGJhY2tncm91bmQ6ICNhNGU0M2Y7XG59XG5cbm1kYi1hY2NvcmRpb24gLm1kYi1hY2NvcmRpb24taW5kaWNhdG9yOjphZnRlciB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgY29udGVudDogXCLvgahcIjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgdHJhbnNmb3JtOiB1bnNldDtcbiAgYm9yZGVyOiAwO1xufSJdfQ== */\"","// Sortable\r\nimport { moveItemInList } from 'mdb-sortable';\r\n// tables\r\nimport {\r\n Component, OnInit, ElementRef, HostListener,\r\n AfterViewInit, ViewChild, ChangeDetectorRef,\r\n QueryList, ViewChildren\r\n} from '@angular/core';\r\nimport { MdbTableDirective, MdbTablePaginationComponent, MdbBtnDirective, MDBModalRef } from 'ng-uikit-pro-standard';\r\n// mensage type toast\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\n// forms and validations\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ComponentsType, ComponentIndicator, ComponentChart, ChartDatasets, ChartColors, Dashboard } from 'src/app/models/component-data';\r\nimport { DasboardService } from 'src/app/services/dashboard.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { groupBy, mergeMap, toArray } from 'rxjs/operators';\r\nimport { from, Observable } from 'rxjs';\r\nimport { GetTypePipe } from 'src/app/custom-pipe/GetTypePipe';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\n\r\n@Component({\r\n selector: 'app-dashboard-page',\r\n templateUrl: './dashboard-page.component.html',\r\n styleUrls: ['./dashboard-page.component.scss']\r\n})\r\nexport class DashboardPageComponent {\r\n\r\n}\r\n","export default \".diagramRight {\\n width: 79%;\\n}\\n\\n::ng-deep .orangefilter {\\n color: orange !important;\\n}\\n\\n::ng-deep .greenfilter {\\n color: #95c83d !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvZXN0aW1hdGlvbi9haS1lc3RpbWF0ZS9FOlxcRGV2XFxDVUJFVEVNUFxcbmV3Y3ViZS9zcmNcXGFwcFxccGFnZXNcXGVzdGltYXRpb25cXGFpLWVzdGltYXRlXFxhaS1lc3RpbWF0ZS5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvcGFnZXMvZXN0aW1hdGlvbi9haS1lc3RpbWF0ZS9haS1lc3RpbWF0ZS5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLFVBQUE7QUNDSjs7QURFQTtFQUNJLHdCQUFBO0FDQ0o7O0FERUU7RUFDRSx5QkFBQTtBQ0NKIiwiZmlsZSI6InNyYy9hcHAvcGFnZXMvZXN0aW1hdGlvbi9haS1lc3RpbWF0ZS9haS1lc3RpbWF0ZS5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5kaWFncmFtUmlnaHQge1xyXG4gICAgd2lkdGg6IDc5JTtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5vcmFuZ2VmaWx0ZXIge1xyXG4gICAgY29sb3I6IG9yYW5nZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgOjpuZy1kZWVwIC5ncmVlbmZpbHRlciB7XHJcbiAgICBjb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xyXG4gIH0iLCIuZGlhZ3JhbVJpZ2h0IHtcbiAgd2lkdGg6IDc5JTtcbn1cblxuOjpuZy1kZWVwIC5vcmFuZ2VmaWx0ZXIge1xuICBjb2xvcjogb3JhbmdlICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuZ3JlZW5maWx0ZXIge1xuICBjb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xufSJdfQ== */\"","import { DxDataGridComponent, DxDiagramComponent, DxListComponent, DxScrollViewComponent, DxSelectBoxComponent, DxTreeViewComponent, DxDropDownBoxComponent, \r\n DxFileUploaderComponent} from 'devextreme-angular';\r\nimport { IoConfigurationComponent } from '../io-configuration/io-configuration.component';\r\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { SystemComponentService } from 'src/app/services/system-component.service';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { DeltaworldService } from 'src/app/services/deltaworld.service';\r\nimport { EstimateService } from 'src/app/services/estimate.service';\r\nimport { UtilityService } from 'src/app/services/utility.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport ArrayStore from 'devextreme/data/array_store';\r\nimport DataGrid from \"devextreme/ui/data_grid\";\r\nimport { ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { LoadingService } from 'src/app/services/loading.service';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\n@Component({\r\n selector: 'ai-estimate',\r\n templateUrl: './ai-estimate.component.html',\r\n styleUrls: ['./ai-estimate.component.scss']\r\n})\r\nexport class AIestimateComponent implements OnInit {\r\n\r\n @ViewChild(DxTreeViewComponent, { static: false }) treeView;\r\n @ViewChild('fileUploader', { static: true }) fileUploader: DxFileUploaderComponent;\r\n @ViewChild(\"searchEstimate\", { static: false }) searchEstimate: DxSelectBoxComponent;\r\n @ViewChild(\"searchEstimateDefault\", { static: false }) searchEstimateDefault: DxSelectBoxComponent;\r\n\r\n\r\n @ViewChild(DxTreeViewComponent, { static: false }) treeView2;\r\n // @ViewChild(DxTreeViewComponent, { static: false }) treeView;\r\n\r\n\r\n @ViewChild('treeviewType', { static: false }) treeviewType: DxTreeViewComponent;\r\n @ViewChild('treeviewTag', { static: false }) treeviewTag: DxTreeViewComponent;\r\n\r\n\r\n\r\n @ViewChild('treeBoxType', { static: false }) treeBoxType: DxDropDownBoxComponent;\r\n @ViewChild('treeBoxTags', { static: false }) treeBoxTags: DxDropDownBoxComponent;\r\n\r\n\r\n @ViewChild('listrecomended', { static: false }) listrecomended: DxListComponent;\r\n\r\n\r\n\r\n @Input() openAI: any;\r\n @Input() dataSystemSelected: any;\r\n @Output() closeFirstModal = new EventEmitter();\r\n @Output() returnImage = new EventEmitter();\r\n @Output() eliminarFoto = new EventEmitter();\r\n @Output() importComponentData = new EventEmitter(); \r\n @Output() reloadSystem = new EventEmitter(); \r\n @Output() importComponents = new EventEmitter(); \r\n\r\n value: any[] = [];\r\n imgbase64: any;\r\n changeimage: boolean;\r\n modelSystemInformation = {\r\n systemid: \"0\",\r\n area: \"\",\r\n systemtype: 0,\r\n systemname: \"\",\r\n controldrawing: \"\",\r\n controldwimg: \"\",\r\n sort: \"\",\r\n qty: \"\",\r\n active: false,\r\n SystemBarName: '',\r\n MarkLib: false,\r\n SOP: null,\r\n DESCRIPTION: '',\r\n TAGNUM: '',\r\n TAGTEXT: '',\r\n SystemTypeid: 0,\r\n id: 0,\r\n };\r\n\r\n imgSelected: any = \"Not_Image\"\r\n\r\n filename: string;\r\n dataFinalBase64: any = \"\"\r\n\r\n\r\n constructor(\r\n private systemComponentService: SystemComponentService,\r\n private MapInformationService: MapInformationService,\r\n private estimateService: EstimateService,\r\n private deltaService: DeltaworldService,\r\n private activatedRouter: ActivatedRoute,\r\n private utilityService: UtilityService,\r\n private loadingService: LoadingService,\r\n private appConfig: AppConfigService,\r\n private translate: TranslateService,\r\n private userService: UserService,\r\n private toast: ToastService,\r\n private router: Router,\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n this.initForm()\r\n if (this.dataSystemSelected.base64 != undefined && this.dataSystemSelected.base64 != \"\") {\r\n\r\n this.MapInformationService.SaveInfoSites({method:\"Get_SystemImagePath\", systemid:this.dataSystemSelected.systemid})\r\n .subscribe(resp=>{\r\n if (resp.length > 0){\r\n this.MapInformationService.GetDocument(resp[0].ImagePath).subscribe(result => {\r\n this.imgSelected = result.filestring ? result.filestring : 'Not_Image';\r\n\r\n var data = result.filestring.substring(0, 5);\r\n let tipo = \"\"\r\n switch (data.toUpperCase()) {\r\n case \"IVBOR\": tipo = \"png\";\r\n break\r\n case \"/9J/4\": tipo = \"jpeg\";\r\n break\r\n case \"JVBER\": tipo = \"pdf\";\r\n break\r\n case \"UESDB\":\r\n var data2 = result.filestring.substring(0, 19);\r\n switch (data.toUpperCase()) {\r\n case \"UEsDBBQABgAIAAAAIQB\": tipo = \"xlsx\";\r\n break\r\n default:\r\n var data3 = result.filestring.substring(0, 18);\r\n switch (data.toUpperCase()) {\r\n case \"UEsDBBQABgAIAAAAIQ\": tipo = \"docx\";\r\n break\r\n default: tipo = \"zip\";\r\n }\r\n }\r\n break\r\n case \"UMFYI\": tipo = \"rar\";\r\n break\r\n case \"U1PKC\": tipo = \"txt\";\r\n break\r\n }\r\n\r\n this.dataFinalBase64 = \"data:image/\"+tipo+\";base64,\" + this.imgSelected\r\n this.imgbase64 = this.imgSelected;\r\n this.changeimage = true;\r\n })\r\n\r\n }\r\n })\r\n\r\n\r\n // let data = this.dataSystemSelected.base64.toString().split(\",\");\r\n\r\n // this.dataFinalBase64 = this.dataSystemSelected.base64.toString()\r\n // this.imgbase64 = data[0];\r\n // this.imgSelected = data[0]\r\n // this.changeimage = true;\r\n }\r\n }\r\n\r\n\r\n changeFile(ev) {\r\n if (ev.value.length > 0) {\r\n\r\n this.getBase64(ev.value[0]);\r\n }\r\n }\r\n\r\n BorrarDocument() {\r\n\r\n this.imgbase64 = null;\r\n this.imgSelected = 'Not_Image';\r\n this.dataFinalBase64 = \"\"\r\n this.modelSystemInformation.controldwimg = null\r\n this.value = []\r\n this.componentesEncontrados = []\r\n\r\n this.countsystems = 0\r\n this.dataSystems = []\r\n\r\n\r\n delete this.dataSystemSelected.base64\r\n\r\n this.eliminarFoto.emit(this.dataSystemSelected)\r\n }\r\n\r\n getBase64(file: File) {\r\n\r\n const reader = new FileReader();\r\n\r\n reader.onload = (e: any) => {\r\n\r\n let data = e.target.result.toString().split(\",\")\r\n\r\n this.dataFinalBase64 = e.target.result.toString()\r\n this.imgbase64 = data[1];\r\n this.imgSelected = data[1]\r\n this.changeimage = true;\r\n\r\n };\r\n reader.readAsDataURL(file);\r\n }\r\n\r\n openMultipleSystem: boolean = false\r\n filterNew: FormGroup\r\n\r\n initForm() {\r\n this.filterNew = new FormGroup({\r\n systemid: new FormControl('', []),\r\n systemtypeID: new FormControl('', []),\r\n partid: new FormControl('', []),\r\n verticalmarketid: new FormControl('', []),\r\n inputappnotes: new FormControl('', []),\r\n islibrary: new FormControl(true, []),\r\n projectname: new FormControl('', []),\r\n systemname: new FormControl('', []),\r\n projectbidstatusid: new FormControl('', []),\r\n outputappnotes: new FormControl('', []),\r\n tagids: new FormControl('', []),\r\n designerids: new FormControl('', []),\r\n estimateid: new FormControl('', []),\r\n componentType: new FormControl('', []),\r\n })\r\n\r\n }\r\n\r\n componentesEncontrados: any[] = []\r\n tags:any=\"\"\r\n tagsNew:any=\"\"\r\n\r\n nameSelected:any[]=[]\r\n\r\n showComponentImageAI() {\r\n\r\n if(this.dataFinalBase64 != \"\"){\r\n\r\n this.dataSystemSelected.base64 = this.dataFinalBase64\r\n\r\n this.MapInformationService.analyzeImage(this.dataFinalBase64).subscribe({\r\n next: (response: any = \"\") => {\r\n if (response != undefined && response != \"\") {\r\n // response += \",MAT\"\r\n // response = \"MAT\"\r\n this.tags = response\r\n this.tagsNew = response\r\n console.log(this.tags)\r\n console.log(this.tagsNew)\r\n this.MapInformationService.SaveInfoSites({ method: \"GetComponentsByTag\", tagids: response, systemtypeID: this.dataSystemSelected.systemTypeID })\r\n .subscribe(componets => {\r\n if (componets.length > 0) {\r\n this.componentesEncontrados = componets\r\n setTimeout(() => {\r\n // this.listrecomended.instance.selectAll()\r\n console.log(\"Aqui 1111\")\r\n setTimeout(() => {\r\n console.log(\"Aqui 2222\")\r\n this.componentesEncontrados.forEach(x=>{\r\n if (x.ID == undefined){\r\n console.log(x)\r\n // this.listrecomended.instance.unselectItem(x.DISPLAY_NAME)\r\n } else {\r\n this.nameSelected.push(x.DISPLAY_NAME)\r\n // this.listrecomended.instance.selectItem(x.DISPLAY_NAME)\r\n }\r\n })\r\n }, 1000);\r\n console.log(this.componentesEncontrados)\r\n }, 500);\r\n } else {\r\n this.componentesEncontrados = []\r\n }\r\n\r\n // setTimeout(() => {\r\n // this.SearchImage()\r\n // }, 500);\r\n })\r\n } else {\r\n // this.tags = \"\"\r\n // this.SearchImage()\r\n }\r\n },\r\n error: (error) => {\r\n console.error('API Error:', error);\r\n }\r\n });\r\n } else {\r\n this.toast.warning(\"You must select or drop a image\")\r\n }\r\n\r\n\r\n }\r\n\r\n closeModal() {\r\n this.closeFirstModal.emit()\r\n }\r\n\r\n asignarImagen() {\r\n if (this.dataFinalBase64 != \"\") {\r\n this.dataSystemSelected.base64 = this.dataFinalBase64\r\n }\r\n this.returnImage.emit(this.dataSystemSelected)\r\n }\r\n\r\n\r\n closeParentsSystemType() {\r\n this.treeviewTag.instance.collapseAll()\r\n }\r\n\r\n OpenParentsSystemType() {\r\n this.treeviewTag.instance.expandAll()\r\n }\r\n\r\n\r\n closeParentsComponentType() {\r\n this.treeviewType.instance.collapseAll()\r\n }\r\n\r\n OpenParentsComponentType() {\r\n this.treeviewType.instance.expandAll()\r\n }\r\n\r\n\r\n treeBoxValue0: string[] = [];\r\n\r\n syncTreeViewSelection0(e) {\r\n var component =\r\n (e && e.component) || (this.treeviewType && this.treeviewType.instance);\r\n\r\n if (!component) return;\r\n\r\n if (!this.treeBoxValue0) {\r\n component.unselectAll();\r\n }\r\n\r\n if (this.treeBoxValue0) {\r\n this.treeBoxValue0.forEach(\r\n function (value) {\r\n component.selectItem(value);\r\n }.bind(this)\r\n );\r\n }\r\n\r\n // setTimeout(() => {\r\n // this.treeviewType.instance.expandAll()\r\n // }, 500);\r\n\r\n }\r\n\r\n categorySelected: any[] = []\r\n treeBoxValue: string[];\r\n\r\n treeView_itemSelectionChanged0(e) {\r\n if (e.itemElement != undefined) {\r\n\r\n this.treeBoxValue0 = e.component.getSelectedNodeKeys();\r\n\r\n if (this.treeBoxValue0.length > 0) {\r\n this.categorySelected = e.itemData.ID\r\n this.filterNew.get(\"componentType\").setValue(this.treeBoxValue0)\r\n } else {\r\n this.categorySelected = []\r\n this.treeBoxValue0 = []\r\n this.treeBoxValue = []\r\n\r\n if (this.treeBoxType != undefined) {\r\n this.treeBoxType.instance.reset()\r\n }\r\n\r\n if (this.treeviewType != undefined) {\r\n this.treeviewType.instance.unselectAll()\r\n }\r\n this.filterNew.get(\"componentType\").setValue(\"\")\r\n }\r\n }\r\n }\r\n\r\n\r\n typeids: any[] = []\r\n syncTreeViewSelection2(e) {\r\n var component =\r\n (e && e.component) || (this.treeviewTag && this.treeviewTag.instance);\r\n\r\n if (!component) return;\r\n\r\n if (!this.treeBoxValue2) {\r\n component.unselectAll();\r\n }\r\n\r\n if (this.treeBoxValue2) {\r\n this.treeBoxValue2.forEach(\r\n function (value) {\r\n component.selectItem(value);\r\n }.bind(this)\r\n );\r\n }\r\n\r\n // setTimeout(() => {\r\n // this.treeviewTag.instance.expandAll()\r\n // }, 500);\r\n }\r\n\r\n treeBoxValue2: string[] = [];\r\n notAllowed: boolean = false\r\n FirtsTime: boolean = true\r\n\r\n treeView_itemSelectionChanged2(e) {\r\n if (e.itemElement != undefined && this.notAllowed == false) {\r\n // \r\n this.treeBoxValue2 = e.component.getSelectedNodeKeys();\r\n\r\n this.typeids = e.itemData.ID\r\n this.filterNew.get(\"systemtypeID\").setValue(this.treeBoxValue2)\r\n } else {\r\n this.notAllowed = false\r\n }\r\n\r\n\r\n if (e.itemElement != undefined) {\r\n const ids = e.component.getSelectedNodeKeys()\r\n if (ids.length > 0) {\r\n this.treeBoxValue2 = e.component.getSelectedNodeKeys();\r\n this.typeids = e.itemData.ID\r\n this.filterNew.get(\"systemtypeID\").setValue(this.treeBoxValue2)\r\n this.FirtsTime = false\r\n } else {\r\n this.typeids = []\r\n this.treeBoxValue2 = []\r\n if (this.treeBoxTags != undefined) {\r\n this.treeBoxTags.instance.reset()\r\n }\r\n\r\n if (this.treeviewTag != undefined) {\r\n this.treeviewTag.instance.unselectAll()\r\n }\r\n\r\n this.filterNew.get(\"systemtypeID\").setValue(\"\")\r\n }\r\n }\r\n }\r\n\r\n groupItemsFilter: any[] = []\r\n typeDatasource: any[] = []\r\n\r\n openFilterParents() {\r\n this.estimateService.Get_EstimateLibComponentsTreeCE2().subscribe(result => {\r\n this.groupItemsFilter = result\r\n });\r\n this.deltaService.GetEstimateSystemTypeCE().subscribe((result) => {\r\n this.typeDatasource = result;\r\n });\r\n }\r\n\r\n\r\n clearFilterIndividual(typeOfClear) {\r\n switch (typeOfClear) {\r\n case 'System Type':\r\n this.typeids = []\r\n this.treeBoxValue2 = []\r\n if (this.treeBoxTags != undefined) {\r\n this.treeBoxTags.instance.reset()\r\n }\r\n\r\n if (this.treeviewTag != undefined) {\r\n this.treeviewTag.instance.unselectAll()\r\n }\r\n\r\n this.filterNew.get(\"systemtypeID\").setValue(\"\")\r\n\r\n break\r\n case 'Component Type':\r\n\r\n this.categorySelected = []\r\n this.treeBoxValue = []\r\n\r\n if (this.treeBoxType != undefined) {\r\n this.treeBoxType.instance.reset()\r\n }\r\n\r\n if (this.treeviewType != undefined) {\r\n this.treeviewType.instance.unselectAll()\r\n }\r\n this.filterNew.get(\"componentType\").setValue(\"\")\r\n break\r\n case 'Estimate ID':\r\n this.searchEstimate.instance.reset()\r\n this.filterNew.get(\"estimateid\").setValue(\"\")\r\n this.searchEstimate.placeholder = \"\"\r\n\r\n break\r\n }\r\n this.SearchImage()\r\n console.log(\"1\")\r\n }\r\n\r\n\r\n base64Imagenes: any[] = []\r\n dataSystems: any[] = []\r\n SearchImage(loadImages:boolean = false) {\r\n\r\n let settings: any = localStorage.getItem('settings');\r\n if (settings && settings != 'null') {\r\n settings = JSON.parse(settings);\r\n if (settings.estimateidDefault) {\r\n let infoFilter = this.filterNew.value\r\n // let data = {\r\n // method: \"Get_AreaSystemAllCE2NyComponentsIdsWithouParent\", //Get_AreaSystemAllCE2NyComponentsIds || Get_AreaSystemAllCE2\r\n // systemids: infoFilter.systemid,\r\n // systemtypeids: infoFilter.systemtypeID != \"\" ? infoFilter.systemtypeID.join(\",\") : \"\",\r\n // componentids: infoFilter.componentType != \"\" ? infoFilter.componentType.join(\",\") : \"\",\r\n // estimateid: infoFilter.estimateid,\r\n // islibrary: infoFilter.islibrary == \"Yes\" ? 1 : infoFilter.islibrary\r\n // }\r\n\r\n let data = {\r\n method: \"GetSimilarSystemByTags\", //Get_AreaSystemAllCE2NyComponentsIds || Get_AreaSystemAllCE2\r\n systemtype: this.dataSystemSelected.systemTypeID,\r\n componentids: \"\",\r\n tags: this.tagsNew,\r\n islibrary: infoFilter.islibrary == \"Yes\" || infoFilter.islibrary == true ? 1 : infoFilter.islibrary,\r\n similarity_type:\"fuzzy\" //normal y fuzzy\r\n }\r\n\r\n console.log(data)\r\n console.log(this.tags)\r\n console.log(this.tagsNew)\r\n\r\n // this.estimateService.GetSystemArea(settings.estimateidDefault).subscribe((result) => {\r\n this.MapInformationService.SaveInfoSites2(data).subscribe((result) => {\r\n if (result.length > 0){\r\n if (result[0].response != \"\"){\r\n const array = JSON.parse(result[0].response);\r\n this.countsystems = array.length\r\n this.dataSystems = array\r\n if(loadImages){\r\n this.importComponent()\r\n }\r\n } else {\r\n }\r\n } else {\r\n this.countsystems = 0\r\n this.dataSystems = []\r\n this.toast.warning(\"There are no systems with the components found\")\r\n\r\n }\r\n })\r\n\r\n }\r\n }\r\n }\r\n\r\n countsystems: any = 0\r\n\r\n\r\n importComponent() {\r\n this.openFilterParents()\r\n this.openMultipleSystem = true\r\n if (this.dataSystems.length > 0) {\r\n this.getbase64Info()\r\n this.showImages = true\r\n } else {\r\n this.showImages = false\r\n }\r\n }\r\n\r\n showImages: boolean = false\r\n getbase64Info() {\r\n this.base64Imagenes = []\r\n let contador = 0\r\n console.log(this.dataSystems)\r\n for (let i = 0; i < this.dataSystems.length; i++) {\r\n this.MapInformationService.GetDocumentThumImg(this.dataSystems[i].imagepath).subscribe(result => {\r\n let tipo\r\n var data = result.filestring.substring(0, 5);\r\n switch (data.toUpperCase()) {\r\n case \"/9J/4\": tipo = \"jpeg\";\r\n break\r\n default:\r\n tipo = \"png\"\r\n break\r\n }\r\n let informacion = {\r\n tipo: tipo,\r\n base64: result.filestring,\r\n info: this.dataSystems[i],\r\n // Sort: this.dataSystems[i].Sort,\r\n selected:false\r\n }\r\n this.base64Imagenes.push(informacion)\r\n contador++\r\n if (contador == this.base64Imagenes.length) {\r\n this.base64Imagenes.sort(function (a, b) { return a.Sort - b.Sort; })\r\n }\r\n }, error => {\r\n })\r\n }\r\n }\r\n\r\n\r\n onSelectionChanged(data) {\r\n console.log(data)\r\n if (this.listrecomended.selectedItems.length > 0) {\r\n this.categorySelected = this.listrecomended.selectedItems.map(x => Number(x.ID))\r\n\r\n this.nameSelected = this.listrecomended.selectedItems.map(x => Number(x.ID))\r\n\r\n this.filterNew.get(\"componentType\").setValue(this.categorySelected)\r\n // this.SearchImage()\r\n console.log(\"2\")\r\n } else {\r\n this.categorySelected = []\r\n this.filterNew.get(\"componentType\").setValue([])\r\n // this.SearchImage()\r\n console.log(\"3\")\r\n }\r\n }\r\n\r\n\r\n selectItem(event, data){\r\n let dataTempo\r\n // if (event.value){\r\n dataTempo = this.base64Imagenes.map(x=>{\r\n if (x.info.systemid == data.info.systemid){\r\n x.selected = event.value\r\n } else {\r\n x.selected = !event.value\r\n }\r\n return x\r\n })\r\n // } else {\r\n // dataTempo = this.base64Imagenes.map(x=>{\r\n // x.selected = false\r\n // return x\r\n // })\r\n // }\r\n\r\n this.base64Imagenes = dataTempo\r\n\r\n }\r\n\r\n\r\n BuscarImagen(e){\r\n setTimeout(() => {\r\n this.SearchImage()\r\n console.log(\"4\")\r\n }, 500);\r\n }\r\n\r\n\r\n ImportSystem(){\r\n const systemSelected = this.base64Imagenes.filter(x=>x.selected)[0].info.systemid\r\n \r\n\r\n this.dataSystemSelected.sytemOrigin = systemSelected\r\n\r\n\r\n this.importComponentData.emit(this.dataSystemSelected)\r\n this.closeFirstModal.emit()\r\n\r\n }\r\n\r\n importComponentsInfo(){\r\n\r\n\r\n if(this.dataFinalBase64 != \"\"){\r\n const idsComponents = this.listrecomended.selectedItems.map(x => Number(x.ID))\r\n this.dataSystemSelected.idsComponents = idsComponents\r\n this.importComponents.emit(this.dataSystemSelected)\r\n\r\n } else {\r\n this.toast.warning(\"You must select or drop a image\")\r\n }\r\n\r\n }\r\n\r\n imagenFullScreen:any=\"\"\r\n tipoimagen:any=\"\"\r\n openModalFullScreen:boolean = false\r\n\r\n Openimage(base64, tipo, info) {\r\n this.imagenFullScreen = base64;\r\n this.openModalFullScreen = true;\r\n this.tipoimagen = tipo;\r\n }\r\n\r\n\r\n importComponentsDirect(){\r\n console.log(this.listrecomended.selectedItems)\r\n console.log(\"Aquiii\")\r\n\r\n let data = this.listrecomended.selectedItems\r\n\r\n let uniqueItemsData = this.getUniqueItems(data)\r\n\r\n console.log(uniqueItemsData)\r\n\r\n let stringComponent = \"\"\r\n let contador = 0\r\n uniqueItemsData.forEach(x => {\r\n if(x.ID == undefined){\r\n contador++\r\n } else {\r\n contador++\r\n if (stringComponent == \"\") {\r\n stringComponent += x.ID + \"/\" + contador * -1\r\n } else {\r\n stringComponent += \",\" + x.ID + \"/\" + contador * -1\r\n }\r\n }\r\n })\r\n\r\n console.log(this.dataSystemSelected)\r\n const info = {\r\n \"method\": \"insert_EstimateRevisionAreaSystemDetail2\",\r\n \"systemid\": this.dataSystemSelected.systemid + \"-1\",\r\n \"componentids\": stringComponent\r\n }\r\n\r\n console.log(info)\r\n\r\n \r\n\r\n this.MapInformationService.SaveInfoSites(info)\r\n .subscribe(resp=>{\r\n this.closeModal()\r\n this.dataSystemSelected.sytemOrigin = this.dataSystemSelected.systemid\r\n this.closeFirstModal.emit()\r\n this.reloadSystem.emit()\r\n this.toast.success(\"Build Successfully\")\r\n })\r\n\r\n \r\n }\r\n\r\n\r\n getUniqueItems(arr) {\r\n const uniqueMap = new Map();\r\n arr.forEach(item => {\r\n if (!uniqueMap.has(item.ID)) {\r\n uniqueMap.set(item.ID, item);\r\n }\r\n });\r\n return Array.from(uniqueMap.values());\r\n}\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {\r\n DxDropDownBoxModule, DxButtonModule, DxCheckBoxModule, DxDropDownButtonModule, DxNumberBoxModule, DxPopupModule, DxScrollViewModule, DxSelectBoxModule, DxSwitchModule, DxTextAreaModule, DxTextBoxModule, DxTreeViewModule, DxTagBoxModule, DxDataGridModule, DxDateBoxModule, DxRadioGroupModule, DxAccordionModule,\r\n DxTabPanelModule,\r\n DxAutocompleteModule,\r\n DxTabsModule,\r\n DxTemplateModule,\r\n DxToolbarModule,\r\n DxSortableModule,\r\n DxDiagramModule,\r\n DxFileUploaderModule,\r\n DxTreeListModule,\r\n DxHtmlEditorModule,\r\n DxTooltipModule,\r\n DxSpeedDialActionModule,\r\n DxListModule\r\n} from 'devextreme-angular';\r\nimport { SystemControllerModule } from 'src/app/pages/estimation/system-controller/system-controller.module';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { AIestimateComponent } from './ai-estimate.component';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [AIestimateComponent],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxTreeViewModule,\r\n DxButtonModule,\r\n DxDropDownButtonModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxCheckBoxModule,\r\n DxTextBoxModule,\r\n DxNumberBoxModule,\r\n DxTextAreaModule,\r\n DxSelectBoxModule,\r\n DxSwitchModule,\r\n DxDropDownBoxModule,\r\n SystemControllerModule,\r\n DxTagBoxModule,\r\n DxDataGridModule,\r\n DxDateBoxModule,\r\n DxRadioGroupModule,\r\n DxAccordionModule,\r\n DxTabPanelModule,\r\n DxAutocompleteModule,\r\n DxTabsModule,\r\n DxTemplateModule,\r\n DxToolbarModule,\r\n DxSortableModule,\r\n DxDiagramModule,\r\n DxFileUploaderModule,\r\n DxTreeListModule,\r\n DxHtmlEditorModule,\r\n DxTooltipModule,\r\n DxSpeedDialActionModule,\r\n DxListModule\r\n\r\n ],\r\n exports: [AIestimateComponent]\r\n})\r\nexport class AIestimateModule { }\r\n","export default \".diagramRight {\\n width: 79%;\\n}\\n\\n::ng-deep .orangefilter {\\n color: orange !important;\\n}\\n\\n::ng-deep .greenfilter {\\n color: #95c83d !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvZXN0aW1hdGlvbi9pbXBvcnQtZnJvbS1saWJyYXJ5L0U6XFxEZXZcXENVQkVURU1QXFxuZXdjdWJlL3NyY1xcYXBwXFxwYWdlc1xcZXN0aW1hdGlvblxcaW1wb3J0LWZyb20tbGlicmFyeVxcaW1wb3J0LWZyb20tbGlicmFyeS5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvcGFnZXMvZXN0aW1hdGlvbi9pbXBvcnQtZnJvbS1saWJyYXJ5L2ltcG9ydC1mcm9tLWxpYnJhcnkuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxVQUFBO0FDQ0o7O0FERUE7RUFDSSx3QkFBQTtBQ0NKOztBREVFO0VBQ0UseUJBQUE7QUNDSiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2VzdGltYXRpb24vaW1wb3J0LWZyb20tbGlicmFyeS9pbXBvcnQtZnJvbS1saWJyYXJ5LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmRpYWdyYW1SaWdodCB7XHJcbiAgICB3aWR0aDogNzklO1xyXG59XHJcblxyXG46Om5nLWRlZXAgLm9yYW5nZWZpbHRlciB7XHJcbiAgICBjb2xvcjogb3JhbmdlICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICA6Om5nLWRlZXAgLmdyZWVuZmlsdGVyIHtcclxuICAgIGNvbG9yOiAjOTVjODNkICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuLy8gOjpuZy1kZWVwIC5keC1vdmVybGF5LWNvbnRlbnQuZHgtcG9wdXAtbm9ybWFsLmR4LXJlc2l6YWJsZS5keC1wb3B1cC1mbGV4LWhlaWdodCB7XHJcbi8vICAgd2lkdGg6IDM1MHB4ICFpbXBvcnRhbnQ7XHJcbi8vIH1cclxuXHJcblxyXG4vLyA6Om5nLWRlZXAgLmR4LXNjcm9sbGFibGUuZHgtdmlzaWJpbGl0eS1jaGFuZ2UtaGFuZGxlci5keC1zY3JvbGxhYmxlLXZlcnRpY2FsLmR4LXNjcm9sbGFibGUtc2ltdWxhdGVkIHtcclxuLy8gICB3aWR0aDogMzUwcHg7XHJcbi8vIH0iLCIuZGlhZ3JhbVJpZ2h0IHtcbiAgd2lkdGg6IDc5JTtcbn1cblxuOjpuZy1kZWVwIC5vcmFuZ2VmaWx0ZXIge1xuICBjb2xvcjogb3JhbmdlICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuZ3JlZW5maWx0ZXIge1xuICBjb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xufSJdfQ== */\"","import { DxDataGridComponent, DxDiagramComponent, DxListComponent, DxScrollViewComponent, DxSelectBoxComponent, DxTreeViewComponent, DxDropDownBoxComponent } from 'devextreme-angular';\r\nimport { IoConfigurationComponent } from '../io-configuration/io-configuration.component';\r\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewContainerRef } from '@angular/core';\r\nimport { SystemComponentService } from 'src/app/services/system-component.service';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { DeltaworldService } from 'src/app/services/deltaworld.service';\r\nimport { EstimateService } from 'src/app/services/estimate.service';\r\nimport { UtilityService } from 'src/app/services/utility.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport ArrayStore from 'devextreme/data/array_store';\r\nimport DataGrid from \"devextreme/ui/data_grid\";\r\nimport { ViewChild } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { LoadingService } from 'src/app/services/loading.service';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\n@Component({\r\n selector: 'import-from-library',\r\n templateUrl: './import-from-library.component.html',\r\n styleUrls: ['./import-from-library.component.scss']\r\n})\r\nexport class ImportFromLibraryComponent implements OnInit {\r\n\r\n @ViewChild(\"contenedorFullObjectInformation\", { read: ViewContainerRef, static: false }) contenedorFullObjectInformation: ViewContainerRef;\r\n @ViewChild('gridObjectInformationProgrammer', { static: false }) gridObjectInformationProgrammer: DxDataGridComponent;\r\n @ViewChild('gridObjectInformationComponents', { static: false }) gridObjectInformationComponents: DxDataGridComponent;\r\n @ViewChild('gridObjectInformationMobile', { static: false }) gridObjectInformationMobile: DxDataGridComponent;\r\n @ViewChild(\"refGridObjectInformation\", { static: false }) refGridObjectInformation: TemplateRef;\r\n @ViewChild(\"gridObjectInformation\", { static: false }) gridObjectInformation: DxDataGridComponent;\r\n @ViewChild('editMultipleSystems', { static: false }) editMultipleSystems: DxDataGridComponent;\r\n @ViewChild('treeViewAreaSystem', { static: false }) treeViewAreaSystem: DxTreeViewComponent;\r\n @ViewChild('treeViewSystemArea', { static: false }) treeViewSystemArea: DxTreeViewComponent;\r\n @ViewChild(\"ioconfiguration\", { static: false }) ioconfiguration: IoConfigurationComponent;\r\n @ViewChild('treeViewComponent', { static: false }) treeViewComponent: DxTreeViewComponent;\r\n @ViewChild(\"searchEstimate\", { static: false }) searchEstimate: DxSelectBoxComponent;\r\n @ViewChild(\"newPartSelect\", { static: false }) newPartSelect: DxSelectBoxComponent;\r\n @ViewChild(DxDiagramComponent, { static: false }) diagram: DxDiagramComponent;\r\n @ViewChild(\"appNotes\", { static: false }) appNotes: DxSelectBoxComponent;\r\n\r\n\r\n\r\n\r\n @ViewChild(DxTreeViewComponent, { static: false }) treeView2;\r\n // @ViewChild(DxTreeViewComponent, { static: false }) treeView;\r\n\r\n\r\n @ViewChild('treeviewType', { static: false }) treeviewType: DxTreeViewComponent;\r\n @ViewChild('treeviewTag', { static: false }) treeviewTag: DxTreeViewComponent;\r\n\r\n\r\n\r\n @ViewChild('treeBoxType', { static: false }) treeBoxType: DxDropDownBoxComponent;\r\n @ViewChild('treeBoxTags', { static: false }) treeBoxTags: DxDropDownBoxComponent;\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n @Input() offsetHeight;\r\n @Input() title = \"\";\r\n // diagram\r\n // @ViewChild(DxDiagramComponent, { static: false }) diagram: DxDiagramComponent;\r\n @Input() estimateid = '';\r\n @Input() estimatenamestr = '';\r\n @Input() projectid = '';\r\n @Input() imgSelected = '';\r\n @Input() FirstGrid: any;\r\n @Input() modal: any;\r\n @Input() systemid: any;\r\n @Output() hidden = new EventEmitter();\r\n @Input() _systemid: any;\r\n @Input() VieneDe: any;\r\n @Input() componetsIDS: any; \r\n @Input() dataSystemSelected: any; \r\n\r\n estimatename = '';\r\n estimates = [];\r\n areaSystemComponents = [];\r\n areaSystemComponentsCopy = [];\r\n systemComponentDetails = [];\r\n groupItems = [];\r\n areaDynamic: any[] = []\r\n areasCopy: any[] = []\r\n groupItems2: any[] = []\r\n expanded = true;\r\n primeraVez: boolean = true\r\n slideshowDelay = 2000;\r\n allInfoPictures: any[] = []\r\n CopyallInfoPictures: any[] = []\r\n\r\n\r\n\r\n defaultVisible = false;\r\n cancelButtonEditPartAndLabor: { text: string; elementAttr: { id: string; }; onClick: () => void; };\r\n saveButtonEditPartAndLabor: { text: string; icon: string; elementAttr: { id: string; }; onClick: () => void; };\r\n objectReferenceSelected: any;\r\n prefixAll: any;\r\n rowSelected: any[];\r\n popupMultipleItems: boolean;\r\n cancelButtonDeletePartAndLabor: { text: string; elementAttr: { id: string; }; onClick: () => void; };\r\n objectReferenceSelect: any;\r\n saveButtonDeletePartAndLabor: { text: string; icon: string; elementAttr: { id: string; }; onClick: () => void; };\r\n cancelButtonNewPart: { text: any; elementAttr: { id: string; }; onClick: () => void; };\r\n saveButtonNewPart: { text: any; icon: string; elementAttr: { id: string; }; onClick: () => void; };\r\n drawingTemplates: any[] = [];\r\n cancelButtonEditAreaSystem: { text: any; elementAttr: { id: string; }; onClick: () => void; };\r\n saveButtonEditAreaSystem: { text: any; icon: string; elementAttr: { id: string; }; onClick: () => void; };\r\n\r\n\r\n // @Input('systemid')\r\n // set systemid(systemid: any) {\r\n // if (systemid != undefined){\r\n // this._systemid = systemid;\r\n // this.ngOnInit();\r\n // }\r\n // }\r\n\r\n // get systemid(): any { return this._systemid; }\r\n\r\n\r\n\r\n currentComponentId = 0;\r\n popupViewInfoComponent = false;\r\n\r\n popupNewComponent = false;\r\n components: any[] = [];\r\n componentsGroups: any[] = [];\r\n\r\n listImg = [\r\n '7.svg',\r\n '8.svg',\r\n '10.svg',\r\n '10-01.svg',\r\n '11.svg',\r\n '12.svg',\r\n '15.svg',\r\n '17.svg',\r\n '23.svg',\r\n '25.svg',\r\n '26.svg',\r\n '29.svg',\r\n '31.svg',\r\n '51.svg',\r\n '53.svg',\r\n '57.svg',\r\n '65.svg',\r\n '69.svg',\r\n '86.svg',\r\n ];\r\n\r\n templateJSON = { \"page\": { \"width\": 24491, \"height\": 15817, \"pageColor\": -1, \"pageWidth\": 15817, \"pageHeight\": 24491, \"pageLandscape\": true, \"viewUnits\": \"in\", \"units\": \"in\" }, \"connectors\": [], \"shapes\": [] };\r\n componentsGroupsOriginal: any[];\r\n\r\n viewTypeCard: any = 1;\r\n\r\n partDataSource: any;\r\n partselected: any;\r\n globalPrefix = null;\r\n pointTypeGlobal = null;\r\n commisioningSheet = [];\r\n popupAssociate: boolean = false\r\n firstTimeChange: boolean = true\r\n registryTemporal: any\r\n nombrecomponente: any = \"\"\r\n EnableImage: boolean = false\r\n component: boolean = false\r\n componentid: any = 0\r\n openSystem: boolean = false;\r\n enableIOALL: boolean = false;\r\n programInfoDataSource: any;\r\n programInfoStore: ArrayStore = new ArrayStore({\r\n data: [],\r\n key: \"DETAILID\"\r\n });\r\n programInfo = [];\r\n modalProgrammer: boolean = false\r\n pointTypeSelect = [];\r\n customheight = \"auto\";\r\n popupEditPartAndLabor = false;\r\n rowsToEditPartAndLabor = [];\r\n popupDeletePartAndLabor: boolean = false\r\n programDetail: any[] = []\r\n popupFullScreenGridObjectInformation = false;\r\n popupViewImg: boolean = false\r\n openModalPartsComponent: boolean = false\r\n idComponent: any\r\n DataComponent: any\r\n value: any[] = [];\r\n imgbase64: string;\r\n changeimage: boolean;\r\n filename: string;\r\n modelSystemInformation = {\r\n systemid: \"0\",\r\n area: \"\",\r\n systemtype: 0,\r\n systemname: \"\",\r\n controldrawing: \"\",\r\n controldwimg: \"\",\r\n sort: \"\",\r\n qty: \"\",\r\n active: false,\r\n SystemBarName: '',\r\n MarkLib: false,\r\n SOP: null,\r\n DESCRIPTION: '',\r\n TAGNUM: '',\r\n TAGTEXT: '',\r\n SystemTypeid: 0,\r\n id: 0,\r\n };\r\n systemComponentDetailsComponents: any[] = []\r\n\r\n SystemUpdated: any[] = []\r\n ModalConfirmarChangeWidthAndHeight: boolean = false\r\n contadorFinal: any = 0\r\n OpenSincro: boolean = false\r\n SystemComponents: any[] = []\r\n dontShow: boolean = false\r\n firtsTime: boolean = true\r\n popupEditAreaSystem: boolean = false\r\n\r\n // dataSourceFilter = [\"By Type\", \"By Tag\"]\r\n dataSourceFilter = [\"By Type\"]\r\n\r\n constructor(\r\n private systemComponentService: SystemComponentService,\r\n private MapInformationService: MapInformationService,\r\n private estimateService: EstimateService,\r\n private deltaService: DeltaworldService,\r\n private activatedRouter: ActivatedRoute,\r\n private utilityService: UtilityService,\r\n private loadingService: LoadingService,\r\n private appConfig: AppConfigService,\r\n private translate: TranslateService,\r\n private userService: UserService,\r\n private toast: ToastService,\r\n private router: Router,\r\n ) {\r\n\r\n\r\n // this.estimatenamestr = activatedRouter.snapshot.queryParamMap.get('project');\r\n // this.estimateid = activatedRouter.snapshot.queryParamMap.get('estimateid');\r\n // this.systemid = activatedRouter.snapshot.queryParamMap.get('systemid');\r\n\r\n\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.initForm()\r\n\r\n this.estimateService.Get_EstimateLibComponentsTreeCE2().subscribe(result => {\r\n this.groupItemsFilter = result\r\n\r\n this.deltaService.GetEstimateSystemTypeCE().subscribe((result) => {\r\n\r\n this.typeDatasource = result;\r\n this.initImport()\r\n this.SearchImage()\r\n });\r\n });\r\n\r\n\r\n\r\n this.addEstimateID = {\r\n icon: \"fas fa-cog\",\r\n type: \"button\",\r\n onClick: () => {\r\n let settings: any = localStorage.getItem('settings');\r\n if (settings && settings != 'null') {\r\n settings = JSON.parse(settings);\r\n if (settings.estimateidDefault) {\r\n this.estimateService.Get_EstimateListNavAll('', settings.estimateidDefault).subscribe(res => {\r\n if (res.length > 0) {\r\n let obj = res[0];\r\n\r\n if (!obj)\r\n return;\r\n\r\n // this.updateEstimate({ selectedItem: { PROJECT_NAME: obj.PROJECT_NAME, ID: settings.estimateidDefault } });\r\n setTimeout(() => {\r\n this.estimatenameDefault = obj.PROJECT_NAME;\r\n this.searchEstimateDefault.placeholder = obj.PROJECT_NAME\r\n this.estimateidDefault = obj.ID;\r\n }, 1000);\r\n }\r\n let mythis = this\r\n this.estimateDataSource = new CustomStore({\r\n key: \"ID\",\r\n // useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == null) { loadOptions.searchValue = \" \" } else { loadOptions.searchValue = loadOptions.searchValue }\r\n return mythis.MapInformationService.GetAllInfoDinamicoEstimate(\"Get_EstimateListNavAll\", loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n })\r\n }\r\n }\r\n this.popupDefaultEstimate = true\r\n }\r\n };\r\n\r\n this.cancelButtonDefaultEstimate = {\r\n text: this.translate.instant('ModalSystemType.btnClose'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupDefaultEstimate = false;\r\n // this.defaultEstimateId = null;\r\n this.estimatenameDefault = null;\r\n // this.close();\r\n },\r\n };\r\n\r\n this.saveButtonDefaultEstimate = {\r\n text: this.translate.instant('ModalSystemType.btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n\r\n // if (!this.defaultEstimateId) {\r\n // this.toast.warning(\"Please select default estimate\")\r\n // return;\r\n // }\r\n\r\n let settings: any = localStorage.getItem('settings');\r\n let mythis = this\r\n\r\n if (settings && settings != 'null') {\r\n settings = JSON.parse(settings);\r\n settings.estimateidDefault = this.estimateidDefault;\r\n let userSetting: any = {};\r\n this.userService.settings.next(settings);\r\n // userSetting.userid = localStorage.getItem('customerid');\r\n userSetting.usersettings = JSON.stringify(this.userService.settings.value);\r\n this.userService.saveUserSettingCoor(userSetting).subscribe(result => {\r\n this.toast.success(this.translate.instant('msgSavSucc'));\r\n this.popupDefaultEstimate = false;\r\n localStorage.setItem('settings', JSON.stringify(settings));\r\n this.estimateDataSource = []\r\n this.filter.get(\"estimateid\").setValue(settings.estimateidDefault)\r\n this.estimateDataSourceFiltro = []\r\n setTimeout(() => {\r\n this.estimateDataSourceFiltro = new CustomStore({\r\n key: \"ID\",\r\n // useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n // if(loadOptions.searchValue == \"\" || loadOptions.searchValue == null){loadOptions.searchValue = \" \"} else { loadOptions.searchValue = loadOptions.searchValue}\r\n return mythis.MapInformationService.GetAllInfoDinamicoEstimate(\"Get_EstimateListNavAll\", loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n }, 2000);\r\n this.estimateService.Get_EstimateListNavAll('', settings.estimateidDefault).subscribe(res => {\r\n if (res.length > 0) {\r\n let obj = res[0];\r\n\r\n if (!obj)\r\n return;\r\n\r\n this.updateEstimateDefault({ selectedItem: { PROJECT_NAME: obj.PROJECT_NAME, ID: settings.estimateidDefault } });\r\n }\r\n })\r\n // this.searchEstimateDefault.placeholder =\r\n // this.ngOnInit()\r\n })\r\n }\r\n // this.updateNetworkConfiguration();\r\n },\r\n };\r\n\r\n\r\n if (this.componetsIDS != '') {\r\n this.categorySelected = this.componetsIDS.split(\",\").map(x => Number(x))\r\n this.filter.get(\"componentType\").setValue(this.categorySelected)\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n\r\n addEstimateID: { icon: string; type: string; onClick: () => void; };\r\n estimatenameDefault = '';\r\n estimateidDefault = 0;\r\n @ViewChild(\"searchEstimateDefault\", { static: false }) searchEstimateDefault: DxSelectBoxComponent;\r\n filter: FormGroup\r\n DefaultSystem: FormGroup\r\n\r\n importComponentFromLibrary() {\r\n this.modal = true\r\n\r\n this.initImport()\r\n this.cancelButtonDefaultEstimate = {\r\n text: this.translate.instant('ModalSystemType.btnClose'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupDefaultEstimate = false;\r\n // this.defaultEstimateId = null;\r\n this.estimatenameDefault = null;\r\n // this.close();\r\n },\r\n };\r\n\r\n this.saveButtonDefaultEstimate = {\r\n text: this.translate.instant('ModalSystemType.btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n\r\n // if (!this.defaultEstimateId) {\r\n // this.toast.warning(\"Please select default estimate\")\r\n // return;\r\n // }\r\n\r\n let settings: any = localStorage.getItem('settings');\r\n let mythis = this\r\n\r\n if (settings && settings != 'null') {\r\n settings = JSON.parse(settings);\r\n settings.estimateidDefault = this.estimateidDefault;\r\n let userSetting: any = {};\r\n this.userService.settings.next(settings);\r\n // userSetting.userid = localStorage.getItem('customerid');\r\n userSetting.usersettings = JSON.stringify(this.userService.settings.value);\r\n this.userService.saveUserSettingCoor(userSetting).subscribe(result => {\r\n this.toast.success(this.translate.instant('msgSavSucc'));\r\n this.popupDefaultEstimate = false;\r\n localStorage.setItem('settings', JSON.stringify(settings));\r\n this.estimateDataSource = []\r\n this.filter.get(\"estimateid\").setValue(settings.estimateidDefault)\r\n this.estimateDataSourceFiltro = []\r\n setTimeout(() => {\r\n this.estimateDataSourceFiltro = new CustomStore({\r\n key: \"ID\",\r\n // useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n // if(loadOptions.searchValue == \"\" || loadOptions.searchValue == null){loadOptions.searchValue = \" \"} else { loadOptions.searchValue = loadOptions.searchValue}\r\n return mythis.MapInformationService.GetAllInfoDinamicoEstimate(\"Get_EstimateListNavAll\", loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n }, 2000);\r\n this.estimateService.Get_EstimateListNavAll('', settings.estimateidDefault).subscribe(res => {\r\n if (res.length > 0) {\r\n let obj = res[0];\r\n\r\n if (!obj)\r\n return;\r\n\r\n this.updateEstimateDefault({ selectedItem: { PROJECT_NAME: obj.PROJECT_NAME, ID: settings.estimateidDefault } });\r\n }\r\n })\r\n // this.searchEstimateDefault.placeholder =\r\n // this.ngOnInit()\r\n })\r\n }\r\n // this.updateNetworkConfiguration();\r\n },\r\n };\r\n\r\n // this.customScroll()\r\n // setTimeout(() => {\r\n // this.scrollViewstep.instance.release(true)\r\n // }, 2000);\r\n\r\n this.addEstimateID = {\r\n icon: \"fas fa-cog\",\r\n type: \"button\",\r\n onClick: () => {\r\n let settings: any = localStorage.getItem('settings');\r\n if (settings && settings != 'null') {\r\n settings = JSON.parse(settings);\r\n if (settings.estimateidDefault) {\r\n this.estimateService.Get_EstimateListNavAll('', settings.estimateidDefault).subscribe(res => {\r\n if (res.length > 0) {\r\n let obj = res[0];\r\n\r\n if (!obj)\r\n return;\r\n\r\n // this.updateEstimate({ selectedItem: { PROJECT_NAME: obj.PROJECT_NAME, ID: settings.estimateidDefault } });\r\n setTimeout(() => {\r\n this.estimatenameDefault = obj.PROJECT_NAME;\r\n this.searchEstimateDefault.placeholder = obj.PROJECT_NAME\r\n this.estimateidDefault = obj.ID;\r\n }, 1000);\r\n }\r\n let mythis = this\r\n this.estimateDataSource = new CustomStore({\r\n key: \"ID\",\r\n // useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == null) { loadOptions.searchValue = \" \" } else { loadOptions.searchValue = loadOptions.searchValue }\r\n return mythis.MapInformationService.GetAllInfoDinamicoEstimate(\"Get_EstimateListNavAll\", loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n })\r\n }\r\n }\r\n this.popupDefaultEstimate = true\r\n }\r\n };\r\n }\r\n popupDefaultEstimate: boolean = false\r\n cargandoScroll: number = 0\r\n cancelButtonDefaultEstimate: { text: string; elementAttr: { id: string; }; onClick: () => void; };\r\n saveButtonDefaultEstimate: { text: string; icon: string; elementAttr: { id: string; }; onClick: () => void; };\r\n\r\n customScroll() {\r\n var mythis = this;\r\n $('#myScrollSales').on('scroll', function () {\r\n\r\n if (($(this).scrollTop() + $(this).innerHeight() + 100) >= $(this)[0].scrollHeight && mythis.cargandoScroll == 0) {\r\n }\r\n\r\n });\r\n }\r\n infoPartDetail: any = []\r\n stimateDataSource: any = []\r\n projects: any = []\r\n infoSystemType: any[] = []\r\n estimateDataSource: any = []\r\n estimateDataSourceFiltro: any = []\r\n\r\n infoToFilters() {\r\n let mythis = this\r\n\r\n this.estimateDataSource = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == null) { loadOptions.searchValue = \" \" } else { loadOptions.searchValue = loadOptions.searchValue }\r\n return mythis.MapInformationService.GetAllInfoDinamicoEstimate(\"Get_EstimateListNavAll\", loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n this.estimateDataSourceFiltro = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n return mythis.MapInformationService.GetAllInfoDinamicoEstimate(\"Get_EstimateListNavAll\", loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n this.getSystemTypeDefault()\r\n }\r\n\r\n getSystemTypeDefault() {\r\n let settings = JSON.parse(localStorage.getItem('settings'))\r\n if (settings != undefined) {\r\n if (settings.estimateidDefault != undefined) {\r\n this.filter.get(\"estimateid\").setValue(settings.estimateidDefault)\r\n // this.estimateService.GetSystemArea(settings.estimateidDefault).subscribe((infoEspecified) => {\r\n this.MapInformationService.SaveInfoSites({ method: \"Get_SystemEngUtilityTreeByEstimateWithParents\", estimateid: settings.estimateidDefault }).subscribe((infoEspecified) => {\r\n this.infoSystemType = infoEspecified.map(x => {\r\n x.SystemActive = !x.SystemActive;\r\n x.SystemType = x.systemtype;\r\n // x.ParetID = (x.ParetID < 0) ? x.ParetID * -1 : x.ParetID;\r\n x.PARENTID = x.parentid;\r\n // x.ID = (x.ID < 0) ? x.ID * -1 : x.ID;\r\n return x;\r\n });\r\n\r\n // this.infoSystemType = infoEspecified;\r\n });\r\n } else {\r\n this.MapInformationService.SaveInfoSites({ method: \"Get_SystemEngUtilityTree\" })\r\n .subscribe(resp => {\r\n this.infoSystemType = resp\r\n })\r\n }\r\n }\r\n }\r\n\r\n taxSelect: any[] = []\r\n\r\n getTaxes() {\r\n this.estimateService.Get_Taxs().subscribe(result => {\r\n this.taxSelect = result;\r\n })\r\n this.MapInformationService.getParameters('Insert_Estimate')\r\n .subscribe(resp => {\r\n })\r\n }\r\n\r\n updateEstimateDefault(item) {\r\n if (item.selectedItem) {\r\n this.filter.get(\"estimateid\").setValue(item.selectedItem.ID)\r\n if (this.searchEstimate != undefined){\r\n this.searchEstimate.placeholder = item.selectedItem.ID + \"-\" + item.selectedItem.PROJECT_NAME\r\n }\r\n }\r\n\r\n }\r\n\r\n getAreaDynamic(estimateid) {\r\n this.estimateService.GetSystemArea(estimateid).subscribe((result) => {\r\n this.areaDynamic = result.map(x => {\r\n x.SystemActive = !x.SystemActive;\r\n return x;\r\n });\r\n\r\n this.areasCopy = result;\r\n this.agrupar3(this.areaDynamic)\r\n });\r\n }\r\n\r\n agrupar3(arr) {\r\n var x = arr.reduce(function (map, node) {\r\n let parentid = node.ParetID;\r\n let nodeid = node.ID;\r\n map.i[nodeid] = node;\r\n node.items = [];\r\n if (parentid === null || parentid === 0) {\r\n map.result.push(node);\r\n }\r\n else if (parentid in map.i) {\r\n map.i[parentid].items.push(node);\r\n }\r\n else {\r\n (parentid in map.cache) ?\r\n map.cache[parentid].push(node) :\r\n map.cache[parentid] = [node];\r\n }\r\n if (nodeid in map.cache) {\r\n node.items = node.items.concat(map.cache[nodeid]);\r\n delete map.cache[nodeid];\r\n }\r\n return map;\r\n }, { i: {}, cache: {}, result: [] }).result;\r\n\r\n\r\n let data = x.map(item => {\r\n let obj = {\r\n id: Math.random(),\r\n originalid: (item.ID * -1),\r\n sort: item.Sort,\r\n areaname: item.Name,\r\n areaactive: item.AreaActive,\r\n icon: item.AreaActive ? 'fas fa-folder systamactive' : 'fas fa-folder systeminactive',\r\n text: item.Sort + '-' + item.Name,\r\n expanded: this.expanded,\r\n infoTotal: item,\r\n items: item.items.map(a => {\r\n return {\r\n id: a.ID,\r\n text: a.Name,\r\n icon: a.AreaActive ? 'fas fa-folder systamactive' : 'fas fa-folder systeminactive',\r\n issystem: true,\r\n areaid: (a.ParetID * -1),\r\n path: a.ImagePath,\r\n infoTotal: item,\r\n sistemTypeid: a.SystemTypeID,\r\n SystemTypeName: a.SystemTypeName,\r\n TAGNUM: a.TAGNUM,\r\n TAGTEXT: a.TAGTEXT\r\n }\r\n })\r\n }\r\n\r\n return obj;\r\n });\r\n\r\n\r\n\r\n this.groupItems2 = data;\r\n\r\n let first = arr.filter(x => x.ID > 0)[0];\r\n\r\n let child = this.groupItems2.filter(x => x.items.length > 0)[0];\r\n if (child && child.items.length > 0) {\r\n // if(this.systemid != undefined){\r\n // child.items.forEach(element => {\r\n // if(element.id == this.systemid){\r\n // this.selectItem({ itemData: element });\r\n // }\r\n // });\r\n // } else {\r\n // this.selectItemTree({ itemData: this.groupItems2[0] });\r\n // }\r\n }\r\n setTimeout(() => {\r\n this.treeViewSystemArea.instance.collapseAll()\r\n if (this.PicturesSelected.length > 0) {\r\n this.PicturesSelected.forEach(element => {\r\n this.treeViewSystemArea.instance.selectItem(element)\r\n })\r\n }\r\n $(\".systamactive\").attr(\"style\", \"color:green !important\");\r\n $(\".systeminactive\").attr(\"style\", \"color:red !important\");\r\n if ($(\".dx-treeview-item\").length > 1) {\r\n $(\".dx-treeview-item\").removeClass(\"currently-active-item\");\r\n $($(\".dx-treeview-item\")[0]).addClass(\"currently-active-item\");\r\n }\r\n }, 500);\r\n }\r\n\r\n inicio: any = 0\r\n until: any = 8\r\n from: any = 0\r\n logitudtotal: any = 0\r\n hideNext: boolean = false\r\n cantidadRegistro: number = 12\r\n paginado: number = 1\r\n openModalFullScreen: boolean = false\r\n tipoimagen: any\r\n changeBase64: boolean = true\r\n imagenFullScreen: any = \"\"\r\n PicturesSelected: any[] = []\r\n firstTimeOne: boolean = true\r\n firstTimeSecond: boolean = true\r\n breakScroll: boolean = false\r\n @ViewChild(\"scrollViewstep\", { static: false }) scrollViewstep: DxScrollViewComponent;\r\n base64Imagenes: any[] = []\r\n tempimg = null;\r\n\r\n\r\n\r\n showImages: boolean = false\r\n PicturesSelectedWithData: any[] = []\r\n checkboxmode = 'single';\r\n\r\n selectItem2(e, info) {\r\n if (info.info.ID == undefined) info.info.ID = info.info.id\r\n if (e.value != undefined) {\r\n this.PicturesSelected.push(info.info.ID)\r\n this.PicturesSelectedWithData.push(info.info)\r\n } else {\r\n this.PicturesSelected = this.PicturesSelected.filter(x => x != info.info.ID)\r\n this.PicturesSelectedWithData = this.PicturesSelectedWithData.filter(x => x.ID != info.info.ID)\r\n }\r\n\r\n const PicturesSelected = [...new Set(this.PicturesSelected)]\r\n\r\n this.PicturesSelected = PicturesSelected\r\n\r\n var hash = {};\r\n this.PicturesSelectedWithData = this.PicturesSelectedWithData.filter(function (current) {\r\n var exists = !hash[current.id];\r\n hash[current.id] = true;\r\n return exists;\r\n });\r\n }\r\n\r\n\r\n selectItem3(e, info) {\r\n if (info.info.ID == undefined) info.info.ID = info.info.id\r\n if (e.value != undefined) {\r\n this.PicturesSelected.push(info.info.ID)\r\n this.PicturesSelectedWithData.push(info.info)\r\n } else {\r\n this.PicturesSelected = this.PicturesSelected.filter(x => x != info.info.ID)\r\n this.PicturesSelectedWithData = this.PicturesSelectedWithData.filter(x => x.ID != info.info.ID)\r\n }\r\n\r\n const PicturesSelected = [...new Set(this.PicturesSelected)]\r\n\r\n this.PicturesSelected = PicturesSelected\r\n\r\n\r\n\r\n var hash = {};\r\n this.PicturesSelectedWithData = this.PicturesSelectedWithData.filter(function (current) {\r\n var exists = !hash[current.id];\r\n hash[current.id] = true;\r\n return exists;\r\n });\r\n\r\n this.base64Imagenes.map(x => {\r\n if (x.info.ID == info.info.ID) {\r\n x.check = true\r\n } else {\r\n x.check = false\r\n }\r\n return x;\r\n })\r\n\r\n this.treeViewSystemArea.instance.selectItem(info.info.ID)\r\n this.treeViewSystemArea.instance.expandItem(info.info.ID)\r\n }\r\n\r\n\r\n onContentReady2() { }\r\n\r\n onItemExpanded(data) { }\r\n\r\n getSystemRecommended() {\r\n // this.MapInformationService.SaveInfoSites({method:\"Get_EstmateMostUsedSystems\"})\r\n // .subscribe(resp=>{\r\n // if(this.SystemRecomended.length == 0){\r\n // this.SystemRecomended = resp\r\n // }\r\n // this.getImagesRecommended(this.SystemRecomended);\r\n // })\r\n }\r\n AccordeonOpenOrClose: any = {\r\n SystemAreas: true,\r\n CubeRecommendations: false,\r\n SystemsSelected: false\r\n }\r\n SystemRecomended: any[] = []\r\n selectedIndex: any = 0\r\n @ViewChild('listrecomended', { static: false }) listrecomended: DxListComponent;\r\n\r\n getImagesRecommended(data) {\r\n // this.base64Imagenes = []\r\n // let infoFinal = []\r\n // this.allInfoPictures = data\r\n // this.CopyallInfoPictures = data\r\n // this.logitudtotal = this.allInfoPictures.length\r\n // let contador = 0\r\n // let hasta = 8\r\n\r\n // this.until = 8\r\n // this.from = 0\r\n // this.breakScroll = false\r\n // this.scrollViewstep.instance.release(true)\r\n // const dataSelected = this.listrecomended.selectedItems\r\n\r\n\r\n // this.filter.get(\"systemtypeID\").setValue(\"\")\r\n // this.filter.get(\"tagids\").setValue(\"\")\r\n\r\n // if(this.allInfoPictures.length < 8){\r\n // hasta = this.allInfoPictures.length\r\n // }\r\n\r\n // if(this.allInfoPictures.length > 0){\r\n // for (let i = 0; i < hasta; i++) {\r\n // if(data[i] != undefined){\r\n // this.MapInformationService.GetDocumentThumImg(data[i].ImagePath).subscribe(result => {\r\n // let tipo\r\n // var dataFile = result.filestring.substring(0, 5);\r\n // switch(dataFile.toUpperCase()){\r\n // case \"/9J/4\":tipo = \"jpeg\";\r\n // break\r\n // default:\r\n // tipo = \"png\"\r\n // break\r\n // }\r\n\r\n // // if (dataFile.node != undefined ) {\r\n // // informacion = {\r\n // // tipo:tipo,\r\n // // base64:result.filestring,\r\n // // info:data[i],\r\n // // // check:this.PicturesSelected.includes(data[i].id) ? true : false\r\n // // check:data.node.selected ? true : false\r\n // // }\r\n // // } else {\r\n // let informacion = {\r\n // tipo:tipo,\r\n // base64:result.filestring,\r\n // info:data[i],\r\n // check:dataSelected.includes(data[i].ID) ? true : false\r\n // // check:data.node.selected ? true : false\r\n // }\r\n // // }\r\n\r\n // // informacion.info.Name = informacion.info.text\r\n // this.base64Imagenes.push(informacion)\r\n // contador++\r\n // if(contador == hasta){\r\n // this.from = this.until\r\n // this.until = this.until + 8\r\n // if(hasta == 8){\r\n // this.scrollViewstep.instance.release(false)\r\n // } else {\r\n // this.scrollViewstep.instance.release(true)\r\n // }\r\n\r\n\r\n // if (dataSelected.length > 0) {\r\n // dataSelected.forEach(element => {\r\n // for (let i = 0; i < this.base64Imagenes.length; i++) {\r\n // if (this.base64Imagenes[i].info.ID == element.ID) {\r\n // this.base64Imagenes[i].check = true\r\n // }\r\n // }\r\n // });\r\n // } else {\r\n // for (let i = 0; i < this.base64Imagenes.length; i++) {\r\n // this.base64Imagenes[i].check = false\r\n // }\r\n // }\r\n\r\n\r\n // this.showImages = false\r\n // }\r\n // const infoFinal = {\r\n // info: data[i]\r\n // }\r\n\r\n // const infoFinalValue = {\r\n // value: data[i].selected\r\n // }\r\n // // this.selectItem(infoFinalValue, infoFinal)\r\n // },error=>{\r\n // })\r\n // } else {\r\n // this.breakScroll = true\r\n // this.scrollViewstep.instance.release(true)\r\n // // setTimeout(() => {\r\n // // this.scrollViewstep.instance.release(false)\r\n // // }, 1000);\r\n // }\r\n // }\r\n // }\r\n }\r\n\r\n DataInfo(e) {\r\n // switch(e.itemData.title){\r\n // case \"System Areas\":\r\n // this.AccordeonOpenOrClose.SystemAreas = !this.AccordeonOpenOrClose.SystemAreas\r\n // this.AccordeonOpenOrClose.CubeRecommendations = false\r\n // this.AccordeonOpenOrClose.SystemsSelected = false\r\n // if (this.AccordeonOpenOrClose.SystemAreas){\r\n // // this.SystemRecomended = []\r\n // this.base64Imagenes = []\r\n // this.initImport()\r\n // this.selectedIndex = 0\r\n // }\r\n // break\r\n // case \"Cube Recommendations\":\r\n // this.AccordeonOpenOrClose.CubeRecommendations = !this.AccordeonOpenOrClose.CubeRecommendations\r\n // this.AccordeonOpenOrClose.SystemAreas = false\r\n // this.AccordeonOpenOrClose.SystemsSelected = false\r\n // if (this.AccordeonOpenOrClose.CubeRecommendations){\r\n // // this.SystemRecomended = []\r\n // this.base64Imagenes = []\r\n // this.getSystemRecommended()\r\n // this.selectedIndex = 1\r\n // }\r\n // break\r\n // case \"Systems Selected\":\r\n // this.AccordeonOpenOrClose.SystemsSelected = !this.AccordeonOpenOrClose.SystemsSelected\r\n // this.AccordeonOpenOrClose.SystemAreas = false\r\n // this.AccordeonOpenOrClose.CubeRecommendations = false\r\n // this.selectedIndex = 2\r\n // break\r\n // }\r\n\r\n }\r\n\r\n onSelectionChanged(data) {\r\n\r\n // if (data.addedItems.length > 0) {\r\n // const infoFinal = {\r\n // \"id\": data.addedItems[0].ID,\r\n // \"text\": data.addedItems[0].Name,\r\n // \"icon\": \"\",\r\n // \"issystem\": true,\r\n // \"areaid\": data.addedItems[0].ParetID,\r\n // \"path\": data.addedItems[0].ImagePath,\r\n // \"sistemTypeid\": data.addedItems[0].SystemTypeID,\r\n // \"SystemTypeName\": data.addedItems[0].SystemTypeName,\r\n // \"TAGNUM\": data.addedItems[0].TAGNUM,\r\n // \"TAGTEXT\": data.addedItems[0].TAGTEXT,\r\n // \"Name\": data.addedItems[0].Name,\r\n // \"ID\": data.addedItems[0].ID,\r\n // \"selected\": true,\r\n // \"img\": \"\",\r\n // }\r\n // this.PicturesSelectedWithData.push(infoFinal)\r\n // this.base64Imagenes.forEach(x=>{\r\n // if (x.info.ID == data.addedItems[0].ID){\r\n // x.check = true\r\n // }\r\n // })\r\n\r\n // } else if (data.removedItems.length > 0){\r\n // const infoFinal = {\r\n // \"id\": data.removedItems[0].ID,\r\n // \"text\": data.removedItems[0].Name,\r\n // \"icon\": \"\",\r\n // \"issystem\": true,\r\n // \"areaid\": data.removedItems[0].ParetID,\r\n // \"path\": data.removedItems[0].ImagePath,\r\n // \"sistemTypeid\": data.removedItems[0].SystemTypeID,\r\n // \"SystemTypeName\": data.removedItems[0].SystemTypeName,\r\n // \"TAGNUM\": data.removedItems[0].TAGNUM,\r\n // \"TAGTEXT\": data.removedItems[0].TAGTEXT,\r\n // \"Name\": data.removedItems[0].Name,\r\n // \"ID\": data.removedItems[0].ID,\r\n // \"selected\": false,\r\n // \"img\": \"\",\r\n // }\r\n // this.DeleteSystem(infoFinal)\r\n // this.base64Imagenes.forEach(x=>{\r\n // if (x.info.ID == data.removedItems[0].ID){\r\n // x.check = false\r\n // }\r\n // })\r\n // }\r\n\r\n\r\n }\r\n\r\n primeravez: boolean = true\r\n\r\n DeleteSystem(info) {\r\n\r\n let infomation = {\r\n info: info\r\n }\r\n let data = {\r\n value: false\r\n }\r\n\r\n\r\n let keys = this.listrecomended.selectedItemKeys\r\n\r\n this.SystemRecomended.forEach((x, index) => {\r\n if (info.id == x.SystemId) {\r\n this.listrecomended.instance.unselectItem(index)\r\n }\r\n })\r\n\r\n\r\n\r\n if (this.primeravez) {\r\n this.primeraVez = false\r\n this.selectItem2(data, infomation)\r\n this.base64Imagenes = this.base64Imagenes.map(element => {\r\n\r\n if (element.info.id == info.id) {\r\n element.check = false\r\n this.treeViewSystemArea.instance.unselectItem(info.id)\r\n }\r\n return element\r\n })\r\n\r\n } else {\r\n this.primeraVez = true\r\n }\r\n }\r\n\r\n updateDefaultEstimate(item) {\r\n if (item.selectedItem) {\r\n // setTimeout(() => {\r\n this.estimatenameDefault = item.selectedItem.PROJECT_NAME;\r\n this.estimateidDefault = item.selectedItem.ID;\r\n this.searchEstimateDefault.placeholder = item.selectedItem.PROJECT_NAME\r\n // }, 1000);\r\n\r\n // this.getAreaDynamic(item.selectedItem.ID);\r\n }\r\n }\r\n\r\n ReloadTree(item) {\r\n if (item.selectedItem) {\r\n this.filter.get(\"estimateid\").setValue(item.selectedItem.ID)\r\n }\r\n\r\n }\r\n\r\n hiddenClose() {\r\n this.hidden.emit()\r\n }\r\n\r\n ImportSystem(areaID) {\r\n\r\n const idSystem = this.treeViewSystemArea.instance.getSelectedNodeKeys()\r\n\r\n if (areaID != undefined && areaID < 0) {\r\n if (idSystem.length > 0) {\r\n this.estimateService.DuplicateSystemSingle(areaID * -1, idSystem[0]).subscribe(result => {\r\n this.estimateService.duplicateImage(idSystem[0], result[0].ID)\r\n .subscribe(res1 => {\r\n this.toast.success(this.translate.instant('ModuleImportLibrary.msgSucc'));\r\n this.hidden.emit()\r\n // this.getSystemArea();\r\n })\r\n })\r\n } else {\r\n this.toast.warning(\"You must select a system\")\r\n }\r\n } else {\r\n this.toast.warning(\"You must select an area\")\r\n }\r\n }\r\n\r\n\r\n initImport() {\r\n\r\n let settings = JSON.parse(localStorage.getItem('settings'))\r\n if (settings != undefined) {\r\n if (settings.estimateidDefault != undefined) {\r\n this.filter.get(\"estimateid\").setValue(settings.estimateidDefault)\r\n // this.filter.get(\"systemtypeID\").setValue(settings.DefaultSystemType)\r\n // this.filter.get(\"systemtypeID\").setValue([Number(settings.DefaultSystemType)])\r\n this.estimateService.Get_EstimateListNavAll('', settings.estimateidDefault).subscribe(res => {\r\n if (res.length > 0) {\r\n let obj = res[0];\r\n\r\n if (!obj)\r\n return;\r\n\r\n this.updateEstimateDefault({ selectedItem: { PROJECT_NAME: obj.PROJECT_NAME, ID: settings.estimateidDefault } });\r\n this.infoToFilters()\r\n // this.getAreaDynamic(settings.estimateidDefault)\r\n }\r\n })\r\n }\r\n }\r\n\r\n // if(event.activeStep.name == \"System Recommended\"){\r\n // this.getTaxes()\r\n // this.getSystemRecommended()\r\n // }\r\n\r\n // this.customScroll()\r\n // this.getImages()\r\n }\r\n\r\n initForm() {\r\n if (this.componetsIDS == \"\"){\r\n this.filter = new FormGroup({\r\n systemid: new FormControl('', []),\r\n systemtypeID: new FormControl('', []),\r\n partid: new FormControl('', []),\r\n verticalmarketid: new FormControl('', []),\r\n inputappnotes: new FormControl('', []),\r\n islibrary: new FormControl(true, []),\r\n projectname: new FormControl('', []),\r\n systemname: new FormControl('', []),\r\n projectbidstatusid: new FormControl('', []),\r\n outputappnotes: new FormControl('', []),\r\n tagids: new FormControl('', []),\r\n designerids: new FormControl('', []),\r\n estimateid: new FormControl('', []),\r\n componentType: new FormControl('', []),\r\n })\r\n } else {\r\n this.filter = new FormGroup({\r\n systemid: new FormControl('', []),\r\n systemtypeID: new FormControl('', []),\r\n partid: new FormControl('', []),\r\n verticalmarketid: new FormControl('', []),\r\n inputappnotes: new FormControl('', []),\r\n islibrary: new FormControl(true, []),\r\n projectname: new FormControl('', []),\r\n systemname: new FormControl('', []),\r\n projectbidstatusid: new FormControl('', []),\r\n outputappnotes: new FormControl('', []),\r\n tagids: new FormControl('', []),\r\n designerids: new FormControl('', []),\r\n estimateid: new FormControl('', []),\r\n componentType: new FormControl(this.componetsIDS.split(\",\"), []),\r\n })\r\n }\r\n\r\n\r\n this.DefaultSystem = new FormGroup({\r\n systemtypeID: new FormControl([], [Validators.required]),\r\n });\r\n\r\n }\r\n\r\n groupItemsFilter: any[] = []\r\n typeDatasource: any[] = []\r\n openFilterParents() {\r\n let otherArray = []\r\n\r\n this.estimateService.Get_EstimateLibComponentsTreeCE2().subscribe(result => {\r\n this.groupItemsFilter = result\r\n });\r\n\r\n this.deltaService.GetEstimateSystemTypeCE().subscribe((result) => {\r\n this.typeDatasource = result;\r\n });\r\n }\r\n\r\n treeBoxValue: string[] = [];\r\n\r\n syncTreeViewSelection(e) {\r\n var component =\r\n (e && e.component) || (this.treeviewType && this.treeviewType.instance);\r\n\r\n if (!component) return;\r\n\r\n if (!this.treeBoxValue) {\r\n component.unselectAll();\r\n }\r\n\r\n if (this.treeBoxValue) {\r\n this.treeBoxValue.forEach(\r\n function (value) {\r\n component.selectItem(value);\r\n }.bind(this)\r\n );\r\n }\r\n\r\n }\r\n\r\n categorySelected: any[] = []\r\n\r\n treeView_itemSelectionChanged(e) {\r\n if (e.itemElement != undefined) {\r\n\r\n this.treeBoxValue = e.component.getSelectedNodeKeys();\r\n\r\n\r\n this.categorySelected = e.itemData.ID\r\n this.filter.get(\"componentType\").setValue(this.treeBoxValue)\r\n\r\n }\r\n }\r\n\r\n\r\n typeids: any[] = []\r\n syncTreeViewSelection2(e) {\r\n\r\n var component =\r\n (e && e.component) || (this.treeviewTag && this.treeviewTag.instance);\r\n\r\n if (!component) return;\r\n\r\n if (!this.treeBoxValue2) {\r\n component.unselectAll();\r\n }\r\n\r\n if (this.treeBoxValue2) {\r\n this.treeBoxValue2.forEach(\r\n function (value) {\r\n component.selectItem(value);\r\n }.bind(this)\r\n );\r\n }\r\n }\r\n\r\n treeBoxValue2: string[] = [];\r\n notAllowed: boolean = false\r\n FirtsTime: boolean = true\r\n\r\n treeView_itemSelectionChanged2(e) {\r\n if (e.itemElement != undefined && this.notAllowed == false) {\r\n // \r\n this.treeBoxValue2 = e.component.getSelectedNodeKeys();\r\n // this.typeids = this.treeBoxValue2\r\n this.typeids = e.itemData.ID\r\n this.filter.get(\"systemtypeID\").setValue(this.treeBoxValue2)\r\n } else {\r\n this.notAllowed = false\r\n }\r\n\r\n\r\n if (e.itemElement != undefined && this.notAllowed == false && this.FirtsTime) {\r\n // this.typeids = e.itemData.ID\r\n this.treeBoxValue2 = e.component.getSelectedNodeKeys();\r\n // this.typeids = this.treeBoxValue2\r\n this.typeids = e.itemData.ID\r\n this.filter.get(\"systemtypeID\").setValue(this.treeBoxValue2)\r\n this.FirtsTime = false\r\n }\r\n }\r\n\r\n imagesFiltered: any[] = []\r\n infoTree: any[] = []\r\n imagesFilteredCopy:any[]=[]\r\n\r\n SearchImage() {\r\n let infoFilter = this.filter.value\r\n this.imagesFiltered = []\r\n\r\n\r\n let idComponentsFinal = []\r\n if (infoFilter.componentType.length > 0) {\r\n infoFilter.componentType.forEach(element => {\r\n this.groupItemsFilter.forEach(x => {\r\n if (element == x.ID) {\r\n if (x.TreeFlag == \"C\") {\r\n idComponentsFinal.push(element)\r\n }\r\n }\r\n })\r\n });\r\n }\r\n\r\n let data = {\r\n method: \"Get_AreaSystemAllCE2NyComponentsIds\", //Get_AreaSystemAllCE2NyComponentsIds || Get_AreaSystemAllCE2\r\n systemids: infoFilter.systemid,\r\n systemtypeids: infoFilter.systemtypeID != \"\" ? infoFilter.systemtypeID.join(\",\") : \"\",\r\n componentids: idComponentsFinal.join(\",\"),\r\n estimateid: infoFilter.estimateid,\r\n islibrary: infoFilter.islibrary == \"Yes\" ? 1 : infoFilter.islibrary\r\n }\r\n this.MapInformationService.SaveInfoSites(data).subscribe((result) => {\r\n\r\n\r\n let imagesWithPath = result.filter(x => x.ID > 0)\r\n\r\n imagesWithPath.sort(this.compareNames)\r\n\r\n\r\n this.infoTree = result\r\n\r\n\r\n if (imagesWithPath.length > 0) {\r\n imagesWithPath.forEach(x => {\r\n this.MapInformationService.GetDocumentThumImg(x.ImagePath).subscribe(resultImages => {\r\n const data = resultImages.filestring.substring(0, 5);\r\n let tipo = \"\"\r\n switch (data.toUpperCase()) {\r\n case \"/9J/4\": tipo = \"jpeg\";\r\n break\r\n default:\r\n tipo = \"png\"\r\n break\r\n }\r\n x.base64 = resultImages.filestring\r\n x.tipo = tipo\r\n x.check = false\r\n this.imagesFiltered.push(x)\r\n this.imagesFilteredCopy.push(x)\r\n })\r\n })\r\n }\r\n\r\n // this.agrupar3(this.areaDynamic)\r\n });\r\n }\r\n\r\n compareNames(a, b){\r\n const nameA = a.Name.toUpperCase();\r\n const nameB = b.Name.toUpperCase();\r\n \r\n // Divide los nombres en partes alfabéticas y numéricas\r\n const partsA = nameA.match(/([^\\d]+|\\d+)/g);\r\n const partsB = nameB.match(/([^\\d]+|\\d+)/g);\r\n \r\n // Compara las partes secuencialmente\r\n for (let i = 0; i < Math.min(partsA.length, partsB.length); i++) {\r\n const partA = partsA[i];\r\n const partB = partsB[i];\r\n \r\n if (isNaN(partA) && isNaN(partB)) {\r\n // Ambas partes son alfabéticas, compara como cadenas\r\n if (partA < partB) return -1;\r\n if (partA > partB) return 1;\r\n } else {\r\n // Al menos una parte es numérica, convierte a número y compara\r\n const numA = parseInt(partA) || 0;\r\n const numB = parseInt(partB) || 0;\r\n \r\n if (numA < numB) return -1;\r\n if (numA > numB) return 1;\r\n }\r\n }\r\n \r\n // Si los nombres son idénticos hasta este punto, compara por longitud\r\n return partsA.length - partsB.length;\r\n }\r\n\r\n clearFilter() {\r\n this.initForm()\r\n this.typeids = []\r\n this.categorySelected = []\r\n this.treeBoxValue = []\r\n this.treeBoxValue2 = []\r\n if (this.treeBoxTags != undefined) {\r\n this.treeBoxTags.instance.reset()\r\n }\r\n\r\n if (this.treeviewTag != undefined) {\r\n this.treeviewTag.instance.unselectAll()\r\n }\r\n\r\n if (this.treeBoxType != undefined) {\r\n this.treeBoxType.instance.reset()\r\n }\r\n\r\n if (this.treeviewType != undefined) {\r\n this.treeviewType.instance.unselectAll()\r\n }\r\n this.searchEstimate.instance.reset()\r\n this.infoToFilters()\r\n this.initImport()\r\n }\r\n\r\n\r\n selectsystemFromCard(e, info) {\r\n if (e.event != undefined) {\r\n\r\n this.imagesFiltered.map(x => {\r\n if (x.ID == info.ID) {\r\n x.check = e.value\r\n x.selected = e.value\r\n if (e.value) {\r\n this.treeViewSystemArea.instance.selectItem(info.ID)\r\n } else {\r\n this.treeViewSystemArea.instance.unselectItem(x.ID)\r\n }\r\n } else {\r\n x.check = false\r\n x.selected = false\r\n this.treeViewSystemArea.instance.unselectItem(x.ID)\r\n }\r\n return x\r\n })\r\n\r\n }\r\n\r\n }\r\n\r\n selectItemTree(item) {\r\n if (item.itemElement != undefined) {\r\n if (item.itemData.ID > 0) {\r\n this.imagesFiltered.map(x => {\r\n if (x.ID == item.itemData.ID) {\r\n x.check = !x.check\r\n x.selected = !x.selected\r\n } else {\r\n x.check = false\r\n x.selected = false\r\n }\r\n return x\r\n })\r\n } else {\r\n\r\n const dataTempo = this.imagesFilteredCopy.filter(x=>x.ParetID == item.itemData.ID)\r\n\r\n\r\n this.imagesFiltered = dataTempo\r\n\r\n }\r\n }\r\n\r\n }\r\n\r\n selectItem(item) {\r\n // this.itemSelected = item\r\n\r\n if (item.itemElement != undefined) {\r\n if (item.itemData.ID < 0) {\r\n \r\n const dataTempo = this.imagesFilteredCopy.filter(x=>x.ParetID == item.itemData.ID)\r\n \r\n \r\n this.imagesFiltered = dataTempo\r\n \r\n }\r\n }\r\n\r\n\r\n\r\n\r\n // $(\".dx-treeview-item\").removeClass(\"currently-active-item\");\r\n // $(item.itemElement).addClass(\"currently-active-item\");\r\n }\r\n\r\n\r\n onContentReadytree(e) {\r\n\r\n if (this.componetsIDS != \"\"){\r\n this.componetsIDS.split(\",\").forEach(x=>{\r\n this.treeviewType.instance.selectItem(Number(x))\r\n })\r\n }\r\n\r\n\r\n \r\n }\r\n\r\n openPopupImport:boolean = false\r\n\r\n ImportSystemDiagram() {\r\n\r\n console.log(\"Aquiiiiiii\")\r\n this.openPopupImport = true\r\n }\r\n\r\n deleteComponentAndImport(){\r\n this.estimateService.Insert_EstimateRevisionAreaSystemDetailCE2_SCV2(this.systemid, \"\").subscribe(result => {\r\n this.importComponents()\r\n });\r\n }\r\n\r\n importComponents(){\r\n const idSystem = this.treeViewSystemArea.instance.getSelectedNodeKeys()\r\n\r\n if (this.VieneDe == \"Diagrama\"){\r\n if (idSystem.length > 0) {\r\n this.MapInformationService.SaveInfoSites({\r\n \"method\": \"ImportintoSystemSingle\",\r\n \"systemid\": idSystem[0],\r\n \"newsystemid\": this.systemid\r\n })\r\n .subscribe(res1 => {\r\n this.toast.success(this.translate.instant('ModuleImportLibrary.msgSucc'));\r\n this.hidden.emit()\r\n // this.getSystemArea();\r\n })\r\n } else {\r\n this.toast.warning(\"You must select a system\")\r\n }\r\n } else {\r\n this.dataSystemSelected.sytemOrigin = idSystem[0]\r\n this.hidden.emit(this.dataSystemSelected)\r\n }\r\n }\r\n\r\n\r\n clearFilterIndividual(typeOfClear){\r\n switch (typeOfClear){\r\n case 'System Type':\r\n this.typeids = []\r\n this.treeBoxValue2 = []\r\n if (this.treeBoxTags != undefined) {\r\n this.treeBoxTags.instance.reset()\r\n }\r\n\r\n if (this.treeviewTag != undefined) {\r\n this.treeviewTag.instance.unselectAll()\r\n }\r\n\r\n this.filter.get(\"systemtypeID\").setValue(\"\")\r\n\r\n break\r\n case 'Component Type':\r\n \r\n this.categorySelected = []\r\n this.treeBoxValue = []\r\n \r\n if (this.treeBoxType != undefined) {\r\n this.treeBoxType.instance.reset()\r\n }\r\n \r\n if (this.treeviewType != undefined) {\r\n this.treeviewType.instance.unselectAll()\r\n }\r\n this.filter.get(\"componentType\").setValue(\"\")\r\n break\r\n case 'Estimate ID':\r\n this.searchEstimate.instance.reset()\r\n this.filter.get(\"estimateid\").setValue(\"\")\r\n this.searchEstimate.placeholder = \"\"\r\n\r\n break\r\n }\r\n }\r\n\r\n closeParentsSystemType(){\r\n this.treeviewTag.instance.collapseAll()\r\n }\r\n \r\n OpenParentsSystemType(){\r\n this.treeviewTag.instance.expandAll()\r\n }\r\n \r\n \r\n closeParentsComponentType(){\r\n this.treeviewType.instance.collapseAll()\r\n }\r\n \r\n OpenParentsComponentType(){\r\n this.treeviewType.instance.expandAll()\r\n }\r\n\r\n closeParentsAreasSystems(){\r\n this.treeViewSystemArea.instance.collapseAll()\r\n }\r\n \r\n OpenParentsAreasSystems(){\r\n this.treeViewSystemArea.instance.expandAll()\r\n }\r\n\r\n}","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DxAccordionModule, DxAutocompleteModule, DxButtonModule, DxCheckBoxModule, DxDataGridModule, DxDateBoxModule, DxDropDownBoxModule, DxFileUploaderModule, DxGalleryModule, DxListModule, DxNumberBoxModule, DxPopupModule, DxRadioGroupModule, DxScrollViewModule, DxSelectBoxModule, DxTabPanelModule, DxTagBoxModule, DxTextAreaModule, DxTextBoxModule, DxTileViewModule, DxTreeListModule, DxTreeViewModule } from 'devextreme-angular';\r\nimport { ImportFromLibraryComponent } from './import-from-library.component';\r\n// import { dinamicProgrammerModule } from '../../engineering/dinamicProgrammer/dinamicProgrammer.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [ImportFromLibraryComponent],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxScrollViewModule,\r\n DxSelectBoxModule,\r\n DxAutocompleteModule,\r\n DxPopupModule,\r\n DxButtonModule,\r\n DxTextBoxModule,\r\n DxNumberBoxModule,\r\n DxDataGridModule,\r\n DxDateBoxModule,\r\n DxGalleryModule,\r\n DxTileViewModule,\r\n DxCheckBoxModule,\r\n DxButtonModule,\r\n DxTagBoxModule,\r\n DxDropDownBoxModule,\r\n DxTreeViewModule,\r\n DxRadioGroupModule,\r\n DxTreeListModule,\r\n DxTabPanelModule,\r\n DxAccordionModule,\r\n DxTextAreaModule,\r\n DxFileUploaderModule,\r\n DxListModule,\r\n // dinamicProgrammerModule\r\n ],\r\n exports: [\r\n ImportFromLibraryComponent\r\n ]\r\n})\r\nexport class ImportLibraryDinamicModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2VzdGltYXRpb24vc3lzdGVtLWNvbnRyb2xsZXIvc3lzdGVtLWNvbnRyb2xsZXIuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { DxTreeViewComponent } from 'devextreme-angular';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { DeltaworldService } from 'src/app/services/deltaworld.service';\r\nimport { EstimateService } from 'src/app/services/estimate.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { MapInformationService } from \"src/app/services/map-information.service\";\r\n@Component({\r\n selector: 'app-system-controller',\r\n templateUrl: './system-controller.component.html',\r\n styleUrls: ['./system-controller.component.scss']\r\n})\r\nexport class SystemControllerComponent implements OnInit {\r\n @Input() popupController = false;\r\n modelController = {\r\n ID: \"\",\r\n RS485NET1FROM: \"\",\r\n RS485NET1TO: \"\",\r\n RS485NET2FROM: \"\",\r\n RS485NET2TO: \"\",\r\n SystemID: \"\",\r\n BACADD: \"\",\r\n MACADD: \"\",\r\n SOP: \"\",\r\n SCOPEOFWORK: \"\",\r\n CUBEBOXNUMBER: \"\",\r\n NETPARENTID: \"\",\r\n SHOWINSOW: true\r\n };\r\n modelSystemInformation = {\r\n systemid: \"0\",\r\n area: \"\",\r\n areaid: \"\",\r\n systemtype: 0,\r\n systemname: \"\",\r\n controldrawing: \"\",\r\n controldwimg: \"\",\r\n sort: \"\",\r\n qty: \"\",\r\n active: false,\r\n SystemBarName: '',\r\n MarkLib: false,\r\n SOP: null,\r\n DESCRIPTION: '',\r\n TAGNUM: '',\r\n TAGTEXT: '',\r\n SystemTypeid: 0,\r\n id: 0,\r\n };\r\n @Input() systemTypeSelectCE = [];\r\n @Input() areaSelect = [];\r\n @Input() imgSelected = 'Not_Image';\r\n treeBoxValue: string[];\r\n @ViewChild(DxTreeViewComponent, { static: false }) treeView;\r\n\r\n _systemid;\r\n imgbase64: string;\r\n changeimage: boolean;\r\n filename: string;\r\n SyncTags: { icon: string; type: string; onClick: () => void; };\r\n @Input('systemid')\r\n set systemid(systemid: any) {\r\n this._systemid = systemid;\r\n if(systemid != 0 && systemid != undefined){\r\n this.getControllerData(systemid);\r\n }\r\n }\r\n\r\n get systemid(): any { return this._systemid; }\r\n @Output() onclosemodal = new EventEmitter();\r\n @Output() onupdate = new EventEmitter();\r\n\r\n\r\n\r\n saveButtonEditController: any;\r\n cancelButtonEditController: any;\r\n value: any[] = [];\r\n\r\n constructor(\r\n private deltaService: DeltaworldService,\r\n private toast: ToastService,\r\n private estimateService: EstimateService,\r\n private MapInformationService: MapInformationService,\r\n private translate:TranslateService) { }\r\n\r\n ngOnInit() {\r\n this.cancelButtonEditController = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n this.popupController = false;\r\n this.value = []\r\n this.filename = null;\r\n this.changeimage = false;\r\n this.imgbase64 = null;\r\n this.value = [];\r\n this.imgSelected = 'Not_Image'\r\n console.clear()\r\n this.onupdate.emit();\r\n },\r\n };\r\n\r\n this.saveButtonEditController = {\r\n text: this.translate.instant('btnSave'),\r\n icon: \"check\",\r\n elementAttr: {\r\n id: \"bton-green\",\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n // this.addNewComment();\r\n this.updateControllerData();\r\n },\r\n };\r\n\r\n\r\n this.SyncTags = {\r\n icon: \"refresh\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.upateTag()\r\n },\r\n };\r\n }\r\n\r\n CancelPopup(){\r\n this.popupController = false;\r\n this.value = []\r\n this.filename = null;\r\n this.changeimage = false;\r\n this.imgbase64 = null;\r\n this.value = [];\r\n this.imgSelected = 'Not_Image'\r\n console.clear()\r\n this.onupdate.emit();\r\n }\r\n\r\n updateControllerData() {\r\n console.log(this.modelSystemInformation)\r\n this.deltaService\r\n .UpdateEstimateDetBACData(\r\n this.modelController.SystemID,\r\n this.modelController.BACADD,\r\n this.modelController.MACADD,\r\n this.modelController.RS485NET1FROM,\r\n this.modelController.RS485NET1TO,\r\n this.modelController.RS485NET2FROM,\r\n this.modelController.RS485NET2TO,\r\n this.modelController.CUBEBOXNUMBER,\r\n this.modelController.NETPARENTID\r\n )\r\n .subscribe((result) => {\r\n this.toast.success(this.translate.instant('ModalSysControll.msgUpdSucc'));\r\n this.popupController = false;\r\n });\r\n\r\n this.estimateService\r\n .Upadte_EstimateAreaSystemCEAreaid(\r\n this.modelSystemInformation.systemid,\r\n this.modelSystemInformation.systemid,\r\n this.modelSystemInformation.sort,\r\n this.modelSystemInformation.area,\r\n this.modelSystemInformation.areaid,\r\n this.modelSystemInformation.systemname,\r\n this.modelSystemInformation.qty,\r\n this.modelSystemInformation.SystemTypeid[0] != undefined ? this.modelSystemInformation.SystemTypeid[0]:this.modelSystemInformation.SystemTypeid,\r\n !this.modelSystemInformation.active, // Ponemos el caso contrario porqu eel campo se llama inactive en bd y active en el front\r\n false, //deleted\r\n \"\", //scope\r\n this.modelSystemInformation.SOP,\r\n this.modelSystemInformation.MarkLib,\r\n this.modelSystemInformation.controldrawing,\r\n this.modelSystemInformation.controldwimg, // img\r\n this.modelSystemInformation.TAGTEXT,\r\n this.modelSystemInformation.TAGNUM,\r\n this.modelSystemInformation.DESCRIPTION\r\n )\r\n .subscribe((result) => {\r\n // cantidadTerminada++;\r\n\r\n // if (cantidadTerminada >= cantidadLlamadas) {\r\n // this.toast.success(this.translate.instant('msgUpdSucc'));\r\n // this.popupEditAreaSystem = false;\r\n this.value = [];\r\n // this.imgSelected = \"Not_Image\"\r\n this.onupdate.emit();\r\n if (this.changeimage) {\r\n // this.uploadingimage = true;\r\n this.estimateService.SaveImageSystem(this.imgbase64, this.systemid).subscribe(res => {\r\n // this.onupdated.emit(this.componentModel);\r\n this.filename = null;\r\n this.changeimage = false;\r\n this.imgbase64 = null;\r\n // this.uploadingimage = false;\r\n this.value = [];\r\n // this.imgSelected = \"Not_Image\"\r\n this.onupdate.emit();\r\n console.clear()\r\n });\r\n }\r\n // }\r\n });\r\n\r\n\r\n }\r\n\r\n getControllerData(id) {\r\n if(id != 0 && id != undefined){\r\n this.deltaService.GetControllerMasterData(id).subscribe((result) => {\r\n let obj = result[0];\r\n this.getImageNew()\r\n console.log(\"🚀 ~ file: system-controller.component.ts:186 ~ SystemControllerComponent ~ this.deltaService.GetControllerMasterData ~ obj:\", obj)\r\n\r\n if (obj)\r\n this.modelController = {\r\n ID: obj.ID,\r\n RS485NET1FROM: obj.RS485NET1FROM,\r\n RS485NET1TO: obj.RS485NET1TO,\r\n RS485NET2FROM: obj.RS485NET2FROM,\r\n RS485NET2TO: obj.RS485NET2TO,\r\n SystemID: id,\r\n BACADD: obj.BACADD,\r\n MACADD: obj.MACADD,\r\n SOP: obj.SOP,\r\n SCOPEOFWORK: obj.SCOPEOFWORK,\r\n CUBEBOXNUMBER: obj.CUBEBOXNUMBER,\r\n SHOWINSOW: obj.SHOWINSOW,\r\n NETPARENTID: obj.NETPARENTID\r\n };\r\n\r\n this.deltaService.GetEstimateAreaSystemInfo(id).subscribe((result2) => {\r\n \r\n console.log(result2)\r\n let obj2 = result2[0];\r\n \r\n if (obj2) {\r\n this.modelSystemInformation = {\r\n systemid: id,\r\n area: obj2.AreaName,\r\n areaid: obj2.AREAID,\r\n systemtype: obj2.SystemTypeid,\r\n systemname: obj2.SystemName,\r\n controldrawing: obj2.Control_Drawing,\r\n sort: obj2.SORT,\r\n qty: obj2.QTY,\r\n active: !obj2.Active,\r\n SystemBarName: obj2.SystemBarName,\r\n MarkLib: obj2.MarkLib,\r\n SOP: obj2.SOP,\r\n DESCRIPTION: obj2.DESCRIPTION,\r\n SystemTypeid: Number(obj2.SystemTypeid),\r\n TAGNUM: obj2.TAGNUM,\r\n TAGTEXT: obj2.TAGTEXT,\r\n id: obj2.ID,\r\n controldwimg: obj2.CONTROLDWGIMG\r\n };\r\n }\r\n });\r\n\r\n });\r\n\r\n\r\n \r\n }\r\n }\r\n\r\n\r\n\r\n getImageNew(){\r\n this.MapInformationService.SaveInfoSites({method:\"Get_SystemImagePath\", systemid:this.systemid})\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n if (resp.length > 0){\r\n console.log(resp[0].ImagePath)\r\n this.MapInformationService.GetDocument(resp[0].ImagePath).subscribe(result => {\r\n this.imgSelected = result.filestring ? result.filestring : 'Not_Image';\r\n console.log(result)\r\n console.log(this.imgSelected)\r\n })\r\n\r\n }\r\n })\r\n }\r\n\r\n changeFile(ev) {\r\n\r\n let str = this.getBase64(ev.value[0]);\r\n }\r\n\r\n getBase64(file) {\r\n // const mythis = this\r\n // var reader = new FileReader();\r\n // reader.readAsDataURL(file);\r\n // reader.onload = function () {\r\n // let data = reader.result.toString().split(\",\");\r\n\r\n // mythis.imgbase64 = data[1];\r\n // mythis.imgSelected = data[1]\r\n // mythis.changeimage = true;\r\n // let ext = file.name.split('.');\r\n // mythis.filename = mythis.systemid + '.' + ext[ext.length - 1];\r\n // mythis.modelSystemInformation.controldwimg = mythis.systemid + '.' + ext[ext.length - 1];\r\n // };\r\n // reader.onerror = function (error) {\r\n\r\n // };\r\n\r\n const reader = new FileReader();\r\n\r\n reader.onload = (e: any) => {\r\n\r\n // let data = e.target.result.toString().split(\",\")\r\n\r\n // this.dataFinalBase64 = e.target.result.toString()\r\n // this.imgbase64 = data[1];\r\n // this.imgSelected = data[1]\r\n // this.changeimage = true;\r\n\r\n let data = e.target.result.toString().split(\",\")\r\n\r\n this.imgbase64 = data[1];\r\n this.imgSelected = data[1]\r\n this.changeimage = true;\r\n let ext = file.name.split('.');\r\n this.filename = this.systemid + '.' + ext[ext.length - 1];\r\n this.modelSystemInformation.controldwimg = this.systemid + '.' + ext[ext.length - 1];\r\n\r\n };\r\n reader.readAsDataURL(file);\r\n\r\n\r\n\r\n\r\n }\r\n\r\n BorrarDocument(){\r\n\r\n\r\n this.imgbase64 = null;\r\n this.imgSelected = 'Not_Image';\r\n this.modelSystemInformation.controldwimg = null\r\n }\r\n\r\n syncTreeViewSelection(e) {\r\n var component =\r\n (e && e.component) || (this.treeView && this.treeView.instance);\r\n\r\n if (!component) return;\r\n\r\n if (!this.treeBoxValue) {\r\n component.unselectAll();\r\n }\r\n\r\n if (this.treeBoxValue) {\r\n this.treeBoxValue.forEach(\r\n function (value) {\r\n component.selectItem(value);\r\n }.bind(this)\r\n );\r\n }\r\n }\r\n\r\n treeView_itemSelectionChanged(e) {\r\n\r\n this.modelSystemInformation.systemtype = e.itemData.SystemType\r\n this.modelSystemInformation.SystemTypeid = e.itemData.ID\r\n\r\n this.treeBoxValue = e.component.getSelectedNodeKeys();\r\n }\r\n\r\n clearModel(){\r\n this.modelSystemInformation = {\r\n systemid: \"0\",\r\n area: \"\",\r\n areaid: \"\",\r\n systemtype: 0,\r\n systemname: \"\",\r\n controldrawing: \"\",\r\n controldwimg: \"\",\r\n sort: \"\",\r\n qty: \"\",\r\n active: false,\r\n SystemBarName: '',\r\n MarkLib: false,\r\n SOP: null,\r\n DESCRIPTION: '',\r\n TAGNUM: '',\r\n TAGTEXT: '',\r\n SystemTypeid: 0,\r\n id: 0,\r\n };\r\n }\r\n\r\n upateTag(){\r\n this.MapInformationService.SaveInfoSites({method:\"Get_Systemtags\", systemid:this.systemid})\r\n .subscribe(resp=>{\r\n this.modelSystemInformation.TAGNUM = resp[0].TAGIDS\r\n this.modelSystemInformation.TAGTEXT = resp[0].TAGS\r\n })\r\n }\r\n\r\n goToTutorial(id){\r\n\r\n // let info = {\r\n // method: 'Get_Training_Videos'\r\n // }\r\n\r\n // this.MapInformationService.MethodCallApiFlex(info).subscribe(resp => {\r\n // console.log(resp)\r\n // })\r\n\r\n // let id = \"CREATE-AND-VIEW-ESTIMATE\"\r\n\r\n let url = window.location.href.split(\"#\");\r\n let finalUrl = url[0] + `#/videoTutorial?numVideo=${id}`; \r\n console.log(finalUrl)\r\n window.open(finalUrl, \"_blank\");\r\n\r\n }\r\n\r\n changeArea(obj) {\r\n\r\n console.log(obj)\r\n console.log(this.modelSystemInformation)\r\n if (obj && obj.selectedItem) {\r\n // this.partselected = obj.selectedItem.ID;\r\n this.modelSystemInformation.areaid = obj.selectedItem.ID\r\n this.modelSystemInformation.area = obj.selectedItem.AreaName\r\n } else {\r\n // this.partselected = null;\r\n }\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SystemControllerComponent } from './system-controller.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DxAccordionModule, DxButtonModule, DxCheckBoxModule, DxDropDownBoxModule, DxFileUploaderModule, DxNumberBoxModule, DxPopupModule, DxRadioGroupModule, DxScrollViewModule, DxSelectBoxModule, DxTabPanelModule, DxTextBoxModule, DxTreeListModule, DxTreeViewModule } from 'devextreme-angular';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n SystemControllerComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxTextBoxModule,\r\n DxSelectBoxModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxTabPanelModule,\r\n DxCheckBoxModule,\r\n DxNumberBoxModule,\r\n DxFileUploaderModule,\r\n DxAccordionModule,\r\n DxButtonModule,\r\n DxDropDownBoxModule,\r\n DxTreeViewModule,\r\n DxRadioGroupModule,\r\n DxTreeListModule,\r\n ],\r\n exports: [\r\n SystemControllerComponent\r\n ]\r\n})\r\nexport class SystemControllerModule { }\r\n","export default \".master-button {\\n padding: 0.2rem 0.5rem !important;\\n font-size: 0.7rem !important;\\n}\\n\\n.bg-gray {\\n background-color: #f2f2f2;\\n}\\n\\n.IconColorRed {\\n color: red;\\n}\\n\\n.IconColorBlue {\\n color: blue;\\n}\\n\\n.IconColorYellow {\\n color: yellow;\\n}\\n\\n.IconColorGreen {\\n color: green;\\n}\\n\\n.IconColorOrange {\\n color: orange;\\n}\\n\\n.IconColorPurple {\\n color: purple;\\n}\\n\\n::ng-deep .item-badge {\\n text-align: center;\\n float: left;\\n margin-right: 12px;\\n color: white;\\n width: 18px;\\n height: 18px;\\n font-size: 19.5px;\\n border-radius: 18px;\\n margin-top: 2px;\\n}\\n\\n.schedulecolumnwidth {\\n width: 75px;\\n}\\n\\n.dx-scheduler-work-space-day .dx-scheduler-date-table-cell {\\n width: 200px;\\n /*Specify any value */\\n}\\n\\n#gantt {\\n height: 700px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvaG9tZS9teS1hY3Rpdml0eS9jcmVhdGUtdXBkYXRlLWFjdGl2aXR5LWRpbmFtaWMvRTpcXERldlxcQ1VCRVRFTVBcXG5ld2N1YmUvc3JjXFxhcHBcXHBhZ2VzXFxob21lXFxteS1hY3Rpdml0eVxcY3JlYXRlLXVwZGF0ZS1hY3Rpdml0eS1kaW5hbWljXFxjcmVhdGUtdXBkYXRlLWFjdGl2aXR5LWRpbmFtaWMuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3BhZ2VzL2hvbWUvbXktYWN0aXZpdHkvY3JlYXRlLXVwZGF0ZS1hY3Rpdml0eS1kaW5hbWljL2NyZWF0ZS11cGRhdGUtYWN0aXZpdHktZGluYW1pYy5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGlDQUFBO0VBQ0EsNEJBQUE7QUNDRjs7QURFQTtFQUNFLHlCQUFBO0FDQ0Y7O0FERUE7RUFDRSxVQUFBO0FDQ0Y7O0FERUE7RUFDRSxXQUFBO0FDQ0Y7O0FERUE7RUFDRSxhQUFBO0FDQ0Y7O0FERUE7RUFDRSxZQUFBO0FDQ0Y7O0FERUE7RUFDRSxhQUFBO0FDQ0Y7O0FERUE7RUFDRSxhQUFBO0FDQ0Y7O0FERUE7RUFDRSxrQkFBQTtFQUNELFdBQUE7RUFDQSxrQkFBQTtFQUNBLFlBQUE7RUFDQyxXQUFBO0VBQ0QsWUFBQTtFQUNBLGlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0FDQ0Q7O0FERUE7RUFDRSxXQUFBO0FDQ0Y7O0FERUE7RUFDRSxZQUFBO0VBQWMscUJBQUE7QUNFaEI7O0FERUE7RUFDSSxhQUFBO0FDQ0oiLCJmaWxlIjoic3JjL2FwcC9wYWdlcy9ob21lL215LWFjdGl2aXR5L2NyZWF0ZS11cGRhdGUtYWN0aXZpdHktZGluYW1pYy9jcmVhdGUtdXBkYXRlLWFjdGl2aXR5LWRpbmFtaWMuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIubWFzdGVyLWJ1dHRvbiB7XHJcbiAgcGFkZGluZzogMC4yMHJlbSAwLjVyZW0gIWltcG9ydGFudDtcclxuICBmb250LXNpemU6IDAuN3JlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYmctZ3JheXtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQyLCAyNDIsIDI0MilcclxufVxyXG5cclxuLkljb25Db2xvclJlZHtcclxuICBjb2xvcjogcmVkO1xyXG59XHJcblxyXG4uSWNvbkNvbG9yQmx1ZXtcclxuICBjb2xvcjogYmx1ZTtcclxufVxyXG5cclxuLkljb25Db2xvclllbGxvd3tcclxuICBjb2xvcjogeWVsbG93O1xyXG59XHJcblxyXG4uSWNvbkNvbG9yR3JlZW57XHJcbiAgY29sb3I6IGdyZWVuO1xyXG59XHJcblxyXG4uSWNvbkNvbG9yT3Jhbmdle1xyXG4gIGNvbG9yOiBvcmFuZ2U7XHJcbn1cclxuXHJcbi5JY29uQ29sb3JQdXJwbGV7XHJcbiAgY29sb3I6IHB1cnBsZTtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5pdGVtLWJhZGdlIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0ZmxvYXQ6IGxlZnQ7XHJcblx0bWFyZ2luLXJpZ2h0OiAxMnB4O1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxuICB3aWR0aDogMThweDtcclxuXHRoZWlnaHQ6IDE4cHg7XHJcblx0Zm9udC1zaXplOiAxOS41cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMThweDtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi5zY2hlZHVsZWNvbHVtbndpZHRoe1xyXG4gIHdpZHRoOiA3NXB4O1xyXG59XHJcblxyXG4uZHgtc2NoZWR1bGVyLXdvcmstc3BhY2UtZGF5IC5keC1zY2hlZHVsZXItZGF0ZS10YWJsZS1jZWxsIHtcclxuICB3aWR0aDogMjAwcHg7IC8qU3BlY2lmeSBhbnkgdmFsdWUgKi9cclxufVxyXG5cclxuXHJcbiNnYW50dCB7XHJcbiAgICBoZWlnaHQ6IDcwMHB4O1xyXG59XHJcblxyXG4iLCIubWFzdGVyLWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjVyZW0gIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAwLjdyZW0gIWltcG9ydGFudDtcbn1cblxuLmJnLWdyYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xufVxuXG4uSWNvbkNvbG9yUmVkIHtcbiAgY29sb3I6IHJlZDtcbn1cblxuLkljb25Db2xvckJsdWUge1xuICBjb2xvcjogYmx1ZTtcbn1cblxuLkljb25Db2xvclllbGxvdyB7XG4gIGNvbG9yOiB5ZWxsb3c7XG59XG5cbi5JY29uQ29sb3JHcmVlbiB7XG4gIGNvbG9yOiBncmVlbjtcbn1cblxuLkljb25Db2xvck9yYW5nZSB7XG4gIGNvbG9yOiBvcmFuZ2U7XG59XG5cbi5JY29uQ29sb3JQdXJwbGUge1xuICBjb2xvcjogcHVycGxlO1xufVxuXG46Om5nLWRlZXAgLml0ZW0tYmFkZ2Uge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgd2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMThweDtcbiAgZm9udC1zaXplOiAxOS41cHg7XG4gIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIG1hcmdpbi10b3A6IDJweDtcbn1cblxuLnNjaGVkdWxlY29sdW1ud2lkdGgge1xuICB3aWR0aDogNzVweDtcbn1cblxuLmR4LXNjaGVkdWxlci13b3JrLXNwYWNlLWRheSAuZHgtc2NoZWR1bGVyLWRhdGUtdGFibGUtY2VsbCB7XG4gIHdpZHRoOiAyMDBweDtcbiAgLypTcGVjaWZ5IGFueSB2YWx1ZSAqL1xufVxuXG4jZ2FudHQge1xuICBoZWlnaHQ6IDcwMHB4O1xufSJdfQ== */\"","// tables\r\nimport * as moment from 'moment';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { Component, OnInit, Input, Output, EventEmitter, } from '@angular/core';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { CustomerService } from 'src/app/services/customer.service';\r\n@Component({\r\n selector: 'app-create-update-activity-dinamic',\r\n templateUrl: './create-update-activity-dinamic.component.html',\r\n styleUrls: ['./create-update-activity-dinamic.component.scss']\r\n})\r\nexport class CreateUpdateActivityDinamicComponent implements OnInit {\r\n\r\n _data:any\r\n items: any = [\r\n\r\n \"undo\", \"redo\", \"separator\",\r\n\r\n {\r\n name: \"size\",\r\n acceptedValues: [\"8pt\", \"10pt\", \"12pt\", \"14pt\", \"18pt\", \"24pt\", \"36pt\"]\r\n },\r\n {\r\n name: \"font\",\r\n acceptedValues: [\"Arial\", \"Courier New\", \"Georgia\", \"Impact\", \"Lucida Console\", \"Tahoma\", \"Times New Roman\", \"Verdana\"]\r\n },\r\n\r\n \"separator\", \"bold\", \"italic\", \"strike\", \"underline\", \"separator\",\r\n \"alignLeft\", \"alignCenter\", \"alignRight\", \"alignJustify\", \"increaseIndent\",\r\n \"decreaseIndent\", \"separator\",\r\n \"orderedList\", \"bulletList\", \"separator\",\r\n\r\n {\r\n name: \"header\",\r\n acceptedValues: [false, 1, 2, 3, 4, 5]\r\n },\r\n\r\n \"color\", \"background\", \"link\", \"clear\", \"codeBlock\", \"blockquote\", \"separator\", \"insertTable\", \"deleteTable\",\r\n \"insertRowAbove\", \"insertRowBelow\", \"deleteRow\", \"insertColumnLeft\", \"insertColumnRight\",\r\n \"deleteColumn\", \"cellProperties\", \"tableProperties\",\r\n ];\r\n\r\n @Input() from: any;\r\n\r\n @Input('data')\r\n set data(data: any) {\r\n if (data != undefined){\r\n this._data = data;\r\n console.log(this._data)\r\n this.ngOnInit();\r\n }\r\n }\r\n\r\n\r\n @Output() onsubmit = new EventEmitter();\r\n\r\n //InputsFecha\r\n today = new Date().getTime();\r\n millisecondsInDay = 24 * 60 * 60 * 1000;\r\n followupdate: any = { todayButton: {}, prevDateButton: {}, nextDateButton: {}, showDate: this.today };\r\n startDate: any = { todayButton: {}, prevDateButton: {}, nextDateButton: {}, showDate: this.today };\r\n\r\n employeeid: any;\r\n\r\n //Formulario\r\n actitivityForm: FormGroup;\r\n optionsempleoyees: any = [];\r\n optionsactivityType: any = [];\r\n\r\n editLinkButton: any;\r\n externalLink: any = '';\r\n hideIconLink: boolean = true;\r\n\r\n userId: any;\r\n settings: any;\r\n employeename: any;\r\n\r\n constructor(\r\n private datepipe: DatePipe,\r\n private toast: ToastService,\r\n private appconfig: AppConfigService,\r\n public generalService: GeneralService,\r\n private MapInformationService: MapInformationService,\r\n private translate:TranslateService,\r\n private customerService: CustomerService,\r\n ) {\r\n console.log('ESTOY EN MY CALENDAR ');\r\n\r\n this.userId = localStorage.getItem('customerid');\r\n\r\n this.settings = this.appconfig.dateFormat;\r\n\r\n this.editLinkButton = {\r\n icon: 'fa fa-link',\r\n type: 'default',\r\n onClick: () => {\r\n window.open(this.externalLink, \"_blank\");\r\n },\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n console.log('Data ', this._data);\r\n console.log(this.from)\r\n if(this._data){\r\n // this.employeeid = this.userId;\r\n // this.employeename = this._data.EMPLOYEENAME;\r\n // this.optionsempleoyees = [{ key: this.employeeid, Name: this.employeename }]\r\n // console.log(this.employeename, ' / ', this.optionsempleoyees);\r\n this.setFormActivities(this._data)\r\n this.getActivities()\r\n }else{\r\n this.initForm();\r\n this.getActivities()\r\n }\r\n this.getSelectsData();\r\n }\r\n\r\n initForm(){\r\n\r\n this.inputsDate(this.followupdate, this.today)\r\n this.inputsDate(this.startDate, this.today)\r\n\r\n this.actitivityForm = new FormGroup({\r\n id: new FormControl({ value: 0, disabled: false }, []),\r\n Name: new FormControl({ value: '', disabled: false }, []),\r\n Employee: new FormControl({ value: this.employeeid, disabled: false }, []),\r\n EndTime: new FormControl({ value: this.followupdate.showDate, disabled: false }, []),\r\n ActivityType: new FormControl({ value: '', disabled: false }, []),\r\n StartTime: new FormControl({ value: this.startDate.showDate, disabled: false }, []),\r\n FollowUp: new FormControl({ value: '', disabled: false }, []),\r\n Closed: new FormControl({ value: false, disabled: false }, []),\r\n externallink: new FormControl({ value: false, disabled: false }, []),\r\n Description: new FormControl({ value: '', disabled: false }, []),\r\n FollowUpComments: new FormControl({ value: '', disabled: false }, []),\r\n Hour: new FormControl({ value: this.today, disabled: false }, []),\r\n Minute: new FormControl({ value: '00:01', disabled: false }, [Validators.required]),\r\n OptCustomer: new FormControl({ value: 0, disabled: false }, [Validators.maxLength(45)]),\r\n OptServiceSite: new FormControl({ value: 0, disabled: false }, []),\r\n OptProject: new FormControl({ value: 0, disabled: false }, []),\r\n sort: new FormControl({ value: 0, disabled: false }, []),\r\n });\r\n this.follow = \"\"\r\n this.descr = \"\"\r\n }\r\n\r\n setFormActivities(data){\r\n console.log(data); \r\n\r\n if (this.from == \"EditSalesLead\"){\r\n\r\n this.inputsDate(this.followupdate, data.EndTime)\r\n this.inputsDate(this.startDate, data.StartDateTime)\r\n \r\n data.FOLLOWUP = data.FOLLOWUP == 'No' || data.FOLLOWUP == false ? false : true;\r\n data.CLOSED = data.CLOSED == 'No' || data.CLOSED == false ? false : true;\r\n \r\n let duration;\r\n let dutationSub1 = data.DURATION + '';\r\n if (data.DURATION % 1 == 0) {\r\n //alert (\"Es un numero entero\");\r\n duration = data.DURATION + ':00'\r\n if (duration.length < 5) {\r\n duration = '0' + duration;\r\n }\r\n } else {\r\n if (dutationSub1.length < 5) {\r\n if (data.DURATION < 10) {\r\n if (data.DURATION < 1) {\r\n if (dutationSub1.length > 3) {\r\n duration = 0 + dutationSub1.replace('.', \":\");\r\n } else {\r\n duration = 0 + dutationSub1.replace('.', \":\") + 0;\r\n }\r\n } else {\r\n duration = 0 + dutationSub1.replace('.', \":\");\r\n if (duration.length < 5) {\r\n duration = duration + '0';\r\n }\r\n }\r\n } else {\r\n duration = dutationSub1.replace('.', \":\");\r\n duration = duration + '0';\r\n }\r\n } else {\r\n duration = dutationSub1.replace('.', \":\");\r\n }\r\n }\r\n \r\n this.actitivityForm = new FormGroup({\r\n id: new FormControl({ value: data.ID, disabled: false }, []),\r\n activityid: new FormControl({ value: data.ID, disabled: false }, []),\r\n Name: new FormControl({ value: data.NAME, disabled: false }, []),\r\n Employee: new FormControl({ value: data.EmployeeId, disabled: false }, []),\r\n sort: new FormControl({ value: data.SORT, disabled: false }, []),\r\n ActivityType: new FormControl({ value: data.TypeId, disabled: false }, []),\r\n\r\n EndTime: new FormControl({ value: this.followupdate.showDate, disabled: false }, []),\r\n StartTime: new FormControl({ value: this.startDate.showDate, disabled: false }, []),\r\n\r\n FollowUp: new FormControl({ value: data.FOLLOWUP, disabled: false }, []),\r\n Closed: new FormControl({ value: data.CLOSED, disabled: false }, []),\r\n externallink: new FormControl({ value: data.EXTERNALLINK, disabled: false }, []),\r\n Description: new FormControl({ value: data.NOTES, disabled: false }, []),\r\n FollowUpComments: new FormControl({ value: data.FOLLOWUPCOMMENTS, disabled: false }, []),\r\n\r\n Hour: new FormControl({ value: 0, disabled: false }, []),\r\n Minute: new FormControl({ value: duration, disabled: false }, [Validators.required]),\r\n OptCustomer: new FormControl({ value: 0, disabled: false }, [Validators.maxLength(45)]),\r\n OptServiceSite: new FormControl({ value: 0, disabled: false }, []),\r\n OptProject: new FormControl({ value: 0, disabled: false }, []),\r\n Customer: new FormControl({ value: -1, disabled: false }, []),\r\n Project: new FormControl({ value: -1, disabled: false }, []),\r\n ServiceSite: new FormControl({ value: -1, disabled: false }, []),\r\n });\r\n \r\n this.follow = data.FOLLOWUPCOMMENTS\r\n this.descr = data.NOTES\r\n\r\n\r\n\r\n } else if (this.from == \"EditCustomer\"){\r\n\r\n this.inputsDate(this.followupdate, data.FOLLOWUPDATE)\r\n this.inputsDate(this.startDate, data.STARTTIME)\r\n \r\n data.FOLLOWUP = data.FOLLOWUP == 'No' || data.FOLLOWUP == false ? false : true;\r\n data.CLOSED = data.CLOSED == 'No' || data.CLOSED == false ? false : true;\r\n \r\n let duration;\r\n let dutationSub1 = data.DURATION + '';\r\n if (data.DURATION % 1 == 0) {\r\n //alert (\"Es un numero entero\");\r\n duration = data.DURATION + ':00'\r\n if (duration.length < 5) {\r\n duration = '0' + duration;\r\n }\r\n } else {\r\n if (dutationSub1.length < 5) {\r\n if (data.DURATION < 10) {\r\n if (data.DURATION < 1) {\r\n if (dutationSub1.length > 3) {\r\n duration = 0 + dutationSub1.replace('.', \":\");\r\n } else {\r\n duration = 0 + dutationSub1.replace('.', \":\") + 0;\r\n }\r\n } else {\r\n duration = 0 + dutationSub1.replace('.', \":\");\r\n if (duration.length < 5) {\r\n duration = duration + '0';\r\n }\r\n }\r\n } else {\r\n duration = dutationSub1.replace('.', \":\");\r\n duration = duration + '0';\r\n }\r\n } else {\r\n duration = dutationSub1.replace('.', \":\");\r\n }\r\n }\r\n \r\n this.actitivityForm = new FormGroup({\r\n id: new FormControl({ value: data.ID, disabled: false }, []),\r\n activityid: new FormControl({ value: data.ID, disabled: false }, []),\r\n Name: new FormControl({ value: data.NAME, disabled: false }, []),\r\n Employee: new FormControl({ value: data.EMPLOYEEID, disabled: false }, []),\r\n sort: new FormControl({ value: data.SORT, disabled: false }, []),\r\n ActivityType: new FormControl({ value: data.TYPE, disabled: false }, []),\r\n\r\n EndTime: new FormControl({ value: this.followupdate.showDate, disabled: false }, []),\r\n StartTime: new FormControl({ value: this.startDate.showDate, disabled: false }, []),\r\n\r\n FollowUp: new FormControl({ value: data.FOLLOWUP, disabled: false }, []),\r\n Closed: new FormControl({ value: data.CLOSED, disabled: false }, []),\r\n externallink: new FormControl({ value: data.EXTERNALLINK, disabled: false }, []),\r\n Description: new FormControl({ value: data.NOTES, disabled: false }, []),\r\n FollowUpComments: new FormControl({ value: data.FOLLOWUPCOMMENTSsinHTML, disabled: false }, []),\r\n\r\n Hour: new FormControl({ value: 0, disabled: false }, []),\r\n Minute: new FormControl({ value: duration, disabled: false }, [Validators.required]),\r\n OptCustomer: new FormControl({ value: 0, disabled: false }, [Validators.maxLength(45)]),\r\n OptServiceSite: new FormControl({ value: 0, disabled: false }, []),\r\n OptProject: new FormControl({ value: 0, disabled: false }, []),\r\n Customer: new FormControl({ value: -1, disabled: false }, []),\r\n Project: new FormControl({ value: -1, disabled: false }, []),\r\n ServiceSite: new FormControl({ value: -1, disabled: false }, []),\r\n });\r\n \r\n this.follow = data.FOLLOWUPCOMMENTSsinHTML\r\n this.descr = data.NOTES\r\n\r\n\r\n\r\n } else if (this.from == \"EditSalesProject\"){\r\n\r\n this.inputsDate(this.followupdate, data.EndTime)\r\n this.inputsDate(this.startDate, data.StartDateTime)\r\n \r\n data.FOLLOWUP = data.FOLLOWUP == 'No' || data.FOLLOWUP == false ? false : true;\r\n data.CLOSED = data.CLOSED == 'No' || data.CLOSED == false ? false : true;\r\n \r\n let duration;\r\n let dutationSub1 = data.DURATION + '';\r\n if (data.DURATION % 1 == 0) {\r\n //alert (\"Es un numero entero\");\r\n duration = data.DURATION + ':00'\r\n if (duration.length < 5) {\r\n duration = '0' + duration;\r\n }\r\n } else {\r\n if (dutationSub1.length < 5) {\r\n if (data.DURATION < 10) {\r\n if (data.DURATION < 1) {\r\n if (dutationSub1.length > 3) {\r\n duration = 0 + dutationSub1.replace('.', \":\");\r\n } else {\r\n duration = 0 + dutationSub1.replace('.', \":\") + 0;\r\n }\r\n } else {\r\n duration = 0 + dutationSub1.replace('.', \":\");\r\n if (duration.length < 5) {\r\n duration = duration + '0';\r\n }\r\n }\r\n } else {\r\n duration = dutationSub1.replace('.', \":\");\r\n duration = duration + '0';\r\n }\r\n } else {\r\n duration = dutationSub1.replace('.', \":\");\r\n }\r\n }\r\n \r\n this.actitivityForm = new FormGroup({\r\n id: new FormControl({ value: data.ID, disabled: false }, []),\r\n activityid: new FormControl({ value: data.ID, disabled: false }, []),\r\n Name: new FormControl({ value: data.NAME, disabled: false }, []),\r\n Employee: new FormControl({ value: data.EmployeeId, disabled: false }, []),\r\n sort: new FormControl({ value: data.SORT, disabled: false }, []),\r\n ActivityType: new FormControl({ value: data.TypeId, disabled: false }, []),\r\n\r\n EndTime: new FormControl({ value: this.followupdate.showDate, disabled: false }, []),\r\n StartTime: new FormControl({ value: this.startDate.showDate, disabled: false }, []),\r\n\r\n FollowUp: new FormControl({ value: data.FOLLOWUP, disabled: false }, []),\r\n Closed: new FormControl({ value: data.CLOSED, disabled: false }, []),\r\n externallink: new FormControl({ value: data.EXTERNALLINK, disabled: false }, []),\r\n Description: new FormControl({ value: data.NOTES, disabled: false }, []),\r\n FollowUpComments: new FormControl({ value: data.FOLLOWUPCOMMENTSsinHTML, disabled: false }, []),\r\n\r\n Hour: new FormControl({ value: 0, disabled: false }, []),\r\n Minute: new FormControl({ value: duration, disabled: false }, [Validators.required]),\r\n OptCustomer: new FormControl({ value: 0, disabled: false }, [Validators.maxLength(45)]),\r\n OptServiceSite: new FormControl({ value: 0, disabled: false }, []),\r\n OptProject: new FormControl({ value: 0, disabled: false }, []),\r\n Customer: new FormControl({ value: -1, disabled: false }, []),\r\n Project: new FormControl({ value: -1, disabled: false }, []),\r\n ServiceSite: new FormControl({ value: -1, disabled: false }, []),\r\n });\r\n \r\n this.follow = data.FOLLOWUPCOMMENTSsinHTML\r\n this.descr = data.NOTES\r\n\r\n\r\n }else {\r\n this.inputsDate(this.followupdate, data.EndTime)\r\n this.inputsDate(this.startDate, data.STARTTIME)\r\n \r\n data.FOLLOWUP = data.FOLLOWUP == 'No' ? false : true;\r\n data.CLOSED = data.CLOSED == 'No' || data.CLOSED == false ? false : true;\r\n \r\n let duration;\r\n let dutationSub1 = data.DURATION + '';\r\n if (data.DURATION % 1 == 0) {\r\n //alert (\"Es un numero entero\");\r\n duration = data.DURATION + ':00'\r\n if (duration.length < 5) {\r\n duration = '0' + duration;\r\n }\r\n } else {\r\n //alert (\"Es un numero decimal\");\r\n if (dutationSub1.length < 5) {\r\n if (data.DURATION < 10) {\r\n if (data.DURATION < 1) {\r\n if (dutationSub1.length > 3) {\r\n duration = 0 + dutationSub1.replace('.', \":\");\r\n } else {\r\n duration = 0 + dutationSub1.replace('.', \":\") + 0;\r\n }\r\n } else {\r\n duration = 0 + dutationSub1.replace('.', \":\");\r\n if (duration.length < 5) {\r\n duration = duration + '0';\r\n }\r\n }\r\n } else {\r\n duration = dutationSub1.replace('.', \":\");\r\n duration = duration + '0';\r\n }\r\n } else {\r\n duration = dutationSub1.replace('.', \":\");\r\n }\r\n }\r\n \r\n this.actitivityForm = new FormGroup({\r\n id: new FormControl({ value: data.ID, disabled: false }, []),\r\n activityid: new FormControl({ value: data.ID, disabled: false }, []),\r\n Name: new FormControl({ value: data.NAME, disabled: false }, []),\r\n Employee: new FormControl({ value: this.employeeid, disabled: false }, []),\r\n sort: new FormControl({ value: data.sort, disabled: false }, []),\r\n EndTime: new FormControl({ value: this.followupdate.showDate, disabled: false }, []),\r\n ActivityType: new FormControl({ value: data.TYPEID, disabled: false }, []),\r\n StartTime: new FormControl({ value: this.startDate.showDate, disabled: false }, []),\r\n FollowUp: new FormControl({ value: data.FOLLOWUP, disabled: false }, []),\r\n Closed: new FormControl({ value: data.CLOSED, disabled: false }, []),\r\n externallink: new FormControl({ value: data.EXTERNALLINK, disabled: false }, []),\r\n Description: new FormControl({ value: data.NOTES, disabled: false }, []),\r\n FollowUpComments: new FormControl({ value: data.FOLLOWUPCOMMENTS, disabled: false }, []),\r\n Hour: new FormControl({ value: 0, disabled: false }, []),\r\n Minute: new FormControl({ value: duration, disabled: false }, [Validators.required]),\r\n OptCustomer: new FormControl({ value: 0, disabled: false }, [Validators.maxLength(45)]),\r\n OptServiceSite: new FormControl({ value: 0, disabled: false }, []),\r\n OptProject: new FormControl({ value: 0, disabled: false }, []),\r\n Customer: new FormControl({ value: -1, disabled: false }, []),\r\n Project: new FormControl({ value: -1, disabled: false }, []),\r\n ServiceSite: new FormControl({ value: -1, disabled: false }, []),\r\n });\r\n \r\n this.follow = data.FOLLOWUPCOMMENTS\r\n this.descr = data.NOTES\r\n }\r\n\r\n\r\n }\r\n\r\n getSelectsData(){\r\n if(this.optionsactivityType.length == 0){\r\n this.generalService.getPopulateGeneral('Customer/GetCustomerActivityType').subscribe(result => {\r\n this.optionsactivityType = result.map((val) => {\r\n return { Name: val.Name, key: val.ID };\r\n });\r\n });\r\n }\r\n }\r\n\r\n enableIconLink(e){\r\n console.log(e);\r\n\r\n if(e.length > 0){\r\n this.hideIconLink = false;\r\n }else{\r\n this.hideIconLink = true;\r\n }\r\n }\r\n\r\n saveActivity(id, from){\r\n\r\n\r\n if (from == \"EditSalesLead\"){\r\n\r\n let form = this.actitivityForm.value\r\n const idSalesLead = id\r\n let hour, minute;\r\n\r\n form.Minute = form.Minute.replace(':', \"\");\r\n hour = parseInt(form.Minute.substr(0, 2));\r\n minute = parseInt(form.Minute.substr(2, 2));\r\n // 13.30\r\n\r\n\r\n const dataFinal = {\r\n \"id\":form.id,\r\n \"customerid\":0,\r\n \"servicesiteid\":null,\r\n \"employeeid\":form.Employee,\r\n \"type\":form.ActivityType,\r\n \"notes\":form.Description,\r\n \"starttime\":moment(form.StartTime).format('YYYY-MM-DD HH:mm'),\r\n \"endtime\":moment(form.EndTime).format('YYYY-MM-DD HH:mm'),\r\n \"followup\":form.FollowUp == true ? 1 : 0,\r\n \"followupdate\":moment(new Date()).format('YYYY-MM-DD HH:mm'),\r\n \"name\":form.Name,\r\n \"closed\":form.Closed == true ? 1 : 0,\r\n \"followupcomments\":form.FollowUpComments,\r\n \"projectid\":idSalesLead,\r\n \"duration\":hour + \".\" + minute,\r\n \"externallink\":form.externallink,\r\n \"sort\":form.sort,\r\n \"method\":\"InsertUpdateActivity\",\r\n }\r\n\r\n this.MapInformationService.SaveInfoSites(dataFinal).subscribe(\r\n data => {\r\n console.log('Guardado en COmponent ', data);\r\n\r\n if (form.id > 0) {\r\n this.toast.success(this.translate.instant('msgActEdiSucc'));\r\n } else {\r\n this.toast.success(this.translate.instant('msgActCreSucc'));\r\n this.initForm();\r\n }\r\n this.onsubmit.emit();\r\n\r\n }, err => {\r\n console.log(err)\r\n }\r\n )\r\n\r\n } else if (from == \"EditCustomer\"){\r\n \r\n let form = this.actitivityForm.value\r\n const idCustomer = id\r\n let hour, minute;\r\n\r\n form.Minute = form.Minute.replace(':', \"\");\r\n hour = parseInt(form.Minute.substr(0, 2));\r\n minute = parseInt(form.Minute.substr(2, 2));\r\n\r\n\r\n console.log(form)\r\n\r\n\r\n // const dataFinal = {\r\n // \"Hour\": hour,\r\n // \"Minute\": minute,\r\n // \"CusomerActivityId\": 0,\r\n // \"EmployeeId\": form.Employee,\r\n // \"Type\": form.ActivityType,\r\n // \"Notes\": form.Description,\r\n // \"StartTime\": moment(form.StartTime).format('YYYY-MM-DD HH:mm'),\r\n // \"FOLLOWUPDATE\": moment(form.EndTime).format('YYYY-MM-DD HH:mm'),\r\n // \"followupdate\": moment(new Date()).format('YYYY-MM-DD HH:mm'),\r\n // \"Follow\": form.FollowUp == true ? 1 : 0,\r\n // \"Name\": form.Name,\r\n // \"Closed\": form.Closed == true ? 1 : 0,\r\n // \"FollowComments\": form.FollowUpComments,\r\n // \"durationDetail\": hour + minute,\r\n // \"OptCustomer\": 1,\r\n // \"OptServiceSite\": 0,\r\n // \"OptProject\": 0,\r\n // \"Customer\": idCustomer,\r\n // \"Employee\": form.Employee,\r\n // \"ActivityType\": form.ActivityType,\r\n // \"Description\": form.Description,\r\n // \"FollowUpComments\": form.FollowUpComments,\r\n // \"method\": \"SaveActivity\",\r\n // \"externallink\":form.externallink,\r\n // \"sort\":form.sort,\r\n // }\r\n\r\n\r\n const dataFinal = {\r\n \"id\":form.id,\r\n \"customerid\":idCustomer,\r\n \"servicesiteid\":null,\r\n \"employeeid\":form.Employee,\r\n \"type\":form.ActivityType,\r\n \"notes\":form.Description,\r\n \"starttime\":moment(form.StartTime).format('YYYY-MM-DD HH:mm'),\r\n \"endtime\":moment(form.EndTime).format('YYYY-MM-DD HH:mm'),\r\n \"followup\":form.FollowUp == true ? 1 : 0,\r\n \"followupdate\":moment(new Date()).format('YYYY-MM-DD HH:mm'),\r\n \"name\":form.Name,\r\n \"closed\":form.Closed == true ? 1 : 0,\r\n \"followupcomments\":form.FollowUpComments,\r\n // \"projectid\":null,\r\n \"duration\":hour + \".\" + minute,\r\n \"externallink\":form.externallink,\r\n \"sort\":form.sort,\r\n \"method\":\"InsertUpdateActivity\",\r\n \"OptCustomer\": 1,\r\n \"OptProject\": 0,\r\n \"OptServiceSite\":0 \r\n }\r\n\r\n console.log(dataFinal)\r\n\r\n this.MapInformationService.SaveInfoSites(dataFinal).subscribe(\r\n data => {\r\n console.log('Guardado en COmponent ', data);\r\n\r\n if (form.id > 0) {\r\n this.toast.success(this.translate.instant('msgActEdiSucc'));\r\n } else {\r\n this.toast.success(this.translate.instant('msgActCreSucc'));\r\n this.initForm();\r\n }\r\n this.onsubmit.emit();\r\n\r\n }, err => {\r\n console.log(err)\r\n }\r\n )\r\n\r\n } else if (from == \"EditSalesProject\"){\r\n\r\n let form = this.actitivityForm.value\r\n const idSalesProject = id\r\n let hour, minute;\r\n\r\n form.Minute = form.Minute.replace(':', \"\");\r\n hour = parseInt(form.Minute.substr(0, 2));\r\n minute = parseInt(form.Minute.substr(2, 2));\r\n // 13.30\r\n\r\n\r\n const dataFinal = {\r\n \"id\":form.id,\r\n \"customerid\":0,\r\n \"servicesiteid\":null,\r\n \"employeeid\":form.Employee,\r\n \"type\":form.ActivityType,\r\n \"notes\":form.Description,\r\n \"starttime\":moment(form.StartTime).format('YYYY-MM-DD HH:mm'),\r\n \"endtime\":moment(form.EndTime).format('YYYY-MM-DD HH:mm'),\r\n \"followup\":form.FollowUp == true ? 1 : 0,\r\n \"followupdate\":moment(new Date()).format('YYYY-MM-DD HH:mm'),\r\n \"name\":form.Name,\r\n \"closed\":form.Closed == true ? 1 : 0,\r\n \"followupcomments\":form.FollowUpComments,\r\n \"projectid\":idSalesProject,\r\n \"duration\":hour + \".\" + minute,\r\n \"externallink\":form.externallink,\r\n \"sort\":form.sort,\r\n \"method\":\"InsertUpdateActivity\",\r\n \"OptCustomer\": 0,\r\n \"OptProject\": 1,\r\n \"OptServiceSite\":0 \r\n }\r\n\r\n this.MapInformationService.SaveInfoSites(dataFinal).subscribe(\r\n data => {\r\n console.log('Guardado en COmponent ', data);\r\n\r\n if (form.id > 0) {\r\n this.toast.success(this.translate.instant('msgActEdiSucc'));\r\n } else {\r\n this.toast.success(this.translate.instant('msgActCreSucc'));\r\n this.initForm();\r\n }\r\n this.onsubmit.emit();\r\n\r\n }, err => {\r\n console.log(err)\r\n }\r\n )\r\n\r\n\r\n\r\n } else {\r\n let form = this.actitivityForm.value\r\n let hour, minute;\r\n\r\n if (form.name === \"\") \"New Activity\" ;\r\n form.FollowUp = form.FollowUp == true ? 1 : 0;\r\n form.Closed = form.Closed == true ? 1 : 0;\r\n form.method = form.id == 0 ? 'SaveActivity' : 'UpdateActivity';\r\n form.StartTime = moment(form.StartTime).format('YYYY-MM-DD HH:mm');\r\n form.EndTime = moment(form.EndTime).format('YYYY-MM-DD HH:mm');\r\n form.Minute = form.Minute.replace(':', \"\");\r\n hour = parseInt(form.Minute.substr(0, 2));\r\n minute = parseInt(form.Minute.substr(2, 2));\r\n form.Minute = minute;\r\n form.Hour = hour;\r\n form.Employee = this.employeeid;\r\n\r\n console.log('New Form ', form);\r\n\r\n this.MapInformationService.SaveInfoSites(form).subscribe(\r\n data => {\r\n console.log('Guardado en COmponent ', data);\r\n\r\n if (form.id > 0) {\r\n this.toast.success(this.translate.instant('msgActEdiSucc'));\r\n } else {\r\n this.toast.success(this.translate.instant('msgActCreSucc'));\r\n this.initForm();\r\n }\r\n this.onsubmit.emit();\r\n\r\n }, err => {\r\n console.log(err)\r\n }\r\n )\r\n }\r\n\r\n }\r\n\r\n now: Date = new Date();\r\n inputsDate(date, showdate) {\r\n if (showdate !== null) {\r\n let year = this.datepipe.transform(showdate, 'yyyy');\r\n date.showDate = parseInt(year) < 1990 ? new Date().getTime() : new Date(showdate).getTime();\r\n } else {\r\n date.showDate = new Date().getTime();\r\n }\r\n\r\n console.log(new Date (date.showDate))\r\n\r\n date.todayButton = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n date.showDate = new Date().getTime();\r\n }\r\n };\r\n\r\n date.prevDateButton = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n date.showDate = date.showDate == null ? new Date().getTime() - this.millisecondsInDay : date.showDate - this.millisecondsInDay;\r\n }\r\n };\r\n\r\n date.nextDateButton = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n date.showDate = date.showDate == null ? new Date().getTime() + this.millisecondsInDay : date.showDate + this.millisecondsInDay;\r\n }\r\n };\r\n }\r\n\r\n openFullScreenDesc:boolean = false\r\n openFullScreenFollow:boolean = false\r\n descr:any= \"\"\r\n follow:any= \"\"\r\n openInputFullDesc(){\r\n this.openFullScreenDesc = true\r\n }\r\n\r\n asignarValue(event) {\r\n this.descr = event.value\r\n this.actitivityForm.get(\"Description\").setValue(event.value)\r\n }\r\n\r\n openInputFullFollow(){\r\n this.openFullScreenFollow = true\r\n }\r\n\r\n asignarValueFllow(event){\r\n this.follow = event.value\r\n this.actitivityForm.get(\"FollowUpComments\").setValue(event.value)\r\n }\r\n\r\n getActivities(){\r\n this.customerService.GetCustomerActivityEmployees().subscribe(\r\n data => {\r\n this.optionsempleoyees = data.map((val) => {\r\n // console.log(val.value)\r\n return { // Return the new object structure\r\n Name: val.value,\r\n key: val.ID\r\n };\r\n });\r\n console.log(this.optionsempleoyees)\r\n })\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { DxButtonModule, DxDataGridModule, DxHtmlEditorModule } from \"devextreme-angular\";\r\nimport { CreateUpdateActivityDinamicComponent } from './create-update-activity-dinamic.component';\r\nimport { EditServiceWorkOrderModule } from 'src/app/shared/edit-service-work-order/edit-service-work-order.module';\r\nimport { DxTagBoxModule, DxNumberBoxModule, DxResponsiveBoxModule, DxAutocompleteModule, DxSliderModule, DxTemplateModule, DxSchedulerModule, DxTextAreaModule,DxContextMenuModule, DxTreeViewModule, DxDropDownBoxModule, DxSpeedDialActionModule, DxScrollViewModule, DxTextBoxModule, DxPopupModule, DxSelectBoxModule, DxDateBoxModule, DxTabPanelModule, DxAccordionModule, DxButtonGroupModule, DxCheckBoxModule, DxRangeSliderModule, DxDropDownButtonModule, DxRadioGroupModule, DxFileUploaderModule, DxToolbarModule, DxSortableModule } from \"devextreme-angular\";\r\n// import { EditSalesLeadDinamicoModule } from 'src/app/pages/sales-management/sales-leads/edit-sales-lead-dinamico/edit-sales-lead-dinamico.module';\r\n\r\n@NgModule({\r\n declarations: [\r\n CreateUpdateActivityDinamicComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n TranslateModule,\r\n DxSelectBoxModule, \r\n DxButtonModule,\r\n DxDataGridModule,\r\n DxTagBoxModule, \r\n DxScrollViewModule, \r\n DxTextBoxModule, \r\n DxPopupModule, \r\n DxDateBoxModule, \r\n DxAccordionModule, \r\n DxButtonGroupModule,\r\n DxDropDownButtonModule,\r\n DxSchedulerModule,\r\n DxPopupModule,\r\n EditServiceWorkOrderModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DxTreeViewModule,\r\n DxDropDownBoxModule,\r\n DxAccordionModule,\r\n DxTabPanelModule,\r\n DxSpeedDialActionModule,\r\n DxButtonModule,\r\n DxTextAreaModule,\r\n DxContextMenuModule,\r\n DxSchedulerModule,\r\n DxDateBoxModule,\r\n DxTextBoxModule,\r\n DxRadioGroupModule,\r\n DxCheckBoxModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxNumberBoxModule,\r\n DxAutocompleteModule,\r\n DxSelectBoxModule,\r\n DxSliderModule,\r\n DxRangeSliderModule,\r\n DxDataGridModule,\r\n DxTagBoxModule,\r\n DxFileUploaderModule,\r\n DxTemplateModule,\r\n DxResponsiveBoxModule,\r\n DxHtmlEditorModule,\r\n // EditSalesLeadDinamicoModule\r\n ],\r\n exports: [CreateUpdateActivityDinamicComponent]\r\n})\r\nexport class CreateUpdateActivityDinamicModule { }\r\n ","export default \"::ng-deep .demo-container, #page {\\n height: 100%;\\n min-height: 300px;\\n}\\n\\n::ng-deep #page .header {\\n background-color: rgba(243, 158, 108, 0.8);\\n text-align: center;\\n}\\n\\n::ng-deep #page .content {\\n background-color: rgba(245, 229, 166, 0.8);\\n}\\n\\n::ng-deep #page .left-side-bar {\\n background-color: rgba(148, 215, 199, 0.8);\\n}\\n\\n::ng-deep #page .right-side-bar {\\n background-color: rgba(119, 199, 231, 0.8);\\n}\\n\\n::ng-deep #page .footer {\\n background-color: rgba(123, 155, 207, 0.8);\\n}\\n\\n::ng-deep .item {\\n height: 100%;\\n}\\n\\n::ng-deep #page p {\\n font-size: 20px;\\n padding-top: 10px;\\n text-align: center;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvaG9tZS9yZXNwb25zaXZlL0U6XFxEZXZcXENVQkVURU1QXFxuZXdjdWJlL3NyY1xcYXBwXFxwYWdlc1xcaG9tZVxccmVzcG9uc2l2ZVxccmVzcG9uc2l2ZS5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvcGFnZXMvaG9tZS9yZXNwb25zaXZlL3Jlc3BvbnNpdmUuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxZQUFBO0VBQ0EsaUJBQUE7QUNDSjs7QURFQTtFQUNJLDBDQUFBO0VBQ0Esa0JBQUE7QUNDSjs7QURDQTtFQUNJLDBDQUFBO0FDRUo7O0FEQUE7RUFDSSwwQ0FBQTtBQ0dKOztBRERBO0VBQ0ksMENBQUE7QUNJSjs7QURGQTtFQUNJLDBDQUFBO0FDS0o7O0FESEE7RUFDSSxZQUFBO0FDTUo7O0FESkE7RUFDSSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtBQ09KIiwiZmlsZSI6InNyYy9hcHAvcGFnZXMvaG9tZS9yZXNwb25zaXZlL3Jlc3BvbnNpdmUuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6Om5nLWRlZXAgLmRlbW8tY29udGFpbmVyLCAjcGFnZXtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG59XHJcblxyXG46Om5nLWRlZXAgI3BhZ2UgLmhlYWRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0MywgMTU4LCAxMDgsIDAuODApO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbjo6bmctZGVlcCAjcGFnZSAuY29udGVudCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NSwgMjI5LCAxNjYsIDAuODApO1xyXG59XHJcbjo6bmctZGVlcCAjcGFnZSAubGVmdC1zaWRlLWJhciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE0OCwgMjE1LCAxOTksIDAuODApO1xyXG59XHJcbjo6bmctZGVlcCAjcGFnZSAucmlnaHQtc2lkZS1iYXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMTksIDE5OSwgMjMxLCAwLjgwKTtcclxufVxyXG46Om5nLWRlZXAgI3BhZ2UgLmZvb3RlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMywgMTU1LCAyMDcsIDAuODApO1xyXG59XHJcbjo6bmctZGVlcCAuaXRlbSB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuOjpuZy1kZWVwICNwYWdlIHAge1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuIiwiOjpuZy1kZWVwIC5kZW1vLWNvbnRhaW5lciwgI3BhZ2Uge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDMwMHB4O1xufVxuXG46Om5nLWRlZXAgI3BhZ2UgLmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQzLCAxNTgsIDEwOCwgMC44KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG46Om5nLWRlZXAgI3BhZ2UgLmNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NSwgMjI5LCAxNjYsIDAuOCk7XG59XG5cbjo6bmctZGVlcCAjcGFnZSAubGVmdC1zaWRlLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTQ4LCAyMTUsIDE5OSwgMC44KTtcbn1cblxuOjpuZy1kZWVwICNwYWdlIC5yaWdodC1zaWRlLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTE5LCAxOTksIDIzMSwgMC44KTtcbn1cblxuOjpuZy1kZWVwICNwYWdlIC5mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyMywgMTU1LCAyMDcsIDAuOCk7XG59XG5cbjo6bmctZGVlcCAuaXRlbSB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuOjpuZy1kZWVwICNwYWdlIHAge1xuICBmb250LXNpemU6IDIwcHg7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59Il19 */\"","import { Component, OnInit } from '@angular/core';\r\n\r\nimport { Routes, RouterModule, Router, ActivatedRoute } from '@angular/router';\r\n\r\nimport { UserService } from 'src/app/services/user.service';\r\n\r\nimport { WavesModule, SelectModule, ToastService } from 'ng-uikit-pro-standard';\r\nimport { TabHistoryItemBase } from 'devexpress-richedit/lib/core/model/history/items/paragraph-properties-history-items';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'app-responsive',\r\n templateUrl: './responsive.component.html',\r\n styleUrls: ['./responsive.component.scss']\r\n})\r\nexport class ResponsiveComponent implements OnInit {\r\n\r\n constructor(private route: ActivatedRoute, public userService: UserService, private toast: ToastService, private router: Router, private translate:TranslateService) { }\r\n\r\n currentEmail: string;\r\n\r\n ngOnInit() {\r\n this.route.queryParams.subscribe(params => {\r\n if (params.b){\r\n this.userService.activateUser(params.b).subscribe(result => {\r\n this.toast.success(this.translate.instant('msgAccSuccActived'));\r\n });\r\n }\r\n });\r\n this.currentEmail = localStorage.getItem('email');\r\n }\r\n\r\n onAcceptTerm(){\r\n this.userService.activateUser(this.currentEmail).subscribe(result => {\r\n this.router.navigateByUrl('/home');\r\n });\r\n }\r\n\r\n goLogin(){\r\n this.router.navigateByUrl('/login');\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2ludmVudG9yeS9wYXJ0cy9uZXctcGFydC9uZXctcGFydC5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, Input, OnInit, Output, EventEmitter } from '@angular/core';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { PartsService } from 'src/app/services/parts.service';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'app-new-part',\r\n templateUrl: './new-part.component.html',\r\n styleUrls: ['./new-part.component.scss']\r\n})\r\n\r\nexport class NewPartComponent implements OnInit {\r\n\r\n @Input() popupNewPart = false;\r\n @Output() onmodalhidden = new EventEmitter();\r\n @Output() onsubmit = new EventEmitter();\r\n @Input() formDataParts;\r\n @Input() master:boolean = false;\r\n heightPopup = '550'\r\n\r\n newPart: FormGroup;\r\n\r\n parttype: any = [];\r\n disableproductinput: boolean = true;\r\n //Formats\r\n settings: any = {};\r\n errorDescription= false;\r\n popupAPL:boolean=false\r\n\r\n popupPartsSearch:boolean = false\r\n popupImportFromMaster:boolean = false\r\n infoComponent = { method: 'Get_PartsMaster', component: 'AppParts', methodSave: \"Import_PartsMaster\" }\r\n\r\n\r\n constructor(\r\n private route: Router,\r\n activatedRoute: ActivatedRoute,\r\n private partService: PartsService,\r\n private toast: ToastService,\r\n private appconfig: AppConfigService,\r\n private MapInformationService: MapInformationService,\r\n private translate:TranslateService\r\n ) {\r\n\r\n this.settings.dateFormat = this.appconfig.dateFormat;\r\n this.settings.moneyFormat = this.appconfig.moneyFormat;\r\n\r\n this.newPart = new FormGroup({\r\n partnumber: new FormControl({value: '', disabled: false},[]),\r\n parttypeid: new FormControl({value: '', disabled: false},[]),\r\n stdcost: new FormControl({value: '', disabled: false},[]),\r\n active: new FormControl({value: true, disabled: false},[]),\r\n taxable: new FormControl({value: '', disabled: false},[]),\r\n partdescription: new FormControl({value: '', disabled: false},[Validators.maxLength(250)]),\r\n createasproduct: new FormControl({value: false, disabled: false},[]),\r\n price: new FormControl({value: '', disabled: false},[]),\r\n productdetails: new FormControl({value: '', disabled: false},[]),\r\n id: new FormControl(0,[]),\r\n })\r\n }\r\n\r\n ngOnInit() {\r\n if(this.master) this.heightPopup = '420'\r\n console.log(\"🚀 ~ NewPartComponent ~ this.heightPopup:\", this.heightPopup)\r\n\r\n this.initForm();\r\n }\r\n\r\n dataManufactured = []\r\n\r\n initForm(){\r\n\r\n if(!this.master && this.formDataParts != undefined){\r\n\r\n this.newPart = new FormGroup({\r\n partnumber: new FormControl({value:this.formDataParts.partnumber, disabled: false},[]),\r\n parttypeid: new FormControl({value:this.formDataParts.parttypeid, disabled: false},[]),\r\n manufacturerid: new FormControl({value:this.formDataParts.manufacturerid, disabled: false},[]),\r\n stdcost: new FormControl({value:this.formDataParts.stdcost, disabled: false},[]),\r\n active: new FormControl({value:this.formDataParts.active == undefined ? false:true, disabled: false},[]),\r\n taxable: new FormControl({value:this.formDataParts.taxable == undefined ? false:true, disabled: false},[]),\r\n partdescription: new FormControl({value:this.formDataParts.partdescription, disabled: false},[Validators.maxLength(250)]),\r\n createasproduct: new FormControl({value:this.formDataParts.createasproduct, disabled: false},[]),\r\n price: new FormControl({value:this.formDataParts.price, disabled: false},[]),\r\n productdetails: new FormControl({value:this.formDataParts.productdetails, disabled: false},[]),\r\n id: new FormControl(this.formDataParts.id,[])\r\n })\r\n \r\n } else {\r\n\r\n this.newPart = new FormGroup({\r\n partnumber: new FormControl({value: '', disabled: false},[]),\r\n parttypeid: new FormControl({value: '', disabled: false},[]),\r\n stdcost: new FormControl({value: '', disabled: false},[]),\r\n active: new FormControl({value: true, disabled: false},[]),\r\n taxable: new FormControl({value: '', disabled: false},[]),\r\n partdescription: new FormControl({value: '', disabled: false},[Validators.maxLength(250)]),\r\n createasproduct: new FormControl({value: false, disabled: false},[]),\r\n price: new FormControl({value: '', disabled: false},[]),\r\n productdetails: new FormControl({value: '', disabled: false},[]),\r\n id: new FormControl(0,[]),\r\n })\r\n\r\n }\r\n\r\n\r\n if (this.master){\r\n\r\n let info = {\r\n method: 'Get_VendorsMasterCompactList'\r\n }\r\n \r\n this.MapInformationService.MethodCallApiFlex(info).subscribe(resp => {\r\n this.dataManufactured = resp\r\n console.log(\"🚀 ~ NewPartComponent ~ this.MapInformationService.MethodCallApiFlex ~ this.dataManufactured:\", this.dataManufactured)\r\n })\r\n\r\n console.log(this.formDataParts)\r\n if(this.formDataParts == undefined){\r\n this.newPart = new FormGroup({\r\n partnumber: new FormControl({value: '', disabled: false},[]),\r\n parttypeid: new FormControl({value: '', disabled: false},[]),\r\n manufacturerid: new FormControl({value: '', disabled: false},[]),\r\n stdcost: new FormControl({value: '', disabled: false},[]),\r\n active: new FormControl({value: true, disabled: false},[]),\r\n taxable: new FormControl({value: '', disabled: false},[]),\r\n partdescription: new FormControl({value: '', disabled: false},[Validators.maxLength(250)]),\r\n createasproduct: new FormControl({value: false, disabled: false},[]),\r\n price: new FormControl({value: '', disabled: false},[]),\r\n productdetails: new FormControl({value: '', disabled: false},[]),\r\n id: new FormControl(0,[]),\r\n })\r\n } else {\r\n this.newPart = new FormGroup({\r\n partnumber: new FormControl({value:this.formDataParts.partnumber, disabled: false},[]),\r\n parttypeid: new FormControl({value:this.formDataParts.parttypeid, disabled: false},[]),\r\n manufacturerid: new FormControl({value:this.formDataParts.manufacturerid, disabled: false},[]),\r\n stdcost: new FormControl({value:this.formDataParts.stdcost, disabled: false},[]),\r\n active: new FormControl({value:this.formDataParts.active == undefined ? false:true, disabled: false},[]),\r\n taxable: new FormControl({value:this.formDataParts.taxable == undefined ? false:true, disabled: false},[]),\r\n partdescription: new FormControl({value:this.formDataParts.partdescription, disabled: false},[Validators.maxLength(250)]),\r\n createasproduct: new FormControl({value:this.formDataParts.createasproducte, disabled: false},[]),\r\n price: new FormControl({value:this.formDataParts.price, disabled: false},[]),\r\n productdetails: new FormControl({value:this.formDataParts.productdetails, disabled: false},[]),\r\n id: new FormControl(this.formDataParts.id,[])\r\n })\r\n }\r\n }\r\n this.disableproductinput = true;\r\n this.partService.GetPartType().subscribe(result=>{\r\n console.log(\"🚀 ~ file: new-part.component.ts:93 ~ NewPartComponent ~ this.partService.GetPartType ~ result:\", result)\r\n this.parttype = result;\r\n })\r\n }\r\n\r\n createproduct(){\r\n this.disableproductinput = !this.disableproductinput;\r\n if(this.disableproductinput==true){\r\n this.newPart.get('price').setValue('');\r\n this.newPart.get('productdetails').setValue('');\r\n }\r\n }\r\n\r\n async savePart(edit){\r\n let ParNumberDupli = false\r\n let form = this.newPart.value;\r\n if (this.master){\r\n form.method = 'InsertUpdate_AcctPartsMasterCE';\r\n } else {\r\n form.method = 'InsertUpdate_AcctPartsCE';\r\n }\r\n form.active = form.active == true ? 1 : 0;\r\n form.taxable = form.taxable == true ? 1 : 0;\r\n form.isvale = 0;\r\n console.log(form);\r\n let consultarNumber = {method: 'Get_PartsALlByPartNumber', partnumber: form.partnumber}\r\n await this.MapInformationService.SaveInfoSites(consultarNumber).subscribe(async res => {\r\n let respuesta = res\r\n await respuesta.forEach(element => {\r\n if(element.NUM === form.partnumber){\r\n ParNumberDupli = true\r\n this.toast.error('The part number is already registered, please verify.');\r\n }\r\n });\r\n if(ParNumberDupli === false){\r\n this.partService.InsertUpdate(form).subscribe(result=>{\r\n form.idNewPart = result[0].ResultID\r\n this.toast.success(this.translate.instant('msgPartInfUpdSucc'));\r\n this.popupNewPart = false;\r\n console.log(result);\r\n if(edit=='edit'){\r\n console.log(result);\r\n this.route.navigate(['parts/editParts'], {\r\n queryParams: {\r\n numID: result[0].ResultID\r\n }\r\n });\r\n }else{\r\n this.initForm();\r\n this.onsubmit.emit(form);\r\n }\r\n })\r\n }\r\n })\r\n }\r\n\r\n closepopup(){\r\n this.popupNewPart = false;\r\n this.initForm()\r\n this.onmodalhidden.emit();\r\n }\r\n\r\n validateDescription(e){\r\n console.log(e);\r\n console.log(e.value.length)\r\n if(e.value.length>250){\r\n this.errorDescription = true;\r\n }else{\r\n this.errorDescription = false;\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n\r\n openAlps(){\r\n this.popupAPL = true;\r\n }\r\n\r\n\r\n closePopups() {\r\n this.popupAPL = false;\r\n this.popupPartsSearch = false;\r\n }\r\n\r\n resultData(data){\r\n console.log(\"aqui\")\r\n this.popupAPL = false;\r\n this.popupPartsSearch = false;\r\n\r\n console.log(data)\r\n\r\n let form = {\r\n partnumber:data.partnumber,\r\n idNewPart:data.partid,\r\n price:data.listprice,\r\n PartId:data.partid,\r\n partdescription:data.partdescription,\r\n\r\n }\r\n\r\n this.onsubmit.emit(form)\r\n }\r\n CloseImportMaster(data){\r\n console.log(data)\r\n }\r\n\r\n}\r\nfunction patchValue(arg0: { partnumber: any; parttypeid: any; stdcost: any; active: any; taxable: any; partdescription: any; createasproduct: any; price: any; productdetails: any; id: any; }): FormGroup {\r\n throw new Error('Function not implemented.');\r\n}\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DashboardModule } from 'src/app/shared/shared-dashboard/dashboard.module';\r\n\r\nimport { DxTreeViewModule, DxButtonModule,DxListModule, DxLoadPanelModule, DxFileUploaderModule, DxAutocompleteModule, DxNumberBoxModule, DxTabPanelModule, DxTextAreaModule, DxCheckBoxModule,DxAccordionModule, DxRadioGroupModule, DxTagBoxModule, DxScrollViewModule, DxTextBoxModule, DxDataGridModule, DxPopupModule, DxSelectBoxModule, DxDateBoxModule } from \"devextreme-angular\";\r\n\r\n// import { EditPartsComponent } from 'src/app/pages/inventory/parts/edit-parts/edit-parts.component';\r\nimport { NewPartComponent } from 'src/app/pages/inventory/parts/new-part/new-part.component';\r\nimport { SharedDatagridModule } from 'src/app/shared/shared-datagrid/shared-datagrid.module';\r\nimport { ProjectAttachedDocumentModule } from 'src/app/shared/project-attached-document/project-attached-document.module';\r\nimport { VendorAlpsPopupModule } from '../../vendors/vendor-alps-popup/vendor-alps-popup.module';\r\n// import { TestModule } from 'src/app/pages/test/test.module';\r\n@NgModule({\r\n declarations: [\r\n NewPartComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DashboardModule,\r\n DxTreeViewModule,\r\n DxButtonModule,\r\n DxTagBoxModule,\r\n DxScrollViewModule,\r\n DxTextBoxModule,\r\n DxDataGridModule,\r\n DxAutocompleteModule,\r\n DxPopupModule,\r\n DxSelectBoxModule,\r\n DxDateBoxModule,\r\n DxRadioGroupModule,\r\n DxTabPanelModule,\r\n DxAccordionModule,\r\n DxCheckBoxModule,\r\n DxLoadPanelModule,\r\n DxTextAreaModule,\r\n DxNumberBoxModule,\r\n DxFileUploaderModule,\r\n ProjectAttachedDocumentModule,\r\n DxListModule,\r\n SharedDatagridModule,\r\n DxRadioGroupModule,\r\n VendorAlpsPopupModule,\r\n // TestModule\r\n ], exports:[NewPartComponent]\r\n})\r\nexport class NewPartsModule { }\r\n","export default \".card-default {\\n border-radius: 0.125rem;\\n color: #6c757d;\\n background-color: white;\\n box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.1);\\n font-size: 0.8rem;\\n}\\n\\n.card-default:hover {\\n cursor: pointer;\\n background-color: #D1F590;\\n}\\n\\n.card-header.image-wrapper {\\n width: 100%;\\n height: 5rem;\\n background-color: transparent;\\n border-bottom: none;\\n}\\n\\n.card-header.image-wrapper img {\\n width: auto;\\n height: auto;\\n max-height: 100%;\\n max-width: 100%;\\n}\\n\\n.card-body.name-wrapper {\\n -webkit-box-flex: 1;\\n flex: 1 1 auto;\\n padding: 1.25rem;\\n height: 4rem;\\n -webkit-box-align: center;\\n align-items: center;\\n text-align: center;\\n width: 100%;\\n -webkit-box-pack: center;\\n justify-content: center;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvaW52ZW50b3J5L3ZlbmRvcnMvdmVuZG9yLWFscHMtcG9wdXAvRTpcXERldlxcQ1VCRVRFTVBcXG5ld2N1YmUvc3JjXFxhcHBcXHBhZ2VzXFxpbnZlbnRvcnlcXHZlbmRvcnNcXHZlbmRvci1hbHBzLXBvcHVwXFx2ZW5kb3ItYWxwcy1wb3B1cC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvcGFnZXMvaW52ZW50b3J5L3ZlbmRvcnMvdmVuZG9yLWFscHMtcG9wdXAvdmVuZG9yLWFscHMtcG9wdXAuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSx1QkFBQTtFQUNBLGNBQUE7RUFDQSx1QkFBQTtFQUNBLDJDQUFBO0VBQ0EsaUJBQUE7QUNDRjs7QURFQTtFQUNJLGVBQUE7RUFFQSx5QkFBQTtBQ0FKOztBRFFBO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSw2QkFBQTtFQUNBLG1CQUFBO0FDTEY7O0FEUUE7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtBQ0xGOztBRFFBO0VBQ0UsbUJBQUE7RUFDRSxjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxZQUFBO0VBQ0EseUJBQUE7VUFBQSxtQkFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLHdCQUFBO1VBQUEsdUJBQUE7QUNMSiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2ludmVudG9yeS92ZW5kb3JzL3ZlbmRvci1hbHBzLXBvcHVwL3ZlbmRvci1hbHBzLXBvcHVwLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmNhcmQtZGVmYXVsdCB7XHJcbiAgYm9yZGVyLXJhZGl1czogMC4xMjVyZW07XHJcbiAgY29sb3I6ICM2Yzc1N2Q7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgYm94LXNoYWRvdzogMHB4IDhweCAxNXB4IHJnYigwIDAgMCAvIDEwJSk7XHJcbiAgZm9udC1zaXplOiAwLjhyZW07XHJcbn1cclxuXHJcbi5jYXJkLWRlZmF1bHQ6aG92ZXIge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNEMUY1OTA7XHJcbiAgICAvLyBjb2xvcjp3aGl0ZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY2FyZC1kZWZhdWx0OmhvdmVyIGkge1xyXG4gICAgLy8gY29sb3I6d2hpdGUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNhcmQtaGVhZGVyLmltYWdlLXdyYXBwZXJ7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiA1cmVtO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbn1cclxuXHJcbi5jYXJkLWhlYWRlci5pbWFnZS13cmFwcGVyIGltZ3tcclxuICB3aWR0aDogYXV0bztcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgbWF4LWhlaWdodDogMTAwJTtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5jYXJkLWJvZHkubmFtZS13cmFwcGVye1xyXG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XHJcbiAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgIHBhZGRpbmc6IDEuMjVyZW07XHJcbiAgICBoZWlnaHQ6IDRyZW07XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufSIsIi5jYXJkLWRlZmF1bHQge1xuICBib3JkZXItcmFkaXVzOiAwLjEyNXJlbTtcbiAgY29sb3I6ICM2Yzc1N2Q7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3gtc2hhZG93OiAwcHggOHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBmb250LXNpemU6IDAuOHJlbTtcbn1cblxuLmNhcmQtZGVmYXVsdDpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0QxRjU5MDtcbn1cblxuLmNhcmQtaGVhZGVyLmltYWdlLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLmNhcmQtaGVhZGVyLmltYWdlLXdyYXBwZXIgaW1nIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uY2FyZC1ib2R5Lm5hbWUtd3JhcHBlciB7XG4gIC13ZWJraXQtYm94LWZsZXg6IDE7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDRyZW07XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufSJdfQ== */\"","import { Component, OnInit, Input, SimpleChanges, Output, EventEmitter } from '@angular/core';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { ProjectService } from 'src/app/services/project.service';\r\nimport { PartsService } from 'src/app/services/parts.service';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { DatePipe } from '@angular/common';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-vendor-alps-popup',\r\n templateUrl: './vendor-alps-popup.component.html',\r\n styleUrls: ['./vendor-alps-popup.component.scss']\r\n})\r\n\r\nexport class VendorAlpsPopupComponent implements OnInit {\r\n @Input() vendorId: any;\r\n @Input() vendorToken: any;\r\n @Input() vendorMasterId: any;\r\n\r\n //Popups\r\n @Input() popupAPL: boolean;\r\n @Input() importingParts: boolean;\r\n @Output() reload = new EventEmitter();\r\n @Output() closePopups = new EventEmitter();\r\n\r\n //Popup Search\r\n @Input() popupPartsSearch: boolean;\r\n @Input() searchProductData: any;\r\n @Input() fromPart: boolean = false;\r\n @Input() insertMaster: boolean = false;\r\n\r\n settings = { dateFormat: '', moneyFormat: '' }\r\n\r\n //NewEditVendor\r\n popupNewItemVen: boolean = false;\r\n newVendor: FormGroup = new FormGroup({\r\n id: new FormControl('', []),\r\n partid: new FormControl('', []),\r\n vendorid: new FormControl('', []),\r\n partnumber: new FormControl('', []),\r\n default: new FormControl('', []),\r\n lastcost: new FormControl('', []),\r\n listprice: new FormControl('', []),\r\n uomid: new FormControl('', []),\r\n });\r\n vendorList: any = [];\r\n vendorPartsUom: any = [];\r\n popupConfirmVendorDefault: boolean = false;\r\n selectedEditData: any = {};\r\n\r\n //DeleteVendor\r\n\r\n // popupAPL = false;\r\n popupProductType = false;\r\n popupParts = false;\r\n cancelButton: any;\r\n cancelButtonParts: any;\r\n cancelButtonProductTypes: any;\r\n\r\n //Import Vendor\r\n showSelectProduct: boolean = false;\r\n categories: any = [];\r\n manufacturersCategory: any = [];\r\n manufacturersProducts: any = [];\r\n manufacturersProductType: any = [];\r\n products: any = [];\r\n productType: any = [];\r\n\r\n selectedCategory: any = {};\r\n selectedManufacturer: any;\r\n selectedProductType: any = {};\r\n selectedManufacturerCategory: any;\r\n\r\n search = { Name: '' }\r\n defaultProducts = [];\r\n defaultCategories = [];\r\n defaultProductTypes = [];\r\n\r\n disableSearchProduct: boolean = false;\r\n showCategorysSearchPart: boolean = false;\r\n searchedProduct: any = {};\r\n\r\n textAddCubePopup: any = 'Add to Cube';\r\n itemsSyncUp: any = [];\r\n\r\n closeAllPopups: any;\r\n\r\n constructor(\r\n public MapInformationService: MapInformationService,\r\n private ProjectService: ProjectService,\r\n private appconfig: AppConfigService,\r\n private translate: TranslateService,\r\n private partService: PartsService,\r\n private toast: ToastService,\r\n private datepipe: DatePipe,\r\n private router: Router,\r\n ) {\r\n this.settings.dateFormat = this.appconfig.dateFormat;\r\n this.settings.moneyFormat = this.appconfig.moneyFormat;\r\n\r\n // botones modales apl\r\n this.cancelButton = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.popupAPL = false;\r\n if(Object.keys(this.searchedProduct).length > 0){\r\n this.showCategorysSearchPart = true;\r\n this.searchedProduct = {};\r\n }else{\r\n this.closePopups.emit();\r\n this.popupPartsSearch = false;\r\n this.showCategorysSearchPart = false;\r\n this.searchedProduct = {};\r\n }\r\n },\r\n };\r\n\r\n this.cancelButtonParts = {\r\n text: this.translate.instant('btnBack'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.popupParts = false;\r\n },\r\n }\r\n\r\n this.cancelButtonProductTypes = {\r\n text: this.translate.instant('btnBack'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.popupProductType = false;\r\n },\r\n }\r\n\r\n this.closeAllPopups = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.popupProductType = false;\r\n this.popupAPL = false;\r\n this.popupParts = false;\r\n this.popupPartsSearch = false;\r\n this.closePopups.emit();\r\n },\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n console.log('Cambios ', changes);\r\n console.log('Popup Parts ', this.popupPartsSearch);\r\n if (changes.popupAPL && changes.popupAPL.currentValue === true) {\r\n this.mdAPL();\r\n } else if (changes.popupPartsSearch && changes.popupPartsSearch.currentValue === true) {\r\n\r\n this.mdPartsNumber(changes.searchProductData ? changes.searchProductData.currentValue : this.searchProductData);\r\n }\r\n }\r\n\r\n // modal apl search category\r\n mdAPL(manufacturer = '') {\r\n // this.popupPartsSearch == false ? this.popupAPL = true : '';\r\n\r\n if(this.popupPartsSearch == false){\r\n this.popupPartsSearch = true; \r\n this.showCategorysSearchPart = true;\r\n this.searchedProduct = {};\r\n }\r\n \r\n this.MapInformationService.GetCategories(manufacturer).subscribe((result: any) => {\r\n \r\n this.categories = result.Payload.sort((a, b) => {\r\n if (a.Name < b.Name) { return -1; }\r\n if (a.Name > b.Name) { return 1; }\r\n return 0;\r\n });\r\n this.defaultCategories = this.categories;\r\n })\r\n\r\n if (manufacturer == '') {\r\n this.MapInformationService.GetManufacturer('', '').subscribe((result: any) => {\r\n console.log('Manufactureer ', result);\r\n this.manufacturersCategory = result.Payload.sort((a, b) => {\r\n if (a.Name < b.Name) { return -1; }\r\n if (a.Name > b.Name) { return 1; }\r\n return 0;\r\n });\r\n })\r\n }\r\n }\r\n\r\n // modal apl search products\r\n mdParts(category, producttype = '', manufacturer = '') {\r\n this.selectedCategory = category;\r\n this.selectedManufacturer = manufacturer;\r\n this.selectedProductType = producttype;\r\n this.products = [];\r\n\r\n this.MapInformationService.GetByCategoryId(category.CategoryId, producttype, manufacturer).subscribe((result: any) => {\r\n // console.log('Resultado By ID ', result);\r\n this.products = result.Payload.sort((a, b) => {\r\n if (a.Name < b.Name) { return -1; }\r\n if (a.Name > b.Name) { return 1; }\r\n return 0;\r\n });\r\n this.defaultProducts = this.products;\r\n })\r\n\r\n this.MapInformationService.GetManufacturer(category.CategoryId, producttype).subscribe((result: any) => {\r\n console.log('Manufactureer ', result);\r\n this.manufacturersProducts = result.Payload.sort((a, b) => {\r\n if (a.Name < b.Name) { return -1; }\r\n if (a.Name > b.Name) { return 1; }\r\n return 0;\r\n });\r\n })\r\n\r\n\r\n this.popupParts = true;\r\n\r\n if (this.importingParts == false) {\r\n this.textAddCubePopup = this.translate.instant('ModuleVendorPartList.LinkCube');\r\n } else {\r\n this.textAddCubePopup = this.translate.instant('ModuleVendorPartList.AddCube');\r\n }\r\n }\r\n\r\n //modal product types categorys\r\n mdProductType(category, manufacturer = '') {\r\n this.selectedCategory = category;\r\n\r\n this.MapInformationService.GetproductType(category.CategoryId, manufacturer).subscribe((result: any) => {\r\n console.log('Product Type ', result);\r\n this.productType = result.Payload.sort((a, b) => {\r\n if (a.Name < b.Name) { return -1; }\r\n if (a.Name > b.Name) { return 1; }\r\n return 0;\r\n });\r\n\r\n this.defaultProductTypes = this.productType;\r\n\r\n this.popupProductType = true;\r\n })\r\n\r\n if (manufacturer === '') {\r\n this.MapInformationService.GetManufacturer(category.CategoryId, '').subscribe((result: any) => {\r\n this.manufacturersProductType = result.Payload.sort((a, b) => {\r\n if (a.Name < b.Name) { return -1; }\r\n if (a.Name > b.Name) { return 1; }\r\n return 0;\r\n });\r\n })\r\n }\r\n }\r\n\r\n partnumber = '';\r\n timeoutTarget;\r\n searchByPartNumber(data) {\r\n console.log(\"🚀 ~ VendorAlpsPopupComponent ~ searchByPartNumber ~ data:\", data)\r\n\r\n clearTimeout(this.timeoutTarget); // Limpiar el temporizador existente\r\n\r\n\r\n const inputValue = data.event.target.value;\r\n \r\n this.timeoutTarget = setTimeout(() => {\r\n console.log(\"Esperaste 2 segundos\");\r\n console.log(inputValue);\r\n this.partnumber = inputValue;\r\n console.log(\"🚀 Partnumber actualizado:\", this.partnumber);\r\n \r\n let searchBy = {\r\n NUMBER: inputValue\r\n }\r\n\r\n this.mdPartsNumber(searchBy)\r\n\r\n }, 2000);\r\n\r\n }\r\n\r\n mdPartsNumber(data) {\r\n console.log('DATA ', data);\r\n this.searchedProduct = { ...this.searchedProduct, ...data, Number: data.NUMBER }\r\n\r\n this.MapInformationService.GetProductByNumber(data.NUMBER, this.vendorMasterId, this.vendorToken).subscribe((result: any) => {\r\n console.log('Products ', result);\r\n this.popupPartsSearch = true;\r\n\r\n if (Array.isArray(result.Payload)) {\r\n this.products = result.Payload.sort((a, b) => {\r\n if (a.Name < b.Name) { return -1; }\r\n if (a.Name > b.Name) { return 1; }\r\n return 0;\r\n });\r\n } else {\r\n this.products = result.Payload == null ? [result] : [result.Payload];\r\n }\r\n\r\n this.mdAPL();\r\n })\r\n }\r\n\r\n searchCategory(event) {\r\n let newEvent = event.event.target.value;\r\n console.log('New Evento Category ', newEvent);\r\n if (newEvent !== null && newEvent !== '') {\r\n let filter = this.defaultCategories.filter(item => item.Name.toLowerCase().indexOf(newEvent.toLowerCase()) >= 0);\r\n console.log('Filtrados ', filter);\r\n this.categories = filter;\r\n } else {\r\n console.log('No Event ', newEvent);\r\n this.categories = this.defaultCategories;\r\n }\r\n }\r\n\r\n searchProductType(event) {\r\n let newEvent = event.event.target.value;\r\n console.log('New Evento Category ', newEvent);\r\n if (newEvent !== null && newEvent !== '') {\r\n let filter = this.defaultProductTypes.filter(item => item.Name.toLowerCase().indexOf(newEvent.toLowerCase()) >= 0);\r\n console.log('Filtrados ', filter);\r\n this.productType = filter;\r\n } else {\r\n console.log('No Event ', newEvent);\r\n this.productType = this.defaultProductTypes;\r\n }\r\n }\r\n\r\n searchProduct(evento, search?) {\r\n console.log(evento);\r\n let event = evento ? evento.event.target.value : '';\r\n console.log('event ', event);\r\n console.log(\"BUSCANDO PRODUCTOS \");\r\n if (event !== undefined) {\r\n if (event !== null && event !== '') {\r\n if (search) {\r\n console.log('Search ', search, ' /event: ', event);\r\n this.mdPartsNumber({ NUMBER: event });\r\n this.showCategorysSearchPart = false;\r\n } else {\r\n let filter = this.defaultProducts.filter(item => item.Name.toLowerCase().indexOf(event.toLowerCase()) >= 0);\r\n console.log('Filtrados ', filter);\r\n this.products = filter;\r\n }\r\n } else {\r\n this.products = this.defaultProducts;\r\n console.log('Products Search ', this.products);\r\n\r\n if (search) {\r\n this.showCategorysSearchPart = true;\r\n // this.textAddCubePopup = 'Link to Cube';\r\n console.log('Entre Acá ', this.showCategorysSearchPart);\r\n\r\n this.MapInformationService.GetManufacturer('', '').subscribe((result: any) => {\r\n console.log('Manufactureer ', result);\r\n this.manufacturersProducts = result.Payload.sort((a, b) => {\r\n if (a.Name < b.Name) { return -1; }\r\n if (a.Name > b.Name) { return 1; }\r\n return 0;\r\n });\r\n })\r\n }\r\n }\r\n }\r\n }\r\n\r\n saveVendor(defaultVendor) {\r\n let form = this.newVendor.value;\r\n form.default = defaultVendor;\r\n form.method = 'InsertUpdate_VendorParts';\r\n console.log('Actualizando al final ', form)\r\n this.partService.InsertUpdate(form).subscribe(result => {\r\n this.popupConfirmVendorDefault = false;\r\n this.toast.success(this.translate.instant('msgVendInfoUpdSucc'));\r\n this.popupNewItemVen = false;\r\n this.reload.emit();\r\n })\r\n }\r\n\r\n onValueChangedSearchProduct(event) {\r\n console.log('OnValueChanged ', event);\r\n }\r\n\r\n importPart(product) {\r\n console.log('Producto a Importar ', product);\r\n console.log(\"PARTS import \", this.importingParts);\r\n console.log(this.showCategorysSearchPart, ' / ', this.searchedProduct);\r\n if ((this.showCategorysSearchPart == true || JSON.stringify(this.searchedProduct) !== '{}') && !this.importingParts) {\r\n \r\n console.log('Show Category Search ', this.searchedProduct);\r\n let number = product.Name;\r\n console.log('Name ', number)\r\n\r\n this.newVendor = new FormGroup({\r\n id: new FormControl(this.searchedProduct.ID, []),\r\n partid: new FormControl(this.searchedProduct.PARTID, []),\r\n vendorid: new FormControl(this.vendorId, []),\r\n partnumber: new FormControl(number, []),\r\n default: new FormControl(this.searchedProduct.DEFAULTFLAG, []),\r\n lastcost: new FormControl(this.searchedProduct.LASTCOST, []),\r\n listprice: new FormControl(this.searchedProduct.LISTPRICE, []),\r\n uomid: new FormControl(this.searchedProduct.UOMID, []),\r\n });\r\n\r\n this.searchedProduct.NUMBER = number;\r\n\r\n this.saveVendor(this.searchedProduct.DEFAULTFLAG == true ? 1 : 0);\r\n setTimeout(() => {\r\n this.syncWithVendor(this.searchedProduct, '')\r\n setTimeout(() => {\r\n this.popupPartsSearch = false;\r\n this.popupParts = false;\r\n this.showCategorysSearchPart = false;\r\n this.popupProductType = false;\r\n\r\n this.searchedProduct = {};\r\n }, 300);\r\n }, 500);\r\n } else {\r\n console.log('Importing New Part ', this.vendorId);\r\n let vendorid = this.vendorId;\r\n if (this.fromPart) {\r\n this.partService.InsertUpdate({ method: 'Get_Master_VendorsAlps' }).subscribe(result => {\r\n console.log(\"VENDOR ALPS?? \", result);\r\n if (result[0].Column1 == 1) {\r\n this.toast.warning(\"There are more than one vendors associated\");\r\n } else {\r\n vendorid = result[0].ID;\r\n this.insertPartWithVendorId(product, vendorid)\r\n }\r\n });\r\n } else {\r\n this.insertPartWithVendorId(product, vendorid);\r\n }\r\n }\r\n }\r\n\r\n insertPartWithVendorId(product, vendorid) {\r\n console.log(\"VENDORID?? \", vendorid)\r\n\r\n let insert = {}\r\n\r\n if(this.insertMaster) {\r\n insert = {\r\n method: 'InsertUpdate_AcctPartsMasterCE',\r\n partnumber: product.Name,\r\n partdescription: product.Description,\r\n price: product.ListPrice,\r\n vendorlistid: vendorid,\r\n id: 0\r\n }\r\n } else {\r\n insert = {\r\n method: 'InsertUpdate_AcctPartsCEAlps',\r\n partnumber: product.Name,\r\n partdescription: product.Description,\r\n price: product.ListPrice,\r\n vendorlistid: vendorid,\r\n id: 0\r\n }\r\n }\r\n\r\n console.log(\"🚀 ~ file: vendor-alps-popup.component.ts:422 ~ insertPartWithVendorId ~ insert:\", insert)\r\n this.partService.InsertUpdate(insert).subscribe(result => {\r\n\r\n console.log('Parte Importada ', result);\r\n console.log(\"FROM PART?? \", this.fromPart);\r\n\r\n if (result[0].ResultID == -2) {\r\n this.popupAPL = false;\r\n this.popupParts = false;\r\n this.popupProductType = false;\r\n this.popupPartsSearch = false;\r\n\r\n let filter = [\r\n \"NUM\",\r\n \"contains\",\r\n product.Name\r\n ];\r\n\r\n this.toast.warning(this.translate.instant('msgDuplicatedImportedPart'));\r\n\r\n // this.reload.emit(filter);\r\n this.reload.emit();\r\n this.closePopups.emit();\r\n return;\r\n }\r\n\r\n let data = {\r\n id: 0,\r\n partid: result[0].ResultID,\r\n vendorid: vendorid,\r\n partnumber: product.Name,\r\n partdescription: product.Description,\r\n default: 1,\r\n lastcost: 0,\r\n employeeid: \"\",\r\n listprice: product.ListPrice,\r\n uomid: null,\r\n method: \"InsertUpdate_VendorParts\"\r\n }\r\n \r\n this.partService.InsertUpdate(data).subscribe(resultDefault => {\r\n console.log('Agregando Vendor Default ', data)\r\n console.log(resultDefault)\r\n this.popupAPL = false;\r\n this.popupParts = false;\r\n this.popupProductType = false;\r\n this.popupPartsSearch = false;\r\n this.reload.emit(data);\r\n this.closePopups.emit();\r\n\r\n let syncVendor = {\r\n NUMBER: product.Name,\r\n ID: resultDefault[0].ResutlID\r\n }\r\n if (!this.fromPart) {\r\n this.syncWithVendor(syncVendor, '')\r\n }\r\n\r\n this.toast.success(this.translate.instant('msgImportedPartSucc'));\r\n })\r\n })\r\n }\r\n\r\n syncWithVendor(data, update) {\r\n console.log(this.vendorMasterId, this.vendorToken)\r\n try {\r\n this.MapInformationService.syncVendorPart2(data.NUMBER, data.ID, 1, this.vendorMasterId, this.vendorToken)\r\n .subscribe(\r\n (data: any) => {\r\n console.log('Sincronizado ', data);\r\n this.closePopups.emit();\r\n if (data.masterid == \"\" || data.masterid == 0) {\r\n console.log('No se encontró la parte ')\r\n this.toast.warning(this.translate.instant('msgPartNotFoundWarn'));\r\n // this.getVendorPartList();\r\n this.reload.emit();\r\n } else {\r\n console.log('Se encontró la parte ')\r\n this.toast.success(this.translate.instant('msgUpdatSucc'))\r\n // this.getVendorPartList();\r\n this.reload.emit();\r\n }\r\n },\r\n (error => {\r\n console.log('Error ', error);\r\n this.closePopups.emit();\r\n this.toast.warning(this.translate.instant('msgUnableGetDetailsWarn'));\r\n })\r\n )\r\n } catch (e) {\r\n console.log('Error ', e);\r\n this.closePopups.emit();\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { VendorAlpsPopupComponent } from './vendor-alps-popup.component';\r\nimport { DxTooltipModule, DxAccordionModule, DxFileUploaderModule, DxNumberBoxModule, DxTextAreaModule } from 'devextreme-angular';\r\nimport { DxTemplateModule, DxDropDownButtonModule, DxButtonModule, DxCheckBoxModule, DxRadioGroupModule, DxTagBoxModule, DxScrollViewModule, DxTextBoxModule, DxDataGridModule, DxPopupModule, DxSelectBoxModule, DxDateBoxModule, DxAutocompleteModule } from \"devextreme-angular\";\r\n\r\n@NgModule({\r\n declarations: [\r\n VendorAlpsPopupComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n DxButtonModule,\r\n DxTagBoxModule,\r\n MdbGlobalModule,\r\n DxScrollViewModule,\r\n DxTextBoxModule,\r\n DxDataGridModule,\r\n DxPopupModule,\r\n DxSelectBoxModule,\r\n DxDateBoxModule,\r\n DxRadioGroupModule,\r\n DxCheckBoxModule,\r\n DxAutocompleteModule,\r\n DxNumberBoxModule,\r\n DxTextAreaModule,\r\n DxAccordionModule,\r\n DxTemplateModule,\r\n DxFileUploaderModule,\r\n DxTooltipModule,\r\n TranslateModule,\r\n DxDropDownButtonModule,\r\n FormsModule, \r\n ReactiveFormsModule\r\n ],\r\n exports:[VendorAlpsPopupComponent]\r\n})\r\nexport class VendorAlpsPopupModule { }\r\n","export default \"/* login */\\n.bg-body {\\n background-color: #F2F7FB;\\n width: 100%;\\n margin: 0;\\n padding: 0;\\n height: 100%;\\n}\\n.login-container {\\n margin-top: 7%;\\n box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);\\n border-radius: 4px;\\n}\\n.forget-pwd {\\n margin-top: -1.8rem;\\n}\\n.form-container {\\n padding: 2rem;\\n background-color: #fff;\\n border-radius: 4px;\\n}\\n.bg-login {\\n background-color: #f2f7fb;\\n border-radius: 5px;\\n color: #fff;\\n padding: 15px;\\n text-align: center;\\n}\\n.btn-outline-gray1 {\\n border-color: #58595b;\\n color: #58595b;\\n background-color: transparent;\\n background-image: none;\\n}\\n.btn-outline-gray1:hover {\\n border-color: #58595b;\\n color: white;\\n background-color: #58595b;\\n}\\n.btn-green1 {\\n background-color: #95c83d;\\n border-color: #95c83d;\\n color: #fff;\\n}\\n.btn-green1:hover {\\n background-color: #4ba645 !important;\\n border-color: #4ba645 !important;\\n color: #fff;\\n}\\n.form-container1 input[type=email]:focus:not([readonly]) {\\n border-bottom: 1px solid #95c83d !important;\\n box-shadow: 0 1px 0 0 #00C851 !important;\\n}\\n.form-container1 input[type=password]:focus:not([readonly]) {\\n border-bottom: 1px solid #95c83d !important;\\n box-shadow: 0 1px 0 0 #00C851 !important;\\n}\\n.form-container1 .md-form label {\\n color: #757575 !important;\\n font-size: 1rem;\\n font-family: \\\"Lato\\\", sans-serif;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvbG9naW4tcmVjb3Zlci1wYXNzd2QtY3cvRTpcXERldlxcQ1VCRVRFTVBcXG5ld2N1YmUvc3JjXFxhcHBcXHBhZ2VzXFxsb2dpbi1yZWNvdmVyLXBhc3N3ZC1jd1xcbG9naW4tcmVjb3Zlci1wYXNzd2QtY3cuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3BhZ2VzL2xvZ2luLXJlY292ZXItcGFzc3dkLWN3L2xvZ2luLXJlY292ZXItcGFzc3dkLWN3LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFVBQUE7QUFDQTtFQUNFLHlCQUFBO0VBQ0EsV0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsWUFBQTtBQ0NGO0FERUE7RUFDRSxjQUFBO0VBQ0EsNEVBQUE7RUFDQSxrQkFBQTtBQ0NGO0FERUE7RUFDRyxtQkFBQTtBQ0NIO0FERUE7RUFDRSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTtBQ0NGO0FERUE7RUFDRSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLGFBQUE7RUFDQSxrQkFBQTtBQ0NGO0FERUE7RUFDRSxxQkFBQTtFQUNBLGNBQUE7RUFDQSw2QkFBQTtFQUNBLHNCQUFBO0FDQ0Y7QURDQTtFQUNFLHFCQUFBO0VBQ0EsWUFBQTtFQUNBLHlCQUFBO0FDRUY7QURFQTtFQUNFLHlCQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0FDQ0Y7QURFQTtFQUNFLG9DQUFBO0VBQ0EsZ0NBQUE7RUFDQSxXQUFBO0FDQ0Y7QURFQTtFQUNFLDJDQUFBO0VBRUEsd0NBQUE7QUNDRjtBREdBO0VBQ0UsMkNBQUE7RUFFQSx3Q0FBQTtBQ0FGO0FER0E7RUFDRSx5QkFBQTtFQUNBLGVBQUE7RUFFQSwrQkFBQTtBQ0RGIiwiZmlsZSI6InNyYy9hcHAvcGFnZXMvbG9naW4tcmVjb3Zlci1wYXNzd2QtY3cvbG9naW4tcmVjb3Zlci1wYXNzd2QtY3cuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBsb2dpbiAqL1xyXG4uYmctYm9keXtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiNGMkY3RkI7XHJcbiAgd2lkdGg6MTAwJTtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5sb2dpbi1jb250YWluZXJ7XHJcbiAgbWFyZ2luLXRvcDogNyU7XHJcbiAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcclxuICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi5mb3JnZXQtcHdke1xyXG4gICBtYXJnaW4tdG9wOiAtMS44cmVtO1xyXG59XHJcblxyXG4uZm9ybS1jb250YWluZXJ7XHJcbiAgcGFkZGluZzogMnJlbTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gIGJvcmRlci1yYWRpdXM6IDRweDtcclxufVxyXG5cclxuLmJnLWxvZ2lue1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmY3ZmI7XHJcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHBhZGRpbmc6IDE1cHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uYnRuLW91dGxpbmUtZ3JheTF7XHJcbiAgYm9yZGVyLWNvbG9yOiAjNTg1OTViO1xyXG4gIGNvbG9yOiAjNTg1OTViO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbn1cclxuLmJ0bi1vdXRsaW5lLWdyYXkxOmhvdmVye1xyXG4gIGJvcmRlci1jb2xvcjogIzU4NTk1YjtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU4NTk1YjtcclxuXHJcbn1cclxuXHJcbi5idG4tZ3JlZW4xe1xyXG4gIGJhY2tncm91bmQtY29sb3I6Izk1YzgzZDtcclxuICBib3JkZXItY29sb3I6Izk1YzgzZDtcclxuICBjb2xvcjojZmZmO1xyXG59XHJcblxyXG4uYnRuLWdyZWVuMTpob3ZlcntcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiM0YmE2NDUgIWltcG9ydGFudDtcclxuICBib3JkZXItY29sb3I6IzRiYTY0NSAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAgI2ZmZjtcclxufVxyXG4vLyBmb2N1cyBhY3RpdmUgdXNlcm5hbWVcclxuLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTVjODNkICFpbXBvcnRhbnQ7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwQzg1MSAhaW1wb3J0YW50O1xyXG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBDODUxICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8vIGZvY3VzIGFjdGl2ZSBwYXNzd29yZFxyXG4uZm9ybS1jb250YWluZXIxIGlucHV0W3R5cGU9cGFzc3dvcmRdOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5NWM4M2QgIWltcG9ydGFudDtcclxuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBDODUxICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICMwMEM4NTEgIWltcG9ydGFudDtcclxufVxyXG4vLyBjb2xvciBmb250IGxhYmVsXHJcbi5mb3JtLWNvbnRhaW5lcjEgLm1kLWZvcm0gbGFiZWwge1xyXG4gIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG4gIC8vIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgc2Fucy1zZXJpZjtcclxufVxyXG4iLCIvKiBsb2dpbiAqL1xuLmJnLWJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGN0ZCO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5sb2dpbi1jb250YWluZXIge1xuICBtYXJnaW4tdG9wOiA3JTtcbiAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4uZm9yZ2V0LXB3ZCB7XG4gIG1hcmdpbi10b3A6IC0xLjhyZW07XG59XG5cbi5mb3JtLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLmJnLWxvZ2luIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjdmYjtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYnRuLW91dGxpbmUtZ3JheTEge1xuICBib3JkZXItY29sb3I6ICM1ODU5NWI7XG4gIGNvbG9yOiAjNTg1OTViO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLmJ0bi1vdXRsaW5lLWdyYXkxOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjNTg1OTViO1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ODU5NWI7XG59XG5cbi5idG4tZ3JlZW4xIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk1YzgzZDtcbiAgYm9yZGVyLWNvbG9yOiAjOTVjODNkO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJ0bi1ncmVlbjE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGJhNjQ1ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzRiYTY0NSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk1YzgzZCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBDODUxICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBDODUxICFpbXBvcnRhbnQ7XG59XG5cbi5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5NWM4M2QgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwQzg1MSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwQzg1MSAhaW1wb3J0YW50O1xufVxuXG4uZm9ybS1jb250YWluZXIxIC5tZC1mb3JtIGxhYmVsIHtcbiAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIHNhbnMtc2VyaWY7XG59Il19 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Routes, RouterModule, Router } from '@angular/router';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'app-login-recover-passwd-cw',\r\n templateUrl: './login-recover-passwd-cw.component.html',\r\n styleUrls: ['./login-recover-passwd-cw.component.scss']\r\n})\r\nexport class LoginRecoverPasswdCWComponent implements OnInit {\r\n cardForm: FormGroup;\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private router: Router,\r\n private toast: ToastService,\r\n private userService: UserService,\r\n private translate:TranslateService) {\r\n this.cardForm = fb.group({\r\n // materialFormCardNameEx: ['', Validators.required],\r\n email: ['', [Validators.email, Validators.required]],\r\n // materialFormCardConfirmEx: ['', Validators.required],\r\n // materialFormCardPasswordEx: ['', Validators.required]\r\n });\r\n }\r\n ngOnInit() {\r\n }\r\n\r\n resetPass() {\r\n let value = this.cardForm.value;\r\n console.log(this.cardForm.value);\r\n this.userService.recoverPasswordCW(value.email).subscribe(result => {\r\n console.log(result);\r\n if (result.response == 0) {\r\n this.toast.success(this.translate.instant('msgRecPassSucc'));\r\n this.router.navigateByUrl('/login');\r\n } else {\r\n this.toast.error('An error has ocurred or Email is not valid');\r\n }\r\n })\r\n }\r\n\r\n}\r\n","export default \"/* login */\\n.bg-body {\\n background-color: #F2F7FB;\\n width: 100%;\\n margin: 0;\\n padding: 0;\\n height: 100%;\\n}\\n.login-container {\\n margin-top: 7%;\\n box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);\\n border-radius: 4px;\\n}\\n.forget-pwd {\\n margin-top: -1.8rem;\\n}\\n.form-container {\\n padding: 2rem;\\n background-color: #fff;\\n border-radius: 4px;\\n}\\n.bg-login {\\n background-color: #f2f7fb;\\n border-radius: 5px;\\n color: #fff;\\n padding: 15px;\\n text-align: center;\\n}\\n.btn-outline-gray1 {\\n border-color: #58595b;\\n color: #58595b;\\n background-color: transparent;\\n background-image: none;\\n}\\n.btn-outline-gray1:hover {\\n border-color: #58595b;\\n color: white;\\n background-color: #58595b;\\n}\\n.btn-green1 {\\n background-color: #95c83d;\\n border-color: #95c83d;\\n color: #fff;\\n}\\n.btn-green1:hover {\\n background-color: #4ba645 !important;\\n border-color: #4ba645 !important;\\n color: #fff;\\n}\\n.form-container1 input[type=email]:focus:not([readonly]) {\\n border-bottom: 1px solid #95c83d !important;\\n box-shadow: 0 1px 0 0 #00C851 !important;\\n}\\n.form-container1 input[type=password]:focus:not([readonly]) {\\n border-bottom: 1px solid #95c83d !important;\\n box-shadow: 0 1px 0 0 #00C851 !important;\\n}\\n.form-container1 .md-form label {\\n color: #757575 !important;\\n font-size: 1rem;\\n font-family: \\\"Lato\\\", sans-serif;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvbG9naW4tcmVjb3Zlci1wYXNzd2QvRTpcXERldlxcQ1VCRVRFTVBcXG5ld2N1YmUvc3JjXFxhcHBcXHBhZ2VzXFxsb2dpbi1yZWNvdmVyLXBhc3N3ZFxcbG9naW4tcmVjb3Zlci1wYXNzd2QuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3BhZ2VzL2xvZ2luLXJlY292ZXItcGFzc3dkL2xvZ2luLXJlY292ZXItcGFzc3dkLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFVBQUE7QUFDQTtFQUNFLHlCQUFBO0VBQ0EsV0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsWUFBQTtBQ0NGO0FERUE7RUFDRSxjQUFBO0VBQ0EsNEVBQUE7RUFDQSxrQkFBQTtBQ0NGO0FERUE7RUFDRyxtQkFBQTtBQ0NIO0FERUE7RUFDRSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTtBQ0NGO0FERUE7RUFDRSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLGFBQUE7RUFDQSxrQkFBQTtBQ0NGO0FERUE7RUFDRSxxQkFBQTtFQUNBLGNBQUE7RUFDQSw2QkFBQTtFQUNBLHNCQUFBO0FDQ0Y7QURDQTtFQUNFLHFCQUFBO0VBQ0EsWUFBQTtFQUNBLHlCQUFBO0FDRUY7QURFQTtFQUNFLHlCQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0FDQ0Y7QURFQTtFQUNFLG9DQUFBO0VBQ0EsZ0NBQUE7RUFDQSxXQUFBO0FDQ0Y7QURFQTtFQUNFLDJDQUFBO0VBRUEsd0NBQUE7QUNDRjtBREdBO0VBQ0UsMkNBQUE7RUFFQSx3Q0FBQTtBQ0FGO0FER0E7RUFDRSx5QkFBQTtFQUNBLGVBQUE7RUFFQSwrQkFBQTtBQ0RGIiwiZmlsZSI6InNyYy9hcHAvcGFnZXMvbG9naW4tcmVjb3Zlci1wYXNzd2QvbG9naW4tcmVjb3Zlci1wYXNzd2QuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBsb2dpbiAqL1xyXG4uYmctYm9keXtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiNGMkY3RkI7XHJcbiAgd2lkdGg6MTAwJTtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5sb2dpbi1jb250YWluZXJ7XHJcbiAgbWFyZ2luLXRvcDogNyU7XHJcbiAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcclxuICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi5mb3JnZXQtcHdke1xyXG4gICBtYXJnaW4tdG9wOiAtMS44cmVtO1xyXG59XHJcblxyXG4uZm9ybS1jb250YWluZXJ7XHJcbiAgcGFkZGluZzogMnJlbTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gIGJvcmRlci1yYWRpdXM6IDRweDtcclxufVxyXG5cclxuLmJnLWxvZ2lue1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmY3ZmI7XHJcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHBhZGRpbmc6IDE1cHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uYnRuLW91dGxpbmUtZ3JheTF7XHJcbiAgYm9yZGVyLWNvbG9yOiAjNTg1OTViO1xyXG4gIGNvbG9yOiAjNTg1OTViO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbn1cclxuLmJ0bi1vdXRsaW5lLWdyYXkxOmhvdmVye1xyXG4gIGJvcmRlci1jb2xvcjogIzU4NTk1YjtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU4NTk1YjtcclxuXHJcbn1cclxuXHJcbi5idG4tZ3JlZW4xe1xyXG4gIGJhY2tncm91bmQtY29sb3I6Izk1YzgzZDtcclxuICBib3JkZXItY29sb3I6Izk1YzgzZDtcclxuICBjb2xvcjojZmZmO1xyXG59XHJcblxyXG4uYnRuLWdyZWVuMTpob3ZlcntcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiM0YmE2NDUgIWltcG9ydGFudDtcclxuICBib3JkZXItY29sb3I6IzRiYTY0NSAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAgI2ZmZjtcclxufVxyXG4vLyBmb2N1cyBhY3RpdmUgdXNlcm5hbWVcclxuLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTVjODNkICFpbXBvcnRhbnQ7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwQzg1MSAhaW1wb3J0YW50O1xyXG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBDODUxICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8vIGZvY3VzIGFjdGl2ZSBwYXNzd29yZFxyXG4uZm9ybS1jb250YWluZXIxIGlucHV0W3R5cGU9cGFzc3dvcmRdOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5NWM4M2QgIWltcG9ydGFudDtcclxuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBDODUxICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICMwMEM4NTEgIWltcG9ydGFudDtcclxufVxyXG4vLyBjb2xvciBmb250IGxhYmVsXHJcbi5mb3JtLWNvbnRhaW5lcjEgLm1kLWZvcm0gbGFiZWwge1xyXG4gIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG4gIC8vIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgc2Fucy1zZXJpZjtcclxufVxyXG4iLCIvKiBsb2dpbiAqL1xuLmJnLWJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGN0ZCO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5sb2dpbi1jb250YWluZXIge1xuICBtYXJnaW4tdG9wOiA3JTtcbiAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4uZm9yZ2V0LXB3ZCB7XG4gIG1hcmdpbi10b3A6IC0xLjhyZW07XG59XG5cbi5mb3JtLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLmJnLWxvZ2luIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjdmYjtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYnRuLW91dGxpbmUtZ3JheTEge1xuICBib3JkZXItY29sb3I6ICM1ODU5NWI7XG4gIGNvbG9yOiAjNTg1OTViO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLmJ0bi1vdXRsaW5lLWdyYXkxOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjNTg1OTViO1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ODU5NWI7XG59XG5cbi5idG4tZ3JlZW4xIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk1YzgzZDtcbiAgYm9yZGVyLWNvbG9yOiAjOTVjODNkO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJ0bi1ncmVlbjE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGJhNjQ1ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzRiYTY0NSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk1YzgzZCAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBDODUxICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBDODUxICFpbXBvcnRhbnQ7XG59XG5cbi5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5NWM4M2QgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwQzg1MSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwQzg1MSAhaW1wb3J0YW50O1xufVxuXG4uZm9ybS1jb250YWluZXIxIC5tZC1mb3JtIGxhYmVsIHtcbiAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIHNhbnMtc2VyaWY7XG59Il19 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Routes, RouterModule, Router } from '@angular/router';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'app-login-recover-passwd',\r\n templateUrl: './login-recover-passwd.component.html',\r\n styleUrls: ['./login-recover-passwd.component.scss']\r\n})\r\nexport class LoginRecoverPasswdComponent implements OnInit {\r\n cardForm: FormGroup;\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private router: Router,\r\n private toast: ToastService,\r\n private userService: UserService,\r\n private translate:TranslateService) {\r\n this.cardForm = fb.group({\r\n // materialFormCardNameEx: ['', Validators.required],\r\n email: ['', [Validators.email, Validators.required]],\r\n // materialFormCardConfirmEx: ['', Validators.required],\r\n // materialFormCardPasswordEx: ['', Validators.required]\r\n });\r\n }\r\n ngOnInit() {\r\n }\r\n\r\n resetPass() {\r\n let value = this.cardForm.value;\r\n console.log(this.cardForm.value);\r\n this.userService.recoverPassword(value.email).subscribe(result => {\r\n console.log(result);\r\n if (result.response == 0) {\r\n this.toast.success(this.translate.instant('msgRecPassSucc'));\r\n this.router.navigateByUrl('/login');\r\n } else {\r\n this.toast.error('An error has ocurred or Email is not valid');\r\n }\r\n })\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2xvZ2luL2NvbXBhbnktcmVnaXN0cmF0aW9uL2NvbXBhbnktcmVnaXN0cmF0aW9uLmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';\r\nimport { FormGroup, FormControl, Validators, FormBuilder } from '@angular/forms';\r\nimport { CookieXSRFStrategy } from '@angular/http';\r\nimport { Routes, RouterModule, Router } from '@angular/router';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { CompanySettingsService } from 'src/app/services/company-settings.service';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\n\r\nimport { RecaptchaComponent } from 'ng-recaptcha';\r\n\r\n@Component({\r\n selector: 'app-company-registration',\r\n templateUrl: './company-registration.component.html',\r\n styleUrls: ['./company-registration.component.scss']\r\n})\r\nexport class CompanyRegistrationComponent implements OnInit {\r\n // @ViewChild('modalSendEmail', { static: true }) modalSendEmail!: ModalDirective;\r\n @ViewChild('openModalBtn', { static: false }) openModalBtn!: ElementRef;\r\n\r\n cardForm1: FormGroup;\r\n Torganizacion: Array;\r\n nuser:Array;\r\n public _formEntity: FormGroup;\r\n optionsType: any;\r\n companyTypes: any;\r\n mycatchaResponse: any; \r\n popupSendEmail: boolean = false;\r\n\r\n public resolved(captchaResponse: string): void {\r\n console.log(`Resolved captcha with response: ${captchaResponse}`);\r\n this.mycatchaResponse = captchaResponse;\r\n }\r\n\r\n public onError(errorDetails: string): void {\r\n console.log(`reCAPTCHA error encountered; details:`, errorDetails);\r\n } \r\n\r\n constructor(private fb: FormBuilder, private router: Router, private toastrService: ToastService, private settings: CompanySettingsService, private toast: ToastService, public MapInformationService:MapInformationService) {\r\n\r\n this.cardForm1 = fb.group({\r\n firtsname: ['', Validators.required],\r\n lastname: ['', Validators.required],\r\n organame: ['', Validators.required],\r\n pnum: ['', Validators.required]\r\n });\r\n\r\n }\r\n\r\n formData = {\r\n clientfirstname: '',\r\n clientlastname: '',\r\n clientemail: '',\r\n clientorganizationname: '',\r\n clientphonenumber: '',\r\n clientorganizationtype: '',\r\n clientnumberofusers: '0'\r\n };\r\n \r\n validationErrors = {\r\n clientfirstname: false,\r\n clientlastname: false,\r\n clientemail: false,\r\n clientorganizationname: false,\r\n clientphonenumber: false,\r\n clientorganizationtype: false\r\n };\r\n \r\n showModal() {\r\n const button = document.getElementById('openModalBtn'); // Obtén el botón por su ID\r\n if (button) {\r\n button.click(); // Simula el clic en el botón\r\n } else {\r\n console.error('El botón no se encontró');\r\n }\r\n }\r\n\r\n // Torganizacion: Array;\r\n ngOnInit() {\r\n\r\n \r\n\r\n this._formEntity = new FormGroup({\r\n clientfirstname: new FormControl({ value: '', disabled: false }, [Validators.required, Validators.maxLength(45)]),\r\n clientlastname: new FormControl({ value: '', disabled: false }, [Validators.required, Validators.maxLength(45)]),\r\n clientemail: new FormControl({ value: '', disabled: false }, [Validators.required, Validators.email, Validators.maxLength(45)]),\r\n clientorganizationname: new FormControl({ value: '', disabled: false }, [Validators.required, Validators.maxLength(45)]),\r\n clientphonenumber: new FormControl({ value: '', disabled: false }, [Validators.required, Validators.maxLength(45)]),\r\n clientorganizationtype: new FormControl({ value: '', disabled: false }, [Validators.required, Validators.maxLength(45)]),\r\n clientnumberofusers: new FormControl({ value: '0', disabled: false }, [])\r\n });\r\n\r\n this.GetCompanyTypes();\r\n\r\n\r\n this.Torganizacion = [\r\n { value: '1', label: 'BAS Contractor' },\r\n { value: '2', label: 'Electrical Contrator' },\r\n { value: '3', label: 'General Contrator' },\r\n { value: '4', label: 'Manufacturer' },\r\n { value: '5', label: 'Manufacturer Representative' },\r\n { value: '6', label: 'Mechanical Contrator' },\r\n { value: '7', label: 'Other' }\r\n ];\r\n\r\n this.nuser = [\r\n { value: '1', label: '5' },\r\n { value: '2', label: '6' },\r\n { value: '3', label: '7' },\r\n { value: '4', label: '8' },\r\n { value: '5', label: '9' },\r\n { value: '6', label: '10' },\r\n { value: '7', label: '11' },\r\n { value: '8', label: '12' },\r\n { value: '9', label: '50' }\r\n ];\r\n }\r\n\r\n GetCompanyTypes() {\r\n this.settings.GetCompanyTypes().subscribe(\r\n data => {\r\n this.companyTypes = data;\r\n },\r\n err => {\r\n\r\n }\r\n )\r\n } \r\n\r\n changeCustomerType(a: any){}\r\n\r\n saveCompany(){\r\n console.log(this._formEntity);\r\n let client = this._formEntity.value\r\n if (!this.mycatchaResponse){\r\n this.toast.error('You must resolve catcha.');\r\n return 0;\r\n } \r\n if (this._formEntity.status == 'INVALID'){\r\n this.toast.error('You must fill all fields with valid data.');\r\n return 0;\r\n } \r\n this._formEntity.value.method = \"Insert_TempUser\";\r\n this.MapInformationService.MethodCallApiFlexUtility(this._formEntity.value).subscribe(\r\n data => {\r\n\r\n let info_email = {\r\n mailto: client.clientemail,\r\n address: client.clientemail,\r\n service: \"Get_EmailTemplate_ClientTempUser\",\r\n parameterxml: `${client.clientemail}`,\r\n subject: \"Welcome to Cube USA!\"\r\n }\r\n\r\n this.settings.SendNotificationClientTempUser(info_email).subscribe(resp => {\r\n\r\n // localStorage.setItem(\"idTempUser\", data[0].ID);\r\n // this.toast.success(\"Your password has been sent to your email, please verify\");\r\n setTimeout(() => {\r\n this.showModal(); \r\n }, 1000);\r\n // this.popupSendEmail = true\r\n // this.router.navigateByUrl('/loginUserTemp');\r\n\r\n })\r\n\r\n\r\n\r\n // localStorage.setItem(\"newUserEmail\", this._formEntity.value.clientemail);\r\n // this.companyTypes = data;\r\n\r\n },\r\n err => {\r\n\r\n }\r\n ) \r\n }\r\n\r\n\r\n SendEmailPopup(){\r\n this.popupSendEmail = false\r\n this.router.navigateByUrl('/loginUserTemp');\r\n }\r\n\r\n \r\n\r\n UserLogin(){\r\n console.log('al login')\r\n this.router.navigateByUrl('/loginUserTemp');\r\n }\r\n\r\n}\r\n","export default \"::ng-deep .title-sing {\\n color: #333 !important;\\n font-weight: 600 !important;\\n font-family: \\\"Nunito Sans\\\", sans-serif;\\n}\\n\\n::ng-deep .form-control {\\n background-color: #fff !important;\\n}\\n\\n::ng-deep .form-container1 input[type=text]:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 #00c851 !important;\\n}\\n\\n::ng-deep .form-container1 input[type=password]:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 #00c851 !important;\\n}\\n\\n::ng-deep .form-container1 input[type=email]:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 #00c851 !important;\\n}\\n\\n::ng-deep .form-container1 input[type=number]:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 #00c851 !important;\\n}\\n\\n::ng-deep .md-form textarea.md-textarea:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 #00c851 !important;\\n}\\n\\n::ng-deep .form-container1 .md-form label {\\n color: #757575 !important;\\n font-size: 1rem;\\n font-family: \\\"Nunito Sans\\\", sans-serif;\\n}\\n\\n::ng-deep .form-container1[_ngcontent-c1] .md-form[_ngcontent-c1] label[_ngcontent-c1] {\\n color: #757575 !important;\\n font-size: 0.9rem;\\n font-weight: 400;\\n font-family: \\\"Nunito Sans\\\", sans-serif;\\n}\\n\\n::ng-deep .form-control:focus {\\n color: #495057;\\n background-color: #fff;\\n border-color: #95c83d !important;\\n outline: 0;\\n box-shadow: 0 0 0 0.2rem #27ca3761 !important;\\n}\\n\\n::ng-deep .form-container1 input[type=email]:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 transparent !important;\\n}\\n\\n::ng-deep .form-container1 input[type=password]:focus:not([readonly]) {\\n /* box-shadow: 0 1px 0 0 #00c851 !important; */\\n}\\n\\n::ng-deep .form-container1 input[type=password]:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 transparent !important;\\n}\\n\\n::ng-deep .form-container1 input[type=email]:focus:not([readonly]) {\\n /* box-shadow: 0 1px 0 0 #00c851 !important; */\\n}\\n\\n.was-validated .form-control:valid, .form-control.is-valid {\\n border-color: #95c83d !important;\\n}\\n\\n::ng-deep .input-group > .form-control:not(:first-child), .input-group > .custom-select:not(:first-child) {\\n border-radius: 0.25rem !important;\\n}\\n\\n::ng-deep .input-group > .form-control:not(:first-child), .input-group > .custom-select:not(:first-child) {\\n /* border-top-left-radius: 0; */\\n /* border-bottom-left-radius: 0; */\\n border-radius: 0.25rem !important;\\n}\\n\\n::ng-deep .input-group > .form-control:not(:last-child), .input-group > .custom-select:not(:last-child) {\\n /* border-top-right-radius: 0; */\\n /* border-bottom-right-radius: 0; */\\n border-radius: 0.25rem !important;\\n}\\n\\n.input-group-text {\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-align: center;\\n align-items: center;\\n padding: 0.375rem 0.75rem;\\n margin-bottom: 0;\\n font-size: 1rem;\\n font-weight: 400;\\n line-height: 1.5;\\n color: #495057;\\n text-align: center;\\n white-space: nowrap;\\n background-color: #e9ecef;\\n border-top: 1px solid #ced4da;\\n border-radius: 0.25rem;\\n border-bottom: 1px solid #ced4da;\\n border-left: 1px solid #ced4da;\\n}\\n\\n.input-group-text {\\n background-color: transparent;\\n}\\n\\n::ng-deep .btn-orange {\\n background-color: #FEA30B !important;\\n border-color: #FEA30B !important;\\n color: #ffff !important;\\n}\\n\\n::ng-deep .btn-orange:hover {\\n background-color: #ea9108 !important;\\n border-color: #ea9108 !important;\\n color: #fff;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvbG9naW4vbG9naW4tY3ViZXdvcmtzL0U6XFxEZXZcXENVQkVURU1QXFxuZXdjdWJlL3NyY1xcYXBwXFxwYWdlc1xcbG9naW5cXGxvZ2luLWN1YmV3b3Jrc1xcbG9naW4tY3ViZXdvcmtzLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9wYWdlcy9sb2dpbi9sb2dpbi1jdWJld29ya3MvbG9naW4tY3ViZXdvcmtzLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usc0JBQUE7RUFDQSwyQkFBQTtFQUNBLHNDQUFBO0FDQ0Y7O0FEWUE7RUFDRSxpQ0FBQTtBQ1RGOztBRGNBO0VBR0Usd0NBQUE7QUNaRjs7QURlQTtFQUdFLHdDQUFBO0FDYkY7O0FEZUE7RUFHRSx3Q0FBQTtBQ2JGOztBRGVBO0VBR0Usd0NBQUE7QUNiRjs7QURlQTtFQUdFLHdDQUFBO0FDYkY7O0FEaUJBO0VBQ0UseUJBQUE7RUFDQSxlQUFBO0VBRUEsc0NBQUE7QUNmRjs7QURrQkE7RUFDRSx5QkFBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzQ0FBQTtBQ2ZGOztBRG1CQTtFQUNJLGNBQUE7RUFDQSxzQkFBQTtFQUNBLGdDQUFBO0VBQ0EsVUFBQTtFQUNBLDZDQUFBO0FDaEJKOztBRG1CQTtFQUNJLDRDQUFBO0FDaEJKOztBRG9CQTtFQUVJLDhDQUFBO0FDbEJKOztBRHFCQTtFQUNJLDRDQUFBO0FDbEJKOztBRHNCQTtFQUVJLDhDQUFBO0FDcEJKOztBRHVCQTtFQUNJLGdDQUFBO0FDcEJKOztBRHVCQTtFQUdJLGlDQUFBO0FDdEJKOztBRHlCQTtFQUNJLCtCQUFBO0VBQ0Esa0NBQUE7RUFDRSxpQ0FBQTtBQ3RCTjs7QUR5QkE7RUFDSSxnQ0FBQTtFQUNBLG1DQUFBO0VBQ0EsaUNBQUE7QUN0Qko7O0FEd0JBO0VBQ0ksb0JBQUE7RUFDQSxhQUFBO0VBQ0EseUJBQUE7RUFDQSxtQkFBQTtFQUNBLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EseUJBQUE7RUFFQSw2QkFBQTtFQUNBLHNCQUFBO0VBQ0EsZ0NBQUE7RUFDQSw4QkFBQTtBQ3RCSjs7QUR3QkE7RUFDRSw2QkFBQTtBQ3JCRjs7QUR3QkE7RUFDRSxvQ0FBQTtFQUNBLGdDQUFBO0VBQ0EsdUJBQUE7QUNyQkY7O0FEd0JBO0VBQ0Usb0NBQUE7RUFDQSxnQ0FBQTtFQUNBLFdBQUE7QUNyQkYiLCJmaWxlIjoic3JjL2FwcC9wYWdlcy9sb2dpbi9sb2dpbi1jdWJld29ya3MvbG9naW4tY3ViZXdvcmtzLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiOjpuZy1kZWVwIC50aXRsZS1zaW5nIHtcclxuICBjb2xvcjogIzMzMyAhaW1wb3J0YW50O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcclxuICBmb250LWZhbWlseTogXCJOdW5pdG8gU2Fuc1wiLCBzYW5zLXNlcmlmO1xyXG59XHJcblxyXG46Om5nLWRlZXAgLmJnLWJvZHkge1xyXG4gIC8vIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLy8gOjpuZy1kZWVwIC5sb2dpbi1jb250YWluZXIge1xyXG4vLyAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbi8vIH1cclxuLy9cclxuLy9cclxuXHJcbjo6bmctZGVlcCAuZm9ybS1jb250cm9se1xyXG4gIGJhY2tncm91bmQtY29sb3I6I2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuLy8gZm9ybSBpbnB1dCBzdHlsZVxyXG46Om5nLWRlZXAgIC5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcclxuICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk1YzgzZCAhaW1wb3J0YW50O1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcclxuICBib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgIC5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XHJcbiAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5NWM4M2QgIWltcG9ydGFudDtcclxuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcclxufVxyXG46Om5nLWRlZXAgIC5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XHJcbiAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5NWM4M2QgIWltcG9ydGFudDtcclxuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcclxufVxyXG46Om5nLWRlZXAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XHJcbiAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5NWM4M2QgIWltcG9ydGFudDtcclxuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcclxufVxyXG46Om5nLWRlZXAgIC5tZC1mb3JtIHRleHRhcmVhLm1kLXRleHRhcmVhOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XHJcbiAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5NWM4M2QgIWltcG9ydGFudDtcclxuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcclxufVxyXG5cclxuLy8gY29sb3IgZm9udCBsYWJlbFxyXG46Om5nLWRlZXAgIC5mb3JtLWNvbnRhaW5lcjEgLm1kLWZvcm0gbGFiZWwge1xyXG4gIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XHJcbiAgZm9udC1zaXplOiAxcmVtO1xyXG4gIC8vIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgZm9udC1mYW1pbHk6IFwiTnVuaXRvIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxufVxyXG5cclxuOjpuZy1kZWVwICAuZm9ybS1jb250YWluZXIxW19uZ2NvbnRlbnQtYzFdIC5tZC1mb3JtW19uZ2NvbnRlbnQtYzFdIGxhYmVsW19uZ2NvbnRlbnQtYzFdIHtcclxuICBjb2xvcjogIzc1NzU3NSAhaW1wb3J0YW50O1xyXG4gIGZvbnQtc2l6ZTogMC45cmVtO1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgZm9udC1mYW1pbHk6IFwiTnVuaXRvIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxufVxyXG5cclxuXHJcbjo6bmctZGVlcCAuZm9ybS1jb250cm9sOmZvY3VzIHtcclxuICAgIGNvbG9yOiAjNDk1MDU3O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIGJvcmRlci1jb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xyXG4gICAgb3V0bGluZTogMDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSAjMjdjYTM3NjEgIWltcG9ydGFudDtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcclxuICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuOjpuZy1kZWVwIC5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcclxuICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgLyogYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDsgKi9cclxufVxyXG5cclxuOjpuZy1kZWVwIC5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcclxuICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuOjpuZy1kZWVwIC5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcclxuICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgLyogYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDsgKi9cclxufVxyXG5cclxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCwgLmZvcm0tY29udHJvbC5pcy12YWxpZCB7XHJcbiAgICBib3JkZXItY29sb3I6ICM5NWM4M2QgIWltcG9ydGFudDtcclxufVxyXG5cclxuOjpuZy1kZWVwICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpLCAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgICAvLyBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xyXG4gICAgLy8gYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuOjpuZy1kZWVwICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpLCAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgICAvKiBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOyAqL1xyXG4gICAgLyogYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDsgKi9cclxuICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpub3QoOmxhc3QtY2hpbGQpLCAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgIC8qIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyAqL1xyXG4gICAgLyogYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7ICovXHJcbiAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XHJcbn1cclxuLmlucHV0LWdyb3VwLXRleHQge1xyXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgY29sb3I6ICM0OTUwNTc7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZWNlZjtcclxuICAgICAgLy8gYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjZWQ0ZGE7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NlZDRkYTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlZDRkYTtcclxuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NlZDRkYTtcclxufVxyXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAuYnRuLW9yYW5nZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZFQTMwQiAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1jb2xvcjogI0ZFQTMwQiAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAjZmZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgLmJ0bi1vcmFuZ2U6aG92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlYTkxMDggIWltcG9ydGFudDtcclxuICBib3JkZXItY29sb3I6ICNlYTkxMDggIWltcG9ydGFudDtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG4iLCI6Om5nLWRlZXAgLnRpdGxlLXNpbmcge1xuICBjb2xvcjogIzMzMyAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7XG4gIGZvbnQtZmFtaWx5OiBcIk51bml0byBTYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5cbjo6bmctZGVlcCAuZm9ybS1jb250cm9sIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPXRleHRdOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuZm9ybS1jb250YWluZXIxIGlucHV0W3R5cGU9bnVtYmVyXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAubWQtZm9ybSB0ZXh0YXJlYS5tZC10ZXh0YXJlYTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuZm9ybS1jb250YWluZXIxIC5tZC1mb3JtIGxhYmVsIHtcbiAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LWZhbWlseTogXCJOdW5pdG8gU2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG46Om5nLWRlZXAgLmZvcm0tY29udGFpbmVyMVtfbmdjb250ZW50LWMxXSAubWQtZm9ybVtfbmdjb250ZW50LWMxXSBsYWJlbFtfbmdjb250ZW50LWMxXSB7XG4gIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWZhbWlseTogXCJOdW5pdG8gU2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG46Om5nLWRlZXAgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICM5NWM4M2QgIWltcG9ydGFudDtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtICMyN2NhMzc2MSAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcbiAgLyogYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDsgKi9cbn1cblxuOjpuZy1kZWVwIC5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuZm9ybS1jb250YWluZXIxIGlucHV0W3R5cGU9ZW1haWxdOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XG4gIC8qIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7ICovXG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQsIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICM5NWM4M2QgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6bm90KDpmaXJzdC1jaGlsZCksIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpub3QoOmZpcnN0LWNoaWxkKSwgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpmaXJzdC1jaGlsZCkge1xuICAvKiBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwOyAqL1xuICAvKiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOyAqL1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sOm5vdCg6bGFzdC1jaGlsZCksIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0Om5vdCg6bGFzdC1jaGlsZCkge1xuICAvKiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsgKi9cbiAgLyogYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7ICovXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzQ5NTA1NztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NlZDRkYTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjZWQ0ZGE7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NlZDRkYTtcbn1cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuOjpuZy1kZWVwIC5idG4tb3JhbmdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZFQTMwQiAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNGRUEzMEIgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuYnRuLW9yYW5nZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYTkxMDggIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjZWE5MTA4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmO1xufSJdfQ== */\"","// forms\r\n// route page\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { IMyOptions } from 'ng-uikit-pro-standard';\r\nimport { LoginUser } from 'src/app/models/login-user';\r\nimport { UserService } from '../../../services/user.service';\r\nimport { ApiResponse } from 'src/app/models/api-response';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { AppConfigService } from '../../../app-config.service.service';\r\nimport { Routes, RouterModule, Router, ActivatedRoute } from '@angular/router';\r\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { CompanySettingsService } from 'src/app/services/company-settings.service';\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login-cubeworks.component.html',\r\n styleUrls: ['./login-cubeworks.component.scss']\r\n})\r\n\r\nexport class LoginCubeWorksComponent implements OnInit {\r\n @ViewChild('uploader', { static: true })\r\n uploader: any;\r\n optionCompanysSelect: Array;\r\n cardForm: FormGroup;\r\n submitted = false;\r\n isLoading = false;\r\n msgError: string;\r\n showError = false;\r\n file: File | null;\r\n apiBaseUrl: string;\r\n showPassword = false;\r\n typeInputPassword = 'password';\r\n settings: string;\r\n\r\n dumLoginUser: LoginUser;\r\n\r\n constructor(private formBuilder: FormBuilder, private router: Router, private http: HttpClient,\r\n private userService: UserService, private appConfigService: AppConfigService, private activatedRoute: ActivatedRoute, \r\n public settingsCompany: CompanySettingsService,\r\n public apiConfig: AppConfigService,\r\n private route: ActivatedRoute) {\r\n\r\n // this.route.queryParams.subscribe(params => {\r\n // });\r\n\r\n this.settings = localStorage.getItem('settings');\r\n\r\n if (!this.settings || this.settings == 'null')\r\n this.settings = null;\r\n // validations\r\n // this.cardForm = fb.group({\r\n // materialFormCardNameEx: ['', Validators.required],\r\n // materialFormCardEmailEx: ['', [Validators.email, Validators.required]],\r\n // materialFormCardConfirmEx: ['', Validators.required],\r\n // materialFormCardPasswordEx: ['', Validators.required]\r\n // });\r\n }\r\n\r\n // onFileAdd(file: any) {\r\n // this.file = file;\r\n // }\r\n //\r\n // onFileRemove() {\r\n // this.file = null;\r\n // }\r\n //\r\n // uploadFile() {\r\n // if (this.file) {\r\n // const data = new FormData();\r\n // data.append('file', this.file, this.file.name);\r\n // const url = 'http://localhost:3000/api/upload/';\r\n //\r\n // }\r\n // }\r\n ngOnInit() {\r\n\r\n\r\n var autoStart = localStorage.getItem('autoStart');\r\n\r\n if (autoStart != undefined) {\r\n\r\n var tmpEmail = localStorage.getItem('email');\r\n\r\n this.userService.autologin(tmpEmail).subscribe((data: ApiResponse) => {\r\n if (data.connected) {\r\n localStorage.clear();\r\n\r\n if (this.settings)\r\n\r\n localStorage.setItem('termaccepted', data.termAccepted.toString());\r\n localStorage.setItem('token', data.token);\r\n localStorage.setItem('userName', data.userName);\r\n localStorage.setItem('isClient', data.isClient);\r\n localStorage.setItem('customerid', data.customerID);\r\n localStorage.setItem('email', tmpEmail);\r\n localStorage.setItem('currentLat', data.lat);\r\n localStorage.setItem('currentLong', data.long);\r\n localStorage.setItem('ubicacion', data.ubicacion);\r\n this.userService.currentUserName.next(data.userName);\r\n this.userService.isClient.next(JSON.parse(data.isClient.toLocaleLowerCase()));\r\n\r\n if (data.customerID) {\r\n this.userService.Get_UserSettingsCE(data.customerID).subscribe(result => {\r\n console.log(result)\r\n\r\n // result[0].cubeWorksOnly = 1\r\n\r\n if (result.length > 0){\r\n if (result[0].cubeWorksOnly == 1){\r\n localStorage.setItem('cubeWorksOnly', \"Yes\")\r\n } else {\r\n localStorage.setItem('cubeWorksOnly', \"No\")\r\n }\r\n }\r\n\r\n if (result.length > 0 && result[0].CLIENTUSERSETTING) {\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n obj.regionid = result.RegionID;\r\n localStorage.setItem('settings', JSON.stringify(obj));\r\n \r\n // localStorage.setItem('settings', result[0].CLIENTUSERSETTING);\r\n localStorage.setItem('UserCompanyName', result[0].UserCompanyName);\r\n\r\n\r\n // This code detect boostrap screen standar resolution. Its used to start always\r\n // with home page if its mobile screen *************************\r\n const width = Math.max(\r\n document.documentElement.clientWidth,\r\n window.innerWidth || 0\r\n )\r\n var screenType = 'xl';\r\n if (width <= 576) { screenType = 'xs' }\r\n if (width <= 768) { screenType = 'sm' }\r\n if (width <= 992) { screenType = 'md' }\r\n if (width <= 1200) { screenType = 'lg' }\r\n var ignoreStartPage = false;\r\n if (screenType == 'xs' || screenType == 'sm') { ignoreStartPage = true }\r\n\r\n\r\n this.userService.settings.next(obj);\r\n\r\n\r\n let goto = obj.startPage && !ignoreStartPage ? obj.startPage : '/home';\r\n // this.router.navigateByUrl(goto);\r\n if (result[0].cubeWorksOnly == 1){\r\n this.router.navigateByUrl(\"/clientDashboard\");\r\n } else {\r\n this.router.navigateByUrl(goto);\r\n }\r\n } else {\r\n if (result[0].cubeWorksOnly == 1){\r\n this.router.navigateByUrl(\"/clientDashboard\");\r\n } else {\r\n this.router.navigateByUrl('/home');\r\n }\r\n }\r\n }, err => {\r\n this.router.navigateByUrl('/home')\r\n }\r\n );\r\n }\r\n } else {\r\n this.showError = true;\r\n this.msgError = 'Invalid username or password';\r\n }\r\n }, error => {\r\n this.showError = true;\r\n this.msgError = 'Server internal error, please contact the administrator!';\r\n });\r\n\r\n }\r\n\r\n sessionStorage.clear();\r\n localStorage.clear();\r\n\r\n\r\n this.cardForm = this.formBuilder.group({\r\n username: ['', [Validators.required, Validators.email]],\r\n password: ['', [Validators.required]]\r\n });\r\n\r\n this.apiBaseUrl = this.appConfigService.apiBaseUrl;\r\n\r\n\r\n this.optionCompanysSelect = [\r\n { value: '1', label: 'Amazing Control' },\r\n { value: '2', label: 'CUBE-USA' },\r\n { value: '3', label: 'South Florida Control' },\r\n { value: '4', label: 'Template Company' },\r\n { value: '5', label: 'Travis Brothers' },\r\n ];\r\n\r\n }\r\n\r\n public resolved(captchaResponse: string): void {\r\n }\r\n\r\n public onError(errorDetails): void {\r\n }\r\n\r\n togglePassword() {\r\n this.showPassword = !this.showPassword;\r\n this.typeInputPassword = this.showPassword ? 'text' : 'password';\r\n }\r\n onSubmit() {\r\n\r\n this.showError = false;\r\n this.msgError = '';\r\n this.submitted = true;\r\n // stop here if form is invalid\r\n if (this.cardForm.invalid) {\r\n return;\r\n }\r\n this.isLoading = true;\r\n let value = this.cardForm.value;\r\n this.userService.login(value).subscribe((data: ApiResponse) => {\r\n if (data.connected) {\r\n localStorage.clear();\r\n\r\n if (this.settings)\r\n localStorage.setItem('settings', this.settings);\r\n localStorage.setItem('termaccepted', data.termAccepted.toString());\r\n localStorage.setItem('token', data.token);\r\n localStorage.setItem('userName', data.userName);\r\n localStorage.setItem('isClient', data.isClient);\r\n localStorage.setItem('customerid', data.customerID);\r\n localStorage.setItem('email', value.username);\r\n localStorage.setItem('currentLat', data.lat);\r\n localStorage.setItem('currentLong', data.long);\r\n localStorage.setItem('ubicacion', data.ubicacion);\r\n this.userService.currentUserName.next(data.userName);\r\n this.userService.isClient.next(JSON.parse(data.isClient.toLocaleLowerCase()));\r\n\r\n if (data.customerID) {\r\n this.userService.Get_UserSettingsCE(data.customerID).subscribe(result => {\r\n console.log(result)\r\n\r\n // result[0].cubeWorksOnly = 1\r\n\r\n if (result.length > 0){\r\n if (result[0].cubeWorksOnly == 1){\r\n localStorage.setItem('cubeWorksOnly', \"Yes\")\r\n } else {\r\n localStorage.setItem('cubeWorksOnly', \"No\")\r\n }\r\n }\r\n\r\n if (result.length > 0 && result[0].CLIENTUSERSETTING) {\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n obj.regionid = result.RegionID;\r\n\r\n localStorage.setItem('settings', JSON.stringify(obj));\r\n localStorage.setItem('UserCompanyName', result[0].UserCompanyName);\r\n\r\n // This code detect boostrap screen standar resolution. Its used to start always\r\n // with home page if its mobile screen *************************\r\n const width = Math.max(\r\n document.documentElement.clientWidth,\r\n window.innerWidth || 0\r\n )\r\n var screenType = 'xl';\r\n if (width <= 576) { screenType = 'xs' }\r\n if (width <= 768) { screenType = 'sm' }\r\n if (width <= 992) { screenType = 'md' }\r\n if (width <= 1200) { screenType = 'lg' }\r\n var ignoreStartPage = false;\r\n if (screenType == 'xs' || screenType == 'sm') { ignoreStartPage = true }\r\n\r\n\r\n this.userService.settings.next(obj);\r\n\r\n this.userService.settings.next(obj);\r\n\r\n let goto = obj.startPage && !ignoreStartPage ? obj.startPage : '/home';\r\n if (result[0].cubeWorksOnly == 1){\r\n \r\n this.router.navigateByUrl(\"/clientDashboard\");\r\n } else {\r\n this.router.navigateByUrl(goto);\r\n }\r\n } else {\r\n if (result[0].cubeWorksOnly == 1){\r\n this.router.navigateByUrl(\"/clientDashboard\");\r\n } else {\r\n this.router.navigateByUrl('/home');\r\n }\r\n }\r\n }, err => {\r\n this.router.navigateByUrl('/home');\r\n }\r\n );\r\n }\r\n } else {\r\n this.showError = true;\r\n this.msgError = 'Invalid username or password';\r\n }\r\n }, error => {\r\n this.showError = true;\r\n this.msgError = 'Server internal error, please contact the administrator!';\r\n });\r\n this.submitted = false;\r\n this.isLoading = false;\r\n }\r\n gotoEstimate() {\r\n }\r\n public myDatePickerOptions: IMyOptions = {\r\n }\r\n\r\n}\r\n","export default \"::ng-deep .title-sing {\\n color: #333 !important;\\n font-weight: 600 !important;\\n font-family: \\\"Nunito Sans\\\", sans-serif;\\n}\\n\\n::ng-deep .form-control {\\n background-color: #fff !important;\\n}\\n\\n::ng-deep .form-container1 input[type=text]:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 #00c851 !important;\\n}\\n\\n::ng-deep .form-container1 input[type=password]:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 #00c851 !important;\\n}\\n\\n::ng-deep .form-container1 input[type=email]:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 #00c851 !important;\\n}\\n\\n::ng-deep .form-container1 input[type=number]:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 #00c851 !important;\\n}\\n\\n::ng-deep .md-form textarea.md-textarea:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 #00c851 !important;\\n}\\n\\n::ng-deep .form-container1 .md-form label {\\n color: #757575 !important;\\n font-size: 1rem;\\n font-family: \\\"Nunito Sans\\\", sans-serif;\\n}\\n\\n::ng-deep .form-container1[_ngcontent-c1] .md-form[_ngcontent-c1] label[_ngcontent-c1] {\\n color: #757575 !important;\\n font-size: 0.9rem;\\n font-weight: 400;\\n font-family: \\\"Nunito Sans\\\", sans-serif;\\n}\\n\\n::ng-deep .form-control:focus {\\n color: #495057;\\n background-color: #fff;\\n border-color: #95c83d !important;\\n outline: 0;\\n box-shadow: 0 0 0 0.2rem #27ca3761 !important;\\n}\\n\\n::ng-deep .form-container1 input[type=email]:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 transparent !important;\\n}\\n\\n::ng-deep .form-container1 input[type=password]:focus:not([readonly]) {\\n /* box-shadow: 0 1px 0 0 #00c851 !important; */\\n}\\n\\n::ng-deep .form-container1 input[type=password]:focus:not([readonly]) {\\n box-shadow: 0 1px 0 0 transparent !important;\\n}\\n\\n::ng-deep .form-container1 input[type=email]:focus:not([readonly]) {\\n /* box-shadow: 0 1px 0 0 #00c851 !important; */\\n}\\n\\n.was-validated .form-control:valid, .form-control.is-valid {\\n border-color: #95c83d !important;\\n}\\n\\n::ng-deep .input-group > .form-control:not(:first-child), .input-group > .custom-select:not(:first-child) {\\n border-radius: 0.25rem !important;\\n}\\n\\n::ng-deep .input-group > .form-control:not(:first-child), .input-group > .custom-select:not(:first-child) {\\n /* border-top-left-radius: 0; */\\n /* border-bottom-left-radius: 0; */\\n border-radius: 0.25rem !important;\\n}\\n\\n::ng-deep .input-group > .form-control:not(:last-child), .input-group > .custom-select:not(:last-child) {\\n /* border-top-right-radius: 0; */\\n /* border-bottom-right-radius: 0; */\\n border-radius: 0.25rem !important;\\n}\\n\\n.input-group-text {\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-align: center;\\n align-items: center;\\n padding: 0.375rem 0.75rem;\\n margin-bottom: 0;\\n font-size: 1rem;\\n font-weight: 400;\\n line-height: 1.5;\\n color: #495057;\\n text-align: center;\\n white-space: nowrap;\\n background-color: #e9ecef;\\n border-top: 1px solid #ced4da;\\n border-radius: 0.25rem;\\n border-bottom: 1px solid #ced4da;\\n border-left: 1px solid #ced4da;\\n}\\n\\n.input-group-text {\\n background-color: transparent;\\n}\\n\\n::ng-deep .btn-orange {\\n background-color: #FEA30B !important;\\n border-color: #FEA30B !important;\\n color: #ffff !important;\\n}\\n\\n::ng-deep .btn-orange:hover {\\n background-color: #ea9108 !important;\\n border-color: #ea9108 !important;\\n color: #fff;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvbG9naW4vbG9naW4tdXNlcnRlbXAvRTpcXERldlxcQ1VCRVRFTVBcXG5ld2N1YmUvc3JjXFxhcHBcXHBhZ2VzXFxsb2dpblxcbG9naW4tdXNlcnRlbXBcXGxvZ2luLXVzZXJ0ZW1wLmNvbXBvbmVudC5zY3NzIiwic3JjL2FwcC9wYWdlcy9sb2dpbi9sb2dpbi11c2VydGVtcC9sb2dpbi11c2VydGVtcC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHNCQUFBO0VBQ0EsMkJBQUE7RUFDQSxzQ0FBQTtBQ0NGOztBRFlBO0VBQ0UsaUNBQUE7QUNURjs7QURjQTtFQUdFLHdDQUFBO0FDWkY7O0FEZUE7RUFHRSx3Q0FBQTtBQ2JGOztBRGVBO0VBR0Usd0NBQUE7QUNiRjs7QURlQTtFQUdFLHdDQUFBO0FDYkY7O0FEZUE7RUFHRSx3Q0FBQTtBQ2JGOztBRGlCQTtFQUNFLHlCQUFBO0VBQ0EsZUFBQTtFQUVBLHNDQUFBO0FDZkY7O0FEa0JBO0VBQ0UseUJBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0Esc0NBQUE7QUNmRjs7QURtQkE7RUFDSSxjQUFBO0VBQ0Esc0JBQUE7RUFDQSxnQ0FBQTtFQUNBLFVBQUE7RUFDQSw2Q0FBQTtBQ2hCSjs7QURtQkE7RUFDSSw0Q0FBQTtBQ2hCSjs7QURvQkE7RUFFSSw4Q0FBQTtBQ2xCSjs7QURxQkE7RUFDSSw0Q0FBQTtBQ2xCSjs7QURzQkE7RUFFSSw4Q0FBQTtBQ3BCSjs7QUR1QkE7RUFDSSxnQ0FBQTtBQ3BCSjs7QUR1QkE7RUFHSSxpQ0FBQTtBQ3RCSjs7QUR5QkE7RUFDSSwrQkFBQTtFQUNBLGtDQUFBO0VBQ0UsaUNBQUE7QUN0Qk47O0FEeUJBO0VBQ0ksZ0NBQUE7RUFDQSxtQ0FBQTtFQUNBLGlDQUFBO0FDdEJKOztBRHdCQTtFQUNJLG9CQUFBO0VBQ0EsYUFBQTtFQUNBLHlCQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtFQUNBLHlCQUFBO0VBRUEsNkJBQUE7RUFDQSxzQkFBQTtFQUNBLGdDQUFBO0VBQ0EsOEJBQUE7QUN0Qko7O0FEd0JBO0VBQ0UsNkJBQUE7QUNyQkY7O0FEd0JBO0VBQ0Usb0NBQUE7RUFDQSxnQ0FBQTtFQUNBLHVCQUFBO0FDckJGOztBRHdCQTtFQUNFLG9DQUFBO0VBQ0EsZ0NBQUE7RUFDQSxXQUFBO0FDckJGIiwiZmlsZSI6InNyYy9hcHAvcGFnZXMvbG9naW4vbG9naW4tdXNlcnRlbXAvbG9naW4tdXNlcnRlbXAuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6Om5nLWRlZXAgLnRpdGxlLXNpbmcge1xyXG4gIGNvbG9yOiAjMzMzICFpbXBvcnRhbnQ7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xyXG4gIGZvbnQtZmFtaWx5OiBcIk51bml0byBTYW5zXCIsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAuYmctYm9keSB7XHJcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vLyA6Om5nLWRlZXAgLmxvZ2luLWNvbnRhaW5lciB7XHJcbi8vICAgYm94LXNoYWRvdzogbm9uZTtcclxuLy8gfVxyXG4vL1xyXG4vL1xyXG5cclxuOjpuZy1kZWVwIC5mb3JtLWNvbnRyb2x7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjojZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG4vLyBmb3JtIGlucHV0IHN0eWxlXHJcbjo6bmctZGVlcCAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xyXG4gIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTVjODNkICFpbXBvcnRhbnQ7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50O1xyXG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcclxuICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk1YzgzZCAhaW1wb3J0YW50O1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcclxuICBib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50O1xyXG59XHJcbjo6bmctZGVlcCAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcclxuICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk1YzgzZCAhaW1wb3J0YW50O1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcclxuICBib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50O1xyXG59XHJcbjo6bmctZGVlcCAuZm9ybS1jb250YWluZXIxIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcclxuICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk1YzgzZCAhaW1wb3J0YW50O1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcclxuICBib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50O1xyXG59XHJcbjo6bmctZGVlcCAgLm1kLWZvcm0gdGV4dGFyZWEubWQtdGV4dGFyZWE6Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcclxuICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk1YzgzZCAhaW1wb3J0YW50O1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcclxuICBib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vLyBjb2xvciBmb250IGxhYmVsXHJcbjo6bmctZGVlcCAgLmZvcm0tY29udGFpbmVyMSAubWQtZm9ybSBsYWJlbCB7XHJcbiAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcclxuICBmb250LXNpemU6IDFyZW07XHJcbiAgLy8gZm9udC13ZWlnaHQ6IDQwMDtcclxuICBmb250LWZhbWlseTogXCJOdW5pdG8gU2Fuc1wiLCBzYW5zLXNlcmlmO1xyXG59XHJcblxyXG46Om5nLWRlZXAgIC5mb3JtLWNvbnRhaW5lcjFbX25nY29udGVudC1jMV0gLm1kLWZvcm1bX25nY29udGVudC1jMV0gbGFiZWxbX25nY29udGVudC1jMV0ge1xyXG4gIGNvbG9yOiAjNzU3NTc1ICFpbXBvcnRhbnQ7XHJcbiAgZm9udC1zaXplOiAwLjlyZW07XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBmb250LWZhbWlseTogXCJOdW5pdG8gU2Fuc1wiLCBzYW5zLXNlcmlmO1xyXG59XHJcblxyXG5cclxuOjpuZy1kZWVwIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xyXG4gICAgY29sb3I6ICM0OTUwNTc7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjOTVjODNkICFpbXBvcnRhbnQ7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtICMyN2NhMzc2MSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xyXG4gICAgYm94LXNoYWRvdzogMCAxcHggMCAwIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG46Om5nLWRlZXAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xyXG4gICAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAvKiBib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50OyAqL1xyXG59XHJcblxyXG46Om5nLWRlZXAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xyXG4gICAgYm94LXNoYWRvdzogMCAxcHggMCAwIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG46Om5nLWRlZXAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPWVtYWlsXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xyXG4gICAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAvKiBib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50OyAqL1xyXG59XHJcblxyXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkLCAuZm9ybS1jb250cm9sLmlzLXZhbGlkIHtcclxuICAgIGJvcmRlci1jb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6bm90KDpmaXJzdC1jaGlsZCksIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgIC8vIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAvLyBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6bm90KDpmaXJzdC1jaGlsZCksIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgIC8qIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7ICovXHJcbiAgICAvKiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwOyAqL1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sOm5vdCg6bGFzdC1jaGlsZCksIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0Om5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgLyogYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7ICovXHJcbiAgICAvKiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsgKi9cclxuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcclxufVxyXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XHJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICBjb2xvcjogIzQ5NTA1NztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xyXG4gICAgICAvLyBib3JkZXItdG9wOiAxcHggc29saWQgI2NlZDRkYTtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2VkNGRhO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2VkNGRhO1xyXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2VkNGRhO1xyXG59XHJcbi5pbnB1dC1ncm91cC10ZXh0IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5idG4tb3JhbmdlIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkVBMzBCICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAjRkVBMzBCICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICNmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAuYnRuLW9yYW5nZTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhOTEwOCAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1jb2xvcjogI2VhOTEwOCAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG59XHJcbiIsIjo6bmctZGVlcCAudGl0bGUtc2luZyB7XG4gIGNvbG9yOiAjMzMzICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IFwiTnVuaXRvIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cblxuOjpuZy1kZWVwIC5mb3JtLWNvbnRyb2wge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuZm9ybS1jb250YWluZXIxIGlucHV0W3R5cGU9dGV4dF06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAjMDBjODUxICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuZm9ybS1jb250YWluZXIxIGlucHV0W3R5cGU9ZW1haWxdOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1udW1iZXJdOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5tZC1mb3JtIHRleHRhcmVhLm1kLXRleHRhcmVhOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5mb3JtLWNvbnRhaW5lcjEgLm1kLWZvcm0gbGFiZWwge1xuICBjb2xvcjogIzc1NzU3NSAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtZmFtaWx5OiBcIk51bml0byBTYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5cbjo6bmctZGVlcCAuZm9ybS1jb250YWluZXIxW19uZ2NvbnRlbnQtYzFdIC5tZC1mb3JtW19uZ2NvbnRlbnQtYzFdIGxhYmVsW19uZ2NvbnRlbnQtYzFdIHtcbiAgY29sb3I6ICM3NTc1NzUgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZmFtaWx5OiBcIk51bml0byBTYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5cbjo6bmctZGVlcCAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgY29sb3I6ICM0OTUwNTc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gIzI3Y2EzNzYxICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuZm9ybS1jb250YWluZXIxIGlucHV0W3R5cGU9ZW1haWxdOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICAvKiBib3gtc2hhZG93OiAwIDFweCAwIDAgIzAwYzg1MSAhaW1wb3J0YW50OyAqL1xufVxuXG46Om5nLWRlZXAgLmZvcm0tY29udGFpbmVyMSBpbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5mb3JtLWNvbnRhaW5lcjEgaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcbiAgLyogYm94LXNoYWRvdzogMCAxcHggMCAwICMwMGM4NTEgIWltcG9ydGFudDsgKi9cbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCwgLmZvcm0tY29udHJvbC5pcy12YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpub3QoOmZpcnN0LWNoaWxkKSwgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpmaXJzdC1jaGlsZCkge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sOm5vdCg6Zmlyc3QtY2hpbGQpLCAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIC8qIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7ICovXG4gIC8qIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7ICovXG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2w6bm90KDpsYXN0LWNoaWxkKSwgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpsYXN0LWNoaWxkKSB7XG4gIC8qIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyAqL1xuICAvKiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsgKi9cbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjNDk1MDU3O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2VkNGRhO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlZDRkYTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2VkNGRhO1xufVxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG46Om5nLWRlZXAgLmJ0bi1vcmFuZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkVBMzBCICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI0ZFQTMwQiAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmYgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5idG4tb3JhbmdlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhOTEwOCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNlYTkxMDggIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmY7XG59Il19 */\"","// forms\r\n// route page\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { IMyOptions } from 'ng-uikit-pro-standard';\r\nimport { LoginUser } from 'src/app/models/login-user';\r\nimport { UserService } from '../../../services/user.service';\r\nimport { ApiResponse } from 'src/app/models/api-response';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { AppConfigService } from '../../../app-config.service.service';\r\nimport { Routes, RouterModule, Router, ActivatedRoute } from '@angular/router';\r\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { CompanySettingsService } from 'src/app/services/company-settings.service';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login-usertemp.component.html',\r\n styleUrls: ['./login-usertemp.component.scss']\r\n})\r\n\r\nexport class LoginUserTempComponent implements OnInit {\r\n @ViewChild('uploader', { static: true })\r\n uploader: any;\r\n optionCompanysSelect: Array;\r\n cardForm: FormGroup;\r\n submitted = false;\r\n isLoading = false;\r\n msgError: string;\r\n showError = false;\r\n file: File | null;\r\n apiBaseUrl: string;\r\n showPassword = false;\r\n typeInputPassword = 'password';\r\n settings: string;\r\n\r\n dumLoginUser: LoginUser;\r\n\r\n constructor(private formBuilder: FormBuilder, private router: Router, private http: HttpClient,\r\n private userService: UserService, private appConfigService: AppConfigService, private activatedRoute: ActivatedRoute, \r\n public settingsCompany: CompanySettingsService,\r\n public apiConfig: AppConfigService,\r\n private route: ActivatedRoute, public MapInformationService: MapInformationService, public toast: ToastService) {\r\n\r\n // this.route.queryParams.subscribe(params => {\r\n // });\r\n\r\n this.settings = localStorage.getItem('settings');\r\n\r\n if (!this.settings || this.settings == 'null')\r\n this.settings = null;\r\n // validations\r\n // this.cardForm = fb.group({\r\n // materialFormCardNameEx: ['', Validators.required],\r\n // materialFormCardEmailEx: ['', [Validators.email, Validators.required]],\r\n // materialFormCardConfirmEx: ['', Validators.required],\r\n // materialFormCardPasswordEx: ['', Validators.required]\r\n // });\r\n }\r\n\r\n // onFileAdd(file: any) {\r\n // this.file = file;\r\n // }\r\n //\r\n // onFileRemove() {\r\n // this.file = null;\r\n // }\r\n //\r\n // uploadFile() {\r\n // if (this.file) {\r\n // const data = new FormData();\r\n // data.append('file', this.file, this.file.name);\r\n // const url = 'http://localhost:3000/api/upload/';\r\n //\r\n // }\r\n // }\r\n ngOnInit() {\r\n\r\n\r\n // var autoStart = localStorage.getItem('autoStart');\r\n\r\n // if (autoStart != undefined) {\r\n\r\n // var tmpEmail = localStorage.getItem('email');\r\n\r\n // this.userService.autoLoginUserTemp(tmpEmail).subscribe((data: ApiResponse) => {\r\n // if (data.connected) {\r\n // localStorage.clear();\r\n\r\n // if (this.settings)\r\n\r\n // localStorage.setItem('termaccepted', data.termAccepted.toString());\r\n // localStorage.setItem('token', data.token);\r\n // localStorage.setItem('userName', data.userName);\r\n // localStorage.setItem('isTempUser', '1');\r\n // localStorage.setItem('idTempUser', data['userTempID']);\r\n // localStorage.setItem('email', tmpEmail);\r\n // // localStorage.setItem('currentLat', data.lat);\r\n // // localStorage.setItem('currentLong', data.long);\r\n // // localStorage.setItem('ubicacion', data.ubicacion);\r\n // this.userService.currentUserName.next(data.userName);\r\n // this.userService.isClient.next(JSON.parse(data.isClient.toLocaleLowerCase()));\r\n\r\n // // if (data.customerID) {\r\n // // this.userService.Get_UserSettingsCE(data.customerID).subscribe(result => {\r\n // // console.log(result)\r\n\r\n // // if (result.length > 0 && result[0].CLIENTUSERSETTING) {\r\n // // // let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n // // // obj.regionid = result.RegionID;\r\n // // // localStorage.setItem('settings', JSON.stringify(obj));\r\n \r\n // // // localStorage.setItem('settings', result[0].CLIENTUSERSETTING);\r\n // // // localStorage.setItem('UserCompanyName', result[0].UserCompanyName);\r\n\r\n\r\n // // // This code detect boostrap screen standar resolution. Its used to start always\r\n // // // with home page if its mobile screen *************************\r\n // // const width = Math.max(\r\n // // document.documentElement.clientWidth,\r\n // // window.innerWidth || 0\r\n // // )\r\n // // var screenType = 'xl';\r\n // // if (width <= 576) { screenType = 'xs' }\r\n // // if (width <= 768) { screenType = 'sm' }\r\n // // if (width <= 992) { screenType = 'md' }\r\n // // if (width <= 1200) { screenType = 'lg' }\r\n // // var ignoreStartPage = false;\r\n // // if (screenType == 'xs' || screenType == 'sm') { ignoreStartPage = true }\r\n\r\n\r\n // // this.userService.settings.next(obj);\r\n\r\n\r\n // // let goto = obj.startPage && !ignoreStartPage ? obj.startPage : '/home';\r\n // // // this.router.navigateByUrl(goto);\r\n // // if (result[0].cubeWorksOnly == 1){\r\n // // this.router.navigateByUrl(\"/clientDashboard\");\r\n // // } else {\r\n // // this.router.navigateByUrl(goto);\r\n // // }\r\n // // } else {\r\n // // if (result[0].cubeWorksOnly == 1){\r\n // // this.router.navigateByUrl(\"/clientDashboard\");\r\n // // } else {\r\n // // }\r\n // // }\r\n // // }, err => {\r\n // // this.router.navigateByUrl('/home')\r\n // // }\r\n // // );\r\n // this.router.navigateByUrl('/plans');\r\n // // }\r\n // } else {\r\n // this.showError = true;\r\n // this.msgError = 'Invalid username or password';\r\n // }\r\n // }, error => {\r\n // this.showError = true;\r\n // this.msgError = 'Server internal error, please contact the administrator!';\r\n // });\r\n\r\n // }\r\n\r\n sessionStorage.clear();\r\n localStorage.clear();\r\n\r\n\r\n this.cardForm = this.formBuilder.group({\r\n username: ['', [Validators.required, Validators.email]],\r\n password: ['', [Validators.required]]\r\n });\r\n\r\n this.apiBaseUrl = this.appConfigService.apiBaseUrl;\r\n\r\n\r\n this.optionCompanysSelect = [\r\n { value: '1', label: 'Amazing Control' },\r\n { value: '2', label: 'CUBE-USA' },\r\n { value: '3', label: 'South Florida Control' },\r\n { value: '4', label: 'Template Company' },\r\n { value: '5', label: 'Travis Brothers' },\r\n ];\r\n\r\n }\r\n\r\n public resolved(captchaResponse: string): void {\r\n }\r\n\r\n public onError(errorDetails): void {\r\n }\r\n\r\n togglePassword() {\r\n this.showPassword = !this.showPassword;\r\n this.typeInputPassword = this.showPassword ? 'text' : 'password';\r\n }\r\n onSubmit() {\r\n\r\n this.showError = false;\r\n this.msgError = '';\r\n this.submitted = true;\r\n // stop here if form is invalid\r\n if (this.cardForm.invalid) {\r\n return;\r\n }\r\n\r\n this.isLoading = true;\r\n let value = this.cardForm.value;\r\n\r\n let info = {\r\n method: 'Authenticate_TempUser',\r\n email: value.username,\r\n password: value.password\r\n }\r\n\r\n this.MapInformationService.MethodCallApiFlexUtility(info).subscribe((data: any) => {\r\n\r\n console.log('AQUIIIIIIIIIIIIIIIIIIIIII');\r\n\r\n if (data.length > 0 && data[0].ID != null) {\r\n\r\n if(data[0].ID != 0) {\r\n localStorage.clear();\r\n \r\n localStorage.setItem('email', info.email);\r\n localStorage.setItem('tempUser', JSON.stringify(data[0]));\r\n\r\n console.log('USER TEMPPPPP');\r\n console.log(JSON.stringify(data[0]));\r\n \r\n this.router.navigateByUrl(\"/plans\");\r\n\r\n } else {\r\n // this.router.navigateByUrl(\"/plans\");\r\n this.toast.warning('The user is not registered')\r\n }\r\n \r\n } else {\r\n this.showError = true;\r\n this.msgError = 'Invalid username or password';\r\n }\r\n }, error => {\r\n this.showError = true;\r\n this.msgError = 'Server internal error, please contact the administrator!';\r\n });\r\n this.submitted = false;\r\n this.isLoading = false;\r\n }\r\n gotoEstimate() {\r\n }\r\n public myDatePickerOptions: IMyOptions = {\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL2xvZ2luL2xvZ2luLmNvbXBvbmVudC5zY3NzIn0= */\"","// forms\r\n// route page\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { IMyOptions } from 'ng-uikit-pro-standard';\r\nimport { LoginUser } from 'src/app/models/login-user';\r\nimport { UserService } from '../../services/user.service';\r\nimport { ApiResponse } from 'src/app/models/api-response';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { DataService } from '../../shared/data-service/data.service.service';\r\nimport { Routes, RouterModule, Router, ActivatedRoute } from '@angular/router';\r\nimport { FormBuilder, FormGroup, Validators, FormControl } from '@angular/forms';\r\nimport { CompanySettingsService } from 'src/app/services/company-settings.service';\r\nimport { ConfigService } from '../../services/config.service';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.scss']\r\n})\r\nexport class LoginComponent implements OnInit {\r\n @ViewChild('uploader', { static: true })\r\n uploader: any;\r\n optionCompanysSelect: Array;\r\n cardForm: FormGroup;\r\n submitted = false;\r\n isLoading = false;\r\n msgError: string;\r\n showError = false;\r\n file: File | null;\r\n apiBaseUrl: string;\r\n showPassword = false;\r\n typeInputPassword = 'password';\r\n settings: string;\r\n\r\n dumLoginUser: LoginUser;\r\n\r\n constructor(private formBuilder: FormBuilder, private router: Router, private http: HttpClient,\r\n private userService: UserService, private data: DataService, private activatedRoute: ActivatedRoute,\r\n public settingsCompany: CompanySettingsService,\r\n private route: ActivatedRoute,\r\n public configService: ConfigService,\r\n public appConfigService: AppConfigService\r\n ) {\r\n\r\n // this.route.queryParams.subscribe(params => {\r\n // });\r\n\r\n this.settings = localStorage.getItem('settings');\r\n\r\n if (!this.settings || this.settings == 'null')\r\n this.settings = null;\r\n // validations\r\n // this.cardForm = fb.group({\r\n // materialFormCardNameEx: ['', Validators.required],\r\n // materialFormCardEmailEx: ['', [Validators.email, Validators.required]],\r\n // materialFormCardConfirmEx: ['', Validators.required],\r\n // materialFormCardPasswordEx: ['', Validators.required]\r\n // });\r\n }\r\n\r\n // onFileAdd(file: any) {\r\n // this.file = file;\r\n // }\r\n //\r\n // onFileRemove() {\r\n // this.file = null;\r\n // }\r\n //\r\n // uploadFile() {\r\n // if (this.file) {\r\n // const data = new FormData();\r\n // data.append('file', this.file, this.file.name);\r\n // const url = 'http://localhost:3000/api/upload/';\r\n //\r\n // }\r\n // }\r\n ngOnInit() {\r\n\r\n\r\n var autoStart = localStorage.getItem('autoStart');\r\n\r\n if (autoStart != undefined) {\r\n\r\n var tmpEmail = localStorage.getItem('email');\r\n\r\n this.userService.autologin(tmpEmail).subscribe((data: ApiResponse) => {\r\n if (data.connected) {\r\n localStorage.clear();\r\n\r\n if (this.settings)\r\n\r\n localStorage.setItem('termaccepted', data.termAccepted.toString());\r\n localStorage.setItem('token', data.token);\r\n localStorage.setItem('userName', data.userName);\r\n localStorage.setItem('isClient', data.isClient);\r\n localStorage.setItem('customerid', data.customerID);\r\n localStorage.setItem('email', tmpEmail);\r\n localStorage.setItem('currentLat', data.lat);\r\n localStorage.setItem('currentLong', data.long);\r\n localStorage.setItem('ubicacion', data.ubicacion);\r\n this.userService.currentUserName.next(data.userName);\r\n this.userService.isClient.next(JSON.parse(data.isClient.toLocaleLowerCase()));\r\n\r\n this.data.changeUser(data.userName);\r\n if (data.customerID) {\r\n this.userService.Get_UserSettingsCE(data.customerID).subscribe(result => {\r\n console.log(result)\r\n\r\n if (result.length > 0){\r\n // localStorage.setItem(\"clientplanid\",\"10\")\r\n localStorage.setItem(\"clientplanid\",result[0].clientplanid)\r\n localStorage.setItem(\"clienuser\",result[0].CLINETUSER)\r\n\r\n localStorage.setItem(\"iscube\", result[0].iscube == 1 ? \"Yes\" : \"No\")\r\n if (result[0].clientplanid != 8){\r\n localStorage.setItem('NavbarHorizontal', \"Yes\")\r\n localStorage.setItem('isBabyCube', \"Yes\")\r\n } else if(result[0].clientplanid == 10) {\r\n localStorage.setItem('NavbarHorizontal', \"No\")\r\n localStorage.setItem('isBabyCube', \"No\")\r\n\r\n\r\n\r\n\r\n } else {\r\n if (result[0].CLIENTUSERSETTING){\r\n let objSettings = JSON.parse(result[0].CLIENTUSERSETTING);\r\n console.log(objSettings)\r\n if (objSettings != undefined){\r\n if (objSettings.layout == \"Horizontal\"){\r\n localStorage.setItem('NavbarHorizontal', \"Yes\")\r\n \r\n } else if (objSettings.layout == \"Vertical\"){\r\n localStorage.setItem('NavbarHorizontal', \"No\")\r\n } else {\r\n localStorage.setItem('NavbarHorizontal', \"No\")\r\n }\r\n }\r\n }\r\n localStorage.setItem('isBabyCube', \"No\")\r\n\r\n }\r\n }\r\n\r\n if (result.length > 0 && result[0].CLIENTUSERSETTING) {\r\n\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n obj.regionid = result.RegionID;\r\n localStorage.setItem('settings', JSON.stringify(obj));\r\n\r\n // localStorage.setItem('settings', result[0].CLIENTUSERSETTING);\r\n localStorage.setItem('UserCompanyName', result[0].UserCompanyName);\r\n\r\n\r\n // This code detect boostrap screen standar resolution. Its used to start always\r\n // with home page if its mobile screen *************************\r\n const width = Math.max(\r\n document.documentElement.clientWidth,\r\n window.innerWidth || 0\r\n )\r\n var screenType = 'xl';\r\n if (width <= 576) { screenType = 'xs' }\r\n if (width <= 768) { screenType = 'sm' }\r\n if (width <= 992) { screenType = 'md' }\r\n if (width <= 1200) { screenType = 'lg' }\r\n var ignoreStartPage = false;\r\n if (screenType == 'xs' || screenType == 'sm') { ignoreStartPage = true }\r\n\r\n\r\n this.userService.settings.next(obj);\r\n\r\n this.configService.loadConfigFromDB().subscribe(resultsett => {\r\n this.appConfigService.expandSettings(resultsett[0])\r\n let goto = obj.startPage && !ignoreStartPage ? obj.startPage : '/home';\r\n if (result.length > 0){\r\n // localStorage.setItem(\"clientplanid\",\"10\")\r\n localStorage.setItem(\"clientplanid\",result[0].clientplanid)\r\n localStorage.setItem(\"clienuser\",result[0].CLINETUSER)\r\n\r\n if (result[0].clientplanid != 8){\r\n if (result[0].clientplanid == 9){\r\n this.router.navigateByUrl(\"/clientDashboard\");\r\n } else if (result[0].clientplanid == 10){\r\n this.router.navigateByUrl(\"/applications\");\r\n } else {\r\n this.router.navigateByUrl(\"/home\");\r\n }\r\n } else {\r\n this.router.navigateByUrl('/home')\r\n }\r\n }\r\n else{\r\n this.router.navigateByUrl('/home')\r\n }\r\n\r\n this.router.navigateByUrl(goto);\r\n }, err => {\r\n this.router.navigateByUrl('/home')\r\n }\r\n );\r\n } else {\r\n if (result.length > 0){\r\n // localStorage.setItem(\"clientplanid\",\"10\")\r\n localStorage.setItem(\"clientplanid\",result[0].clientplanid)\r\n localStorage.setItem(\"clienuser\",result[0].CLINETUSER)\r\n if (result[0].clientplanid != 8){\r\n if (result[0].clientplanid == 9){\r\n this.router.navigateByUrl(\"/clientDashboard\");\r\n } else if (result[0].clientplanid == 10){\r\n this.router.navigateByUrl(\"/applications\");\r\n } else {\r\n this.router.navigateByUrl(\"/home\");\r\n }\r\n } else {\r\n this.router.navigateByUrl('/home');\r\n }\r\n }\r\n else{\r\n this.router.navigateByUrl('/home');\r\n }\r\n }\r\n }, err => {\r\n this.router.navigateByUrl('/home')\r\n }\r\n );\r\n }\r\n\r\n this.data.clearMenu();\r\n\r\n // this.router.navigateByUrl('/home');\r\n } else {\r\n this.showError = true;\r\n this.msgError = 'Invalid username or password';\r\n }\r\n }, error => {\r\n this.showError = true;\r\n this.msgError = 'Server internal error, please contact the administrator!';\r\n });\r\n\r\n }\r\n\r\n sessionStorage.clear();\r\n localStorage.clear();\r\n\r\n\r\n this.cardForm = this.formBuilder.group({\r\n username: ['', [Validators.required, Validators.email]],\r\n password: ['', [Validators.required]]\r\n });\r\n\r\n // this.apiBaseUrl = this.appConfigService.apiBaseUrl;\r\n\r\n\r\n this.optionCompanysSelect = [\r\n { value: '1', label: 'Amazing Control' },\r\n { value: '2', label: 'CUBE-USA' },\r\n { value: '3', label: 'South Florida Control' },\r\n { value: '4', label: 'Template Company' },\r\n { value: '5', label: 'Travis Brothers' },\r\n ];\r\n\r\n }\r\n\r\n public resolved(captchaResponse: string): void {\r\n }\r\n\r\n public onError(errorDetails): void {\r\n }\r\n\r\n togglePassword() {\r\n this.showPassword = !this.showPassword;\r\n this.typeInputPassword = this.showPassword ? 'text' : 'password';\r\n }\r\n onSubmit() {\r\n\r\n this.showError = false;\r\n this.msgError = '';\r\n this.submitted = true;\r\n // stop here if form is invalid\r\n if (this.cardForm.invalid) {\r\n return;\r\n }\r\n this.isLoading = true;\r\n let value = this.cardForm.value;\r\n this.userService.login(value).subscribe((data: ApiResponse) => {\r\n if (data.connected) {\r\n localStorage.clear();\r\n\r\n if (this.settings)\r\n localStorage.setItem('settings', this.settings);\r\n localStorage.setItem('termaccepted', data.termAccepted.toString());\r\n localStorage.setItem('token', data.token);\r\n localStorage.setItem('userName', data.userName);\r\n localStorage.setItem('isClient', data.isClient);\r\n localStorage.setItem('customerid', data.customerID);\r\n localStorage.setItem('email', value.username);\r\n localStorage.setItem('currentLat', data.lat);\r\n localStorage.setItem('currentLong', data.long);\r\n localStorage.setItem('ubicacion', data.ubicacion);\r\n this.userService.currentUserName.next(data.userName);\r\n this.userService.isClient.next(JSON.parse(data.isClient.toLocaleLowerCase()));\r\n\r\n this.data.changeUser(data.userName);\r\n\r\n if (data.customerID) {\r\n this.userService.Get_UserSettingsCE(data.customerID).subscribe(result => {\r\n console.log(result)\r\n\r\n if (result.length > 0){\r\n localStorage.setItem(\"iscube\", result[0].iscube == 1 ? \"Yes\" : \"No\")\r\n // localStorage.setItem(\"clientplanid\",\"10\")\r\n localStorage.setItem(\"clientplanid\",result[0].clientplanid)\r\n localStorage.setItem(\"clienuser\",result[0].CLINETUSER)\r\n\r\n if (result[0].clientplanid != 8){\r\n\r\n localStorage.setItem('NavbarHorizontal', \"Yes\")\r\n localStorage.setItem('isBabyCube', \"Yes\")\r\n\r\n } else if(result[0].clientplanid == 10){\r\n localStorage.setItem('NavbarHorizontal', \"No\")\r\n localStorage.setItem('isBabyCube', \"No\")\r\n } else {\r\n if (result[0].CLIENTUSERSETTING){\r\n let objSettings = JSON.parse(result[0].CLIENTUSERSETTING);\r\n console.log(objSettings)\r\n if (objSettings != undefined){\r\n if (objSettings.layout == \"Horizontal\"){\r\n localStorage.setItem('NavbarHorizontal', \"Yes\")\r\n\r\n } else if (objSettings.layout == \"Vertical\"){\r\n localStorage.setItem('NavbarHorizontal', \"No\")\r\n } else {\r\n localStorage.setItem('NavbarHorizontal', \"No\")\r\n }\r\n }\r\n }\r\n localStorage.setItem('isBabyCube', \"No\")\r\n\r\n }\r\n }\r\n\r\n if (result.length > 0 && result[0].CLIENTUSERSETTING) {\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n obj.regionid = result.RegionID;\r\n\r\n localStorage.setItem('settings', JSON.stringify(obj));\r\n localStorage.setItem('UserCompanyName', result[0].UserCompanyName);\r\n\r\n // This code detect boostrap screen standar resolution. Its used to start always\r\n // with home page if its mobile screen *************************\r\n const width = Math.max(\r\n document.documentElement.clientWidth,\r\n window.innerWidth || 0\r\n )\r\n var screenType = 'xl';\r\n if (width <= 576) { screenType = 'xs' }\r\n if (width <= 768) { screenType = 'sm' }\r\n if (width <= 992) { screenType = 'md' }\r\n if (width <= 1200) { screenType = 'lg' }\r\n var ignoreStartPage = false;\r\n if (screenType == 'xs' || screenType == 'sm') { ignoreStartPage = true }\r\n\r\n\r\n this.userService.settings.next(obj);\r\n\r\n this.userService.settings.next(obj);\r\n\r\n this.configService.loadConfigFromDB().subscribe(resultsett => {\r\n this.appConfigService.expandSettings(resultsett[0])\r\n let goto = obj.startPage && !ignoreStartPage ? obj.startPage : '/home';\r\n\r\n if (result.length > 0){\r\n // localStorage.setItem(\"clientplanid\",\"10\")\r\n localStorage.setItem(\"clientplanid\",result[0].clientplanid)\r\n localStorage.setItem(\"clienuser\",result[0].CLINETUSER)\r\n if (result[0].clientplanid != 8){\r\n \r\n if (result[0].clientplanid == 9){\r\n this.router.navigateByUrl(\"/clientDashboard\");\r\n } else if (result[0].clientplanid == 10){\r\n this.router.navigateByUrl(\"/applications\");\r\n } else {\r\n this.router.navigateByUrl(\"/home\");\r\n }\r\n } else {\r\n this.router.navigateByUrl(goto);\r\n }\r\n }\r\n else{\r\n this.router.navigateByUrl(\"/home\");\r\n }\r\n\r\n\r\n\r\n }, err => {\r\n this.router.navigateByUrl('/home')\r\n }\r\n );\r\n } else {\r\n if (result.length > 0){\r\n // localStorage.setItem(\"clientplanid\",\"10\")\r\n localStorage.setItem(\"clientplanid\",result[0].clientplanid)\r\n localStorage.setItem(\"clienuser\",result[0].CLINETUSER)\r\n if (result[0].clientplanid != 8){\r\n if (result[0].clientplanid == 9){\r\n this.router.navigateByUrl(\"/clientDashboard\");\r\n } else if (result[0].clientplanid == 10){\r\n this.router.navigateByUrl(\"/applications\");\r\n } else {\r\n this.router.navigateByUrl(\"/home\");\r\n }\r\n } else {\r\n this.router.navigateByUrl('/home');\r\n }\r\n }\r\n else{\r\n this.router.navigateByUrl('/home');\r\n }\r\n }\r\n }, err => {\r\n this.router.navigateByUrl('/home');\r\n }\r\n );\r\n }\r\n\r\n this.data.clearMenu();\r\n\r\n // this.router.navigateByUrl('/home');\r\n } else {\r\n this.showError = true;\r\n this.msgError = 'Invalid username or password';\r\n }\r\n }, error => {\r\n this.showError = true;\r\n this.msgError = 'Server internal error, please contact the administrator!';\r\n });\r\n this.submitted = false;\r\n this.isLoading = false;\r\n }\r\n gotoEstimate() {\r\n }\r\n public myDatePickerOptions: IMyOptions = {\r\n // Your options\r\n }\r\n\r\n}\r\n","export default \".btn-outline-gray1 {\\n border: 1px solid #58595b;\\n color: #58595b;\\n background-color: transparent;\\n background-image: none;\\n}\\n\\n.btn-outline-gray1:hover {\\n border-color: #58595b;\\n color: white;\\n background-color: #58595b;\\n}\\n\\n.mdb-wysiwyg-textarea {\\n height: 150px !important;\\n /* Your desired height */\\n}\\n\\n.dx-numberbox > input {\\n text-align: right;\\n}\\n\\n.error-message {\\n margin-left: 16px;\\n margin-top: 5px;\\n}\\n\\n::ng-deep .icon-b .dx-button-content .dx-icon {\\n font-size: 0.8rem;\\n color: #0275d8;\\n}\\n\\n::ng-deep .icon-b .dx-button-content .dx-button-text {\\n font-size: 0.8rem;\\n color: #0275d8;\\n}\\n\\nbody .custom-item {\\n padding-left: 7px;\\n padding-right: 7px;\\n}\\n\\n::ng-deep .custom-item > img {\\n height: 30px;\\n width: 40px;\\n float: left;\\n margin-top: 2px;\\n}\\n\\n::ng-deep .custom-item > div.product-name {\\n margin-left: 40px;\\n line-height: 34px;\\n font-size: 14px;\\n}\\n\\nbody .custom-item input {\\n background-color: transparent;\\n}\\n\\nbody .dx-popup-content .custom-item {\\n padding-top: 7px;\\n padding-bottom: 8px;\\n}\\n\\n::ng-deep .dx-popup-content .custom-item > div {\\n padding-left: 8px;\\n text-indent: 0;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n}\\n\\n.footer {\\n position: fixed;\\n left: 0;\\n bottom: 0;\\n width: 100%;\\n background-color: #f5f5f5;\\n color: white;\\n text-align: center;\\n}\\n\\n::ng-deep #bton-gray {\\n border: 1px solid #9fa4ab !important;\\n color: #000 !important;\\n}\\n\\n::ng-deep #bton-gray-outline {\\n border: 1px solid #9fa4ab !important;\\n color: #000 !important;\\n}\\n\\n::ng-deep #bton-green {\\n background-color: #95c83d !important;\\n border-color: #95c83d !important;\\n color: #ffff !important;\\n}\\n\\n::ng-deep #bton-green .dx-icon {\\n color: #ffff !important;\\n}\\n\\n::ng-deep #bton-gray-outline .dx-button-text {\\n line-height: normal;\\n}\\n\\n::ng-deep #bton-gray .dx-button-text {\\n line-height: normal;\\n}\\n\\n.modal-open .modal {\\n overflow-y: auto !important;\\n}\\n\\n#kanban {\\n white-space: nowrap;\\n}\\n\\n.list1 {\\n background-color: whitesmoke;\\n display: inline-block;\\n vertical-align: top;\\n white-space: normal;\\n border: 1px solid #dfdfdf;\\n width: 20%;\\n min-height: 100vh;\\n}\\n\\n.list-title {\\n font-size: 0.9rem;\\n padding: 10px;\\n margin-bottom: -10px;\\n font-weight: bold;\\n cursor: pointer;\\n}\\n\\n.scrollable-list {\\n height: 400px;\\n width: 98%;\\n}\\n\\n.sortable-cards {\\n min-height: 380px;\\n}\\n\\n.card1 {\\n position: relative;\\n background-color: white;\\n box-sizing: border-box;\\n padding: 10px 20px;\\n margin: 10px;\\n cursor: pointer;\\n}\\n\\n.card-subject {\\n padding-bottom: 10px;\\n}\\n\\n.card-assignee {\\n opacity: 0.6;\\n}\\n\\n.card-priority {\\n position: absolute;\\n top: 10px;\\n bottom: 10px;\\n left: 5px;\\n width: 5px;\\n border-radius: 2px;\\n background: #86C285;\\n}\\n\\n.priority-1 {\\n background: #ADADAD;\\n}\\n\\n.priority-2 {\\n background: #86C285;\\n}\\n\\n.priority-3 {\\n background: #EDC578;\\n}\\n\\n.priority-4 {\\n background: #EF7D59;\\n}\\n\\n::ng-deep .dx-sortable {\\n display: block;\\n}\\n\\n#sortablescroll::-webkit-scrollbar {\\n visibility: hidden;\\n}\\n\\n.sortableheight {\\n height: auto !important;\\n}\\n\\n#kanban {\\n white-space: nowrap;\\n}\\n\\n.list1 {\\n background-color: whitesmoke;\\n display: inline-block;\\n vertical-align: top;\\n white-space: normal;\\n border: 1px solid #dfdfdf;\\n width: 20%;\\n min-height: 100vh;\\n}\\n\\n.list-title {\\n font-size: 0.9rem;\\n padding: 10px;\\n margin-bottom: -10px;\\n font-weight: bold;\\n cursor: pointer;\\n}\\n\\n.scrollable-list {\\n height: 400px;\\n width: 98%;\\n}\\n\\n.sortable-cards {\\n min-height: 380px;\\n}\\n\\n.card1 {\\n position: relative;\\n background-color: white;\\n box-sizing: border-box;\\n padding: 10px 20px;\\n margin: 10px;\\n cursor: pointer;\\n}\\n\\n.card-subject {\\n padding-bottom: 10px;\\n}\\n\\n.card-assignee {\\n opacity: 0.6;\\n}\\n\\n.card-priority {\\n position: absolute;\\n top: 10px;\\n bottom: 10px;\\n left: 5px;\\n width: 5px;\\n border-radius: 2px;\\n background: #86C285;\\n}\\n\\n.priority-1 {\\n background: #ADADAD;\\n}\\n\\n.priority-2 {\\n background: #86C285;\\n}\\n\\n.priority-3 {\\n background: #EDC578;\\n}\\n\\n.priority-4 {\\n background: #EF7D59;\\n}\\n\\n::ng-deep .dx-sortable {\\n display: block;\\n}\\n\\n::ng-deep #gridContainer {\\n height: 100%;\\n width: 100%;\\n}\\n\\n::ng-deep #bton-gray {\\n color: #000 !important;\\n}\\n\\n::ng-deep #bton-gray-outline {\\n border: 1px solid #9fa4ab !important;\\n color: #000 !important;\\n}\\n\\n::ng-deep #bton-green {\\n background-color: #95c83d !important;\\n border-color: #95c83d !important;\\n color: #ffff !important;\\n}\\n\\n::ng-deep #bton-green .dx-icon {\\n color: #ffff !important;\\n}\\n\\n::ng-deep #bton-gray-outline .dx-button-text {\\n line-height: normal;\\n}\\n\\n::ng-deep #bton-gray .dx-button-text {\\n line-height: normal;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvcHJvamVjdC1tYW5hZ2VtZW50L2FkZC1lZGl0LXdvcmtmbG93L0U6XFxEZXZcXENVQkVURU1QXFxuZXdjdWJlL3NyY1xcYXBwXFxwYWdlc1xccHJvamVjdC1tYW5hZ2VtZW50XFxhZGQtZWRpdC13b3JrZmxvd1xcYWRkLWVkaXQtd29ya2Zsb3cuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3BhZ2VzL3Byb2plY3QtbWFuYWdlbWVudC9hZGQtZWRpdC13b3JrZmxvdy9hZGQtZWRpdC13b3JrZmxvdy5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQTtFQUNJLHlCQUFBO0VBQ0EsY0FBQTtFQUNBLDZCQUFBO0VBQ0Esc0JBQUE7QUNBSjs7QURFRTtFQUNFLHFCQUFBO0VBQ0EsWUFBQTtFQUNBLHlCQUFBO0FDQ0o7O0FESUU7RUFDRSx3QkFBQTtFQUEyQix3QkFBQTtBQ0EvQjs7QURHRTtFQUNJLGlCQUFBO0FDQU47O0FER0U7RUFDSSxpQkFBQTtFQUNBLGVBQUE7QUNBTjs7QURHRTtFQUNJLGlCQUFBO0VBQ0EsY0FBQTtBQ0FOOztBRElFO0VBQ0ksaUJBQUE7RUFDQSxjQUFBO0FDRE47O0FES0U7RUFDSSxpQkFBQTtFQUNBLGtCQUFBO0FDRk47O0FESUU7RUFDSSxZQUFBO0VBQ0EsV0FBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0FDRE47O0FER0U7RUFDSSxpQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZUFBQTtBQ0FOOztBREdFO0VBQ0ksNkJBQUE7QUNBTjs7QURHRTtFQUNJLGdCQUFBO0VBQ0EsbUJBQUE7QUNBTjs7QURFRTtFQUNJLGlCQUFBO0VBQ0EsY0FBQTtFQUNBLHVCQUFBO0VBQ0EsZ0JBQUE7QUNDTjs7QURFRTtFQUNFLGVBQUE7RUFDQSxPQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSx5QkFBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtBQ0NKOztBREdFO0VBQ0Usb0NBQUE7RUFDQSxzQkFBQTtBQ0FKOztBREdFO0VBQ0Usb0NBQUE7RUFDQSxzQkFBQTtBQ0FKOztBREdFO0VBQ0Usb0NBQUE7RUFDQSxnQ0FBQTtFQUNBLHVCQUFBO0FDQUo7O0FER0U7RUFDRSx1QkFBQTtBQ0FKOztBREtFO0VBQ0UsbUJBQUE7QUNGSjs7QURLRTtFQUNFLG1CQUFBO0FDRko7O0FES0U7RUFDRSwyQkFBQTtBQ0ZKOztBRE9FO0VBQ0UsbUJBQUE7QUNKSjs7QURPRTtFQUdFLDRCQUFBO0VBQ0EscUJBQUE7RUFDQSxtQkFBQTtFQUNBLG1CQUFBO0VBQ0EseUJBQUE7RUFDQSxVQUFBO0VBRUEsaUJBQUE7QUNQSjs7QURXRTtFQUNFLGlCQUFBO0VBQ0EsYUFBQTtFQUVBLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSxlQUFBO0FDVEo7O0FEWUU7RUFDRSxhQUFBO0VBQ0EsVUFBQTtBQ1RKOztBRFlFO0VBQ0UsaUJBQUE7QUNUSjs7QURZRTtFQUNFLGtCQUFBO0VBQ0EsdUJBQUE7RUFDQSxzQkFBQTtFQUVBLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLGVBQUE7QUNWSjs7QURhRTtFQUNFLG9CQUFBO0FDVko7O0FEYUU7RUFDRSxZQUFBO0FDVko7O0FEYUU7RUFDRSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxZQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0FDVko7O0FEYUU7RUFDRSxtQkFBQTtBQ1ZKOztBRGFFO0VBQ0UsbUJBQUE7QUNWSjs7QURhRTtFQUNFLG1CQUFBO0FDVko7O0FEYUU7RUFDRSxtQkFBQTtBQ1ZKOztBRGFFO0VBQ0UsY0FBQTtBQ1ZKOztBRGVFO0VBQ0Usa0JBQUE7QUNaSjs7QURjRTtFQUNFLHVCQUFBO0FDWEo7O0FEbUJBO0VBQ0UsbUJBQUE7QUNoQkY7O0FEbUJBO0VBR0UsNEJBQUE7RUFDQSxxQkFBQTtFQUNBLG1CQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QkFBQTtFQUNBLFVBQUE7RUFFQSxpQkFBQTtBQ25CRjs7QUR1QkE7RUFDRSxpQkFBQTtFQUNBLGFBQUE7RUFFQSxvQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZUFBQTtBQ3JCRjs7QUR3QkE7RUFDRSxhQUFBO0VBQ0EsVUFBQTtBQ3JCRjs7QUR3QkE7RUFDRSxpQkFBQTtBQ3JCRjs7QUR3QkE7RUFDRSxrQkFBQTtFQUNBLHVCQUFBO0VBQ0Esc0JBQUE7RUFFQSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0FDdEJGOztBRHlCQTtFQUNFLG9CQUFBO0FDdEJGOztBRHlCQTtFQUNFLFlBQUE7QUN0QkY7O0FEeUJBO0VBQ0Usa0JBQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtBQ3RCRjs7QUR5QkE7RUFDRSxtQkFBQTtBQ3RCRjs7QUR5QkE7RUFDRSxtQkFBQTtBQ3RCRjs7QUR5QkE7RUFDRSxtQkFBQTtBQ3RCRjs7QUR5QkE7RUFDRSxtQkFBQTtBQ3RCRjs7QUR5QkE7RUFDRSxjQUFBO0FDdEJGOztBRHlCQTtFQUNFLFlBQUE7RUFDQSxXQUFBO0FDdEJGOztBRDJCQTtFQUNBLHNCQUFBO0FDeEJBOztBRDJCQTtFQUNBLG9DQUFBO0VBQ0Esc0JBQUE7QUN4QkE7O0FEMkJBO0VBQ0Esb0NBQUE7RUFDQSxnQ0FBQTtFQUNBLHVCQUFBO0FDeEJBOztBRDJCQTtFQUNBLHVCQUFBO0FDeEJBOztBRDZCQTtFQUNBLG1CQUFBO0FDMUJBOztBRDZCQTtFQUNBLG1CQUFBO0FDMUJBIiwiZmlsZSI6InNyYy9hcHAvcGFnZXMvcHJvamVjdC1tYW5hZ2VtZW50L2FkZC1lZGl0LXdvcmtmbG93L2FkZC1lZGl0LXdvcmtmbG93LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbi5idG4tb3V0bGluZS1ncmF5MXtcclxuICAgIGJvcmRlcjoxcHggc29saWQgIzU4NTk1YjtcclxuICAgIGNvbG9yOiAjNTg1OTViO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gIH1cclxuICAuYnRuLW91dGxpbmUtZ3JheTE6aG92ZXJ7XHJcbiAgICBib3JkZXItY29sb3I6ICM1ODU5NWI7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg1OTViO1xyXG4gIFxyXG4gIH1cclxuICBcclxuICBcclxuICAubWRiLXd5c2l3eWctdGV4dGFyZWEge1xyXG4gICAgaGVpZ2h0OiAxNTBweCAgIWltcG9ydGFudDsgLyogWW91ciBkZXNpcmVkIGhlaWdodCAqL1xyXG4gIH1cclxuICBcclxuICAuZHgtbnVtYmVyYm94ID4gaW5wdXQge1xyXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICB9XHJcbiAgXHJcbiAgLmVycm9yLW1lc3NhZ2Uge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMTZweDtcclxuICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gIH1cclxuICBcclxuICA6Om5nLWRlZXAgLmljb24tYiAuZHgtYnV0dG9uLWNvbnRlbnQgLmR4LWljb24ge1xyXG4gICAgICBmb250LXNpemU6IDAuOHJlbTtcclxuICAgICAgY29sb3I6ICMwMjc1ZDg7XHJcbiAgXHJcbiAgfVxyXG4gIFxyXG4gIDo6bmctZGVlcCAuaWNvbi1iIC5keC1idXR0b24tY29udGVudCAuZHgtYnV0dG9uLXRleHQge1xyXG4gICAgICBmb250LXNpemU6IDAuOHJlbTtcclxuICAgICAgY29sb3I6IzAyNzVkODtcclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgYm9keSAuY3VzdG9tLWl0ZW0ge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDdweDtcclxuICAgICAgcGFkZGluZy1yaWdodDogN3B4O1xyXG4gIH1cclxuICA6Om5nLWRlZXAgLmN1c3RvbS1pdGVtID4gaW1nIHtcclxuICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICB3aWR0aDogNDBweDtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIG1hcmdpbi10b3A6IDJweDtcclxuICB9XHJcbiAgOjpuZy1kZWVwIC5jdXN0b20taXRlbSA+IGRpdi5wcm9kdWN0LW5hbWUge1xyXG4gICAgICBtYXJnaW4tbGVmdDogNDBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICB9XHJcbiAgXHJcbiAgYm9keSAuY3VzdG9tLWl0ZW0gaW5wdXQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB9XHJcbiAgXHJcbiAgYm9keSAuZHgtcG9wdXAtY29udGVudCAuY3VzdG9tLWl0ZW0ge1xyXG4gICAgICBwYWRkaW5nLXRvcDogN3B4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xyXG4gIH1cclxuICA6Om5nLWRlZXAgLmR4LXBvcHVwLWNvbnRlbnQgLmN1c3RvbS1pdGVtID4gZGl2IHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XHJcbiAgICAgIHRleHQtaW5kZW50OiAwO1xyXG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbiAgXHJcbiAgLmZvb3RlciB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICBcclxuICBcclxuICA6Om5nLWRlZXAgI2J0b24tZ3JheXtcclxuICAgIGJvcmRlcjoxcHggc29saWQgIzlmYTRhYiAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IzAwMCFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIFxyXG4gIDo6bmctZGVlcCAjYnRvbi1ncmF5LW91dGxpbmV7XHJcbiAgICBib3JkZXI6MXB4IHNvbGlkICM5ZmE0YWIgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiMwMDAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBcclxuICA6Om5nLWRlZXAgI2J0b24tZ3JlZW57XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTVjODNkICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICM5NWM4M2QgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZiAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBcclxuICA6Om5nLWRlZXAgI2J0b24tZ3JlZW4gLmR4LWljb257XHJcbiAgICBjb2xvcjogI2ZmZmYgIWltcG9ydGFudDtcclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgXHJcbiAgOjpuZy1kZWVwICNidG9uLWdyYXktb3V0bGluZSAuZHgtYnV0dG9uLXRleHR7XHJcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gIH1cclxuICBcclxuICA6Om5nLWRlZXAgI2J0b24tZ3JheSAuZHgtYnV0dG9uLXRleHR7XHJcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gIH1cclxuICBcclxuICAubW9kYWwtb3BlbiAubW9kYWwge1xyXG4gICAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBcclxuICAvLyBzdGFydCBzb3J0YWJsZSBsaXN0XHJcbiAgXHJcbiAgI2thbmJhbiB7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIH1cclxuICBcclxuICAubGlzdDEge1xyXG4gICAgLy8gYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgLy8gbWFyZ2luOiA1cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDUsIDI0NSwgMjQ1KTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RmZGZkZjtcclxuICAgIHdpZHRoOiAyMCU7XHJcbiAgICAvLyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICBcclxuICB9XHJcbiAgXHJcbiAgLmxpc3QtdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAwLjlyZW07XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgLy8gcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbiAgXHJcbiAgLnNjcm9sbGFibGUtbGlzdCB7XHJcbiAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgd2lkdGg6IDk4JTtcclxuICB9XHJcbiAgXHJcbiAgLnNvcnRhYmxlLWNhcmRzIHtcclxuICAgIG1pbi1oZWlnaHQ6IDM4MHB4XHJcbiAgfVxyXG4gIFxyXG4gIC5jYXJkMSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAvLyB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgIG1hcmdpbjogMTBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbiAgXHJcbiAgLmNhcmQtc3ViamVjdCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICB9XHJcbiAgXHJcbiAgLmNhcmQtYXNzaWduZWUge1xyXG4gICAgb3BhY2l0eTogMC42O1xyXG4gIH1cclxuICBcclxuICAuY2FyZC1wcmlvcml0eSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDEwcHg7XHJcbiAgICBib3R0b206IDEwcHg7XHJcbiAgICBsZWZ0OiA1cHg7XHJcbiAgICB3aWR0aDogNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgYmFja2dyb3VuZDogIzg2QzI4NTtcclxuICB9XHJcbiAgXHJcbiAgLnByaW9yaXR5LTEge1xyXG4gICAgYmFja2dyb3VuZDogI0FEQURBRDtcclxuICB9XHJcbiAgXHJcbiAgLnByaW9yaXR5LTIge1xyXG4gICAgYmFja2dyb3VuZDogIzg2QzI4NTtcclxuICB9XHJcbiAgXHJcbiAgLnByaW9yaXR5LTMge1xyXG4gICAgYmFja2dyb3VuZDogI0VEQzU3ODtcclxuICB9XHJcbiAgXHJcbiAgLnByaW9yaXR5LTQge1xyXG4gICAgYmFja2dyb3VuZDogI0VGN0Q1OTtcclxuICB9XHJcbiAgXHJcbiAgOjpuZy1kZWVwIC5keC1zb3J0YWJsZSB7XHJcbiAgICBkaXNwbGF5OiBibG9ja1xyXG4gIH1cclxuICBcclxuICAvL2VuZCBzb3J0YWJsZSBsaXN0XHJcbiAgXHJcbiAgI3NvcnRhYmxlc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgfVxyXG4gIC5zb3J0YWJsZWhlaWdodHtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcblxyXG5cclxuXHJcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbiNrYW5iYW4ge1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5saXN0MSB7XHJcbiAgLy8gYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gIC8vIG1hcmdpbjogNXB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6cmdiKDI0NSwgMjQ1LCAyNDUpO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgI2RmZGZkZjtcclxuICB3aWR0aDogMjAlO1xyXG4gIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuXHJcbn1cclxuXHJcbi5saXN0LXRpdGxlIHtcclxuICBmb250LXNpemU6IDAuOXJlbTtcclxuICBwYWRkaW5nOiAxMHB4O1xyXG4gIC8vIHBhZGRpbmctbGVmdDogMzBweDtcclxuICBtYXJnaW4tYm90dG9tOiAtMTBweDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5zY3JvbGxhYmxlLWxpc3Qge1xyXG4gIGhlaWdodDogNDAwcHg7XHJcbiAgd2lkdGg6IDk4JTtcclxufVxyXG5cclxuLnNvcnRhYmxlLWNhcmRzIHtcclxuICBtaW4taGVpZ2h0OiAzODBweFxyXG59XHJcblxyXG4uY2FyZDEge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC8vIHdpZHRoOiAxMDAlO1xyXG4gIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICBtYXJnaW46IDEwcHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uY2FyZC1zdWJqZWN0IHtcclxuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLmNhcmQtYXNzaWduZWUge1xyXG4gIG9wYWNpdHk6IDAuNjtcclxufVxyXG5cclxuLmNhcmQtcHJpb3JpdHkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDEwcHg7XHJcbiAgYm90dG9tOiAxMHB4O1xyXG4gIGxlZnQ6IDVweDtcclxuICB3aWR0aDogNXB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICBiYWNrZ3JvdW5kOiAjODZDMjg1O1xyXG59XHJcblxyXG4ucHJpb3JpdHktMSB7XHJcbiAgYmFja2dyb3VuZDogI0FEQURBRDtcclxufVxyXG5cclxuLnByaW9yaXR5LTIge1xyXG4gIGJhY2tncm91bmQ6ICM4NkMyODU7XHJcbn1cclxuXHJcbi5wcmlvcml0eS0zIHtcclxuICBiYWNrZ3JvdW5kOiAjRURDNTc4O1xyXG59XHJcblxyXG4ucHJpb3JpdHktNCB7XHJcbiAgYmFja2dyb3VuZDogI0VGN0Q1OTtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5keC1zb3J0YWJsZSB7XHJcbiAgZGlzcGxheTogYmxvY2tcclxufVxyXG5cclxuOjpuZy1kZWVwICNncmlkQ29udGFpbmVyIHtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcblxyXG4vL2JvdG9uZXNcclxuOjpuZy1kZWVwICNidG9uLWdyYXl7XHJcbmNvbG9yOiMwMDAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgI2J0b24tZ3JheS1vdXRsaW5le1xyXG5ib3JkZXI6MXB4IHNvbGlkICM5ZmE0YWIgIWltcG9ydGFudDtcclxuY29sb3I6IzAwMCFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAjYnRvbi1ncmVlbntcclxuYmFja2dyb3VuZC1jb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xyXG5ib3JkZXItY29sb3I6ICM5NWM4M2QgIWltcG9ydGFudDtcclxuY29sb3I6ICNmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAjYnRvbi1ncmVlbiAuZHgtaWNvbntcclxuY29sb3I6ICNmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG5cclxuOjpuZy1kZWVwICNidG9uLWdyYXktb3V0bGluZSAuZHgtYnV0dG9uLXRleHR7XHJcbmxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAjYnRvbi1ncmF5IC5keC1idXR0b24tdGV4dHtcclxubGluZS1oZWlnaHQ6IG5vcm1hbDtcclxufVxyXG4iLCIuYnRuLW91dGxpbmUtZ3JheTEge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTg1OTViO1xuICBjb2xvcjogIzU4NTk1YjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5idG4tb3V0bGluZS1ncmF5MTpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzU4NTk1YjtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg1OTViO1xufVxuXG4ubWRiLXd5c2l3eWctdGV4dGFyZWEge1xuICBoZWlnaHQ6IDE1MHB4ICFpbXBvcnRhbnQ7XG4gIC8qIFlvdXIgZGVzaXJlZCBoZWlnaHQgKi9cbn1cblxuLmR4LW51bWJlcmJveCA+IGlucHV0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5lcnJvci1tZXNzYWdlIHtcbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuOjpuZy1kZWVwIC5pY29uLWIgLmR4LWJ1dHRvbi1jb250ZW50IC5keC1pY29uIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjMDI3NWQ4O1xufVxuXG46Om5nLWRlZXAgLmljb24tYiAuZHgtYnV0dG9uLWNvbnRlbnQgLmR4LWJ1dHRvbi10ZXh0IHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjMDI3NWQ4O1xufVxuXG5ib2R5IC5jdXN0b20taXRlbSB7XG4gIHBhZGRpbmctbGVmdDogN3B4O1xuICBwYWRkaW5nLXJpZ2h0OiA3cHg7XG59XG5cbjo6bmctZGVlcCAuY3VzdG9tLWl0ZW0gPiBpbWcge1xuICBoZWlnaHQ6IDMwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXRvcDogMnB4O1xufVxuXG46Om5nLWRlZXAgLmN1c3RvbS1pdGVtID4gZGl2LnByb2R1Y3QtbmFtZSB7XG4gIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICBsaW5lLWhlaWdodDogMzRweDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG5ib2R5IC5jdXN0b20taXRlbSBpbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5ib2R5IC5keC1wb3B1cC1jb250ZW50IC5jdXN0b20taXRlbSB7XG4gIHBhZGRpbmctdG9wOiA3cHg7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG59XG5cbjo6bmctZGVlcCAuZHgtcG9wdXAtY29udGVudCAuY3VzdG9tLWl0ZW0gPiBkaXYge1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgdGV4dC1pbmRlbnQ6IDA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZm9vdGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyYXkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjOWZhNGFiICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAjYnRvbi1ncmF5LW91dGxpbmUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjOWZhNGFiICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAjYnRvbi1ncmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5NWM4M2QgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjOTVjODNkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZiAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgI2J0b24tZ3JlZW4gLmR4LWljb24ge1xuICBjb2xvcjogI2ZmZmYgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyYXktb3V0bGluZSAuZHgtYnV0dG9uLXRleHQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG46Om5nLWRlZXAgI2J0b24tZ3JheSAuZHgtYnV0dG9uLXRleHQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4ubW9kYWwtb3BlbiAubW9kYWwge1xuICBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbiNrYW5iYW4ge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubGlzdDEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZmRmZGY7XG4gIHdpZHRoOiAyMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuXG4ubGlzdC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBwYWRkaW5nOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAtMTBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnNjcm9sbGFibGUtbGlzdCB7XG4gIGhlaWdodDogNDAwcHg7XG4gIHdpZHRoOiA5OCU7XG59XG5cbi5zb3J0YWJsZS1jYXJkcyB7XG4gIG1pbi1oZWlnaHQ6IDM4MHB4O1xufVxuXG4uY2FyZDEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIG1hcmdpbjogMTBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uY2FyZC1zdWJqZWN0IHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi5jYXJkLWFzc2lnbmVlIHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4uY2FyZC1wcmlvcml0eSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDVweDtcbiAgd2lkdGg6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kOiAjODZDMjg1O1xufVxuXG4ucHJpb3JpdHktMSB7XG4gIGJhY2tncm91bmQ6ICNBREFEQUQ7XG59XG5cbi5wcmlvcml0eS0yIHtcbiAgYmFja2dyb3VuZDogIzg2QzI4NTtcbn1cblxuLnByaW9yaXR5LTMge1xuICBiYWNrZ3JvdW5kOiAjRURDNTc4O1xufVxuXG4ucHJpb3JpdHktNCB7XG4gIGJhY2tncm91bmQ6ICNFRjdENTk7XG59XG5cbjo6bmctZGVlcCAuZHgtc29ydGFibGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuI3NvcnRhYmxlc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNvcnRhYmxlaGVpZ2h0IHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbiNrYW5iYW4ge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubGlzdDEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZmRmZGY7XG4gIHdpZHRoOiAyMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuXG4ubGlzdC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBwYWRkaW5nOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAtMTBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnNjcm9sbGFibGUtbGlzdCB7XG4gIGhlaWdodDogNDAwcHg7XG4gIHdpZHRoOiA5OCU7XG59XG5cbi5zb3J0YWJsZS1jYXJkcyB7XG4gIG1pbi1oZWlnaHQ6IDM4MHB4O1xufVxuXG4uY2FyZDEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIG1hcmdpbjogMTBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uY2FyZC1zdWJqZWN0IHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi5jYXJkLWFzc2lnbmVlIHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4uY2FyZC1wcmlvcml0eSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDVweDtcbiAgd2lkdGg6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kOiAjODZDMjg1O1xufVxuXG4ucHJpb3JpdHktMSB7XG4gIGJhY2tncm91bmQ6ICNBREFEQUQ7XG59XG5cbi5wcmlvcml0eS0yIHtcbiAgYmFja2dyb3VuZDogIzg2QzI4NTtcbn1cblxuLnByaW9yaXR5LTMge1xuICBiYWNrZ3JvdW5kOiAjRURDNTc4O1xufVxuXG4ucHJpb3JpdHktNCB7XG4gIGJhY2tncm91bmQ6ICNFRjdENTk7XG59XG5cbjo6bmctZGVlcCAuZHgtc29ydGFibGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuOjpuZy1kZWVwICNncmlkQ29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyYXkge1xuICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgI2J0b24tZ3JheS1vdXRsaW5lIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzlmYTRhYiAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgI2J0b24tZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTVjODNkICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmYgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyZWVuIC5keC1pY29uIHtcbiAgY29sb3I6ICNmZmZmICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAjYnRvbi1ncmF5LW91dGxpbmUgLmR4LWJ1dHRvbi10ZXh0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyYXkgLmR4LWJ1dHRvbi10ZXh0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn0iXX0= */\"","// Sortable\r\nimport { moveItemInList } from 'mdb-sortable';\r\n// tables\r\nimport {\r\n Component, OnInit, ElementRef, HostListener,\r\n AfterViewInit, ViewChild, ChangeDetectorRef,\r\n QueryList, ViewChildren, EventEmitter, Output\r\n} from '@angular/core';\r\nimport { MdbTableDirective, MdbTablePaginationComponent, MdbBtnDirective, MDBModalRef } from 'ng-uikit-pro-standard';\r\n// mensage type toast\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\n// forms and validations\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ComponentsType, ComponentIndicator, ComponentChart, ChartDatasets, ChartColors, Dashboard } from 'src/app/models/component-data';\r\nimport { DasboardService } from 'src/app/services/dashboard.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { groupBy, mergeMap, toArray } from 'rxjs/operators';\r\nimport { from, Observable } from 'rxjs';\r\nimport { GetTypePipe } from 'src/app/custom-pipe/GetTypePipe';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { ProjectService } from 'src/app/services/project.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { Router } from '@angular/router';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\n\r\n@Component({\r\n selector: 'add-edit-workflow',\r\n templateUrl: './add-edit-workflow.component.html',\r\n styleUrls: ['./add-edit-workflow.component.scss']\r\n})\r\nexport class AddEditWorkFlowComponent implements OnInit {\r\n @Output() onsave: EventEmitter = new EventEmitter();\r\n @Output() CloseModal: EventEmitter = new EventEmitter();\r\n viewTypeCard = 0;\r\n gridDataSource;\r\n GridShow: any;\r\n columns: any[] = [];\r\n dateFormat = 'dd-MM-yyyy';\r\n moneyFormat = '';\r\n\r\n\r\n\r\n segmentSelected = 2;\r\n segmentItems: any[] = [\r\n // {\r\n // Id: 1,\r\n // Name: 'Status'\r\n // },\r\n {\r\n Id: 2,\r\n Name: 'Phases'\r\n }\r\n ]\r\n ProjectPhases = [];\r\n ProjectStatus = [];\r\n DataList = []\r\n popup_bool: boolean = false;\r\n popup_bool_list: boolean = false;\r\n editinsert_SP: boolean = null;\r\n FormEditPhase: FormGroup;\r\n FormEditStatus: FormGroup;\r\n filterValue = [\r\n ['StatusName', '=', 'Not Started'],\r\n 'or',\r\n ['StatusName', \"=\", 'In Progress']\r\n ];\r\n lists: any[] = [];\r\n statuses: string[];\r\n ProyectsGrouped: any = [];\r\n\r\n DataPS = {\r\n Phase: [],\r\n Status: []\r\n }\r\n\r\n HabilitarModal: boolean = false\r\n allWorkFlow: any[] = []\r\n Phases:any[]=[]\r\n\r\n\r\n constructor(\r\n private ProjectService: ProjectService,\r\n private datePipe: DatePipe,\r\n private translateService: TranslateService,\r\n // private translatePipe: TranslatePipe,\r\n private appConfigService: AppConfigService,\r\n public generalService: GeneralService,\r\n private toast: ToastService,\r\n private router: Router,\r\n public MapInformationService: MapInformationService,) {\r\n\r\n this.dateFormat = this.appConfigService.dateFormat;\r\n this.moneyFormat = this.appConfigService.moneyFormat;\r\n\r\n }\r\n\r\n ngOnInit() {\r\n const data = {\r\n method:\"Get_ProjectWorkFlowUtility\"\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(info=>{\r\n this.ProjectService.Get_ProjectPhasesCE()\r\n .subscribe(resp => {\r\n this.Phases = resp\r\n this.allWorkFlow = info\r\n console.log(resp)\r\n console.log(info)\r\n this.HabilitarModal = true\r\n })\r\n })\r\n }\r\n\r\n /********************* */\r\n save_edit(event) {\r\n this.popup_bool = false;\r\n this.popup_bool_list = false;\r\n let item = event.data;\r\n console.log(item)\r\n console.log(event)\r\n let contador = 0\r\n\r\n if(item.WORKFLOWNAME == undefined){\r\n this.toast.warning(\"Required Name\")\r\n contador++\r\n } else if (item.DESCRIPTION == undefined){\r\n this.toast.warning(\"Required Description\")\r\n contador++\r\n } else if (item.SORT == undefined){\r\n this.toast.warning(\"Required Sort\")\r\n contador++\r\n } else if (item.PROJECTFLOWPHASEID == undefined){\r\n this.toast.warning(\"Required Phase ID\")\r\n contador++\r\n } \r\n \r\n if (item.ParentID == undefined){\r\n item.ParentID = 0\r\n } \r\n \r\n if (item.DaysformContract == undefined){\r\n item.DaysformContract = 0\r\n } \r\n \r\n if (item.Daysfromparent == undefined){\r\n item.Daysfromparent = 0\r\n } \r\n\r\n if(contador == 0){\r\n const data = {\r\n id:0,\r\n workflowname:item.WORKFLOWNAME,\r\n description:item.DESCRIPTION,\r\n enable:item.ENABLE == true ? 1:0,\r\n projectflowphaseid:item.PROJECTFLOWPHASEID,\r\n sort:item.SORT,\r\n active:item.ENABLE == true ? 1:0,\r\n daysfromcontract:item.DaysformContract,\r\n daysfromparent:item.Daysfromparent,\r\n parentid:item.ParentID,\r\n method:\"Get_InserUpdateUtilityProjectWorkFlow\"\r\n }\r\n console.log(data)\r\n \r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp => {\r\n console.log(resp)\r\n this.toast.success(\"Successfully Created\")\r\n this.onsave.emit(\"test\");\r\n })\r\n }\r\n\r\n }\r\n\r\n update(obj) {\r\n let olddata = obj.oldData;\r\n let newData = obj.newData;\r\n let item = obj.newData\r\n console.log(newData)\r\n console.log(olddata)\r\n if(item.WORKFLOWNAME == undefined){\r\n item.WORKFLOWNAME = olddata.WORKFLOWNAME\r\n } \r\n \r\n if (item.DESCRIPTION == undefined){\r\n item.DESCRIPTION = olddata.DESCRIPTION\r\n } \r\n \r\n if (item.SORT == undefined){\r\n item.SORT = olddata.SORT\r\n } \r\n \r\n if (item.PROJECTFLOWPHASEID == undefined){\r\n item.PROJECTFLOWPHASEID = olddata.PROJECTFLOWPHASEID\r\n } \r\n if (item.ENABLE == undefined){\r\n item.ENABLE = olddata.ENABLE\r\n }\r\n \r\n if (item.ParentID == undefined){\r\n item.ParentID = olddata.ParentID\r\n } \r\n \r\n if (item.DaysformContract == undefined){\r\n item.DaysformContract = olddata.DaysformContract\r\n } \r\n \r\n if (item.Daysfromparent == undefined){\r\n item.Daysfromparent = olddata.Daysfromparent\r\n } \r\n \r\n const data = {\r\n id:olddata.ID,\r\n workflowname:item.WORKFLOWNAME,\r\n description:item.DESCRIPTION,\r\n enable:item.ENABLE == true ? 1:0,\r\n projectflowphaseid:item.PROJECTFLOWPHASEID,\r\n sort:item.SORT,\r\n active:item.ENABLE == true ? 1:0,\r\n daysfromcontract:item.DaysformContract,\r\n daysfromparent:item.Daysfromparent,\r\n parentid:item.ParentID,\r\n method:\"Get_InserUpdateUtilityProjectWorkFlow\"\r\n }\r\n console.log(data)\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp => {\r\n console.log(resp)\r\n this.toast.success(\"Successfully updated\")\r\n this.onsave.emit(\"test\");\r\n })\r\n \r\n }\r\n\r\n ActulizarGrid(){\r\n const data = {\r\n method:\"Get_ProjectWorkFlowUtility\"\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(info=>{\r\n this.allWorkFlow = info\r\n })\r\n }\r\n\r\n CerrarModal(){\r\n this.HabilitarModal = false\r\n this.CloseModal.emit(\"cerrar\")\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { SharedDatagridModule } from 'src/app/shared/shared-datagrid/shared-datagrid.module';\r\nimport { DxButtonModule, DxDataGridModule } from \"devextreme-angular\";\r\nimport { AddEditWorkFlowComponent } from './add-edit-workflow.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DashboardModule } from 'src/app/shared/shared-dashboard/dashboard.module';\r\nimport { DxTagBoxModule, DxScrollViewModule, DxTextBoxModule, DxPopupModule, DxSelectBoxModule, DxDateBoxModule, DxTabPanelModule, DxAccordionModule, DxButtonGroupModule, DxCheckBoxModule, DxRangeSliderModule, DxDropDownButtonModule, DxRadioGroupModule, DxFileUploaderModule, DxToolbarModule, DxSortableModule } from \"devextreme-angular\";\r\nimport { CardListPhasesModule } from '../card-list-phases/card-list-phases.module';\r\n@NgModule({\r\n declarations: [\r\n AddEditWorkFlowComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n SharedDatagridModule,\r\n DxButtonModule,\r\n MdbGlobalModule,\r\n DashboardModule,\r\n DxDataGridModule,\r\n DxTagBoxModule, \r\n DxScrollViewModule, \r\n DxTextBoxModule, \r\n DxPopupModule, \r\n DxSelectBoxModule, \r\n DxDateBoxModule, \r\n DxTabPanelModule, \r\n DxAccordionModule, \r\n DxButtonGroupModule,\r\n DxCheckBoxModule, \r\n DxRangeSliderModule,\r\n DxDropDownButtonModule, \r\n DxRadioGroupModule, \r\n DxFileUploaderModule, \r\n DxToolbarModule, \r\n DxSortableModule,\r\n CardListPhasesModule,\r\n ],\r\n exports:[AddEditWorkFlowComponent]\r\n})\r\nexport class AddEditWorkFlowModule { }\r\n","export default \".btn-outline-gray1 {\\n border: 1px solid #58595b;\\n color: #58595b;\\n background-color: transparent;\\n background-image: none;\\n}\\n\\n.btn-outline-gray1:hover {\\n border-color: #58595b;\\n color: white;\\n background-color: #58595b;\\n}\\n\\n.mdb-wysiwyg-textarea {\\n height: 150px !important;\\n /* Your desired height */\\n}\\n\\n.dx-numberbox > input {\\n text-align: right;\\n}\\n\\n.error-message {\\n margin-left: 16px;\\n margin-top: 5px;\\n}\\n\\n::ng-deep .icon-b .dx-button-content .dx-icon {\\n font-size: 0.8rem;\\n color: #0275d8;\\n}\\n\\n::ng-deep .icon-b .dx-button-content .dx-button-text {\\n font-size: 0.8rem;\\n color: #0275d8;\\n}\\n\\nbody .custom-item {\\n padding-left: 7px;\\n padding-right: 7px;\\n}\\n\\n::ng-deep .custom-item > img {\\n height: 30px;\\n width: 40px;\\n float: left;\\n margin-top: 2px;\\n}\\n\\n::ng-deep .custom-item > div.product-name {\\n margin-left: 40px;\\n line-height: 34px;\\n font-size: 14px;\\n}\\n\\nbody .custom-item input {\\n background-color: transparent;\\n}\\n\\nbody .dx-popup-content .custom-item {\\n padding-top: 7px;\\n padding-bottom: 8px;\\n}\\n\\n::ng-deep .dx-popup-content .custom-item > div {\\n padding-left: 8px;\\n text-indent: 0;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n}\\n\\n.footer {\\n position: fixed;\\n left: 0;\\n bottom: 0;\\n width: 100%;\\n background-color: #f5f5f5;\\n color: white;\\n text-align: center;\\n}\\n\\n::ng-deep #bton-gray {\\n border: 1px solid #9fa4ab !important;\\n color: #000 !important;\\n}\\n\\n::ng-deep #bton-gray-outline {\\n border: 1px solid #9fa4ab !important;\\n color: #000 !important;\\n}\\n\\n::ng-deep #bton-green {\\n background-color: #95c83d !important;\\n border-color: #95c83d !important;\\n color: #ffff !important;\\n}\\n\\n::ng-deep #bton-green .dx-icon {\\n color: #ffff !important;\\n}\\n\\n::ng-deep #bton-gray-outline .dx-button-text {\\n line-height: normal;\\n}\\n\\n::ng-deep #bton-gray .dx-button-text {\\n line-height: normal;\\n}\\n\\n.modal-open .modal {\\n overflow-y: auto !important;\\n}\\n\\n#kanban {\\n white-space: nowrap;\\n}\\n\\n.list1 {\\n background-color: whitesmoke;\\n display: inline-block;\\n vertical-align: top;\\n white-space: normal;\\n border: 1px solid #dfdfdf;\\n width: 20%;\\n min-height: 100vh;\\n}\\n\\n.list-title {\\n font-size: 0.9rem;\\n padding: 10px;\\n margin-bottom: -10px;\\n font-weight: bold;\\n cursor: pointer;\\n}\\n\\n.scrollable-list {\\n height: 400px;\\n width: 98%;\\n}\\n\\n.sortable-cards {\\n min-height: 380px;\\n}\\n\\n.card1 {\\n position: relative;\\n background-color: white;\\n box-sizing: border-box;\\n padding: 10px 20px;\\n margin: 10px;\\n cursor: pointer;\\n}\\n\\n.card-subject {\\n padding-bottom: 10px;\\n}\\n\\n.card-assignee {\\n opacity: 0.6;\\n}\\n\\n.card-priority {\\n position: absolute;\\n top: 10px;\\n bottom: 10px;\\n left: 5px;\\n width: 5px;\\n border-radius: 2px;\\n background: #86C285;\\n}\\n\\n.priority-1 {\\n background: #ADADAD;\\n}\\n\\n.priority-2 {\\n background: #86C285;\\n}\\n\\n.priority-3 {\\n background: #EDC578;\\n}\\n\\n.priority-4 {\\n background: #EF7D59;\\n}\\n\\n::ng-deep .dx-sortable {\\n display: block;\\n}\\n\\n#sortablescroll::-webkit-scrollbar {\\n visibility: hidden;\\n}\\n\\n.sortableheight {\\n height: auto !important;\\n}\\n\\n#kanban {\\n white-space: nowrap;\\n}\\n\\n.list1 {\\n background-color: whitesmoke;\\n display: inline-block;\\n vertical-align: top;\\n white-space: normal;\\n border: 1px solid #dfdfdf;\\n width: 20%;\\n min-height: 100vh;\\n}\\n\\n.list-title {\\n font-size: 0.9rem;\\n padding: 10px;\\n margin-bottom: -10px;\\n font-weight: bold;\\n cursor: pointer;\\n}\\n\\n.scrollable-list {\\n height: 400px;\\n width: 98%;\\n}\\n\\n.sortable-cards {\\n min-height: 380px;\\n}\\n\\n.card1 {\\n position: relative;\\n background-color: white;\\n box-sizing: border-box;\\n padding: 10px 20px;\\n margin: 10px;\\n cursor: pointer;\\n}\\n\\n.card-subject {\\n padding-bottom: 10px;\\n}\\n\\n.card-assignee {\\n opacity: 0.6;\\n}\\n\\n.card-priority {\\n position: absolute;\\n top: 10px;\\n bottom: 10px;\\n left: 5px;\\n width: 5px;\\n border-radius: 2px;\\n background: #86C285;\\n}\\n\\n.priority-1 {\\n background: #ADADAD;\\n}\\n\\n.priority-2 {\\n background: #86C285;\\n}\\n\\n.priority-3 {\\n background: #EDC578;\\n}\\n\\n.priority-4 {\\n background: #EF7D59;\\n}\\n\\n::ng-deep .dx-sortable {\\n display: block;\\n}\\n\\n::ng-deep #gridContainer {\\n height: 100%;\\n width: 100%;\\n}\\n\\n::ng-deep #bton-gray {\\n color: #000 !important;\\n}\\n\\n::ng-deep #bton-gray-outline {\\n border: 1px solid #9fa4ab !important;\\n color: #000 !important;\\n}\\n\\n::ng-deep #bton-green {\\n background-color: #95c83d !important;\\n border-color: #95c83d !important;\\n color: #ffff !important;\\n}\\n\\n::ng-deep #bton-green .dx-icon {\\n color: #ffff !important;\\n}\\n\\n::ng-deep #bton-gray-outline .dx-button-text {\\n line-height: normal;\\n}\\n\\n::ng-deep #bton-gray .dx-button-text {\\n line-height: normal;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvcHJvamVjdC1tYW5hZ2VtZW50L2FsYXJtLXdvcmstZmxvdy1zdW1tYXJ5L0U6XFxEZXZcXENVQkVURU1QXFxuZXdjdWJlL3NyY1xcYXBwXFxwYWdlc1xccHJvamVjdC1tYW5hZ2VtZW50XFxhbGFybS13b3JrLWZsb3ctc3VtbWFyeVxcYWxhcm0td29yay1mbG93LXN1bW1hcnkuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3BhZ2VzL3Byb2plY3QtbWFuYWdlbWVudC9hbGFybS13b3JrLWZsb3ctc3VtbWFyeS9hbGFybS13b3JrLWZsb3ctc3VtbWFyeS5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQTtFQUNJLHlCQUFBO0VBQ0EsY0FBQTtFQUNBLDZCQUFBO0VBQ0Esc0JBQUE7QUNBSjs7QURFRTtFQUNFLHFCQUFBO0VBQ0EsWUFBQTtFQUNBLHlCQUFBO0FDQ0o7O0FESUU7RUFDRSx3QkFBQTtFQUEyQix3QkFBQTtBQ0EvQjs7QURHRTtFQUNJLGlCQUFBO0FDQU47O0FER0U7RUFDSSxpQkFBQTtFQUNBLGVBQUE7QUNBTjs7QURHRTtFQUNJLGlCQUFBO0VBQ0EsY0FBQTtBQ0FOOztBRElFO0VBQ0ksaUJBQUE7RUFDQSxjQUFBO0FDRE47O0FES0U7RUFDSSxpQkFBQTtFQUNBLGtCQUFBO0FDRk47O0FESUU7RUFDSSxZQUFBO0VBQ0EsV0FBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0FDRE47O0FER0U7RUFDSSxpQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZUFBQTtBQ0FOOztBREdFO0VBQ0ksNkJBQUE7QUNBTjs7QURHRTtFQUNJLGdCQUFBO0VBQ0EsbUJBQUE7QUNBTjs7QURFRTtFQUNJLGlCQUFBO0VBQ0EsY0FBQTtFQUNBLHVCQUFBO0VBQ0EsZ0JBQUE7QUNDTjs7QURFRTtFQUNFLGVBQUE7RUFDQSxPQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSx5QkFBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtBQ0NKOztBREdFO0VBQ0Usb0NBQUE7RUFDQSxzQkFBQTtBQ0FKOztBREdFO0VBQ0Usb0NBQUE7RUFDQSxzQkFBQTtBQ0FKOztBREdFO0VBQ0Usb0NBQUE7RUFDQSxnQ0FBQTtFQUNBLHVCQUFBO0FDQUo7O0FER0U7RUFDRSx1QkFBQTtBQ0FKOztBREtFO0VBQ0UsbUJBQUE7QUNGSjs7QURLRTtFQUNFLG1CQUFBO0FDRko7O0FES0U7RUFDRSwyQkFBQTtBQ0ZKOztBRE9FO0VBQ0UsbUJBQUE7QUNKSjs7QURPRTtFQUdFLDRCQUFBO0VBQ0EscUJBQUE7RUFDQSxtQkFBQTtFQUNBLG1CQUFBO0VBQ0EseUJBQUE7RUFDQSxVQUFBO0VBRUEsaUJBQUE7QUNQSjs7QURXRTtFQUNFLGlCQUFBO0VBQ0EsYUFBQTtFQUVBLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSxlQUFBO0FDVEo7O0FEWUU7RUFDRSxhQUFBO0VBQ0EsVUFBQTtBQ1RKOztBRFlFO0VBQ0UsaUJBQUE7QUNUSjs7QURZRTtFQUNFLGtCQUFBO0VBQ0EsdUJBQUE7RUFDQSxzQkFBQTtFQUVBLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLGVBQUE7QUNWSjs7QURhRTtFQUNFLG9CQUFBO0FDVko7O0FEYUU7RUFDRSxZQUFBO0FDVko7O0FEYUU7RUFDRSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxZQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0FDVko7O0FEYUU7RUFDRSxtQkFBQTtBQ1ZKOztBRGFFO0VBQ0UsbUJBQUE7QUNWSjs7QURhRTtFQUNFLG1CQUFBO0FDVko7O0FEYUU7RUFDRSxtQkFBQTtBQ1ZKOztBRGFFO0VBQ0UsY0FBQTtBQ1ZKOztBRGVFO0VBQ0Usa0JBQUE7QUNaSjs7QURjRTtFQUNFLHVCQUFBO0FDWEo7O0FEbUJBO0VBQ0UsbUJBQUE7QUNoQkY7O0FEbUJBO0VBR0UsNEJBQUE7RUFDQSxxQkFBQTtFQUNBLG1CQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QkFBQTtFQUNBLFVBQUE7RUFFQSxpQkFBQTtBQ25CRjs7QUR1QkE7RUFDRSxpQkFBQTtFQUNBLGFBQUE7RUFFQSxvQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZUFBQTtBQ3JCRjs7QUR3QkE7RUFDRSxhQUFBO0VBQ0EsVUFBQTtBQ3JCRjs7QUR3QkE7RUFDRSxpQkFBQTtBQ3JCRjs7QUR3QkE7RUFDRSxrQkFBQTtFQUNBLHVCQUFBO0VBQ0Esc0JBQUE7RUFFQSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0FDdEJGOztBRHlCQTtFQUNFLG9CQUFBO0FDdEJGOztBRHlCQTtFQUNFLFlBQUE7QUN0QkY7O0FEeUJBO0VBQ0Usa0JBQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtBQ3RCRjs7QUR5QkE7RUFDRSxtQkFBQTtBQ3RCRjs7QUR5QkE7RUFDRSxtQkFBQTtBQ3RCRjs7QUR5QkE7RUFDRSxtQkFBQTtBQ3RCRjs7QUR5QkE7RUFDRSxtQkFBQTtBQ3RCRjs7QUR5QkE7RUFDRSxjQUFBO0FDdEJGOztBRHlCQTtFQUNFLFlBQUE7RUFDQSxXQUFBO0FDdEJGOztBRDJCQTtFQUNBLHNCQUFBO0FDeEJBOztBRDJCQTtFQUNBLG9DQUFBO0VBQ0Esc0JBQUE7QUN4QkE7O0FEMkJBO0VBQ0Esb0NBQUE7RUFDQSxnQ0FBQTtFQUNBLHVCQUFBO0FDeEJBOztBRDJCQTtFQUNBLHVCQUFBO0FDeEJBOztBRDZCQTtFQUNBLG1CQUFBO0FDMUJBOztBRDZCQTtFQUNBLG1CQUFBO0FDMUJBIiwiZmlsZSI6InNyYy9hcHAvcGFnZXMvcHJvamVjdC1tYW5hZ2VtZW50L2FsYXJtLXdvcmstZmxvdy1zdW1tYXJ5L2FsYXJtLXdvcmstZmxvdy1zdW1tYXJ5LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbi5idG4tb3V0bGluZS1ncmF5MXtcclxuICAgIGJvcmRlcjoxcHggc29saWQgIzU4NTk1YjtcclxuICAgIGNvbG9yOiAjNTg1OTViO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG4gIH1cclxuICAuYnRuLW91dGxpbmUtZ3JheTE6aG92ZXJ7XHJcbiAgICBib3JkZXItY29sb3I6ICM1ODU5NWI7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg1OTViO1xyXG4gIFxyXG4gIH1cclxuICBcclxuICBcclxuICAubWRiLXd5c2l3eWctdGV4dGFyZWEge1xyXG4gICAgaGVpZ2h0OiAxNTBweCAgIWltcG9ydGFudDsgLyogWW91ciBkZXNpcmVkIGhlaWdodCAqL1xyXG4gIH1cclxuICBcclxuICAuZHgtbnVtYmVyYm94ID4gaW5wdXQge1xyXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICB9XHJcbiAgXHJcbiAgLmVycm9yLW1lc3NhZ2Uge1xyXG4gICAgICBtYXJnaW4tbGVmdDogMTZweDtcclxuICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gIH1cclxuICBcclxuICA6Om5nLWRlZXAgLmljb24tYiAuZHgtYnV0dG9uLWNvbnRlbnQgLmR4LWljb24ge1xyXG4gICAgICBmb250LXNpemU6IDAuOHJlbTtcclxuICAgICAgY29sb3I6ICMwMjc1ZDg7XHJcbiAgXHJcbiAgfVxyXG4gIFxyXG4gIDo6bmctZGVlcCAuaWNvbi1iIC5keC1idXR0b24tY29udGVudCAuZHgtYnV0dG9uLXRleHQge1xyXG4gICAgICBmb250LXNpemU6IDAuOHJlbTtcclxuICAgICAgY29sb3I6IzAyNzVkODtcclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgYm9keSAuY3VzdG9tLWl0ZW0ge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDdweDtcclxuICAgICAgcGFkZGluZy1yaWdodDogN3B4O1xyXG4gIH1cclxuICA6Om5nLWRlZXAgLmN1c3RvbS1pdGVtID4gaW1nIHtcclxuICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICB3aWR0aDogNDBweDtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIG1hcmdpbi10b3A6IDJweDtcclxuICB9XHJcbiAgOjpuZy1kZWVwIC5jdXN0b20taXRlbSA+IGRpdi5wcm9kdWN0LW5hbWUge1xyXG4gICAgICBtYXJnaW4tbGVmdDogNDBweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICB9XHJcbiAgXHJcbiAgYm9keSAuY3VzdG9tLWl0ZW0gaW5wdXQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB9XHJcbiAgXHJcbiAgYm9keSAuZHgtcG9wdXAtY29udGVudCAuY3VzdG9tLWl0ZW0ge1xyXG4gICAgICBwYWRkaW5nLXRvcDogN3B4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xyXG4gIH1cclxuICA6Om5nLWRlZXAgLmR4LXBvcHVwLWNvbnRlbnQgLmN1c3RvbS1pdGVtID4gZGl2IHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XHJcbiAgICAgIHRleHQtaW5kZW50OiAwO1xyXG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbiAgXHJcbiAgLmZvb3RlciB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICBcclxuICBcclxuICA6Om5nLWRlZXAgI2J0b24tZ3JheXtcclxuICAgIGJvcmRlcjoxcHggc29saWQgIzlmYTRhYiAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IzAwMCFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIFxyXG4gIDo6bmctZGVlcCAjYnRvbi1ncmF5LW91dGxpbmV7XHJcbiAgICBib3JkZXI6MXB4IHNvbGlkICM5ZmE0YWIgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiMwMDAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBcclxuICA6Om5nLWRlZXAgI2J0b24tZ3JlZW57XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTVjODNkICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICM5NWM4M2QgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZiAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBcclxuICA6Om5nLWRlZXAgI2J0b24tZ3JlZW4gLmR4LWljb257XHJcbiAgICBjb2xvcjogI2ZmZmYgIWltcG9ydGFudDtcclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgXHJcbiAgOjpuZy1kZWVwICNidG9uLWdyYXktb3V0bGluZSAuZHgtYnV0dG9uLXRleHR7XHJcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gIH1cclxuICBcclxuICA6Om5nLWRlZXAgI2J0b24tZ3JheSAuZHgtYnV0dG9uLXRleHR7XHJcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gIH1cclxuICBcclxuICAubW9kYWwtb3BlbiAubW9kYWwge1xyXG4gICAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBcclxuICAvLyBzdGFydCBzb3J0YWJsZSBsaXN0XHJcbiAgXHJcbiAgI2thbmJhbiB7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIH1cclxuICBcclxuICAubGlzdDEge1xyXG4gICAgLy8gYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgLy8gbWFyZ2luOiA1cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDUsIDI0NSwgMjQ1KTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RmZGZkZjtcclxuICAgIHdpZHRoOiAyMCU7XHJcbiAgICAvLyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICBcclxuICB9XHJcbiAgXHJcbiAgLmxpc3QtdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAwLjlyZW07XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgLy8gcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbiAgXHJcbiAgLnNjcm9sbGFibGUtbGlzdCB7XHJcbiAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgd2lkdGg6IDk4JTtcclxuICB9XHJcbiAgXHJcbiAgLnNvcnRhYmxlLWNhcmRzIHtcclxuICAgIG1pbi1oZWlnaHQ6IDM4MHB4XHJcbiAgfVxyXG4gIFxyXG4gIC5jYXJkMSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAvLyB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgIG1hcmdpbjogMTBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbiAgXHJcbiAgLmNhcmQtc3ViamVjdCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICB9XHJcbiAgXHJcbiAgLmNhcmQtYXNzaWduZWUge1xyXG4gICAgb3BhY2l0eTogMC42O1xyXG4gIH1cclxuICBcclxuICAuY2FyZC1wcmlvcml0eSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDEwcHg7XHJcbiAgICBib3R0b206IDEwcHg7XHJcbiAgICBsZWZ0OiA1cHg7XHJcbiAgICB3aWR0aDogNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgYmFja2dyb3VuZDogIzg2QzI4NTtcclxuICB9XHJcbiAgXHJcbiAgLnByaW9yaXR5LTEge1xyXG4gICAgYmFja2dyb3VuZDogI0FEQURBRDtcclxuICB9XHJcbiAgXHJcbiAgLnByaW9yaXR5LTIge1xyXG4gICAgYmFja2dyb3VuZDogIzg2QzI4NTtcclxuICB9XHJcbiAgXHJcbiAgLnByaW9yaXR5LTMge1xyXG4gICAgYmFja2dyb3VuZDogI0VEQzU3ODtcclxuICB9XHJcbiAgXHJcbiAgLnByaW9yaXR5LTQge1xyXG4gICAgYmFja2dyb3VuZDogI0VGN0Q1OTtcclxuICB9XHJcbiAgXHJcbiAgOjpuZy1kZWVwIC5keC1zb3J0YWJsZSB7XHJcbiAgICBkaXNwbGF5OiBibG9ja1xyXG4gIH1cclxuICBcclxuICAvL2VuZCBzb3J0YWJsZSBsaXN0XHJcbiAgXHJcbiAgI3NvcnRhYmxlc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgfVxyXG4gIC5zb3J0YWJsZWhlaWdodHtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcblxyXG5cclxuXHJcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbiNrYW5iYW4ge1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5saXN0MSB7XHJcbiAgLy8gYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gIC8vIG1hcmdpbjogNXB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6cmdiKDI0NSwgMjQ1LCAyNDUpO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgI2RmZGZkZjtcclxuICB3aWR0aDogMjAlO1xyXG4gIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuXHJcbn1cclxuXHJcbi5saXN0LXRpdGxlIHtcclxuICBmb250LXNpemU6IDAuOXJlbTtcclxuICBwYWRkaW5nOiAxMHB4O1xyXG4gIC8vIHBhZGRpbmctbGVmdDogMzBweDtcclxuICBtYXJnaW4tYm90dG9tOiAtMTBweDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5zY3JvbGxhYmxlLWxpc3Qge1xyXG4gIGhlaWdodDogNDAwcHg7XHJcbiAgd2lkdGg6IDk4JTtcclxufVxyXG5cclxuLnNvcnRhYmxlLWNhcmRzIHtcclxuICBtaW4taGVpZ2h0OiAzODBweFxyXG59XHJcblxyXG4uY2FyZDEge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIC8vIHdpZHRoOiAxMDAlO1xyXG4gIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICBtYXJnaW46IDEwcHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uY2FyZC1zdWJqZWN0IHtcclxuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLmNhcmQtYXNzaWduZWUge1xyXG4gIG9wYWNpdHk6IDAuNjtcclxufVxyXG5cclxuLmNhcmQtcHJpb3JpdHkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDEwcHg7XHJcbiAgYm90dG9tOiAxMHB4O1xyXG4gIGxlZnQ6IDVweDtcclxuICB3aWR0aDogNXB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICBiYWNrZ3JvdW5kOiAjODZDMjg1O1xyXG59XHJcblxyXG4ucHJpb3JpdHktMSB7XHJcbiAgYmFja2dyb3VuZDogI0FEQURBRDtcclxufVxyXG5cclxuLnByaW9yaXR5LTIge1xyXG4gIGJhY2tncm91bmQ6ICM4NkMyODU7XHJcbn1cclxuXHJcbi5wcmlvcml0eS0zIHtcclxuICBiYWNrZ3JvdW5kOiAjRURDNTc4O1xyXG59XHJcblxyXG4ucHJpb3JpdHktNCB7XHJcbiAgYmFja2dyb3VuZDogI0VGN0Q1OTtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5keC1zb3J0YWJsZSB7XHJcbiAgZGlzcGxheTogYmxvY2tcclxufVxyXG5cclxuOjpuZy1kZWVwICNncmlkQ29udGFpbmVyIHtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcblxyXG4vL2JvdG9uZXNcclxuOjpuZy1kZWVwICNidG9uLWdyYXl7XHJcbmNvbG9yOiMwMDAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgI2J0b24tZ3JheS1vdXRsaW5le1xyXG5ib3JkZXI6MXB4IHNvbGlkICM5ZmE0YWIgIWltcG9ydGFudDtcclxuY29sb3I6IzAwMCFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAjYnRvbi1ncmVlbntcclxuYmFja2dyb3VuZC1jb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xyXG5ib3JkZXItY29sb3I6ICM5NWM4M2QgIWltcG9ydGFudDtcclxuY29sb3I6ICNmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAjYnRvbi1ncmVlbiAuZHgtaWNvbntcclxuY29sb3I6ICNmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG5cclxuOjpuZy1kZWVwICNidG9uLWdyYXktb3V0bGluZSAuZHgtYnV0dG9uLXRleHR7XHJcbmxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAjYnRvbi1ncmF5IC5keC1idXR0b24tdGV4dHtcclxubGluZS1oZWlnaHQ6IG5vcm1hbDtcclxufVxyXG4iLCIuYnRuLW91dGxpbmUtZ3JheTEge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTg1OTViO1xuICBjb2xvcjogIzU4NTk1YjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5idG4tb3V0bGluZS1ncmF5MTpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzU4NTk1YjtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg1OTViO1xufVxuXG4ubWRiLXd5c2l3eWctdGV4dGFyZWEge1xuICBoZWlnaHQ6IDE1MHB4ICFpbXBvcnRhbnQ7XG4gIC8qIFlvdXIgZGVzaXJlZCBoZWlnaHQgKi9cbn1cblxuLmR4LW51bWJlcmJveCA+IGlucHV0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5lcnJvci1tZXNzYWdlIHtcbiAgbWFyZ2luLWxlZnQ6IDE2cHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuOjpuZy1kZWVwIC5pY29uLWIgLmR4LWJ1dHRvbi1jb250ZW50IC5keC1pY29uIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjMDI3NWQ4O1xufVxuXG46Om5nLWRlZXAgLmljb24tYiAuZHgtYnV0dG9uLWNvbnRlbnQgLmR4LWJ1dHRvbi10ZXh0IHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjMDI3NWQ4O1xufVxuXG5ib2R5IC5jdXN0b20taXRlbSB7XG4gIHBhZGRpbmctbGVmdDogN3B4O1xuICBwYWRkaW5nLXJpZ2h0OiA3cHg7XG59XG5cbjo6bmctZGVlcCAuY3VzdG9tLWl0ZW0gPiBpbWcge1xuICBoZWlnaHQ6IDMwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXRvcDogMnB4O1xufVxuXG46Om5nLWRlZXAgLmN1c3RvbS1pdGVtID4gZGl2LnByb2R1Y3QtbmFtZSB7XG4gIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICBsaW5lLWhlaWdodDogMzRweDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG5ib2R5IC5jdXN0b20taXRlbSBpbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5ib2R5IC5keC1wb3B1cC1jb250ZW50IC5jdXN0b20taXRlbSB7XG4gIHBhZGRpbmctdG9wOiA3cHg7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG59XG5cbjo6bmctZGVlcCAuZHgtcG9wdXAtY29udGVudCAuY3VzdG9tLWl0ZW0gPiBkaXYge1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgdGV4dC1pbmRlbnQ6IDA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZm9vdGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyYXkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjOWZhNGFiICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAjYnRvbi1ncmF5LW91dGxpbmUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjOWZhNGFiICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAjYnRvbi1ncmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5NWM4M2QgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjOTVjODNkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmZiAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgI2J0b24tZ3JlZW4gLmR4LWljb24ge1xuICBjb2xvcjogI2ZmZmYgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyYXktb3V0bGluZSAuZHgtYnV0dG9uLXRleHQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG46Om5nLWRlZXAgI2J0b24tZ3JheSAuZHgtYnV0dG9uLXRleHQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4ubW9kYWwtb3BlbiAubW9kYWwge1xuICBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbiNrYW5iYW4ge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubGlzdDEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZmRmZGY7XG4gIHdpZHRoOiAyMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuXG4ubGlzdC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBwYWRkaW5nOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAtMTBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnNjcm9sbGFibGUtbGlzdCB7XG4gIGhlaWdodDogNDAwcHg7XG4gIHdpZHRoOiA5OCU7XG59XG5cbi5zb3J0YWJsZS1jYXJkcyB7XG4gIG1pbi1oZWlnaHQ6IDM4MHB4O1xufVxuXG4uY2FyZDEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIG1hcmdpbjogMTBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uY2FyZC1zdWJqZWN0IHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi5jYXJkLWFzc2lnbmVlIHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4uY2FyZC1wcmlvcml0eSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDVweDtcbiAgd2lkdGg6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kOiAjODZDMjg1O1xufVxuXG4ucHJpb3JpdHktMSB7XG4gIGJhY2tncm91bmQ6ICNBREFEQUQ7XG59XG5cbi5wcmlvcml0eS0yIHtcbiAgYmFja2dyb3VuZDogIzg2QzI4NTtcbn1cblxuLnByaW9yaXR5LTMge1xuICBiYWNrZ3JvdW5kOiAjRURDNTc4O1xufVxuXG4ucHJpb3JpdHktNCB7XG4gIGJhY2tncm91bmQ6ICNFRjdENTk7XG59XG5cbjo6bmctZGVlcCAuZHgtc29ydGFibGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuI3NvcnRhYmxlc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNvcnRhYmxlaGVpZ2h0IHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbiNrYW5iYW4ge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubGlzdDEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZmRmZGY7XG4gIHdpZHRoOiAyMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuXG4ubGlzdC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBwYWRkaW5nOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAtMTBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnNjcm9sbGFibGUtbGlzdCB7XG4gIGhlaWdodDogNDAwcHg7XG4gIHdpZHRoOiA5OCU7XG59XG5cbi5zb3J0YWJsZS1jYXJkcyB7XG4gIG1pbi1oZWlnaHQ6IDM4MHB4O1xufVxuXG4uY2FyZDEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIG1hcmdpbjogMTBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uY2FyZC1zdWJqZWN0IHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi5jYXJkLWFzc2lnbmVlIHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4uY2FyZC1wcmlvcml0eSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDVweDtcbiAgd2lkdGg6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kOiAjODZDMjg1O1xufVxuXG4ucHJpb3JpdHktMSB7XG4gIGJhY2tncm91bmQ6ICNBREFEQUQ7XG59XG5cbi5wcmlvcml0eS0yIHtcbiAgYmFja2dyb3VuZDogIzg2QzI4NTtcbn1cblxuLnByaW9yaXR5LTMge1xuICBiYWNrZ3JvdW5kOiAjRURDNTc4O1xufVxuXG4ucHJpb3JpdHktNCB7XG4gIGJhY2tncm91bmQ6ICNFRjdENTk7XG59XG5cbjo6bmctZGVlcCAuZHgtc29ydGFibGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuOjpuZy1kZWVwICNncmlkQ29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyYXkge1xuICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgI2J0b24tZ3JheS1vdXRsaW5lIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzlmYTRhYiAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgI2J0b24tZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTVjODNkICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmYgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyZWVuIC5keC1pY29uIHtcbiAgY29sb3I6ICNmZmZmICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAjYnRvbi1ncmF5LW91dGxpbmUgLmR4LWJ1dHRvbi10ZXh0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyYXkgLmR4LWJ1dHRvbi10ZXh0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn0iXX0= */\"","// Sortable\r\nimport { moveItemInList } from 'mdb-sortable';\r\n// tables\r\nimport {\r\n Component, OnInit, ElementRef, HostListener,\r\n AfterViewInit, ViewChild, ChangeDetectorRef,\r\n QueryList, ViewChildren, Input, Output, EventEmitter\r\n} from '@angular/core';\r\nimport { MdbTableDirective, MdbTablePaginationComponent, MdbBtnDirective, MDBModalRef } from 'ng-uikit-pro-standard';\r\n// mensage type toast\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\n// forms and validations\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ComponentsType, ComponentIndicator, ComponentChart, ChartDatasets, ChartColors, Dashboard } from 'src/app/models/component-data';\r\nimport { DasboardService } from 'src/app/services/dashboard.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { groupBy, mergeMap, toArray } from 'rxjs/operators';\r\nimport { from, Observable } from 'rxjs';\r\nimport { GetTypePipe } from 'src/app/custom-pipe/GetTypePipe';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { ProjectService } from 'src/app/services/project.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { Router } from '@angular/router';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\n\r\n@Component({\r\n selector: 'alarm-work-flow-summary',\r\n templateUrl: './alarm-work-flow-summary.component.html',\r\n styleUrls: ['./alarm-work-flow-summary.component.scss']\r\n})\r\nexport class AlarmWorkFlowSummaryComponent implements OnInit {\r\n @Input() PopupAlarm: any;\r\n @Output() CerrarModal = new EventEmitter();\r\n dateFormat = 'dd-MM-yyyy';\r\n moneyFormat = '';\r\n dateFormat1: any\r\n // PopupAlarm: boolean = false\r\n PhasesAlarm: any[] = []\r\n customOperations: Array;\r\n popupPosition: any;\r\n TotalAlarms: number = 0\r\n statusList: any[] = []\r\n\r\n\r\n\r\n constructor(\r\n private ProjectService: ProjectService,\r\n private datePipe: DatePipe,\r\n private translate:TranslateService,\r\n private translateService: TranslateService,\r\n // private translatePipe: TranslatePipe,\r\n private appConfigService: AppConfigService,\r\n public generalService: GeneralService,\r\n private toast: ToastService,\r\n private router: Router,\r\n public MapInformationService: MapInformationService,\r\n ) {\r\n\r\n this.dateFormat = this.appConfigService.dateFormat;\r\n this.dateFormat1 = this.appConfigService.dateFormat;\r\n this.moneyFormat = this.appConfigService.moneyFormat;\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.getAlarms()\r\n }\r\n\r\n getAlarms() {\r\n const data = {\r\n method: \"Get_ProjectWorkFlowAlarms\"\r\n }\r\n this.ProjectService.GetStatusList().subscribe(result => {\r\n this.statusList = result.map((val, id) => {\r\n return {\r\n id: id + 1,\r\n name: val.WFSTATUSNAME\r\n }\r\n })\r\n console.log(this.statusList)\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp => {\r\n this.ProjectService.Get_ProjectPhasesCE()\r\n .subscribe(info => {\r\n\r\n // for (let i = 0; i < resp.length; i++) {\r\n // for (let j = 0; j < info.length; j++) {\r\n // if (resp[i].WF_PhaseId == info[j].ID) {\r\n // resp[i].SORT = info[j].SORT\r\n // }\r\n // }\r\n // }\r\n console.log(resp)\r\n resp.sort(function (a, b) { return a.Flow_Sort - b.Flow_Sort })\r\n console.log(resp)\r\n let infoFinal = []\r\n if(resp.length > 0){\r\n resp.forEach(element => {\r\n if(element.Flow_Active){\r\n element.Flow_ActiveYesOrNo = \"Yes\"\r\n } else {\r\n element.Flow_ActiveYesOrNo = \"No\"\r\n }\r\n infoFinal.push(element)\r\n });\r\n }\r\n // this.PhasesAlarm = resp\r\n this.PhasesAlarm = infoFinal\r\n this.TotalAlarms = resp.length\r\n })\r\n })\r\n })\r\n }\r\n\r\n CloseModal() {\r\n this.PopupAlarm = false\r\n this.CerrarModal.emit(false)\r\n }\r\n\r\n saveStatusWorkFlow(e) {\r\n console.log(e)\r\n let data = e.data;\r\n let project = {\r\n id: data.ID,\r\n projectid: data.Project_Id,\r\n workflowstatusid: data.PhaseStatus_Id,\r\n notes: \"\",\r\n }\r\n console.log(project)\r\n this.ProjectService.UpdateProjectWorkFlow(project).subscribe(result => {\r\n this.toast.success(this.translate.instant('msgProjWorUpdSucc'));\r\n this.getAlarms()\r\n })\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { SharedDatagridModule } from 'src/app/shared/shared-datagrid/shared-datagrid.module';\r\nimport { DxButtonModule, DxDataGridModule } from \"devextreme-angular\";\r\nimport { AlarmWorkFlowSummaryComponent } from './alarm-work-flow-summary.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DashboardModule } from 'src/app/shared/shared-dashboard/dashboard.module';\r\nimport { DxTagBoxModule, DxScrollViewModule, DxTextBoxModule, DxPopupModule, DxSelectBoxModule, DxDateBoxModule, DxTabPanelModule, DxAccordionModule, DxButtonGroupModule, DxCheckBoxModule, DxRangeSliderModule, DxDropDownButtonModule, DxRadioGroupModule, DxFileUploaderModule, DxToolbarModule, DxSortableModule } from \"devextreme-angular\";\r\nimport { CardListPhasesModule } from '../card-list-phases/card-list-phases.module';\r\nimport { AddEditWorkFlowModule } from '../add-edit-workflow/add-edit-workflow.module';\r\n@NgModule({\r\n declarations: [\r\n AlarmWorkFlowSummaryComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n SharedDatagridModule,\r\n DxButtonModule,\r\n MdbGlobalModule,\r\n DashboardModule,\r\n DxDataGridModule,\r\n DxTagBoxModule, \r\n DxScrollViewModule, \r\n DxTextBoxModule, \r\n DxPopupModule, \r\n DxSelectBoxModule, \r\n DxDateBoxModule, \r\n DxTabPanelModule, \r\n DxAccordionModule, \r\n DxButtonGroupModule,\r\n DxCheckBoxModule, \r\n DxRangeSliderModule,\r\n DxDropDownButtonModule, \r\n DxRadioGroupModule, \r\n DxFileUploaderModule, \r\n DxToolbarModule, \r\n DxSortableModule,\r\n CardListPhasesModule,\r\n AddEditWorkFlowModule\r\n ],\r\n exports:[AlarmWorkFlowSummaryComponent]\r\n})\r\nexport class AlarmWorkFlowSummaryModule { }\r\n","export default \".btn-outline-gray1 {\\n border: 1px solid #58595b;\\n color: #58595b;\\n background-color: transparent;\\n background-image: none;\\n}\\n\\n.btn-outline-gray1:hover {\\n border-color: #58595b;\\n color: white;\\n background-color: #58595b;\\n}\\n\\n.mdb-wysiwyg-textarea {\\n height: 150px !important;\\n /* Your desired height */\\n}\\n\\n.dx-numberbox > input {\\n text-align: right;\\n}\\n\\n.error-message {\\n margin-left: 16px;\\n margin-top: 5px;\\n}\\n\\n::ng-deep .icon-b .dx-button-content .dx-icon {\\n font-size: 0.8rem;\\n color: #0275d8;\\n}\\n\\n::ng-deep .icon-b .dx-button-content .dx-button-text {\\n font-size: 0.8rem;\\n color: #0275d8;\\n}\\n\\nbody .custom-item {\\n padding-left: 7px;\\n padding-right: 7px;\\n}\\n\\n::ng-deep .custom-item > img {\\n height: 30px;\\n width: 40px;\\n float: left;\\n margin-top: 2px;\\n}\\n\\n::ng-deep .custom-item > div.product-name {\\n margin-left: 40px;\\n line-height: 34px;\\n font-size: 14px;\\n}\\n\\nbody .custom-item input {\\n background-color: transparent;\\n}\\n\\nbody .dx-popup-content .custom-item {\\n padding-top: 7px;\\n padding-bottom: 8px;\\n}\\n\\n::ng-deep .dx-popup-content .custom-item > div {\\n padding-left: 8px;\\n text-indent: 0;\\n text-overflow: ellipsis;\\n overflow: hidden;\\n}\\n\\n.footer {\\n position: fixed;\\n left: 0;\\n bottom: 0;\\n width: 100%;\\n background-color: #f5f5f5;\\n color: white;\\n text-align: center;\\n}\\n\\n::ng-deep #bton-gray {\\n border: 1px solid #9fa4ab !important;\\n color: #000 !important;\\n}\\n\\n::ng-deep #bton-gray-outline {\\n border: 1px solid #9fa4ab !important;\\n color: #000 !important;\\n}\\n\\n::ng-deep #bton-green {\\n background-color: #95c83d !important;\\n border-color: #95c83d !important;\\n color: #ffff !important;\\n}\\n\\n::ng-deep #bton-green .dx-icon {\\n color: #ffff !important;\\n}\\n\\n::ng-deep #bton-gray-outline .dx-button-text {\\n line-height: normal;\\n}\\n\\n::ng-deep #bton-gray .dx-button-text {\\n line-height: normal;\\n}\\n\\n.modal-open .modal {\\n overflow-y: auto !important;\\n}\\n\\n#kanban {\\n white-space: nowrap;\\n}\\n\\n.list1 {\\n background-color: whitesmoke;\\n display: inline-block;\\n vertical-align: top;\\n white-space: normal;\\n border: 1px solid #dfdfdf;\\n width: 20%;\\n min-height: 100vh;\\n}\\n\\n.list-title {\\n font-size: 0.9rem;\\n padding: 10px;\\n margin-bottom: -10px;\\n font-weight: bold;\\n cursor: pointer;\\n}\\n\\n.scrollable-list {\\n height: 400px;\\n width: 98%;\\n}\\n\\n.sortable-cards {\\n min-height: 380px;\\n}\\n\\n.card1 {\\n position: relative;\\n background-color: white;\\n box-sizing: border-box;\\n padding: 10px 20px;\\n margin: 10px;\\n cursor: pointer;\\n}\\n\\n.card-subject {\\n padding-bottom: 10px;\\n}\\n\\n.card-assignee {\\n opacity: 0.6;\\n}\\n\\n.card-priority {\\n position: absolute;\\n top: 10px;\\n bottom: 10px;\\n left: 5px;\\n width: 5px;\\n border-radius: 2px;\\n background: #86C285;\\n}\\n\\n.priority-1 {\\n background: #ADADAD;\\n}\\n\\n.priority-2 {\\n background: #86C285;\\n}\\n\\n.priority-3 {\\n background: #EDC578;\\n}\\n\\n.priority-4 {\\n background: #EF7D59;\\n}\\n\\n::ng-deep .dx-sortable {\\n display: block;\\n}\\n\\n#sortablescroll::-webkit-scrollbar {\\n visibility: hidden;\\n}\\n\\n.sortableheight {\\n height: auto !important;\\n}\\n\\n#kanban {\\n white-space: nowrap;\\n}\\n\\n.list1 {\\n background-color: whitesmoke;\\n display: inline-block;\\n vertical-align: top;\\n white-space: normal;\\n border: 1px solid #dfdfdf;\\n width: 20%;\\n min-height: 100vh;\\n}\\n\\n.list-title {\\n font-size: 0.9rem;\\n padding: 10px;\\n margin-bottom: -10px;\\n font-weight: bold;\\n cursor: pointer;\\n}\\n\\n.scrollable-list {\\n height: 400px;\\n width: 98%;\\n}\\n\\n.sortable-cards {\\n min-height: 380px;\\n}\\n\\n.card1 {\\n position: relative;\\n background-color: white;\\n box-sizing: border-box;\\n padding: 10px 20px;\\n margin: 10px;\\n cursor: pointer;\\n}\\n\\n.card-subject {\\n padding-bottom: 10px;\\n}\\n\\n.card-assignee {\\n opacity: 0.6;\\n}\\n\\n.card-priority {\\n position: absolute;\\n top: 10px;\\n bottom: 10px;\\n left: 5px;\\n width: 5px;\\n border-radius: 2px;\\n background: #86C285;\\n}\\n\\n.priority-1 {\\n background: #ADADAD;\\n}\\n\\n.priority-2 {\\n background: #86C285;\\n}\\n\\n.priority-3 {\\n background: #EDC578;\\n}\\n\\n.priority-4 {\\n background: #EF7D59;\\n}\\n\\n::ng-deep .dx-sortable {\\n display: block;\\n}\\n\\n::ng-deep #gridContainer {\\n height: 100%;\\n width: 100%;\\n}\\n\\n::ng-deep #bton-gray {\\n color: #000 !important;\\n}\\n\\n::ng-deep #bton-gray-outline {\\n border: 1px solid #9fa4ab !important;\\n color: #000 !important;\\n}\\n\\n::ng-deep #bton-green {\\n background-color: #95c83d !important;\\n border-color: #95c83d !important;\\n color: #ffff !important;\\n}\\n\\n::ng-deep #bton-green .dx-icon {\\n color: #ffff !important;\\n}\\n\\n::ng-deep #bton-gray-outline .dx-button-text {\\n line-height: normal;\\n}\\n\\n::ng-deep #bton-gray .dx-button-text {\\n line-height: normal;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvcHJvamVjdC1tYW5hZ2VtZW50L2NhcmQtbGlzdC1waGFzZXMvRTpcXERldlxcQ1VCRVRFTVBcXG5ld2N1YmUvc3JjXFxhcHBcXHBhZ2VzXFxwcm9qZWN0LW1hbmFnZW1lbnRcXGNhcmQtbGlzdC1waGFzZXNcXGNhcmQtbGlzdC1waGFzZXMuY29tcG9uZW50LnNjc3MiLCJzcmMvYXBwL3BhZ2VzL3Byb2plY3QtbWFuYWdlbWVudC9jYXJkLWxpc3QtcGhhc2VzL2NhcmQtbGlzdC1waGFzZXMuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0E7RUFDRSx5QkFBQTtFQUNBLGNBQUE7RUFDQSw2QkFBQTtFQUNBLHNCQUFBO0FDQUY7O0FERUE7RUFDRSxxQkFBQTtFQUNBLFlBQUE7RUFDQSx5QkFBQTtBQ0NGOztBRElBO0VBQ0Usd0JBQUE7RUFBMkIsd0JBQUE7QUNBN0I7O0FER0E7RUFDSSxpQkFBQTtBQ0FKOztBREdBO0VBQ0ksaUJBQUE7RUFDQSxlQUFBO0FDQUo7O0FER0E7RUFDSSxpQkFBQTtFQUNBLGNBQUE7QUNBSjs7QURJQTtFQUNJLGlCQUFBO0VBQ0EsY0FBQTtBQ0RKOztBREtBO0VBQ0ksaUJBQUE7RUFDQSxrQkFBQTtBQ0ZKOztBRElBO0VBQ0ksWUFBQTtFQUNBLFdBQUE7RUFDQSxXQUFBO0VBQ0EsZUFBQTtBQ0RKOztBREdBO0VBQ0ksaUJBQUE7RUFDQSxpQkFBQTtFQUNBLGVBQUE7QUNBSjs7QURHQTtFQUNJLDZCQUFBO0FDQUo7O0FER0E7RUFDSSxnQkFBQTtFQUNBLG1CQUFBO0FDQUo7O0FERUE7RUFDSSxpQkFBQTtFQUNBLGNBQUE7RUFDQSx1QkFBQTtFQUNBLGdCQUFBO0FDQ0o7O0FERUE7RUFDRSxlQUFBO0VBQ0EsT0FBQTtFQUNBLFNBQUE7RUFDQSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7QUNDRjs7QURHQTtFQUNFLG9DQUFBO0VBQ0Esc0JBQUE7QUNBRjs7QURHQTtFQUNFLG9DQUFBO0VBQ0Esc0JBQUE7QUNBRjs7QURHQTtFQUNFLG9DQUFBO0VBQ0EsZ0NBQUE7RUFDQSx1QkFBQTtBQ0FGOztBREdBO0VBQ0UsdUJBQUE7QUNBRjs7QURLQTtFQUNFLG1CQUFBO0FDRkY7O0FES0E7RUFDRSxtQkFBQTtBQ0ZGOztBREtBO0VBQ0UsMkJBQUE7QUNGRjs7QURPQTtFQUNFLG1CQUFBO0FDSkY7O0FET0E7RUFHRSw0QkFBQTtFQUNBLHFCQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQkFBQTtFQUNBLHlCQUFBO0VBQ0EsVUFBQTtFQUVBLGlCQUFBO0FDUEY7O0FEV0E7RUFDRSxpQkFBQTtFQUNBLGFBQUE7RUFFQSxvQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZUFBQTtBQ1RGOztBRFlBO0VBQ0UsYUFBQTtFQUNBLFVBQUE7QUNURjs7QURZQTtFQUNFLGlCQUFBO0FDVEY7O0FEWUE7RUFDRSxrQkFBQTtFQUNBLHVCQUFBO0VBQ0Esc0JBQUE7RUFFQSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0FDVkY7O0FEYUE7RUFDRSxvQkFBQTtBQ1ZGOztBRGFBO0VBQ0UsWUFBQTtBQ1ZGOztBRGFBO0VBQ0Usa0JBQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtBQ1ZGOztBRGFBO0VBQ0UsbUJBQUE7QUNWRjs7QURhQTtFQUNFLG1CQUFBO0FDVkY7O0FEYUE7RUFDRSxtQkFBQTtBQ1ZGOztBRGFBO0VBQ0UsbUJBQUE7QUNWRjs7QURhQTtFQUNFLGNBQUE7QUNWRjs7QURlQTtFQUNFLGtCQUFBO0FDWkY7O0FEY0E7RUFDRSx1QkFBQTtBQ1hGOztBRG1CQTtFQUNBLG1CQUFBO0FDaEJBOztBRG1CQTtFQUdBLDRCQUFBO0VBQ0EscUJBQUE7RUFDQSxtQkFBQTtFQUNBLG1CQUFBO0VBQ0EseUJBQUE7RUFDQSxVQUFBO0VBRUEsaUJBQUE7QUNuQkE7O0FEdUJBO0VBQ0EsaUJBQUE7RUFDQSxhQUFBO0VBRUEsb0JBQUE7RUFDQSxpQkFBQTtFQUNBLGVBQUE7QUNyQkE7O0FEd0JBO0VBQ0EsYUFBQTtFQUNBLFVBQUE7QUNyQkE7O0FEd0JBO0VBQ0EsaUJBQUE7QUNyQkE7O0FEd0JBO0VBQ0Esa0JBQUE7RUFDQSx1QkFBQTtFQUNBLHNCQUFBO0VBRUEsa0JBQUE7RUFDQSxZQUFBO0VBQ0EsZUFBQTtBQ3RCQTs7QUR5QkE7RUFDQSxvQkFBQTtBQ3RCQTs7QUR5QkE7RUFDQSxZQUFBO0FDdEJBOztBRHlCQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFlBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtFQUNBLGtCQUFBO0VBQ0EsbUJBQUE7QUN0QkE7O0FEeUJBO0VBQ0EsbUJBQUE7QUN0QkE7O0FEeUJBO0VBQ0EsbUJBQUE7QUN0QkE7O0FEeUJBO0VBQ0EsbUJBQUE7QUN0QkE7O0FEeUJBO0VBQ0EsbUJBQUE7QUN0QkE7O0FEeUJBO0VBQ0EsY0FBQTtBQ3RCQTs7QUR5QkE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtBQ3RCQTs7QUQyQkE7RUFDQSxzQkFBQTtBQ3hCQTs7QUQyQkE7RUFDQSxvQ0FBQTtFQUNBLHNCQUFBO0FDeEJBOztBRDJCQTtFQUNBLG9DQUFBO0VBQ0EsZ0NBQUE7RUFDQSx1QkFBQTtBQ3hCQTs7QUQyQkE7RUFDQSx1QkFBQTtBQ3hCQTs7QUQ2QkE7RUFDQSxtQkFBQTtBQzFCQTs7QUQ2QkE7RUFDQSxtQkFBQTtBQzFCQSIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3Byb2plY3QtbWFuYWdlbWVudC9jYXJkLWxpc3QtcGhhc2VzL2NhcmQtbGlzdC1waGFzZXMuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuLmJ0bi1vdXRsaW5lLWdyYXkxe1xyXG4gIGJvcmRlcjoxcHggc29saWQgIzU4NTk1YjtcclxuICBjb2xvcjogIzU4NTk1YjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG59XHJcbi5idG4tb3V0bGluZS1ncmF5MTpob3ZlcntcclxuICBib3JkZXItY29sb3I6ICM1ODU5NWI7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM1ODU5NWI7XHJcblxyXG59XHJcblxyXG5cclxuLm1kYi13eXNpd3lnLXRleHRhcmVhIHtcclxuICBoZWlnaHQ6IDE1MHB4ICAhaW1wb3J0YW50OyAvKiBZb3VyIGRlc2lyZWQgaGVpZ2h0ICovXHJcbn1cclxuXHJcbi5keC1udW1iZXJib3ggPiBpbnB1dCB7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLmVycm9yLW1lc3NhZ2Uge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDE2cHg7XHJcbiAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAuaWNvbi1iIC5keC1idXR0b24tY29udGVudCAuZHgtaWNvbiB7XHJcbiAgICBmb250LXNpemU6IDAuOHJlbTtcclxuICAgIGNvbG9yOiAjMDI3NWQ4O1xyXG5cclxufVxyXG5cclxuOjpuZy1kZWVwIC5pY29uLWIgLmR4LWJ1dHRvbi1jb250ZW50IC5keC1idXR0b24tdGV4dCB7XHJcbiAgICBmb250LXNpemU6IDAuOHJlbTtcclxuICAgIGNvbG9yOiMwMjc1ZDg7XHJcbn1cclxuXHJcblxyXG5ib2R5IC5jdXN0b20taXRlbSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDdweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDdweDtcclxufVxyXG46Om5nLWRlZXAgLmN1c3RvbS1pdGVtID4gaW1nIHtcclxuICAgIGhlaWdodDogMzBweDtcclxuICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuOjpuZy1kZWVwIC5jdXN0b20taXRlbSA+IGRpdi5wcm9kdWN0LW5hbWUge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDQwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMzRweDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuYm9keSAuY3VzdG9tLWl0ZW0gaW5wdXQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbmJvZHkgLmR4LXBvcHVwLWNvbnRlbnQgLmN1c3RvbS1pdGVtIHtcclxuICAgIHBhZGRpbmctdG9wOiA3cHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xyXG59XHJcbjo6bmctZGVlcCAuZHgtcG9wdXAtY29udGVudCAuY3VzdG9tLWl0ZW0gPiBkaXYge1xyXG4gICAgcGFkZGluZy1sZWZ0OiA4cHg7XHJcbiAgICB0ZXh0LWluZGVudDogMDtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmZvb3RlciB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGxlZnQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuXHJcbjo6bmctZGVlcCAjYnRvbi1ncmF5e1xyXG4gIGJvcmRlcjoxcHggc29saWQgIzlmYTRhYiAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiMwMDAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgI2J0b24tZ3JheS1vdXRsaW5le1xyXG4gIGJvcmRlcjoxcHggc29saWQgIzlmYTRhYiAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiMwMDAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgI2J0b24tZ3JlZW57XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1jb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAjZmZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgI2J0b24tZ3JlZW4gLmR4LWljb257XHJcbiAgY29sb3I6ICNmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG5cclxuOjpuZy1kZWVwICNidG9uLWdyYXktb3V0bGluZSAuZHgtYnV0dG9uLXRleHR7XHJcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuOjpuZy1kZWVwICNidG9uLWdyYXkgLmR4LWJ1dHRvbi10ZXh0e1xyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi5tb2RhbC1vcGVuIC5tb2RhbCB7XHJcbiAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vLyBzdGFydCBzb3J0YWJsZSBsaXN0XHJcblxyXG4ja2FuYmFuIHtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4ubGlzdDEge1xyXG4gIC8vIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAvLyBtYXJnaW46IDVweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDUsIDI0NSwgMjQ1KTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZmRmZGY7XHJcbiAgd2lkdGg6IDIwJTtcclxuICAvLyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWluLWhlaWdodDogMTAwdmg7XHJcblxyXG59XHJcblxyXG4ubGlzdC10aXRsZSB7XHJcbiAgZm9udC1zaXplOiAwLjlyZW07XHJcbiAgcGFkZGluZzogMTBweDtcclxuICAvLyBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uc2Nyb2xsYWJsZS1saXN0IHtcclxuICBoZWlnaHQ6IDQwMHB4O1xyXG4gIHdpZHRoOiA5OCU7XHJcbn1cclxuXHJcbi5zb3J0YWJsZS1jYXJkcyB7XHJcbiAgbWluLWhlaWdodDogMzgwcHhcclxufVxyXG5cclxuLmNhcmQxIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAvLyB3aWR0aDogMTAwJTtcclxuICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgbWFyZ2luOiAxMHB4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmNhcmQtc3ViamVjdCB7XHJcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi5jYXJkLWFzc2lnbmVlIHtcclxuICBvcGFjaXR5OiAwLjY7XHJcbn1cclxuXHJcbi5jYXJkLXByaW9yaXR5IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAxMHB4O1xyXG4gIGJvdHRvbTogMTBweDtcclxuICBsZWZ0OiA1cHg7XHJcbiAgd2lkdGg6IDVweDtcclxuICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgYmFja2dyb3VuZDogIzg2QzI4NTtcclxufVxyXG5cclxuLnByaW9yaXR5LTEge1xyXG4gIGJhY2tncm91bmQ6ICNBREFEQUQ7XHJcbn1cclxuXHJcbi5wcmlvcml0eS0yIHtcclxuICBiYWNrZ3JvdW5kOiAjODZDMjg1O1xyXG59XHJcblxyXG4ucHJpb3JpdHktMyB7XHJcbiAgYmFja2dyb3VuZDogI0VEQzU3ODtcclxufVxyXG5cclxuLnByaW9yaXR5LTQge1xyXG4gIGJhY2tncm91bmQ6ICNFRjdENTk7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAuZHgtc29ydGFibGUge1xyXG4gIGRpc3BsYXk6IGJsb2NrXHJcbn1cclxuXHJcbi8vZW5kIHNvcnRhYmxlIGxpc3RcclxuXHJcbiNzb3J0YWJsZXNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG4uc29ydGFibGVoZWlnaHR7XHJcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuXHJcbiNrYW5iYW4ge1xyXG53aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4ubGlzdDEge1xyXG4vLyBib3JkZXItcmFkaXVzOiA4cHg7XHJcbi8vIG1hcmdpbjogNXB4O1xyXG5iYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDUsIDI0NSwgMjQ1KTtcclxuZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG52ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG53aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG5ib3JkZXI6IDFweCBzb2xpZCAjZGZkZmRmO1xyXG53aWR0aDogMjAlO1xyXG4vLyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbm1pbi1oZWlnaHQ6IDEwMHZoO1xyXG5cclxufVxyXG5cclxuLmxpc3QtdGl0bGUge1xyXG5mb250LXNpemU6IDAuOXJlbTtcclxucGFkZGluZzogMTBweDtcclxuLy8gcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG5tYXJnaW4tYm90dG9tOiAtMTBweDtcclxuZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbmN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLnNjcm9sbGFibGUtbGlzdCB7XHJcbmhlaWdodDogNDAwcHg7XHJcbndpZHRoOiA5OCU7XHJcbn1cclxuXHJcbi5zb3J0YWJsZS1jYXJkcyB7XHJcbm1pbi1oZWlnaHQ6IDM4MHB4XHJcbn1cclxuXHJcbi5jYXJkMSB7XHJcbnBvc2l0aW9uOiByZWxhdGl2ZTtcclxuYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbmJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbi8vIHdpZHRoOiAxMDAlO1xyXG5wYWRkaW5nOiAxMHB4IDIwcHg7XHJcbm1hcmdpbjogMTBweDtcclxuY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uY2FyZC1zdWJqZWN0IHtcclxucGFkZGluZy1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi5jYXJkLWFzc2lnbmVlIHtcclxub3BhY2l0eTogMC42O1xyXG59XHJcblxyXG4uY2FyZC1wcmlvcml0eSB7XHJcbnBvc2l0aW9uOiBhYnNvbHV0ZTtcclxudG9wOiAxMHB4O1xyXG5ib3R0b206IDEwcHg7XHJcbmxlZnQ6IDVweDtcclxud2lkdGg6IDVweDtcclxuYm9yZGVyLXJhZGl1czogMnB4O1xyXG5iYWNrZ3JvdW5kOiAjODZDMjg1O1xyXG59XHJcblxyXG4ucHJpb3JpdHktMSB7XHJcbmJhY2tncm91bmQ6ICNBREFEQUQ7XHJcbn1cclxuXHJcbi5wcmlvcml0eS0yIHtcclxuYmFja2dyb3VuZDogIzg2QzI4NTtcclxufVxyXG5cclxuLnByaW9yaXR5LTMge1xyXG5iYWNrZ3JvdW5kOiAjRURDNTc4O1xyXG59XHJcblxyXG4ucHJpb3JpdHktNCB7XHJcbmJhY2tncm91bmQ6ICNFRjdENTk7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAuZHgtc29ydGFibGUge1xyXG5kaXNwbGF5OiBibG9ja1xyXG59XHJcblxyXG46Om5nLWRlZXAgI2dyaWRDb250YWluZXIge1xyXG5oZWlnaHQ6IDEwMCU7XHJcbndpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5cclxuLy9ib3RvbmVzXHJcbjo6bmctZGVlcCAjYnRvbi1ncmF5e1xyXG5jb2xvcjojMDAwIWltcG9ydGFudDtcclxufVxyXG5cclxuOjpuZy1kZWVwICNidG9uLWdyYXktb3V0bGluZXtcclxuYm9yZGVyOjFweCBzb2xpZCAjOWZhNGFiICFpbXBvcnRhbnQ7XHJcbmNvbG9yOiMwMDAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgI2J0b24tZ3JlZW57XHJcbmJhY2tncm91bmQtY29sb3I6ICM5NWM4M2QgIWltcG9ydGFudDtcclxuYm9yZGVyLWNvbG9yOiAjOTVjODNkICFpbXBvcnRhbnQ7XHJcbmNvbG9yOiAjZmZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgI2J0b24tZ3JlZW4gLmR4LWljb257XHJcbmNvbG9yOiAjZmZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuXHJcbjo6bmctZGVlcCAjYnRvbi1ncmF5LW91dGxpbmUgLmR4LWJ1dHRvbi10ZXh0e1xyXG5saW5lLWhlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG46Om5nLWRlZXAgI2J0b24tZ3JheSAuZHgtYnV0dG9uLXRleHR7XHJcbmxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbn1cclxuIiwiLmJ0bi1vdXRsaW5lLWdyYXkxIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzU4NTk1YjtcbiAgY29sb3I6ICM1ODU5NWI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4uYnRuLW91dGxpbmUtZ3JheTE6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICM1ODU5NWI7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU4NTk1Yjtcbn1cblxuLm1kYi13eXNpd3lnLXRleHRhcmVhIHtcbiAgaGVpZ2h0OiAxNTBweCAhaW1wb3J0YW50O1xuICAvKiBZb3VyIGRlc2lyZWQgaGVpZ2h0ICovXG59XG5cbi5keC1udW1iZXJib3ggPiBpbnB1dCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uZXJyb3ItbWVzc2FnZSB7XG4gIG1hcmdpbi1sZWZ0OiAxNnB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbjo6bmctZGVlcCAuaWNvbi1iIC5keC1idXR0b24tY29udGVudCAuZHgtaWNvbiB7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBjb2xvcjogIzAyNzVkODtcbn1cblxuOjpuZy1kZWVwIC5pY29uLWIgLmR4LWJ1dHRvbi1jb250ZW50IC5keC1idXR0b24tdGV4dCB7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBjb2xvcjogIzAyNzVkODtcbn1cblxuYm9keSAuY3VzdG9tLWl0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDdweDtcbiAgcGFkZGluZy1yaWdodDogN3B4O1xufVxuXG46Om5nLWRlZXAgLmN1c3RvbS1pdGVtID4gaW1nIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogNDBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi10b3A6IDJweDtcbn1cblxuOjpuZy1kZWVwIC5jdXN0b20taXRlbSA+IGRpdi5wcm9kdWN0LW5hbWUge1xuICBtYXJnaW4tbGVmdDogNDBweDtcbiAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuYm9keSAuY3VzdG9tLWl0ZW0gaW5wdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuYm9keSAuZHgtcG9wdXAtY29udGVudCAuY3VzdG9tLWl0ZW0ge1xuICBwYWRkaW5nLXRvcDogN3B4O1xuICBwYWRkaW5nLWJvdHRvbTogOHB4O1xufVxuXG46Om5nLWRlZXAgLmR4LXBvcHVwLWNvbnRlbnQgLmN1c3RvbS1pdGVtID4gZGl2IHtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHRleHQtaW5kZW50OiAwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmZvb3RlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbjo6bmctZGVlcCAjYnRvbi1ncmF5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzlmYTRhYiAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgI2J0b24tZ3JheS1vdXRsaW5lIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzlmYTRhYiAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgI2J0b24tZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTVjODNkICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZmYgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyZWVuIC5keC1pY29uIHtcbiAgY29sb3I6ICNmZmZmICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAjYnRvbi1ncmF5LW91dGxpbmUgLmR4LWJ1dHRvbi10ZXh0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyYXkgLmR4LWJ1dHRvbi10ZXh0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLm1vZGFsLW9wZW4gLm1vZGFsIHtcbiAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ja2FuYmFuIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmxpc3QxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGVzbW9rZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGZkZmRmO1xuICB3aWR0aDogMjAlO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuLmxpc3QtdGl0bGUge1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5zY3JvbGxhYmxlLWxpc3Qge1xuICBoZWlnaHQ6IDQwMHB4O1xuICB3aWR0aDogOTglO1xufVxuXG4uc29ydGFibGUtY2FyZHMge1xuICBtaW4taGVpZ2h0OiAzODBweDtcbn1cblxuLmNhcmQxIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBtYXJnaW46IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNhcmQtc3ViamVjdCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xufVxuXG4uY2FyZC1hc3NpZ25lZSB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuLmNhcmQtcHJpb3JpdHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTBweDtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiA1cHg7XG4gIHdpZHRoOiA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYmFja2dyb3VuZDogIzg2QzI4NTtcbn1cblxuLnByaW9yaXR5LTEge1xuICBiYWNrZ3JvdW5kOiAjQURBREFEO1xufVxuXG4ucHJpb3JpdHktMiB7XG4gIGJhY2tncm91bmQ6ICM4NkMyODU7XG59XG5cbi5wcmlvcml0eS0zIHtcbiAgYmFja2dyb3VuZDogI0VEQzU3ODtcbn1cblxuLnByaW9yaXR5LTQge1xuICBiYWNrZ3JvdW5kOiAjRUY3RDU5O1xufVxuXG46Om5nLWRlZXAgLmR4LXNvcnRhYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiNzb3J0YWJsZXNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zb3J0YWJsZWhlaWdodCB7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ja2FuYmFuIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmxpc3QxIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGVzbW9rZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGZkZmRmO1xuICB3aWR0aDogMjAlO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuLmxpc3QtdGl0bGUge1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5zY3JvbGxhYmxlLWxpc3Qge1xuICBoZWlnaHQ6IDQwMHB4O1xuICB3aWR0aDogOTglO1xufVxuXG4uc29ydGFibGUtY2FyZHMge1xuICBtaW4taGVpZ2h0OiAzODBweDtcbn1cblxuLmNhcmQxIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBtYXJnaW46IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNhcmQtc3ViamVjdCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xufVxuXG4uY2FyZC1hc3NpZ25lZSB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuLmNhcmQtcHJpb3JpdHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTBweDtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiA1cHg7XG4gIHdpZHRoOiA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYmFja2dyb3VuZDogIzg2QzI4NTtcbn1cblxuLnByaW9yaXR5LTEge1xuICBiYWNrZ3JvdW5kOiAjQURBREFEO1xufVxuXG4ucHJpb3JpdHktMiB7XG4gIGJhY2tncm91bmQ6ICM4NkMyODU7XG59XG5cbi5wcmlvcml0eS0zIHtcbiAgYmFja2dyb3VuZDogI0VEQzU3ODtcbn1cblxuLnByaW9yaXR5LTQge1xuICBiYWNrZ3JvdW5kOiAjRUY3RDU5O1xufVxuXG46Om5nLWRlZXAgLmR4LXNvcnRhYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbjo6bmctZGVlcCAjZ3JpZENvbnRhaW5lciB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbjo6bmctZGVlcCAjYnRvbi1ncmF5IHtcbiAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyYXktb3V0bGluZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5ZmE0YWIgIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwICNidG9uLWdyZWVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICM5NWM4M2QgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmZmICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAjYnRvbi1ncmVlbiAuZHgtaWNvbiB7XG4gIGNvbG9yOiAjZmZmZiAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgI2J0b24tZ3JheS1vdXRsaW5lIC5keC1idXR0b24tdGV4dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbjo6bmctZGVlcCAjYnRvbi1ncmF5IC5keC1idXR0b24tdGV4dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59Il19 */\"","// Sortable\r\nimport { moveItemInList } from 'mdb-sortable';\r\n// tables\r\nimport {\r\n Component, OnInit, ElementRef, HostListener,\r\n AfterViewInit, ViewChild, ChangeDetectorRef,\r\n QueryList, ViewChildren\r\n} from '@angular/core';\r\nimport { MdbTableDirective, MdbTablePaginationComponent, MdbBtnDirective, MDBModalRef } from 'ng-uikit-pro-standard';\r\n// mensage type toast\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\n// forms and validations\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ComponentsType, ComponentIndicator, ComponentChart, ChartDatasets, ChartColors, Dashboard } from 'src/app/models/component-data';\r\nimport { DasboardService } from 'src/app/services/dashboard.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { groupBy, mergeMap, toArray } from 'rxjs/operators';\r\nimport { from, Observable } from 'rxjs';\r\nimport { GetTypePipe } from 'src/app/custom-pipe/GetTypePipe';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { ProjectService } from 'src/app/services/project.service';\r\nimport { DatePipe } from '@angular/common';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'card-list-phases',\r\n templateUrl: './card-list-phases.component.html',\r\n styleUrls: ['./card-list-phases.component.scss']\r\n})\r\nexport class CardListPhasesComponent implements OnInit {\r\n \r\n segmentSelected = 1;\r\n segmentItems: any[] = [\r\n {\r\n Id: 1,\r\n Name: 'Status'\r\n },\r\n {\r\n Id: 2,\r\n Name: 'Phases'\r\n }\r\n ]\r\n lists: any[] = [];\r\n statuses: string[];\r\n ProyectsGrouped: any = [];\r\n DataPS = {\r\n Phase: [],\r\n Status: []\r\n }\r\n ProjectPhases = [];\r\n ProjectStatus = [];\r\n DataList = []\r\n gridDataSource: any[] = [];\r\n popup_bool: boolean = false;\r\n popup_bool_list: boolean = false;\r\n editinsert_SP: boolean = null;\r\n FormEditPhase: FormGroup;\r\n FormEditStatus: FormGroup;\r\n filterValue = [\r\n ['StatusName', '=', 'Not Started'],\r\n 'or',\r\n ['StatusName', \"=\", 'In Progress']\r\n ];\r\n DataProjectProgress: any[] = []\r\n todayButton: any;\r\n prevDateButton: any;\r\n nextDateButton: any;\r\n editapprovedbool: boolean = false;\r\n millisecondsInDay = 24 * 60 * 60 * 1000;\r\n DateFilter: any = new Date();\r\n dateFormat = '';\r\n moneyFormat = '';\r\n formProgressReport: FormGroup\r\n projectslist: any[] = []\r\n\r\n popupNewReport: boolean = false;\r\n popupEmailInvoice: boolean = false;\r\n\r\n constructor(\r\n private ProjectService: ProjectService,\r\n private datePipe: DatePipe,\r\n private translateService: TranslateService,\r\n // private translatePipe: TranslatePipe,\r\n private appConfigService: AppConfigService,\r\n public generalService: GeneralService,\r\n private toast: ToastService,\r\n private router: Router) {\r\n\r\n this.dateFormat = this.appConfigService.dateFormat;\r\n this.moneyFormat = this.appConfigService.moneyFormat;\r\n\r\n }\r\nprueba:boolean=false\r\n ngOnInit() {\r\n console.log(\"asda\")\r\n this.ProjectService.Get_ProjectByStatusandPhaseCE().subscribe(result => {\r\n this.DataList = result\r\n console.log(this.DataList)\r\n this.Get_ProjectStatus();\r\n this.Get_ProjectPhases();\r\n })\r\n }\r\n\r\n/********** Phases************************************* */\r\n\r\n Get_ProjectStatus() {\r\n this.ProjectStatus = []\r\n this.ProjectService.Get_ProjectStatus().subscribe(\r\n data => {\r\n this.DataPS.Status = data;\r\n data.map((val) => {\r\n if (val.ACTIVE) {\r\n let obj = {\r\n Id: val.ID,\r\n ACTIVE: val.ACTIVE,\r\n NAME: val.NAME,\r\n Filter: {\r\n pageindex: 1, pagesize: 30, orderid: 1, bidstatus: val.ID\r\n },\r\n Color: this.generalService.GetColorBidStatus(val.ID),\r\n Data: []\r\n }\r\n this.ProjectStatus.push(obj);\r\n return { // Return the new object structure\r\n label: val.NAME,\r\n value: val.ID\r\n };\r\n }\r\n });\r\n this.changeSegment();\r\n },\r\n err => {\r\n console.log(err);\r\n }\r\n );\r\n }\r\n\r\n Get_ProjectPhases() {\r\n this.ProjectPhases = []\r\n this.ProjectService.Get_ProjectPhasesCE().subscribe(\r\n data => {\r\n this.DataPS.Phase = data;\r\n data.map((val) => {\r\n if (val.ACTIVE) {\r\n let obj = {\r\n ID: val.ID,\r\n ACTIVE: val.ACTIVE,\r\n NAME: val.NAME,\r\n Filter: {\r\n pageindex: 1, pagesize: 30, orderid: 1, bidstatus: val.ID\r\n },\r\n Color: this.generalService.GetColorBidStatus(val.ID),\r\n Data: []\r\n }\r\n this.ProjectPhases.push(obj);\r\n return { // Return the new object structure\r\n label: val.NAME,\r\n value: val.ID\r\n };\r\n }\r\n });\r\n this.changeSegment();\r\n },\r\n err => {\r\n console.log(err);\r\n }\r\n );\r\n }\r\n\r\n changeSegment() {\r\n let values = [];\r\n console.log(this.segmentSelected)\r\n switch (this.segmentSelected) {\r\n case 1:\r\n values = this.ProjectStatus.map(({ ID }) => ID)\r\n break;\r\n case 2:\r\n values = this.ProjectPhases.map(({ ID }) => ID)\r\n break;\r\n default:\r\n values = []\r\n break;\r\n\r\n }\r\n\r\n this.GetLeadByField(values.join(','), null);\r\n }\r\n\r\n GetLeadByField(estatus = '', filter = null) {\r\n let type = this.segmentSelected;\r\n\r\n this.ProyectsGrouped = [];\r\n\r\n switch (type) {\r\n case 1:\r\n this.ProyectsGrouped = this.ProjectStatus;\r\n if (filter) {\r\n filter.pageindex = filter.pageindex + 1;\r\n } else {\r\n filter = { pageindex: 1, pagesize: 30, orderid: 1, bidstatus: estatus };\r\n }\r\n break;\r\n case 2:\r\n this.ProyectsGrouped = this.ProjectPhases;\r\n if (filter) {\r\n filter.pageindex = filter.pageindex + 1;\r\n } else {\r\n filter = { pageindex: 1, pagesize: 30, orderid: 1, bidstatus: estatus };\r\n }\r\n break;\r\n default:\r\n this.ProyectsGrouped = [];\r\n break;\r\n }\r\n for (let index = 0; index < this.DataList.length; index++) {\r\n const element = this.DataList[index];\r\n // console.log(element)\r\n let cuont: any;\r\n let boolexist: boolean = false;\r\n switch (this.segmentSelected) {\r\n case 1:\r\n cuont = this.ProyectsGrouped.find(x => x.NAME == element.Status);\r\n if (cuont) {\r\n cuont.Data.forEach(element2 => {\r\n if (element2.ID == element.ID) {\r\n boolexist = true;\r\n }\r\n });\r\n if (boolexist == false) {\r\n cuont.Data.push(element)\r\n }\r\n }\r\n\r\n break;\r\n case 2:\r\n cuont = this.ProyectsGrouped.find(x => x.NAME == element.Phase);\r\n if (cuont) {\r\n cuont.Data.forEach(element2 => {\r\n\r\n if (element2.ID == element.ID) {\r\n boolexist = true;\r\n }\r\n });\r\n if (boolexist == false) {\r\n cuont.Data.push(element)\r\n }\r\n }\r\n break;\r\n }\r\n }\r\n // for (let i = 0; i < 30; i++) {\r\n // this.ProyectsGrouped.push(this.ProyectsGrouped[0])\r\n // }\r\n this.prueba = true\r\n }\r\n\r\n onTaskDragStart(e) {\r\n e.itemData = e.fromData[e.fromIndex];\r\n }\r\n\r\n onTaskDrop(e, item) {\r\n switch (this.segmentSelected) {\r\n case 1:\r\n this.ProjectService.ProjectBillingStatusCE(e.itemData.ID, item.Id).subscribe(result => {\r\n e.fromData.splice(e.fromIndex, 1);\r\n e.toData.splice(e.toIndex, 0, e.itemData);\r\n // this.GetLeadByField(item.Id, item.Filter);\r\n });\r\n break;\r\n case 2:\r\n this.ProjectService.Update_ProjectPhasesCE(e.itemData.ID, item.ID).subscribe(result => {\r\n e.fromData.splice(e.fromIndex, 1);\r\n e.toData.splice(e.toIndex, 0, e.itemData);\r\n // this.GetLeadByField(item.Id, item.Filter);\r\n });\r\n break;\r\n }\r\n\r\n }\r\n\r\n inicializarScroll() {\r\n // para poder eliminar el loading que crea el control por defecto\r\n $('.dx-scrollview-scrollbottom-indicator').remove();\r\n }\r\n\r\n splip_icon(data, index) {\r\n let value: string = data.ico_Status;\r\n let splititem;\r\n if (value != null) {\r\n splititem = value.split(\"/\");\r\n } else {\r\n splititem = [\" \", \" \"]\r\n }\r\n return splititem[index];\r\n }\r\n\r\n save_edit(event) {\r\n this.popup_bool = false;\r\n this.popup_bool_list = false;\r\n let item = event.data;\r\n if (item.NAME == undefined) {\r\n this.toast.error(\"requires NAME\")\r\n this.Get_ProjectStatus();\r\n this.Get_ProjectPhases();\r\n return false;\r\n }\r\n if (item.SORT == undefined) {\r\n this.toast.error(\"requires SORT\")\r\n this.Get_ProjectStatus();\r\n this.Get_ProjectPhases();\r\n return false;\r\n }\r\n switch (this.segmentSelected) {\r\n case 1:\r\n if (item.NAME == undefined) {\r\n this.toast.error(\"requires NAME\")\r\n this.Get_ProjectStatus();\r\n return false;\r\n }\r\n if (item.SORT == undefined) {\r\n this.toast.error(\"requires SORT\")\r\n this.Get_ProjectStatus();\r\n return false;\r\n }\r\n item = {\r\n id: 0,\r\n active: item.ACTIVE == undefined ? true : item.ACTIVE,\r\n status: item.NAME == undefined ? '' : item.NAME,\r\n sort: item.SORT == undefined ? '' : item.SORT,\r\n };\r\n this.ProjectService.Get_InserUpdateProjectStatusCE(item).subscribe(data => {\r\n this.toast.success(\"successfully updated\")\r\n this.Get_ProjectStatus();\r\n }, err => {\r\n this.toast.error(err)\r\n })\r\n break;\r\n case 2:\r\n if (item.NAME == undefined) {\r\n this.toast.error(\"requires NAME\")\r\n this.Get_ProjectPhases();\r\n return false;\r\n }\r\n if (item.SORT == undefined) {\r\n this.toast.error(\"requires SORT\")\r\n this.Get_ProjectPhases();\r\n return false;\r\n }\r\n item = {\r\n id: 0,\r\n active: item.ACTIVE == undefined ? true : item.ACTIVE,\r\n name: item.NAME == undefined ? '' : item.NAME,\r\n sort: item.SORT == undefined ? '' : item.SORT,\r\n decripton: item.DESCRIPTION == undefined ? '' : item.DESCRIPTION\r\n };\r\n this.ProjectService.Get_InserUpdateProjectPhasesCE(item).subscribe(data => {\r\n this.toast.success(\"successfully updated\")\r\n this.Get_ProjectPhases();\r\n }, err => {\r\n this.toast.error(err)\r\n })\r\n break;\r\n }\r\n }\r\n \r\n width_calculate(length) {\r\n let wd = (100 / length.length) + \"%\"\r\n return wd;\r\n }\r\n\r\n view_item_phase_status() {\r\n this.editinsert_SP = true;\r\n this.popup_bool = true;\r\n this.popup_bool_list = true;\r\n }\r\n \r\n onListReorder(e) {\r\n const list = this.lists.splice(e.fromIndex, 1)[0];\r\n this.lists.splice(e.toIndex, 0, list);\r\n\r\n const status = this.statuses.splice(e.fromIndex, 1)[0];\r\n this.statuses.splice(e.toIndex, 0, status);\r\n }\r\n\r\n update(obj) {\r\n let olddata = obj.oldData;\r\n let newData = obj.newData;\r\n let item\r\n switch (this.segmentSelected) {\r\n case 1:\r\n item = {\r\n id: olddata.ID,\r\n active: newData.ACTIVE == undefined ? olddata.ACTIVE : newData.ACTIVE,\r\n status: newData.NAME ? newData.NAME : olddata.NAME,\r\n sort: newData.SORT ? newData.SORT : olddata.SORT,\r\n };\r\n this.ProjectService.Get_InserUpdateProjectStatusCE(item).subscribe(data => {\r\n this.toast.success(\"successfully updated\")\r\n this.Get_ProjectStatus();\r\n })\r\n break;\r\n case 2:\r\n item = {\r\n id: olddata.ID,\r\n active: newData.ACTIVE == undefined ? olddata.ACTIVE : newData.ACTIVE,\r\n name: newData.NAME ? newData.NAME : olddata.NAME,\r\n sort: newData.SORT ? newData.SORT : olddata.SORT,\r\n decripton: newData.DESCRIPTION ? newData.DESCRIPTION : olddata.DESCRIPTION\r\n };\r\n this.ProjectService.Get_InserUpdateProjectPhasesCE(item).subscribe(data => {\r\n this.toast.success(\"successfully updated\")\r\n this.Get_ProjectPhases();\r\n })\r\n break;\r\n }\r\n }\r\n\r\n GoEditProject(data){\r\n this.router.navigate(['editProject'], { queryParams: { numID: data.ID } });\r\n }\r\n\r\n\r\n /************************************* */\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SharedDatagridModule } from 'src/app/shared/shared-datagrid/shared-datagrid.module';\r\nimport { DxButtonModule, DxDataGridModule } from \"devextreme-angular\";\r\nimport { CardListPhasesComponent } from './card-list-phases.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DashboardModule } from 'src/app/shared/shared-dashboard/dashboard.module';\r\nimport { DxTagBoxModule, DxScrollViewModule, DxTextBoxModule, DxPopupModule, DxSelectBoxModule, DxDateBoxModule, DxTabPanelModule, DxAccordionModule, DxButtonGroupModule, DxCheckBoxModule, DxRangeSliderModule, DxDropDownButtonModule, DxRadioGroupModule, DxFileUploaderModule, DxToolbarModule, DxSortableModule } from \"devextreme-angular\";\r\n@NgModule({\r\n declarations: [\r\n CardListPhasesComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n SharedDatagridModule,\r\n DxButtonModule,\r\n MdbGlobalModule,\r\n DashboardModule,\r\n DxDataGridModule,\r\n DxTagBoxModule, \r\n DxScrollViewModule, \r\n DxTextBoxModule, \r\n DxPopupModule, \r\n DxSelectBoxModule, \r\n DxDateBoxModule, \r\n DxTabPanelModule, \r\n DxAccordionModule, \r\n DxButtonGroupModule,\r\n DxCheckBoxModule, \r\n DxRangeSliderModule,\r\n DxDropDownButtonModule, \r\n DxRadioGroupModule, \r\n DxFileUploaderModule, \r\n DxToolbarModule, \r\n DxSortableModule\r\n ],\r\n exports: [CardListPhasesComponent]\r\n})\r\nexport class CardListPhasesModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3Byb2plY3QtbWFuYWdlbWVudC9lZGl0LXByb2plY3QvbmV3LXByb2dyZXNzLXJlcG9ydC9uZXctcHJvZ3Jlc3MtcmVwb3J0LmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { ProjectService } from 'src/app/services/project.service';\r\nimport { TaskService } from 'src/app/services/task.service';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { SalesProjectService } from 'src/app/services/sales-project.service';\r\nimport { EmployeesService } from 'src/app/services/employees.service';\r\nimport { DriveserviceService } from 'src/app/services/driveservice.service';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\n@Component({\r\n selector: 'app-new-progress-report',\r\n templateUrl: './new-progress-report.component.html',\r\n styleUrls: ['./new-progress-report.component.scss']\r\n})\r\nexport class NewProgressReportComponent implements OnInit {\r\n\r\n @Input() popupComments = false;\r\n @Input() projectid = 0;\r\n @Input() idPR = undefined;\r\n @Output() onmodalhidden = new EventEmitter();\r\n @Output() onsubmit = new EventEmitter();\r\n\r\n hasproject = false;\r\n cancelButton: any;\r\n saveButton: any;\r\n\r\n //Editor HTML\r\n bodyHtml: any = \"\";\r\n bodyhtmlrecibido: any = \"\";\r\n itemsEditorTurnOverSheet: any = [\r\n\r\n \"undo\", \"redo\", \"separator\",\r\n\r\n {\r\n name: \"size\",\r\n acceptedValues: [\"8pt\", \"10pt\", \"12pt\", \"14pt\", \"18pt\", \"24pt\", \"36pt\"]\r\n },\r\n {\r\n name: \"font\",\r\n acceptedValues: [\"Arial\", \"Courier New\", \"Georgia\", \"Impact\", \"Lucida Console\", \"Tahoma\", \"Times New Roman\", \"Verdana\"]\r\n },\r\n\r\n \"separator\", \"bold\", \"italic\", \"strike\", \"underline\", \"separator\",\r\n \"alignLeft\", \"alignCenter\", \"alignRight\", \"alignJustify\", \"increaseIndent\",\r\n \"decreaseIndent\", \"separator\",\r\n \"orderedList\", \"bulletList\", \"separator\",\r\n\r\n {\r\n name: \"header\",\r\n acceptedValues: [false, 1, 2, 3, 4, 5]\r\n },\r\n\r\n \"color\",\"background\",\"link\", \"clear\",\"codeBlock\",\"blockquote\", \"separator\", \"insertTable\",\"deleteTable\",\r\n \"insertRowAbove\",\"insertRowBelow\",\"deleteRow\",\"insertColumnLeft\",\"insertColumnRight\",\r\n \"deleteColumn\",\"cellProperties\",\"tableProperties\",\r\n ];\r\n\r\n private _info: any;\r\n\r\n disableIconLink: boolean = false;\r\n DocumentsButton: { text: string; icon: string; elementAttr: { id: string; }; onClick: () => void;};\r\n showNew:boolean = true\r\n @Input('info')\r\n set info(info: any) {\r\n this._info = info;\r\n console.log('Data en Edit ', info);\r\n if (info.AllData != undefined){\r\n if (info.AllData.ATTACHMENT != undefined){\r\n this.showNew = false\r\n }\r\n }\r\n if (this.formProgressReport && info) {\r\n console.log(this.idPR)\r\n this.bodyHtml = info.pdescription;\r\n this.formProgressReport.get('id').setValue(info.id);\r\n this.formProgressReport.get('projectid').setValue(info.projectid);\r\n this.formProgressReport.get('pdescription').setValue(info.pdescription);\r\n this.hasproject = true;\r\n }\r\n // if (info && info.infoid > 0)\r\n // this.setinfoInfo(info);\r\n }\r\n\r\n formProgressReport: FormGroup = new FormGroup({\r\n createdbyid: new FormControl('', []),\r\n pdescription: new FormControl('', []),\r\n projectid: new FormControl(this.projectid, []),\r\n id: new FormControl(0, [])\r\n });\r\n\r\n projectslist: any;\r\n popupDocument = false;\r\n actionDocument = 'New Document';\r\n\r\n\r\n constructor(\r\n private googleDrivePickerService: DriveserviceService,\r\n private MapInformationService:MapInformationService,\r\n private salesProjectService: SalesProjectService,\r\n private projectService: ProjectService,\r\n private translate:TranslateService,\r\n private employee: EmployeesService,\r\n private taskService: TaskService,\r\n private toast: ToastService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.cancelButton = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupComments = false;\r\n this.close();\r\n },\r\n };\r\n\r\n this.saveButton = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.addNewComment();\r\n },\r\n };\r\n\r\n this.DocumentsButton = {\r\n text: \"New Document\",\r\n icon: 'plus',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n console.log(this.projectid)\r\n this.popupDocument = true;\r\n this.actionDocument = 'New Document';\r\n this.initDocumentForm();\r\n this.getDocumentType();\r\n this.getEmployee();\r\n },\r\n };\r\n\r\n let mythis = this;\r\n this.projectslist = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n return mythis.taskService.GetProjectByName(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n }\r\n\r\n uploadingFile: boolean;\r\n _documentForm: FormGroup;\r\n optionsFile: any[] = ['Upload File to Cube','Select External File'];\r\n valueOptionsFile = this.optionsFile[0];\r\n\r\n initDocumentForm() {\r\n this.uploadingFile = true;\r\n\r\n console.log(this._info)\r\n\r\n if (this._info.AllData != undefined){\r\n this._documentForm = new FormGroup({\r\n name: new FormControl({ value: this._info.AllData.NAME, disabled: false }, [Validators.required]),\r\n documenttypeid: new FormControl({ value: this._info.AllData.DOCUMENTTYPEID, disabled: false }, [Validators.required]),\r\n documentrevision: new FormControl({ value: this._info.AllData.REVISION, disabled: false }, [Validators.required]),\r\n revisionnotes: new FormControl({ value: this._info.AllData.REVISIONNOTES, disabled: false }, []),\r\n description: new FormControl({ value: this._info.AllData.DESCRIPTION, disabled: false }, []),\r\n attachment: new FormControl({ value: this._info.AllData.ATTACHMENT, disabled: false }, []), //Nombre de file con extensión\r\n projectid: new FormControl({ value: this.projectid, disabled: false }, []),\r\n optionFile: new FormControl({ value: this.valueOptionsFile, disabled: false }, []),\r\n id: new FormControl({ value: this._info.AllData.DOC_ID == undefined ? 0 : this._info.AllData.DOC_ID, disabled: false }, []),\r\n restricted: new FormControl({ value: false, disabled: false }, []),\r\n });\r\n this._documentForm.addControl('hyperlink', new FormControl({ value: this._info.AllData.HYPERLINK, disabled: false }, []))\r\n let upload;\r\n this.selectedTabPopup = 0\r\n if(this._info.AllData.ATTACHMENT !='' && this._info.AllData.ATTACHMENT != undefined){\r\n this.uploadingFile = true;\r\n this.MapInformationService.GetDocument(this._info.AllData.FILEPATH).subscribe(result => {\r\n let typeMime=[]\r\n\r\n if(this._info.AllData.ATTACHMENT != undefined && this._info.AllData.ATTACHMENT != null){\r\n typeMime = this._info.AllData.ATTACHMENT.toString().split(\".\")\r\n } else {\r\n typeMime = [\"\",\"document\"]\r\n }\r\n\r\n this.File = new File ([result.filestring], this._info.AllData.ATTACHMENT, {type:typeMime[1]});\r\n if(this.File!==null){\r\n\r\n this._documentForm.get('attachment').setValue(this.File.name);\r\n this.valueDocument = [this.File]\r\n this.attachment = result.filestring\r\n this.selectedFile = result.filestring\r\n this.changeBase64 = false;\r\n }\r\n })\r\n this.selectedTabPopup = 0;\r\n this.valueOptionsFile = this.optionsFile[0];\r\n }else{\r\n // this.selectedTabPopup = 1;\r\n }\r\n this.externalLink = this._info.AllData.HYPERLINK;\r\n\r\n } else {\r\n this._documentForm = new FormGroup({\r\n name: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n documenttypeid: new FormControl({ value: \"\", disabled: false }, [Validators.required]),\r\n documentrevision: new FormControl({ value: null, disabled: false }, [Validators.required]),\r\n revisionnotes: new FormControl({ value: '', disabled: false }, []),\r\n description: new FormControl({ value: '', disabled: false }, []),\r\n attachment: new FormControl({ value: '', disabled: false }, []), //Nombre de file con extensión\r\n projectid: new FormControl({ value: this.projectid, disabled: false }, []),\r\n optionFile: new FormControl({ value: this.valueOptionsFile, disabled: false }, []),\r\n id: new FormControl({ value: 0, disabled: false }, []),\r\n restricted: new FormControl({ value: false, disabled: false }, []),\r\n });\r\n this._documentForm.addControl('hyperlink', new FormControl({ value: '', disabled: false }, []))\r\n\r\n }\r\n\r\n }\r\n\r\n documentTypeSelect:any[]=[]\r\n\r\n getDocumentType() {\r\n this.salesProjectService.GetProjectDocumentType().subscribe(result => {\r\n this.documentTypeSelect = result;\r\n });\r\n }\r\n\r\n employeeSelect:any[]=[]\r\n\r\n getEmployee() {\r\n this.employee.GetAll().subscribe(result => {\r\n this.employeeSelect = result.map((val) => {\r\n return { // Return the new object structure\r\n label: val.CONTACTNAME,\r\n value: val.ID\r\n };\r\n });\r\n });\r\n }\r\n\r\n\r\n updateProjectInfo(ev) {\r\n console.log(ev);\r\n if(ev.selectedItem)\r\n this.formProgressReport.get('projectid').setValue(ev.selectedItem.ID);\r\n else\r\n this.formProgressReport.get('projectid').setValue(0);\r\n }\r\n\r\n close() {\r\n console.log(\"CERRANDO POPUP??\")\r\n this.popupComments = false;\r\n this.onmodalhidden.emit();\r\n this.initForm();\r\n this.hasproject = false;\r\n }\r\n\r\n initForm() {\r\n this.formProgressReport = new FormGroup({\r\n createdbyid: new FormControl('', []),\r\n pdescription: new FormControl('', []),\r\n projectid: new FormControl(0, []),\r\n id: new FormControl(0, [])\r\n });\r\n\r\n }\r\n\r\n //Progress Report\r\n addNewComment(){\r\n let form = this.formProgressReport.value;\r\n // form.projectid = this.projectid;\r\n \r\n form.pdescription = this.bodyHtml;\r\n\r\n if (!form.projectid || form.projectid ==0) {\r\n this.toast.warning(this.translate.instant('msgSelProj'));\r\n return;\r\n }\r\n\r\n form.createdbyid = localStorage.getItem('customerid');\r\n console.log('FORM ', form);\r\n this.projectService.InsertProgressReport(form).subscribe(result=>{\r\n\r\n this.idPR = result[0].ID\r\n this.toast.success(this.translate.instant('msgRepUpdSucc'));\r\n // this.popupComments = false;\r\n this.onsubmit.emit();\r\n this.close();\r\n // this.getProgressReport();\r\n })\r\n }\r\n\r\n //Editor HTML\r\n asignarValue(event){\r\n let search = event.value.includes('href=');\r\n let separado = event.value.split('href=\"');\r\n if(search !== -1 && separado.length > 1){\r\n console.log('Separado ', separado);\r\n\r\n for (let i = 1; i < separado.length; i++) {\r\n console.log('Test ', separado[i].substr(0,2));\r\n if(separado[i].substr(0,2) !== '//' && separado[i].substr(0,5) !== 'https'){\r\n separado[i] = 'href=\"//' + separado[i];\r\n }else{\r\n separado[i] = 'href=\"' + separado[i];\r\n }\r\n console.log(separado[i]);\r\n }\r\n\r\n console.log('AQUI FINAL ? ', separado);\r\n \r\n this.bodyHtml = separado.join(' ');\r\n }else{\r\n this.bodyHtml = event.value;\r\n }\r\n\r\n // console.log('HTML ', this.bodyHtml);\r\n }\r\n\r\n File:File;\r\n valueDocument: any[] = [];\r\n selectedFile: any=\"\";\r\n attachment:any=\"\";\r\n showModalDelete:boolean=false\r\n idDocument:any\r\n externalLink: any = '';\r\n selectedTabPopup: any = 0;\r\n\r\n\r\n closePopupDocument(){\r\n this.valueDocument=[];\r\n this.selectedFile = '';\r\n this.externalLink = '';\r\n this.selectedTabPopup = 0;\r\n }\r\n\r\n submitDocument(saveandnew = false) {\r\n let form = this._documentForm.value;\r\n\r\n if(this.selectedFile.length == 0 && this.externalLink.length == 0 ){\r\n this.toast.warning('Select a File to Save');\r\n return this._documentForm.invalid;\r\n }\r\n\r\n // form[this.insertDocument.name_id] = this.itemid;\r\n\r\n // if(this.itemid2 != undefined) {\r\n // form[this.insertDocument.name_id] = this.itemid2;\r\n // }\r\n\r\n this.projectid!==null && this.projectid!==undefined ? form.projectid = this.projectid : '';\r\n\r\n form.method = \"Insert_ProjectAttachment\";\r\n\r\n console.log(this.idPR)\r\n\r\n // if(this.itemid2 != undefined) {\r\n // form[this.insertDocument.name_id] = this.itemid2;\r\n // }\r\n\r\n form.doctypeid = form.documenttypeid\r\n form.restricted = form.restricted == true ? 1 : 0\r\n form.progressid = this.idPR\r\n console.log('FORM ', form);\r\n \r\n this.salesProjectService.InsertDocuments(form).subscribe(result=>{\r\n console.log('INSERTED BD ', result);\r\n this.popupDocument = false;\r\n\r\n if(result[0].ReturnID != undefined) {\r\n this.salesProjectService.SaveDocumentDinamico(form.name, this.selectedFile, result[0].ReturnID, \"projectdoc\")\r\n .subscribe((resp)=>{\r\n if ((typeof result[\"result\"] != \"undefined\") && (result[\"result\"].toString() == '0')){\r\n this.resetFormAfterSubmit();\r\n }else{\r\n this.resetFormAfterSubmit();\r\n }\r\n },error=>{\r\n console.log('Error ', error);\r\n this.toast.error('Error');\r\n });\r\n }\r\n\r\n this.externalLink = \"\";\r\n this.selectedFile = \"\";\r\n\r\n },error=>{\r\n this.resetFormAfterSubmit();\r\n })\r\n }\r\n\r\n resetFormAfterSubmit(){\r\n this.initDocumentForm();\r\n this.toast.success(this.translate.instant('msgDocInfoUpdSucc'));\r\n this.selectedFile = '';\r\n this.valueDocument=[];\r\n // this.getProjectDocument();\r\n this.onsubmit.emit();\r\n }\r\n\r\n NewDocument(){\r\n this.popupDocument = true;\r\n this.actionDocument = 'New Document';\r\n this.initDocumentForm();\r\n this.getDocumentType();\r\n this.getEmployee();\r\n this.valueDocument = []\r\n }\r\n\r\n changeBase64:boolean= true\r\n\r\n changeFile(ev) {\r\n if(this.changeBase64 && ev.value[0] && ev.value[0].size < 40000000){\r\n this._documentForm.get('attachment').setValue(ev.value[0].name);\r\n this.getBase64(ev.value[0]);\r\n } else {\r\n this.changeBase64 = true;\r\n }\r\n }\r\n\r\n getBase64(file) {\r\n const mythis = this\r\n var reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = function () {\r\n let data = reader.result.toString().split(\",\")\r\n mythis.attachment = data[1]\r\n mythis.selectedFile = data[1];\r\n };\r\n reader.onerror = function (error) {\r\n };\r\n }\r\n\r\n BorrarDocument(){\r\n this.valueDocument = [];\r\n this.selectedFile = '';\r\n this._documentForm.get('attachment').setValue('');\r\n }\r\n\r\n enableIconLink(e){\r\n\r\n if(e.length > 0){\r\n this.disableIconLink = true;\r\n }else{\r\n this.disableIconLink = false;\r\n }\r\n // this.editLinkButton.disabled = this.disableIconLink;\r\n }\r\n\r\n dominioactual: any;\r\n modalCookies: boolean = false;\r\n\r\n openGoogleDrivePicker(): void {\r\n this.googleDrivePickerService.open((data) => {\r\n if (data.action === 'picked') {\r\n this.externalLink = data.docs[0].url;\r\n this._documentForm.get('hyperlink').setValue(data.docs[0].url)\r\n }else if (data.details == \"Cookies are not enabled in current environment.\"){\r\n this.dominioactual = document.domain;\r\n this.modalCookies = true;\r\n }\r\n })\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NewProgressReportComponent } from './new-progress-report.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DxAutocompleteModule, DxHtmlEditorModule, DxToolbarModule, DxButtonModule, DxPopupModule, DxScrollViewModule, DxTextAreaModule, DxTagBoxModule, DxTextBoxModule, DxGalleryModule, DxDataGridModule, DxTabPanelModule, DxTileViewModule, DxNumberBoxModule, DxAccordionModule, DxSelectBoxModule, DxRadioGroupModule, DxFileUploaderModule, DxTooltipModule, DxCheckBoxModule } from 'devextreme-angular';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [NewProgressReportComponent],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxTextAreaModule,\r\n DxButtonModule,\r\n DxAutocompleteModule,\r\n DxHtmlEditorModule,\r\n DxToolbarModule,\r\n DxTagBoxModule,\r\n DxTextBoxModule,\r\n DxGalleryModule,\r\n DxDataGridModule,\r\n DxTabPanelModule,\r\n DxTileViewModule,\r\n DxNumberBoxModule,\r\n DxAccordionModule,\r\n DxSelectBoxModule,\r\n DxRadioGroupModule,\r\n DxFileUploaderModule,\r\n DxTooltipModule,\r\n DxCheckBoxModule\r\n\r\n ], \r\n exports: [NewProgressReportComponent]\r\n})\r\nexport class NewProgressReportModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3Byb2plY3QtbWFuYWdlbWVudC9lZGl0LXByb2plY3QvbmV3LXB1c2gtbGlzdC1pdGVtL25ldy1wdXNoLWxpc3QtaXRlbS5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { OpenPunchListService } from 'src/app/services/open-punch-list.service';\r\nimport { TaskService } from 'src/app/services/task.service';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport Popup from 'devextreme/ui/popup';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'app-new-push-list-item',\r\n templateUrl: './new-push-list-item.component.html',\r\n styleUrls: ['./new-push-list-item.component.scss']\r\n})\r\nexport class NewPushListItemComponent implements OnInit {\r\n newPunchList: FormGroup;\r\n hasproject = false;\r\n now = new Date();\r\n projectslist: any;\r\n\r\n\r\n @Input() projectid: any;\r\n private _projectInfo: any;\r\n\r\n @Input('projectInfo')\r\n set projectInfo(projectInfo: any) {\r\n this._projectInfo = projectInfo;\r\n\r\n if (this.newPunchList && projectInfo) {\r\n console.log(this._projectInfo)\r\n this.newPunchList.get('Project').setValue(projectInfo.NAME);\r\n this.hasproject = true;\r\n }\r\n // if (projectInfo && projectInfo.projectInfoid > 0)\r\n // this.setprojectInfoInfo(projectInfo);\r\n }\r\n\r\n get projectInfo(): any { return this._projectInfo; }\r\n\r\n\r\n @Input() popupOpenPunchList = false;\r\n @Output() onmodalhidden = new EventEmitter();\r\n @Output() onsubmit = new EventEmitter();\r\n\r\n todayButton: any;\r\n prevDateButton: any;\r\n nextDateButton: any;\r\n\r\n todayButtonReview: any;\r\n prevDateButtonReview: any;\r\n nextDateButtonReview: any;\r\n\r\n todayButtonClose: any;\r\n prevDateButtonClose: any;\r\n nextDateButtonClose: any;\r\n\r\n millisecondsInDay = 24 * 60 * 60 * 1000;\r\n\r\n cancelButton: any;\r\n saveButton: any;\r\n dateFormat: any;\r\n\r\n constructor(\r\n private openPunchList: OpenPunchListService,\r\n private toast: ToastService,\r\n private taskService: TaskService,\r\n private appconfig: AppConfigService,\r\n private translate:TranslateService) {\r\n this.dateFormat = this.appconfig.dateFormat;\r\n\r\n Popup.defaultOptions({\r\n device: { deviceType: \"phone\" },\r\n options: {\r\n fullScreen: true\r\n }\r\n });\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.initForm();\r\n\r\n this.cancelButton = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupOpenPunchList = false;\r\n this.close();\r\n },\r\n };\r\n\r\n this.saveButton = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.savePunchList();\r\n },\r\n };\r\n\r\n let mythis = this;\r\n this.projectslist = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n return mythis.taskService.GetProjectByName(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n\r\n this.todayButton = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n //this.now = new Date();\r\n this.newPunchList.get('OpenDate').setValue(new Date());\r\n // this.modelRelease.date = this.convertdate(this.now.getTime() - this.millisecondsInDay)\r\n }\r\n };\r\n this.prevDateButton = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n // this.now = new Date(this.now) 14289532\r\n let date = this.newPunchList.get('OpenDate').value;\r\n\r\n date = date ? date : new Date();\r\n this.newPunchList.get('OpenDate').setValue(this.convertdate(date.getTime() - this.millisecondsInDay));\r\n }\r\n };\r\n\r\n this.nextDateButton = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n //this.now = new Date(this.now)\r\n let date = this.newPunchList.get('OpenDate').value;\r\n\r\n date = date ? date : new Date();\r\n this.newPunchList.get('OpenDate').setValue(this.convertdate(date.getTime() + this.millisecondsInDay));\r\n }\r\n };\r\n\r\n\r\n this.todayButtonReview = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n this.now = new Date();\r\n this.newPunchList.get('ReviewedDate').setValue(new Date());\r\n // this.modelRelease.date = this.convertdate(this.now.getTime() - this.millisecondsInDay)\r\n }\r\n };\r\n this.prevDateButtonReview = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n // this.now = new Date(this.now) 14289532\r\n let date = this.newPunchList.get('ReviewedDate').value;\r\n\r\n date = date ? date : new Date();\r\n this.newPunchList.get('ReviewedDate').setValue(this.convertdate(date.getTime() - this.millisecondsInDay));\r\n }\r\n };\r\n\r\n this.nextDateButtonReview = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n //this.now = new Date(this.now)\r\n let date = this.newPunchList.get('ReviewedDate').value;\r\n\r\n date = date ? date : new Date();\r\n this.newPunchList.get('ReviewedDate').setValue(this.convertdate(date.getTime() + this.millisecondsInDay));\r\n }\r\n };\r\n\r\n\r\n this.todayButtonClose = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n this.now = new Date();\r\n this.newPunchList.get('CloseDate').setValue(new Date());\r\n // this.modelRelease.date = this.convertdate(this.now.getTime() - this.millisecondsInDay)\r\n }\r\n };\r\n this.prevDateButtonClose = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n // this.now = new Date(this.now) 14289532\r\n let date = this.newPunchList.get('CloseDate').value;\r\n\r\n date = date ? date : new Date();\r\n this.newPunchList.get('CloseDate').setValue(this.convertdate(date.getTime() - this.millisecondsInDay));\r\n }\r\n };\r\n\r\n this.nextDateButtonClose = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n //this.now = new Date(this.now)\r\n let date = this.newPunchList.get('CloseDate').value;\r\n\r\n date = date ? date : new Date();\r\n this.newPunchList.get('CloseDate').setValue(this.convertdate(date.getTime() + this.millisecondsInDay));\r\n }\r\n };\r\n }\r\n\r\n CancelPopup(){\r\n this.popupOpenPunchList = false;\r\n this.close();\r\n }\r\n\r\n convertdate(str) {\r\n var date = new Date(str)\r\n var day: any = date.getDate()\r\n var month: any = date.getMonth() + 1;\r\n return new Date([date.getFullYear(), month, day].join(\"-\") + \" 00:00:00\");\r\n }\r\n\r\n // popup punch list\r\n initForm() {\r\n console.log('Open Popup')\r\n // this.popupOpenPunchList = true;\r\n let today = new Date(Date.now())\r\n\r\n let projectname = this.projectInfo ? this.projectInfo.NAME : '';\r\n let itemName = this.projectInfo ? this.projectInfo.itemname : '';\r\n // console.log(projectname)\r\n // console.log(this.projectInfo.name)\r\n // console.log(this.projectInfo)\r\n this.newPunchList = new FormGroup({\r\n Project: new FormControl(projectname, []),\r\n ItemName: new FormControl(itemName, []),\r\n OpenDate: new FormControl(today, []),\r\n Responsible: new FormControl('', []),\r\n Reviewed: new FormControl('', []),\r\n ReviewedDate: new FormControl('', []),\r\n Closed: new FormControl('', []),\r\n CloseDate: new FormControl('', []),\r\n Description: new FormControl('', []),\r\n })\r\n\r\n }\r\n\r\n close() {\r\n this.popupOpenPunchList = false;\r\n this.onmodalhidden.emit();\r\n this.initForm();\r\n }\r\n\r\n savePunchList(){\r\n let form = this.newPunchList.value;\r\n let idUser = localStorage.getItem('customerid');\r\n let itemReviewed;\r\n form.Reviewed == true ? itemReviewed = 1: itemReviewed = 0;\r\n\r\n if(!this.projectid) {\r\n this.toast.warning(this.translate.instant('msgProjName'));\r\n return;\r\n }\r\n\r\n console.log(form);\r\n this.openPunchList.InsertUpdateOpenItem(this.projectid, form.ItemName, form.OpenDate, form.Responsible, itemReviewed, form.ReviewedDate, form.Closed, form.CloseDate, form.Description )\r\n .subscribe(result=>{\r\n this.toast.success(this.translate.instant('msgOpItInfoUpdSucc'));\r\n this.onsubmit.emit();\r\n this.newPunchList.reset();\r\n this.popupOpenPunchList = false;\r\n })\r\n }\r\n\r\n updateProjectInfo(ev) {\r\n console.log(ev);\r\n if(ev.selectedItem)\r\n this.projectid = ev.selectedItem.ID;\r\n else\r\n this.projectid = 0;\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NewPushListItemComponent } from './new-push-list-item.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DxDateBoxModule, DxTextAreaModule , DxCheckBoxModule, DxButtonModule, DxPopupModule, DxScrollViewModule, DxTextBoxModule, DxAutocompleteModule } from 'devextreme-angular';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [NewPushListItemComponent],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxTextBoxModule,\r\n DxTextAreaModule,\r\n DxButtonModule,\r\n DxCheckBoxModule,\r\n DxDateBoxModule,\r\n DxAutocompleteModule\r\n ],\r\n exports: [NewPushListItemComponent]\r\n})\r\nexport class NewPushListItemModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3Byb2plY3QtbWFuYWdlbWVudC9lZGl0LXByb2plY3QvbmV3LXJmaS9uZXctcmZpLmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, Input, OnInit, Output, EventEmitter } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { EmployeesService } from 'src/app/services/employees.service';\r\nimport { OpenRifService } from 'src/app/services/open-rif.service';\r\nimport { TaskService } from 'src/app/services/task.service';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'app-new-rfi',\r\n templateUrl: './new-rfi.component.html',\r\n styleUrls: ['./new-rfi.component.scss']\r\n})\r\nexport class NewRfiComponent implements OnInit {\r\n // @Input() projectInfo: any;\r\n @Input() projectid: any;\r\n private _projectInfo: any;\r\n plusContactButton: { icon: string; type: string; hint: string; onClick: () => void; };\r\n\r\n @Input('projectInfo')\r\n set projectInfo(projectInfo: any) {\r\n this._projectInfo = projectInfo;\r\n\r\n if (this.newRFI && projectInfo) {\r\n this.newRFI.get('Project').setValue(projectInfo.ID + '-'+projectInfo.NAME);\r\n this.hasproject = true;\r\n }\r\n // if (projectInfo && projectInfo.projectInfoid > 0)\r\n // this.setprojectInfoInfo(projectInfo);\r\n }\r\n\r\n get projectInfo(): any { return this._projectInfo; }\r\n\r\n\r\n @Input() popupnewRFI:boolean;\r\n @Output() onmodalhidden = new EventEmitter();\r\n @Output() onsubmit = new EventEmitter();\r\n\r\n newRFI: FormGroup;\r\n sentTo: any;\r\n idSentTo: any;\r\n millisecondsInDay = 24 * 60 * 60 * 1000;\r\n today= new Date().getTime();\r\n dataRfi: Array;\r\n createdBy: any;\r\n priority: Array = [{id: 1 , name:'High'}, {id: 2, name: 'Normal'}, {id: 3, name:'Low'} ];\r\n rfiDate = {todayButton: {}, prevDateButton: {}, nextDateButton: {}, showDate: this.today};\r\n respondedByDate = {todayButton: {}, prevDateButton: {}, nextDateButton: {}, showDate: this.today};\r\n employees = [];\r\n projectslist: any;\r\n\r\n hasproject = false;\r\n\r\n popupExpandDescrip: boolean;\r\n popupExpandRes: boolean;\r\n\r\n cancelExpandDescripButton: any;\r\n saveExpandDescripButton: any;\r\n cancelExpandResButton: any;\r\n saveExpandResButton: any;\r\n \r\n RFIDescription: any;\r\n RFIResponse: any;\r\n\r\n cancelButton: any;\r\n saveButton: any;\r\n settings: any = {};\r\n\r\n itemsEditorTurnOverSheet: any = [\r\n\r\n \"undo\", \"redo\", \"separator\",\r\n\r\n {\r\n name: \"size\",\r\n acceptedValues: [\"8pt\", \"10pt\", \"12pt\", \"14pt\", \"18pt\", \"24pt\", \"36pt\"]\r\n },\r\n {\r\n name: \"font\",\r\n acceptedValues: [\"Arial\", \"Courier New\", \"Georgia\", \"Impact\", \"Lucida Console\", \"Tahoma\", \"Times New Roman\", \"Verdana\"]\r\n },\r\n\r\n \"separator\", \"bold\", \"italic\", \"strike\", \"underline\", \"separator\",\r\n \"alignLeft\", \"alignCenter\", \"alignRight\", \"alignJustify\", \"increaseIndent\",\r\n \"decreaseIndent\", \"separator\",\r\n \"orderedList\", \"bulletList\", \"separator\",\r\n\r\n {\r\n name: \"header\",\r\n acceptedValues: [false, 1, 2, 3, 4, 5]\r\n },\r\n\r\n \"color\",\"background\",\"link\", \"clear\",\"codeBlock\",\"blockquote\", \"separator\", \"insertTable\",\"deleteTable\",\r\n \"insertRowAbove\",\"insertRowBelow\",\"deleteRow\",\"insertColumnLeft\",\"insertColumnRight\",\r\n \"deleteColumn\",\"cellProperties\",\"tableProperties\",\r\n ];\r\n\r\n popupNewContact:boolean = false\r\n \r\n constructor(\r\n private employeeService: EmployeesService,\r\n private openRif: OpenRifService,\r\n private toast: ToastService,\r\n private taskService: TaskService,\r\n private appconfig: AppConfigService,\r\n private translate:TranslateService\r\n\r\n ) {\r\n \r\n this.initRFI();\r\n this.settings.dateFormat = this.appconfig.dateFormat;\r\n\r\n this.plusContactButton = {\r\n icon:\"plus\",\r\n type: \"button\",\r\n hint:\"New Contact\",\r\n onClick: () => {\r\n this.popupNewContact = true;\r\n }\r\n };\r\n \r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.cancelButton = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupnewRFI = false;\r\n this.onHidden();\r\n },\r\n };\r\n\r\n this.cancelExpandDescripButton = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.popupExpandDescrip = false;\r\n this.closeExpandDescrip()\r\n },\r\n };\r\n\r\n this.cancelExpandResButton = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.popupExpandRes = false;\r\n this.closeExpandRes()\r\n },\r\n };\r\n\r\n this.saveButton = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.saveRFI();\r\n },\r\n };\r\n\r\n this.saveExpandDescripButton = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.newRFI.get('Description').setValue(this.RFIDescription)\r\n this.closeExpandDescrip()\r\n },\r\n };\r\n\r\n this.saveExpandResButton = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.newRFI.get('Response').setValue(this.RFIResponse)\r\n this.closeExpandRes()\r\n },\r\n };\r\n\r\n\r\n let mythis = this;\r\n this.projectslist = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n return mythis.taskService.GetProjectByName(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n // this.popupnewRFI = true;\r\n }\r\n\r\n inputsDate(date){\r\n date.todayButton = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n date.showDate = new Date().getTime();\r\n }\r\n };\r\n\r\n date.prevDateButton = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n date.showDate -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n date.nextDateButton = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n date.showDate += this.millisecondsInDay;\r\n }\r\n };\r\n }\r\n\r\n updateProjectInfo(ev) {\r\n console.log(ev);\r\n if(ev.selectedItem)\r\n this.projectid = ev.selectedItem.ID;\r\n else\r\n this.projectid = 0;\r\n }\r\n\r\n onHidden() {\r\n this.popupnewRFI = false;\r\n this.onmodalhidden.emit();\r\n this.initRFI();\r\n }\r\n\r\n getEmployees(){\r\n this.employeeService.GetAll().subscribe(result=>{\r\n this.employees = result.map((val)=>{\r\n return {\r\n id: val.ID,\r\n name: val.FULLNAME\r\n }\r\n });\r\n })\r\n }\r\n\r\n getContacts(){\r\n this.openRif.GetContacts2().subscribe(result=>{\r\n this.sentTo = result.map(x=>{\r\n x.First += \" \" + \"(\" + x[\"Email Address\"] + \")\"\r\n return x;\r\n });\r\n })\r\n }\r\n\r\n searchContact(nameContact){\r\n let found = this.sentTo.find(data=> data.First == nameContact);\r\n if(found!==undefined){ this.idSentTo = found.ID; }\r\n\r\n }\r\n\r\n initRFI(){\r\n let projectname = this.projectInfo ? this.projectInfo.ID + '-' + this.projectInfo.NAME : '';\r\n console.log(projectname);\r\n this.newRFI = new FormGroup ({\r\n Name: new FormControl('', [Validators.required]),\r\n Project: new FormControl(projectname, []),\r\n Number: new FormControl('', []),\r\n Date: new FormControl(new Date(), []),\r\n CreatedBy: new FormControl('', []),\r\n Priority: new FormControl('', [Validators.required]),\r\n Attachment: new FormControl('', []),\r\n SentTo: new FormControl('', [Validators.required]),\r\n RespondedBy: new FormControl(new Date(), []),\r\n Responded: new FormControl('', []),\r\n Description: new FormControl('', []),\r\n Response: new FormControl('', []),\r\n })\r\n this.inputsDate(this.rfiDate);\r\n this.inputsDate(this.respondedByDate);\r\n this.respondedByDate.showDate = new Date().getTime();\r\n this.getEmployees();\r\n this.getContacts();\r\n }\r\n \r\n\r\n saveRFI(){\r\n console.log(this.newRFI.value);\r\n let form = this.newRFI.value;\r\n let needresponse;\r\n form.Responded == true ? needresponse = 1 : needresponse = 0;\r\n\r\n\r\n if(!this.projectid) {\r\n this.toast.success(this.translate.instant('msgProjName'));\r\n return;\r\n }\r\n if(!form.Name) {\r\n this.toast.warning(this.translate.instant('msgRFI'));\r\n return;\r\n }\r\n if(!form.Priority) {\r\n this.toast.warning(this.translate.instant('msgPrio'));\r\n return;\r\n }\r\n if(!form.SentTo) {\r\n this.toast.warning(this.translate.instant('msgCont'));\r\n return;\r\n }\r\n\r\n if(!this.projectid) {\r\n this.toast.warning(this.translate.instant('msgProjName'));\r\n return;\r\n }\r\n form.Date = new Date(form.Date);\r\n console.log(form.Date);\r\n form.RespondedBy = new Date(form.RespondedBy);\r\n console.log(\"🚀 ~ NewRfiComponent ~ saveRFI ~ form:\", form)\r\n\r\n this.openRif.InsertRfi(form.Name,\r\n form.Number,\r\n this.projectid,\r\n form.Date,\r\n this.idSentTo,\r\n form.Priority,\r\n form.CreatedBy,\r\n form.RespondedBy,\r\n needresponse,\r\n form.Response,\r\n form.Description,\r\n 0 )\r\n .subscribe(result=>{\r\n console.log(result);\r\n this.popupnewRFI = false;\r\n // this.datagrid.reloadComponent();\r\n // this.getAllRFI();\r\n this.toast.success(this.translate.instant('msgRFIDetInfoSavSucc'));\r\n this.newRFI.reset();\r\n this.initRFI();\r\n this.onsubmit.emit();\r\n })\r\n }\r\n\r\n ExpandRFIDescrip(){\r\n let data = this.newRFI.value;\r\n this.RFIDescription = data.Description\r\n this.popupExpandDescrip = true\r\n\r\n }\r\n\r\n ExpandRFIRes(){\r\n let data = this.newRFI.value;\r\n this.RFIResponse = data.Response\r\n this.popupExpandRes = true\r\n }\r\n\r\n closeExpandDescrip(){\r\n this.popupExpandDescrip = false\r\n this.RFIDescription = undefined\r\n }\r\n\r\n closeExpandRes(){\r\n this.popupExpandRes = false\r\n this.RFIResponse = undefined\r\n }\r\n\r\n onsave(data){\r\n console.log(data)\r\n\r\n this.getContacts()\r\n\r\n this.idSentTo = data.id\r\n\r\n\r\n this.newRFI.get(\"SentTo\").setValue(data.First + \" \" + data.Last +\" \" + \"(\" + data.Email + \")\")\r\n \r\n\r\n\r\n\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NewRfiComponent } from './new-rfi.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DxAutocompleteModule, DxTextAreaModule, DxButtonModule, DxCheckBoxModule, DxDateBoxModule, DxPopupModule, DxScrollViewModule, DxSelectBoxModule, DxTextBoxModule, DxHtmlEditorModule, DxTooltipModule } from 'devextreme-angular';\r\nimport { NewContactModule } from 'src/app/shared/new-contact/new-contact.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [NewRfiComponent],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxTextBoxModule,\r\n DxCheckBoxModule,\r\n DxDateBoxModule, \r\n DxAutocompleteModule,\r\n DxTextAreaModule,\r\n DxSelectBoxModule,\r\n DxButtonModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxHtmlEditorModule,\r\n DxTooltipModule,\r\n NewContactModule\r\n ],\r\n exports: [\r\n NewRfiComponent\r\n ]\r\n})\r\nexport class NewRfiModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3NhbGVzLW1hbmFnZW1lbnQvYWxhcm0tY3VzdG9tZXJzL2FsYXJtLWN1c3RvbWVycy5jb21wb25lbnQuc2NzcyJ9 */\"","import { WavesModule, SelectModule, ToastService } from 'ng-uikit-pro-standard';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { IMyOptions } from 'ng-uikit-pro-standard';\r\n// tables\r\nimport { Component, OnInit, ElementRef, HostListener, AfterViewInit, ViewChild, ChangeDetectorRef, Input, Output, EventEmitter } from '@angular/core';\r\nimport { MdbTableDirective, MdbTablePaginationComponent } from 'ng-uikit-pro-standard';\r\nimport { CustomerService } from 'src/app/services/customer.service';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { FormGroup, FormControl, Validators, FormBuilder } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\ndeclare var $: any;\r\nimport * as AspNetData from \"devextreme-aspnet-data-nojquery\";\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'alarm-customers',\r\n templateUrl: './alarm-customers.component.html',\r\n styleUrls: ['./alarm-customers.component.scss']\r\n})\r\nexport class AlarmCustomersComponent implements OnInit {\r\n @Input() PopupAlarm: any;\r\n @Output() CerrarModal = new EventEmitter();\r\n\r\n PhasesAlarm: any[] = []\r\n customOperations: Array;\r\n popupPosition: any;\r\n TotalAlarms:number=0\r\n dateFormat1:any\r\n\r\n constructor(\r\n private customerService: CustomerService,\r\n private generalService: GeneralService,\r\n public fb: FormBuilder,\r\n private router: Router,\r\n private toast: ToastService,\r\n public MapInformationService:MapInformationService,\r\n public appConfigService: AppConfigService,\r\n private translate:TranslateService) {\r\n this.dateFormat1 = this.appConfigService.dateFormat\r\n // this.customerSelecte = null;\r\n /**\r\n * Init form new custumer vars\r\n */\r\n }\r\n\r\n ngOnInit() {\r\n console.log(\"dsfsdfs\")\r\n this.getAlarms()\r\n }\r\n\r\n getAlarms() {\r\n const data = {\r\n method: \"Get_CustomertWorkFlowAlarms\"\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp => {\r\n console.log(resp)\r\n this.TotalAlarms = resp.length\r\n this.PhasesAlarm = resp\r\n })\r\n }\r\n\r\n OpenPopupAlarm() {\r\n this.PopupAlarm = true\r\n }\r\n\r\n ClosePopupAlarm() {\r\n this.PopupAlarm = false\r\n this.CerrarModal.emit(false)\r\n }\r\n\r\n editarStatus(event,data){\r\n console.log(data.data)\r\n console.log(event)\r\n\r\n const info = {\r\n method:\"Update_CustomerActiveHastCredit\",\r\n active:event.value == true ? 1:0,\r\n hascredit: data.data.HASCREDIT == true ? 1:0,\r\n customerid:parseInt(data.data.ID)\r\n }\r\n\r\n this.MapInformationService.SaveInfoSites(info)\r\n .subscribe(resp=>{\r\n if (event.value){\r\n this.toast.success(this.translate.instant('msgCustActSucc'))\r\n } else {\r\n this.toast.success(this.translate.instant('msgCustDeacSucc'))\r\n }\r\n this.getAlarms()\r\n })\r\n }\r\n\r\n // *****************************************\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { AlarmCustomersComponent } from './alarm-customers.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DashboardModule } from 'src/app/shared/shared-dashboard/dashboard.module';\r\nimport { EditCustomerComponent } from '../edit-customer/edit-customer.component';\r\nimport { DxSelectBoxModule, DxTextBoxModule, DxTextAreaModule, DxFormModule, DxAutocompleteModule, DxAccordionModule, DxButtonModule, DxCheckBoxModule, DxDataGridModule, DxPopupModule, DxScrollViewModule, DxNumberBoxModule, DxDateBoxModule, DxTagBoxModule } from 'devextreme-angular';\r\nimport { NewContactComponent } from 'src/app/shared/new-contact/new-contact.component';\r\nimport { NewContactModule } from 'src/app/shared/new-contact/new-contact.module';\r\nimport { GooglePlaceModule } from 'ngx-google-places-autocomplete';\r\nimport { EditCustomerReutilizableModule } from '../edit-customer-reutilizable/edit-customer-reutilizable.module';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n AlarmCustomersComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DashboardModule,\r\n DxDataGridModule,\r\n DxButtonModule,\r\n DxCheckBoxModule,\r\n NewContactModule,\r\n DxScrollViewModule,\r\n DxPopupModule,\r\n DxAccordionModule,\r\n DxAutocompleteModule,\r\n DxFormModule,\r\n DxTextAreaModule,\r\n DxTextBoxModule,\r\n DxSelectBoxModule,\r\n DxNumberBoxModule,\r\n GooglePlaceModule,\r\n DxDateBoxModule,\r\n DxTagBoxModule,\r\n EditCustomerReutilizableModule\r\n ],\r\n exports:[AlarmCustomersComponent],\r\n entryComponents: [NewContactComponent]\r\n})\r\nexport class AlarmCustomersModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3NhbGVzLW1hbmFnZW1lbnQvZWRpdC1jdXN0b21lci1yZXV0aWxpemFibGUvZWRpdC1jdXN0b21lci1yZXV0aWxpemFibGUuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit, ElementRef, HostListener, AfterViewInit, ViewChild, ChangeDetectorRef, Input, OnChanges, SimpleChanges } from '@angular/core';\r\nimport { IntegrationQuickbooksService } from 'src/app/services/integration-quickbooks.service';\r\nimport { MdbTableDirective, MdbTablePaginationComponent } from 'ng-uikit-pro-standard';\r\nimport { FormGroup, FormControl, Validators, FormBuilder } from '@angular/forms';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { WavesModule, SelectModule, ToastService } from 'ng-uikit-pro-standard';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { CustomerService } from 'src/app/services/customer.service';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport * as AspNetData from \"devextreme-aspnet-data-nojquery\";\r\nimport { AnonymousSubject } from 'rxjs/internal/Subject';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { DatePipe, Location } from '@angular/common';\r\nimport { IMyOptions } from 'ng-uikit-pro-standard';\r\nimport DataGrid from \"devextreme/ui/data_grid\";\r\nimport { Router } from '@angular/router';\r\nimport Popup from 'devextreme/ui/popup';\r\nimport { DxDataGridComponent, DxSelectBoxComponent } from 'devextreme-angular';\r\n\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { CreateUpdateActivityComponent } from '../../home/my-activity/create-update-activity/create-update-activity.component';\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'edit-customer-reutilizable',\r\n templateUrl: './edit-customer-reutilizable.component.html',\r\n styleUrls: ['./edit-customer-reutilizable.component.scss']\r\n})\r\n\r\nexport class EditCustomerReutilizableComponent implements OnInit, OnChanges {\r\n @ViewChild(MdbTableDirective, { static: true }) mdbTable: MdbTableDirective;\r\n @ViewChild(MdbTablePaginationComponent, { static: true }) mdbTablePagination: MdbTablePaginationComponent;\r\n @ViewChild(\"newRequestBySelect\", { static: false }) newRequestBySelect: DxSelectBoxComponent;\r\n @ViewChild('updateActivity', { static: false }) updateActivity: CreateUpdateActivityComponent;\r\n @ViewChild(\"GridTemplate\", { static: false }) GridTemplate: DxDataGridComponent;\r\n @ViewChild('row', { static: true }) row: ElementRef;\r\n @Input() VieneDe: any;\r\n @Input() customerID: any;\r\n optionsPerson: Array;\r\n optionsCType: Array;\r\n optionSregion: Array;\r\n optionsCity: Array;\r\n optionsState: Array;\r\n optionsZip: Array;\r\n elements: any = [];\r\n elements2: any = [];\r\n elements3: any = [];\r\n elements4: any = [];\r\n elements5: any = [];\r\n elements6: any = [];\r\n elements7: any = [];\r\n optionsCode = [];\r\n optionsSize = [];\r\n optionsRating = [];\r\n customerFilter = {\r\n PageIndex: 1,\r\n PageSize: 20,\r\n OrderID: 1,\r\n Id: 0,\r\n CustomerName: '',\r\n CustomerNumber: '',\r\n SalesPerson: '',\r\n CustomerType: '',\r\n SalesRegion: '',\r\n City: '',\r\n State: '',\r\n Zip: '',\r\n OfficePhone: '',\r\n HasCredit: '',\r\n Active: '',\r\n OffFax: ''\r\n };\r\n customerTypeSelect: any = [];\r\n modelCustomerType: any = [];\r\n salesPersonSelect: any = [];\r\n contrySelect: any = [];\r\n modelSalesPerson: any = [];\r\n customers: any = [];\r\n lastSearchZero: boolean = false;\r\n loading: boolean = false;\r\n\r\n deleteContacSelect: any;\r\n namedeleteContacSelect: any;\r\n\r\n viewDashboardType = 0;\r\n\r\n activo: boolean = true\r\n millisecondsInDay = 24 * 60 * 60 * 1000;\r\n filterValue: any\r\n customOperations: Array;\r\n popupPosition: any;\r\n\r\n /**\r\n * Form new custumer vars\r\n */\r\n public _formEntity: FormGroup;\r\n public _formEntityEdit: FormGroup;\r\n public _formEntityAssociatePeople: FormGroup;\r\n public _formEntityActivity: FormGroup;\r\n public _showBillingAddress: boolean;\r\n options = [\r\n { value: '1', label: 'Option 1' },\r\n { value: '2', label: 'Option 2' },\r\n { value: '3', label: 'Option 3' },\r\n ];\r\n //End Form new custumer\r\n\r\n public myDatePickerOptions: IMyOptions = {\r\n // Your options\r\n };\r\n\r\n // Head tables\r\n headElements = [{ head: 'Contact Name', id: 'EstimateId', class: 'text-left' },\r\n { head: 'Company', id: 'ProjectName', class: 'text-left' }\r\n ];\r\n\r\n headElements2 = [{ head: 'Project Number', id: 'EstimateId', class: 'text-right' },\r\n { head: 'Project Name', id: 'ProjectName', class: 'text-left' },\r\n { head: 'Quote Date', id: 'Category', class: 'text-right' },\r\n { head: 'Project Amount ', id: 'VerticalMarket', class: 'text-right' }\r\n ];\r\n\r\n\r\n headElements6 = [{ head: 'Project Number', id: 'EstimateId', class: 'text-right' },\r\n { head: 'Project Name', id: 'ProjectName', class: 'text-left' },\r\n { head: 'Quote Date', id: 'Category', class: 'text-right' },\r\n { head: 'Project Amount', id: 'VerticalMarket', class: 'text-right' }\r\n\r\n ];\r\n\r\n public chartType: string = 'line';\r\n\r\n public chartDatasets: Array = [\r\n { data: [65, 59, 80, 81, 56, 55, 40], label: 'My First dataset' },\r\n { data: [28, 48, 40, 19, 86, 27, 90], label: 'My Second dataset' }\r\n ];\r\n\r\n public chartLabels: Array = ['January', 'February', 'March', 'April', 'May', 'June', 'July'];\r\n\r\n public chartColors: Array = [\r\n {\r\n backgroundColor: 'rgba(105, 0, 132, .2)',\r\n borderColor: 'rgba(200, 99, 132, .7)',\r\n borderWidth: 2,\r\n },\r\n {\r\n backgroundColor: 'rgba(0, 137, 132, .2)',\r\n borderColor: 'rgba(0, 10, 130, .7)',\r\n borderWidth: 2,\r\n }\r\n ];\r\n\r\n public chartOptions: any = {\r\n responsive: true\r\n };\r\n headers: any;\r\n public chartClicked(e: any): void { }\r\n public chartHovered(e: any): void { }\r\n\r\n\r\n // bar\r\n public chartType2: string = 'bar';\r\n\r\n public chartDatasets2: Array = [\r\n { data: [65, 59, 80, 81, 56, 55, 40], label: 'My First dataset' }\r\n ];\r\n\r\n public chartLabels2: Array = ['Red', 'Blue', 'Yellow', 'Green', 'Purple', 'Orange'];\r\n\r\n public chartColors2: Array = [\r\n {\r\n backgroundColor: [\r\n 'rgba(255, 99, 132, 0.2)',\r\n 'rgba(54, 162, 235, 0.2)',\r\n 'rgba(255, 206, 86, 0.2)',\r\n 'rgba(75, 192, 192, 0.2)',\r\n 'rgba(153, 102, 255, 0.2)',\r\n 'rgba(255, 159, 64, 0.2)'\r\n ],\r\n borderColor: [\r\n 'rgba(255,99,132,1)',\r\n 'rgba(54, 162, 235, 1)',\r\n 'rgba(255, 206, 86, 1)',\r\n 'rgba(75, 192, 192, 1)',\r\n 'rgba(153, 102, 255, 1)',\r\n 'rgba(255, 159, 64, 1)'\r\n ],\r\n borderWidth: 2,\r\n }\r\n ];\r\n\r\n public chartOptions2: any = {\r\n responsive: true\r\n };\r\n public chartClicked2(e: any): void { }\r\n public chartHovered2(e: any): void { }\r\n\r\n\r\n // horizontal\r\n public chartType3: string = 'horizontalBar';\r\n\r\n public chartDatasets3: Array = [\r\n { data: [65, 59, 80, 81, 56, 55, 40], label: 'My First dataset' }\r\n ];\r\n\r\n public chartLabels3: Array = ['Red', 'Blue', 'Yellow'];\r\n\r\n public chartColors3: Array = [\r\n {\r\n backgroundColor: [\r\n 'rgba(255, 99, 132, 0.2)',\r\n 'rgba(54, 162, 235, 0.2)',\r\n 'rgba(255, 206, 86, 0.2)'\r\n\r\n ],\r\n borderColor: [\r\n 'rgba(255,99,132,1)',\r\n 'rgba(54, 162, 235, 1)',\r\n 'rgba(255, 206, 86, 1)'\r\n\r\n ],\r\n borderWidth: 2,\r\n }\r\n ];\r\n\r\n public chartOptions3: any = {\r\n responsive: true\r\n };\r\n\r\n public chartClicked3(e: any): void { }\r\n public chartHovered3(e: any): void { }\r\n dateFormat1: any\r\n\r\n\r\n customerDataSource: any;\r\n customerSelecte: any;\r\n dataCardList: any[] = []\r\n todayButtonreqDate: any;\r\n prevDateButtonreqDate: any;\r\n nextDateButtonreqDate: any;\r\n reqDate: number\r\n optionsRegion: any[] = []\r\n optionsTax: any[] = []\r\n optionFreelancer: any[] = []\r\n optionsSalesPerson: any[] = []\r\n houseNumber: any = \"\"\r\n street: any = \"\"\r\n mapCity: any = \"\"\r\n mapState: any = \"\"\r\n mapcountry: any = \"\"\r\n mapPaostalCode: any = \"\"\r\n\r\n houseNumberBilling: any = \"\"\r\n streetBilling: any = \"\"\r\n mapCityBilling: any = \"\"\r\n mapStateBilling: any = \"\"\r\n mapcountryBilling: any = \"\"\r\n mapPaostalCodeBilling: any = \"\"\r\n\r\n contadorPaginacion: number = 1\r\n page: number = 1;\r\n\r\n cancelButtonFilter: any\r\n saveButtonFilter: any\r\n cancelButtonFilterActivity: any\r\n saveButtonFilterActivity: any\r\n workcompleteddate: number;\r\n todayButton: any;\r\n prevDateButton: any;\r\n nextDateButton: any;\r\n\r\n followUpDate: number;\r\n todayButtonfollowUpDate: any;\r\n prevDateButtonfollowUpDate: any;\r\n nextDateButtonfollowUpDate: any;\r\n addProdSpeButton: any\r\n popupActivityType: boolean = false\r\n nombreActivity: any = \"New Activity\"\r\n EnableIntegration: boolean = true\r\n CreatedOn: any\r\n PopupNewAssociatePeopple: boolean = false\r\n PopupNewActivity: boolean = false\r\n durationDetail: any\r\n Activity: any[] = []\r\n AssociatePeopple: any[] = []\r\n optionsType: any[] = []\r\n optionsInfluence: any[] = []\r\n optionsPeopleAsc: any[] = []\r\n optionsPeople: any[] = []\r\n gotoEdit: boolean = false\r\n durationEdit: any\r\n popupNewContact: boolean = false\r\n NameContact: any = \"\"\r\n cargandoScroll: number = 0\r\n contactDataSource: any\r\n\r\n\r\n gridDataSource: any[] = []\r\n DataSourceSites: any[] = []\r\n\r\n checkBoxShowActive: boolean = true;\r\n checkBoxShowInactive: boolean = false;\r\n // Projects\r\n gridDataSourceSale:any[]=[]\r\n gridDataSourceBid:any[]=[];\r\n\r\n plusResponsibleButton: any;\r\n\r\n constructor(\r\n private integrationService: IntegrationQuickbooksService,\r\n public MapInformationService: MapInformationService,\r\n public appConfigService: AppConfigService,\r\n private customerService: CustomerService,\r\n private generalService: GeneralService,\r\n private translate:TranslateService,\r\n private toast: ToastService,\r\n private location: Location,\r\n private pipeDate: DatePipe,\r\n public fb: FormBuilder,\r\n private router: Router,\r\n ) {\r\n\r\n // vista modal movil\r\n\r\n Popup.defaultOptions({\r\n device: { deviceType: \"phone\" },\r\n options: {\r\n fullScreen: true,\r\n\r\n }\r\n });\r\n // vista grid movil\r\n DataGrid.defaultOptions({\r\n device: { deviceType: \"phone\" },\r\n options: {\r\n columnAutoWidth: true,\r\n columnHidingEnabled: true,\r\n wordWrapEnabled: false,\r\n rowAlternationEnabled: false\r\n // showRowLines: true,\r\n // showColumnLines: false,\r\n // focusedRowEnabled: true,\r\n // allowColumnResizing: true,\r\n // noDataText: \"\",\r\n // scrolling: {\r\n // mode: \"virtual\"\r\n // },\r\n // sorting: {\r\n // mode: \"single\"\r\n // },\r\n // loadPanel: {\r\n // enabled: false\r\n // }\r\n }\r\n });\r\n\r\n DataGrid.defaultOptions({\r\n device: { deviceType: \"desktop\" },\r\n options: {\r\n // columnAutoWidth: true,\r\n // columnHidingEnabled: false\r\n // showRowLines: true,\r\n // showColumnLines: false,\r\n // focusedRowEnabled: true,\r\n // allowColumnResizing: true,\r\n // noDataText: \"\",\r\n // scrolling: {\r\n // mode: \"virtual\"\r\n // },\r\n // sorting: {\r\n // mode: \"single\"\r\n // },\r\n // loadPanel: {\r\n // enabled: false\r\n // }\r\n }\r\n });\r\n\r\n \r\n\r\n this.dateFormat1 = this.appConfigService.dateFormat\r\n this.customerSelecte = null;\r\n this.workcompleteddate = new Date().getTime();\r\n this.followUpDate = new Date().getTime();\r\n\r\n this.todayButtonfollowUpDate = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n this.followUpDate = new Date().getTime();\r\n }\r\n };\r\n\r\n this.prevDateButtonfollowUpDate = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.followUpDate -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.nextDateButtonfollowUpDate = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.followUpDate += this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.todayButton = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n this.workcompleteddate = new Date().getTime();\r\n }\r\n };\r\n\r\n this.prevDateButton = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.workcompleteddate -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.nextDateButton = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.workcompleteddate += this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.cancelButtonFilter = {\r\n text: this.translate.instant('ModuleEditCustomerNAct.btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.CloseNewAssociatePeopple()\r\n },\r\n };\r\n\r\n this.saveButtonFilter = {\r\n text: this.translate.instant('ModuleEditCustomerNAct.btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.SaveNewAssociatePeople()\r\n },\r\n }\r\n\r\n this.cancelButtonFilterActivity = {\r\n text: this.translate.instant('ModuleEditCustomerNAct.btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.CloseNewActivity()\r\n },\r\n };\r\n\r\n this.saveButtonFilterActivity = {\r\n text: this.translate.instant('ModuleEditCustomerNAct.btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.SaveNewActivity()\r\n },\r\n }\r\n\r\n this.todayButtonreqDate = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n this.reqDate = new Date().getTime();\r\n }\r\n };\r\n\r\n this.prevDateButtonreqDate = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.reqDate -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.nextDateButtonreqDate = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.reqDate += this.millisecondsInDay;\r\n }\r\n };\r\n this.addProdSpeButton = {\r\n icon: \"edit\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupActivityType = true;\r\n },\r\n };\r\n\r\n this.initForm()\r\n\r\n\r\n this._formEntity = fb.group({\r\n CustomerName: [null, [Validators.required, Validators.maxLength(45)]],\r\n CustomerNumber: [null, []],\r\n CustomerTpeId: [{ value: 12, disabled: false }, []],\r\n OffPhone: [null, [Validators.maxLength(20)]],\r\n OffFax: [null, [Validators.maxLength(20)]],\r\n WebSite: [null, []],\r\n Address: [null, []],\r\n City: [null, []],\r\n Zip: [null, []],\r\n EmployeeId: [{ value: 1, disabled: false }, []],\r\n State: [null, []],\r\n Country: [{ value: 'USA', disabled: false }, []],\r\n Billing: [null, []],\r\n Notes: [null, []],\r\n BillingName: [null, [Validators.maxLength(50)]],\r\n BillingAddress: [null, []],\r\n BillingCity: [null, []],\r\n BillingZip: [null, []],\r\n BillingState: [null, []],\r\n BillingCountry: [{ value: 'USA', disabled: false }, []],\r\n });\r\n this._showBillingAddress = true;\r\n this.deleteContacSelect = null;\r\n this.namedeleteContacSelect = null;\r\n }\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (this.VieneDe == \"Customer\") {\r\n if (changes.customerID != undefined) {\r\n this.customerID = changes.customerID.currentValue\r\n this.initForm()\r\n this.workcompleteddate = new Date().getTime();\r\n\r\n this.todayButton = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n this.workcompleteddate = new Date().getTime();\r\n }\r\n };\r\n\r\n this.prevDateButton = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.workcompleteddate -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.nextDateButton = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.workcompleteddate += this.millisecondsInDay;\r\n }\r\n };\r\n this.searchInfoToSelect()\r\n }\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n const customerdata = JSON.parse(localStorage.getItem('customerData'));\r\n const customerfilter = JSON.parse(localStorage.getItem('customerFilter'));\r\n if (customerfilter) {\r\n this.customerFilter = customerfilter;\r\n this.modelCustomerType = this.customerFilter.CustomerType.split(',').map(item => {\r\n const el = parseInt(item, 10);\r\n if (!isNaN(el)) {\r\n return el;\r\n }\r\n });\r\n this.modelSalesPerson = this.customerFilter.SalesPerson.split(',').map(item => {\r\n const el = parseInt(item, 10);\r\n if (!isNaN(el)) {\r\n return el;\r\n }\r\n });\r\n }\r\n\r\n this.customerFilter.PageIndex = 1;\r\n this.GetCustomersWithFilters();\r\n\r\n this.GetSalesPerson();\r\n this.GetCustomerType();\r\n this.GetCountries();\r\n this.elements.push({ EstimateId: '5539', ProjectName: '2992', Category: 'Royal Concrete Concepts', VerticalMarket: 'Jose Smith', Status: 'Mechanical Contractor', Date: 'West Palm', city: 'Miami', state: 'Florida', zip: '32127', oficPhone: '386-252-12-22', oficFax: '305-555-888' });\r\n this.elements.push({ EstimateId: '5540', ProjectName: '2993', Category: '44 North', VerticalMarket: 'Jose Smith', Status: 'Mechanical Contractor', Date: 'West Palm', city: 'Miami', state: 'Florida', zip: '32127', oficPhone: '386-252-12-22', oficFax: '305-555-888' });\r\n this.elements.push({ EstimateId: '5541', ProjectName: '2994', Category: 'Adams', VerticalMarket: 'Jose Smith', Status: 'Mechanical Contractor', Date: 'West Palm', city: 'Miami', state: 'Florida', zip: '32127', oficPhone: '386-252-12-22', oficFax: '305-555-888' });\r\n this.elements.push({ EstimateId: '5542', ProjectName: '2995', Category: 'ABC Controls', VerticalMarket: 'Jose Smith', Status: 'Mechanical Contractor', Date: 'West Palm', city: 'Miami', state: 'Florida', zip: '32127', oficPhone: '386-252-12-22', oficFax: '305-555-888' });\r\n\r\n this.elements2.push({ EstimateId: '5567', ProjectName: 'Using cube resources', Category: '04/04/2019', VerticalMarket: '113,000.00' });\r\n this.elements2.push({ EstimateId: '5540', ProjectName: 'Crowne Pointe 4030 Building', Category: '04/06/2019', VerticalMarket: '113,000.00' });\r\n this.elements2.push({ EstimateId: '5541', ProjectName: 'Dever International Airport', Category: '04/10/2019', VerticalMarket: '251,000.00' });\r\n this.elements2.push({ EstimateId: '5542', ProjectName: 'Westwood Christian', Category: '04/12/2019', VerticalMarket: '25.00' });\r\n\r\n this.elements6.push({ EstimateId: '5567', ProjectName: 'Using cube resources', Category: '04/04/2019', VerticalMarket: '113,000.00' });\r\n this.elements6.push({ EstimateId: '5540', ProjectName: 'Crowne Pointe 4030 Building', Category: '04/06/2019', VerticalMarket: '113,000.00' });\r\n this.elements6.push({ EstimateId: '5541', ProjectName: 'Dever International Airport', Category: '04/10/2019', VerticalMarket: '251,000.00' });\r\n this.elements6.push({ EstimateId: '5542', ProjectName: 'Westwood Christian', Category: '04/12/2019', VerticalMarket: '25.00' });\r\n\r\n this.customScroll();\r\n\r\n this.searchInfoToSelect()\r\n this.EnableButton()\r\n\r\n\r\n this.MapInformationService.SaveInfoSites({method:\"Get_ClientSettingsByName\", name:\"CustomerCreditApprovers\"})\r\n .subscribe(resp=>{\r\n let idUserLogged = localStorage.getItem(\"customerid\")\r\n this.findId = (resp[0].VALUE.split(',').includes(idUserLogged.toString()));\r\n })\r\n\r\n\r\n }\r\n\r\n expandAll:boolean = false\r\n findId:any\r\n\r\n setGrid2() {\r\n let mythis = this;\r\n // this.customerDataSource = AspNetData.createStore({\r\n // key: \"ID\",\r\n // loadUrl: this.customerService.GetCustomerFilterUrl(),\r\n // onLoaded: function (data) {\r\n // let infoFinal = []\r\n // data.forEach(element => {\r\n // if (element.AVAILABLE) {\r\n // element.AVAILABLEYesOrNo = \"Yes\"\r\n // } else {\r\n // element.AVAILABLEYesOrNo = \"No\"\r\n // }\r\n // if (element.HASCREDIT) {\r\n // element.HASCREDITYesOrNo = \"Yes\"\r\n // } else {\r\n // element.HASCREDITYesOrNo = \"No\"\r\n // }\r\n // infoFinal.push(element)\r\n // })\r\n // data = infoFinal\r\n\r\n // // mythis.dataCardList = data\r\n\r\n // if (!mythis.headers && data.length > 0)\r\n // mythis.headers = Object.keys(data[0]);\r\n\r\n // // if (data.length == 0)\r\n // // mythis.customerDataSource = [];\r\n // },\r\n // onBeforeSend: function (e, ajaxOptions) {\r\n // mythis.loading = false;\r\n\r\n\r\n // if (ajaxOptions.data.sort) {\r\n // let sort = JSON.parse(ajaxOptions.data.sort);\r\n // mythis.customerFilter.OrderID = mythis.headers.indexOf(sort[0].selector);\r\n // if (sort[0].desc) {\r\n // mythis.customerFilter.OrderID = mythis.customerFilter.OrderID * -1;\r\n // }\r\n // }\r\n\r\n // // mythis.filterPipeline.OrderId = mythis.filterPipeline.OrderId * -1;\r\n // ajaxOptions.method = 'POST';\r\n // // mythis.customerFilter.PageIndex = (ajaxOptions.data.skip / 20) == 0 ? 1 : ajaxOptions.data.skip / 20;\r\n // let page = (ajaxOptions.data.skip / 20) == 0 ? 1 : ajaxOptions.data.skip / 20;\r\n // mythis.customerFilter.PageIndex = ajaxOptions.data.skip ? page : mythis.customerFilter.PageIndex;\r\n\r\n // let filters = Object.assign({}, mythis.customerFilter);\r\n\r\n // ajaxOptions.data = JSON.stringify(filters);\r\n // ajaxOptions.contentType = 'application/json';\r\n // ajaxOptions.headers = {\r\n // 'Authorization': `Bearer ${localStorage.getItem('token')}`\r\n // }\r\n // }\r\n // });\r\n }\r\n\r\n showFilter() {\r\n }\r\n\r\n clearFilterCompany() {\r\n }\r\n\r\n searchCompany(id) {\r\n const data = {\r\n method: \"Get_Customers\",\r\n id: id\r\n }\r\n this.MapInformationService.SaveInfoSites(data).subscribe(\r\n // this.customerService.GetCustumerById(id).subscribe(\r\n data => {\r\n // CUSTOMERNAME\r\n this.formDataLoad(data[0]);\r\n },\r\n err => {\r\n }\r\n )\r\n }\r\n\r\n formDataLoad(infoCompany) {\r\n // Convertir en array el string\r\n let otherPeople;\r\n otherPeople = [];\r\n if (infoCompany.OTHESALESPERSONIDS !== '' && infoCompany.OTHESALESPERSONIDS !== null) {\r\n otherPeople = (infoCompany.OTHESALESPERSONIDS.split(','));\r\n let arryTemp;\r\n arryTemp = [];\r\n otherPeople.forEach(element => {\r\n arryTemp.push(parseInt(element));\r\n });\r\n otherPeople = arryTemp;\r\n } else {\r\n\r\n }\r\n\r\n let dateFormat = 0;\r\n if (infoCompany.CREATEDDATE != undefined) {\r\n dateFormat = new Date(infoCompany.CREATEDDATE).getTime();\r\n }\r\n\r\n this.CreatedOn = this.pipeDate.transform(infoCompany.CREATEDDATE, 'MM/dd/yyyy');\r\n\r\n this._formEntityEdit = new FormGroup({\r\n id: new FormControl({ value: infoCompany.ID, disabled: false }, []),\r\n customername: new FormControl({ value: infoCompany.CUSTOMERNAME, disabled: false }, [Validators.required, Validators.maxLength(45)]),\r\n customernumber: new FormControl({ value: infoCompany.NUMBER, disabled: false }, []),\r\n customertypeid: new FormControl({ value: infoCompany.CUSTOMERTYPEID, disabled: false }, []),\r\n offphone: new FormControl({ value: infoCompany.OFFPHONE, disabled: false }, [Validators.maxLength(20)]),\r\n phone2: new FormControl({ value: infoCompany.OFFPHONE2, disabled: false }, [Validators.maxLength(20)]),\r\n website: new FormControl({ value: infoCompany.WEBSITE, disabled: false }, []),\r\n offfax: new FormControl({ value: infoCompany.OFFFAX, disabled: false }, [Validators.maxLength(20)]),\r\n emailaddress: new FormControl({ value: infoCompany.EMAILADDRESS, disabled: false }, []),\r\n address: new FormControl({ value: infoCompany.ADDRESS, disabled: false }, []),\r\n addressline2: new FormControl({ value: infoCompany.ADDRESSLINE2, disabled: false }, []),\r\n city: new FormControl({ value: infoCompany.CITY, disabled: false }, []),\r\n employeeid: new FormControl({ value: parseInt(infoCompany.EMPLOYEEID), disabled: false }, []),\r\n zip: new FormControl({ value: infoCompany.ZIP, disabled: false }, []),\r\n state: new FormControl({ value: infoCompany.STATE, disabled: false }, []),\r\n country: new FormControl({ value: infoCompany.COUNTRY, disabled: false }, []),\r\n Billing: new FormControl({ value: 0, disabled: false }, []),\r\n customernotes: new FormControl({ value: infoCompany.NOTES, disabled: false }, []),\r\n billingname: new FormControl({ value: infoCompany.BILLINGADDRESSNAME, disabled: false }, []),\r\n billingaddress: new FormControl({ value: infoCompany.BILLINGADDRESS, disabled: false }, []),\r\n billingaddressline2: new FormControl({ value: infoCompany.BILLINGADDRESSLINE2, disabled: false }, []),\r\n billingcity: new FormControl({ value: infoCompany.BILLINGCITY, disabled: false }, []),\r\n billingzip: new FormControl({ value: infoCompany.BILLINGZIP, disabled: false }, []),\r\n billingstate: new FormControl({ value: infoCompany.BILLINGSTATE, disabled: false }, []),\r\n billingcountry: new FormControl({ value: infoCompany.BILLINGCOUNTRY, disabled: false }, []),\r\n othersalespersonids: new FormControl({ value: otherPeople, disabled: false }, []),\r\n salesregionid: new FormControl({ value: parseInt(infoCompany.SALESREGIONID), disabled: false }, []),\r\n hascredit: new FormControl({ value: infoCompany.HASCREDIT, disabled: false }, []),\r\n available: new FormControl({ value: infoCompany.AVAILABLE, disabled: false }, []),\r\n salestaxid: new FormControl({ value: infoCompany.SALESTAXID, disabled: false }, [Validators.required]), \r\n freelancerid: new FormControl({ value: infoCompany.FreelancerId == null ? '' : infoCompany.FreelancerId, disabled: false }, []), \r\n date: new FormControl({ value: dateFormat, disabled: true }, []),\r\n CreateBy: new FormControl({ value: infoCompany.USERNAME, disabled: true }, []),\r\n });\r\n\r\n }\r\n\r\n initForm() {\r\n this._formEntityEdit = new FormGroup({\r\n id: new FormControl({ value: '', disabled: false }, []),\r\n customername: new FormControl({ value: '', disabled: false }, [Validators.required, Validators.maxLength(45)]),\r\n customernumber: new FormControl({ value: '', disabled: false }, []),\r\n customertypeid: new FormControl({ value: '', disabled: false }, []),\r\n offphone: new FormControl({ value: '', disabled: false }, [Validators.maxLength(20)]),\r\n phone2: new FormControl({ value: '', disabled: false }, [Validators.maxLength(20)]),\r\n website: new FormControl({ value: '', disabled: false }, []),\r\n offfax: new FormControl({ value: '', disabled: false }, [Validators.maxLength(20)]),\r\n emailaddress: new FormControl({ value: '', disabled: false }, []),\r\n address: new FormControl({ value: '', disabled: false }, []),\r\n addressline2: new FormControl({ value: '', disabled: false }, []),\r\n city: new FormControl({ value: '', disabled: false }, []),\r\n employeeid: new FormControl({ value: '', disabled: false }, []),\r\n zip: new FormControl({ value: '', disabled: false }, []),\r\n state: new FormControl({ value: '', disabled: false }, []),\r\n country: new FormControl({ value: '', disabled: false }, []),\r\n Billing: new FormControl({ value: 0, disabled: false }, []),\r\n customernotes: new FormControl({ value: '', disabled: false }, []),\r\n billingaddress: new FormControl({ value: '', disabled: false }, []),\r\n billingaddressline2: new FormControl({ value: '', disabled: false }, []),\r\n billingname: new FormControl({ value: '', disabled: false }, []),\r\n billingcity: new FormControl({ value: '', disabled: false }, []),\r\n billingzip: new FormControl({ value: '', disabled: false }, []),\r\n billingstate: new FormControl({ value: '', disabled: false }, []),\r\n billingcountry: new FormControl({ value: '', disabled: false }, []),\r\n othersalespersonids: new FormControl({ value: '', disabled: false }, []),\r\n salesregionid: new FormControl({ value: '', disabled: false }, []),\r\n hascredit: new FormControl({ value: false, disabled: false }, []),\r\n available: new FormControl({ value: false, disabled: false }, []),\r\n date: new FormControl({ value: '', disabled: true }, []),\r\n salestaxid: new FormControl({ value: 3, disabled: false }, []),\r\n freelancerid: new FormControl({ value: 0, disabled: false }, []),\r\n // CustomerTpeId\r\n CreateBy: new FormControl({ value: '', disabled: true }, []),\r\n });\r\n\r\n this._formEntityAssociatePeople = new FormGroup({\r\n id: new FormControl({ value: 0, disabled: false }, []),\r\n customerid: new FormControl({ value: this.customerID, disabled: false }, []),\r\n description: new FormControl({ value: '', disabled: false }, []),\r\n buyetypeid: new FormControl({ value: 2, disabled: false }, []),\r\n influenceid: new FormControl({ value: 2, disabled: false }, []),\r\n contactid: new FormControl({ value: 0, disabled: false }, [Validators.required]),\r\n })\r\n\r\n this._formEntityActivity = new FormGroup({\r\n Hour: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n Minute: new FormControl({ value: null, disabled: false }, [Validators.required]),\r\n Customer: new FormControl({ value: this.customerID, disabled: true }, []),\r\n CusomerActivityId: new FormControl({ value: 0, disabled: false }, []),\r\n EmployeeId: new FormControl({ value: 1, disabled: false }, []),\r\n Type: new FormControl({ value: 1, disabled: false }, [Validators.required]),\r\n Notes: new FormControl({ value: '', disabled: false }, []),\r\n StartTime: new FormControl({ value: new Date().getTime(), disabled: false }, [Validators.required]),\r\n FOLLOWUPDATE: new FormControl({ value: '', disabled: false }, []),\r\n Follow: new FormControl({ value: '', disabled: false }, []),\r\n Name: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n Closed: new FormControl({ value: '', disabled: false }, []),\r\n FollowComments: new FormControl({ value: '', disabled: false }, []),\r\n durationDetail: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n });\r\n }\r\n\r\n searchInfoToSelect() {\r\n this.customerService.GetCustomerType().subscribe(result => {\r\n this.customerTypeSelect = result.map((val) => {\r\n return { // Return the new object structure\r\n label: val.CUSTOMERTYPE,\r\n value: val.ID\r\n };\r\n });\r\n // this.MapInformationService.SaveInfoSites({method:\"\"}).subscribe(\r\n this.customerService.GetCustomerSalesRegion().subscribe(\r\n data => {\r\n this.optionsRegion = data.map((val) => {\r\n return { // Return the new object structure\r\n label: val.SALESREGION,\r\n value: val.ID\r\n };\r\n });\r\n this.viewDashboardType = 2\r\n }\r\n );\r\n this.generalService.GetSalesPerson().subscribe(\r\n data => {\r\n this.optionsSalesPerson = data.map((val) => {\r\n return { // Return the new object structure\r\n label: val.CONTACTNAME,\r\n value: val.ID\r\n };\r\n });\r\n this.MapInformationService.SaveInfoSites({ method: 'Get_Taxs' }).subscribe(\r\n // this.customerService.GetCustomerTaxes().subscribe(\r\n data => {\r\n this.optionsTax = data.map((val) => {\r\n if (val.TAX != undefined)\r\n return { // Return the new object structure\r\n label: val.TAX,\r\n value: val.ID\r\n };\r\n });\r\n // this.customerID = this.dataCardList[0].ID\r\n this.searchCompany(this.customerID)\r\n this.customScroll()\r\n }\r\n );\r\n\r\n this.MapInformationService.SaveInfoSites({method:\"Get_CW_ApplicantList\"}).subscribe(resp=>{ \r\n console.log(resp)\r\n this.optionFreelancer = resp\r\n })\r\n\r\n }\r\n );\r\n });\r\n // })\r\n }\r\n\r\n OpenNewAssociatePeopple() {\r\n let mythis = this\r\n this.contactDataSource = []\r\n this.contactDataSource = new CustomStore({\r\n key: \"ID\",\r\n useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.GetAllInfoDinamico(\"Get_ContactsByName\", loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n this.PopupNewAssociatePeopple = true\r\n }\r\n\r\n OpenNewActivity() {\r\n this.PopupNewActivity = true;\r\n // this._formEntityActivity = new FormGroup({\r\n // Hour: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n // Minute: new FormControl({ value: null, disabled: false }, [Validators.required]),\r\n // Customer: new FormControl({ value: this.customerID, disabled: true }, []),\r\n // CusomerActivityId: new FormControl({ value: 0, disabled: false }, []),\r\n // EmployeeId: new FormControl({ value: 1, disabled: false }, []),\r\n // Type: new FormControl({ value: 1, disabled: false }, [Validators.required]),\r\n // Notes: new FormControl({ value: '', disabled: false }, []),\r\n // StartTime: new FormControl({ value: new Date().getTime(), disabled: false }, [Validators.required]),\r\n // FOLLOWUPDATE: new FormControl({ value: '', disabled: false }, []),\r\n // Follow: new FormControl({ value: '', disabled: false }, []),\r\n // Name: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n // Closed: new FormControl({ value: '', disabled: false }, []),\r\n // FollowComments: new FormControl({ value: '', disabled: false }, []),\r\n // durationDetail: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n // });\r\n }\r\n\r\n CloseNewActivity() {\r\n this.PopupNewActivity = false\r\n this._formEntityActivity = new FormGroup({\r\n Hour: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n Minute: new FormControl({ value: null, disabled: false }, [Validators.required]),\r\n Customer: new FormControl({ value: this.customerID, disabled: true }, []),\r\n CusomerActivityId: new FormControl({ value: 0, disabled: false }, []),\r\n EmployeeId: new FormControl({ value: 1, disabled: false }, []),\r\n Type: new FormControl({ value: 1, disabled: false }, [Validators.required]),\r\n Notes: new FormControl({ value: '', disabled: false }, []),\r\n StartTime: new FormControl({ value: new Date().getTime(), disabled: false }, [Validators.required]),\r\n FOLLOWUPDATE: new FormControl({ value: '', disabled: false }, []),\r\n Follow: new FormControl({ value: '', disabled: false }, []),\r\n Name: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n Closed: new FormControl({ value: '', disabled: false }, []),\r\n FollowComments: new FormControl({ value: '', disabled: false }, []),\r\n durationDetail: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n });\r\n this.gotoEdit = false\r\n this.nombreActivity = \"'ModalEditCustomerNAct.title' | translate\";\r\n }\r\n\r\n CloseNewAssociatePeopple() {\r\n this.contactDataSource = []\r\n this.newRequestBySelect.placeholder = \"Select..\"\r\n this.PopupNewAssociatePeopple = false\r\n this.NameContact = \"\"\r\n this._formEntityAssociatePeople = new FormGroup({\r\n id: new FormControl({ value: 0, disabled: false }, []),\r\n customerid: new FormControl({ value: this.customerID, disabled: false }, []),\r\n description: new FormControl({ value: '', disabled: false }, []),\r\n buyetypeid: new FormControl({ value: 2, disabled: false }, []),\r\n influenceid: new FormControl({ value: 2, disabled: false }, []),\r\n contactid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n })\r\n }\r\n\r\n Volver() {\r\n if (localStorage.getItem(\"VolverSalesProject\") != undefined) {\r\n this.router.navigateByUrl(`/salesProject/editSales/${localStorage.getItem(\"VolverSalesProjectID\")}`);\r\n } else if (localStorage.getItem(\"VolverEditProjectContract\") != undefined) {\r\n this.router.navigateByUrl(`/editProject?numID=${localStorage.getItem(\"VolverEditProjectContract\")}`);\r\n } else {\r\n localStorage.setItem('DeEditRequisition', \"EditRequisition\")\r\n this.location.back();\r\n // this.router.navigateByUrl(`/customers`)\r\n }\r\n\r\n localStorage.removeItem(\"VolverSalesProject\")\r\n localStorage.removeItem(\"VolverSalesProjectID\")\r\n localStorage.removeItem(\"VolverEditProjectContract\")\r\n\r\n }\r\n\r\n getAllCompanies() {\r\n const data = {\r\n method: \"\"\r\n }\r\n }\r\n\r\n DeleteCompany(item) {\r\n }\r\n\r\n ShowInfoCompany(item) {\r\n this.customerID = item.CUSTOMERID\r\n this.searchCompany(item.CUSTOMERID)\r\n }\r\n\r\n handleValueChange(event) {\r\n if (event.value) {\r\n this._formEntityEdit.get(\"billingaddress\").setValue(this._formEntityEdit.value.address)\r\n this._formEntityEdit.get(\"billingcity\").setValue(this._formEntityEdit.value.city)\r\n this._formEntityEdit.get(\"billingzip\").setValue(this._formEntityEdit.value.zip)\r\n this._formEntityEdit.get(\"billingstate\").setValue(this._formEntityEdit.value.state)\r\n this._formEntityEdit.get(\"billingcountry\").setValue(this._formEntityEdit.value.country)\r\n this._formEntityEdit.get(\"billingaddressline2\").setValue(this._formEntityEdit.value.addressline2)\r\n } else {\r\n this._formEntityEdit.get(\"billingaddress\").setValue(\"\")\r\n this._formEntityEdit.get(\"billingcity\").setValue(\"\")\r\n this._formEntityEdit.get(\"billingzip\").setValue(\"\")\r\n this._formEntityEdit.get(\"billingstate\").setValue(\"\")\r\n this._formEntityEdit.get(\"billingcountry\").setValue(\"\")\r\n this._formEntityEdit.get(\"billingaddressline2\").setValue(\"\")\r\n }\r\n }\r\n\r\n submitForm() {\r\n\r\n let formValue;\r\n formValue = this._formEntityEdit.value;\r\n formValue = { CustomerId: this._formEntityEdit.value.id, ...formValue };\r\n //Coverit a string Other sales person seprados por coma\r\n let ArraystrinOtherSlaesPerosn: string;\r\n // Same Address\r\n\r\n if (formValue.Billing === 0) {\r\n // delete formValue.BillingAddress\r\n formValue = { customeraddresssame: 'false', ...formValue };\r\n } else {\r\n // Error: El servicio no esta guardandolos campos a continuacion\r\n formValue.billingaddress = formValue.address;\r\n formValue.billingcity = formValue.city;\r\n formValue.billingzip = formValue.zip;\r\n formValue.billingstate = formValue.state;\r\n formValue.billingcountry = formValue.country;\r\n formValue.billingaddressline2 = formValue.addressline2;\r\n // Se implementa el siguiente campo customeraddresssame\r\n formValue = { customeraddresssame: 'true', ...formValue };\r\n }\r\n\r\n ArraystrinOtherSlaesPerosn = '';\r\n if (formValue.hascredit === true) {\r\n formValue.hascredit = 1\r\n } else {\r\n formValue.hascredit = 0\r\n }\r\n if (formValue.available === true) {\r\n formValue.available = 1\r\n } else {\r\n formValue.available = 0\r\n }\r\n if (formValue.othersalespersonids.length > 0) {\r\n let i = 0;\r\n formValue.othersalespersonids.forEach(element => {\r\n if (i === 0) {\r\n ArraystrinOtherSlaesPerosn = element;\r\n } else {\r\n ArraystrinOtherSlaesPerosn = ArraystrinOtherSlaesPerosn + ',' + element;\r\n }\r\n i++;\r\n });\r\n formValue.othersalespersonids = ArraystrinOtherSlaesPerosn\r\n } else {\r\n // Vacio\r\n formValue.othersalespersonids = \"\";\r\n }\r\n formValue.customergoogleadd = formValue.address\r\n\r\n\r\n\r\n // if(formValue.billingaddress != undefined){\r\n // if (formValue.billingaddress.length > 14 || formValue.address.length > 14) {\r\n // let primeraparteAddressBilling = formValue.billingaddress.slice(0, formValue.billingaddress.length / 2)\r\n // let segundaparteAddressBilling = formValue.billingaddress.slice(formValue.billingaddress.length / 2)\r\n\r\n // let primeraparteAddress = formValue.address.slice(0, formValue.address.length / 2)\r\n // let segundaparteAddress = formValue.address.slice(formValue.address.length / 2)\r\n\r\n // formValue.address = primeraparteAddress\r\n // formValue.addressline2 = segundaparteAddress\r\n // formValue.billingaddress = primeraparteAddressBilling\r\n // formValue.billingaddressline2 = segundaparteAddressBilling\r\n // } else {\r\n // formValue.addressline2 = \"\"\r\n // formValue.billingaddressline2 = \"\"\r\n // }\r\n // }\r\n // formValue.Billing = formValue.Billing ? 1 : 0;\r\n delete formValue.Billing;\r\n formValue.method = \"Insert_Customer\"\r\n this.MapInformationService.SaveInfoSites(formValue).subscribe(\r\n // this.customerService.EditCustumerById(formValue).subscribe(\r\n data => {\r\n this.toast.success(this.translate.instant('msgCustEditSucc'));\r\n\r\n // this.integrationService.synchCustomerCEToQB(\"\").subscribe(result => {\r\n // if (result == true){\r\n // this.toast.success('Customer Synch Successfully');\r\n // }\r\n // else{\r\n // //window.open('https://www.cube-mia.com/','_self');\r\n // }\r\n // })\r\n\r\n },\r\n err => {\r\n }\r\n )\r\n }\r\n\r\n \r\n titleClick(e) {\r\n switch (e.itemData.title) {\r\n case 'Activity':\r\n this.getActivity()\r\n break\r\n case 'Associate People':\r\n this.getAssociatePeople(0)\r\n break\r\n case 'Projects':\r\n this.getProjects()\r\n break\r\n case 'Project Sale History':\r\n this.getProjectsSale()\r\n break\r\n case 'Project Bid History':\r\n this.getProjectsBid()\r\n break\r\n case 'Service Site':\r\n this.getServiceSite()\r\n break\r\n }\r\n }\r\n\r\n getProjects() {\r\n let method = 'Get_All_Projects'\r\n\r\n this.MapInformationService.SaveInfoSites({ method: \"Get_All_Projectsbycustomer\", custooomerid: this.customerID }).subscribe(data => {\r\n let infoFinal = []\r\n data.forEach(element => {\r\n if (element.IsPipeline) {\r\n element.IsPipelineYesOrNot = \"Yes\"\r\n } else {\r\n element.IsPipelineYesOrNot = \"No\"\r\n }\r\n if (element.ico_Sold == \"fas fa-exclamation-circle whiteiconcolor/ \") {\r\n element.ico_SoldYesOrNot = \"No\"\r\n } else {\r\n element.ico_SoldYesOrNot = \"Yes\"\r\n }\r\n infoFinal.push(element)\r\n });\r\n this.gridDataSource = infoFinal;\r\n\r\n this.onloadData(this.gridDataSource)\r\n })\r\n }\r\n\r\n getProjectsSale() {\r\n\r\n this.MapInformationService.SaveInfoSites({ method: \"Get_CustomersSaleHistory\", customerid: this.customerID }).subscribe(data => {\r\n let infoFinal = []\r\n data.forEach(element => {\r\n if (element.IsPipeline) {\r\n element.IsPipelineYesOrNot = \"Yes\"\r\n } else {\r\n element.IsPipelineYesOrNot = \"No\"\r\n }\r\n if (element.ico_Sold == \"fas fa-exclamation-circle whiteiconcolor/ \") {\r\n element.ico_SoldYesOrNot = \"No\"\r\n } else {\r\n element.ico_SoldYesOrNot = \"Yes\"\r\n }\r\n infoFinal.push(element)\r\n });\r\n this.gridDataSourceSale = infoFinal;\r\n\r\n this.onloadData(this.gridDataSourceSale)\r\n })\r\n }\r\n\r\n getProjectsBid() {\r\n\r\n this.MapInformationService.SaveInfoSites({ method: \"Get_CustomersBidHistoryCE\", customerid: this.customerID }).subscribe(data => {\r\n let infoFinal = []\r\n data.forEach(element => {\r\n if (element.IsPipeline) {\r\n element.IsPipelineYesOrNot = \"Yes\"\r\n } else {\r\n element.IsPipelineYesOrNot = \"No\"\r\n }\r\n if (element.ico_Sold == \"fas fa-exclamation-circle whiteiconcolor/ \") {\r\n element.ico_SoldYesOrNot = \"No\"\r\n } else {\r\n element.ico_SoldYesOrNot = \"Yes\"\r\n }\r\n infoFinal.push(element)\r\n });\r\n this.gridDataSourceBid = infoFinal;\r\n\r\n this.onloadData(this.gridDataSourceBid)\r\n })\r\n }\r\n\r\n onloadData(obj) {\r\n let data = obj.map(x => {\r\n let dateStr = x.BIDREQUESTDATE ? this.pipeDate.transform(x.BIDREQUESTDATE, 'yyyy-MM-dd') : '';\r\n let date;\r\n if (dateStr) {\r\n date = new Date(dateStr);\r\n date.setDate(date.getDate() + 1);\r\n }\r\n\r\n let item = {\r\n id: x.ProjectID,\r\n text: x.ProjectNumber,\r\n startDate: date,\r\n endDate: date,\r\n test: x.BIDREQUESTDATE\r\n }\r\n\r\n return item;\r\n })\r\n }\r\n\r\n goEditProject(item) {\r\n this.router.navigateByUrl(`/salesProject/editSales/${item.Project_Id}`);\r\n }\r\n\r\n onToolbarPreparing(e) {\r\n e.toolbarOptions.items.unshift({\r\n location: 'after',\r\n template: 'buttonsRight'\r\n });\r\n }\r\n\r\n substrultimatechar(element) {\r\n return element.substr(0, element.length - 2);\r\n }\r\n\r\n\r\n // ++++++++++++++++++++++++++++++++++++\r\n\r\n\r\n // Sites\r\n\r\n getServiceSite() {\r\n this.MapInformationService.SaveInfoSites({ method: \"Get_ServiceSitesbyCustomer\", custooomerid:this.customerID })\r\n .subscribe(resp => {\r\n let datos = resp.map(x => {\r\n // x.ACTIVE = x.ACTIVE == 'Yes' ? true : false;\r\n // x.HASCONTRACT = x.HASCONTRACT == 'Yes' ? true : false;\r\n // x.HASASSEt = x.HASASSEt == 'Yes' ? true : false;\r\n return x;\r\n });\r\n this.DataSourceSites = datos\r\n })\r\n }\r\n\r\n\r\n goEditSite(item) {\r\n // this.router.navigateByUrl('/editServiceSites');\r\n this.router.navigate(['/serviceSites/editServiceSite'], { queryParams: { numSITEID: item.ID } })\r\n }\r\n\r\n\r\n onToolbarPreparingSite(e, buttonName) {\r\n e.toolbarOptions.items.unshift({\r\n location: 'before',\r\n template: buttonName\r\n });\r\n e.toolbarOptions.items.unshift({\r\n location: 'after',\r\n template: 'buttonsRight'\r\n });\r\n }\r\n\r\n updateCheck(item, data, e) {\r\n\r\n let active\r\n let hasContract\r\n let hasAssest\r\n\r\n switch (item) {\r\n case \"Active\":\r\n active = !data.ACTIVE;\r\n active = active == true ? 1 : 0;\r\n hasContract = data.HASCONTRACT == true ? 1 : 0;\r\n // hasAssest = data.HASASSEt == true ? 1 : 0;\r\n break;\r\n case \"HasContract\":\r\n hasContract = !data.HASCONTRACT;\r\n hasContract = hasContract == true ? 1 : 0;\r\n active = data.ACTIVE == true ? 1 : 0;\r\n // hasAssest = data.HASASSEt == true ? 1 : 0;\r\n break;\r\n // case \"HasAssest\":\r\n // hasAssest = !data.HASASSEt;\r\n // hasAssest = hasAssest == true ? 1 : 0;\r\n // active = data.ACTIVE == true ? 1 : 0;\r\n // hasContract = data.HASCONTRACT == true ? 1 : 0;\r\n // break;\r\n }\r\n let info = {\r\n method: \"Insert_ServiceSiteCE\",\r\n id: data.ID,\r\n hascontract: hasContract,\r\n active: active,\r\n // hasasset: hasAssest\r\n };\r\n this.MapInformationService.SaveInfoSites(info).subscribe(result => {\r\n this.toast.success(this.translate.instant('msgInfUpdSucc'));\r\n this.getServiceSite();\r\n })\r\n }\r\n\r\n // ++++++++++++++++++++++++++++++++++\r\n\r\n getActivity() {\r\n const data = {\r\n method: \"Get_Customer_Activities\",\r\n customerid: this.customerID\r\n // customerid: \"1164\"\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n // this.customerService.GetCustomerActivityEmployeesFilter({})\r\n .subscribe(resp => {\r\n console.log(resp)\r\n let infoFinal = []\r\n this.PopupNewActivity = false\r\n resp.forEach(element => {\r\n let duration = \"\"\r\n if (element.DURATION != undefined) {\r\n duration = element.DURATION.toString().split(\".\")\r\n if (duration[1] == undefined) {\r\n if (duration[0].length == 2) {\r\n duration = duration[0] + \":\" + \"00\"\r\n } else {\r\n duration = \"0\" + duration[0] + \":\" + \"00\"\r\n }\r\n } else {\r\n if (duration[0].length == 2) {\r\n if (duration[1].length == 2) {\r\n duration = duration[0] + \":\" + duration[1]\r\n } else {\r\n duration = duration[0] + \":\" + duration[1] + \"0\"\r\n }\r\n } else {\r\n if (duration[1].length == 2) {\r\n duration = \"0\" + duration[0] + \":\" + duration[1]\r\n } else {\r\n duration = \"0\" + duration[0] + \":\" + duration[1] + \"0\"\r\n }\r\n }\r\n }\r\n }\r\n element.DURATION = duration\r\n element.CLOSED1 = element.CLOSED == \"Yes\" || element.CLOSED == true ? true : false\r\n\r\n element.FOLLOWUPCOMMENTSsinHTML = element.FOLLOWUPCOMMENTS != undefined ? this.eliminarHTML(element.FOLLOWUPCOMMENTS) : \"\"\r\n\r\n infoFinal.push(element)\r\n })\r\n\r\n this.Activity = infoFinal\r\n\r\n\r\n this.customerService.GetCustomerActivityEmployees().subscribe(\r\n data => {\r\n this.optionsPeople = data.map((val) => {\r\n return { // Return the new object structure\r\n label: val.value,\r\n value: val.ID\r\n };\r\n });\r\n })\r\n this.customerService.GetCustomerActivityType().subscribe(\r\n data => {\r\n this.optionsCType = data.map((val) => {\r\n return { // Return the new object structure\r\n label: val.Name,\r\n value: val.ID\r\n };\r\n });\r\n },\r\n err => {\r\n }\r\n );\r\n })\r\n }\r\n\r\n eliminarHTML(cadena) {\r\n return cadena.replace(/<[^>]+>/g, '');\r\n }\r\n\r\n getInfoActivity() {\r\n this.customerService.GetCustomerActivityType().subscribe(\r\n data => {\r\n this.optionsCType = data.map((val) => {\r\n return { // Return the new object structure\r\n label: val.Name,\r\n value: val.ID\r\n };\r\n });\r\n },\r\n err => {\r\n }\r\n );\r\n }\r\n\r\n getAssociatePeople(deleted, action?) {\r\n if(deleted == 0 && action == null){\r\n this.checkBoxShowActive = true;\r\n deleted = 0;\r\n // this.checkBoxShowInactive = false;\r\n }else if(action == null){\r\n this.checkBoxShowActive = false;\r\n deleted = 1;\r\n // this.checkBoxShowInactive = true;\r\n }\r\n\r\n const info = {\r\n method: \"Get_Customer_Contacts\",\r\n customerid: this.customerID,\r\n deleted: deleted\r\n // customerid: \"1164\"\r\n }\r\n this.MapInformationService.SaveInfoSites(info)\r\n .subscribe(resp => {\r\n this.AssociatePeopple = resp.filter((valor, indice) => {\r\n return valor.CONTACTID != undefined;\r\n }\r\n );\r\n this.customerService.GetCustomerBuyerType().subscribe(result => {\r\n this.optionsType = result.map((val) => {\r\n return { // Return the new object structure\r\n label: val.DESCRIPTION,\r\n value: val.ID\r\n };\r\n });\r\n this.customerService.GetCustomerOportunityInfluence().subscribe(result => {\r\n this.optionsInfluence = result.map((val) => {\r\n return { // Return the new object structure\r\n label: val.DESCRIPTION,\r\n value: val.ID\r\n };\r\n });\r\n // this.customerService.GetContactsPeople().subscribe(result => {\r\n // if (this.optionsPeopleAsc.length == 0) {\r\n // this.optionsPeopleAsc = result.map((val) => {\r\n // return { // Return the new object structure\r\n // label: val.First + ' ' + val.Last,\r\n // value: val.ID\r\n // };\r\n // });\r\n // }\r\n // });\r\n let mythis = this\r\n // this.contactDataSource = new CustomStore({\r\n // key: \"ID\",\r\n // useDefaultSearch: false,\r\n // load: function (loadOptions: any) {\r\n // if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n // loadOptions.searchValue = \" \"\r\n // } else {\r\n // loadOptions.searchValue = loadOptions.searchValue\r\n // }\r\n // return mythis.MapInformationService.GetAllInfoDinamico(\"Get_ContactsByName\",loadOptions.searchValue)\r\n // .toPromise()\r\n // .then((data: any) => {\r\n // return data;\r\n // })\r\n // .catch(error => { throw 'Data Loading Error' });\r\n // }\r\n // });\r\n });\r\n });\r\n })\r\n }\r\n\r\n SaveNewActivity() {\r\n let formValue;\r\n formValue = this._formEntityActivity.value;\r\n // if(!this._formEntityActivity.valid){\r\n if (formValue.durationDetail.length == 0) {\r\n this.toast.warning(this.translate.instant('msgAddDuration'))\r\n return;\r\n }\r\n if (formValue.Name.length == 0) {\r\n this.toast.warning(this.translate.instant('msgAddActName'))\r\n return;\r\n }\r\n\r\n // }\r\n\r\n // if(formValue.durationDetail.length == 0){\r\n // this.toast.warning(this.translate.instant('msgAddDuration'));\r\n // return;\r\n // }\r\n // if(formValue.Name.length == 0){\r\n // this.toast.warning(this.translate.instant('msgAddActName'));\r\n // return\r\n // }\r\n\r\n formValue.OptCustomer = 1;\r\n formValue.OptServiceSite = 0;\r\n formValue.OptProject = 0;\r\n\r\n // formValue.CustomerId = parseInt(this.customerID);\r\n formValue.Customer = parseInt(this.customerID);\r\n\r\n // Change Format date 2020-07-16 to 20200715 11:11 (Concat hour)\r\n let TMPdate;\r\n let HourToedit;\r\n\r\n HourToedit = formValue.Hour;\r\n formValue.StartTime = new Date(formValue.StartTime);\r\n formValue.FOLLOWUPDATE = new Date(formValue.FOLLOWUPDATE);\r\n\r\n formValue.Hour = formValue.durationDetail.substr(0, 2);\r\n formValue.Minute = formValue.durationDetail.substr(2, 5);\r\n\r\n if (parseInt(formValue.Minute) > 60) {\r\n this.toast.warning(\"The minutes cannot be greater than 60\")\r\n return false\r\n }\r\n\r\n if (formValue.Follow == true) {\r\n formValue.Follow = parseInt('1');\r\n } else { formValue.Follow = parseInt('0'); }\r\n // Close\r\n if (formValue.Closed == true) {\r\n formValue.Closed = parseInt('1');\r\n } else { formValue.Closed = parseInt('0'); }\r\n // END hange boolean ton strin 0 and 1\r\n if (formValue.Name === \"\") {\r\n formValue.Name = \"New Activity\";\r\n }\r\n\r\n formValue.Employee = formValue.EmployeeId\r\n formValue.ActivityType = formValue.Type\r\n\r\n if (this.gotoEdit) {\r\n\r\n if (formValue.Follow == true) {\r\n formValue.Follow = parseInt('1');\r\n } else { formValue.Follow = parseInt('0'); }\r\n // Closed\r\n if (formValue.Closed == true) {\r\n formValue.Closed = parseInt('1');\r\n } else { formValue.Closed = parseInt('0'); }\r\n // END hange boolean ton strin 0 and 1\r\n if (formValue.Name === \"\") {\r\n formValue.Name = \"New Activity\";\r\n }\r\n\r\n const infoFinal = {\r\n Hour: formValue.Hour,\r\n Minute: formValue.Minute,\r\n ActivityType: formValue.Type,\r\n Closed: formValue.Closed,\r\n Customer: parseInt(this.customerID),\r\n Employee: formValue.EmployeeId,\r\n FollowUp: formValue.Follow,\r\n Name: formValue.Name,\r\n Description: formValue.Notes == undefined ? \"\" : formValue.Notes,\r\n OptCustomer: 1,\r\n OptProject: 0,\r\n OptServiceSite: 0,\r\n Project: 0,\r\n ServiceSite: 0,\r\n StartTime: formValue.StartTime,\r\n activityid: formValue.Id,\r\n method: \"UpdateActivity\",\r\n followupdate: formValue.FOLLOWUPDATE,\r\n FollowUpComments: formValue.FollowComments == undefined ? \"\" : formValue.FollowComments,\r\n }\r\n formValue = infoFinal\r\n } else {\r\n formValue.Description = formValue.Notes\r\n formValue.FollowUpComments = formValue.FollowComments\r\n formValue.followupdate = formValue.FOLLOWUPDATE\r\n formValue.method = \"SaveActivity\"\r\n }\r\n\r\n // this.MapInformationService.getParameters(\"UpdateActivity\")\r\n // .subscribe(resp=>{\r\n // })\r\n this.MapInformationService.SaveInfoSites(formValue).subscribe(\r\n data => {\r\n this.toast.success(this.translate.instant('msgAcCreSucc'));\r\n this.CloseNewActivity()\r\n this.getActivity()\r\n this.gotoEdit = false\r\n this.nombreActivity = \"New Activity\"\r\n })\r\n\r\n }\r\n\r\n\r\n editActivity(data) {\r\n let formValue;\r\n formValue = this._formEntityActivity.value;\r\n formValue.Follow = data.data.FOLLOWUP\r\n formValue.Closed = data.data.CLOSED1\r\n\r\n if (formValue.Follow === true) {\r\n formValue.Follow = parseInt('1');\r\n } else { formValue.Follow = parseInt('0'); }\r\n // Closed\r\n if (formValue.Closed === true) {\r\n formValue.Closed = parseInt('1');\r\n } else { formValue.Closed = parseInt('0'); }\r\n // END hange boolean ton strin 0 and 1\r\n if (formValue.Name === \"\") {\r\n formValue.Name = \"New Activity\";\r\n }\r\n\r\n let hour = data.data.DURATION.substr(0, 2);\r\n let minute = data.data.DURATION.substr(2, 5);\r\n if (hour.length == 1) {\r\n hour = \"0\" + hour\r\n }\r\n if (minute.length == 1) {\r\n minute = minute + \"0\"\r\n }\r\n\r\n if (parseInt(minute) > 60) {\r\n this.toast.warning(\"The minutes cannot be greater than 60\")\r\n this.getActivity()\r\n return false\r\n }\r\n formValue.Hour = hour\r\n formValue.Minute = minute\r\n\r\n const infoFinal = {\r\n Hour: formValue.Hour,\r\n Minute: formValue.Minute,\r\n ActivityType: data.data.TYPE,\r\n Closed: formValue.Closed,\r\n Customer: this.customerID,\r\n Employee: data.data.EMPLOYEEID,\r\n FollowUp: formValue.Follow,\r\n Name: data.data.NAME,\r\n Notes: data.data.NOTES == undefined ? \"\" : data.data.NOTES,\r\n OptCustomer: 1,\r\n OptProject: 0,\r\n OptServiceSite: 0,\r\n Project: 0,\r\n ServiceSite: 0,\r\n StartTime: data.data.DATE,\r\n activityid: data.data.ID,\r\n method: \"UpdateActivity\",\r\n FollowUpComments: data.data.FOLLOWUPCOMMENTS == undefined ? \"\" : data.data.FOLLOWUPCOMMENTS,\r\n }\r\n this.MapInformationService.SaveInfoSites(infoFinal).subscribe(\r\n // this.customerService.PostInsertUpdateCustomerActivity(infoFinal).subscribe(\r\n data => {\r\n this.toast.success(this.translate.instant('msgActEdiSucc'));\r\n this.getActivity()\r\n },\r\n err => {\r\n }\r\n )\r\n }\r\n\r\n SaveNewAssociatePeople() {\r\n this._formEntityAssociatePeople.value.method = \"Insert_MultipleCustomer_To_Contacts\"\r\n this._formEntityAssociatePeople.value.customerid = this.customerID\r\n this.MapInformationService.SaveInfoSites(this._formEntityAssociatePeople.value).subscribe(\r\n // this.customerService.PostInsertCustomerContacts(this._formEntityAssociatePeople.value).subscribe(\r\n data => {\r\n // if (data[0].Result) {\r\n this.toast.success(this.translate.instant('msgAssPeopCreSucc'));\r\n this.CloseNewAssociatePeopple();\r\n this.getAssociatePeople(0)\r\n this.contactDataSource = []\r\n this.newRequestBySelect.placeholder = \"Select..\"\r\n // } else {\r\n // this.toast.error('Error Creating Associate People');\r\n // }\r\n },\r\n err => {\r\n }\r\n )\r\n this.contactDataSource = []\r\n }\r\n\r\n InicioEditPeople(event) {\r\n let mythis = this\r\n this.contactDataSource = new CustomStore({\r\n key: \"ID\",\r\n useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.GetAllInfoDinamico(\"Get_ContactsByName\", loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n }\r\n\r\n editAssociatePeopple(data) {\r\n const info = {\r\n id: data.data.ID,\r\n customerid: this.customerID,\r\n // CustomerId: \"1164\",\r\n description: data.data.DESCRIPTION,\r\n buyertypeId: data.data.BUYERTYPEID == undefined ? 0 : data.data.BUYERTYPEID,\r\n infuenceid: data.data.INFLUENCEID,\r\n contactid: data.data.CONTACTID,\r\n method: \"Insert_MultipleCustomer_To_Contacts\"\r\n }\r\n\r\n this.customerService.EditInsertCustomerContacts(info).subscribe(\r\n data => {\r\n if (data[0].Result) {\r\n this.toast.success(this.translate.instant('msgEditAssPeopSucc'));\r\n this.getAssociatePeople(0, true)\r\n } else {\r\n this.toast.error('Error Edited Associate People');\r\n }\r\n },\r\n err => {\r\n }\r\n )\r\n this.contactDataSource = []\r\n }\r\n\r\n DeleteADocument(event) {\r\n let info = {\r\n method: \"Delete_Customer_Contacts\",\r\n customerid: this.customerID,\r\n contactid: event.key.CONTACTID,\r\n }\r\n this.MapInformationService.SaveInfoSites(info)\r\n .subscribe(resp => {\r\n this.toast.success(\"Registry deleted successfully\")\r\n this.getAssociatePeople(0, true)\r\n })\r\n }\r\n\r\n handleAddressChange(event) {\r\n for (let i = 1; i < event.address_components.length; i++) {\r\n let test = event.address_components[i];\r\n if (test.long_name != '') {\r\n if (test.types[0] == \"street_number\") {\r\n this.houseNumber = test.long_name;\r\n }\r\n if (test.types[0] == \"route\") {\r\n this.street = test.long_name;\r\n }\r\n if (test.types[0] == \"locality\") {\r\n this.mapCity = test.long_name;\r\n }\r\n if (test.types[0] == \"administrative_area_level_1\") {\r\n this.mapState = test.short_name;\r\n // this.mapState = test.long_name;\r\n }\r\n if (test.types[0] == \"country\") {\r\n this.mapcountry = test.long_name;\r\n }\r\n if (test.types[0] == \"postal_code\") {\r\n this.mapPaostalCode = test.long_name;\r\n }\r\n let streets = this.street && this.houseNumber ? (this.houseNumber + ', ' + this.street) : '';\r\n test = streets ? streets : this.street;\r\n }\r\n }\r\n this._formEntityEdit.get('address').setValue(event.formatted_address)\r\n this._formEntityEdit.get('city').setValue(this.mapCity)\r\n this._formEntityEdit.get('zip').setValue(this.mapPaostalCode)\r\n this._formEntityEdit.get('country').setValue(this.mapcountry)\r\n this._formEntityEdit.get('state').setValue(this.mapState)\r\n }\r\n\r\n handleAddressChangeBilling(event) {\r\n for (let i = 1; i < event.address_components.length; i++) {\r\n let test = event.address_components[i];\r\n if (test.long_name != '') {\r\n if (test.types[0] == \"street_number\") {\r\n this.houseNumberBilling = test.long_name;\r\n }\r\n if (test.types[0] == \"route\") {\r\n this.streetBilling = test.long_name;\r\n }\r\n if (test.types[0] == \"locality\") {\r\n this.mapCityBilling = test.long_name;\r\n }\r\n if (test.types[0] == \"administrative_area_level_1\") {\r\n this.mapStateBilling = test.short_name;\r\n // this.mapStateBilling = test.long_name;\r\n }\r\n if (test.types[0] == \"country\") {\r\n this.mapcountryBilling = test.long_name;\r\n }\r\n if (test.types[0] == \"postal_code\") {\r\n this.mapPaostalCodeBilling = test.long_name;\r\n }\r\n let streets = this.streetBilling && this.houseNumberBilling ? (this.houseNumberBilling + ', ' + this.streetBilling) : '';\r\n test = streets ? streets : this.streetBilling;\r\n }\r\n }\r\n this._formEntityEdit.get('billingaddress').setValue(event.formatted_address)\r\n this._formEntityEdit.get('billingcity').setValue(this.mapCityBilling)\r\n this._formEntityEdit.get('billingzip').setValue(this.mapPaostalCodeBilling)\r\n this._formEntityEdit.get('billingcountry').setValue(this.mapcountryBilling)\r\n this._formEntityEdit.get('billingstate').setValue(this.mapStateBilling)\r\n\r\n }\r\n\r\n getInitials(str) {\r\n return this.generalService.getInitials(str);\r\n }\r\n\r\n clearFilter() {\r\n this.customerFilter = {\r\n PageIndex: 1,\r\n PageSize: 20,\r\n OrderID: 1,\r\n Id: 0,\r\n CustomerName: '',\r\n CustomerNumber: '',\r\n SalesPerson: '',\r\n CustomerType: '',\r\n SalesRegion: '',\r\n City: '',\r\n State: '',\r\n Zip: '',\r\n OfficePhone: '',\r\n HasCredit: '',\r\n Active: '',\r\n OffFax: ''\r\n };\r\n\r\n this.modelSalesPerson = '';\r\n this.modelCustomerType = '';\r\n this.customers = [];\r\n this.lastSearchZero = false;\r\n this.GetCustomersWithFilters(true);\r\n\r\n }\r\n\r\n goEdit(data) {\r\n }\r\n\r\n GetCustomersWithFilters(isFilter = false) {\r\n // if (!this.customerFilter.Id) {\r\n // this.customerFilter.Id = 0;\r\n // }\r\n if (this.loading == true) { return 0; }\r\n this.loading = true;\r\n if (isFilter) {\r\n this.customerFilter.PageIndex = 1;\r\n this.lastSearchZero = false;\r\n this.customerFilter.SalesPerson = this.modelSalesPerson ? this.modelSalesPerson.join(',') : '';\r\n this.customerFilter.CustomerType = this.modelCustomerType ? this.modelCustomerType.join(',') : '';\r\n }\r\n localStorage.setItem('customerFilter', JSON.stringify(this.customerFilter));\r\n\r\n this.setGrid2();\r\n // this.customerService.GetCustomerFilters(this.customerFilter).subscribe(result => {\r\n // this.customerFilter.PageIndex++;\r\n // this.loading = false;\r\n\r\n // if (result.length > 0) {\r\n // if (isFilter) {\r\n // this.customers = result;\r\n // } else {\r\n\r\n // const tempCopy = JSON.parse(JSON.stringify(this.customers));\r\n\r\n // result.forEach(element => {\r\n // tempCopy.push(element);\r\n // });\r\n\r\n // this.customers = tempCopy;\r\n // // result.forEach(element => {\r\n // // this.customers.push(element);\r\n // // });\r\n // }\r\n // } else {\r\n // this.lastSearchZero = true;\r\n // }\r\n\r\n // if (isFilter && result.length == 0) {\r\n // this.customers = [];\r\n // }\r\n\r\n // localStorage.setItem('customerData', JSON.stringify(this.customers));\r\n // });\r\n }\r\n\r\n GetSalesPerson() {\r\n this.generalService.GetSalesPerson().subscribe(result => {\r\n this.salesPersonSelect = result.map((val) => {\r\n return { // Return the new object structure\r\n label: val.CONTACTNAME,\r\n value: val.ID\r\n };\r\n });\r\n });\r\n }\r\n\r\n GetCustomerType() {\r\n this.customerService.GetCustomerType().subscribe(result => {\r\n this.customerTypeSelect = result.map((val) => {\r\n return { // Return the new object structure\r\n label: val.CUSTOMERTYPE,\r\n value: val.ID\r\n };\r\n });\r\n\r\n });\r\n }\r\n\r\n GetCountries() {\r\n this.customerService.GetCountries().subscribe(result => {\r\n this.contrySelect = result.map((val) => {\r\n return { // Return the new object structure\r\n label: val.COUNTYNAME,\r\n value: val.CountryISO3\r\n };\r\n });\r\n });\r\n }\r\n\r\n\r\n\r\n customScroll() {\r\n var mythis = this;\r\n\r\n $('#myScrollCustomer').on('scroll', function () {\r\n if (($(this).scrollTop() + $(this).innerHeight() + 100) >= $(this)[0].scrollHeight && mythis.cargandoScroll == 0) {\r\n if (mythis.lastSearchZero == false) {\r\n mythis.GetCustomersWithFilters();\r\n mythis.page = mythis.page + 1\r\n mythis.cargandoScroll = 1\r\n mythis.GetinfoScroll()\r\n }\r\n }\r\n });\r\n }\r\n\r\n\r\n GetinfoScroll() {\r\n const info = {\r\n method: \"Get_Customers_Pagination\",\r\n pageindex: this.page,\r\n pagesize: 30\r\n }\r\n this.loading = true;\r\n\r\n this.MapInformationService.SaveInfoSites(info)\r\n .subscribe(resp => {\r\n resp.sort(function (a, b) {\r\n var nameA = a.CUSTOMERNAME.toUpperCase();\r\n var nameB = b.CUSTOMERNAME.toUpperCase();\r\n if (nameA < nameB) {\r\n return -1;\r\n }\r\n if (nameA > nameB) {\r\n return 1;\r\n }\r\n\r\n // names must be equal\r\n return 0;\r\n });\r\n resp.forEach(element => {\r\n this.dataCardList.push(element)\r\n });\r\n\r\n this.loading = false;\r\n this.cargandoScroll = 0\r\n\r\n })\r\n }\r\n /****************************\r\n * *** Modal New Custumer ***\r\n */\r\n submitFormNewCustumer(goToedit?: boolean) {\r\n let formValue = this._formEntity.value;\r\n if (formValue.Billing === false || formValue.Billing === null) {\r\n // delete formValue.BillingAddress\r\n formValue = { CustomerAddressSame: 'false', ...formValue };\r\n } else {\r\n // Error: El servicio no esta guardandolos campos a continuacion\r\n formValue.BillingAddress = formValue.Address;\r\n formValue.BillingCity = formValue.City;\r\n formValue.BillingZip = formValue.Zip;\r\n formValue.BillingState = formValue.State;\r\n formValue.BillingCountry = formValue.Country;\r\n // Se implementa el siguiente campo CustomerAddressSame\r\n formValue = { CustomerAddressSame: 'true', ...formValue };\r\n }\r\n delete formValue.Billing;\r\n // save\r\n this.customerService.PostNewCustumer(formValue).subscribe(\r\n data => {\r\n // this._formEntity.reset();\r\n this.toast.success(this.translate.instant('msgCustCreSucc'));\r\n if (goToedit) {\r\n this.router.navigate(['/customers/editCustomer/' + data[0].Column1]);\r\n }\r\n },\r\n err => {\r\n }\r\n );\r\n }\r\n saveAndNew() {\r\n this.submitFormNewCustumer(false);\r\n this.clearForm();\r\n }\r\n saveAndEdit() {\r\n this.submitFormNewCustumer(true);\r\n }\r\n clearForm() {\r\n this._formEntity = this.fb.group({\r\n CustomerName: [null, [Validators.required, Validators.maxLength(45)]],\r\n CustomerNumber: [null, []],\r\n CustomerTpeId: [{ value: 12, disabled: false }, []],\r\n OffPhone: [null, [Validators.maxLength(20)]],\r\n OffFax: [null, [Validators.maxLength(20)]],\r\n WebSite: [null, []],\r\n Address: [null, []],\r\n City: [null, []],\r\n Zip: [null, []],\r\n EmployeeId: [{ value: 1, disabled: false }, []],\r\n State: [null, []],\r\n Country: [{ value: 'USA', disabled: false }, []],\r\n Billing: [null, []],\r\n Notes: [null, []],\r\n BillingName: [null, [Validators.maxLength(50)]],\r\n BillingAddress: [null, []],\r\n BillingCity: [null, []],\r\n BillingZip: [null, []],\r\n BillingState: [null, []],\r\n BillingCountry: [{ value: 'USA', disabled: false }, []],\r\n });\r\n }\r\n deleteCustumer() {\r\n this.customerService.deleteCustumer(this.customerSelecte).subscribe(\r\n data => {\r\n this.GetCustomersWithFilters();\r\n this.toast.success(this.translate.instant('msgCompDelSucc'));\r\n this.customerSelecte = null;\r\n this.namedeleteContacSelect = null;\r\n },\r\n err => {\r\n this.customerSelecte = null;\r\n this.namedeleteContacSelect = null;\r\n\r\n }\r\n )\r\n }\r\n\r\n ModifyHasCredit(event, data) {\r\n const info = {\r\n method: \"Update_CustomerActiveHastCredit\",\r\n active: data.data.AVAILABLE == true ? 1 : 0,\r\n hascredit: event.value == true ? 1 : 0,\r\n customerid: parseInt(data.data.CUSTOMERID)\r\n }\r\n this.MapInformationService.SaveInfoSites(info)\r\n .subscribe(resp => {\r\n this.toast.success(this.translate.instant('msgHasCreUpdSucc'))\r\n })\r\n }\r\n\r\n ModifyActive(event, data) {\r\n const info = {\r\n method: \"Update_CustomerActiveHastCredit\",\r\n active: event.value == true ? 1 : 0,\r\n hascredit: data.data.HASCREDIT == true ? 1 : 0,\r\n customerid: parseInt(data.data.CUSTOMERID)\r\n }\r\n\r\n this.MapInformationService.SaveInfoSites(info)\r\n .subscribe(resp => {\r\n this.toast.success(this.translate.instant('msgAvaUpdSucc'))\r\n })\r\n }\r\n\r\n goLink(){\r\n let enlace = this._formEntityEdit.get('website').value.trim();\r\n console.log(\"enlace?? \", enlace);\r\n\r\n if(enlace != '' && enlace != null){\r\n if(!enlace.startsWith(\"http://\") && !enlace.startsWith('https://')){\r\n enlace = 'http://' + enlace;\r\n }\r\n console.log(\"ENLACE \", enlace);\r\n window.open(enlace, '_blank');\r\n }\r\n }\r\n\r\n navigateToSWO(item) {\r\n if (item.selectedItem != undefined) {\r\n this.NameContact = item.selectedItem.label\r\n this._formEntityAssociatePeople.get(\"contactid\").setValue(item.selectedItem.ID)\r\n }\r\n }\r\n\r\n\r\n OpenNewContact() {\r\n this.popupNewContact = true\r\n }\r\n\r\n setNewActivityType(event) {\r\n this._formEntityActivity.get(\"Type\").setValue(event[0].ReturnID)\r\n }\r\n\r\n get_durations_grid(data) {\r\n let item = data\r\n if (item.includes(':')) {\r\n let hour = data.split(':')[0];\r\n let minute = data.split(':')[1];\r\n if (!minute) {\r\n minute = \"00\"\r\n }\r\n return hour + ':' + minute;\r\n } else {\r\n return item + \":\" + \"00\";\r\n }\r\n }\r\n\r\n\r\n\r\n InicioEdit(event) {\r\n let duration\r\n if (event.data.DURATION != undefined) {\r\n duration = event.data.DURATION.toString().split(\":\")\r\n if (duration[1] == undefined) {\r\n if (duration[0].length == 2) {\r\n duration = duration[0] + \"00\"\r\n } else {\r\n duration = \"0\" + duration[0] + \"00\"\r\n }\r\n } else {\r\n if (duration[0].length == 2) {\r\n if (duration[1].length == 2) {\r\n duration = duration[0] + duration[1]\r\n } else {\r\n duration = duration[0] + duration[1] + \"0\"\r\n }\r\n } else {\r\n if (duration[1].length == 2) {\r\n duration = \"0\" + duration[0] + duration[1]\r\n } else {\r\n duration = \"0\" + duration[0] + duration[1] + \"0\"\r\n }\r\n }\r\n }\r\n }\r\n this.durationEdit = duration\r\n }\r\n\r\n dataForm: any;\r\n setFormActivities(val) {\r\n\r\n this.dataForm = val\r\n this.PopupNewActivity = true;\r\n\r\n // this.CloseNewActivity()\r\n // this.getInfoActivity()\r\n // let durat = val.DURATION ? val.DURATION.toString().split(':') : ['', ''];\r\n // durat[0] = durat[0].padStart(2, '0');\r\n // durat[1] = durat[1].padEnd(2, '0');\r\n // // let minute = val.DURATION ? `0${val.DURATION.toString().split('.')[0]}:${val.DURATION.toString().split('.')[1]}` : '';\r\n // let minute = durat[0] + ':' + durat[1];\r\n // this._formEntityActivity = new FormGroup({\r\n // Id: new FormControl({ value: val.ID, disabled: false }, []),\r\n // OptCustomer: new FormControl({ value: 1, disabled: false }, []),\r\n // OptServiceSite: new FormControl({ value: 0, disabled: false }, []),\r\n // OptProject: new FormControl({ value: 0, disabled: false }, []),\r\n // Hour: new FormControl({ value: new Date(val.DATE), disabled: false }, []),\r\n // Minute: new FormControl({ value: minute, disabled: false }, []),\r\n // ProjectId: new FormControl({ value: 1, disabled: false }, []),\r\n // // CusomerActivityId: new FormControl({ value: null, disabled: false }, []),\r\n // EmployeeId: new FormControl({ value: !val.EMPLOYEEID ? 0 : val.EMPLOYEEID, disabled: false }, []),\r\n // Type: new FormControl({ value: val.TYPE, disabled: false }, [Validators.required]),\r\n // Notes: new FormControl({ value: val.NOTES, disabled: false }, []),\r\n // StartTime: new FormControl({ value: val.STARTTIME, disabled: false }, [Validators.required]),\r\n // FOLLOWUPDATE: new FormControl({ value: val.FOLLOWUPDATE, disabled: false }, []),\r\n // Follow: new FormControl({ value: val.FOLLOWUP == false ? 0 : 1, disabled: false }, []),\r\n // Name: new FormControl({ value: val.NAME, disabled: false }, [Validators.required]),\r\n // Closed: new FormControl({ value: val.CLOSED1 == false ? 0 : 1, disabled: false }, []),\r\n // CustomerId: new FormControl({ value: 0, disabled: false }, []),\r\n // ServiceSiteId: new FormControl({ value: 0, disabled: false }, []),\r\n // FollowComments: new FormControl({ value: val.FOLLOWUPCOMMENTS, disabled: false }, []),\r\n // CustomerName: new FormControl({ value: val.CustomerName, disabled: false }, []),\r\n // durationDetail: new FormControl({ value: \"\", disabled: false }, [Validators.required]),\r\n // });\r\n\r\n // let duration = \"\"\r\n // if (val.DURATION != undefined) {\r\n // duration = val.DURATION.toString().split(\":\")\r\n // if (duration[1] == undefined) {\r\n // if (duration[0].length == 2) {\r\n // duration = duration[0] + \"00\"\r\n // } else {\r\n // duration = \"0\" + duration[0] + \"00\"\r\n // }\r\n // } else {\r\n // if (duration[0].length == 2) {\r\n // if (duration[1].length == 2) {\r\n // duration = duration[0] + duration[1]\r\n // } else {\r\n // duration = duration[0] + duration[1] + \"0\"\r\n // }\r\n // } else {\r\n // if (duration[1].length == 2) {\r\n // duration = \"0\" + duration[0] + duration[1]\r\n // } else {\r\n // duration = \"0\" + duration[0] + duration[1] + \"0\"\r\n // }\r\n // }\r\n // }\r\n // }\r\n // this.PopupNewActivity = true;\r\n\r\n // this._formEntityActivity.get('durationDetail').setValue(duration);\r\n // this.gotoEdit = true\r\n // this.nombreActivity = \"Edit Activity\"\r\n // this.now = new Date(val.DATE);\r\n\r\n }\r\n GoToContact(data) {\r\n this.router.navigate(['/contacts/editContact/' + data.data.CONTACTID]);\r\n }\r\n\r\n PostAccountingSystem() {\r\n // this.MapInformationService.SaveInfoSites({method:\"\",customerID:this.customerID})\r\n // .subscribe(resp=>{\r\n // this.toast.success(\"Integration made successfully\")\r\n // })\r\n }\r\n\r\n EnableButton() {\r\n // this.MapInformationService.SaveInfoSites({method:\"\",customerID:this.customerID})\r\n // .subscribe(resp=>{\r\n // this.ngOnInit()\r\n // this.EnableIntegration = false\r\n // })\r\n }\r\n\r\n ChangeClosed(event, data){\r\n console.log(event)\r\n console.log(data)\r\n\r\n const infoFinal = {\r\n Hour:data.id,\r\n Minute:data.id,\r\n ActivityType:data.TYPE,\r\n Closed: event.value == true ? 1 : 0,\r\n Customer:this.customerID,\r\n Employee:data.EMPLOYEEID,\r\n FollowUp:data.FOLLOWUP == true ? 1 : 0,\r\n Name:data.NAME,\r\n Description:data.NOTES,\r\n OptCustomer:1,\r\n OptProject:0,\r\n OptServiceSite:0,\r\n Project:0,\r\n ServiceSite:0,\r\n StartTime:data.STARTTIME,\r\n activityid:data.ID,\r\n method:\"UpdateActivity\",\r\n followupdate:data.FOLLOWUPDATE,\r\n FollowUpComments:data.FOLLOWUPCOMMENTS,\r\n }\r\n\r\n this.MapInformationService.SaveInfoSites(infoFinal)\r\n .subscribe(resp=>{\r\n this.toast.success(\"Updated Successfully\")\r\n this.getActivity()\r\n })\r\n }\r\n\r\n popupDeleteActivity:boolean = false\r\n idActivity:any\r\n DeleteServiceActivity(data){\r\n console.log(data)\r\n this.popupDeleteActivity= true\r\n this.idActivity = data.data.ID\r\n }\r\n\r\n\r\n deleteActivity(){\r\n this.MapInformationService.SaveInfoSites({method:\"Delete_ActivityListByProject\",id:this.idActivity})\r\n .subscribe(resp=>{\r\n this.toast.success(this.translate.instant('ModalEditSalesLeads.msgRegDel'));\r\n this.popupDeleteActivity= false\r\n this.getActivity()\r\n })\r\n }\r\n\r\n closeActivity(e, data){\r\n let newData = data.data;\r\n newData.CLOSED = e.value == false ? 'No' : 'Yes';\r\n\r\n console.log(data)\r\n\r\n const dataFinal = {\r\n \"id\":data.data.ID,\r\n \"activityid\":data.data.ID,\r\n \"closed\":e.value == false ? 0 : 1,\r\n \"method\":\"UpdateCloseActivity\",\r\n }\r\n\r\n this.MapInformationService.SaveInfoSites(dataFinal)\r\n .subscribe(resp=>{\r\n this.toast.success(this.translate.instant('ModalEditSalesLeads.msgActTemCreSucc'));\r\n this.getActivity();\r\n })\r\n }\r\n\r\n // ******************************* import template\r\n\r\n infoTemplate:any[]=[]\r\n openImport:boolean = false\r\n OpenImport(){\r\n let tampleatesInfo = {\r\n method: \"Get_ActivityTemplate\",\r\n };\r\n this.infoTemplate = [];\r\n this.MapInformationService.SaveInfoSites(tampleatesInfo).subscribe(\r\n (res) => {\r\n console.log(res)\r\n this.infoTemplate = res.map(x=>{\r\n x.closedYesOrNot = x.CLOSED == true ? \"Yes\":\"No\"\r\n return x\r\n })\r\n this.openImport = true\r\n }\r\n );\r\n\r\n }\r\n\r\n DeselectAll(){\r\n this.openImport = false\r\n this.GridTemplate.instance.deselectAll()\r\n }\r\n\r\n\r\n SaveInfo(){\r\n let data = this.GridTemplate.instance.getSelectedRowsData()\r\n if(data.length > 0){\r\n console.log(data)\r\n\r\n let contador = 0\r\n data.forEach(e=>{\r\n\r\n let Hour = \"00\";\r\n let Minute = \"00\";\r\n let durationFinal\r\n if(e.DURATION != undefined){\r\n Hour = e.DURATION.toString().substr(0, 2);\r\n Minute = e.DURATION.toString().substr(2, 5);\r\n }\r\n\r\n durationFinal = Hour + \".\" + Minute\r\n\r\n let test = {\r\n id:0,\r\n customerid:this.customerID,\r\n servicesiteid:null,\r\n employeeid:e.EMPLOYEEID,\r\n type: e.TYPE == null || e.TYPE == 0 ? 1 : e.TYPE,\r\n notes:e.NOTES,\r\n starttime: e.STARTTIME == null ? \"\" : e.STARTTIME,\r\n endtime:e.ENDTIME,\r\n followup:e.FOLLOWUP== true ? 1 : 0,\r\n followupdate: new Date(),\r\n name:e.NAME,\r\n closed:e.CLOSED == true ? 1 : 0,\r\n followupcomments:e.FOLLOWUPCOMMENTS,\r\n // projectid:this.salesLeadsId,\r\n duration:Number(durationFinal),\r\n externallink:e.EXTERNALLINK,\r\n method:\"InsertUpdateActivity\",\r\n }\r\n\r\n console.log('Guardando Data ',test)\r\n // this.MapInformationService.InsertUpdateActivity(test).subscribe(result => {\r\n this.MapInformationService.SaveInfoSites(test).subscribe(result => {\r\n contador++\r\n if(contador == data.length){\r\n this.toast.success(this.translate.instant('ModalEditSalesLeads.msgRegLoadSucc'));\r\n this.openImport = false\r\n this.GridTemplate.instance.deselectAll()\r\n this.getActivity()\r\n }\r\n },error => {\r\n console.log(error)\r\n });\r\n })\r\n } else {\r\n this.toast.warning(this.translate.instant('ModalEditSalesLeads.msgSelReg'));\r\n }\r\n }\r\n\r\n\r\n dataCreateTemplate:any[]=[]\r\n openNewEditTemplateModal:boolean = false\r\n OpenNewEditTemplate(reload = undefined){\r\n\r\n this.MapInformationService.SaveInfoSites({method:\"Get_ActivityTemplate\"})\r\n .subscribe( resp => {\r\n console.log(resp)\r\n this.dataCreateTemplate = []\r\n this.dataCreateTemplate = resp.map(x=>{\r\n x.DURATION = this.formatDuration(x);\r\n x.closedYesOrNot = x.CLOSED == true ? \"Yes\":\"No\"\r\n return x\r\n })\r\n if(reload == undefined){\r\n this.openNewEditTemplateModal = true\r\n this.getActivityType()\r\n this.getEmployeesActivity()\r\n }\r\n }) \r\n }\r\n\r\n formatDuration(element){\r\n let duration = \"\"\r\n if(element.DURATION != undefined){\r\n duration = element.DURATION.toString()\r\n\r\n let hour = element.DURATION.toString().substr(0, 2);\r\n let minute = element.DURATION.toString().substr(2, 5);\r\n\r\n if(minute == undefined){\r\n console.log(hour.length)\r\n if(hour.length > 1){\r\n duration = hour+\":\"+\"00\"\r\n } else if (hour.length == 1){\r\n duration = \"0\"+hour+\":\"+\"00\"\r\n }\r\n } else {\r\n if(hour.length == 2){\r\n if(minute.length == 2){\r\n duration = hour+\":\"+minute\r\n } else if (minute.length == 1){\r\n duration = hour+\":\"+minute+\"0\"\r\n }\r\n } else {\r\n if(minute.length == 2){\r\n duration = \"0\"+hour+\":\"+minute\r\n } else {\r\n duration = \"0\"+hour+\":\"+minute+\"0\"\r\n }\r\n }\r\n }\r\n }\r\n return duration;\r\n }\r\n\r\n ValueOriginal:any[]=[]\r\n getActivityType(){\r\n\r\n this.customerService.GetCustomerActivityType().subscribe(\r\n data => {\r\n this.optionsCType = data.map((val) => {\r\n return { // Return the new object structure\r\n label: val.Name,\r\n value: val.ID\r\n };\r\n });\r\n console.log(this.optionsCType)\r\n this.ValueOriginal = this.optionsCType\r\n },\r\n err => {\r\n console.log(err)\r\n }\r\n );\r\n }\r\n\r\n getEmployeesActivity(){\r\n this.customerService.GetCustomerActivityEmployees().subscribe(\r\n data => {\r\n this.optionsPeople = data.map((val) => {\r\n // console.log(val.value)\r\n return { // Return the new object structure\r\n label: val.value,\r\n value: val.ID\r\n };\r\n });\r\n console.log(this.optionsPeople)\r\n })\r\n }\r\n\r\n InsertinfoDinamica(event){\r\n if (event.key.DURATION.includes(':')) {\r\n let hour = event.key.DURATION.toString().substr(0, 2);\r\n let minute = event.key.DURATION.toString().substr(3, 5);\r\n hour = hour.replace(' ', 0);\r\n minute = minute.replace(' ', 0);\r\n event.key.DURATION = hour + minute\r\n }\r\n\r\n console.log(event.key)\r\n let dataFinal = {\r\n id:0,\r\n customerid:this.customerID,\r\n servicesiteid:event.key.SERVICESITEID == undefined ? 0 : event.key.SERVICESITEID,\r\n employeeid:event.key.EMPLOYEEID,\r\n date:event.key.DATE,\r\n type: event.key.TYPE === undefined ? 1 : event.key.TYPE,\r\n notes:event.key.NOTES,\r\n starttime:event.key.STARTTIME,\r\n endtime:event.key.ENDTIME,\r\n followup:event.key.FOLLOWUP == true ? 1:0,\r\n // followupdate:event.key.id,\r\n name:event.key.NAME,\r\n // duedate:event.key.id,\r\n // completiondate:event.key.id,\r\n // completionpercenr:event.key.id,\r\n closed:event.key.CLOSED == true ? 1:0,\r\n followupcomments:event.key.FOLLOWUPCOMMENTS,\r\n // intvalue:event.key.id,\r\n // marketcampid:event.key.id,\r\n // projectid:this.salesLeadsId,\r\n duration:event.key.DURATION,\r\n externallink :event.key.EXTERNALLINK,\r\n // externallink:event.key.id,\r\n method:\"InsertUpdate_ActivityTemplate\"\r\n }\r\n console.log(event.key)\r\n console.log(dataFinal)\r\n this.MapInformationService.SaveInfoSites(dataFinal)\r\n .subscribe(resp=>{\r\n this.toast.success(this.translate.instant('ModalEditSalesLeads.msgRegUpSucc'));\r\n this.OpenNewEditTemplate(\"reload\")\r\n })\r\n }\r\n\r\n UpdateinfoDinamica(event){\r\n console.log(event)\r\n if (event.key.DURATION.includes(':')) {\r\n let hour = event.key.DURATION.toString().substr(0, 2);\r\n let minute = event.key.DURATION.toString().substr(3, 5);\r\n hour = hour.replace(' ', 0);\r\n minute = minute.replace(' ', 0);\r\n event.key.DURATION = hour + minute\r\n }\r\n\r\n console.log(event.key)\r\n // console.log(hour)\r\n // console.log(minute)\r\n\r\n let dataFinal = {\r\n id:event.key.ID,\r\n customerid:event.key.CUSTOMERID,\r\n servicesiteid:event.key.SERVICESITEID,\r\n employeeid:event.key.EMPLOYEEID,\r\n date:event.key.DATE,\r\n type:event.key.TYPE,\r\n notes:event.key.NOTES,\r\n starttime:event.key.STARTTIME,\r\n endtime:event.key.ENDTIME,\r\n followup:event.key.FOLLOWUP == true ? 1:0,\r\n // followupdate:event.key.id,\r\n name:event.key.NAME,\r\n // duedate:event.key.id,\r\n // completiondate:event.key.id,\r\n // completionpercenr:event.key.id,\r\n closed:event.key.CLOSED == true ? 1:0,\r\n followupcomments:event.key.FOLLOWUPCOMMENTS,\r\n // intvalue:event.key.id,\r\n // marketcampid:event.key.id,\r\n projectid:event.key.PROJECTID,\r\n duration:event.key.DURATION,\r\n externallink :event.key.EXTERNALLINK,\r\n method:\"InsertUpdate_ActivityTemplate\"\r\n }\r\n console.log(event.key)\r\n console.log(dataFinal)\r\n this.MapInformationService.SaveInfoSites(dataFinal)\r\n .subscribe(resp=>{\r\n this.toast.success(this.translate.instant('ModalEditSalesLeads.msgRegUpSucc'));\r\n this.OpenNewEditTemplate(\"reload\")\r\n })\r\n }\r\n\r\n deleteDetail(event){\r\n console.log(event)\r\n this.MapInformationService.SaveInfoSites({method:\"Delete_ActivityTemplateByID\", id:event.data.ID})\r\n .subscribe(resp=>{\r\n this.toast.success(this.translate.instant('ModalEditSalesLeads.msgRegDel'));\r\n this.OpenNewEditTemplate(\"reload\")\r\n })\r\n }\r\n \r\n CloseModal(){\r\n this.openNewEditTemplateModal = false\r\n }\r\n\r\n goToCalendar(){\r\n this.router.navigateByUrl(`/myActivity`)\r\n }\r\n\r\n\r\n // **************************************************************************\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { EditCustomerReutilizableComponent } from './edit-customer-reutilizable.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DashboardModule } from 'src/app/shared/shared-dashboard/dashboard.module';\r\nimport { EditCustomerComponent } from '../edit-customer/edit-customer.component';\r\nimport { DxSelectBoxModule, DxTextBoxModule, DxTextAreaModule, DxFormModule, DxAutocompleteModule, DxAccordionModule, DxButtonModule, DxCheckBoxModule, DxDataGridModule, DxPopupModule, DxScrollViewModule, DxNumberBoxModule, DxDateBoxModule, DxTagBoxModule, DxTooltipModule } from 'devextreme-angular';\r\nimport { NewContactComponent } from 'src/app/shared/new-contact/new-contact.component';\r\nimport { NewContactModule } from 'src/app/shared/new-contact/new-contact.module';\r\nimport { GooglePlaceModule } from 'ngx-google-places-autocomplete';\r\nimport { DinamicModalModule } from 'src/app/shared/dinamic-modal/dinamic-modal.module';\r\nimport { CreateUpdateActivityDinamicModule } from '../../home/my-activity/create-update-activity-dinamic/create-update-activity-dinamic.module';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n EditCustomerReutilizableComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DashboardModule,\r\n DxDataGridModule,\r\n DxButtonModule,\r\n DxCheckBoxModule,\r\n NewContactModule,\r\n DxScrollViewModule,\r\n DxPopupModule,\r\n DxAccordionModule,\r\n DxAutocompleteModule,\r\n DxFormModule,\r\n DxTextAreaModule,\r\n DxTextBoxModule,\r\n DxSelectBoxModule,\r\n DxTagBoxModule,\r\n DxNumberBoxModule,\r\n GooglePlaceModule,\r\n DxDateBoxModule,\r\n DinamicModalModule,\r\n CreateUpdateActivityDinamicModule,\r\n DxTooltipModule\r\n ],\r\n exports: [EditCustomerReutilizableComponent],\r\n entryComponents: [NewContactComponent]\r\n})\r\nexport class EditCustomerReutilizableModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3NhbGVzLW1hbmFnZW1lbnQvZW1wbG95ZWUtYWN0aXZpdGllcy9mb3Jtcy9uZXctY3VzdG9tZXIvbmV3LWN1c3RvbWVyLmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';\r\nimport { FormGroup, FormControl, Validators, FormBuilder } from '@angular/forms';\r\n\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { CustomerService } from 'src/app/services/customer.service';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { Router } from '@angular/router';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'app-new-customer',\r\n templateUrl: './new-customer.component.html',\r\n styleUrls: ['./new-customer.component.scss']\r\n})\r\n\r\nexport class NewCustomerComponent implements OnInit {\r\n data: Item[];\r\n optionsSalesPerson: Item[];\r\n contrySelect: Item[];\r\n optionsType: Item[];\r\n optionsRegion: Array;\r\n optionsTax: any[] = []\r\n\r\n @Input() VieneDe:any\r\n @Input() MarkAsConsulting:any\r\n @Output() result = new EventEmitter();\r\n @Output() cloeModal = new EventEmitter();\r\n\r\n constructor(\r\n private customerService: CustomerService,\r\n private generalService: GeneralService,\r\n private toast: ToastService,\r\n private router: Router,\r\n public fb: FormBuilder,\r\n public MapInformationService:MapInformationService,\r\n private translate:TranslateService\r\n ) {\r\n this.getCountry();\r\n\r\n }\r\n public _formEntity: FormGroup;\r\n\r\n ngOnInit() {\r\n this.initForm();\r\n this.getTypePerson();\r\n this.getTypeCustumer();\r\n this.getCustomerSalesRegion();\r\n }\r\n nameTypeCustomer:any=\"\"\r\n disabledType:boolean = false\r\n initForm() {\r\n\r\n this._formEntity = new FormGroup({\r\n customername: new FormControl({ value: '', disabled: false }, [Validators.required, Validators.maxLength(45)]),\r\n customernumber: new FormControl({ value: '', disabled: false }, []),\r\n customertypeid: new FormControl({ value: 0, disabled: false }, [Validators.required]),\r\n offphone: new FormControl({ value: '', disabled: false }, []),\r\n phone2: new FormControl({ value: '', disabled: false }, []),\r\n website: new FormControl({ value: '', disabled: false }, []),\r\n offfax: new FormControl({ value: '', disabled: false }, []),\r\n emailaddress: new FormControl({ value: '', disabled: false }, []),\r\n address: new FormControl({ value: '', disabled: false }, []),\r\n addressline2: new FormControl({ value: '', disabled: false }, []),\r\n city: new FormControl({ value: '', disabled: false }, []),\r\n employeeid: new FormControl({ value: 1, disabled: false }, []),\r\n zip: new FormControl({ value: '', disabled: false }, []),\r\n state: new FormControl({ value: '', disabled: false }, []),\r\n country: new FormControl({ value: '', disabled: false }, []),\r\n billing: new FormControl({ value: 0, disabled: false }, []),\r\n customernotes: new FormControl({ value: '', disabled: false }, []),\r\n billingname: new FormControl({ value: '', disabled: false }, []),\r\n billingaddress: new FormControl({ value: '', disabled: false }, []),\r\n billingcity: new FormControl({ value: '', disabled: false }, []),\r\n billingzip: new FormControl({ value: '', disabled: false }, []),\r\n billingstate: new FormControl({ value: '', disabled: false }, []),\r\n billingcountry: new FormControl({ value: '', disabled: false }, []),\r\n othersalespersonids: new FormControl({ value: null, disabled: false }, []),\r\n salesregionid: new FormControl({ value: 0, disabled: false }, []),\r\n hascredit: new FormControl({ value: 1, disabled: false }, []),\r\n salestaxid: new FormControl({ value: 0, disabled: false }, [Validators.required]),\r\n date: new FormControl({ value: '', disabled: true }, []),\r\n createby: new FormControl({ value: '', disabled: true }, []),\r\n id: new FormControl({ value: 0, disabled: true }, []),\r\n });\r\n\r\n if(this.VieneDe == 'Consulting'){\r\n this.MapInformationService.SaveInfoSites({method:\"Get_DefaultConsultingfirm\"})\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n this._formEntity.get(\"customertypeid\").setValue(resp[0].ID)\r\n this.nameTypeCustomer = resp[0].CUSTOMERTYPE\r\n // this.disabledType = true\r\n })\r\n } else {\r\n // this.disabledType = false\r\n }\r\n }\r\n\r\n changeCustomerType(event){\r\n console.log(event)\r\n }\r\n\r\n getCustomerSalesRegion(){\r\n this.customerService.GetCustomerSalesRegion().subscribe(\r\n data => {\r\n this.optionsRegion = data.map((val) => {\r\n return {\r\n label: val.SALESREGION,\r\n value: val.ID\r\n };\r\n });\r\n \r\n }\r\n );\r\n\r\n this.MapInformationService.SaveInfoSites({ method: 'Get_Taxs' }).subscribe(\r\n data => {\r\n this.optionsTax = data.map((val) => {\r\n if (val.TAX != undefined)\r\n return { \r\n label: val.TAX,\r\n value: val.ID\r\n };\r\n });\r\n }\r\n );\r\n }\r\n\r\n submitForm(closemodal, goedit) {\r\n let formValue;\r\n\r\n\r\n formValue = this._formEntity.value;\r\n\r\n this.MapInformationService.SaveInfoSites({method:\"Get_DefaultConsultingfirm\"})\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n // if(this.VieneDe == 'Consulting'){\r\n // this._formEntity.get(\"customertypeid\").setValue(resp[0].ID)\r\n // this.nameTypeCustomer = resp[0].CUSTOMERTYPE\r\n // formValue.customertypeid = resp[0].ID\r\n // this.disabledType = true\r\n // } else {\r\n // this.disabledType = false\r\n // }\r\n\r\n if (formValue.billing === false || formValue.billing === null) {\r\n // delete formValue.billingAddress\r\n formValue = { customeraddresssame: 'false', ...formValue };\r\n formValue.billing = 0;\r\n } else {\r\n // Error: El servicio no esta guardandolos campos a continuacion\r\n formValue.billingaddress = formValue.address;\r\n formValue.billingcity = formValue.city;\r\n formValue.billingzip = formValue.zip;\r\n formValue.billingstate = formValue.state;\r\n formValue.billingcountry = formValue.country;\r\n // Se implementa el siguiente campo customeraddresssame\r\n formValue = { customeraddresssame: 'true', ...formValue };\r\n formValue.billing = 1;\r\n }\r\n formValue.hascredit = formValue.hascredit ? 1 : 0;\r\n \r\n formValue.method = \"Insert_Customer\"\r\n formValue.id = 0\r\n console.log('formValue', formValue);\r\n this.MapInformationService.SaveInfoSites(formValue).subscribe(\r\n // this.generalService.postInsertUpdategeneral('Customer/InsertCustomer', null, formValue).subscribe(\r\n data => {\r\n console.log(data);\r\n this.toast.success(this.translate.instant('msgCustCreSucc'));\r\n let reesultsite: any;\r\n reesultsite = { id: data[0].Column1, name: formValue.customername };\r\n this.result.emit(reesultsite);\r\n\r\n if (closemodal) {\r\n this.closeModalOutput();\r\n }\r\n\r\n if(goedit) {\r\n this.router.navigateByUrl(`/customers/editCustomer/${reesultsite.id}`);\r\n this.closeModalOutput();\r\n return;\r\n }\r\n\r\n this.initForm();\r\n },\r\n err => {\r\n console.log(err)\r\n }\r\n )\r\n })\r\n }\r\n\r\n getTypePerson() {\r\n this.generalService.GetSalesPerson().subscribe(\r\n data => {\r\n this.optionsSalesPerson = data.map((val) => {\r\n console.log('getTypePerson', val.value)\r\n return { // Return the new object structure\r\n Name: val.CONTACTNAME,\r\n ID: val.ID\r\n };\r\n });\r\n },\r\n err => {\r\n\r\n }\r\n )\r\n }\r\n getCountry() {\r\n this.customerService.GetCountries().subscribe(result => {\r\n this.contrySelect = result.map((val) => {\r\n return { // Return the new object structure\r\n Name: val.COUNTYNAME,\r\n ID: val.CountryISO3\r\n };\r\n });\r\n console.log('');\r\n });\r\n }\r\n getTypeCustumer() {\r\n\r\n this.generalService.getPopulateGeneral('CustomerType').subscribe(result => {\r\n if(this.VieneDe != 'Consulting'){\r\n this.optionsType = result.map((val) => {\r\n return { // Return the new object structure\r\n Name: val.CUSTOMERTYPE,\r\n ID: val.ID\r\n\r\n };\r\n });\r\n } else {\r\n this.optionsType = this.MarkAsConsulting.map((val) => {\r\n return { // Return the new object structure\r\n Name: val.CUSTOMERTYPE,\r\n ID: val.ID\r\n };\r\n });\r\n }\r\n });\r\n }\r\n\r\n getSalesperson() {\r\n this.generalService.GetSalesPerson().subscribe(\r\n data => {\r\n this.optionsSalesPerson = data.map((val) => {\r\n console.log('getTypePerson', val.value)\r\n return { // Return the new object structure\r\n Name: val.CONTACTNAME,\r\n ID: val.ID\r\n };\r\n });\r\n },\r\n err => {\r\n\r\n }\r\n )\r\n }\r\n closeModalOutput() {\r\n this.initForm();\r\n this.cloeModal.emit(true);\r\n\r\n }\r\n houseNumber:any=\"\"\r\n street:any=\"\"\r\n mapCity:any=\"\"\r\n mapState:any=\"\"\r\n mapcountry:any=\"\"\r\n mapPaostalCode:any=\"\"\r\n\r\n handleAddressChange(event) {\r\n console.log(event.address_components)\r\n console.log(event)\r\n for (let i = 1; i < event.address_components.length; i++) {\r\n let test = event.address_components[i];\r\n console.log(test)\r\n if (test.long_name != '') {\r\n if (test.types[0] == \"street_number\") {\r\n this.houseNumber = test.long_name;\r\n }\r\n if (test.types[0] == \"route\") {\r\n this.street = test.long_name;\r\n }\r\n if (test.types[0] == \"locality\") {\r\n this.mapCity = test.long_name;\r\n }\r\n if (test.types[0] == \"administrative_area_level_1\") {\r\n this.mapState = test.short_name;\r\n // this.mapState = test.long_name;\r\n }\r\n if (test.types[0] == \"country\") {\r\n this.mapcountry = test.long_name;\r\n }\r\n if (test.types[0] == \"postal_code\") {\r\n this.mapPaostalCode = test.long_name;\r\n }\r\n let streets = this.street && this.houseNumber ? (this.houseNumber + ', ' + this.street) : '';\r\n test = streets ? streets : this.street;\r\n }\r\n }\r\n this._formEntity.get('address').setValue(event.formatted_address)\r\n this._formEntity.get('city').setValue(this.mapCity)\r\n this._formEntity.get('zip').setValue(this.mapPaostalCode)\r\n this._formEntity.get('country').setValue(this.mapcountry)\r\n this._formEntity.get('state').setValue(this.mapState)\r\n }\r\n\r\n\r\n\r\n}\r\n\r\nexport class Item {\r\n ID: number;\r\n Name: string;\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NewCustomerComponent } from './new-customer.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DxButtonModule, DxCheckBoxModule, DxSelectBoxModule, DxTextAreaModule, DxTextBoxModule } from 'devextreme-angular';\r\nimport { GooglePlaceModule } from 'ngx-google-places-autocomplete';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NewCustomerComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxSelectBoxModule,\r\n DxCheckBoxModule,\r\n DxTextBoxModule,\r\n DxButtonModule,\r\n DxTextAreaModule,\r\n GooglePlaceModule,\r\n ],\r\n exports: [NewCustomerComponent]\r\n})\r\nexport class NewCustomerModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3NhbGVzLW1hbmFnZW1lbnQvZW1wbG95ZWUtYWN0aXZpdGllcy9mb3Jtcy9uZXctZW1wbGVveWUtYWN0aXZpdGllcy9uZXctZW1wbGVveWUtYWN0aXZpdGllcy5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit, Output, EventEmitter, ViewChild, Input, SimpleChanges, OnChanges } from '@angular/core';\r\n\r\nimport { FormGroup, FormControl, Validators, FormBuilder } from '@angular/forms';\r\n\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { CustomerService } from 'src/app/services/customer.service';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { NewCustomerComponent } from '../new-customer/new-customer.component';\r\nimport { NewServiceSiteComponent } from '../new-service-site/new-service-site.component';\r\nimport { Router } from '@angular/router';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'app-new-empleoye-activities',\r\n templateUrl: './new-empleoye-activities.component.html',\r\n styleUrls: ['./new-empleoye-activities.component.scss']\r\n})\r\nexport class NewEmpleoyeActivitiesComponent implements OnInit, OnChanges {\r\n @ViewChild(NewCustomerComponent, null) NewCustomer: NewCustomerComponent;\r\n @ViewChild(NewServiceSiteComponent, null) NewSite: NewServiceSiteComponent;\r\n\r\n @Input() viewedit = false;\r\n @Input() ActivityEmpl:any;\r\n @Input() popupEmployeeActivity = false;\r\n @Output() result = new EventEmitter();\r\n @Output() closeModal = new EventEmitter();\r\n @Output() formvalid = new EventEmitter();\r\n\r\n popupServiceSite = false;\r\n popupCustomer = false;\r\n\r\n public _formEntity: FormGroup;\r\n\r\n optionsCustomer: any = [];\r\n optionsempleoyees: any = [];\r\n optionsactivityType: any = [];\r\n optionsSite: any = [];\r\n optionsProject: any = [];\r\n\r\n varActType: number;\r\n\r\n now: Date = new Date();\r\n nowHour: Date = new Date();\r\n firstName: any;\r\n rules: any;\r\n\r\n titleModalActivity: string;\r\n // ActivityEmpl: any;\r\n\r\n IdAutocomplete: number;\r\n\r\n CustomerName: string;\r\n SiteNameVar: string;\r\n Projetcname: string;\r\n\r\n cancelButton: any;\r\n saveButton: any;\r\n saveNewButton: any;\r\n saveEditButton: any;\r\n\r\n\r\n cancelButtonNewCustomer: any;\r\n saveButtonNewCustomer: any;\r\n saveNewButtonNewCustomer: any;\r\n saveEditButtonNewCustomer: any;\r\n\r\n CustomerButton:any;\r\n ServiceSiteButton:any;\r\n\r\n @ViewChild('newcustomer', { static: false }) newcustomer: NewCustomerComponent;\r\n\r\n constructor(\r\n public MapInformationService: MapInformationService,\r\n private customerService: CustomerService,\r\n private generalService: GeneralService,\r\n private toast: ToastService,\r\n private router: Router,\r\n public fb: FormBuilder,\r\n private translate:TranslateService\r\n ) {\r\n\r\n this.rules = { \"X\": /[02-9]/ };\r\n\r\n this.CustomerButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick:( ) => {\r\n this.showInfo2()\r\n }\r\n };\r\n\r\n this.ServiceSiteButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick:( ) => {\r\n this.showInfo3()\r\n }\r\n };\r\n\r\n\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if(this.ActivityEmpl != undefined){\r\n console.log(\"aqui\")\r\n console.log(this.ActivityEmpl)\r\n this.ngOnInit()\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n this.getCustomer();\r\n this.getDataToSelects();\r\n this.titleModalActivity = \"\"\r\n console.log(this.ActivityEmpl)\r\n this.initForm(this.ActivityEmpl);\r\n // this.Reload()\r\n\r\n\r\n this.cancelButton = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupEmployeeActivity = false;\r\n },\r\n };\r\n\r\n this.saveButton = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.submitForm(true, false);\r\n },\r\n };\r\n\r\n this.saveNewButton = {\r\n text: this.translate.instant('btnSaveNew'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.submitForm(false, false);\r\n },\r\n\r\n };\r\n\r\n this.saveEditButton = {\r\n text: this.translate.instant('btnSaveEdit'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.submitForm(true, true);\r\n },\r\n };\r\n\r\n\r\n this.cancelButtonNewCustomer = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupCustomer = false;\r\n },\r\n };\r\n\r\n this.saveButtonNewCustomer = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.newcustomer.submitForm(true, false);\r\n },\r\n };\r\n\r\n this.saveNewButtonNewCustomer = {\r\n text: this.translate.instant('btnSaveNew'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newcustomer.submitForm(false, false);\r\n },\r\n\r\n };\r\n\r\n this.saveEditButtonNewCustomer = {\r\n text: this.translate.instant('btnSaveEdit'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newcustomer.submitForm(true, true);\r\n },\r\n };\r\n\r\n // if (sessionStorage.getItem('ActivityEmpl')) {\r\n // this.ActivityEmpl = JSON.parse(sessionStorage.getItem('ActivityEmpl'));\r\n // // sessionStorage.removeItem('ActivityEmpl');\r\n // this.titleModalActivity = \"\"\r\n // this.initForm(this.ActivityEmpl);\r\n // } else {\r\n // this.titleModalActivity = \"\"\r\n // this.initForm();\r\n\r\n // }\r\n }\r\n\r\n Reload(){\r\n this._formEntity = new FormGroup({\r\n id: new FormControl({ value: \"\", disabled: false }, []),\r\n OptCustomer: new FormControl({ value: 0, disabled: false }, [Validators.required, Validators.maxLength(45)]),\r\n OptServiceSite: new FormControl({ value: 0, disabled: false }, []),\r\n OptProject: new FormControl({ value: 0, disabled: false }, []),\r\n Hour: new FormControl({ value: \"\", disabled: false }, []),\r\n Minute: new FormControl({ value: \"\", disabled: false }, [Validators.required]),\r\n Customer: new FormControl({ value: \"\", disabled: false }, []),\r\n ServiceSite: new FormControl({ value: \"\", disabled: false }, []),\r\n Project: new FormControl({ value: \"\", disabled: false }, []),\r\n // CusomerActivityId: new FormControl({ value: '', disabled: false }, []),\r\n Employee: new FormControl({ value: \"\", disabled: false }, [Validators.required]),\r\n siteaddress: new FormControl({ value: '', disabled: false }, []),\r\n ActivityType: new FormControl({ value: \"\", disabled: false }, []),\r\n Description: new FormControl({ value: \"\", disabled: false }, []),\r\n StartTime: new FormControl({ value: \"\", disabled: false }, []),\r\n EndTime: new FormControl({ value: '', disabled: false }, []),\r\n FollowUp: new FormControl({ value: \"\", disabled: false }, []),\r\n Name: new FormControl({ value: \"\", disabled: false }, []),\r\n Closed: new FormControl({ value: \"\", disabled: false }, []),\r\n FollowUpComments: new FormControl({ value: \"\", disabled: false }, []),\r\n });\r\n }\r\n\r\n initForm(data?: any) {\r\n if (data) {\r\n // console.clear()\r\n //console.log('initForm sessionStorage', data);\r\n let mydate = new Date(data.DATE);\r\n this.now = mydate;\r\n this.nowHour = new Date(data.STARTTIME);\r\n let close;\r\n if (data.CLOSED === \"No\") {\r\n close = false;\r\n } else {\r\n close = true;\r\n }\r\n if (data.FOLLOWUP === 'No') {\r\n data.FOLLOWUP = false;\r\n } else { data.FOLLOWUP = true; }\r\n let duration;\r\n let dutationSub1 = data.DURATION + '';\r\n if (data.DURATION % 1 == 0) {\r\n //alert (\"Es un numero entero\");\r\n duration = data.DURATION + ':00'\r\n if (duration.length < 5) {\r\n duration = '0' + duration;\r\n }\r\n } else {\r\n //alert (\"Es un numero decimal\");\r\n if (dutationSub1.length < 5) {\r\n if (data.DURATION < 10) {\r\n if (data.DURATION < 1) {\r\n if (dutationSub1.length > 3) {\r\n duration = 0 + dutationSub1.replace('.', \":\");\r\n } else {\r\n duration = 0 + dutationSub1.replace('.', \":\") + 0;\r\n }\r\n } else {\r\n duration = 0 + dutationSub1.replace('.', \":\");\r\n if (duration.length < 5) {\r\n duration = duration + '0';\r\n }\r\n }\r\n } else {\r\n duration = dutationSub1.replace('.', \":\");\r\n duration = duration + '0';\r\n }\r\n } else {\r\n duration = dutationSub1.replace('.', \":\");\r\n }\r\n }\r\n let idCustuimer;\r\n this.CustomerName = '';\r\n this.SiteNameVar = '';\r\n this.Projetcname = '';\r\n if (data.CUSTOMER !== \"\") {\r\n this.CustomerName = data.CUSTOMER;\r\n // this.IdAutocomplete = data.CUSTOMERID;\r\n }\r\n if (data.SiteName) {\r\n this.SiteNameVar = data.SiteName;\r\n // this.IdAutocomplete = data.ServiceSite;\r\n }\r\n if (data.ProjectName) {\r\n this.Projetcname = data.ProjectName;\r\n // this.IdAutocomplete = data.Project;\r\n }\r\n //console.log(data)\r\n\r\n //console.log('init edit');\r\n\r\n this._formEntity = new FormGroup({\r\n id: new FormControl({ value: data.ID, disabled: false }, []),\r\n OptCustomer: new FormControl({ value: 0, disabled: false }, [Validators.required, Validators.maxLength(45)]),\r\n OptServiceSite: new FormControl({ value: 0, disabled: false }, []),\r\n OptProject: new FormControl({ value: 0, disabled: false }, []),\r\n Hour: new FormControl({ value: data.STARTTIME, disabled: false }, []),\r\n Minute: new FormControl({ value: duration, disabled: false }, [Validators.required]),\r\n Customer: new FormControl({ value: data.CUSTOMERID, disabled: false }, []),\r\n ServiceSite: new FormControl({ value: data.SERVICESITEID, disabled: false }, []),\r\n Project: new FormControl({ value: data.PROJECTID, disabled: false }, []),\r\n // CusomerActivityId: new FormControl({ value: '', disabled: false }, []),\r\n Employee: new FormControl({ value: data.EMPLOYEEID, disabled: false }, [Validators.required]),\r\n siteaddress: new FormControl({ value: '', disabled: false }, []),\r\n ActivityType: new FormControl({ value: data.TYPEID, disabled: false }, []),\r\n Description: new FormControl({ value: data.NOTES, disabled: false }, []),\r\n StartTime: new FormControl({ value: mydate, disabled: false }, []),\r\n EndTime: new FormControl({ value: '', disabled: false }, []),\r\n FollowUp: new FormControl({ value: data.FOLLOWUP, disabled: false }, []),\r\n Name: new FormControl({ value: data.NAME, disabled: false }, []),\r\n Closed: new FormControl({ value: close, disabled: false }, []),\r\n FollowUpComments: new FormControl({ value: data.FOLLOWUPCOMMENTS, disabled: false }, []),\r\n });\r\n\r\n if (data.CUSTOMER !== \"\") {\r\n this.optionsSelect('OptCustomer');\r\n }\r\n if (data.ServiceSite !== -1) {\r\n this.optionsSelect('serviceSite');\r\n }\r\n if (data.Project !== -1) {\r\n this.optionsSelect('project');\r\n }\r\n\r\n if (data.CUSTOMERID == -1) {\r\n this.CustomerName = \"\";\r\n }\r\n if (data.SERVICESITEID == -1) {\r\n this.SiteNameVar = \"\"\r\n }\r\n if (data.PROJECTID == -1) {\r\n this.Projetcname = \"\"\r\n }\r\n\r\n this.fomrvalid();\r\n\r\n } else {\r\n //console.log('init dorm');\r\n\r\n this._formEntity = new FormGroup({\r\n OptCustomer: new FormControl({ value: 1, disabled: false }, [Validators.maxLength(45)]),\r\n OptServiceSite: new FormControl({ value: 0, disabled: false }, []),\r\n OptProject: new FormControl({ value: 0, disabled: false }, []),\r\n Hour: new FormControl({ value: this.nowHour, disabled: false }, []),\r\n Minute: new FormControl({ value: '00:01', disabled: false }, [Validators.required]),\r\n Customer: new FormControl({ value: '', disabled: false }, []),\r\n ServiceSite: new FormControl({ value: '', disabled: false }, []),\r\n Project: new FormControl({ value: '', disabled: false }, []),\r\n // CusomerActivityId: new FormControl({ value: '', disabled: false }, []),\r\n Employee: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n siteaddress: new FormControl({ value: '', disabled: false }, []),\r\n ActivityType: new FormControl({ value: null, disabled: false }, []),\r\n Description: new FormControl({ value: '', disabled: false }, []),\r\n StartTime: new FormControl({ value: this.now, disabled: false }, []),\r\n EndTime: new FormControl({ value: '', disabled: false }, []),\r\n FollowUp: new FormControl({ value: false, disabled: false }, []),\r\n Name: new FormControl({ value: '', disabled: false }, []),\r\n Closed: new FormControl({ value: '', disabled: false }, []),\r\n FollowUpComments: new FormControl({ value: '', disabled: false }, []),\r\n });\r\n this.MapInformationService.SaveInfoSites({method:\"Get_Activitydefaultvalues\"})\r\n .subscribe(resp=> {\r\n console.log(resp)\r\n this._formEntity.patchValue({ Name: resp[0].ActivityName });\r\n this._formEntity.patchValue({ ActivityType: resp[0].ActivitytypeId });\r\n this._formEntity.patchValue({ Employee: resp[0].EmployeeId });\r\n })\r\n\r\n }\r\n\r\n\r\n }\r\n fomrvalid() {\r\n //console.log('fomrvalid');\r\n\r\n if (this._formEntity.valid) {\r\n this.formvalid.emit({dara: 'as'});\r\n } else {\r\n this.formvalid.emit(false);\r\n }\r\n }\r\n optionType(e) {\r\n //console.log('eve', e);\r\n if (e.selectedItem) {\r\n this.varActType = e.selectedItem.key;\r\n //console.log('optionType', this.varActType);\r\n }\r\n }\r\n\r\n\r\n submitForm(closemodal, goedit) {\r\n let formValue;\r\n let hour, minute;\r\n minute = 0;\r\n formValue = this._formEntity.value;\r\n formValue.StartTime = this.convertADate(formValue.StartTime);\r\n formValue.StartTime = formValue.StartTime + ' ' + this.getHour(formValue.Hour);\r\n //Change Duration\r\n formValue.Minute = formValue.Minute.replace(':', \"\");\r\n hour = parseInt(formValue.Minute.substr(0, 2));\r\n minute = parseInt(formValue.Minute.substr(2, 2));\r\n formValue.Minute = minute;\r\n formValue.Hour = hour;\r\n //\r\n if (formValue.ActivityType === null) {\r\n formValue.ActivityType = this.varActType;\r\n }\r\n\r\n // Change boolean ton strin 0 and 1\r\n if (formValue.FollowUp === true) {\r\n formValue.FollowUp = parseInt('1');\r\n } else { formValue.FollowUp = parseInt('0'); }\r\n // Close\r\n if (formValue.Closed === true) {\r\n formValue.Closed = parseInt('1');\r\n } else { formValue.Closed = parseInt('0'); }\r\n // END hange boolean ton strin 0 and 1\r\n if (formValue.Name === \"\") {\r\n formValue.Name = \"New Activity\";\r\n }\r\n\r\n\r\n\r\n // if (formValue.OptCustomer === 1) {\r\n // if (this.ActivityEmpl && this.IdAutocomplete < 1) {\r\n // this.IdAutocomplete = this.ActivityEmpl.CUSTOMERID;\r\n // // formValue.Customer = this.ActivityEmpl.CUSTOMERID;\r\n // } else {\r\n // formValue.Customer = this.IdAutocomplete;\r\n // }\r\n // formValue.Customer = this.IdAutocomplete;\r\n // // formValue.Project = 0;\r\n // // formValue.ServiceSite = 0;\r\n // }\r\n\r\n // if (formValue.OptServiceSite === 1) {\r\n // if (this.ActivityEmpl && this.IdAutocomplete < 1) {\r\n\r\n // // formValue.ServiceSite = this.ActivityEmpl.CUSTOMERID;\r\n // } else {\r\n // formValue.ServiceSite = this.IdAutocomplete;\r\n // }\r\n // // formValue.Project = 0;\r\n // // formValue.Customer = 0;\r\n // }\r\n\r\n // if (formValue.OptProject === 1) {\r\n // if (this.ActivityEmpl && this.IdAutocomplete < 1) {\r\n // // formValue.Project = this.ActivityEmpl.CUSTOMERID;\r\n // } else {\r\n // formValue.Project = this.IdAutocomplete;\r\n // }\r\n // formValue.Project = this.IdAutocomplete;\r\n // // formValue.ServiceSite = 0;\r\n // // formValue.Customer = 0;\r\n // }\r\n\r\n if (formValue.Project === \"\") {\r\n formValue.Project = 0;\r\n }\r\n if (formValue.Customer === \"\") {\r\n formValue.Customer = 0;\r\n }\r\n\r\n if (formValue.ServiceSite === \"\") {\r\n formValue.ServiceSite = 0;\r\n }\r\n console.log(formValue)\r\n if (formValue.Project === 0 && formValue.Customer === 0 && formValue.ServiceSite === 0){\r\n this.toast.warning(\"You must select any option Customer, Service Site or Project\")\r\n return false\r\n }\r\n\r\n\r\n\r\n if (formValue.Project === 0 || formValue.Project === undefined || formValue.Project === \"\" || formValue.Project === -1) {\r\n formValue.OptProject = 0;\r\n } else {\r\n formValue.OptProject = 1;\r\n }\r\n if (formValue.Customer === \"\" || formValue.Customer === undefined || formValue.Customer === 0 || formValue.Customer === -1) {\r\n formValue.OptCustomer = 0;\r\n } else {\r\n formValue.OptCustomer = 1;\r\n }\r\n\r\n if (formValue.ServiceSite === \"\" || formValue.ServiceSite === undefined || formValue.ServiceSite === 0 || formValue.ServiceSite === -1) {\r\n formValue.OptServiceSite = 0;\r\n } else {\r\n formValue.OptServiceSite = 1;\r\n }\r\n\r\n\r\n // **** Edit Or Create ***\r\n // if (this.ActivityEmpl) {\r\n // formValue = { CusomerActivityId: this.ActivityEmpl.ID, ...formValue };\r\n // }\r\n /*\r\n Hour: 29\r\n Minute: 0\r\n StartTime: \"202008021 08:26\"\r\n*/\r\n\r\n\r\n if (formValue.id > 0) {\r\n formValue.activityid =formValue.id\r\n formValue.method =\"UpdateActivity\"\r\n } else {\r\n formValue.method =\"SaveActivity\"\r\n }\r\n\r\n console.log('formValue', formValue);\r\n\r\n this.MapInformationService.SaveInfoSites(formValue).subscribe(\r\n // this.generalService.postInsertUpdategeneral('Activity/InsertUpdateActivity', null, formValue).subscribe(\r\n data => {\r\n //console.log(data);\r\n\r\n if (formValue.id > 0) {\r\n // No reset form\r\n this.toast.success(this.translate.instant('msgActEdiSucc'));\r\n } else {\r\n this.toast.success(this.translate.instant('msgActCreSucc'));\r\n this.initForm();\r\n\r\n if (closemodal) {\r\n this.closeModalOutput();\r\n }\r\n\r\n if (goedit) {\r\n this.router.navigateByUrl(`/employeeActivity/editEmployeeActivities/${data[0].ID}`);\r\n }\r\n }\r\n this.result.emit(data);\r\n\r\n },\r\n err => {\r\n //console.log(err)\r\n if (this.ActivityEmpl) {\r\n this._formEntity.patchValue({ Minute: this.durationCovert(this.ActivityEmpl) });\r\n } else {\r\n this._formEntity.patchValue({ Minute: '00:01' });\r\n }\r\n }\r\n )\r\n }\r\n\r\n\r\n convertADate(str) {\r\n var date = new Date(str),\r\n mnth = (\"0\" + (date.getMonth() + 1)).slice(-2),\r\n day = (\"0\" + date.getDate()).slice(-2);\r\n return [date.getFullYear(), mnth, day].join(\"\");\r\n }\r\n getHour(str) {\r\n var date = new Date(str);\r\n let hour, min;\r\n if (date.getHours() < 10) {\r\n hour = '0' + date.getHours()\r\n } else { hour = date.getHours() }\r\n if (date.getMinutes() < 10) {\r\n min = '0' + date.getMinutes()\r\n } else { min = date.getMinutes() }\r\n return [hour, min].join(\":\");\r\n }\r\n\r\n optionsSelect(select) {\r\n //console.log('optionsSelect');\r\n if (select === 'OptCustomer') {\r\n this._formEntity.patchValue({ OptCustomer: 1 });\r\n // this._formEntity.patchValue({ OptServiceSite: 0, ServiceSite: '' });\r\n // this._formEntity.patchValue({ OptProject: 0, Project: '' });\r\n }\r\n if (select === 'serviceSite') {\r\n // this._formEntity.patchValue({ OptCustomer: 0, Customer: '' });\r\n // this._formEntity.patchValue({ OptProject: 0, Project: '' });\r\n this._formEntity.patchValue({ OptServiceSite: 1 });\r\n }\r\n if (select === 'project') {\r\n // this._formEntity.patchValue({ OptServiceSite: 0, ServiceSite: '' });\r\n // this._formEntity.patchValue({ OptCustomer: 0, Customer: '' });\r\n this._formEntity.patchValue({ OptProject: 1 });\r\n }\r\n }\r\n\r\n closeModalOutput() {\r\n this.closeModal.emit(true);\r\n this.initForm()\r\n }\r\n\r\n getCustomer() {\r\n this.generalService.getPopulateGeneral('Customer/GetCustomerList').subscribe(\r\n data => {\r\n this.optionsCustomer = data.map((val) => {\r\n // //console.log('GetCustomerList', val.value)\r\n return { // Return the new object structure\r\n Name: val.DESCRIPTION,\r\n ID: val.ID\r\n };\r\n });\r\n },\r\n err => {\r\n\r\n }\r\n )\r\n }\r\n getDataToSelects() {\r\n if(this.optionsempleoyees.length == 0){\r\n this.generalService.GetEmployees().subscribe(result => {\r\n this.optionsempleoyees = result.map((val) => {\r\n return { // Return the new object structure\r\n Name: val.CONTACTNAME, key: val.ID\r\n };\r\n });\r\n });\r\n }\r\n\r\n this.generalService.getPopulateGeneral('Customer/GetCustomerActivityType').subscribe(result => {\r\n this.optionsactivityType = result.map((val) => {\r\n return { // Return the new object structure\r\n Name: val.Name, key: val.ID\r\n };\r\n });\r\n });\r\n\r\n this.generalService.getPopulateGeneral('Site').subscribe(result => {\r\n this.optionsSite = result.map((val) => {\r\n return { // Return the new object structure\r\n Name: val.SITENAME, ID: val.ID\r\n };\r\n });\r\n });\r\n\r\n if(this.optionsProject.length == 0){\r\n this.generalService.getPopulateGeneral('Project').subscribe(result => {\r\n this.optionsProject = result.map((val) => {\r\n return { // Return the new object structure\r\n Name: val.value, ID: val.ID\r\n };\r\n });\r\n });\r\n }\r\n }\r\n\r\n showInfo2() {\r\n this.popupCustomer = true;\r\n }\r\n //popupServiceSite\r\n showInfo3() {\r\n this.popupServiceSite = true;\r\n }\r\n resultulCustumerOriginal(e) {\r\n //console.log('resultulCustumerOriginal', e);\r\n this.IdAutocomplete = e.id;\r\n\r\n this._formEntity.patchValue({ OptCustomer: 1, Customer: e.name });\r\n this._formEntity.patchValue({ OptServiceSite: 0, ServiceSite: '' });\r\n this._formEntity.patchValue({ OptProject: 0, Project: '' });\r\n }\r\n //outpu site\r\n resultNewCustomer(e) {\r\n //console.log('resultNewCustomer', e);\r\n this.IdAutocomplete = e.id;\r\n\r\n this._formEntity.patchValue({ OptCustomer: 0, Customer: '' });\r\n this._formEntity.patchValue({ OptProject: 0, Project: '' });\r\n this._formEntity.patchValue({ OptServiceSite: 1, ServiceSite: e.name });\r\n }\r\n resultNewSite(e) {\r\n //console.log('resultNewSite', e);\r\n }\r\n\r\n updateEmployeeInfo(e) {\r\n //console.log('updateEmployeeInfo', e);\r\n if (e.selectedItem.ID) {\r\n this.IdAutocomplete = e.selectedItem.ID;\r\n this._formEntity.get(\"Customer\").setValue(e.selectedItem.ID)\r\n this.CustomerName = e.selectedItem.Name\r\n\r\n // **************************\r\n this._formEntity.get(\"ServiceSite\").setValue(0)\r\n this.SiteNameVar = \"\"\r\n\r\n this._formEntity.get(\"Project\").setValue(0)\r\n this.Projetcname = \"\"\r\n }\r\n }\r\n\r\n updateEmployeeInfo1(e) {\r\n //console.log('updateEmployeeInfo', e);\r\n if (e.selectedItem.ID) {\r\n this.IdAutocomplete = e.selectedItem.ID;\r\n this._formEntity.get(\"ServiceSite\").setValue(e.selectedItem.ID)\r\n this.SiteNameVar = e.selectedItem.Name\r\n\r\n //************************* */\r\n this._formEntity.get(\"Project\").setValue(0)\r\n this.Projetcname = \"\"\r\n\r\n this._formEntity.get(\"Customer\").setValue(0)\r\n this.CustomerName = \"\"\r\n }\r\n }\r\n\r\n updateEmployeeInfo2(e) {\r\n //console.log('updateEmployeeInfo', e);\r\n if (e.selectedItem.ID) {\r\n this.IdAutocomplete = e.selectedItem.ID;\r\n this._formEntity.get(\"Project\").setValue(e.selectedItem.ID)\r\n this.Projetcname = e.selectedItem.Name\r\n\r\n // *********************\r\n this._formEntity.get(\"Customer\").setValue(0)\r\n this.CustomerName = \"\"\r\n\r\n this._formEntity.get(\"ServiceSite\").setValue(0)\r\n this.SiteNameVar = \"\"\r\n }\r\n }\r\n close() {\r\n //console.log('close');\r\n this.NewCustomer.initForm();\r\n this.NewSite.initForm();\r\n\r\n }\r\n\r\n durationCovert(data: any) {\r\n let duration;\r\n let dutationSub1 = data.DURATION + '';\r\n if (data.DURATION % 1 == 0) {\r\n //alert (\"Es un numero entero\");\r\n duration = data.DURATION + ':00'\r\n if (duration.length < 5) {\r\n duration = '0' + duration;\r\n }\r\n } else {\r\n //alert (\"Es un numero decimal\");\r\n if (dutationSub1.length < 5) {\r\n if (data.DURATION < 10) {\r\n if (data.DURATION < 1) {\r\n if (dutationSub1.length > 3) {\r\n duration = 0 + dutationSub1.replace('.', \":\");\r\n } else {\r\n duration = 0 + dutationSub1.replace('.', \":\") + 0;\r\n }\r\n } else {\r\n duration = 0 + dutationSub1.replace('.', \":\");\r\n if (duration.length < 5) {\r\n duration = duration + '0';\r\n }\r\n }\r\n } else {\r\n duration = dutationSub1.replace('.', \":\");\r\n duration = duration + '0';\r\n }\r\n } else {\r\n duration = dutationSub1.replace('.', \":\");\r\n }\r\n }\r\n return duration;\r\n }\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NewEmpleoyeActivitiesComponent } from './new-empleoye-activities.component';\r\nimport { DxAutocompleteModule, DxButtonModule, DxCheckBoxModule, DxDateBoxModule, DxPopupModule, DxScrollViewModule, DxSelectBoxModule, DxTextAreaModule, DxTextBoxModule } from 'devextreme-angular';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { NewCustomerModule } from '../new-customer/new-customer.module';\r\nimport { NewServiceSiteModule } from '../new-service-site/new-service-site.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NewEmpleoyeActivitiesComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxButtonModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxDateBoxModule,\r\n DxAutocompleteModule,\r\n DxSelectBoxModule,\r\n DxDateBoxModule,\r\n DxCheckBoxModule,\r\n DxTextBoxModule,\r\n NewServiceSiteModule,\r\n NewCustomerModule,\r\n DxTextAreaModule\r\n ],\r\n exports: [NewEmpleoyeActivitiesComponent]\r\n})\r\nexport class NewEmpleoyeActivitiesModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3NhbGVzLW1hbmFnZW1lbnQvZW1wbG95ZWUtYWN0aXZpdGllcy9mb3Jtcy9uZXctc2VydmljZS1zaXRlL25ldy1zZXJ2aWNlLXNpdGUuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit, Output, EventEmitter, Input, ViewChild } from '@angular/core';\r\nimport { CustomerService } from 'src/app/services/customer.service';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { FormGroup, FormControl, Validators, FormBuilder } from '@angular/forms';\r\nimport DataSource from 'devextreme/data/data_source';\r\nimport { NavigationExtras, Router } from '@angular/router';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { NewCustomerComponent } from '../new-customer/new-customer.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport Popup from 'devextreme/ui/popup';\r\n@Component({\r\n selector: 'app-new-service-site',\r\n templateUrl: './new-service-site.component.html',\r\n styleUrls: ['./new-service-site.component.scss']\r\n})\r\nexport class NewServiceSiteComponent implements OnInit {\r\n @Output() result = new EventEmitter();\r\n @Output() cloeModal = new EventEmitter();\r\n @Input() popupServiceSite:boolean\r\n @Input() VieneDe:any\r\n @ViewChild('newcustomer', { static: false }) newcustomer: NewCustomerComponent;\r\n\r\n public _formEntity: FormGroup;\r\n IdAutocompleteOwner: number;\r\n optionsOwner: any;\r\n optionsMarket: any;\r\n optionsConutry: any;\r\n customerDataSource: any;\r\n owenername: any;\r\n direccion:any=\"\"\r\n addCustomerButton:any\r\n popupCustomer:boolean=false\r\n cancelButtonNewCustomer: any;\r\n saveButtonNewCustomer: any;\r\n saveNewButtonNewCustomer:any\r\n saveEditButtonNewCustomer:any\r\n\r\n houseNumber:any=\"\"\r\n street:any=\"\"\r\n mapCity:any=\"\"\r\n mapState:any=\"\"\r\n mapcountry:any=\"\"\r\n mapPaostalCode:any=\"\"\r\n constructor(\r\n private MapInformationService:MapInformationService,\r\n private customerService: CustomerService,\r\n private generalService: GeneralService,\r\n private toast: ToastService,\r\n public fb: FormBuilder,\r\n private router: Router,\r\n private translate:TranslateService,\r\n ) {\r\n\r\n Popup.defaultOptions({\r\n device: { deviceType: \"phone\" },\r\n options: {\r\n fullScreen: true\r\n }\r\n });\r\n\r\n this.addCustomerButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupCustomer = true;\r\n },\r\n };\r\n\r\n this.cancelButtonNewCustomer = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupCustomer = false;\r\n },\r\n };\r\n\r\n this.saveButtonNewCustomer = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.newcustomer.submitForm(true, false);\r\n },\r\n };\r\n\r\n this.saveNewButtonNewCustomer = {\r\n text: this.translate.instant('btnSaveNew'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newcustomer.submitForm(false, false);\r\n },\r\n\r\n };\r\n\r\n this.saveEditButtonNewCustomer = {\r\n text: this.translate.instant('btnSaveEdit'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newcustomer.submitForm(true, true);\r\n },\r\n };\r\n }\r\n\r\n ngOnInit() {\r\n this.initForm();\r\n this.getCountry();\r\n this.getMarket();\r\n // this.getOwner();\r\n\r\n let mythis = this;\r\n this.customerDataSource = new DataSource({\r\n load: function (loadOptions: any) {\r\n return mythis.customerService.GetCustomerByName(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n }\r\n initForm() {\r\n this.owenername = '';\r\n this._formEntity = new FormGroup({\r\n sitename: new FormControl({ value: '', disabled: false }, [Validators.required, Validators.maxLength(50)]),\r\n siteaddress: new FormControl({ value: '', disabled: false }, []),\r\n siteaddressline2: new FormControl({ value: '', disabled: false }, []),\r\n sitecity: new FormControl({ value: '', disabled: false }, []),\r\n sitezip: new FormControl({ value: '', disabled: false }, []),\r\n sitecountry: new FormControl({ value: '', disabled: false }, []),\r\n sitestate: new FormControl({ value: '', disabled: false }, []),\r\n sitenotes: new FormControl({ value: '', disabled: false }, []),\r\n ownerid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n sitevertcalmarket: new FormControl({ value: 1, disabled: false }, []),\r\n lon: new FormControl({ value: 0, disabled: false }, []),\r\n lat: new FormControl({ value: 0, disabled: false }, []),\r\n flagSale: new FormControl({ value: 0, disabled: false }, []),\r\n });\r\n }\r\n\r\n\r\n\r\n handleAddressChange(event){\r\n this.direccion = event.formatted_address\r\n this._formEntity.get('lon').setValue(event.geometry.location.lng());\r\n this._formEntity.get('lat').setValue(event.geometry.location.lat());\r\n this._formEntity.get('siteaddress').setValue(event.formatted_address);\r\n\r\n for (let i = 1; i < event.address_components.length; i++) {\r\n let test = event.address_components[i];\r\n console.log(test)\r\n if (test.long_name != '') {\r\n if (test.types[0] == \"street_number\") {\r\n this.houseNumber = test.long_name;\r\n }\r\n if (test.types[0] == \"route\") {\r\n this.street = test.long_name;\r\n }\r\n if (test.types[0] == \"locality\") {\r\n this.mapCity = test.long_name;\r\n }\r\n if (test.types[0] == \"administrative_area_level_1\") {\r\n this.mapState = test.short_name;\r\n // this.mapState = test.long_name;\r\n }\r\n if (test.types[0] == \"country\") {\r\n this.mapcountry = test.long_name;\r\n }\r\n if (test.types[0] == \"postal_code\") {\r\n this.mapPaostalCode = test.long_name;\r\n }\r\n let streets = this.street && this.houseNumber ? (this.houseNumber + ', ' + this.street) : '';\r\n test = streets ? streets : this.street;\r\n }\r\n }\r\n this._formEntity.get('sitecity').setValue(this.mapCity)\r\n this._formEntity.get('sitezip').setValue(this.mapPaostalCode)\r\n this._formEntity.get('sitecountry').setValue(this.mapcountry)\r\n this._formEntity.get('sitestate').setValue(this.mapState)\r\n\r\n }\r\n\r\n\r\n updateOwener(item) {\r\n\r\n if (item.selectedItem && item.selectedItem.ID) {\r\n this._formEntity.get('ownerid').setValue(item.selectedItem.ID);\r\n this.owenername = item.selectedItem.DESCRIPTION;\r\n // this.state = item.selectedItem.First + ' ' + item.selectedItem.Last;\r\n }\r\n }\r\n\r\n getOwner() {\r\n this.generalService.getPopulateGeneral('Customer/GetCustomerList').subscribe(\r\n data => {\r\n this.optionsOwner = data.map((val) => {\r\n return { // Return the new object structure\r\n Name: val.DESCRIPTION,\r\n ID: val.ID\r\n };\r\n });\r\n },\r\n err => {\r\n\r\n }\r\n )\r\n }\r\n\r\n getCountry() {\r\n this.customerService.GetCountries().subscribe(result => {\r\n this.optionsConutry = result.map((val) => {\r\n return { // Return the new object structure\r\n Name: val.COUNTYNAME,\r\n ID: val.CountryISO3\r\n };\r\n });\r\n // console.log('optionsConutry',this.optionsConutry);\r\n });\r\n }\r\n\r\n getMarket() {\r\n this.generalService.getPopulateGeneral('VerticalMarket').subscribe(result => {\r\n this.optionsMarket = result.map((val) => {\r\n return { // Return the new object structure\r\n Name: val.VERTMARKETDESCRIPTION,\r\n ID: val.ID\r\n };\r\n });\r\n });\r\n }\r\n\r\n closeModalOutput() {\r\n this.initForm();\r\n this.cloeModal.emit(true);\r\n\r\n }\r\n updateEmployeeInfo(e) {\r\n if (e.selectedItem) {\r\n this.IdAutocompleteOwner = e.selectedItem.ID;\r\n }\r\n }\r\n\r\n submitForm() {\r\n\r\n // if(this._formEntity.value.siteaddress != ''){\r\n let formValue;\r\n formValue = this._formEntity.value;\r\n if (formValue.sitename === '') {\r\n formValue.sitename = 'New Site'\r\n }\r\n if (this.IdAutocompleteOwner) {\r\n formValue.ownerid = this.IdAutocompleteOwner\r\n }\r\n\r\n if (formValue.lon == undefined || formValue.lon == '' ) {\r\n this.toast.warning(\"You must write the Address\")\r\n return false\r\n }\r\n //save here\r\n \r\n formValue.method = \"Insert_ServiceSiteCE\"\r\n formValue.id = 0\r\n formValue.salesite = formValue.flagSale == true ? 1 : 0\r\n formValue.hascontract = 0\r\n formValue.hasasset = 0\r\n\r\n console.log(\"formValue\", formValue);\r\n\r\n this.MapInformationService.getParameters(\"Insert_ServiceSiteCE\")\r\n .subscribe(x=>{\r\n console.log(x)\r\n })\r\n\r\n this.MapInformationService.SaveInfoSites(formValue)\r\n .subscribe(data=>{\r\n console.log(data)\r\n this.toast.success(this.translate.instant('msgServSitCreSucc'));\r\n let resultdata: any;\r\n resultdata = { name: formValue.sitename, id: data[0].ReturnID }\r\n this.result.emit(resultdata);\r\n this.direccion = \"\"\r\n this.initForm();\r\n this.popupServiceSite = false\r\n })\r\n }\r\n\r\n submitFormEdit(){\r\n if(this._formEntity.value.siteaddress != ''){\r\n let formValue;\r\n formValue = this._formEntity.value;\r\n if (formValue.sitename === '') {\r\n formValue.sitename = 'New Site'\r\n }\r\n if (this.IdAutocompleteOwner) {\r\n formValue.ownerid = this.IdAutocompleteOwner\r\n }\r\n\r\n //save here\r\n console.log(\"formValue\", formValue);\r\n // localStorage.removeItem('newSwoEdit')\r\n // localStorage.setItem('newSwoEdit',this.idNewSWO)\r\n\r\n this.generalService.postInsertUpdategeneral('Site/InsertSite', null, formValue).subscribe(\r\n data => {\r\n this.toast.success(this.translate.instant('msgServSitCreSucc'));\r\n let resultdata: any;\r\n resultdata = { name: formValue.sitename, id: data[0].ReturnID }\r\n this.direccion = \"\"\r\n localStorage.removeItem('newSite')\r\n localStorage.setItem('newSite',data[0].ReturnID)\r\n // let navigationExtras: NavigationExtras = {\r\n // state: {\r\n // numSITEID:data[0].ReturnID\r\n // }\r\n // };\r\n // this.router.navigate(['/serviceSites/editServiceSite'], navigationExtras);\r\n this.router.navigate(['/serviceSites/editServiceSite'], { queryParams: { numSITEID: data[0].ReturnID} })\r\n // this.result.emit(resultdata);\r\n\r\n this.initForm();\r\n this.popupServiceSite = false\r\n },\r\n err => {\r\n console.log(err)\r\n }\r\n )\r\n } else {\r\n this.toast.warning(\"You have to write the address\");\r\n }\r\n }\r\n\r\n close(){}\r\n\r\n resultulCustumerOriginal(ev) {\r\n console.log(ev);\r\n\r\n let obj = {\r\n selectedItem: {\r\n ID: ev.id,\r\n DESCRIPTION: ev.name\r\n }\r\n };\r\n\r\n this._formEntity.get(\"ownerid\").setValue(ev.id)\r\n this.owenername = ev.name\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NewServiceSiteComponent } from './new-service-site.component';\r\nimport { DxAutocompleteModule, DxButtonModule, DxSelectBoxModule, \r\n DxScrollViewModule,\r\n DxTabPanelModule,\r\n DxAccordionModule,\r\n DxDateBoxModule,\r\n DxTagBoxModule,\r\n DxRangeSliderModule,\r\n DxFileUploaderModule,\r\n DxNumberBoxModule,\r\n DxToolbarModule,DxTextBoxModule, DxCheckBoxModule, DxTextAreaModule, DxDataGridModule, DxSliderModule, DxPopupModule, DxTemplateModule, DxDropDownButtonModule } from 'devextreme-angular';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { GooglePlaceModule } from 'ngx-google-places-autocomplete';\r\nimport { NewCustomerModule } from '../new-customer/new-customer.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NewServiceSiteComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxTextBoxModule,\r\n DxSelectBoxModule,\r\n DxButtonModule,\r\n DxAutocompleteModule,\r\n GooglePlaceModule,\r\n DxCheckBoxModule,\r\n NewCustomerModule,\r\n DxTextAreaModule,\r\n DxDataGridModule,\r\n DxSliderModule,\r\n DxButtonModule,\r\n DxPopupModule,\r\n DxTemplateModule,\r\n DxDropDownButtonModule,\r\n DxScrollViewModule,\r\n DxTabPanelModule,\r\n DxAccordionModule,\r\n DxDateBoxModule,\r\n DxTagBoxModule,\r\n DxRangeSliderModule,\r\n DxFileUploaderModule,\r\n DxNumberBoxModule,\r\n DxToolbarModule\r\n ],\r\n exports: [NewServiceSiteComponent]\r\n})\r\nexport class NewServiceSiteModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3NhbGVzLW1hbmFnZW1lbnQvbWFya2V0LWFuYWx5c2lzL21hcmtldC1jb21wYW5pZXMtdGhhdC15b3UtY29tcGV0ZS9tYXJrZXQtY29tcGFuaWVzLXRoYXQteW91LWNvbXBldGUuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { MarketAnalysisService } from 'src/app/services/market-analysis.service';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'app-market-companies-that-you-compete',\r\n templateUrl: './market-companies-that-you-compete.component.html',\r\n styleUrls: ['./market-companies-that-you-compete.component.scss']\r\n})\r\nexport class MarketCompaniesThatYouCompeteComponent implements OnInit {\r\n @Output() onsaveMarket: EventEmitter = new EventEmitter();\r\n @Output() Resultado: EventEmitter = new EventEmitter();\r\n marketAnalysisClientCompatitorsData: any;\r\n _formMarketCompetitors: FormGroup;\r\n popupNewItem = false;\r\n constructor(\r\n private marketAnalysisService: MarketAnalysisService,\r\n private toast: ToastService,\r\n private translate:TranslateService) {\r\n this.initMarketCompetitors(null);\r\n\r\n this.marketAnalysisService.GetMarketAnalysisClientCompetitors().subscribe(result => {\r\n this.marketAnalysisClientCompatitorsData = result;\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n initMarketCompetitors(item?: any) {\r\n this._formMarketCompetitors = new FormGroup({\r\n id: new FormControl({ value: '', disabled: false }, []),\r\n name: new FormControl({ value: '', disabled: false }, []),\r\n address1: new FormControl({ value: '', disabled: false }, []),\r\n city: new FormControl({ value: '', disabled: false }, []),\r\n state: new FormControl({ value: '', disabled: false }, []),\r\n zip: new FormControl({ value: '', disabled: false }, []),\r\n phone: new FormControl({ value: '', disabled: false }, []),\r\n manufacturer: new FormControl({ value: '', disabled: false }, []),\r\n principal1: new FormControl({ value: '', disabled: false }, []),\r\n principal2: new FormControl({ value: '', disabled: false }, []),\r\n principal3: new FormControl({ value: '', disabled: false }, []),\r\n size: new FormControl({ value: 0, disabled: false }, []),\r\n annualrevenue: new FormControl({ value: 0, disabled: false }, []),\r\n curterate: new FormControl({ value: 0, disabled: false }, []),\r\n curinstallerrate: new FormControl({ value: 0, disabled: false }, []),\r\n hostiry: new FormControl({ value: '', disabled: false }, []),\r\n notes: new FormControl({ value: '', disabled: false }, []),\r\n strengths: new FormControl({ value: '', disabled: false }, []),\r\n weakness: new FormControl({ value: '', disabled: false }, []),\r\n });\r\n }\r\n\r\n goEditCompetitor(item) {\r\n\r\n this._formMarketCompetitors.get('id').setValue(item.ID);\r\n this._formMarketCompetitors.get('name').setValue(item.NAME);\r\n this._formMarketCompetitors.get('address1').setValue(item.ADDRESS1);\r\n this._formMarketCompetitors.get('city').setValue(item.CITY);\r\n this._formMarketCompetitors.get('state').setValue(item.STATE);\r\n this._formMarketCompetitors.get('zip').setValue(item.ZIP);\r\n this._formMarketCompetitors.get('phone').setValue(item.PHONE);\r\n this._formMarketCompetitors.get('manufacturer').setValue(item.MANUFACTURER);\r\n this._formMarketCompetitors.get('principal1').setValue(item.PRICIPAL1);\r\n this._formMarketCompetitors.get('principal2').setValue(item.PRICIPAL2);\r\n this._formMarketCompetitors.get('principal3').setValue(item.PRICIPAL3);\r\n var msize = 0\r\n if( item.SIZE ) {\r\n msize = item.SIZE;\r\n }\r\n this._formMarketCompetitors.get('size').setValue(msize);\r\n var mannualrevenue = 0\r\n if( item.SIZE ) {\r\n mannualrevenue = item.ANNUALREVENUE;\r\n }\r\n this._formMarketCompetitors.get('annualrevenue').setValue(mannualrevenue);\r\n var mcurttechrate = 0\r\n if( item.CURTECHRATE ) {\r\n mcurttechrate = item.CURTECHRATE;\r\n }\r\n this._formMarketCompetitors.get('curterate').setValue(mcurttechrate);\r\n var mcurtinstallrate = 0\r\n if( item.CURINSTALLERRATE ) {\r\n mcurtinstallrate = item.CURINSTALLERRATE;\r\n }\r\n this._formMarketCompetitors.get('curinstallerrate').setValue(mcurtinstallrate);\r\n this._formMarketCompetitors.get('hostiry').setValue(item.HOSTIRY);\r\n this._formMarketCompetitors.get('notes').setValue(item.NOTES);\r\n this._formMarketCompetitors.get('strengths').setValue(item.STRENGTHS);\r\n this._formMarketCompetitors.get('weakness').setValue(item.WEAKNESS);\r\n\r\n this.popupNewItem = true;\r\n\r\n }\r\n saveCompetitors(){\r\n\r\n let formValue;\r\n formValue = this._formMarketCompetitors.value;\r\n\r\n this.marketAnalysisService.SaveMarketAnalysisClientCompetitors(formValue).subscribe(result => {\r\n this.popupNewItem = false;\r\n this.toast.success(this.translate.instant('msgUpdSucc'));\r\n this.Resultado.emit(result)\r\n this.marketAnalysisService.GetMarketAnalysisClientCompetitors().subscribe(result => {\r\n this.marketAnalysisClientCompatitorsData = result;\r\n // this.onsaveMarket.emit(true)\r\n });\r\n });\r\n }\r\n\r\n goNewCompetitor() {\r\n\r\n this._formMarketCompetitors.get('id').setValue(0);\r\n this._formMarketCompetitors.get('name').setValue('');\r\n this._formMarketCompetitors.get('address1').setValue('');\r\n this._formMarketCompetitors.get('city').setValue('');\r\n this._formMarketCompetitors.get('state').setValue('');\r\n this._formMarketCompetitors.get('zip').setValue('');\r\n this._formMarketCompetitors.get('phone').setValue('');\r\n this._formMarketCompetitors.get('manufacturer').setValue('');\r\n this._formMarketCompetitors.get('principal1').setValue('');\r\n this._formMarketCompetitors.get('principal2').setValue('');\r\n this._formMarketCompetitors.get('principal3').setValue('');\r\n this._formMarketCompetitors.get('size').setValue(0);\r\n this._formMarketCompetitors.get('annualrevenue').setValue(0);\r\n this._formMarketCompetitors.get('curterate').setValue(0);\r\n this._formMarketCompetitors.get('curinstallerrate').setValue(0);\r\n this._formMarketCompetitors.get('hostiry').setValue('');\r\n this._formMarketCompetitors.get('notes').setValue('');\r\n this._formMarketCompetitors.get('strengths').setValue('');\r\n this._formMarketCompetitors.get('weakness').setValue('');\r\n\r\n this.popupNewItem = true;\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MarketCompaniesThatYouCompeteComponent } from './market-companies-that-you-compete.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DxButtonModule, DxDataGridModule, DxNumberBoxModule, DxPopupModule, DxScrollViewModule, DxTextBoxModule } from 'devextreme-angular';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n MarketCompaniesThatYouCompeteComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxDataGridModule,\r\n DxButtonModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxTextBoxModule,\r\n DxNumberBoxModule\r\n ],\r\n exports: [\r\n MarketCompaniesThatYouCompeteComponent\r\n ]\r\n})\r\nexport class MarketCompaniesThatYouCompeteModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3NhbGVzLW1hbmFnZW1lbnQvc2FsZXMtbGVhZHMvbW9kYWxzL25ldy1zYWxlcy1sZWFkL25ldy1zYWxlcy1sZWFkLmNvbXBvbmVudC5zY3NzIn0= */\"","import { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { count, groupBy, mergeMap, takeUntil, toArray } from 'rxjs/operators';\r\nimport { SalesProjectService } from 'src/app/services/sales-project.service';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { ProjectService } from 'src/app/services/project.service';\r\nimport { TaskService } from 'src/app/services/task.service';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { Router } from '@angular/router';\r\nimport { from, Subject } from 'rxjs';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\n\r\n@Component({\r\n selector: 'app-new-sales-lead',\r\n templateUrl: './new-sales-lead.component.html',\r\n styleUrls: ['./new-sales-lead.component.scss']\r\n})\r\n\r\nexport class NewSalesLeadComponent implements OnInit {\r\n\r\n @Input() popupSalesLead = false;\r\n\r\n _formNewSales: FormGroup;\r\n optionsSalesPerson: any;\r\n salesPersonSelect = [];\r\n dateFormat: any;\r\n\r\n millisecondsInDay = 24 * 60 * 60 * 1000;\r\n todayButtondateex: any;\r\n prevDateButtondateex: any;\r\n nextDateButtondateex: any;\r\n dateex: number;\r\n\r\n private _unsubscribe = new Subject();\r\n\r\n constructor(\r\n public MapInformationService:MapInformationService,\r\n private salesLeadsService: SalesProjectService,\r\n public appConfigService: AppConfigService,\r\n public generalService: GeneralService,\r\n private translate:TranslateService,\r\n private toast: ToastService,\r\n private router: Router,\r\n ) { \r\n this.dateFormat = this.appConfigService.dateFormat;\r\n\r\n this.todayButtondateex = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n this.dateex = new Date().getTime();\r\n }\r\n };\r\n\r\n this.prevDateButtondateex = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.dateex -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.nextDateButtondateex = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.dateex += this.millisecondsInDay;\r\n }\r\n };\r\n }\r\n\r\n ngOnInit() {\r\n this.GetSalesPerson();\r\n this.optionsSalesPerson = [];\r\n\r\n this._formNewSales = new FormGroup({\r\n Name: new FormControl({ value: '', disabled: false }, [Validators.required, Validators.maxLength(50)]),\r\n Salesemp: new FormControl({ value: 1, disabled: false }, [Validators.required]),\r\n biddate: new FormControl({ value: \"\", disabled: false }, []),\r\n });\r\n }\r\n\r\n GetSalesPerson() {\r\n this.salesLeadsService.GetSalesPerson().pipe(takeUntil(this._unsubscribe)).subscribe(\r\n (data: any) => {\r\n this.optionsSalesPerson = data.map((val) => {\r\n return { // Return the new object structure\r\n label: val.CONTACTNAME,\r\n value: val.ID\r\n };\r\n });\r\n },\r\n err => {\r\n console.log(err);\r\n }\r\n )\r\n }\r\n\r\n clearFormNewSales() {\r\n this._formNewSales = new FormGroup({\r\n Name: new FormControl({ value: '', disabled: false }, [Validators.required, Validators.maxLength(50)]),\r\n Salesemp: new FormControl({ value: 1, disabled: false }, []),\r\n biddate: new FormControl({ value: \"\", disabled: false }, []),\r\n });\r\n }\r\n\r\n submitNewLeads(edit, newitem = false) {\r\n let formValue;\r\n formValue = this._formNewSales.value;\r\n formValue = { bidstatus: 1, ...formValue };\r\n\r\n formValue.method= \"Insert_webLeads\"\r\n formValue.name = formValue.Name\r\n formValue.salesemp = formValue.Salesemp\r\n formValue.id = 0\r\n formValue.biddate = new Date(formValue.biddate)\r\n\r\n delete formValue.Name\r\n delete formValue.Salesemp\r\n console.log(formValue)\r\n this.MapInformationService.SaveInfoSites(formValue).subscribe(\r\n data => {\r\n console.log(data)\r\n if (data[0].ReturnID) {\r\n this.toast.success(this.translate.instant('msgLeadCreSucc'));\r\n this.clearFormNewSales();\r\n // this.getSalesLeads()\r\n if (edit) {\r\n this.router.navigateByUrl('/salesLeads/editLead?numID=' + data[0].ReturnID);\r\n }\r\n } else {\r\n this.toast.error('Error Creating Sales Lead');\r\n }\r\n // this.getCustomer();\r\n $(\"#btnsaleslead\").click();\r\n\r\n if (!newitem){\r\n $(\"#btnclosemodal\").click();\r\n\r\n // this.get(true);\r\n this.popupSalesLead = false\r\n }\r\n // this.getSalesLeads()\r\n }, err => {\r\n console.log(err);\r\n this.toast.error('Error Creating Sales Lead');\r\n }\r\n )\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NewSalesLeadComponent } from './new-sales-lead.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { DxAutocompleteModule, DxHtmlEditorModule, DxTextBoxModule, DxDateBoxModule, DxSelectBoxModule, DxToolbarModule, DxButtonModule, DxPopupModule, DxScrollViewModule, DxTextAreaModule } from 'devextreme-angular';\r\n\r\n@NgModule({\r\n declarations: [NewSalesLeadComponent],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxTextAreaModule,\r\n DxButtonModule,\r\n DxAutocompleteModule,\r\n DxHtmlEditorModule,\r\n DxToolbarModule,\r\n DxTextBoxModule,\r\n DxDateBoxModule,\r\n DxSelectBoxModule,\r\n ], \r\n exports: [NewSalesLeadComponent]\r\n})\r\nexport class NewSalesLeadModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3NhbGVzLW1hbmFnZW1lbnQvc2FsZXMtcHJvamVjdC9jcmVhdGUtdXBkYXRlLXNhbGVzLXByb2plY3QvY3JlYXRlLXVwZGF0ZS1zYWxlcy1wcm9qZWN0LmNvbXBvbmVudC5zY3NzIn0= */\"","import { data } from 'jquery';\r\nimport { DatePipe } from '@angular/common';\r\nimport { OnChanges } from '@angular/core';\r\nimport DataSource from 'devextreme/data/data_source';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { SiteService } from 'src/app/services/site.service';\r\nimport { ContactService } from 'src/app/services/contact.service';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { CustomerService } from 'src/app/services/customer.service';\r\nimport { SalesleadService } from 'src/app/services/saleslead.service';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { SalesProjectService } from 'src/app/services/sales-project.service';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { MDBModalRef, MDBModalService, ToastService } from 'ng-uikit-pro-standard';\r\nimport { FormControl, FormGroup, ValidationErrors, Validators } from '@angular/forms';\r\nimport { NewContactComponent } from 'src/app/shared/new-contact/new-contact.component';\r\nimport { Component, Input, OnInit, Output, EventEmitter, ViewChild, SimpleChanges } from '@angular/core';\r\ndeclare var $: any;\r\n\r\nimport { DxSelectBoxComponent } from 'devextreme-angular';\r\nimport { SystemComponentService } from 'src/app/services/system-component.service';\r\nimport { CompanySettingsService } from 'src/app/services/company-settings.service';\r\nimport { NewCustomerComponent } from '../../employee-activities/forms/new-customer/new-customer.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n//import { GoogleMapsLoaderService } from 'src/app/services/google-maps-loader.service';\r\n\r\n@Component({\r\n selector: 'app-create-update-sales-project',\r\n templateUrl: './create-update-sales-project.component.html',\r\n styleUrls: ['./create-update-sales-project.component.scss']\r\n})\r\nexport class CreateUpdateSalesProjectComponent implements OnInit, OnChanges {\r\n plusSiteButton: any;\r\n addCategoryButton: any;\r\n addConsultingButton: any;\r\n addSalesPersonButton: any;\r\n addCustomerButton: any;\r\n addRequestByButton: any;\r\n addVerticalMaButton: any;\r\n addProdSpeButton: any;\r\n addProdSpeButtonNOTBIDREASON:any\r\n\r\n _projectDetailForm: FormGroup;\r\n @Input() projectInfo: {\r\n projectid: any;\r\n projectname: any;\r\n projectaddress: string;\r\n projectnumber: number;\r\n statusid: number;\r\n };\r\n @Input() projectid;\r\n @Input() projectnumber;\r\n @Input() VieneDe;\r\n\r\n @Output() getprojectinfo: EventEmitter = new EventEmitter();\r\n @Output() onsave: EventEmitter = new EventEmitter();\r\n @Output() omitirsave: EventEmitter = new EventEmitter();\r\n @Output() ispipeline: EventEmitter = new EventEmitter();\r\n @Output() closemodal: EventEmitter = new EventEmitter();\r\n\r\n @Output() updateStatus: EventEmitter = new EventEmitter();\r\n now = new Date();\r\n /* Para details */\r\n editableProducts: string[];\r\n\r\n bidStatusSelect = [];\r\n marketingSelect = [];\r\n verticalMarketSelect = [];\r\n siteSelect = [];\r\n customerSelect = [];\r\n productSpecifiedSelect = [];\r\n prevailingSelect = [];\r\n projectCategorySelect = [];\r\n /* FIN Para details */\r\n consultingname = \"\";\r\n custawardprojectname = \"\";\r\n partestimaterequestbyname: any;\r\n custreqpricename: any;\r\n salesPersonSelect = [];\r\n notBidReasonSelect = [];\r\n awardToSelect = [];\r\n dataSource = [];\r\n\r\n popupServiceSite = false;\r\n popupCustomer = false;\r\n customerField = '';\r\n popupUtilityTable = false;\r\n popupMarketCampaign = false;\r\n popupMarketAnalysis = false;\r\n popupMarketRegion = false;\r\n popupMarketCompanies = false;\r\n popupNewContact = false;\r\n popupSalesPerson = false;\r\n\r\n customerDataSource: any=[];\r\n contactDataSource: any=[];\r\n customerWithCreditDataSource: any=[];\r\n events: Array = [];\r\n employeesNoSalesSelect = [];\r\n modalRef: MDBModalRef;\r\n\r\n popupUtilityTableVertical = false;\r\n\r\n isnew: boolean = true;\r\n disableInputs: boolean = false;\r\n dateFormat = '';\r\n pipelineid = 0;\r\n cancelButtonDeletePrice: { text: any; elementAttr: { id: string; }; onClick: () => void; };\r\n saveButtonDeletePrice: { text: any; icon: string; elementAttr: { id: string; }; onClick: () => void; };\r\n @Input('frompipelineid')\r\n set frompipelineid(frompipelineid: any) {\r\n if (frompipelineid > 0)\r\n this.pipelineid = frompipelineid;\r\n // if (project && project.projectid > 0)\r\n // this.setProjectInfo(project);\r\n }\r\n\r\n\r\n cancelButtonNewCustomer: any;\r\n saveButtonNewCustomer: any;\r\n saveNewButtonNewCustomer: any;\r\n saveEditButtonNewCustomer: any;\r\n DateFilter:number;\r\n millisecondsInDay = 24 * 60 * 60 * 1000;\r\n todayButton: any;\r\n prevDateButton: any;\r\n nextDateButton: any;\r\n\r\n DateFilterBid:number;\r\n todayButtonBid: any;\r\n prevDateButtonBid: any;\r\n nextDateButtonBid: any;\r\n\r\n DateFilterClose:number;\r\n todayButtonClose: any;\r\n prevDateButtonClose: any;\r\n nextDateButtonClose: any;\r\n settings:any={}\r\n formatCurrency:any={}\r\n customerDataSource2:any\r\n popupaddProdSpeButtonNOTBIDREASON:boolean = false\r\n labelConsulting:any=\"\"\r\n\r\n popupCustomer2:boolean = false\r\n popupCustomer3:boolean = false\r\n addCustomerButtonAwardingJob:any\r\n\r\n defaultBidStatus: any = 0;\r\n\r\n @ViewChild('newcustomer', { static: false }) newcustomer: NewCustomerComponent;\r\n\r\n constructor(\r\n private router: Router,\r\n private datePipe: DatePipe,\r\n private toast: ToastService,\r\n private siteService: SiteService,\r\n private contactService: ContactService,\r\n private activatedroute: ActivatedRoute,\r\n private customerService: CustomerService,\r\n public appConfigService: AppConfigService,\r\n private salesLeadService: SalesleadService,\r\n private settingsCompany: CompanySettingsService,\r\n private salesProjectService: SalesProjectService,\r\n public MapInformationService: MapInformationService,\r\n public SystemComponentService: SystemComponentService,\r\n private translate:TranslateService,\r\n //private googleMapsLoaderService: GoogleMapsLoaderService\r\n ) {\r\n //this.loadGoogleMaps();\r\n this.dateFormat = appConfigService.dateFormat;\r\n this.settings.dateFormat = this.appConfigService.dateFormat;\r\n this.settings.moneyFormat = this.appConfigService.moneyFormat;\r\n let moneyTableFormat = this.settings.moneyFormat;\r\n if(this.appConfigService.moneyFormat=='$'){ moneyTableFormat = 'USD' }\r\n\r\n this.formatCurrency = {style: 'currency', currency: moneyTableFormat}\r\n //console.log(this.formatCurrency)\r\n this.getPipelineId();\r\n\r\n this.DateFilter = new Date().getTime()\r\n this.DateFilterBid = new Date().getTime()\r\n // this.DateFilterClose = 0\r\n\r\n localStorage.removeItem(\"VolverSalesProject\")\r\n localStorage.removeItem(\"VolverSalesProjectID\")\r\n\r\n\r\n\r\n\r\n\r\n this.todayButton = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n this.DateFilter = new Date().getTime();\r\n }\r\n };\r\n\r\n this.prevDateButton = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.DateFilter -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.nextDateButton = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.DateFilter += this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.todayButtonBid = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n this.DateFilterBid = new Date().getTime();\r\n }\r\n };\r\n\r\n this.prevDateButtonBid = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.DateFilterBid -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.nextDateButtonBid = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.DateFilterBid += this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.todayButtonClose = {\r\n text: this.translate.instant('btnToday'),\r\n elementAttr: {\r\n id: 'today-Btn'\r\n },\r\n onClick: () => {\r\n this.DateFilterClose = new Date().getTime();\r\n }\r\n };\r\n\r\n this.prevDateButtonClose = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n if(isNaN(this.DateFilterClose)){\r\n this.DateFilterClose = new Date().getTime();\r\n }\r\n this.DateFilterClose -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.nextDateButtonClose = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n if(isNaN(this.DateFilterClose)){\r\n this.DateFilterClose = new Date().getTime();\r\n }\r\n this.DateFilterClose += this.millisecondsInDay;\r\n }\r\n };\r\n\r\n\r\n this.dataSource = [\r\n { ID: 1085, TaskName: 'Bugs Quality Controls (SLS-ACT)', Hour: 1.5, SumaryTask: 'El Gallo', actualHour: '10:16', StartDate: '08/20/2020', dueDate: '08/20/2020', pCom: 50, pToEndOfMonth: 0.00, Responsible: 'JB', Resources: 'JB', Area: 'Sist Act', Priority: 'Normal', Status: 'IP', Category: 'DEV Front' },\r\n { ID: 1086, TaskName: 'Complete Front End Development (PL)', Hour: 1.5, SumaryTask: 'El Gallo', actualHour: '10:16', StartDate: '08/20/2020', dueDate: '08/20/2020', pCom: 50, pToEndOfMonth: 0.00, Responsible: 'JB', Resources: 'JB', Area: 'Sist Act', Priority: 'Normal', Status: 'IP', Category: 'DEV Qa' },\r\n { ID: 1087, TaskName: 'Complete Quality Controls (PL)', Hour: 1.5, SumaryTask: 'El Gallo', actualHour: '10:16', StartDate: '08/20/2020', dueDate: '08/20/2020', pCom: 50, pToEndOfMonth: 0.00, Responsible: 'JB', Resources: 'JB', Area: 'Sist Act', Priority: 'Hight', Status: 'IP', Category: 'DEV Technicial' },\r\n { ID: 1088, TaskName: 'Create UI Wire Frame (SLSP)', Hour: 1.5, SumaryTask: 'Los Gallo', actualHour: '10:16', StartDate: '08/20/2020', dueDate: '08/20/2020', pCom: 50, pToEndOfMonth: 0.00, Responsible: 'JB', Resources: 'JB', Area: 'Sist Act', Priority: 'Low', Status: 'IP', Category: 'DEV Front' },\r\n { ID: 1089, TaskName: 'Complete Front End Development (SLSP)', Hour: 1.5, SumaryTask: 'El Gachio', actualHour: '10:16', StartDate: '08/20/2020', dueDate: '08/20/2020', pCom: 50, pToEndOfMonth: 0.00, Responsible: 'JB', Resources: 'JB', Area: 'Sist Act', Priority: 'Low', Status: 'IP', Category: 'DEV Database' }\r\n ]\r\n\r\n //modales\r\n this.plusSiteButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupServiceSite = true;\r\n },\r\n disabled: this.disableInputs\r\n };\r\n\r\n this.addCategoryButton = {\r\n icon: \"edit\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupUtilityTable = true;\r\n },\r\n disabled: this.disableInputs\r\n };\r\n\r\n this.addConsultingButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupCustomer = true;\r\n },\r\n disabled: this.disableInputs\r\n };\r\n\r\n this.addSalesPersonButton = {\r\n icon: \"edit\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupSalesPerson = true;\r\n },\r\n disabled: this.disableInputs\r\n };\r\n\r\n this.addCustomerButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupCustomer2 = true;\r\n },\r\n disabled: this.disableInputs\r\n };\r\n\r\n this.addCustomerButtonAwardingJob = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupCustomer3 = true;\r\n },\r\n disabled: this.disableInputs\r\n };\r\n\r\n this.addRequestByButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupNewContact = true;\r\n },\r\n disabled: this.disableInputs\r\n };\r\n\r\n this.addVerticalMaButton = {\r\n icon: \"edit\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupUtilityTableVertical = true;\r\n },\r\n disabled: this.disableInputs\r\n };\r\n\r\n this.addProdSpeButton = {\r\n icon: \"edit\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupMarketAnalysis = true;\r\n },\r\n disabled: this.disableInputs\r\n };\r\n\r\n this.addProdSpeButton2 = {\r\n icon: \"edit\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupMarketAnalysis2 = true;\r\n },\r\n disabled: this.disableInputs\r\n };\r\n\r\n this.addProdSpeButtonNOTBIDREASON = {\r\n icon: \"edit\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupaddProdSpeButtonNOTBIDREASON = true;\r\n },\r\n };\r\n\r\n\r\n\r\n this.cancelButtonNewCustomer = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.closeModal()\r\n },\r\n };\r\n\r\n this.saveButtonNewCustomer = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.newcustomer.submitForm(true, false);\r\n },\r\n // disabled:this.newcustomer._formEntity.value.customername == \"\"\r\n };\r\n\r\n this.saveNewButtonNewCustomer = {\r\n text: this.translate.instant('btnSaveNew'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newcustomer.submitForm(false, false);\r\n },\r\n\r\n };\r\n\r\n this.saveEditButtonNewCustomer = {\r\n text: this.translate.instant('btnSaveEdit'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newcustomer.submitForm(true, true);\r\n },\r\n };\r\n\r\n // refresh price\r\n this.cancelButtonDeletePrice = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n this.closeDataPrice()\r\n },\r\n };\r\n\r\n this.saveButtonDeletePrice = {\r\n text: this.translate.instant('btnSave'),\r\n icon: \"check\",\r\n elementAttr: {\r\n id: \"bton-green\",\r\n },\r\n onClick: () => {\r\n\r\n console.log(this.optionSelected)\r\n if(this.optionSelected == 0){\r\n this.MapInformationService.SaveInfoSites({method:\"SyncProjectCost\", projectid:this.projectid, estimateid:0})\r\n .subscribe(resp=>{\r\n this.toast.success(\"Updated Successfully\")\r\n this.closeDataPrice()\r\n this.ngOnInit()\r\n })\r\n } else {\r\n this.MapInformationService.SaveInfoSites({method:\"SyncProjectCost\", projectid:this.projectid, estimateid:this.estimateid})\r\n .subscribe(resp=>{\r\n this.toast.success(\"Updated Successfully\")\r\n this.closeDataPrice()\r\n this.ngOnInit()\r\n })\r\n }\r\n },\r\n };\r\n\r\n\r\n }\r\n\r\n appNotesDataSource\r\n popupMarketAnalysis2:boolean=false\r\n popupEstimateSelect:boolean=false\r\n addProdSpeButton2:any\r\n optionSelected:any=0\r\n estimateid:any=0\r\n\r\n @ViewChild(\"newCustomerRequestingSelect\", { static: false }) newCustomerRequestingSelect: DxSelectBoxComponent;\r\n @ViewChild(\"newCustomerAwardingSelect\", { static: false }) newCustomerAwardingSelect: DxSelectBoxComponent;\r\n @ViewChild(\"newRequestBySelect\", { static: false }) newRequestBySelect: DxSelectBoxComponent;\r\n\r\n closeModal(){\r\n this.popupCustomer = false;\r\n this.popupCustomer2 = false;\r\n this.popupCustomer3 = false;\r\n }\r\n\r\n projectSold: boolean = false;\r\n\r\n ngOnInit() {\r\n console.log('ESTOY EN NGONIT ');\r\n this.settingsCompany.GetClientSettings(\"DefaultBidStatus\").subscribe(data => {\r\n this.defaultBidStatus = Number(data[0].VALUE);\r\n \t\r\n \tthis.initFormProjectDetail();\r\n \t\r\n })\r\n\r\n this.initFormProjectDetail();\r\n this.getBidStatus();\r\n this.getMarketingCampaign();\r\n this.getProjectVerticalMarket();\r\n this.getSites();\r\n this.getCustomer();\r\n this.getProductSpecified();\r\n this.getPrevailingWages();\r\n this.getProjectCategory()\r\n\r\n this.getProjectNotBidReason();\r\n this.getClientCompetitor();\r\n this.getSalesPerson();\r\n\r\n this.getEmployeesNoSales()\r\n\r\n this.getConsultingFirm()\r\n\r\n if (this.projectid > 0){\r\n this.getSalesProject();\r\n }\r\n\r\n\r\n\r\n let mythis = this;\r\n // this.customerDataSource = new DataSource({\r\n // load: function (loadOptions: any) {\r\n // return mythis.customerService.GetCustomerByName(loadOptions.searchValue)\r\n // .toPromise()\r\n // .then((data: any) => {\r\n // return data;\r\n // })\r\n // .catch(error => { throw 'Data Loading Error' });\r\n // }\r\n // });\r\n\r\n // this.customerWithCreditDataSource = new DataSource({\r\n // load: function (loadOptions: any) {\r\n // return mythis.customerService.GetCustomerWithCreditListByName(loadOptions.searchValue)\r\n // .toPromise()\r\n // .then((data: any) => {\r\n // return data;\r\n // })\r\n // .catch(error => { throw 'Data Loading Error' });\r\n // }\r\n // });\r\n\r\n\r\n\r\n // this.contactDataSource = new DataSource({\r\n // load: function (loadOptions: any) {\r\n // return mythis.contactService.GetContactByName(loadOptions.searchValue)\r\n // .toPromise()\r\n // .then((data: any) => {\r\n // return data;\r\n // })\r\n // .catch(error => { throw 'Data Loading Error' });\r\n // }\r\n // });\r\n\r\n /***select nueva version */\r\n this.contactDataSource = []\r\n this.customerDataSource = []\r\n\r\n this.customerWithCreditDataSource = []\r\n\r\n\r\n this.customerWithCreditDataSource = new CustomStore({\r\n key: \"ID\",\r\n useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.GetAllInfoDinamico(\"Get_CustomerCEWithCredit_ByName\",loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n //console.log(data);\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n this.contactDataSource = new CustomStore({\r\n key: \"ID\",\r\n useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.GetAllInfoDinamico(\"Get_ContactsByName\",loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n //console.log(data);\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n this.customerDataSource = new CustomStore({\r\n key: \"ID\",\r\n useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.GetAllInfoDinamico(\"Get_CustomerCE_ByName\",loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n //console.log(data);\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n this.MapInformationService.SaveInfoSites({method:\"Get_DefaultConsultingfirm\"})\r\n .subscribe(resp=>{\r\n this.MarkAsConsulting = resp\r\n if(resp.length > 0){\r\n let infoFinal = \"\"\r\n resp.forEach(element => {\r\n if (infoFinal == \"\"){\r\n infoFinal = element.CUSTOMERTYPE\r\n } else {\r\n infoFinal += \", \" +element.CUSTOMERTYPE\r\n }\r\n });\r\n this.labelConsulting = \"Select a costumer marked as \"+ infoFinal\r\n } else {\r\n this.labelConsulting = \"Select a costumer\"\r\n }\r\n })\r\n\r\n this.isnew = true;\r\n this.disableInputs = false;\r\n }\r\n\r\n // loadGoogleMaps(): void {\r\n // console.log('Loading Map in Sales XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX')\r\n // const apiKey = 'AIzaSyAEwfQAhTVBE9T6dzNtHRi11GDKLVUMuWw'; // Replace with your API key\r\n // //const apiKey = this.appConfigService.appConfig.googleMapAPIKey //'AIzaSyAEwfQAhTVBE9T6dzNtHRi11GDKLVUMuWw'; // Replace with your API key\r\n \r\n // this.googleMapsLoaderService.loadGoogleMapsScript(apiKey).subscribe(() => {\r\n // // Google Maps API script is loaded and ready to use\r\n // // Initialize ngx-google-places-autocomplete or other components here\r\n // });\r\n // }\r\n\r\n\r\n MarkAsConsulting:any = []\r\n\r\n getConsultingFirm(){\r\n const info = {\r\n method:\"Get_SalesLeadConsultingFirm\"\r\n }\r\n\r\n this.MapInformationService.SaveInfoSites(info)\r\n .subscribe(resp=>{\r\n //console.log(resp)\r\n this.customerDataSource2 = resp\r\n })\r\n }\r\n\r\n changeAppNotes(obj) {\r\n if (obj && obj.selectedItem) {\r\n // //console.log(obj)\r\n // this.modelBillOfMaterial.appnoteid = obj.selectedItem.ID;\r\n // this.modelBillOfMaterial.appnote = obj.selectedItem.Application_Notes;\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.projectid != undefined && changes.projectid.previousValue !== undefined) {\r\n this.initFormProjectDetail()\r\n this.ngOnInit()\r\n }\r\n }\r\n\r\n getPipelineId() {\r\n\r\n let pipelineid = this.activatedroute.snapshot.queryParamMap.get('numPIPELINEID');\r\n\r\n if (pipelineid)\r\n this.pipelineid = parseInt(pipelineid);\r\n\r\n }\r\n goEditPipeline() {\r\n this.router.navigateByUrl(`/pipeline/editPipeLine?numID=${this.pipelineid}&numPROJECTID=${this.projectInfo.projectid}`);\r\n }\r\n\r\n getFormValidationErrors() {\r\n let hasError = false;\r\n let value = this._projectDetailForm.value;\r\n //console.log('Validating', value);\r\n\r\n if (value.bidstatus == 3) {\r\n if (!value.closedate) {\r\n this.toast.warning(this.translate.instant('msgCloseDate'));\r\n hasError = true;\r\n }\r\n\r\n if (!value.amount) {\r\n this.toast.warning(this.translate.instant('msgQuoAmo'));\r\n hasError = true;\r\n }\r\n\r\n if (!value.profit) {\r\n this.toast.warning(this.translate.instant('msgSaleMarg'));\r\n hasError = true;\r\n }\r\n\r\n if (!value.salesemp) {\r\n this.toast.warning(this.translate.instant('msgSalPerson'));\r\n hasError = true;\r\n }\r\n\r\n if (!value.salescategoryid) {\r\n this.toast.warning(this.translate.instant('msgSaleCateg'));\r\n hasError = true;\r\n }\r\n\r\n if (!value.custawardprojectid) {\r\n this.toast.warning(this.translate.instant('msgCustAwJob'));\r\n hasError = true;\r\n }\r\n }\r\n\r\n // if(!value.custreqpriceid){\r\n // this.toast.warning('Please enter Customer requesting this price');\r\n // hasError = true;\r\n // }\r\n\r\n return hasError;\r\n }\r\n\r\n getEmployeesNoSales() {\r\n this.salesProjectService.GetEmployeesNoSales().subscribe(result => {\r\n // //console.log('no sales', result);\r\n this.employeesNoSalesSelect = result;\r\n })\r\n }\r\n\r\n addToSalesPerson() {\r\n let employeesToAdd = this.employeesNoSalesSelect.filter(x => x.add == true);\r\n\r\n employeesToAdd.forEach(element => {\r\n this.salesProjectService.UpdateEmployeeToSales(element.ID).subscribe(result => {\r\n this.getSalesPerson();\r\n this.getEmployeesNoSales();\r\n this._projectDetailForm.get(\"salesemp\").setValue(element.ID)\r\n });\r\n\r\n });\r\n\r\n this.toast.success(this.translate.instant('msgSalPerSuccUdp'));\r\n this.popupSalesPerson = false;\r\n }\r\n\r\n changeEmployeeNoSales(obj, item) {\r\n item.add = obj.value;\r\n }\r\n mdItemRegion() {\r\n this.popupMarketRegion = true;\r\n }\r\n\r\n mdItemCompanies() {\r\n this.popupMarketCompanies = true;\r\n }\r\n\r\n\r\n onCustomItemCreating(args) {\r\n let newValue = args.text;\r\n this.editableProducts.unshift(newValue);\r\n args.customItem = newValue;\r\n }\r\n\r\n openModalNewContact() {\r\n this.popupNewContact = true;\r\n // let modalOptions = {\r\n // // backdrop: true,\r\n // // keyboard: true,\r\n // // focus: true,\r\n // // show: false,\r\n // ignoreBackdropClick: true,\r\n // class: 'modal-dialog modal-lg',\r\n // // containerClass: '',\r\n // // animated: true,\r\n // data: {\r\n // // customerSelect: this.customerSelect\r\n // // text: 'Modal heading',\r\n // // content: { heading: 'Content heading', description: 'Content description' }\r\n // }\r\n // };\r\n // this.modalRef = this.modalService.show(NewContactComponent, modalOptions);\r\n\r\n // this.modalRef.content.action.subscribe((result: any) => {\r\n // console.clear();\r\n // // this.loadContaDefault(result.data);\r\n // //console.log(result);\r\n\r\n // // Esta propiedad devuelve el ID creado del contacto.\r\n // // result.data\r\n // // if (result.success) {\r\n // // this.getAllContacts();\r\n // // }\r\n // });\r\n }\r\n\r\n mdMarketingCampaign() {\r\n this.popupMarketCampaign = true;\r\n }\r\n\r\n mdMarketAnalysis() {\r\n this.popupMarketAnalysis = true;\r\n }\r\n\r\n getClientCompetitor() {\r\n this.salesProjectService.GetClientCompetitor().subscribe(result => {\r\n this.awardToSelect = result;\r\n });\r\n }\r\n\r\n getProjectNotBidReason() {\r\n this.salesProjectService.GetProjectNotBidReason().subscribe(result => {\r\n this.notBidReasonSelect = result;\r\n });\r\n }\r\n\r\n handleAddressChange(res) {\r\n //console.log(res);\r\n this._projectDetailForm.get('lon').setValue(res.geometry.location.lng());\r\n this._projectDetailForm.get('lat').setValue(res.geometry.location.lat());\r\n this._projectDetailForm.get('address').setValue(res.formatted_address);\r\n\r\n for (var i = 0; i < res.address_components.length; i++) {\r\n for (var j = 0; j < res.address_components[i].types.length; j++) {\r\n if (res.address_components[i].types[j] == \"postal_code\") {\r\n this._projectDetailForm.get('zip').setValue(res.address_components[i].long_name);\r\n }\r\n if (res.address_components[i].types[j] == \"administrative_area_level_1\") {\r\n this._projectDetailForm.get('state').setValue(res.address_components[i].long_name);\r\n }\r\n if (res.address_components[i].types[j] == \"locality\") {\r\n this._projectDetailForm.get('city').setValue(res.address_components[i].long_name);\r\n }\r\n if (res.address_components[i].types[j] == \"country\") {\r\n this._projectDetailForm.get('country').setValue(res.address_components[i].long_name);\r\n }\r\n }\r\n }\r\n\r\n }\r\n\r\n onCellPrepared(ev) { }\r\n clearEvents() {\r\n this.events = [];\r\n }\r\n\r\n logEvent(eventName) {\r\n this.events.unshift(eventName);\r\n //console.log(this.events);\r\n //console.log(eventName);\r\n }\r\n\r\n InsertUpdateVerticalMarket(ev) {\r\n //console.log(ev);\r\n let model = {\r\n id: 0,\r\n verticalmarketdescription: ''\r\n };\r\n if (ev.data.ID && ev.data.ID > 0) {\r\n model.id = ev.data.ID;\r\n }\r\n\r\n model.verticalmarketdescription = ev.data.VERTMARKETDESCRIPTION;\r\n\r\n this.salesProjectService.InsertUpdateVerticalMarket(model).subscribe(result => {\r\n //console.log('nitido', result);\r\n this.getProjectVerticalMarket();\r\n });\r\n }\r\n\r\n insertUpdateProjectCategory(ev) {\r\n //console.log(ev);\r\n let model = {\r\n id: 0,\r\n projectslscategory: ''\r\n };\r\n\r\n if (ev.data) {\r\n model.id = 0;\r\n model.projectslscategory = ev.data.PROJECTSLSCATEGORY;\r\n } else if (ev.newData) {\r\n model.id = ev.key;\r\n model.projectslscategory = ev.newData.PROJECTSLSCATEGORY;\r\n }\r\n\r\n //console.log(JSON.stringify(model))\r\n //console.log(this.projectCategorySelect)\r\n\r\n this.salesProjectService.InsertUpdateSalesCategory(model).subscribe(result => {\r\n this.getProjectCategory();\r\n })\r\n }\r\n\r\n mdUtiliyTable() {\r\n this.popupUtilityTable = true;\r\n }\r\n close() {\r\n\r\n $('#btnlimpiarmodalservicesite').click();\r\n //console.log('aqui cerre')\r\n }\r\n getSalesProject() {\r\n let model = {\r\n PageIndex: 1,\r\n PageSize: 20,\r\n OrderID: 1,\r\n ProjectNumber: '',\r\n ProjectId: this.projectid,\r\n ProjectName: '',\r\n Amount: '',\r\n BidDate: '',\r\n BidStatus: '',\r\n CloseDate: '',\r\n CustomerName: '',\r\n SalesPerson: '',\r\n SalesCategory: ''\r\n };\r\n\r\n this.MapInformationService.SaveInfoSites({method:\"Get_SalesProject_ById\", projectid:this.projectid})\r\n .subscribe(resp=>{\r\n console.log('Sales Project ', resp);\r\n if (resp.length > 0){\r\n if (resp[0].IsPipeline == 1){\r\n this.pipelineid = resp[0].PIPELINEID\r\n }\r\n }\r\n \r\n this.salesProjectService.GetSalesProject(model).subscribe(result => {\r\n //console.log('project', result);\r\n result.data[0].salesnotes = resp[0].SALESNOTES\r\n this.setFormProjectDetail(result.data[0]);\r\n this.projectInfo = {\r\n projectid: result.data[0].PROJECTID,\r\n projectname: result.data[0].PROJECTNAME,\r\n projectaddress: '',\r\n projectnumber: result.data[0].PROJECTNUMBER,\r\n statusid: result.data[0].BIDSTATUS\r\n }\r\n this.newCustomerRequestingSelect.placeholder = result.data[0].CUSREQPRICENAME\r\n this.newCustomerAwardingSelect.placeholder = result.data[0].BUYERNAME\r\n this.newRequestBySelect.placeholder = result.data[0].REQUESTBYNAME\r\n\r\n\r\n this.getprojectinfo.emit(this.projectInfo);\r\n });\r\n })\r\n }\r\n\r\n resultNewSite(obj) {\r\n this.getSites();\r\n this._projectDetailForm.get('siteid').setValue(obj.id);\r\n }\r\n\r\n onsavecontact(ev) {\r\n console.log(ev)\r\n let obj = {\r\n selectedItem: {\r\n ID: ev.id,\r\n First: ev.First,\r\n Last: ev.Last\r\n }\r\n };\r\n\r\n this._projectDetailForm.get('partestimaterequestbyid').setValue(ev.id);\r\n this.partestimaterequestbyname = ev.id\r\n this.newRequestBySelect.placeholder = ev.First + \" \" + ev.Last + \" (\" + ev.Email + \")\"\r\n\r\n // this.newRequestBySelect\r\n\r\n let mythis = this\r\n this.contactDataSource = new CustomStore({\r\n key: \"ID\",\r\n useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \"je\"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.contactService.GetContactByName(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n //console.log(data);\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n // this.updateContactId(obj);\r\n }\r\n resultNewCustomer(ev) { /*console.log(ev);*/ }\r\n\r\n resultulCustumerOriginal(ev) {\r\n //console.log(ev);\r\n\r\n let obj = {\r\n selectedItem: {\r\n ID: ev.id,\r\n DESCRIPTION: ev.name\r\n }\r\n };\r\n\r\n this._projectDetailForm.get(\"consultingid\").setValue(ev.id)\r\n\r\n if (this.customerField == 'consultingname') {\r\n this.updateConsultingFirm(obj);\r\n }\r\n\r\n if (this.customerField == 'custreqpricename') {\r\n this.updateCustomerRequestPrice(obj);\r\n }\r\n\r\n }\r\n\r\n /* Para project detail */\r\n\r\n onStatusChange(ev) {\r\n // //console.log(ev);\r\n const previousValue = ev.previousValue;\r\n const newValue = ev.value;\r\n\r\n if (newValue == 3) {\r\n this._projectDetailForm.get('salescategoryid').setValidators([Validators.required])\r\n if (!this._projectDetailForm.get('salescategoryid').value) {\r\n this._projectDetailForm.get('salescategoryid').setValue(null);\r\n }\r\n\r\n this._projectDetailForm.get('salesemp').setValidators([Validators.required])\r\n if (!this._projectDetailForm.get('salesemp').value) {\r\n this._projectDetailForm.get('salesemp').setValue(null);\r\n }\r\n\r\n this._projectDetailForm.get('consultingid').setValidators([Validators.required])\r\n if (!this._projectDetailForm.get('consultingid').value) {\r\n this._projectDetailForm.get('consultingid').setValue(0);\r\n this.consultingname = 'UNKNOWN';\r\n }\r\n\r\n this._projectDetailForm.get('custawardprojectid').setValidators([Validators.required])\r\n if (!this._projectDetailForm.get('custawardprojectid').value) {\r\n this._projectDetailForm.get('custawardprojectid').setValue(null);\r\n }\r\n\r\n this._projectDetailForm.get('closedate').setValidators([Validators.required])\r\n if (!this._projectDetailForm.get('closedate').value) {\r\n this._projectDetailForm.get('closedate').setValue(null);\r\n }\r\n\r\n this._projectDetailForm.get('amount').setValidators([Validators.required, Validators.min(1)])\r\n if (!this._projectDetailForm.get('amount').value) {\r\n this._projectDetailForm.get('amount').setValue(0.00);\r\n }\r\n\r\n this._projectDetailForm.get('profit').setValidators([Validators.required])\r\n if (!this._projectDetailForm.get('profit').value) {\r\n this._projectDetailForm.get('profit').setValue(0);\r\n }\r\n\r\n } else {\r\n this._projectDetailForm.get('salescategoryid').clearValidators();\r\n this._projectDetailForm.get('profit').clearValidators();\r\n this._projectDetailForm.get('amount').clearValidators();\r\n this._projectDetailForm.get('closedate').clearValidators();\r\n this._projectDetailForm.get('custawardprojectid').clearValidators();\r\n this._projectDetailForm.get('consultingid').clearValidators();\r\n this._projectDetailForm.get('salesemp').clearValidators();\r\n }\r\n\r\n\r\n\r\n if (!this._projectDetailForm.get('salescategoryid').value) {\r\n this._projectDetailForm.get('salescategoryid').setValue(null);\r\n }\r\n\r\n\r\n if (!this._projectDetailForm.get('salesemp').value) {\r\n this._projectDetailForm.get('salesemp').setValue(null);\r\n }\r\n\r\n\r\n if (!this._projectDetailForm.get('consultingid').value) {\r\n this._projectDetailForm.get('consultingid').setValue(0);\r\n this.consultingname = 'UNKNOWN';\r\n }\r\n\r\n\r\n if (!this._projectDetailForm.get('custawardprojectid').value) {\r\n this._projectDetailForm.get('custawardprojectid').setValue(null);\r\n }\r\n\r\n\r\n if (!this._projectDetailForm.get('closedate').value) {\r\n this._projectDetailForm.get('closedate').setValue(null);\r\n }\r\n\r\n\r\n if (!this._projectDetailForm.get('amount').value) {\r\n this._projectDetailForm.get('amount').setValue(0.00);\r\n }\r\n\r\n\r\n if (!this._projectDetailForm.get('profit').value) {\r\n this._projectDetailForm.get('profit').setValue(0);\r\n }\r\n\r\n }\r\n\r\n initFormProjectDetail() {\r\n //console.log('Iniciando Form');\r\n this.isnew = true;\r\n this.disableInputs = false;\r\n this._projectDetailForm = new FormGroup({\r\n bidreqdate: new FormControl({ value: new Date(), disabled: false }, []),\r\n biddate: new FormControl({ value: new Date(), disabled: false }, []),\r\n projectid: new FormControl({ value: 0, disabled: false }, []),\r\n projectnum: new FormControl({ value: null, disabled: false }, []),\r\n name: new FormControl({ value: '', disabled: false }, []),\r\n siteid: new FormControl({ value: 0, disabled: false }, []),\r\n salescategoryid: new FormControl({ value: 0, disabled: false }, []),\r\n bidstatus: new FormControl({ value: this.defaultBidStatus, disabled: false }, []),\r\n closedate: new FormControl({ value: '', disabled: false }, []),\r\n amount: new FormControl({ value: 0.00, disabled: false }, []),\r\n profit: new FormControl({ value: 0, disabled: false }, []),\r\n profitpercent: new FormControl({ value: 0, disabled: false }, []),\r\n consultingid: new FormControl({ value: 0, disabled: false }, []),\r\n salesemp: new FormControl({ value: 0, disabled: false }, []),\r\n custreqpriceid: new FormControl({ value: 0, disabled: false }, []),\r\n custawardprojectid: new FormControl({ value: 0, disabled: false }, []),\r\n // contactid: new FormControl({ value: '', disabled: false }, []),\r\n projectverticalid: new FormControl({ value: 0, disabled: false }, []),\r\n awardedto: new FormControl({ value: 0, disabled: false }, []),\r\n // marketcampid: new FormControl({ value: '', disabled: false }, []),\r\n productspecified: new FormControl({ value: 0, disabled: false }, []),\r\n // prevailingwage: new FormControl({ value:'', disabled: false }, []),\r\n partestimaterequestbyid: new FormControl({ value: 0, disabled: false }, []),\r\n prevailingwagecode: new FormControl({ value: 0, disabled: false }, []),\r\n notbidreason: new FormControl({ value: 0, disabled: false }, []),\r\n salescomment: new FormControl({ value: '', disabled: false }, []),\r\n salesnotes: new FormControl({ value: '', disabled: false }, []),\r\n\r\n address: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n addressline2: new FormControl({ value: '', disabled: false }, []),\r\n city: new FormControl({ value: '', disabled: false }, []),\r\n state: new FormControl({ value: '', disabled: false }, []),\r\n country: new FormControl({ value: '', disabled: false }, []),\r\n zip: new FormControl({ value: '', disabled: false }, []),\r\n lat: new FormControl({ value: 0, disabled: false }, []),\r\n lon: new FormControl({ value: 0, disabled: false }, []),\r\n\r\n\r\n });\r\n\r\n this.consultingname = \"\";\r\n this.custawardprojectname = \"\";\r\n this.partestimaterequestbyname = \"\";\r\n this.custreqpricename = \"\";\r\n //console.log('Default', this.defaultBidStatus);\r\n //console.log('FOORM',this._projectDetailForm.value);\r\n }\r\n\r\n setFormProjectDetail(val) {\r\n console.log('FORM PROJECT ', val)\r\n // val.SALESCATEGORYID\r\n this.isnew = false;\r\n //console.log(this.VieneDe)\r\n //console.log(val.DOLLARAMOUNT)\r\n //console.log('Voy por auqi ');\r\n val.BIDSTATUS = val.BIDSTATUS == null ? this.defaultBidStatus : val.BIDSTATUS;\r\n\r\n this.projectSold = val.BIDSTATUS == 3;\r\n\r\n this.updateStatus.emit(this.projectSold);\r\n\r\n if(this.VieneDe == \"SWO\"){\r\n this.disableInputs = false;\r\n\r\n this.ispipeline.emit(val.IsPipeline == 1);\r\n\r\n if (this.disableInputs)\r\n this.omitirsave.emit(true);\r\n\r\n //console.log(val.BIDREQUESTDATE)\r\n //console.log(val.BIDDATE)\r\n if(val.BIDREQUESTDATE == \"1753-01-01T00:00:00\"){val.BIDREQUESTDATE = this.datePipe.transform(new Date(), 'yyyyMMdd')}\r\n if(val.BIDDATE == \"1753-01-01T00:00:00\"){val.BIDDATE = this.datePipe.transform(new Date(), 'yyyyMMdd')}\r\n\r\n\r\n this._projectDetailForm = new FormGroup({\r\n bidreqdate: new FormControl({ value: val.BIDREQUESTDATE, disabled: false }, []),\r\n biddate: new FormControl({ value: val.BIDDATE, disabled: false }, []),\r\n projectid: new FormControl({ value: this.projectid, disabled: false }, []),\r\n projectnum: new FormControl({ value: val.PROJECTNUMBER, disabled: false }, []),\r\n name: new FormControl({ value: val.PROJECTNAME, disabled: false }, []),\r\n siteid: new FormControl({ value: val.SITEID, disabled: false }, []),\r\n salescategoryid: new FormControl({ value: val.SALESCATEGORYID, disabled: false }, []),\r\n bidstatus: new FormControl({ value: val.BIDSTATUS, disabled: false }, []),\r\n closedate: new FormControl({ value: val.STRSALESCLOSEDATE, disabled: false }, []),\r\n amount: new FormControl({ value: val.DOLLARAMOUNT, disabled: false }, []),\r\n profit: new FormControl({ value: val.PROFFITMARGIN, disabled: false }, []),\r\n profitpercent: new FormControl({ value: val.PROFFITMARGIN * 100, disabled: false }, []),\r\n consultingid: new FormControl({ value: val.DESIGNERID, disabled: false }, []),\r\n\r\n salesemp: new FormControl({ value: val.SALESEMPLOYEE, disabled: false }, []),\r\n custreqpriceid: new FormControl({ value: val.CUSTOMERREQPRICEID, disabled: false }, []),\r\n custawardprojectid: new FormControl({ value: val.CONTRACTORBUYER, disabled: false }, []),\r\n partestimaterequestbyid: new FormControl({ value: val.PARTESTIMATEREQUESTBYID, disabled: false }, []),\r\n projectverticalid: new FormControl({ value: val.PROJECTVERTICALID, disabled: false }, []),\r\n awardedto: new FormControl({ value: val.AWARDEDTO, disabled: false }, []),\r\n // marketcampid: new FormControl({ value: val.MARKETCAMPID, disabled: false }, []),\r\n productspecified: new FormControl({ value: val.PRODUCTSPECIFIED, disabled: false }, []),\r\n // prevailingwage: new FormControl({ value: val.PREVAILINGWAGES, disabled: false }, []),\r\n prevailingwagecode: new FormControl({ value: val.PREVAILINGWAGESCODE, disabled: false }, []),\r\n notbidreason: new FormControl({ value: val.NOTBIDREASON, disabled: false }, []),\r\n salescomment: new FormControl({ value: val.SALESCOMMENTS, disabled: false }, []),\r\n salesnotes: new FormControl({ value: val.salesnotes, disabled: false }, []),\r\n\r\n address: new FormControl({ value: val.ADDRESS, disabled: false }, []),\r\n addressline2: new FormControl({ value: val.ADDRESSLINE2, disabled: false }, []),\r\n city: new FormControl({ value: val.CITY, disabled: false }, []),\r\n state: new FormControl({ value: val.STATE, disabled: false }, []),\r\n country: new FormControl({ value: val.COUNTRY, disabled: false }, []),\r\n zip: new FormControl({ value: val.ZIP, disabled: false }, []),\r\n lat: new FormControl({ value: val.LAT, disabled: false }, []),\r\n lon: new FormControl({ value: val.LON, disabled: false }, []),\r\n\r\n });\r\n\r\n this.consultingname = val.DESIGNERNAME;\r\n this.custawardprojectname = val.BUYERNAME;\r\n this.partestimaterequestbyname = val.REQUESTBYNAME;\r\n this.custreqpricename = val.CUSREQPRICENAME;\r\n\r\n } else {\r\n this.disableInputs = val.BIDSTATUS == 3;\r\n\r\n this.ispipeline.emit(val.IsPipeline == 1);\r\n\r\n if (this.disableInputs)\r\n this.omitirsave.emit(true);\r\n\r\n this._projectDetailForm = new FormGroup({\r\n bidreqdate: new FormControl({ value: val.BIDREQUESTDATE, disabled: false }, []),\r\n biddate: new FormControl({ value: val.BIDDATE, disabled: false }, []),\r\n projectid: new FormControl({ value: this.projectid, disabled: false }, []),\r\n projectnum: new FormControl({ value: val.PROJECTNUMBER, disabled: false }, []),\r\n name: new FormControl({ value: val.PROJECTNAME, disabled: false }, []),\r\n siteid: new FormControl({ value: val.SITEID, disabled: false }, []),\r\n salescategoryid: new FormControl({ value: val.SALESCATEGORYID, disabled: false }, []),\r\n bidstatus: new FormControl({ value: val.BIDSTATUS, disabled: false }, []),\r\n closedate: new FormControl({ value: val.STRSALESCLOSEDATE, disabled: false }, []),\r\n amount: new FormControl({ value: val.DOLLARAMOUNT, disabled: false }, []),\r\n profit: new FormControl({ value: val.PROFFITMARGIN, disabled: false }, []),\r\n profitpercent: new FormControl({ value: val.PROFFITMARGIN * 100, disabled: false }, []),\r\n consultingid: new FormControl({ value: val.DESIGNERID, disabled: false }, []),\r\n\r\n salesemp: new FormControl({ value: val.SALESEMPLOYEE, disabled: false }, []),\r\n custreqpriceid: new FormControl({ value: val.CUSTOMERREQPRICEID, disabled: false }, []),\r\n custawardprojectid: new FormControl({ value: val.CONTRACTORBUYER, disabled: false }, []),\r\n partestimaterequestbyid: new FormControl({ value: val.PARTESTIMATEREQUESTBYID, disabled: false }, []),\r\n projectverticalid: new FormControl({ value: val.PROJECTVERTICALID, disabled: false }, []),\r\n awardedto: new FormControl({ value: val.AWARDEDTO, disabled: false }, []),\r\n // marketcampid: new FormControl({ value: val.MARKETCAMPID, disabled: false }, []),\r\n productspecified: new FormControl({ value: val.PRODUCTSPECIFIED, disabled: false }, []),\r\n // prevailingwage: new FormControl({ value: val.PREVAILINGWAGES, disabled: false }, []),\r\n prevailingwagecode: new FormControl({ value: val.PREVAILINGWAGESCODE, disabled: false }, []),\r\n notbidreason: new FormControl({ value: val.NOTBIDREASON, disabled: false }, []),\r\n salescomment: new FormControl({ value: val.SALESCOMMENTS, disabled: false }, []),\r\n salesnotes: new FormControl({ value: val.salesnotes, disabled: false }, []),\r\n\r\n address: new FormControl({ value: val.ADDRESS, disabled: false }, []),\r\n addressline2: new FormControl({ value: val.ADDRESSLINE2, disabled: false }, []),\r\n city: new FormControl({ value: val.CITY, disabled: false }, []),\r\n state: new FormControl({ value: val.STATE, disabled: false }, []),\r\n country: new FormControl({ value: val.COUNTRY, disabled: false }, []),\r\n zip: new FormControl({ value: val.ZIP, disabled: false }, []),\r\n lat: new FormControl({ value: val.LAT, disabled: false }, []),\r\n lon: new FormControl({ value: val.LON, disabled: false }, []),\r\n\r\n });\r\n\r\n this.consultingname = val.DESIGNERNAME;\r\n this.custawardprojectname = val.BUYERNAME;\r\n this.partestimaterequestbyname = val.REQUESTBYNAME;\r\n this.custreqpricename = val.CUSREQPRICENAME;\r\n\r\n }\r\n\r\n if (val.SALESCATEGORYID == null){\r\n this._projectDetailForm.get('salescategoryid').setValue(this.projectCategorySelect.find(x => x.DEFAULT == 1).ID)\r\n }\r\n }\r\n\r\n getBidStatus() {\r\n // this.generalService.GetProjectBidStatus().subscribe(result => {\r\n this.MapInformationService.SaveInfoSites({method:\"Estimates_Get_ProjectBidStatus\"}).subscribe(result => {\r\n // //console.log(result)\r\n this.bidStatusSelect = result;\r\n // //console.log(this.bidStatusSelect)\r\n if (!this._projectDetailForm.get('bidstatus').value)\r\n // this._projectDetailForm.get('bidstatus').setValue(this.bidStatusSelect.find(x => x.DEFAULT == 1).ID)\r\n this._projectDetailForm.get('bidstatus').setValue(this.bidStatusSelect[0].ID)\r\n },error=>{\r\n //console.log(error)\r\n });\r\n }\r\n\r\n getMarketingCampaign() {\r\n this.salesProjectService.GetSalesLeadMarketingCampaign().subscribe(result => {\r\n this.marketingSelect = result;\r\n })\r\n }\r\n\r\n getProjectVerticalMarket() {\r\n // this.salesProjectService.GetProjectVerticalMarket().subscribe(result => {\r\n this.MapInformationService.SaveInfoSites({method:\"Estimates_Get_ProjectVerticalMarket\"}).subscribe(result => {\r\n // //console.log(result)\r\n this.verticalMarketSelect = result;\r\n if (!this._projectDetailForm.get('projectverticalid').value)\r\n this._projectDetailForm.get('projectverticalid').setValue(this.verticalMarketSelect.find(x => x.DEFAULT == 1).ID)\r\n });\r\n }\r\n\r\n getSites() {\r\n this.siteService.GetSites().subscribe(result => {\r\n this.siteSelect = result;\r\n });\r\n }\r\n\r\n getCustomer() {\r\n this.customerService.GetCustomerList().subscribe(result => {\r\n this.customerSelect = result;\r\n });\r\n }\r\n\r\n getProductSpecified() {\r\n this.MapInformationService.SaveInfoSites({method:\"Get_Competitor\"}).subscribe(result => {\r\n // this.salesLeadService.GetSalesLeadCompetitor().subscribe(result => {\r\n this.productSpecifiedSelect = result;\r\n });\r\n\r\n }\r\n\r\n getPrevailingWages() {\r\n this.salesProjectService.GetPrevailingWages().subscribe(result => {\r\n this.prevailingSelect = result;\r\n });\r\n }\r\n\r\n getSalesPerson() {\r\n // this.generalService.GetSalesPerson().subscribe(\r\n this.MapInformationService.SaveInfoSites({method:\"Get_EmployeeSalesListAllCE\"}).subscribe(\r\n data => {\r\n // //console.log(data)\r\n this.salesPersonSelect = data.map((val) => {\r\n // //console.log(val.value)\r\n return { // Return the new object structure\r\n label: val.CONTACTNAME,\r\n value: val.ID\r\n };\r\n });\r\n },\r\n err => {\r\n //console.log(err);\r\n }\r\n );\r\n }\r\n\r\n updateSalesProject(type = 1) {\r\n console.clear()\r\n //console.log(type);\r\n //console.log(this._projectDetailForm.value)\r\n if (this.getFormValidationErrors())\r\n return;\r\n\r\n let form = this._projectDetailForm.value;\r\n\r\n // if(form.address == \"\" || form.address == undefined){\r\n // this.toast.warning(\"The Address field cannot be empty\")\r\n // return false\r\n // } else {\r\n // form.addressline2 = form.address\r\n // }\r\n\r\n if (!form.name) {\r\n form.name = 'New Estimate';\r\n }\r\n form.siteid = form.siteid ? form.siteid : 0;\r\n form.salescategoryid = form.salescategoryid ? form.salescategoryid : 0;\r\n form.amount = form.amount ? form.amount : 0;\r\n form.profit = form.profit ? form.profit : 0;\r\n form.bidstatus = form.bidstatus ? form.bidstatus : 0;\r\n form.profitpercent = form.profitpercent ? form.profitpercent : 0;\r\n form.consultingid = form.consultingid ? form.consultingid : 0;\r\n form.salesemp = form.salesemp ? form.salesemp : 0;\r\n form.custreqpriceid = form.custreqpriceid ? form.custreqpriceid : 0;\r\n form.custawardprojectid = form.custawardprojectid ? form.custawardprojectid : 0;\r\n form.projectverticalid = form.projectverticalid ? form.projectverticalid : 0;\r\n form.awardedto = form.awardedto ? form.awardedto : 0;\r\n form.productspecified = form.productspecified ? form.productspecified : 0;\r\n form.partestimaterequestbyid = form.partestimaterequestbyid ? form.partestimaterequestbyid : 0;\r\n form.prevailingwagecode = form.prevailingwagecode ? form.prevailingwagecode : 0;\r\n form.notbidreason = form.notbidreason ? form.notbidreason : 0;\r\n form.prevailingwage = 0;\r\n form.closedate = form.closedate ? this.datePipe.transform(form.closedate, 'yyyyMMdd') : '';\r\n form.bidreqdate = form.bidreqdate ? this.datePipe.transform(form.bidreqdate, 'yyyyMMdd') : '';\r\n form.biddate = form.biddate ? this.datePipe.transform(form.biddate, 'yyyyMMdd') : '';\r\n form.method = 'InsertUpdate_SalesProjectsCE';\r\n //form.profit = form.profitpercent / 100;\r\n //console.log('FORMULARIO ',form);\r\n this.salesProjectService.InsertUpdateSalesProject(form).subscribe(result => {\r\n // //console.log(result)\r\n // this.router.navigateByUrl('/salesProject');\r\n let obj = {\r\n name: form.name,\r\n projectid: 0\r\n }\r\n if (this.isnew){\r\n this.ngOnInit();\r\n this.toast.success(this.translate.instant('msgProjSucc'));\r\n\r\n }else{\r\n this.getSalesProject();\r\n this.toast.success(this.translate.instant('msgUpdSucc'));\r\n }\r\n\r\n if (type == 1 || type == 3) {\r\n this.closemodal.emit();\r\n }\r\n\r\n // if (type == 2) {\r\n // this.initFormProjectDetail();\r\n // }\r\n\r\n obj.projectid = result.length > 0 ? result[0].ReturnID : 0;\r\n this.onsave.emit(obj);\r\n if (type == 3) {\r\n this.router.navigateByUrl(`/salesProject/editSales/${result[0].ReturnID}`);\r\n //console.log('Save y Edit')\r\n this.toast.success(this.translate.instant('msgProjSucc'));\r\n }\r\n\r\n\r\n });\r\n }\r\n\r\n getProjectCategory() {\r\n // this.salesProjectService.GetProjectSalesCategory().subscribe(result => {\r\n this.MapInformationService.SaveInfoSites({method:\"Estimates_Get_ProjectSalesCategory\"}).subscribe(result => {\r\n // this.salesCategorySelect = result.map((val) => {\r\n // return { // Return the new object structure\r\n // label: val.PROJECTSLSCATEGORY,\r\n // value: val.ID\r\n // };\r\n // });\r\n this.projectCategorySelect = result;\r\n\r\n\r\n if (!this._projectDetailForm.get('salescategoryid').value){\r\n this._projectDetailForm.get('salescategoryid').setValue(this.projectCategorySelect.find(x => x.DEFAULT == 1).ID)\r\n }\r\n });\r\n }\r\n\r\n updateAwardingJob(item) {\r\n\r\n if (item.selectedItem.ID) {\r\n this._projectDetailForm.get('custawardprojectid').setValue(item.selectedItem.ID);\r\n // this.state = item.selectedItem.First + ' ' + item.selectedItem.Last;\r\n }\r\n }\r\n\r\n updateContactId(item) {\r\n\r\n if (item.selectedItem.ID) {\r\n this._projectDetailForm.get('partestimaterequestbyid').setValue(item.selectedItem.ID);\r\n //console.log(item.selectedItem)\r\n // this.state = item.selectedItem.First + ' ' + item.selectedItem.Last;\r\n this.partestimaterequestbyname = item.selectedItem.ContaNameID;\r\n //console.log(this.partestimaterequestbyname)\r\n }\r\n }\r\n\r\n test(item){\r\n //console.log(item)\r\n }\r\n\r\n goEditContact(CONTACT_ID) {\r\n this.router.navigateByUrl('/contacts/editContact/' + CONTACT_ID);\r\n }\r\n\r\n updateConsultingFirm(item) {\r\n\r\n if (item.selectedItem.ID) {\r\n this._projectDetailForm.get('consultingid').setValue(item.selectedItem.ID);\r\n this.consultingname = item.selectedItem.DESCRIPTION;\r\n // this.state = item.selectedItem.First + ' ' + item.selectedItem.Last;\r\n }\r\n }\r\n\r\n updateCustomerRequestPrice(item) {\r\n if (item.selectedItem.ID) {\r\n this._projectDetailForm.get('custreqpriceid').setValue(item.selectedItem.ID);\r\n this.custreqpricename = item.selectedItem.DESCRIPTION;\r\n // this.state = item.selectedItem.First + ' ' + item.selectedItem.Last;\r\n }\r\n }\r\n\r\n goEditCustomer(customerid) {\r\n this.router.navigateByUrl('/customers/editCustomer/' + customerid);\r\n }\r\n /* Fin Project detail */\r\n\r\n InsertNew(event){\r\n //console.log(event)\r\n const data = {\r\n method:\"InsertUpdate_SalesNotBidReason\",\r\n id:0,\r\n name:event.data.NAME,\r\n sort:\"\",\r\n active:1\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n this.toast.success(\"Not Bid Reason added Successfully\")\r\n this.getProjectNotBidReason()\r\n this.popupaddProdSpeButtonNOTBIDREASON = false\r\n })\r\n }\r\n\r\n UpdateNorReasonNew(event){\r\n const data = {\r\n method:\"InsertUpdate_SalesNotBidReason\",\r\n id:event.data.ID,\r\n name:event.data.NAME,\r\n sort:\"\",\r\n active:1\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n this.toast.success(\"Not Bid Reason updated Successfully\")\r\n this.getProjectNotBidReason()\r\n this.popupaddProdSpeButtonNOTBIDREASON = false\r\n })\r\n }\r\n\r\n insertNewCategory(event){\r\n //console.log(event)\r\n this._projectDetailForm.get(\"salescategoryid\").setValue(event[0].ResultID)\r\n this.getProjectCategory()\r\n }\r\n\r\n getNewRequesting(ev){\r\n //console.log(ev)\r\n let mythis = this;\r\n this.custreqpricename = ev.id\r\n this._projectDetailForm.get('custreqpriceid').setValue(ev.id);\r\n this.newCustomerRequestingSelect.placeholder = ev.name\r\n\r\n // return mythis.customerService.GetCustomerByName(loadOptions.searchValue)\r\n\r\n this.customerDataSource = new CustomStore({\r\n key: \"ID\",\r\n useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \"cond\"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.SaveInfoSites({method:\"Get_CustomerCE_ByName\", name: loadOptions.searchValue})\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n }\r\n\r\n getNewAwarding(ev){\r\n //console.log(ev)\r\n let mythis = this;\r\n this.custawardprojectname = ev.id\r\n this._projectDetailForm.get('custawardprojectid').setValue(ev.id);\r\n this.newCustomerAwardingSelect.placeholder = ev.name\r\n this.customerWithCreditDataSource = new CustomStore({\r\n key: \"ID\",\r\n useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \"cond\"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.customerService.GetCustomerWithCreditListByName(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n //console.log(data);\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n }\r\n\r\n insertNewVerticalMarket(event){\r\n //console.log(event)\r\n this._projectDetailForm.get('projectverticalid').setValue(event[0].ResultID)\r\n this.getProjectVerticalMarket()\r\n }\r\n\r\n newAwardedTo(event){\r\n //console.log(event)\r\n this._projectDetailForm.get('awardedto').setValue(event[0].ResultID)\r\n this.getProductSpecified()\r\n this.getClientCompetitor()\r\n }\r\n\r\n newProductSpecified(event){\r\n //console.log(event)\r\n this._projectDetailForm.get('productspecified').setValue(event[0].ResultID)\r\n this.getProductSpecified()\r\n this.getClientCompetitor()\r\n }\r\n\r\n\r\n SetNotBidReason(event){\r\n //console.log(event)\r\n this._projectDetailForm.get('notbidreason').setValue(event[0].ResultID)\r\n this.getProjectNotBidReason()\r\n }\r\n\r\n GoToCustomer(){\r\n //console.log(this._projectDetailForm.value)\r\n // // custreqpriceid\r\n // projectid\r\n localStorage.removeItem(\"VolverSalesProject\")\r\n localStorage.removeItem(\"VolverSalesProjectID\")\r\n localStorage.setItem(\"VolverSalesProject\",\"yes\")\r\n localStorage.setItem(\"VolverSalesProjectID\",this._projectDetailForm.value.projectid)\r\n this.router.navigateByUrl(`/customers/editCustomer/${this._projectDetailForm.value.custreqpriceid}`);\r\n }\r\n\r\n GoToCustomerJob(){\r\n //console.log(this._projectDetailForm.value)\r\n // // custreqpriceid\r\n localStorage.removeItem(\"VolverSalesProject\")\r\n localStorage.removeItem(\"VolverSalesProjectID\")\r\n localStorage.setItem(\"VolverSalesProject\",\"yes\")\r\n localStorage.setItem(\"VolverSalesProjectID\",this._projectDetailForm.value.projectid)\r\n this.router.navigateByUrl(`/customers/editCustomer/${this._projectDetailForm.value.custawardprojectid}`);\r\n }\r\n\r\n GoToContact(){\r\n localStorage.removeItem(\"VolverSalesProject\")\r\n localStorage.removeItem(\"VolverSalesProjectID\")\r\n localStorage.setItem(\"VolverSalesProject\",\"yes\")\r\n localStorage.setItem(\"VolverSalesProjectID\",this._projectDetailForm.value.projectid)\r\n this.router.navigateByUrl(`/contacts/editContact/${this._projectDetailForm.value.partestimaterequestbyid}`);\r\n }\r\n\r\n editSite(){\r\n localStorage.removeItem('newSite')\r\n localStorage.removeItem('VolverEditSalesProject')\r\n localStorage.setItem('newSite',this._projectDetailForm.value.siteid)\r\n localStorage.setItem('VolverEditSalesProject',this.projectid)\r\n this.router.navigate(['/serviceSites/editServiceSite']);\r\n }\r\n\r\n openRefreshPrice:boolean=false\r\n optionImportPrice:any[]=[\r\n {\r\n id:0,\r\n name:\"Scope of Work\"\r\n },\r\n {\r\n id:1,\r\n name:\"Estimate Associated\"\r\n }\r\n ]\r\n refresPrice(){\r\n this.openRefreshPrice = true\r\n }\r\n\r\n closeDataPrice(){\r\n this.openRefreshPrice = false;\r\n this.optionSelected = 0\r\n }\r\n\r\n showSelectEstimate:boolean = false\r\n estimate:any[]=[]\r\n showSelectEstimateFunction(event){\r\n console.log(event.value)\r\n if (event.value == 0){\r\n this.showSelectEstimate = false\r\n } else {\r\n const datos = {\r\n method:\"Get_Projectestimate\",\r\n projectid:this.projectid\r\n }\r\n // console.log(datos)\r\n this.MapInformationService.SaveInfoSites(datos)\r\n .subscribe(resp=>{\r\n this.estimate = resp\r\n this.showSelectEstimate = true\r\n })\r\n }\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CreateUpdateSalesProjectComponent } from './create-update-sales-project.component';\r\nimport { DxTooltipModule, DxToolbarModule, DxTextAreaModule, DxDataGridModule, DxSliderModule, DxButtonModule, DxPopupModule, DxTemplateModule, DxDropDownButtonModule, DxScrollViewModule, DxTabPanelModule, DxAccordionModule, DxDateBoxModule, DxTextBoxModule, DxAutocompleteModule, DxSelectBoxModule, DxTagBoxModule, DxCheckBoxModule, DxRangeSliderModule, DxFileUploaderModule, DxNumberBoxModule } from 'devextreme-angular';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { NewContactModule } from 'src/app/shared/new-contact/new-contact.module';\r\nimport { NewServiceSiteModule } from '../../employee-activities/forms/new-service-site/new-service-site.module';\r\nimport { NewCustomerModule } from '../../employee-activities/forms/new-customer/new-customer.module';\r\nimport { MarketCompaniesThatYouCompeteModule } from '../../market-analysis/market-companies-that-you-compete/market-companies-that-you-compete.module';\r\n\r\nimport { GooglePlaceModule } from 'ngx-google-places-autocomplete';\r\nimport { DinamicModalModule } from 'src/app/shared/dinamic-modal/dinamic-modal.module';\r\nimport { NewSalesRoundComponent } from '../new-sales-round/new-sales-round.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n CreateUpdateSalesProjectComponent,\r\n NewSalesRoundComponent,\r\n\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxTextAreaModule,\r\n DxDataGridModule,\r\n DxSliderModule,\r\n DxButtonModule,\r\n DxPopupModule,\r\n DxTemplateModule,\r\n DxDropDownButtonModule,\r\n DxScrollViewModule,\r\n DxTabPanelModule,\r\n DxAccordionModule,\r\n DxDateBoxModule,\r\n DxTextBoxModule,\r\n DxAutocompleteModule,\r\n DxSelectBoxModule,\r\n DxTagBoxModule,\r\n DxCheckBoxModule,\r\n DxRangeSliderModule,\r\n DxFileUploaderModule,\r\n DxNumberBoxModule,\r\n NewContactModule,\r\n NewCustomerModule,\r\n NewServiceSiteModule,\r\n MarketCompaniesThatYouCompeteModule,\r\n GooglePlaceModule,\r\n DxToolbarModule,\r\n DinamicModalModule,\r\n DxTooltipModule\r\n ],\r\n exports:[CreateUpdateSalesProjectComponent, NewSalesRoundComponent]\r\n})\r\nexport class CreateUpdateSalesProjectModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3NhbGVzLW1hbmFnZW1lbnQvc2FsZXMtcHJvamVjdC9uZXctc2FsZXMtcm91bmQvbmV3LXNhbGVzLXJvdW5kLmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport DataSource from 'devextreme/data/data_source';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { CustomerService } from 'src/app/services/customer.service';\r\nimport { SalesProjectService } from 'src/app/services/sales-project.service';\r\nimport { NewCustomerComponent } from '../../employee-activities/forms/new-customer/new-customer.component';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'app-new-sales-round',\r\n templateUrl: './new-sales-round.component.html',\r\n styleUrls: ['./new-sales-round.component.scss']\r\n})\r\nexport class NewSalesRoundComponent implements OnInit {\r\n\r\n // botones round\r\n // cancelButtonround: any;\r\n // saveButtonRound: any;\r\n\r\n _projectid;\r\n @Input('projectid')\r\n set projectid(projectid: any) {\r\n this._projectid = projectid;\r\n this.initFormProjectRound();\r\n // if (projectid && projectid.projectidid > 0)\r\n // this.setprojectidInfo(projectid);\r\n }\r\n\r\n get projectid(): any { return this._projectid; }\r\n\r\n\r\n @Input() popupNewRound = false;\r\n\r\n @Output() onInsertUpdate: EventEmitter = new EventEmitter();\r\n @Output() onCloseModal: EventEmitter = new EventEmitter();\r\n\r\n _formProjectRound: FormGroup;\r\n\r\n saveEditButtonround: any;\r\n cancelButtonround: any;\r\n\r\n @ViewChild('newcustomer', { static: false }) newcustomer: NewCustomerComponent;\r\n cancelButtonNewCustomer: any;\r\n saveButtonNewCustomer: any;\r\n popupCustomer:boolean=false\r\n customerDataSource: DataSource;\r\n\r\n addProdSpeButtonNOTBIDREASON:any\r\n popupaddProdSpeButtonNOTBIDREASON:boolean=false\r\n\r\n constructor(private toast: ToastService,\r\n private salesProjectService: SalesProjectService,\r\n private customerService: CustomerService,\r\n private translate:TranslateService) {\r\n // botones new round\r\n // this.cancelButtonround = {\r\n // text: this.translate.instant('btnCancel'),\r\n // elementAttr: {\r\n // id: 'bton-gray'\r\n // },\r\n // onClick: () => {\r\n // this.popupNewRound = false\r\n // },\r\n // };\r\n\r\n\r\n // this.saveButtonRound = {\r\n // text: this.translate.instant('btnSave'),\r\n // icon: 'check',\r\n // elementAttr: {\r\n // id: 'bton-green'\r\n // },\r\n // onClick: () => {\r\n // this.saveProjectRound()\r\n // },\r\n // };\r\n\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.initFormProjectRound();\r\n\r\n let mythis = this;\r\n this.customerDataSource = new DataSource({\r\n load: function (loadOptions: any) { \r\n return mythis.customerService.GetCustomerCEByName(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n console.log('DATA ', data);\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n\r\n\r\n this.addProdSpeButtonNOTBIDREASON = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupCustomer = true;\r\n },\r\n };\r\n\r\n\r\n this.cancelButtonNewCustomer = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupCustomer = false;\r\n },\r\n };\r\n\r\n this.saveButtonNewCustomer = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.newcustomer.submitForm(true, false);\r\n },\r\n };\r\n\r\n this.cancelButtonround = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.popupNewRound = false;\r\n },\r\n };\r\n\r\n\r\n this.saveEditButtonround = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.saveProjectRound()\r\n },\r\n // disabled: this._formProjectRound.invalid\r\n };\r\n }\r\n\r\n onHidden() {\r\n this.onCloseModal.emit();\r\n }\r\n\r\n initFormProjectRound() {\r\n this._formProjectRound = new FormGroup({\r\n bidnotes: new FormControl({ value: '', disabled: false }, []),\r\n customerid: new FormControl({ value: null, disabled: false }, [Validators.required]),\r\n round6: new FormControl({ value: 0, disabled: false }, []),\r\n round5: new FormControl({ value: 0, disabled: false }, []),\r\n round4: new FormControl({ value: 0, disabled: false }, []),\r\n round3: new FormControl({ value: 0, disabled: false }, []),\r\n round2: new FormControl({ value: 0, disabled: false }, []),\r\n round1: new FormControl({ value: 0, disabled: false }, []),\r\n round0: new FormControl({ value: 0, disabled: false }, []),\r\n projectid: new FormControl({ value: this._projectid, disabled: false }, []),\r\n id: new FormControl({ value: 0, disabled: false }, []),\r\n customername: new FormControl({ value: '', disabled: false }, []),\r\n\r\n });\r\n }\r\n\r\n setFormProjectRound(val) {\r\n console.log(val)\r\n this._formProjectRound = new FormGroup({\r\n bidnotes: new FormControl({ value: val.BIDNOTES, disabled: false }, []),\r\n customerid: new FormControl({ value: val.CustomerID, disabled: false }, [Validators.required]),\r\n round6: new FormControl({ value: val.ROUND6, disabled: false }, []),\r\n round5: new FormControl({ value: val.ROUND5, disabled: false }, []),\r\n round4: new FormControl({ value: val.ROUND4, disabled: false }, []),\r\n round3: new FormControl({ value: val.ROUND3, disabled: false }, []),\r\n round2: new FormControl({ value: val.ROUND2, disabled: false }, []),\r\n round1: new FormControl({ value: 0, disabled: false }, []),\r\n round0: new FormControl({ value: val.ROUND0, disabled: false }, []),\r\n projectid: new FormControl({ value: this._projectid, disabled: false }, []),\r\n id: new FormControl({ value: val.ID, disabled: false }, []),\r\n customername: new FormControl({ value: val.CUSTOMERNAME, disabled: false }, []),\r\n });\r\n }\r\n\r\n\r\n\r\n saveProjectRound() {\r\n let value = this._formProjectRound.value;\r\n\r\n\r\n value.round0 = !value.round0 ? 0 : value.round0;\r\n value.round1 = !value.round1 ? 0 : value.round1;\r\n value.round2 = !value.round2 ? 0 : value.round2;\r\n value.round3 = !value.round3 ? 0 : value.round3;\r\n value.round4 = !value.round4 ? 0 : value.round4;\r\n value.round5 = !value.round5 ? 0 : value.round5;\r\n value.round6 = !value.round6 ? 0 : value.round6;\r\n\r\n console.log(JSON.stringify(value));\r\n console.log(this._projectid)\r\n this.salesProjectService.InsertUpdateProjectRound(value).subscribe(result => {\r\n this.toast.success(this.translate.instant('msgProjRoun'));\r\n // this.getProjectRound();\r\n this.onInsertUpdate.emit();\r\n this.onCloseModal.emit();\r\n this.popupNewRound = false;\r\n })\r\n }\r\n\r\n updateCustomerProjectRound(item) {\r\n if(item != undefined){\r\n if(item.selectedItem != undefined){\r\n if (item.selectedItem.ID) {\r\n this._formProjectRound.get('customerid').setValue(item.selectedItem.ID);\r\n // this.state = item.selectedItem.First + ' ' + item.selectedItem.Last;\r\n }\r\n }\r\n }\r\n }\r\n\r\n resultulCustumerOriginal(ev) {\r\n console.log(ev);\r\n\r\n let obj = {\r\n selectedItem: {\r\n ID: ev.id,\r\n DESCRIPTION: ev.name\r\n }\r\n };\r\n\r\n this._formProjectRound.get('customerid').setValue(ev.id);\r\n this._formProjectRound.get(\"customername\").setValue(ev.name)\r\n }\r\n\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3BhZ2VzL3NlcnZpY2UtbWFuYWdlbWVudC9zZXJ2aWNlcy1tYXAvY29tcG9uZW50cy9uZXctc2VydmljZS13b3JrLW9yZGVyL25ldy1zZXJ2aWNlLXdvcmstb3JkZXIuY29tcG9uZW50LnNjc3MifQ== */\"","import { Component, OnInit, DoCheck, Output, EventEmitter, ViewChild, Input } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { NavigationExtras, Router } from '@angular/router';\r\nimport { DxSelectBoxComponent } from 'devextreme-angular';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport DataSource from 'devextreme/data/data_source';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { MarketServiceInterface, UnitOrDriverInterface } from 'src/app/models/models.interface';\r\nimport { CreateUpdateSalesProjectComponent } from 'src/app/pages/sales-management/sales-project/create-update-sales-project/create-update-sales-project.component';\r\nimport { ContactService } from 'src/app/services/contact.service';\r\nimport { SharedDatagridModule } from 'src/app/shared/shared-datagrid/shared-datagrid.module';\r\nimport { MapInformationService } from '../../../../../services/map-information.service'\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'new-service-work-order',\r\n templateUrl: './new-service-work-order.component.html',\r\n styleUrls: ['./new-service-work-order.component.scss']\r\n})\r\nexport class NewServicesOrderComponent implements OnInit {\r\n plusSiteButton: any;\r\n plusContactButton: any;\r\n plusResponsibleButton: any;\r\n plusResourcesButton:any;\r\n\r\n @Output() cloeModal1 = new EventEmitter();\r\n @Output() reloadService = new EventEmitter();\r\n @Input() VieneDe;\r\n @Input() projectid;\r\n @Input() projectName;\r\n @Input() ServiceName;\r\n @Input() SiteID;\r\n public ValueDate: Date = new Date();\r\n public ValueDatesscheduledate= new Date();\r\n public ValueDatesEstimatedHours: Date;\r\n private auxDate: Date;\r\n popupSWOClient = false;\r\n @Output() ValueChange: EventEmitter;\r\n customerDataSourceresponsible: any;\r\n requestDataSource:any;\r\n request:any\r\n sitename:any\r\n siteName:any\r\n salesProject:any\r\n responsible:any\r\n popupServiceSite=false\r\n popupNewContact = false;\r\n popupResponsible = false;\r\n popupResources = false\r\n idNewSWO:any\r\n popupSalesProject = false;\r\n nuevaInfo=''\r\n category = \"\"\r\n type = \"\"\r\n priority=\"\"\r\n hoursText: any\r\n showPopUP:boolean=true\r\n\r\n\r\n loadInfo = {\r\n siteid: [],\r\n servicetype: [],\r\n servicecategoryid: [],\r\n requestedbyid: [],\r\n requestdate: [],\r\n customerpo: \"\",\r\n userid: [],\r\n resources: [],\r\n // subcontractorid: [],\r\n serviceestimatedhours: [],\r\n scheduledate: [],\r\n callahead: [],\r\n serviceconfirmed: [],\r\n projectid: [],\r\n priorityid: [],\r\n reasonforservice: [],\r\n };\r\n\r\n\r\n newSWO = new FormGroup({\r\n siteid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n servicetype: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n servicecategoryid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n requestedbyid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n requestdate: new FormControl(new Date()),\r\n customerpo: new FormControl({ value: '', disabled: false }, []),\r\n servicedoneby: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n resources: new FormControl({ value: '', disabled: false }, []),\r\n // subcontractorid: new FormControl(''),\r\n serviceestimatedhours: new FormControl(''),\r\n scheduledate: new FormControl({ value: new Date(), disabled: false }, [Validators.required]),\r\n callahead: new FormControl(false),\r\n serviceconfirmed: new FormControl(false),\r\n projectid: new FormControl({ value: '', disabled: false }, []),\r\n priorityid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n reasonforservice: new FormControl(''),\r\n Notify_Technician: new FormControl(false),\r\n serviceid:new FormControl({ value: 0, disabled: false }, []),\r\n });\r\n\r\n cancelButton:any\r\n saveButton:any\r\n saveNewButton:any\r\n saveEditButton:any\r\n\r\n dateFormat:any\r\n ResponsibleDataSource:any\r\n recursos:any[]=[]\r\n siteDataSource:any\r\n projectDataSource:any\r\n\r\n @ViewChild(\"newSiteSelect\", { static: false }) newSiteSelect: DxSelectBoxComponent;\r\n @ViewChild(\"newProjectSelect\", { static: false }) newProjectSelect: DxSelectBoxComponent;\r\n @ViewChild(\"newRequestSelect\", { static: false }) newRequestSelect: DxSelectBoxComponent;\r\n @ViewChild(\"newResponsibleSelect\", { static: false }) newResponsibleSelect: DxSelectBoxComponent;\r\n\r\n /**new sales project */\r\n cancelButtonNewSales: any;\r\n saveButtonNewSales: any;\r\n saveNewButtonNewSales: any;\r\n saveEditButtonNewSales: any;\r\n @ViewChild('componentSales', { static: false }) componentSales: CreateUpdateSalesProjectComponent;\r\n popupCreateSalesProject:boolean=false\r\n plusSalesProjectButton: any;\r\n\r\n constructor(\r\n public MapInformationService:MapInformationService,\r\n private toast: ToastService,\r\n private contactService: ContactService,\r\n private router: Router,\r\n private appConfigService: AppConfigService,\r\n private translate:TranslateService\r\n // private datagrid: SharedDatagridModule,\r\n ) {\r\n // this.auxDate = this.ValueDate = new Date();\r\n // this.ValueChange = new EventEmitter();\r\n this.dateFormat = this.appConfigService.dateFormat + ' HH:mm';\r\n\r\n this.plusSiteButton = {\r\n icon:\"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupServiceSite = true;\r\n }\r\n };\r\n\r\n this.plusContactButton = {\r\n icon:\"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupNewContact = true;\r\n }\r\n };\r\n\r\n this.plusResponsibleButton = {\r\n icon:\"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupResponsible = true\r\n }\r\n };\r\n\r\n this.plusResourcesButton = {\r\n icon:\"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupResources = true\r\n }\r\n };\r\n\r\n this.cancelButton = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id:'bton-gray'\r\n },\r\n onClick: () => {\r\n this.closeModalOutput()\r\n },\r\n };\r\n\r\n\r\n this.saveButton = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id:'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n // this.componentSales.updateSalesProject(1);\r\n this.sendInfo('')\r\n },\r\n };\r\n\r\n this.saveNewButton = {\r\n text: this.translate.instant('btnSaveNew'),\r\n elementAttr: {\r\n id:'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n // this.type = 2;\r\n // this.componentSales.updateSalesProject(2);\r\n this.sendInfo('newInfo')\r\n }\r\n };\r\n\r\n this.saveEditButton = {\r\n text: this.translate.instant('btnSaveEdit'),\r\n elementAttr: {\r\n id:'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n // this.type = 2;\r\n // this.componentSales.updateSalesProject(2);\r\n this.sendInfo('edit');\r\n }\r\n };\r\n\r\n this.plusSalesProjectButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n hint:\"Create new Sales project\",\r\n onClick: () => {\r\n this.popupCreateSalesProject = true\r\n }\r\n };\r\n\r\n this.cancelButtonNewSales = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.componentSales.ngOnInit();\r\n this.popupCreateSalesProject = false;\r\n },\r\n };\r\n\r\n this.saveButtonNewSales = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.componentSales.updateSalesProject(1);\r\n },\r\n };\r\n }\r\n\r\n ngOnInit(): void {\r\n console.log(this.ServiceName)\r\n console.log(this.SiteID)\r\n if(this.SiteID !== undefined){\r\n this.newSWO.get('siteid').setValue(this.SiteID);\r\n console.log(this.newSWO.value)\r\n }\r\n this.GetAllInfo()\r\n }\r\n\r\n GetAllInfo(){\r\n this.loadInfo = {\r\n siteid: [],\r\n servicetype: [],\r\n servicecategoryid: [],\r\n requestedbyid: [],\r\n requestdate: [],\r\n customerpo: \"\",\r\n userid: [],\r\n resources: [],\r\n serviceestimatedhours: [],\r\n scheduledate: [],\r\n callahead: [],\r\n serviceconfirmed: [],\r\n projectid: [],\r\n priorityid: [],\r\n reasonforservice: [],\r\n };\r\n // this.MapInformationService.GetAllInfo('Get_ServiceSites').\r\n // subscribe(sites=>{\r\n // this.MapInformationService.GetAllInfo('ServiceTechnician')\r\n // this.MapInformationService.GetAllInfo('Get_EmployeeListAll')\r\n // .subscribe(responsible=>{\r\n this.MapInformationService.GetAllInfoFiltro('Get_DefaultServiceType',localStorage.getItem('customerid'))\r\n .subscribe(type=>{\r\n this.MapInformationService.GetAllInfo('GetServicePriorityCE')\r\n .subscribe(priority=>{\r\n this.MapInformationService.GetAllInfoFiltro('Get_DefaultServicePriority',localStorage.getItem('customerid'))\r\n .subscribe(defaultPriority=>{\r\n this.MapInformationService.GetAllInfoFiltro('Get_DefaultServiceCategory',localStorage.getItem('customerid'))\r\n .subscribe(category=>{\r\n // this.MapInformationService.GetAllInfo('Get_SalesProjectList')\r\n // .subscribe(salesProject=>{\r\n this.MapInformationService.GetAllInfo('Get_EmployeeListAll')\r\n .subscribe(resources=>{\r\n // console.log('aqui estan los recursos')\r\n // console.log(resources)\r\n // console.log('aqui estan los recursos')\r\n this.MapInformationService.GetAllInfoFiltro('Get_DefaultServiceHours',localStorage.getItem('customerid'))\r\n .subscribe(hours=>{\r\n this.MapInformationService.GetAllInfo('Get_ServiceTypes')\r\n .subscribe(allCategory=>{\r\n this.MapInformationService.GetAllInfo('Get_SerCategory')\r\n .subscribe(allTypes=>{\r\n\r\n this.hoursText = hours[0].Service_Hours\r\n this.newSWO.get('serviceestimatedhours').setValue(this.hoursText);\r\n if(this.VieneDe == \"Service Contract\"){\r\n this.newSWO.get('projectid').setValue(this.projectid);\r\n }\r\n\r\n allCategory.forEach((element,index) => {\r\n if(element.SERVICETYPE != \"\"){\r\n this.loadInfo.servicetype.push(element)\r\n }\r\n // console.log(category)\r\n // console.log(type)\r\n if(element.ID == category[0].ID){\r\n this.newSWO.get('servicetype').setValue(element.ID);\r\n this.type = element.ID\r\n }\r\n });\r\n // console.log(defaultPriority)\r\n priority.forEach((element,index) => {\r\n if(element.name != \"\"){\r\n this.loadInfo.priorityid.push(element)\r\n }\r\n if(element.ID == defaultPriority[0].ID){\r\n this.newSWO.get('priorityid').setValue(element.ID);\r\n this.priority = element.ID\r\n }\r\n });\r\n allTypes.forEach((element,index) => {\r\n if(element.NAME != \"\"){\r\n this.loadInfo.servicecategoryid.push(element)\r\n }\r\n if(element.ID == type[0].ID){\r\n this.newSWO.get('servicecategoryid').setValue(element.ID);\r\n this.category = element.ID\r\n }\r\n });\r\n // salesProject.forEach(element => {\r\n // if(element.name != \"\"){\r\n // this.loadInfo.projectid.push(element)\r\n // }\r\n // });\r\n // sites.forEach(element => {\r\n // if(element.name != \"\"){\r\n // this.loadInfo.siteid.push(element)\r\n // }\r\n // });\r\n resources.forEach(element => {\r\n\r\n if(element.CONTACTNAME != \"\"){\r\n this.loadInfo.userid.push(element)\r\n }\r\n if(localStorage.getItem('customerid') == element.ID){\r\n console.log('Element Resources ', element);\r\n this.newSWO.get('servicedoneby').setValue(element.ID);\r\n this.responsible = element.CONTACTNAME\r\n this.newResponsibleSelect.placeholder = element.CONTACTNAME\r\n }\r\n });\r\n resources.forEach(element => {\r\n if(element.FIRSTNAME != \"\"){\r\n this.loadInfo.resources.push(element)\r\n }\r\n });\r\n\r\n let mythis = this;\r\n this.requestDataSource = new CustomStore({\r\n key: \"ID\",\r\n useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.GetAllInfoDinamico(\"Get_ContactsByName\",loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n console.log(data);\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading 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 let mythis = this;\r\n this.siteDataSource = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.GetAllInfoDinamico('Get_ServiceSites',loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n this.projectDataSource = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.GetAllInfoDinamico('Get_SalesProjectList',loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n console.log(data)\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n this.MapInformationService.GetAllInfo('Get_EmployeeListAll').toPromise().then((data: any) => {\r\n console.log('Responsible Data ', data);\r\n this.ResponsibleDataSource = data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n\r\n // this.ResponsibleDataSource = new CustomStore({\r\n // key: \"ID\",\r\n // load: function (loadOptions: any) {\r\n // // if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n // // loadOptions.searchValue = \"cond\"\r\n // // } else {\r\n // // loadOptions.searchValue = loadOptions.searchValue\r\n // // }\r\n // return mythis.MapInformationService.GetAllInfo('Get_EmployeeListAll')\r\n // .toPromise()\r\n // .then((data: any) => {\r\n // console.log(data)\r\n // return data;\r\n // })\r\n // .catch(error => { throw 'Data Loading Error' });\r\n // }\r\n // });\r\n }\r\n\r\n\r\n updateForm(item,tipo_select) {\r\n\r\n switch(tipo_select){\r\n case 'Responsible':\r\n if (item.selectedItem && item.selectedItem.ID) {\r\n console.log('Elegí ', item.selectedItem);\r\n this.newSWO.get('servicedoneby').setValue(item.selectedItem.ID);\r\n this.responsible = item.selectedItem.CONTACTNAME\r\n }\r\n break\r\n case 'Site_Name':\r\n if (item.selectedItem && item.selectedItem.ID) {\r\n this.newSWO.get('siteid').setValue(item.selectedItem.ID);\r\n this.sitename = item.selectedItem.name\r\n this.siteName = item.selectedItem.name\r\n }\r\n break\r\n case 'Sales_Project':\r\n if (item.selectedItem && item.selectedItem.ID) {\r\n this.newSWO.get('projectid').setValue(item.selectedItem.ID);\r\n this.salesProject = item.selectedItem.Description\r\n }\r\n break\r\n }\r\n }\r\n\r\n handleAddressChange(res){\r\n this.newSWO.get('lon').setValue(res.geometry.location.lng());\r\n this.newSWO.get('lat').setValue(res.geometry.location.lat());\r\n }\r\n\r\n sendInfo(newInfo){\r\n console.log(newInfo)\r\n this.nuevaInfo = '';\r\n if(newInfo == 'newInfo'){\r\n this.nuevaInfo = newInfo\r\n } else if (newInfo == 'edit'){\r\n this.nuevaInfo = newInfo\r\n }\r\n\r\n \r\n if(this.newSWO.value.projectid == '' || this.newSWO.value.projectid == null || this.newSWO.value.projectid == undefined){\r\n this.popupSalesProject = true\r\n } else {\r\n // console.log(this.newSWO.value)\r\n this.SaveInfo(\"No\")\r\n }\r\n }\r\n\r\n updateOwener(item) {\r\n if (item.selectedItem && item.selectedItem.ID) {\r\n this.newSWO.get('requestedbyid').setValue(item.selectedItem.ID);\r\n this.request = item.selectedItem.ContaNameID\r\n // this.newRequestSelect.placeholder = item.selectedItem.First + ' ' + item.selectedItem.Last;\r\n }\r\n }\r\n\r\n close(){\r\n console.log(\"close\")\r\n }\r\n\r\n resultNewSite($event){\r\n console.log($event)\r\n this.popupServiceSite = false\r\n this.newSWO.get('siteid').setValue($event.id);\r\n this.sitename = $event.name\r\n this.newSiteSelect.placeholder = $event.name\r\n }\r\n\r\n closeModalOutput() {\r\n if(this.ServiceName === undefined){\r\n this.newSiteSelect.placeholder = '';\r\n }\r\n console.log(this.VieneDe)\r\n if(this.VieneDe != \"Service Contract\"){\r\n this.newProjectSelect.placeholder = '';\r\n }\r\n this.newRequestSelect.placeholder = '';\r\n this.request = ''\r\n this.sitename = ''\r\n this.salesProject = ''\r\n this.responsible = ''\r\n this.newSWO.reset()\r\n this.cloeModal1.emit(true);\r\n this.GetAllInfo();\r\n this.newSWO.get('scheduledate').setValue(new Date);\r\n this.newSWO.get('requestdate').setValue(new Date);\r\n this.ValueDate = new Date;\r\n this.ValueDatesscheduledate = new Date;\r\n setTimeout(() => {\r\n this.ServiceName = undefined\r\n this.newRequestSelect.instance.reset()\r\n this.newRequestSelect.placeholder = 'Select...'\r\n this.newProjectSelect.instance.reset()\r\n this.newProjectSelect.placeholder = 'Select...'\r\n this.newSiteSelect.instance.reset()\r\n this.newSiteSelect.placeholder = 'Select...'\r\n }, 1000);\r\n }\r\n\r\n convertFecha(fecha){\r\n let date = (\"0\" + fecha.getDate()).slice(-2);\r\n\r\n // current month\r\n let month = (\"0\" + (fecha.getMonth() + 1)).slice(-2);\r\n\r\n // current year\r\n let year = fecha.getFullYear();\r\n\r\n // current hours\r\n let hours = fecha.getHours();\r\n\r\n // current minutes\r\n let minutes = fecha.getMinutes();\r\n\r\n // current seconds\r\n let seconds = fecha.getSeconds();\r\n console.log(seconds)\r\n\r\n // prints date & time in YYYY-MM-DD HH:MM:SS format\r\n const fecha_final = year + month + date + \" \" + hours + \":\" + minutes + \":\" + \"00\";\r\n return fecha_final\r\n }\r\n\r\n // openModalNewContact() {\r\n // console.log(\"aqui\")\r\n // this.popupNewContact = true;\r\n // }\r\n\r\n onsave(e){\r\n console.log(e);\r\n this.newSWO.get('requestedbyid').setValue(e.id);\r\n this.request = e.First + ' ' + e.Last;\r\n this.newRequestSelect.placeholder = this.request;\r\n }\r\n\r\n // SaveInfo(aceptar){\r\n // console.log(this.newSWO.value)\r\n // this.SendEmail(this.newSWO.value.resources)\r\n // }\r\n\r\n SaveInfo(aceptar){\r\n\r\n this.request = ''\r\n this.sitename = ''\r\n this.salesProject = ''\r\n this.responsible = ''\r\n this.recursos = []\r\n let recursos_select = []\r\n\r\n if(aceptar == 'Yes'){\r\n if(this.newSWO.value.callahead){this.newSWO.value.callahead = 1\r\n }else{this.newSWO.value.callahead = 0 }\r\n\r\n if(this.newSWO.value.Notify_Technician){this.newSWO.value.Notify_Technician = 1}\r\n else {this.newSWO.value.Notify_Technician = 0 }\r\n\r\n if(this.newSWO.value.serviceconfirmed){this.newSWO.value.serviceconfirmed = 1}\r\n else {this.newSWO.value.serviceconfirmed = 0 }\r\n\r\n let resourcesString = \"\"\r\n if(this.newSWO.value.resources.length != 0){\r\n recursos_select = this.newSWO.value.resources\r\n this.newSWO.value.resources.forEach((element,index) => {\r\n // resourcesString.push(element.toString())\r\n if(index == 0){\r\n resourcesString += element.toString()\r\n } else {\r\n resourcesString += \",\"+element.toString()\r\n }\r\n });\r\n\r\n this.newSWO.value.resources = resourcesString;\r\n } else {\r\n this.newSWO.value.resources = resourcesString;\r\n }\r\n\r\n this.newSWO.value.serviceid = 0\r\n\r\n const scheduledate = this.convertFecha(this.newSWO.value.scheduledate)\r\n const requestdate = this.convertFecha(this.newSWO.value.requestdate)\r\n // const serviceestimatedhours = this.convertFecha(this.newSWO.value.serviceestimatedhours)\r\n\r\n this.newSWO.value.scheduledate = scheduledate\r\n this.newSWO.value.requestdate = requestdate\r\n // this.newSWO.value.serviceestimatedhours = serviceestimatedhours\r\n\r\n let formValue;\r\n formValue = this.newSWO.value;\r\n formValue.method =\"Insert_ServiceCU\"\r\n console.log(\"🚀 ~ file: new-service-work-order.component.ts:655 ~ NewServicesOrderComponent ~ SaveInfo ~ formValue:\", formValue)\r\n this.popupSalesProject = false\r\n console.log('estoy en este punto')\r\n this.MapInformationService.SaveInfoSites({method:\"Get_ClientSettingsByName\",name:\"DefaultServiceStatus\"})\r\n .subscribe(information=>{\r\n \r\n formValue.statusid= Number(information[0].VALUE)\r\n\r\n this.MapInformationService.InsertSWO(formValue)\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n if(this.newSWO.value.Notify_Technician == 1){\r\n let SWO_id = resp[0].ResultID\r\n const subject = \"Service #\"+SWO_id+\" \" + this.siteName\r\n let lista_email = []\r\n let recursos_all = this.loadInfo.resources\r\n recursos_select.forEach(e_1 => {\r\n recursos_all.forEach(e_2 => {\r\n if(e_1 === e_2.ID){\r\n lista_email.push(e_2.EMAIL)\r\n }\r\n })\r\n })\r\n console.log(lista_email)\r\n let lista_email_final = lista_email.toString()\r\n console.log(lista_email_final)\r\n this.MapInformationService.NotifyTechnician(SWO_id, lista_email_final, subject)\r\n .subscribe(res=>{\r\n console.log('alooooo')\r\n console.log(res)\r\n this.toast.success(\"An Email has been sent to the Technician.\")\r\n })\r\n }\r\n console.log(this.nuevaInfo)\r\n if(this.nuevaInfo == 'newInfo'){\r\n console.log('aqui es el newInfo')\r\n console.log(resp)\r\n this.toast.success(this.translate.instant('msgSWOCrSucc'));\r\n this.newSWO.reset()\r\n this.idNewSWO = resp.ResultID\r\n this.reloadService.emit()\r\n this.GetAllInfo();\r\n this.newSWO.get('scheduledate').setValue(new Date);\r\n this.newSWO.get('requestdate').setValue(new Date);\r\n this.ValueDate = new Date;\r\n this.ValueDatesscheduledate = new Date;\r\n\r\n setTimeout(() => {\r\n this.ServiceName = undefined\r\n this.newRequestSelect.instance.reset()\r\n this.newRequestSelect.placeholder = 'Select...'\r\n this.newProjectSelect.instance.reset()\r\n this.newProjectSelect.placeholder = 'Select...'\r\n this.newSiteSelect.instance.reset()\r\n this.newSiteSelect.placeholder = 'Select...'\r\n }, 1000);\r\n // this.datagrid.reloadComponent();\r\n\r\n // this.ReloadSites();\r\n } else if (this.nuevaInfo == ''){\r\n console.log(resp)\r\n this.toast.success(this.translate.instant('msgSWOCrSucc'));\r\n this.newSWO.reset()\r\n this.cloeModal1.emit(true);\r\n this.reloadService.emit()\r\n this.idNewSWO = resp.ResultID\r\n this.GetAllInfo();\r\n this.newSWO.get('scheduledate').setValue(new Date);\r\n this.newSWO.get('requestdate').setValue(new Date);\r\n this.ValueDate = new Date;\r\n this.ValueDatesscheduledate = new Date;\r\n setTimeout(() => {\r\n this.ServiceName = undefined\r\n this.newRequestSelect.instance.reset()\r\n this.newRequestSelect.placeholder = 'Select...'\r\n this.newProjectSelect.instance.reset()\r\n this.newProjectSelect.placeholder = 'Select...'\r\n this.newSiteSelect.instance.reset()\r\n this.newSiteSelect.placeholder = 'Select...'\r\n }, 1000);\r\n // this.datagrid.reloadComponent();\r\n // this.ReloadSites();\r\n } else if(this.nuevaInfo == 'edit'){\r\n console.log(resp)\r\n this.idNewSWO = resp[0].ResultID\r\n this.newSWO.value.serviceid = resp[0].ResultID\r\n localStorage.removeItem('newSwoEdit')\r\n localStorage.setItem('newSwoEdit',resp[0].ResultID)\r\n this.toast.success(this.translate.instant('msgSWOCrSucc'));\r\n this.newSWO.reset()\r\n this.cloeModal1.emit(true);\r\n this.reloadService.emit()\r\n setTimeout(() => {\r\n this.ServiceName = undefined\r\n this.newRequestSelect.instance.reset()\r\n this.newRequestSelect.placeholder = 'Select...'\r\n this.newProjectSelect.instance.reset()\r\n this.newProjectSelect.placeholder = 'Select...'\r\n this.newSiteSelect.instance.reset()\r\n this.newSiteSelect.placeholder = 'Select...'\r\n }, 1000);\r\n\r\n let navigationExtras: NavigationExtras = {\r\n state: {\r\n id_user:\"Hola\"\r\n }\r\n };\r\n console.log(resp)\r\n // this.router.navigate(['/swo/editSWON'], navigationExtras);\r\n // this.router.navigate(['/swo/editSWON', { queryParams: { numID: resp[0].ResultID } }])\r\n this.router.navigateByUrl('/swo/editSWON?numID=' + resp[0].ResultID);\r\n\r\n // this.GetAllInfo();\r\n // this.newSWO.get('scheduledate').setValue(new Date);\r\n // this.newSWO.get('requestdate').setValue(new Date);\r\n // this.ValueDate = new Date;\r\n // this.ValueDatesscheduledate = new Date;\r\n }\r\n this.newSiteSelect.placeholder = '';\r\n if(this.VieneDe != \"Service Contract\"){\r\n this.newProjectSelect.placeholder = '';\r\n }\r\n this.newRequestSelect.placeholder = '';\r\n }, error=> {\r\n console.log(error)\r\n })\r\n })\r\n } else if('No'){\r\n\r\n if(this.popupSalesProject){\r\n this.popupSalesProject = false\r\n return\r\n }\r\n\r\n if(this.newSWO.value.callahead){this.newSWO.value.callahead = 1\r\n }else{this.newSWO.value.callahead = 0 }\r\n\r\n if(this.newSWO.value.Notify_Technician){this.newSWO.value.Notify_Technician = 1}\r\n else {this.newSWO.value.Notify_Technician = 0 }\r\n\r\n if(this.newSWO.value.serviceconfirmed){this.newSWO.value.serviceconfirmed = 1}\r\n else {this.newSWO.value.serviceconfirmed = 0 }\r\n\r\n let resourcesString = \"\"\r\n if(this.newSWO.value.resources.length != 0){\r\n recursos_select = this.newSWO.value.resources\r\n this.newSWO.value.resources.forEach((element,index) => {\r\n // resourcesString.push(element.toString())\r\n if(index == 0){\r\n resourcesString += element.toString()\r\n } else {\r\n resourcesString += \",\"+element.toString()\r\n }\r\n });\r\n\r\n this.newSWO.value.resources = resourcesString;\r\n } else {\r\n this.newSWO.value.resources = resourcesString;\r\n }\r\n\r\n this.newSWO.value.serviceid = 0\r\n\r\n const scheduledate = this.convertFecha(this.newSWO.value.scheduledate)\r\n const requestdate = this.convertFecha(this.newSWO.value.requestdate)\r\n // const serviceestimatedhours = this.convertFecha(this.newSWO.value.serviceestimatedhours)\r\n\r\n this.newSWO.value.scheduledate = scheduledate\r\n this.newSWO.value.requestdate = requestdate\r\n // this.newSWO.value.serviceestimatedhours = serviceestimatedhours\r\n\r\n let formValue;\r\n formValue = this.newSWO.value;\r\n formValue.method =\"Insert_ServiceCU\"\r\n\r\n this.MapInformationService.SaveInfoSites({method:\"Get_ClientSettingsByName\",name:\"DefaultServiceStatus\"})\r\n .subscribe(information=>{\r\n console.log(information)\r\n formValue.statusid= Number(information[0].VALUE)\r\n this.popupSalesProject = false;\r\n\r\n console.log('Guardando ', formValue);\r\n\r\n this.MapInformationService.InsertSWO(formValue)\r\n .subscribe(resp=>{\r\n console.log(this.loadInfo.resources)\r\n console.log(recursos_select)\r\n if(this.newSWO.value.Notify_Technician == 1){\r\n let SWO_id = resp[0].ResultID\r\n const subject = \"Service #\"+SWO_id+\" \" + this.siteName\r\n let lista_email = []\r\n let recursos_all = this.loadInfo.resources\r\n recursos_select.forEach(e_1 => {\r\n recursos_all.forEach(e_2 => {\r\n if(e_1 === e_2.ID){\r\n lista_email.push(e_2.EMAIL)\r\n }\r\n })\r\n })\r\n console.log(lista_email)\r\n let lista_email_final = lista_email.toString()\r\n console.log(lista_email_final)\r\n this.MapInformationService.NotifyTechnician(SWO_id, lista_email_final, subject)\r\n .subscribe(res=>{\r\n console.log('alooooo')\r\n console.log(res)\r\n this.toast.success(\"An Email has been sent to the Technician.\")\r\n })\r\n }\r\n if(this.nuevaInfo == 'newInfo'){\r\n console.log(resp)\r\n this.toast.success(this.translate.instant('msgSWOCrSucc'));\r\n this.newSWO.reset()\r\n this.idNewSWO = resp.ResultID\r\n this.reloadService.emit()\r\n this.GetAllInfo();\r\n this.newSWO.get('scheduledate').setValue(new Date);\r\n this.newSWO.get('requestdate').setValue(new Date);\r\n this.ValueDate = new Date;\r\n this.ValueDatesscheduledate = new Date;\r\n setTimeout(() => {\r\n this.ServiceName = undefined\r\n this.newRequestSelect.instance.reset()\r\n this.newRequestSelect.placeholder = 'Select...'\r\n this.newProjectSelect.instance.reset()\r\n this.newProjectSelect.placeholder = 'Select...'\r\n this.newSiteSelect.instance.reset()\r\n this.newSiteSelect.placeholder = 'Select...'\r\n }, 1000);\r\n // this.datagrid.reloadComponent();\r\n setTimeout(() => {\r\n this.ServiceName = undefined\r\n this.newRequestSelect.instance.reset()\r\n this.newRequestSelect.placeholder = 'Select...'\r\n this.newProjectSelect.instance.reset()\r\n this.newProjectSelect.placeholder = 'Select...'\r\n this.newSiteSelect.instance.reset()\r\n this.newSiteSelect.placeholder = 'Select...'\r\n }, 1000);\r\n // this.ReloadSites();\r\n } else if (this.nuevaInfo == ''){\r\n console.log(resp)\r\n this.toast.success(this.translate.instant('msgSWOCrSucc'));\r\n this.newSWO.reset()\r\n this.cloeModal1.emit(true);\r\n this.reloadService.emit()\r\n this.idNewSWO = resp.ResultID\r\n this.GetAllInfo();\r\n this.newSWO.get('scheduledate').setValue(new Date);\r\n this.newSWO.get('requestdate').setValue(new Date);\r\n this.ValueDate = new Date;\r\n this.ValueDatesscheduledate = new Date;\r\n setTimeout(() => {\r\n this.ServiceName = undefined\r\n this.newRequestSelect.instance.reset()\r\n this.newRequestSelect.placeholder = 'Select...'\r\n this.newProjectSelect.instance.reset()\r\n this.newProjectSelect.placeholder = 'Select...'\r\n this.newSiteSelect.instance.reset()\r\n this.newSiteSelect.placeholder = 'Select...'\r\n }, 1000);\r\n // this.datagrid.reloadComponent();\r\n // this.ReloadSites();\r\n } else if(this.nuevaInfo == 'edit'){\r\n console.log(resp)\r\n this.idNewSWO = resp[0].ResultID\r\n this.newSWO.value.serviceid = resp[0].ResultID\r\n localStorage.removeItem('newSwoEdit')\r\n localStorage.setItem('newSwoEdit',resp[0].ResultID)\r\n this.toast.success(this.translate.instant('msgSWOCrSucc'));\r\n this.newSWO.reset()\r\n this.cloeModal1.emit(true);\r\n this.reloadService.emit()\r\n setTimeout(() => {\r\n this.ServiceName = undefined\r\n this.newRequestSelect.instance.reset()\r\n this.newRequestSelect.placeholder = 'Select...'\r\n this.newProjectSelect.instance.reset()\r\n this.newProjectSelect.placeholder = 'Select...'\r\n this.newSiteSelect.instance.reset()\r\n this.newSiteSelect.placeholder = 'Select...'\r\n }, 1000);\r\n\r\n let navigationExtras: NavigationExtras = {\r\n state: {\r\n id_user:\"Hola\"\r\n }\r\n };\r\n // this.router.navigate(['/swo/editSWON'], navigationExtras);\r\n this.router.navigateByUrl('/swo/editSWON?numID=' + resp[0].ResultID);\r\n // this.router.navigate(['/swo/editSWON', { queryParams: { numID: resp[0].ResultID } }])\r\n\r\n // this.GetAllInfo();\r\n // this.newSWO.get('scheduledate').setValue(new Date);\r\n // this.newSWO.get('requestdate').setValue(new Date);\r\n // this.ValueDate = new Date;\r\n // this.ValueDatesscheduledate = new Date;\r\n }\r\n this.newSiteSelect.placeholder = '';\r\n if(this.VieneDe != \"Service Contract\"){\r\n this.newProjectSelect.placeholder = '';\r\n }\r\n this.newRequestSelect.placeholder = '';\r\n }, error=> {\r\n console.log(error)\r\n })\r\n })\r\n }\r\n }\r\n\r\n resultNewEmployee($event){\r\n console.log($event)\r\n this.MapInformationService.GetAllInfo('Get_EmployeeListAll')\r\n .subscribe(responsible=>{\r\n console.log(responsible)\r\n responsible.forEach(element => {\r\n if($event.ResultiID == element.ID){\r\n console.log(element)\r\n this.newSWO.get('servicedoneby').setValue(element.ID);\r\n this.responsible = element.CONTACTNAME\r\n this.newResponsibleSelect.placeholder = element.CONTACTNAME\r\n }\r\n });\r\n })\r\n }\r\n\r\n resultNewEmployeeResources(item){\r\n this.loadInfo.resources=[]\r\n this.MapInformationService.GetAllInfo('Get_EmployeeListAll')\r\n .subscribe(resources=>{\r\n resources.forEach(element => {\r\n if(element.FIRSTNAME != \"\"){\r\n this.loadInfo.resources.push(element)\r\n }\r\n });\r\n console.log(item)\r\n this.recursos.push(item.ResultiID)\r\n })\r\n }\r\n\r\n SetSalesProject(event){\r\n console.log(event)\r\n this.newSWO.get(\"projectid\").setValue(event.projectid)\r\n this.newProjectSelect.placeholder = event.name\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NewServicesOrderComponent } from './new-service-work-order.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { GooglePlaceModule } from 'ngx-google-places-autocomplete';\r\nimport { DxToolbarModule, DxFilterBuilderModule, DxAccordionModule,DxFileUploaderModule,DxDropDownButtonModule, DxButtonGroupModule, DxAutocompleteModule, DxContextMenuModule, DxDropDownBoxModule, DxGanttModule, DxPopupModule, DxRadioGroupModule, DxSchedulerModule, DxScrollViewModule, DxSelectBoxModule, DxSliderModule, DxTabPanelModule, DxTextBoxModule, DxTreeViewModule, DxDataGridModule, DxTagBoxModule, DxDateBoxModule, DxCheckBoxModule, DxButtonModule, DxPopoverModule, DxTextAreaModule } from 'devextreme-angular';\r\n\r\nimport { NewContactModule } from 'src/app/shared/new-contact/new-contact.module';\r\nimport { NewEmployeeModule } from 'src/app/shared/new-employee/new-employee.module';\r\nimport { NewServiceSiteModule } from 'src/app/pages/sales-management/employee-activities/forms/new-service-site/new-service-site.module';\r\nimport { SharedDatagridModule } from 'src/app/shared/shared-datagrid/shared-datagrid.module';\r\nimport { CreateUpdateSalesProjectModule } from 'src/app/pages/sales-management/sales-project/create-update-sales-project/create-update-sales-project.module';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NewServicesOrderComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxTextBoxModule,\r\n DxSelectBoxModule,\r\n DxButtonModule,\r\n DxAutocompleteModule,\r\n GooglePlaceModule,\r\n DxCheckBoxModule,\r\n DxAccordionModule,\r\n DxFilterBuilderModule,\r\n DxFileUploaderModule,\r\n DxDropDownButtonModule,\r\n DxButtonGroupModule,\r\n DxAutocompleteModule,\r\n DxContextMenuModule,\r\n DxDropDownBoxModule,\r\n DxGanttModule,\r\n DxPopupModule,\r\n DxRadioGroupModule,\r\n DxSchedulerModule,\r\n DxScrollViewModule,\r\n DxSelectBoxModule,\r\n DxSliderModule,\r\n DxTabPanelModule,\r\n DxTextBoxModule,\r\n DxTreeViewModule,\r\n DxDataGridModule,\r\n DxTagBoxModule,\r\n DxDateBoxModule,\r\n DxCheckBoxModule,\r\n DxButtonModule,\r\n NewContactModule,\r\n NewEmployeeModule,\r\n NewServiceSiteModule,\r\n DxToolbarModule,\r\n DxPopoverModule,\r\n DxTextAreaModule,\r\n CreateUpdateSalesProjectModule,\r\n // SharedDatagridModule\r\n ],\r\n exports: [NewServicesOrderComponent]\r\n})\r\nexport class NewServiceWorkOrderModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { ApplicationsComponent } from './applications.component';\r\n\r\nconst routes: Routes = [\r\n { path: '', component: ApplicationsComponent }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class ApplicationsRoutingModule { }\r\n","export default \".conta {\\n min-height: 100%;\\n position: relative;\\n}\\n\\n.wrapper {\\n padding: 10px;\\n padding-bottom: 2.5rem;\\n}\\n\\n.footer {\\n position: absolute;\\n bottom: 0;\\n width: 100%;\\n background: #373737 !important;\\n left: 0;\\n right: 0;\\n}\\n\\n.main-container {\\n padding-bottom: 0rem;\\n}\\n\\n.badge-cart {\\n display: inline-block;\\n font-size: 90%;\\n font-weight: 700;\\n line-height: 1;\\n text-align: center;\\n white-space: nowrap;\\n vertical-align: baseline;\\n background-color: #085430;\\n color: white;\\n}\\n\\n.bgd-gray {\\n background-color: #373737 !important;\\n}\\n\\n::ng-deep #ac {\\n margin: 0;\\n padding-left: 30px;\\n}\\n\\n::ng-deep #ac_container {\\n position: relative;\\n padding: 0;\\n margin: 0;\\n background: #ddd;\\n}\\n\\n::ng-deep #ac_img {\\n position: absolute;\\n top: 7px;\\n left: 20px;\\n width: 18px;\\n height: 18px;\\n font-size: 1rem;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvc2hvcC9hcHBsaWNhdGlvbnMvRTpcXERldlxcQ1VCRVRFTVBcXG5ld2N1YmUvc3JjXFxhcHBcXHBhZ2VzXFxzaG9wXFxhcHBsaWNhdGlvbnNcXGFwcGxpY2F0aW9ucy5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvcGFnZXMvc2hvcC9hcHBsaWNhdGlvbnMvYXBwbGljYXRpb25zLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0UsZ0JBQUE7RUFDQSxrQkFBQTtBQ0FGOztBREdBO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0FDQUY7O0FES0E7RUFFRyxrQkFBQTtFQUNBLFNBQUE7RUFDQSxXQUFBO0VBRUEsOEJBQUE7RUFDQSxPQUFBO0VBQ0EsUUFBQTtBQ0pIOztBRFNBO0VBQ0csb0JBQUE7QUNOSDs7QURVQTtFQUNFLHFCQUFBO0VBRUEsY0FBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsbUJBQUE7RUFDQSx3QkFBQTtFQUtBLHlCQUFBO0VBQ0EsWUFBQTtBQ1pGOztBRGVBO0VBQ0Usb0NBQUE7QUNaRjs7QURnQkE7RUFDSSxTQUFBO0VBQ0Esa0JBQUE7QUNiSjs7QURnQkE7RUFDSSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxTQUFBO0VBQ0EsZ0JBQUE7QUNiSjs7QURnQkE7RUFDSSxrQkFBQTtFQUNBLFFBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0FDYkoiLCJmaWxlIjoic3JjL2FwcC9wYWdlcy9zaG9wL2FwcGxpY2F0aW9ucy9hcHBsaWNhdGlvbnMuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuLmNvbnRhIHtcclxuICBtaW4taGVpZ2h0OjEwMCU7XHJcbiAgcG9zaXRpb246cmVsYXRpdmU7XHJcbn1cclxuXHJcbi53cmFwcGVyIHtcclxuICBwYWRkaW5nOjEwcHg7XHJcbiAgcGFkZGluZy1ib3R0b206Mi41cmVtO1xyXG4gIC8vIGhlaWdodDogMTAwJVxyXG59XHJcblxyXG5cclxuLmZvb3RlciB7XHJcbiAgIC8vIHBhZGRpbmctdG9wOiAxcmVtO1xyXG4gICBwb3NpdGlvbjphYnNvbHV0ZTtcclxuICAgYm90dG9tOjA7XHJcbiAgIHdpZHRoOjEwMCU7XHJcbiAgIC8vIGhlaWdodDo2MHB4O1xyXG4gICBiYWNrZ3JvdW5kOiAjMzczNzM3ICFpbXBvcnRhbnQ7XHJcbiAgIGxlZnQ6IDA7XHJcbiAgIHJpZ2h0OjBcclxufVxyXG5cclxuXHJcblxyXG4ubWFpbi1jb250YWluZXIge1xyXG4gICBwYWRkaW5nLWJvdHRvbTowcmVtO1xyXG59XHJcblxyXG5cclxuLmJhZGdlLWNhcnR7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIC8vIHBhZGRpbmc6IC41MGVtIC41MGVtO1xyXG4gIGZvbnQtc2l6ZTogOTAlO1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG4gIC8vIHdpZHRoOiAycmVtO1xyXG4gIC8vIGhlaWdodDogMnJlbTtcclxuICAvLyBsaW5lLWhlaWdodDogaW5oZXJpdDtcclxuICAvLyBtYXJnaW4tdG9wOiAtNXB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwODU0MzA7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4uYmdkLWdyYXl7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjojMzczNzM3ICFpbXBvcnRhbnRcclxufVxyXG5cclxuXHJcbjo6bmctZGVlcCAjYWMge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG59XHJcblxyXG46Om5nLWRlZXAgI2FjX2NvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYmFja2dyb3VuZDogI2RkZDtcclxufVxyXG5cclxuOjpuZy1kZWVwICNhY19pbWcge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA3cHg7XHJcbiAgICBsZWZ0OiAyMHB4O1xyXG4gICAgd2lkdGg6IDE4cHg7XHJcbiAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbn1cclxuIiwiLmNvbnRhIHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ud3JhcHBlciB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyLjVyZW07XG59XG5cbi5mb290ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMzNzM3MzcgIWltcG9ydGFudDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5tYWluLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctYm90dG9tOiAwcmVtO1xufVxuXG4uYmFkZ2UtY2FydCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiA5MCU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA4NTQzMDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uYmdkLWdyYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzczNzM3ICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAjYWMge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbn1cblxuOjpuZy1kZWVwICNhY19jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZDogI2RkZDtcbn1cblxuOjpuZy1kZWVwICNhY19pbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogN3B4O1xuICBsZWZ0OiAyMHB4O1xuICB3aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxOHB4O1xuICBmb250LXNpemU6IDFyZW07XG59Il19 */\"","import { MapInformationService } from 'src/app/services/map-information.service';\r\n// import { NavbarSidebarComponent } from 'src/app/shared/navbar-sidebar/navbar-sidebar.component';\r\nimport { ActivatedRoute, NavigationExtras, Router } from '@angular/router';\r\nimport { Component, OnInit } from '@angular/core';\r\n@Component({\r\n selector: 'app-applications',\r\n templateUrl: './applications.component.html',\r\n styleUrls: ['./applications.component.scss']\r\n})\r\nexport class ApplicationsComponent implements OnInit {\r\n menuItems = [\r\n // {\r\n // text: 'HOME'\r\n // },\r\n // {\r\n // text: 'PRODUCTS',\r\n\r\n // }, \r\n {\r\n text: 'APPLICATIONS'\r\n }];\r\n\r\n galleryDataSource = [\r\n { path: \"assets/mac.jpg\" },\r\n { path: \"assets/person-music1100x700.jpg\" }\r\n\r\n ];\r\n\r\n tileViewData = [\r\n { name: \"Product Name 1\" },\r\n { name: \"Product Name 2\"},\r\n { name: \"Product Name 3\" },\r\n { name: \"Product Name 4\"}\r\n\r\n // ...\r\n ];\r\n\r\n dataSource:any[]=[]\r\n\r\n openFullScreen:boolean = true\r\n SystemIDSelected:any\r\n estimateIDSelected:any\r\n estimatenamestrSelected:any\r\n projectIDSelected:any\r\n\r\n screen(width) {\r\n return ( width < 700 ) ? 'sm' : 'lg';\r\n }\r\n constructor(\r\n private MapInformationService:MapInformationService,\r\n private router: Router, \r\n\r\n // public NavbarSidebarComponent:NavbarSidebarComponent\r\n \r\n ) { \r\n\r\n // this.NavbarSidebarComponent.ApplicationsComponentFunctions = this\r\n }\r\n\r\n ngOnInit() {\r\n this.getApplications()\r\n\r\n this.estimateIDSelected = localStorage.getItem(\"estimateIDSelected\")\r\n this.estimatenamestrSelected = localStorage.getItem(\"estimatenamestrSelected\")\r\n this.projectIDSelected = localStorage.getItem(\"projectIDSelected\")\r\n }\r\n\r\n\r\n getApplications(){\r\n console.log(\"aqui\")\r\n this.MapInformationService.SaveInfoSites({method:\"Get_EcomMainCategoriesAp_CR\"})\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n let dataTemporal = []\r\n let contador = 0\r\n resp.forEach(element => {\r\n if (element.CATIMAGE != \"MCNoImage.JPG\" && element.CATIMAGE != undefined){\r\n this.MapInformationService.DowloadDocumentlowQuality(element.CATIMAGE).subscribe(result => {\r\n \r\n let tipo = \"\"\r\n let data = \"\"\r\n \r\n if (result.filestring != undefined){\r\n data = result.filestring.substring(0, 5);\r\n } else {\r\n data = \"\"\r\n }\r\n \r\n console.log(data.toUpperCase())\r\n \r\n switch(data.toUpperCase()){\r\n case \"IVBOR\":tipo = \"png\";\r\n break\r\n case \"/9J/4\":tipo = \"jpg\";\r\n break\r\n case \"JVBER\":tipo = \"pdf\";\r\n break\r\n case \"UESDB\":\r\n var data2 = result.filestring.substring(0, 19);\r\n switch(data.toUpperCase()){\r\n case \"UEsDBBQABgAIAAAAIQB\":tipo = \"xlsx\";\r\n break\r\n default:\r\n var data3 = result.filestring.substring(0, 18);\r\n switch(data.toUpperCase()){\r\n case \"UEsDBBQABgAIAAAAIQ\":tipo = \"docx\";\r\n break\r\n default:tipo = \"zip\";\r\n }\r\n }\r\n break\r\n case \"UMFYI\":tipo = \"rar\";\r\n break\r\n case \"U1PKC\":tipo = \"txt\";\r\n break\r\n }\r\n\r\n element.base64 = result.filestring == \"\" ? \"Not_image\" : result.filestring\r\n element.tipo = result.filestring == \"\" ? \"png\" : tipo\r\n // element.base64 = \"Not_image\"\r\n // element.tipo = \"png\"\r\n dataTemporal.push(element)\r\n contador++\r\n if (contador == resp.length) {\r\n this.dataSource = dataTemporal.sort((a, b) => {\r\n const valueA = a.SystemType.toLowerCase();\r\n const valueB = b.SystemType.toLowerCase();\r\n \r\n if (valueA < valueB) {\r\n return -1;\r\n } else if (valueA > valueB) {\r\n return 1;\r\n } else {\r\n return 0;\r\n }\r\n });\r\n console.log(this.dataSource)\r\n }\r\n\r\n });\r\n } else {\r\n contador++\r\n element.base64 = \"Not_image\"\r\n element.tipo = \"png\"\r\n dataTemporal.push(element)\r\n if (contador == resp.length) {\r\n this.dataSource = dataTemporal.sort((a, b) => {\r\n const valueA = a.SystemType.toLowerCase();\r\n const valueB = b.SystemType.toLowerCase();\r\n \r\n if (valueA < valueB) {\r\n return -1;\r\n } else if (valueA > valueB) {\r\n return 1;\r\n } else {\r\n return 0;\r\n }\r\n });\r\n console.log(this.dataSource)\r\n }\r\n }\r\n })\r\n })\r\n }\r\n\r\n itemClick(e) {\r\n if (e.itemData.text == 'HOME'){\r\n this.router.navigateByUrl('/productsCart');\r\n }\r\n if (e.itemData.text == 'PRODUCTS'){\r\n // this.router.navigateByUrl('/productsCategory');\r\n this.router.navigateByUrl('/products');\r\n }\r\n if (e.itemData.text == 'APPLICATIONS'){\r\n this.router.navigateByUrl('/applications');\r\n }\r\n console.log(e);\r\n }\r\n\r\n goToProduct(info){\r\n console.log(info)\r\n this.router.navigate(['/ApplicationType'], { queryParams: { id: info.ID } });\r\n }\r\n\r\n SelectCategory(item){\r\n console.log(item)\r\n if(item.NumberOfChild > 0){\r\n this.router.navigate(['/ApplicationType'], { queryParams: { parentID: item.ID, nameApplication: item.SystemType } });\r\n } else {\r\n if(item.NumberOfSystems > 0){\r\n this.router.navigate(['/ListSystems'], { queryParams: { id: item.ID, nameChild: item.SystemType, parentID: item.ID, nameParent: item.SystemType} });\r\n } else {\r\n console.log('error')\r\n }\r\n }\r\n }\r\n\r\n goBackEstimate(){\r\n console.log(\"back\")\r\n\r\n this.router.navigate(['/Estimates/editEstimate'], { queryParams: { numESTIMATEID: this.estimateIDSelected, numProjectID:this.projectIDSelected, strPROJECT_NAME:this.estimatenamestrSelected} });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ApplicationsRoutingModule } from './applications-routing.module';\r\nimport { ApplicationsComponent } from './applications.component';\r\n\r\nimport { DxBoxModule, DxButtonModule, DxResponsiveBoxModule, DxListModule, DxTileViewModule, DxAutocompleteModule, DxMenuModule, DxTemplateModule, DxGalleryModule, DxScrollViewModule, DxPopupModule } from \"devextreme-angular\";\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\n\r\n@NgModule({\r\n declarations: [\r\n ApplicationsComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n ApplicationsRoutingModule,\r\n MdbGlobalModule,\r\n DxScrollViewModule,\r\n DxAutocompleteModule,\r\n DxMenuModule,\r\n DxTemplateModule,\r\n DxGalleryModule,\r\n DxTileViewModule,\r\n DxListModule,\r\n DxResponsiveBoxModule,\r\n DxButtonModule,\r\n DxBoxModule,\r\n DxTileViewModule,\r\n DxPopupModule,\r\n ], \r\n exports:[ApplicationsComponent]\r\n})\r\nexport class ApplicationsModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { SimpleViewCommissioningComponent } from './simple-view-commissioning.component';\r\n\r\nconst routes: Routes = [\r\n { path: '', component: SimpleViewCommissioningComponent }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class SimpleViewCommissioningRoutingModule { }\r\n","export default \".container-bg {\\n border-radius: 0.125rem;\\n color: #6c757d;\\n background-color: white;\\n box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.1);\\n}\\n\\n.container-favorite li {\\n border-radius: 0.125rem;\\n color: #6c757d;\\n background-color: white;\\n box-shadow: 0px 8px 15px rgba(0, 0, 0, 0.1);\\n height: 100px;\\n padding-top: 1.5rem;\\n padding-bottom: 1.5rem;\\n font-size: 0.8rem;\\n}\\n\\n.container-favorite li i {\\n font-size: 1.5rem;\\n}\\n\\n.display-container {\\n display: grid;\\n grid-template-columns: repeat(3, 1fr);\\n grid-gap: 12px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcGFnZXMvc2ltcGxlVmlldy9zaW1wbGUtdmlldy1jb21taXNzaW9uaW5nL0U6XFxEZXZcXENVQkVURU1QXFxuZXdjdWJlL3NyY1xcYXBwXFxwYWdlc1xcc2ltcGxlVmlld1xcc2ltcGxlLXZpZXctY29tbWlzc2lvbmluZ1xcc2ltcGxlLXZpZXctY29tbWlzc2lvbmluZy5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvcGFnZXMvc2ltcGxlVmlldy9zaW1wbGUtdmlldy1jb21taXNzaW9uaW5nL3NpbXBsZS12aWV3LWNvbW1pc3Npb25pbmcuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSx1QkFBQTtFQUNBLGNBQUE7RUFDQSx1QkFBQTtFQUNBLDJDQUFBO0FDQ0o7O0FER0E7RUFHSSx1QkFBQTtFQUNBLGNBQUE7RUFDQSx1QkFBQTtFQUNBLDJDQUFBO0VBQ0EsYUFBQTtFQUVBLG1CQUFBO0VBR0Esc0JBQUE7RUFDQSxpQkFBQTtBQ0xKOztBRFNFO0VBQ0UsaUJBQUE7QUNOSjs7QURvQkU7RUFDRSxhQUFBO0VBQ0EscUNBQUE7RUFDQSxjQUFBO0FDakJKIiwiZmlsZSI6InNyYy9hcHAvcGFnZXMvc2ltcGxlVmlldy9zaW1wbGUtdmlldy1jb21taXNzaW9uaW5nL3NpbXBsZS12aWV3LWNvbW1pc3Npb25pbmcuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuY29udGFpbmVyLWJne1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC4xMjVyZW07XHJcbiAgICBjb2xvcjogIzZjNzU3ZDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDhweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuXHJcbi5jb250YWluZXItZmF2b3JpdGUgbGl7XHJcbiAgICAvLyBib3JkZXI6IDFweCBzb2xpZCBncmF5O1xyXG4gICAgLy8gcGFkZGluZzogMC41cmVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogLjEyNXJlbTtcclxuICAgIGNvbG9yOiM2Yzc1N2Q7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDhweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAvLyB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XHJcbiAgICAvLyBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcclxuICAgIC8vIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XHJcbiAgICBmb250LXNpemU6IDAuOHJlbTtcclxuICBcclxuICB9XHJcbiAgXHJcbiAgLmNvbnRhaW5lci1mYXZvcml0ZSBsaSBpe1xyXG4gICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgfVxyXG4gIFxyXG4gIC8vIC5jb250YWluZXItZmF2b3JpdGUgbGkgYXtcclxuICAvLyAgIHBhZGRpbmc6IDFyZW07XHJcbiAgLy8gfVxyXG4gIC8vIC5jb250YWluZXItZmF2b3JpdGUgbGk6aG92ZXJ7XHJcbiAgLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xyXG4gIC8vICAgY29sb3I6IHdoaXRlO1xyXG4gIC8vICAgYm94LXNoYWRvdzogMCA1cHggMTFweCAwIHJnYigwIDAgMCAvIDE4JSksIDAgNHB4IDE1cHggMCByZ2IoMCAwIDAgLyAxNSUpO1xyXG4gIC8vICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgLy8gICBib3JkZXItcmFkaXVzOiAuMTI1cmVtO1xyXG4gIC8vIH1cclxuICBcclxuICAuZGlzcGxheS1jb250YWluZXJ7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuICAgIGdyaWQtZ2FwOiAxMnB4O1xyXG4gIFxyXG4gIH0iLCIuY29udGFpbmVyLWJnIHtcbiAgYm9yZGVyLXJhZGl1czogMC4xMjVyZW07XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMHB4IDhweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLmNvbnRhaW5lci1mYXZvcml0ZSBsaSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJveC1zaGFkb3c6IDBweCA4cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGhlaWdodDogMTAwcHg7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xufVxuXG4uY29udGFpbmVyLWZhdm9yaXRlIGxpIGkge1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuLmRpc3BsYXktY29udGFpbmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgZ3JpZC1nYXA6IDEycHg7XG59Il19 */\"","import { MapInformationService } from '../../../services/map-information.service'\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { NavbarSidebarComponent } from 'src/app/shared/navbar-sidebar/navbar-sidebar.component';\r\n\r\n\r\n@Component({\r\n selector: 'app-simple-view-commissioning',\r\n templateUrl: './simple-view-commissioning.component.html',\r\n styleUrls: ['./simple-view-commissioning.component.scss']\r\n})\r\nexport class SimpleViewCommissioningComponent implements OnInit {\r\n\r\n @ViewChild('componentNavBar', { static: false }) componentNavBar: NavbarSidebarComponent;\r\n\r\n helpCardsVisible: boolean = false;\r\n startHereCardsVisible: boolean = false;\r\n salesCardsVisible: boolean = false;\r\n otherCardsVisible: boolean = false;\r\n inventoryCardsVisible: boolean = false;\r\n userCardsVisible: boolean = false;\r\n\r\n menu:any[]=[]\r\n\r\n datacards:any[]=[]\r\n\r\n showMenuNavbar:boolean = false\r\n public moduloName:any=\"\"\r\n\r\n currentUrl: string;\r\n\r\n\r\n constructor(\r\n private MapInformationService:MapInformationService,\r\n private activatedRoute: ActivatedRoute,\r\n public userService: UserService,\r\n private router: Router,\r\n ) { \r\n\r\n \r\n // this.getMenu()\r\n this.moduloName = activatedRoute.snapshot.queryParamMap.get(\"moduleName\");\r\n this.ngOnInit()\r\n }\r\n \r\n showCardHelp:boolean=false\r\n ngOnInit() {\r\n this.router.events.subscribe(event => {\r\n if (event instanceof NavigationEnd) {\r\n // this.currentUrl = event.url;\r\n const ruta = (event).url.split(\"/\").slice(-1)[0];\r\n const cards = ruta.split(\"=\")\r\n if (cards[1] != undefined){\r\n this.moduloName = cards[1]\r\n if (cards[1] == \"Help\"){\r\n this.showCardHelp = true\r\n } else {\r\n this.showCardHelp = false\r\n this.getCards()\r\n }\r\n }\r\n }\r\n })\r\n }\r\n\r\n public getCards(){\r\n const dataMenu = (JSON.parse(localStorage.getItem('userMenu')).userMenuNodes)\r\n this.moduloName = decodeURIComponent(this.moduloName)\r\n\r\n this.datacards = dataMenu.filter(x=>x.moduleName == this.moduloName)[0].userModules\r\n }\r\n\r\n showLinksOrURL(data){\r\n this.helpCardsVisible = false;\r\n this.startHereCardsVisible = false;\r\n if (data.cubeLink == \"NULL\"){\r\n this.datacards = data.userModules\r\n } else {\r\n this.router.navigateByUrl(data.cubeLink);\r\n }\r\n }\r\n\r\n showRoute(link){\r\n // this.componentNavBar.isSideBarVisible = false;\r\n // this.componentNavBar.dontShow = true\r\n\r\n this.router.navigateByUrl(link);\r\n }\r\n\r\n\r\n GoToZD() {\r\n this.userService.getZDUserToken().subscribe(result => {\r\n window.open(\"https://cube-usa-edge.zendesk.com/access/jwt?jwt=\" + result.ztoken, \"_blank\");\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { SimpleViewCommissioningRoutingModule } from './simple-view-commissioning-routing.module';\r\nimport { SimpleViewCommissioningComponent } from './simple-view-commissioning.component';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\n@NgModule({\r\n declarations: [\r\n SimpleViewCommissioningComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n SimpleViewCommissioningRoutingModule, \r\n MdbGlobalModule\r\n ]\r\n})\r\nexport class SimpleViewCommissioningModule { }\r\n","import { Injectable } from '@angular/core';\r\n\r\nexport class Data {\r\n text: string;\r\n priorityId: number;\r\n typeId: number;\r\n startDate: Date;\r\n endDate: Date;\r\n recurrenceRule?: string;\r\n}\r\n\r\nexport class PriorityData {\r\n text: string;\r\n id: number;\r\n color: string;\r\n}\r\n\r\nexport class TypeData {\r\n text: string;\r\n id: number;\r\n color: string;\r\n}\r\n\r\nexport class Task {\r\n id: number;\r\n parentId: number;\r\n title: string;\r\n start: Date;\r\n end: Date;\r\n progress: number;\r\n}\r\n\r\nexport class Dependency {\r\n id: number;\r\n predecessorId: number;\r\n successorId: number;\r\n type: number;\r\n}\r\n\r\nexport class Resource {\r\n id: number;\r\n text: string;\r\n}\r\n\r\nexport class ResourceAssignment {\r\n id: number;\r\n taskId: number;\r\n resourceId: number;\r\n}\r\n\r\nexport class Appointment {\r\n text: string;\r\n priorityId: number;\r\n startDate: Date;\r\n endDate: Date;\r\n}\r\n\r\nexport class Priority {\r\n text: string;\r\n id: number;\r\n color: string;\r\n}\r\n\r\nexport class TaskStatus {\r\n name: string;\r\n id: number;\r\n}\r\n\r\nexport class Project {\r\n text: string;\r\n id: number;\r\n color: string;\r\n}\r\n\r\nexport class Category {\r\n text: string;\r\n id: number;\r\n color: string;\r\n}\r\n\r\nlet data: Data[] = [];\r\n\r\nlet priorityData: PriorityData[] = [{\r\n text: \"Low Priority\",\r\n id: 1,\r\n color: \"#fcb65e\"\r\n}, {\r\n text: \"High Priority\",\r\n id: 2,\r\n color: \"#e18e92\"\r\n}\r\n];\r\n\r\nlet typeData: TypeData[] = [];\r\n\r\nlet appointments: Appointment[] = [];\r\n\r\nlet prioritiesData: Priority[] = [];\r\n\r\nlet resources: any = [];\r\n\r\nlet tasks: Task[] = [];\r\n\r\nlet dependencies: Dependency[] = [];\r\n\r\nlet resources2: Resource[] = [];\r\n\r\nlet resourceAssignments: ResourceAssignment[] = [];\r\n\r\n@Injectable()\r\nexport class Service {\r\n getPriorityData() {\r\n return priorityData;\r\n }\r\n getTypeData() {\r\n return typeData;\r\n }\r\n getData() {\r\n return data;\r\n }\r\n\r\n getAppointments() {\r\n return appointments;\r\n }\r\n getPriorities() {\r\n return prioritiesData;\r\n }\r\n\r\n getResources(): any {\r\n return resources;\r\n }\r\n\r\n getTasks(): Task[] {\r\n return tasks;\r\n }\r\n getDependencies(): Dependency[] {\r\n return dependencies;\r\n }\r\n getResources2(): Resource[] {\r\n return resources2;\r\n }\r\n getResourceAssignments(): ResourceAssignment[] {\r\n return resourceAssignments;\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppConfigService } from '../app-config.service.service';\r\nimport { JobDescriptionComponent } from '../pages/management/job-description/job-description.component';\r\n\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class CompanySettingsService {\r\n\r\n private baseurl = \"\";\r\n private baseurlUtility = \"\";\r\n private apiroute = \"\";\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private appSetting: AppConfigService,\r\n ) {\r\n this.baseurl = this.appSetting.apiBaseUrl;\r\n this.baseurlUtility = this.appSetting.apiBaseUrlUtility;\r\n this.apiroute = '/FlexIntegration';\r\n }\r\n\r\n // GetClientSettings(name){\r\n // console.log({method: 'Get_ClientSettingsByName', name: name});\r\n // return this.http.post(this.baseurl + this.apiroute, {method: 'Get_ClientSettingsByName', name: name})\r\n // }\r\n\r\n // GetCompanyTypes(){\r\n // return this.http.post(this.baseurl + '/public/GetOrganizationType', {})\r\n // }\r\n\r\n // GetCubePlans(){\r\n // return this.http.post(this.baseurl + '/public/GetCubePlans', {})\r\n // }\r\n\r\n // UpdateCreditCardInfo(obj: any){\r\n // return this.http.post(this.baseurl + this.apiroute, obj )\r\n // }\r\n\r\n // GetCreditCardInfo(myid: number){\r\n // return this.http.post(this.baseurl + this.apiroute, { method: 'Get_CreditCardInfoByID', id: myid } )\r\n // }\r\n\r\n // GetCreditCardList(){\r\n // return this.http.post(this.baseurl + this.apiroute, { method: 'Get_CreditCardInfoByCustomerID' } )\r\n // }\r\n\r\n UpdateCreditCardInfoTemp(obj: any){\r\n return this.http.post(this.baseurl + '/public/UpdateCreditCardInfoTemp', obj)\r\n } \r\n\r\n GetStripeCustomerList(){\r\n return this.http.post(this.baseurl + '/public/getStripeCustomer', {})\r\n }\r\n\r\n updateCreditCardInfoStripeTemp(obj: any){\r\n return this.http.post(this.baseurl + '/public/updateCreditCardInfoStripeTemp', obj)\r\n } \r\n\r\n sendPaymentNotification(lparameterxml: string){\r\n return this.http.post(this.baseurl + '/Notifications/NotificationGenericTemplate', { service: \r\n 'GetPaymentReminderLetterEmail', parameterxml: lparameterxml } )\r\n } \r\n\r\n GetStripeCustomerId(){\r\n return this.http.post(this.baseurl + '/public/getStripeCustomerId', {})\r\n }\r\n\r\n GetAllClientsWithStripeCustomerID(){\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'GetAllClientsWithStripeCustomerID' } )\r\n }\r\n\r\n getPaymentMethodById(obj: any){\r\n return this.http.post(this.baseurl + '/public/getPaymentMethodById', obj )\r\n }\r\n\r\n // UpdateCreditCardInfoStripe(obj: any){\r\n // return this.http.post(this.baseurl + '/public/UpdateCreditCardInfoStripe', obj)\r\n // }\r\n\r\n getCustomerBilling(){\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_CustomerBilliable' } )\r\n }\r\n\r\n // SaveNewExternalUser(newuser: any){\r\n // return this.http.post(this.baseurl + '/public/SaveNewExternalUser', newuser)\r\n // }\r\n\r\n // UpdateClientSettings(name, description, value){\r\n // return this.http.post(this.baseurl + this.apiroute, {method: 'Update_ClientSettings', name: name, description: description, value: value})\r\n // }\r\n\r\n // UpdateEstimateDefault(name, value){\r\n // return this.http.post(this.baseurl + this.apiroute, {method: 'UpdateEstimateDefaulvaluesCE', name: name, value: value})\r\n // }\r\n\r\n // UpdateClientSettingsDescription(name, description){\r\n // console.log({method: 'Update_ClientSettingsDescription', name: name, description: description})\r\n // return this.http.post(this.baseurl + this.apiroute, {method: 'Update_ClientSettingsDescription', name: name, description: description})\r\n // }\r\n\r\n // GetImgLogoPath(){\r\n // return this.http.post(this.baseurl + this.apiroute, { method: 'Get_ImgCompanyLogoPath' })\r\n // }\r\n\r\n // SaveDocument(filestring){\r\n // return this.http.post(this.baseurl + '/DownloadFile/Upload', { filestring: filestring, doctype: 'logo', id: 1 })\r\n // }\r\n\r\n // GetDocument(filepath): Observable {\r\n // return this.http.post(this.baseurl + '/DownloadFile/Download', { filename: filepath });\r\n // }\r\n\r\n // GetUtility(method) {\r\n // return this.http.post(this.baseurl + this.apiroute, { method: method })\r\n // }\r\n\r\n // UpdateUtility(obj){\r\n // console.log('Update ', obj);\r\n // return this.http.post(this.baseurl + this.apiroute, obj)\r\n // }\r\n\r\n GetClientSettings(name){\r\n // console.log('Voy en settings');\r\n // console.log({method: 'Get_ClientSettingsByName', name: name});\r\n return this.http.post(this.baseurl + this.apiroute, {method: 'Get_ClientSettingsByName', name: name})\r\n }\r\n\r\n GetClientSettingsAll(){\r\n console.log({method: 'Get_ClientSettingsByName'});\r\n return this.http.post(this.baseurl + this.apiroute, {method: 'Get_ClientSettings '})\r\n }\r\n\r\n GetConfigClientSettings(){\r\n // console.log({method: 'Get_ConfigClientSettings '});\r\n // console.log('Loading Get_ConfigClientSettings XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX')\r\n return this.http.post(this.baseurl + this.apiroute, {method: 'Get_ConfigClientSettings '})\r\n }\r\n\r\n GetCompanyTypes(){\r\n return this.http.post(this.baseurlUtility + '/public/GetOrganizationType', {})\r\n }\r\n\r\n GetCubePlans(){\r\n return this.http.post(this.baseurl + '/public/GetCubePlans', {})\r\n }\r\n\r\n UpdateCreditCardInfo(obj: any){\r\n return this.http.post(this.baseurl + this.apiroute, obj )\r\n }\r\n\r\n GetCreditCardInfo(myid: number){\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_CreditCardInfoByID', id: myid } )\r\n }\r\n\r\n GetCreditCardList(){\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_CreditCardInfoByCustomerID' } )\r\n }\r\n\r\n GetCreditCardListAll(){\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_CreditCardInfoAll' } )\r\n }\r\n\r\n RemoveCreditCardList(id: string){\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Remove_CreditCardInfoByCustomerID', id: id } )\r\n }\r\n\r\n UpdateCreditCardInfoStripe(obj: any){\r\n return this.http.post(this.baseurl + '/public/UpdateCreditCardInfoStripe', obj)\r\n }\r\n\r\n SaveNewExternalUser(newuser: any){\r\n return this.http.post(this.baseurl + '/public/SaveNewExternalUser', newuser)\r\n }\r\n\r\n Insert_TempUser(newuser: any){\r\n return this.http.post(this.baseurlUtility + '/public/Insert_TempUser', newuser)\r\n }\r\n\r\n SendNotificationClientTempUser(email: any){\r\n return this.http.post(this.baseurlUtility + '/Notifications/SendNotificationClientTempUser', email)\r\n }\r\n\r\n UpdateClientSettings(name, description, value){\r\n console.log({method: 'Update_ClientSettings', name: name, description: description, value: value});\r\n return this.http.post(this.baseurl + this.apiroute, {method: 'Update_ClientSettings', name: name, description: description, value: value})\r\n }\r\n\r\n UpdateEstimateDefault(name, value){\r\n return this.http.post(this.baseurl + this.apiroute, {method: 'UpdateEstimateDefaulvaluesCE', name: name, value: value})\r\n }\r\n\r\n UpdateClientSettingsDescription(name, description){\r\n console.log({method: 'Update_ClientSettingsDescription', name: name, description: description})\r\n return this.http.post(this.baseurl + this.apiroute, {method: 'Update_ClientSettingsDescription', name: name, description: description})\r\n }\r\n\r\n GetImgLogoPath(){\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_ImgCompanyLogoPath' })\r\n }\r\n\r\n Get_CustomerBillingHistory(){\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_CustomerBillingHistory' })\r\n }\r\n\r\n createPayment(obj: any){\r\n return this.http.post(this.baseurl + '/public/createCharge', obj )\r\n }\r\n\r\n updateCreditCardFromStripe(obj: any){\r\n return this.http.post(this.baseurl + '/public/updateCreditCardFromStripe', obj )\r\n }\r\n\r\n SaveDocument(filestring){\r\n return this.http.post(this.baseurl + '/DownloadFile/Upload', { filestring: filestring, doctype: 'logo', id: 1 })\r\n }\r\n\r\n Get_CustomerBillingHistoryAll(){\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_AllCustomerBillingHistory' })\r\n } \r\n\r\n // updateCreditCardFromStripe(){\r\n // return this.http.post(this.baseurl + this.apiroute, { method: 'Get_AllCustomerBillingHistory' })\r\n // } \r\n\r\n ModifyReqPaid(){\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'InsertUpdate_ProjectRequisitionAccounting' })\r\n } \r\n\r\n GetDocument(filepath): Observable {\r\n\r\n return this.http.post(this.baseurl + '/DownloadFile/Download', { filename: filepath });\r\n }\r\n\r\n GetUtility(method, parametro = null) {\r\n if(parametro == null) {\r\n return this.http.post(this.baseurl + this.apiroute, { method: method })\r\n } else {\r\n return this.http.post(this.baseurl + this.apiroute, { method: method, [parametro.propiedad]: parametro.valor })\r\n }\r\n }\r\n\r\n GetClientMasterDBCode(){\r\n return this.http.post(this.baseurl + this.apiroute, {method: 'GetClientMasterDBCode'})\r\n }\r\n\r\n UpdateClientMasterDBCode(){\r\n return this.http.post(this.baseurl + this.apiroute, {method: 'UpdateClientMasterDBCode' })\r\n } \r\n\r\n UpdateUtility(obj){\r\n console.log('Update ', obj);\r\n return this.http.post(this.baseurl + this.apiroute, obj)\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CompanySettingsService } from 'src/app/services/company-settings.service';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ConfigService {\r\n private cubeConfig: any;\r\n\r\n constructor(public settingsCompany: CompanySettingsService) {\r\n // console.log(\"In Config Service\",this.settingsCompany)\r\n }\r\n\r\n loadConfigFromDB(){\r\n return this.settingsCompany.GetConfigClientSettings()\r\n }\r\n\r\n getConfig(){\r\n return this.cubeConfig; \r\n }\r\n \r\n setConfig(value){\r\n this.cubeConfig = value; \r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppConfigService } from '../app-config.service.service';\r\nimport { Observable } from 'rxjs';\r\nimport { data } from 'jquery';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ContactService {\r\n private uri = ``;\r\n private apiroute = \"\";\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private appConfigService: AppConfigService,\r\n ) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n this.apiroute = '/FlexIntegration';\r\n }\r\n\r\n Get_POAllWithSearch(number,statusid,vendorid,date){\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_POAllWithSearch\",\r\n number: number,\r\n statusid: statusid,\r\n vendorid: vendorid,\r\n date: date,\r\n })\r\n }\r\n\r\n Get_PurchaseOrderReport(id){\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_PurchaseOrderReport\",\r\n poid: id\r\n })\r\n }\r\n\r\n SP_API_Flex_Get_ContactsCE(): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_ContactsCE\"\r\n })\r\n }\r\n\r\n SP_API_Flex_Get_ContactsCE_2(): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_ComunicationBrd\"\r\n })\r\n }\r\n\r\n SP_API_Flex_Estimates_Get_Contacts(page): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Estimates_Get_Contacts\",\r\n pageindex: page.pageindex,\r\n pagesize: page.pagesize\r\n })\r\n }\r\n\r\n Duplicate_Contacts(id){\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Duplicate_Contacts\",\r\n id: id\r\n })\r\n }\r\n\r\n SP_API_Flex_Delete_Contacts(id): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Delete_Contacts\",\r\n id: id\r\n })\r\n }\r\n \r\n Get_VendorsByIDCE(id): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_VendorsByIDCE\",\r\n id: id\r\n })\r\n }\r\n\r\n Get_VendorsMasterByIDCE(id): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_MasterVendorsByID\",\r\n id: id\r\n })\r\n }\r\n\r\n GetPurchaseOrdersItemaSummary(id){\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"GetPurchaseOrdersItemaSummary\",\r\n poid: id\r\n })\r\n }\r\n\r\n Get_VendorsAll(): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_VendorsAll\",\r\n })\r\n }\r\n\r\n Get_VendorsAllMaster(): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_VendorsMaster\",\r\n })\r\n }\r\n\r\n Get_VendorsAllActive(): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_VendorsAllActive\",\r\n })\r\n }\r\n\r\n\r\n Get_VendorsAllByName(name): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_VendorsAllByName\",\r\n name: name\r\n })\r\n\r\n }\r\n Get_PartsALl(name): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_PartsALlCE\",\r\n name: name\r\n })\r\n }\r\n\r\n Get_PartsALlCEPaged(index, size): Observable {\r\n let obj = {\r\n method: \"Get_PartsALlCEPaged\",\r\n pageindex: index,\r\n pagesize: size\r\n }\r\n console.log(obj);\r\n return this.http.post(this.uri + this.apiroute, obj)\r\n }\r\n\r\n PartsOnDemand(name): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_PartsALlCETop\",\r\n name: name\r\n })\r\n }\r\n\r\n PartsMasterOnDemand(name): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_PartsMasterALlCETop\",\r\n name: name\r\n })\r\n }\r\n\r\n GetPurchaseOrdersInfo(id): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"GetPurchaseOrdersInfo\",\r\n poid: id\r\n })\r\n\r\n }\r\n\r\n GetPurchaseOrdersDetails(id): Observable {\r\n console.log({\r\n method: \"GetPurchaseOrdersDetailsCE \",\r\n poid: id\r\n })\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"GetPurchaseOrdersDetailsCE \",\r\n poid: id\r\n })\r\n }\r\n\r\n Get_ReconcileAll(date): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_ReconcileAll\",\r\n tsdate: date\r\n })\r\n }\r\n Get_PartLocation(): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_PartLocation\",\r\n })\r\n\r\n }\r\n\r\n Get_ReconcileAllSearch(form){\r\n return this.http.post(this.uri + this.apiroute, form);\r\n }\r\n\r\n get(model) {\r\n return this.http.post(this.uri + '/Contacts', model);\r\n }\r\n\r\n getUrl() {\r\n return this.uri + '/Contacts';\r\n }\r\n\r\n GetCustomer(id = 0) {\r\n return this.http.post(this.uri + '/Customer', { Id: id });\r\n }\r\n\r\n GetContactByName(name) {\r\n\r\n return this.http.post(this.uri + '/Contacts/Get_AllContactsByName', { name: name });\r\n }\r\n\r\n Get_AllContacts(name){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Get_ContactsByName\", name: name});\r\n }\r\n\r\n Get_ContactsAll2(){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Get_ContactsAll\"});\r\n }\r\n\r\n GetContactByName2(value) {\r\n return this.http.post(this.uri + '/FlexIntegration', { \"method\": \"Get_ContactsCE \", \"name\": value })\r\n }\r\n\r\n GetContactById(id) {\r\n return this.http.post(this.uri + '/Contacts/GetContactByID', { Id: id });\r\n // return this.http.post(this.uri + '/FlexIntegration', { Id: id, method: 'Get_ContactByID' });\r\n }\r\n\r\n GetContactCountries() {\r\n return this.http.post(this.uri + '/Contacts/GetContactCountries', {});\r\n }\r\n\r\n SaveContact(contact) {\r\n return this.http.post(this.uri + '/Contacts/InsertContact/', contact);\r\n }\r\n\r\n UpdateContact(contact) {\r\n return this.http.post(this.uri + '/Contacts/UpdateContact/', contact);\r\n }\r\n\r\n UpdateContactFlex(contact){\r\n return this.http.post(this.uri + '/FlexIntegration', contact)\r\n }\r\n\r\n DeleteContact(contacid) {\r\n return this.http.post(this.uri + '/Contacts/DeleteContact/', { id: contacid });\r\n }\r\n\r\n GetContactsToExport() {\r\n return this.http.post(this.uri + '/Contacts/Get_ContactsExport/', {});\r\n }\r\n\r\n Get_MaterialRequestAllCE(): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_MaterialRequestAllCE\",\r\n })\r\n\r\n }\r\n Get_POAll(date): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_POAll\",\r\n tsdate: date\r\n })\r\n }\r\n\r\n Get_POAll2(date): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_PO_SubAll\",\r\n tsdate: date\r\n })\r\n }\r\n\r\n GetOpenRecieved(id){\r\n return this.http.post(this.uri + '/FlexIntegration',{method: 'Get_OpenReceivedforPo', poid: id});\r\n }\r\n\r\n GetCustomerCountry(): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"GetCustomerCountryCE\",\r\n })\r\n }\r\n Get_ContactsAll(): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_ContactsAll\",\r\n })\r\n }\r\n Get_ProjectList(): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'Get_SalesProjectList',\r\n }\r\n );\r\n }\r\n Get_PO_StatusCE(): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'Get_PO_StatusCE',\r\n }\r\n );\r\n }\r\n Get_PurchaseOrderShiptoddress(): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'Get_PurchaseOrderShiptoddress',\r\n }\r\n );\r\n }\r\n Get_PurchaseOrderShiptoddressByID(id): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'Get_PurchaseOrderShiptoddress',\r\n projectid: id\r\n }\r\n );\r\n }\r\n Get_POItem_Status(): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'Get_POItem_Status',\r\n }\r\n );\r\n }\r\n Delete_POitem(id): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'Delete_POitem',\r\n poid: id\r\n }\r\n );\r\n }\r\n GetPurchaseOrdersDetailsByPOIItemID(id): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'GetPurchaseOrdersDetailsByIdCE',\r\n poitemid: id\r\n }\r\n );\r\n }\r\n GetPurchaseOrdersDetailsByIdCERec(id): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'GetPurchaseOrdersDetailsByIdCERec',\r\n poitemid: id\r\n }\r\n );\r\n }\r\n Insert_PurchaseOrdersDetail(data): Observable {\r\n let obj = {\r\n method: 'Insert_PurchaseOrdersDetail',\r\n poitemid: data.poitemid,\r\n poid: data.poid,\r\n partid: data.partid,\r\n projectid: data.projectid,\r\n qty: data.qty,\r\n typeid: data.type,\r\n statusid: data.status,\r\n note: data.notes,\r\n unitcost: data.unitcost,\r\n totalcost: data.totalcost,\r\n datefullfillment: data.estimated,\r\n dateschedulefullfillment: data.fulfillment\r\n }\r\n console.log(obj)\r\n return this.http.post(this.uri + '/FlexIntegration',obj);\r\n }\r\n\r\n\r\n Insert_PurchaseOrdersInfo(data): Observable {\r\n let obj = {\r\n method: \"Insert_PurchaseOrdersInfo\",\r\n poid: data.poid,\r\n num: data.num,\r\n vendorid: data.vendorid,\r\n statusid: data.statusid,\r\n notes: data.notes,\r\n shiptoname: data.shiptoname,\r\n shiptoaddress: data.shiptoaddress,\r\n shiptocity: data.shiptocity,\r\n shiptostate: data.shiptostate, \r\n shiptocountry: data.shiptocountry,\r\n shiptozip: data.shiptozip,\r\n shiptermid: data.shipvia,\r\n datecompleted: data.datecompleted,\r\n buyer: data.buyer,\r\n paymenttermid: data.paymenttermid,\r\n deliverto: data.deliverto,\r\n }\r\n data.method = \"Insert_PurchaseOrdersInfo\";\r\n console.log(data);\r\n return this.http.post(this.uri + this.apiroute, obj)\r\n }\r\n\r\n Update_Vendors(data): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"InsertUpdate_VendorsCE\",\r\n id: data.id,\r\n vendorid: data.vendorid,\r\n accountid: data.accountid,\r\n statusid: data.statusid,\r\n name: data.name,\r\n dateentered: data.dateentered,\r\n creditlimit: data.creditlimit,\r\n activeflag: data.activeflag,\r\n clientid: data.clientid,\r\n mainphone: data.mainphone,\r\n mainfax: data.mainfax,\r\n mobile: data.mobile,\r\n mainemail: data.mainemail,\r\n ccemail: data.ccemail,\r\n webaddress: data.webaddress,\r\n notes: data.notes,\r\n maincontactid: data.maincontactid,\r\n mastervendorid: data.mastervendorid,\r\n mastervendorconnectiontoken: data.mastervendorconnectiontoken,\r\n altcontactid: data.altcontactid,\r\n currencyid: data.currencyid,\r\n addressflag: data.addressflag,\r\n billfromname: data.billfromname,\r\n billfromaddress: data.billfromaddress,\r\n billfromaddressline2: data.billfromaddressline2,\r\n billfromcity: data.billfromcity,\r\n billfromstate: data.billfromstate,\r\n billfromzip: data.billfromzip,\r\n billfromcountry: data.billfromcountry,\r\n shipfromname: data.shipfromname,\r\n shipfromaddress: data.shipfromaddress,\r\n shipfromaddressline2: data.shipfromaddressline2,\r\n shipfromcity: data.shipfromcity,\r\n shipfromstate: data.shipfromstate,\r\n shipfromzip: data.shipfromzip,\r\n shipfromcountry: data.shipfromcountry,\r\n issubcontractor: data.issubcontractor\r\n })\r\n }\r\n InsertUpdate_VendorsCE(data): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"InsertUpdate_VendorsCE\",\r\n id: 0,\r\n vendorid: 0,\r\n accountid: data.accountid,\r\n statusid: data.statusid,\r\n name: data.name,\r\n dateentered: data.dateentered,\r\n creditlimit: data.creditlimit,\r\n activeflag: data.activeflag,\r\n clientid: data.clientid,\r\n mainphone: data.mainphone,\r\n mainfax: data.mainfax,\r\n mobile: data.mobile,\r\n mainemail: data.mainemail,\r\n ccemail: data.ccemail,\r\n webaddress: data.webaddress,\r\n notes: data.notes,\r\n maincontactid: data.maincontactid,\r\n altcontactid: data.altcontactid,\r\n currencyid: data.currencyid,\r\n addressflag: data.addressflag,\r\n billfromname: data.billfromname,\r\n billfromaddress: data.billfromaddress,\r\n billfromaddressline2: data.billfromaddressline2,\r\n billfromcity: data.billfromcity,\r\n billfromstate: data.billfromstate,\r\n billfromzip: data.billfromzip,\r\n billfromcountry: data.billfromcountry,\r\n shipfromname: data.shipfromname,\r\n shipfromaddress: data.shipfromaddress,\r\n shipfromaddressline2: data.shipfromaddressline2,\r\n shipfromcity: data.shipfromcity,\r\n shipfromstate: data.shipfromstate,\r\n shipfromzip: data.shipfromzip,\r\n shipfromcountry: data.shipfromcountry\r\n })\r\n }\r\n\r\n InsertUpdate_VendorsMasterCE(data): Observable {\r\n return this.http.post(this.uri + this.apiroute, data)\r\n }\r\n \r\n Get_AccPartsServiceDetail(filter): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: \"Get_PartsforPOALlCE\",\r\n description: filter\r\n // method: \"Get_PartsALlCE\",\r\n })\r\n }\r\n Get_VendoParts(vendorid, id ) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: \"Get_VendorPartSugestedValues\",\r\n vendorid: vendorid ,\r\n id: id\r\n })\r\n }\r\n Get_ProjectPartDetailSugestedValues(idpart, vendorid): Observable {\r\n console.log({\r\n method: 'Get_VendorPartSugestedValues',\r\n id: idpart,\r\n vendorid: vendorid\r\n })\r\n return this.http.post(this.uri + this.apiroute, {\r\n // method: \"Get_ProjectPartDetailSugestedValues\",\r\n method: 'Get_VendorPartSugestedValues',\r\n id: idpart,\r\n vendorid: vendorid\r\n })\r\n }\r\n GetAllProjects(name) {\r\n console.log({ method: 'Get_ProjectsForPo', projectname: name })\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectsForPo', projectname: name }); \r\n }\r\n Get_POITEMTypeList() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_POITEMTypeList' });\r\n }\r\n Update_PODefaultvendorcost(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Update_PODefaultvendorcost',\r\n poid: id\r\n });\r\n }\r\n Get_VendorPartSugestedValues(vendorid, parid): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"Get_VendorPartSugestedValues\",\r\n id: parid,\r\n vendorid: vendorid,\r\n })\r\n }\r\n InsertUpdate_VendorParts(data): Observable {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: \"InsertUpdate_VendorParts\",\r\n id: data.id, \r\n partid: data.partid,\r\n vendorid: data.vendorid,\r\n partnumber: data.partnumber,\r\n default: data.default,\r\n lastcost: data.lastcost,\r\n listprice: data.listprice,\r\n })\r\n }\r\n InsertUpdate_PurchaseOrderReceiveItems(data, refno, datebilled, location, id){\r\n let obj = {\r\n method: \"InsertUpdate_PurchaseOrderReceiveItems\",\r\n refno: refno,\r\n datebilled: datebilled,\r\n qty: data.QTYU,\r\n locationgroupid: location,\r\n poid: data.POID,\r\n poitemid: data.POitemID,\r\n receiptid: id,\r\n partid: data.PARTID, \r\n }\r\n console.log('saved ',obj);\r\n return this.http.post(this.uri + '/FlexIntegration', obj)\r\n }\r\n\r\n UpdateMultiple_PurchaseOrdersDetail(poitemids, notes, estimateddate){\r\n let obj = {\r\n poitemids: poitemids,\r\n notes: notes,\r\n estimatedate: estimateddate,\r\n method: 'UpdateMultiple_PurchaseOrdersDetail'\r\n }\r\n console.log('saved ',obj);\r\n return this.http.post(this.uri + '/FlexIntegration', obj)\r\n }\r\n\r\n Update_POVendorPartNumber(itemid){\r\n let obj = {\r\n method: 'Update_POVendorPartNumber',\r\n poitemid: itemid\r\n }\r\n console.log(obj);\r\n return this.http.post(this.uri + '/FlexIntegration', obj)\r\n }\r\n\r\n SavePOActivity(obj){\r\n return this.http.post(this.uri + '/FlexIntegration', obj )\r\n }\r\n\r\n NotificationsPO(obj){\r\n return this.http.post(this.uri + '/Notifications/NotificationPO', obj )\r\n }\r\n\r\n Update_PostReceiptItems(id){\r\n return this.http.post(this.uri + '/FlexIntegration', {method: 'Update_PostReceiptItems', reciptid: id})\r\n }\r\n\r\n Get_PaymentTerms(){\r\n return this.http.post(this.uri + '/FlexIntegration', {method:'Get_PatmentTerms'});\r\n }\r\n\r\n Get_ShipMethod(){\r\n return this.http.post(this.uri + '/FlexIntegration', {method:'Get_RMA_Ship_Method'});\r\n }\r\n\r\n Insert_PurchaseOrdersInfoNotes(id, notes){\r\n console.log({\r\n method:'Insert_PurchaseOrdersInfoNotes',\r\n poid: id,\r\n notes: notes\r\n })\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method:'Insert_PurchaseOrdersInfoNotes',\r\n poid: id,\r\n notes: notes\r\n });\r\n }\r\n\r\n Delete_PO(id){\r\n return this.http.post(this.uri + '/FlexIntegration', { \r\n method:'Delete_PO',\r\n poid: id,\r\n } )\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppConfigService } from '../app-config.service.service';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CustomerService {\r\n\r\n private uri = ``;\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private appConfigService: AppConfigService,\r\n ) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n }\r\n\r\n GetInfoSites(method):Observable{\r\n return this.http.post(this.uri +method,{})\r\n }\r\n\r\n GetInfoNewFormat(method:any):Observable{\r\n return this.http.post(this.uri + '/FlexIntegration',{ \"method\":method})\r\n }\r\n\r\n GetCustomerByName(name) {\r\n return this.http.post(this.uri + '/Customer/GetCustomerListByName', { CustomerName: name });\r\n }\r\n\r\n GetCustomerCEByName(name){\r\n return this.http.post(this.uri + '/FlexIntegration',{ \"method\": 'Get_CustomerCE_ByName', name: name});\r\n }\r\n\r\n GetCustomerWithCreditListByName(name) {\r\n return this.http.post(this.uri + '/Customer/GetCustomerWithCreditListByName', { CustomerName: name });\r\n }\r\n \r\n GetCustomerList() {\r\n return this.http.post(this.uri + '/Customer/GetCustomerList', {});\r\n }\r\n\r\n GetCustomerFilters(model) {\r\n return this.http.post(this.uri + '/Customer/GetCustomerPage', model);\r\n }\r\n\r\n GetCustomerFilterUrl() {\r\n return this.uri + '/Customer/GetCustomerPage';\r\n }\r\n\r\n GetCustomerType() {\r\n return this.http.post(this.uri + '/CustomerType', {});\r\n }\r\n GetCustomerTaxes(){\r\n return this.http.post(this.uri + '/Customer/GetCustomerTaxes', {});\r\n }\r\n\r\n GetCountries() {\r\n return this.http.post(this.uri + '/Country', {});\r\n }\r\n\r\n GetCustumerById(ids: number) {\r\n return this.http.post(this.uri + '/Customer', {id: ids});\r\n }\r\n GetActivitiesByCustumer(id) {\r\n return this.http.post(this.uri + '/Customer/GetCustomerActivity', {CustomerId: id});\r\n }\r\n GetAssocByCustumer(id) {\r\n return this.http.post(this.uri + '/Customer/GetAssociatedPeople', {CustomerId: id});\r\n }\r\n\r\n PostNewCustumer(data) {\r\n return this.http.post(this.uri + '/Customer/InsertCustomer', data);\r\n }\r\n PostNewActivityByCustumer() {\r\n\r\n }\r\n EditCustumerById(data) {\r\n // editCustomer\r\n return this.http.post(this.uri + '/Customer/InsertCustomer', data);\r\n }\r\n /**\r\n * Opntiosn for Activity Empleoyes\r\n */\r\n GetCustomerActivityEmployeesFilter(data) {\r\n return this.http.post(this.uri + '/Activity', data);\r\n }\r\n GetCustomerActivityEmployees() {\r\n return this.http.post(this.uri + '/Customer/GetCustomerActivityEmployees', {});\r\n }\r\n GetCustomerActivityType() {\r\n return this.http.post(this.uri + '/Customer/GetCustomerActivityType', {});\r\n }\r\n\r\n GetCustomerSalesRegion() {\r\n return this.http.post(this.uri + '/Customer/GetCustomerSalesRegion', {});\r\n }\r\n\r\n PostInsertUpdateCustomerActivity(data){\r\n return this.http.post(this.uri + '/Customer/InsertUpdateCustomerActivity', data);\r\n }\r\n /**\r\n * Associate People\r\n */\r\n GetCustomerOportunityInfluence() {\r\n return this.http.post(this.uri + '/Customer/GetCustomerOportunityInfluence', {});\r\n }\r\n GetCustomerBuyerType() {\r\n return this.http.post(this.uri + '/Customer/GetCustomerBuyerType', {});\r\n }\r\n GetContactsPeople() {\r\n return this.http.post(this.uri + '/Contacts/Get_AllContacts', {});\r\n }\r\n GetAssocitePeople(id){\r\n return this.http.post(this.uri + '/Customer/GetCustomerContacts', {CustomerId: id});\r\n }\r\n PostInsertCustomerContacts(data){\r\n return this.http.post(this.uri + '/Customer/InsertCustomerMultipleContacts', data);\r\n }\r\n EditInsertCustomerContacts(data){\r\n return this.http.post(this.uri + '/Customer/InsertCustomerContacts', data);\r\n }\r\n\r\n deleteNewContac(id){\r\n return this.http.post(this.uri + '/Customer/DeleteCustomerToContacts', {id: id}); \r\n }\r\n deleteCustumer(id){\r\n return this.http.post(this.uri + '/Customer/DeleteCustomer', {CustomerId: id});\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { LoginUser } from '../models/login-user';\r\nimport { ApiResponse } from '../models/api-response';\r\nimport { UserMenuNodes } from '../models/user-menu-nodes';\r\nimport { ComponentsType } from '../models/component-data';\r\n\r\nimport { AppConfigService } from '../app-config.service.service';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DasboardService {\r\n private uri = \"\";// `${environment.apiUrl}`;\r\n private moduleId;\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private appConfigService: AppConfigService,\r\n private toastService: ToastService) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n\r\n }\r\n\r\n getDashboard() {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n this.moduleId = sessionStorage.getItem('moduleId');\r\n return this.http.post(this.uri + '/Dashboard', {\r\n moduleid: this.moduleId\r\n });\r\n }\r\n\r\n getDashboardById(id) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n return this.http.post(this.uri + '/DashboardComponents', {DashboardID: id});\r\n }\r\n\r\n getDashboardByIdCubeBox(params) {\r\n console.log(params)\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n return this.http.post(this.uri + '/DashboardComponents', params );\r\n }\r\n\r\n getUsers() {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n\r\n return this.http.post(this.uri + '/FlexIntegration',{ method: 'Get_AllUser' });\r\n\r\n }\r\n\r\n shareDashboard(obj: any) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n\r\n return this.http.post(this.uri + '/FlexIntegration', obj );\r\n\r\n }\r\n\r\n getData(componentId) {\r\n // return this.http.post(this.uri + endpoint, {});\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n return this.http.post(this.uri + '/DashboardsComponentsData/GetData', {ComponentID: componentId});\r\n }\r\n\r\n deleteDashboard(id) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n return this.http.post(this.uri + '/Dashboard/Delete_Dashboard', {id: id});\r\n }\r\n\r\n updateDashboard(item) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n this.moduleId = sessionStorage.getItem('moduleId');\r\n item.moduleid = this.moduleId;\r\n return this.http.post(this.uri + '/Dashboard/Update_Dashboard', item);\r\n }\r\n\r\n newDashboard(newDashboard) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n this.moduleId = sessionStorage.getItem('moduleId');\r\n newDashboard.moduleid = this.moduleId;\r\n // console.log(newDashboard);\r\n // return;\r\n return this.http.post(this.uri + '/Dashboard/InsertDashboard', newDashboard);\r\n }\r\n\r\n GetALlDashboardComponents() {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n this.moduleId = sessionStorage.getItem('moduleId');\r\n if (!this.moduleId) {\r\n this.toastService.info('The module is not defined');\r\n }\r\n return this.http.post(this.uri + '/DashboardComponents/GetALlDashboardComponents', {\r\n moduleid: this.moduleId\r\n });\r\n }\r\n\r\n addNewComponentDashboard(model) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n return this.http.post(this.uri + '/DashboardComponents/InsertDashboardComponents', model);\r\n }\r\n\r\n UpdateDashBoardComponents(dashboardid, list) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n return this.http.post(this.uri + '/DashboardComponents/UpdateDashBoardComponents', {DashboardID: dashboardid, Components: list});\r\n }\r\n\r\n UpdateDashBoardComponentsGridster(dashboardid, list) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n return this.http.post(this.uri + '/FlexIntegration',{ method: 'UpdateDashBoardComponentsGridster', dashboardid: dashboardid, listjson: list });\r\n }\r\n\r\n GetDashBoardComponentsGridster(dashboardid) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n return this.http.post(this.uri + '/FlexIntegration',{ method: 'GetDashBoardComponentsGridster', dashboardid: dashboardid });\r\n }\r\n\r\n // admin component\r\n GetDashboardComponentsConf(model) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n return this.http.post(this.uri + '/DashboardComponents/GetDashboardComponentsConf', model);\r\n }\r\n\r\n GetDashboardComponentsConfDataSources() {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n return this.http.post(this.uri + '/DashboardComponents/GetDashboardComponentsConfDataSources', {});\r\n }\r\n\r\n UpdateComponentsConfDataSources(model) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n return this.http.post(this.uri + '/DashboardComponents/UpdateComponentsConfDataSources', model);\r\n // tslint:disable-next-line: max-line-length\r\n // {ComponentId: 0, Name: 'ComponentName', Description: 'ComponentDescription', ComponentTypeId: 9, DataSource: 'ComponentDataSourceTEXT'}\r\n }\r\n\r\n DeleteComponentsConfDataSources(id) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n return this.http.post(this.uri + '/DashboardComponents/DeleteComponentsConfDataSources', {ComponentId: id});\r\n }\r\n\r\n GetDashboardComponentsModules() {\r\n return this.http.post(this.uri + '/DashboardComponents/GetDashboardComponentsModules', {});\r\n }\r\n\r\n GetDashboardComponentsUserGroup() {\r\n return this.http.post(this.uri + '/DashboardComponents/GetDashboardComponentsUserGroup', {});\r\n }\r\n\r\n GetDashboardComponentsConfModulesUserGroups(componentid) {\r\n return this.http.post(this.uri + '/DashboardComponents/GetDashboardComponentsConfModulesUserGroups', {ComponentId: componentid});\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 { AppConfigService } from '../app-config.service.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DatagridService {\r\n\r\n private uri = \"\";// `${environment.apiUrl}`;\r\n moduleId: string;\r\n\r\n constructor(private http: HttpClient, private appConfigService: AppConfigService) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n }\r\n\r\n GetUserReports(reportModuleId: number) {\r\n return this.http.post(this.uri + '/Reports/GetUserReports', { moduleid: reportModuleId } );\r\n }\r\n\r\n CallReport(reportID: number) {\r\n return this.http.post(this.uri + '/Reports/CallReport', { reportid: parseInt(this.moduleId) } );\r\n }\r\n\r\n CallGrid(data: any) {\r\n return this.http.post(this.uri + '/Reports/CallGridDataGen', data );\r\n }\r\n\r\n CallDeleteGrid(id: number, lmoduleid: number) {\r\n return this.http.post(this.uri + '/Reports/CallDeleteGrid', { moduleid: lmoduleid, id: id } );\r\n }\r\n\r\n GetModules(modulename) {\r\n return this.http.post(this.uri + '/Reports/GetModules', {modulename: modulename} );\r\n }\r\n\r\n GetProcedures(procedurename) {\r\n return this.http.post(this.uri + '/Reports/GetProcedures', {procedurename: procedurename} );\r\n }\r\n\r\n GetSPFields(procedurename) {\r\n return this.http.post(this.uri + '/Reports/GetSPFields', {procedurename: procedurename} );\r\n }\r\n\r\n UpdateConfig(moduleid: number, procedurename: string, configstring: string) {\r\n return this.http.post(this.uri + '/Reports/UpdateConfig', { moduleid: moduleid, procedurename: procedurename, configstring: configstring } );\r\n }\r\n\r\n GetNAVConfig(moduleid: number) {\r\n return this.http.post(this.uri + '/Reports/GetNAVConfig', { moduleid: moduleid } );\r\n }\r\n\r\n formatDate(theDate) {\r\n\r\n var date = theDate;\r\n var aaaa = date.getFullYear();\r\n var gg = date.getDate();\r\n var mm = (date.getMonth() + 1);\r\n\r\n if (gg < 10)\r\n gg = \"0\" + gg;\r\n\r\n if (mm < 10)\r\n mm = \"0\" + mm;\r\n\r\n var cur_day = aaaa + \"-\" + mm + \"-\" + gg;\r\n\r\n var hours = date.getHours()\r\n var minutes = date.getMinutes()\r\n var seconds = date.getSeconds();\r\n\r\n if (hours < 10)\r\n hours = \"0\" + hours;\r\n\r\n if (minutes < 10)\r\n minutes = \"0\" + minutes;\r\n\r\n if (seconds < 10)\r\n seconds = \"0\" + seconds;\r\n\r\n return cur_day + \" \" + hours + \":\" + minutes + \":\" + seconds;\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 { AppConfigService } from '../app-config.service.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DeltaworldService {\r\n private uri = ``;\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private appConfigService: AppConfigService,\r\n ) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n }\r\n\r\n GetDeltaWorld() {\r\n // 1040\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_DeltaWorld'\r\n });\r\n }\r\n\r\n GetEstimateProgramerAddObjects(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_EstimateProgramerAddObjects', systemtypeid: id\r\n })\r\n }\r\n\r\n GetMasterEstimateProgramerAddObjects(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_MasterEstimateProgramerAddObjects', systemtypeid: id\r\n })\r\n }\r\n\r\n GetEstimateSystemType() {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_EstimateSytemTypeAll'\r\n })\r\n }\r\n\r\n GetMasterEstimateSystemType() {\r\n // Get_MasterEstimateSytemTypeAll\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'GetMasterSystemType'\r\n })\r\n }\r\n\r\n GetEstimateSystemTypeCE() {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_EstimateSytemTypeCE'\r\n })\r\n }\r\n\r\n GetEstimateSystemTypeCEClient(dbcode) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_ClientEstimateSytemTypeCE', dbcode: dbcode\r\n })\r\n }\r\n\r\n GetEstimateSystemTypeCEMaster() {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_EstimateSytemTypeCEMaster'\r\n })\r\n }\r\n\r\n GetSystemArea(id, viewtypeid = 1) {\r\n // 1040\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_AreaSystemAllCE2', estimateid: id, viewtypeid\r\n //Get_AreaSystemAllCE, Get_AreaSystemAll, Get_AreaSystemAllCE-2\r\n });\r\n }\r\n\r\n GetEstimatesSystemProgramDetailAll(id, modeid = 1) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_EstimatesSystemProgramDetail', systemid: id, modeid: modeid\r\n });\r\n }\r\n\r\n GetEstimatesSystemProgramInfoAll(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_EstimatesSystemProgramInfoAll', systemid: id\r\n });\r\n }\r\n\r\n Get_EstimatesSystemProgramInfoSeq(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_EstimatesSystemProgramInfoSeq', systemid: id\r\n });\r\n }\r\n \r\n Get_EstimatesSystemIOAll(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_EstimatesSystemIOAll', systemid: id, CR:true\r\n });\r\n }\r\n\r\n Get_ECOMMEstimatesSystemIOAll(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_ECOMMEstimatesSystemIOAll', systemid: id, CR:true\r\n });\r\n }\r\n\r\n GetEstimateAreaList(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'GetEstimateAreaList', estimateid: id\r\n });\r\n }\r\n\r\n GetEstimateAreaSystemInfo(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'GetEstimateAreaSystemInfoCE', systemid: id\r\n });\r\n }\r\n\r\n\r\n UpdateEstimateRevisionDetail(id,pointnumber, sched, tendlog, event, setpoint, co,os, appnotes, pgprefixed, dwgref, tag) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'update_EstimateRevisionDetailpg',\r\n pointnumber: pointnumber,\r\n pgprefixed: pgprefixed,\r\n sched: sched,\r\n trendlog: tendlog,\r\n event: event,\r\n setpoint: setpoint,\r\n co: co,\r\n os: os,\r\n id: id,\r\n appnotes: appnotes,\r\n dwgref: dwgref,\r\n tag: tag\r\n });\r\n }\r\n\r\n InsertEstimateProdAddObject(systemid, objids) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Insert_EstimateProdAddObjects', systemid: systemid, ObjectId: objids\r\n });\r\n }\r\n\r\n DeleteEstimateProdAddObject(systemid, objids) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Delete_EstimateProdAddObjects', systemid: systemid, ObjectId: objids\r\n });\r\n }\r\n\r\n GetControllerMasterData(systemid) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_ControllerMasterData', systemid: systemid\r\n });\r\n }\r\n\r\n GetScopeOfWorkSC(systemid, estimateid) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_SingleScopeOfWorkSC', systemid: systemid, estimateid:estimateid\r\n });\r\n }\r\n\r\n GetEstimateObjectReferences() {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_EstimateObjectReferences'\r\n });\r\n }\r\n\r\n GetMasterEstimateObjectReferences() {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_MasterEstimateObjectReferences'\r\n });\r\n }\r\n\r\n UpdateEstimateDetBACData(systemid, bacadd, macadd, rs485net1from, rs485net1to, rs485net2from, rs485net2to, cubebox, systemparentid) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Update_EstimateDetBACData',\r\n systemid: systemid,\r\n bacadd: bacadd,\r\n macadd: macadd,\r\n rs485net1from: rs485net1from,\r\n rs485net1to: rs485net1to,\r\n rs485net2from: rs485net2from,\r\n rs485net2to: rs485net2to,\r\n cubebox: cubebox,\r\n systemparentid: systemparentid\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\ndeclare const gapi: any;\r\ndeclare const google: any;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DriveserviceService {\r\n\r\n private clientId = '827292123788-fjve4jhkrq9cbbqrieo126no6chkqvde.apps.googleusercontent.com';\r\n private appId = 'steam-sequencer-149805';\r\n private apiKey = 'AIzaSyA1jBjL4b3Z6wdH2j5poqex7rt6zuZ0Acg';\r\n private scope = 'https://www.googleapis.com/auth/drive.file';\r\n\r\n // private clientId = '583745350364-deqjv8hvm0244uv131k10c1hovhaeqn0.apps.googleusercontent.com';\r\n // private appId = 'cube-test-341015';\r\n // private apiKey = 'AIzaSyDNGVN-OEgP9TVgvJmdlbXqgucykmY7A0k';\r\n\r\n private oauthAccessToken = null;\r\n private pickerApiLoaded = false;\r\n private pickerCallback = null;\r\n\r\n private pickerGlobal = null;\r\n\r\n private oAuthResult = null;\r\n\r\n public open(callback): void {\r\n this.pickerCallback = callback;\r\n // gapi.load('auth2', {'callback': this.onAuthApiLoad.bind(this)});\r\n // gapi.client.load('oauth2', 'v2', {'callback': this.onAuthApiLoad.bind(this)});\r\n gapi.load('auth', {'callback': this.onAuthApiLoad.bind(this)});\r\n gapi.load('picker', {'callback': this.onPickerApiLoad.bind(this)});\r\n }\r\n\r\n private onAuthApiLoad(): void {\r\n console.log(this.scope);\r\n // console.log(gapi.client.oauth2.userinfo.get())\r\n gapi.auth.authorize({\r\n 'client_id': this.clientId,\r\n 'scope': this.scope,\r\n 'immediate': false,\r\n }, this.handleAuthResult.bind(this));\r\n }\r\n\r\n private onPickerApiLoad(): void {\r\n this.pickerApiLoaded = true;\r\n // console.log('Picker Api Load');\r\n // this.createPicker();\r\n }\r\n\r\n private handleAuthResult(authResult): void {\r\n console.log(authResult);\r\n if (authResult && !authResult.error) {\r\n this.oauthAccessToken = authResult.access_token;\r\n console.log('Auth Result ');\r\n this.createPicker();\r\n }else if(authResult.error){\r\n console.log('Error ',authResult);\r\n this.pickerCallback(authResult);\r\n }\r\n }\r\n\r\n public closeModal(): void {\r\n console.log(this.pickerGlobal.isVisible())\r\n // this.pickerGlobal.setVisible(false);\r\n }\r\n\r\n private createPicker(): void {\r\n console.log('Creando Picker ')\r\n if (this.pickerApiLoaded && this.oauthAccessToken) {\r\n let view = new google.picker.View(google.picker.ViewId.DOCS);\r\n // Use DocsUploadView to upload documents to Google Drive.\r\n var uploadView = new google.picker.DocsUploadView();\r\n // var uploadView = new google.picker.DocsUploadView().setParent('1sVBXd4GXa_IaQKZSkvnDpR3Slq_OsFAL');\r\n \r\n let picker = new google.picker.PickerBuilder()\r\n // .enableFeature(google.picker.Feature.NAV_HIDDEN)\r\n // .enableFeature(google.picker.Feature.MULTISELECT_ENABLED)\r\n .setAppId(this.appId)\r\n // .setMaxItems(1)\r\n .setOAuthToken(this.oauthAccessToken)\r\n .addView(view)\r\n .addView(uploadView)\r\n // .addView(new google.picker.DocsUploadView())\r\n // .setDeveloperKey(this.apiKey)\r\n .setCallback(this.pickerCallback)\r\n .build();\r\n picker.setVisible(true);\r\n this.pickerGlobal = picker;\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppConfigService } from '../app-config.service.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EmployeesService {\r\n\r\n private baseurl = \"\";\r\n private apiroute = \"\";\r\n constructor(\r\n private http: HttpClient,\r\n private appSetting: AppConfigService,\r\n ) {\r\n this.baseurl = this.appSetting.apiBaseUrl;\r\n this.apiroute = '/FlexIntegration';\r\n }\r\n\r\n GetDepartments() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_Departments' });\r\n }\r\n\r\n Get_HumanResourcesAll() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_HumanResourcesAll' });\r\n }\r\n\r\n Get_EmployeePaytypeCE(id) {\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n method: 'Get_EmployeePaytypeCE',\r\n employeeid: id\r\n }\r\n );\r\n }\r\n\r\n Get_TimesheeTPaytype() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_TimesheeTPaytype' });\r\n }\r\n\r\n InsertUpdate_EmployeePaytypeCE(data) {\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n method: 'InsertUpdate_EmployeePaytypeCE',\r\n id: data.id,\r\n employeeid: data.employeeid,\r\n paytypeid: data.paytypeid,\r\n rate: data.rate,\r\n active: data.active, \r\n }\r\n );\r\n }\r\n\r\n\r\n GetJobCode() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_EmployeeCategoryAll' });\r\n }\r\n\r\n GetSupervisor() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_EmployeeListAll' });\r\n }\r\n\r\n GetEmploymentType() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_EmployeeType' });\r\n }\r\n\r\n InsertEmployee(firstname, lastname, employeenumber, active, email, mobilephone, emergencycontact, emergenycontactnumber, address, jobcode, departmentid, employmenttypeid, supervisorid, birthday, HireDate, TerminationDate) {\r\n console.log('Estoy en servicio ', birthday);\r\n\r\n let obj = {\r\n method: 'Insert_Employees',\r\n firstname: firstname,\r\n lastname: lastname,\r\n email: email,\r\n phomephone: mobilephone,\r\n mobilephone: mobilephone,\r\n departmentid: departmentid,\r\n employmenttypeid: employmenttypeid,\r\n supervisorid: supervisorid,\r\n emergencycontact: emergencycontact,\r\n ehomephone: emergenycontactnumber,\r\n // birthday: birthday,\r\n empnumber: employeenumber,\r\n jobcode: jobcode,\r\n address: address,\r\n active: active,\r\n // city: city,\r\n id: employeenumber,\r\n // state: state, \r\n // zip: zip,\r\n terminationdate:TerminationDate,\r\n hiredate: HireDate,\r\n }\r\n if (birthday !== '') {\r\n obj['birthday'] = birthday\r\n }\r\n console.log(obj);\r\n return this.http.post(this.baseurl + this.apiroute, obj)\r\n }\r\n\r\n GetAll() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_HumanResourcesAll' });\r\n }\r\n\r\n GetActive() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: 'Get_HumanResourcesAll', active:0 });\r\n }\r\n\r\n InsertProjectParticipantRoles(id,name, sort, description, active){\r\n return this.http.post(this.baseurl + this.apiroute, \r\n { method: 'InsertUpdate_ProjectParticipantRoles',\r\n id: id,\r\n name: name,\r\n sort: sort,\r\n description: description,\r\n active: active\r\n });\r\n }\r\n\r\n UpdateEmployee(firstname, lastname, email, active, mobilephone, emergencyContactNumber, emergencycontact, address, id, jobcode, departmentid, employmenttypeid, supervisorid, empnumber, birthdate, HireDate, TerminationDate, title, regionid) {\r\n let obj = {\r\n 'method': 'Update_Employees',\r\n firstname: firstname,\r\n lastname: lastname,\r\n email: email,\r\n phomephone: emergencyContactNumber,\r\n mobilephone: mobilephone,\r\n emergencycontact: emergencycontact,\r\n address: address,\r\n // city: '',\r\n // state: '', \r\n // zip: '',\r\n inactive: active,\r\n id: id,\r\n birthday: birthdate,\r\n empnumber: empnumber,\r\n listid: id,\r\n jobcode: jobcode,\r\n departmentid: departmentid,\r\n employeementtypeid: employmenttypeid,\r\n supervisorid: supervisorid,\r\n terminationdate:TerminationDate,\r\n hiredate: HireDate,\r\n title: title,\r\n regionid: regionid\r\n }\r\n console.log(obj)\r\n return this.http.post(this.baseurl + this.apiroute, obj)\r\n }\r\n\r\n Update_EmployeeSalaryType(form){\r\n console.log(form);\r\n return this.http.post(this.baseurl + this.apiroute, form);\r\n }\r\n\r\n Update_EmployeeSalary(form){\r\n console.log(form);\r\n return this.http.post(this.baseurl + this.apiroute, form);\r\n }\r\n\r\n GetProcedureParameter(spname) {\r\n let model = {\r\n method: \"GetProcedureXMLParameters\",\r\n procedurename: spname,\r\n };\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n //Documents\r\n\r\n GetProjectDocument(id) {\r\n return this.http.post(this.baseurl + '/ProjectDocument', { projectid: id })\r\n }\r\n\r\n UpdateProjectDocument(id, name) {\r\n return this.http.post(this.baseurl + '/ProjectDocument/InsertUpateSalesLead', { id: id, name: name })\r\n }\r\n\r\n ListDocumentType() {\r\n return this.http.get(this.baseurl + '/ProjectDocument/TypeDocument', {});\r\n }\r\n\r\n getTabsEditProject(){\r\n return this.http.post(this.baseurl + this.apiroute, {method: 'User_SubmodulesAllow ', internalmodule: 'EDITPROJECT'});\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 \"src/environments/environment\";\r\n\r\nimport { AppConfigService } from \"../app-config.service.service\";\r\n\r\n@Injectable({\r\n providedIn: \"root\",\r\n})\r\nexport class EstimateService {\r\n\r\n private BaseURI = \"\";//`${environment.apiUrl}`;\r\n apiroute = \"/FlexIntegration\";\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private appConfigService: AppConfigService\r\n ) {\r\n this.BaseURI = this.appConfigService.apiBaseUrl;\r\n }\r\n\r\n GetEstimatesFilter() {\r\n this.BaseURI = this.appConfigService.apiBaseUrl;\r\n return this.http.post(\r\n this.BaseURI + \"/Estimates/GetEstimatesFilter\",\r\n {}\r\n );\r\n }\r\n\r\n\r\n GetEstimates(obj) {\r\n const a = {\r\n pageindex: 1,\r\n pagesize: 20,\r\n estimateid: 0,\r\n projectname: \"\",\r\n categoryids: \"\",\r\n verticalmarketids: \"\",\r\n orderid: 0,\r\n statusids: \"\",\r\n };\r\n return this.http.post(this.BaseURI + \"/Estimates\", obj);\r\n }\r\n\r\n GetEstimateAreaSystemDetail(id) {\r\n let model = {\r\n method: \"GetEstimateAreaSystemDetailCE\",\r\n systemid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n } \r\n\r\n GetECOMMEstimateAreaSystemDetailCE(id) {\r\n let model = {\r\n method: \"GetECOMMEstimateAreaSystemDetailCE\",\r\n systemid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateAreaSystemDetailMaster(id) {\r\n let model = {\r\n method: \"GetEstimateAreaSystemDetailCEMaster\",\r\n systemid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateAreaSystemDetailwithOutPrice(id) {\r\n let model = {\r\n method: \"GetSystemDetailList\",\r\n systemid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateAreaSystemDetailwithServiceContract(id) {\r\n let model = {\r\n method: \"Get_EstimatesSystemDetailSC\",\r\n systemid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateValves(id) {\r\n let model = {\r\n method: \"Get_EstimateValves\",\r\n estimateid: id\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetModuleID(modulename) {\r\n let model = {\r\n method: \"Get_ModuleIdByModuleName\",\r\n modulename: modulename\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateSystemLibraryStartPageCE() {\r\n let model = {\r\n method: \"Get_EstimateSystemLibraryStartPageCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n GetEstimateDampers(id) {\r\n let model = {\r\n method: \"Get_EstimateDampers\",\r\n estimateid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateVAV(id) {\r\n let model = {\r\n method: \"Get_EstimateVAV\",\r\n estimateid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_Estimates_MaterialList(id) {\r\n let model = {\r\n method: \"Get_Estimates_MaterialList\",\r\n estimateid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n GetEstimateDfaultValues() {\r\n let model = {\r\n method: \"GetEstimateDfaultValues\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_Estimates_LaborSumary(id) {\r\n let model = {\r\n method: \"Get_Estimates_LaborSumary\",\r\n estimateid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimatesSC_LaborSumary(id) {\r\n let model = {\r\n method: \"Get_EstimatesSC_LaborSumary\",\r\n estimateid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_NeworkArea(id) {\r\n let model = {\r\n method: \"Get_EstimatesNetworkCE\",\r\n estimateid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_Estimate_ReportList(id) {\r\n let model = {\r\n method: \"Get_Estimate_ReportList\",\r\n estimateid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Get_SC_ReportList(id) {\r\n let model = {\r\n method: \"Get_SC_ReportList\",\r\n estimateid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Get_Estimate_ReportListCommissioning(id) {\r\n let model = {\r\n method: \"Get_Estimate_ReportList\",\r\n estimateid: id,\r\n treeid: 8,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateDocumentControl(estimateid, systemid) {\r\n let model = {\r\n method: \"Get_EstimateDocumentControl\",\r\n estimateid: estimateid,\r\n systemid: systemid\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateDocumentControlSsytem(estimateid, systemid) {\r\n let model = {\r\n method: \"Get_EstimateDocumentControlBySystem\",\r\n estimateid: estimateid,\r\n systemid: systemid\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n DeleteDocumentControl(id) {\r\n let model = {\r\n method: \"Delete_EstimateDocumentControl\",\r\n id: id\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_Taxs() {\r\n return this.http.post(this.BaseURI + \"/FlexIntegration\", {\r\n method: \"Get_Taxs\",\r\n });\r\n }\r\n\r\n Get_EstimatePrice_ReportListCE() {\r\n return this.http.post(this.BaseURI + \"/FlexIntegration\", {\r\n method: \"Get_EstimatePrice_ReportListCE\",\r\n });\r\n }\r\n\r\n Get_EstimatePriceSC_ReportListCE(estimateid) {\r\n return this.http.post(this.BaseURI + \"/FlexIntegration\", {\r\n method: \"Get_SC_ReportList\",\r\n estimateid:estimateid\r\n });\r\n }\r\n\r\n\r\n GetSystemArea(id, viewtypeid = 1) {\r\n return this.http.post(this.BaseURI + \"/FlexIntegration\", {\r\n method: \"Get_AreaSystemAllCE2\", // Get_AreaSystemAllCE2NyComponentsIds y Get_AreaSystemAllCE2\r\n estimateid: id,\r\n viewtypeid: viewtypeid\r\n //Get_AreaSystemAllCE, Get_AreaSystemAll\r\n });\r\n }\r\n\r\n GetSystemAreaClient(id, viewtypeid = 1, dbcode) {\r\n return this.http.post(this.BaseURI + \"/FlexIntegration\", {\r\n method: \"Get_ClientAreaSystemAllCE2\", // Get_AreaSystemAllCE2NyComponentsIds y Get_AreaSystemAllCE2\r\n estimateid: id,\r\n viewtypeid: viewtypeid,\r\n dbcode: dbcode\r\n //Get_AreaSystemAllCE, Get_AreaSystemAll\r\n });\r\n }\r\n\r\n GetSystemAreaMaster() {\r\n return this.http.post(this.BaseURI + \"/FlexIntegration\", {\r\n method: \"Get_MasterAreaSystemAllCE2\", // Get_AreaSystemAllCE2NyComponentsIds y Get_AreaSystemAllCE2\r\n // estimateid: id,\r\n // viewtypeid: viewtypeid,\r\n // dbcode: dbcode\r\n //Get_AreaSystemAllCE, Get_AreaSystemAll\r\n });\r\n }\r\n\r\n GetSystemAreaSpanded(id, viewtypeid = 1) {\r\n return this.http.post(this.BaseURI + \"/FlexIntegration\", {\r\n method: \"Get_AreaSystemAllCE-2CE\",\r\n estimateid: id,\r\n viewtypeid: viewtypeid\r\n //Get_AreaSystemAllCE, Get_AreaSystemAll\r\n });\r\n }\r\n\r\n GetSystemLibrary() {\r\n return this.http.post(this.BaseURI + \"/FlexIntegration\", {\r\n method: \"Get_EstimateSystemLibrary\"\r\n });\r\n }\r\n\r\n\r\n GetSystemArea2(id, viewtypeid = 1) {\r\n return this.http.post(this.BaseURI + \"/FlexIntegration\", {\r\n method: \"Get_AreaSystemAllCE\",\r\n estimateid: id,\r\n viewtypeid: viewtypeid\r\n //Get_AreaSystemAllCE, Get_AreaSystemAll\r\n });\r\n }\r\n\r\n Get_ProjectRegionID(estimateid) {\r\n let model = {\r\n method: \"Get_RegionsCE\",\r\n EstimateID: estimateid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetReportDynamic(spname, estimateid) {\r\n let model = {\r\n method: spname,\r\n estimateid: estimateid,\r\n };\r\n console.log(model);\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Update_EstimateNetwork(\r\n name,\r\n systemid,\r\n bacadd,\r\n pnlpower,\r\n rs485net1from,\r\n rs485net1to,\r\n intdevicetype\r\n ) {\r\n let model = {\r\n method: \"Update_EstimateNetwork\",\r\n systemid: systemid,\r\n bacadd: bacadd,\r\n pnlpower: pnlpower,\r\n rs485net1from: rs485net1from,\r\n rs485net1to: rs485net1to,\r\n intdevicetype: intdevicetype,\r\n sysname: name == \"\" ? null : name\r\n };\r\n\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Update_EstimatesProjectID(estimateid, regionid) {\r\n let model = {\r\n method: \"Update_EstimatesProjectID\",\r\n EstimateID: estimateid,\r\n RegionID: regionid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Reset_ProductivityParts(estimateid) {\r\n let model = {\r\n method: \"Reset_ProductivityParts \",\r\n EstimateID: estimateid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Update_ProductivityParts(estimateid) {\r\n let model = {\r\n method: \"Update_ProductivityParts\",\r\n EstimateID: estimateid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Update_LaborParts(estimateid) {\r\n let model = {\r\n method: \"Update_LaborParts\",\r\n EstimateID: estimateid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n Save_EstmimateMaterialRequest(\r\n id,\r\n estimateid,\r\n needbydate,\r\n userid,\r\n notes,\r\n systemname,\r\n partid,\r\n detailid\r\n ) {\r\n let model = {\r\n method: \"Save_EstmimateMaterialRequest\",\r\n estimateid: estimateid,\r\n needbydate: needbydate,\r\n // userid: userid,\r\n notes: notes,\r\n systemname: systemname,\r\n id: id,\r\n partid: partid,\r\n detailid: detailid\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Insert_PurchaseOrdersformEstimating(\r\n estimateid,\r\n detailid,\r\n vendorid\r\n ) {\r\n let model = {\r\n method: \"Insert_PurchaseOrdersformEstimating\",\r\n estimateid: estimateid,\r\n detailid: detailid,\r\n vendorid: vendorid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateRevision(id) {\r\n let model = {\r\n method: \"Get_EstimateRevision\",\r\n estimateid: id,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateInfo(id, typeid) {\r\n let model = {\r\n method: \"GetEstimateInfoCE2\",\r\n estimateid: id,\r\n calctypid: typeid\r\n }; //GetEstimateInfoCE2, GetEstimateInfoCE, GetEstimateInfo,\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateInfoSC(id, typeid) {\r\n let model = {\r\n method: \"GetEstimateInfoServiceAgreement\",\r\n estimateid: id,\r\n calctypid: typeid\r\n }; //GetEstimateInfoCE2, GetEstimateInfoCE, GetEstimateInfo,\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateExpenses(id) {\r\n let model = {\r\n method: \"Get_EstimateExpenses\",\r\n estimateid: id,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n \r\n\r\n Insert_EstimateFilePathtoUser(userid, filepath) {\r\n let model = {\r\n method: \"Insert_EstimateFilePathtoUser\",\r\n // userid: userid,\r\n filepath: filepath\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimatePriceSummary(id, typeid) {\r\n let model = {\r\n method: \"Get_EstimatePriceSummaryCE-2\", //Get_EstimatePriceSummaryCE-2, Get_EstimatePriceSummaryCE\r\n estimateid: id,\r\n calctypid: typeid\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimatePriceSummarySC(id, typeid) {\r\n let model = {\r\n method: \"Get_EstimatePriceSummaryServAgreement\", //Get_EstimatePriceSummaryCE-2, Get_EstimatePriceSummaryCE\r\n estimateid: id,\r\n calctypid: typeid\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Upadte_EstimateAreaSystemSOPCE(systemid, sop) {\r\n let model = {\r\n method: \"Upadte_EstimateAreaSystemSOPCE\",\r\n systemid: systemid,\r\n sop: sop\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Upadte_EstimateAreaSystemCE(\r\n id,\r\n systemid,\r\n sort,\r\n areaname,\r\n systemname,\r\n qty,\r\n systemtype,\r\n inactive,\r\n deleted,\r\n scopeofwork,\r\n sop,\r\n excludefromsearch,\r\n controldwgname,\r\n controldwgimg,\r\n tagtext,\r\n tagnum,\r\n description\r\n ) {\r\n let model = {\r\n method: \"Upadte_EstimateAreaSystemCE-1\",\r\n id: id,\r\n systemid: systemid,\r\n sort: sort,\r\n areaname: areaname,\r\n systemname: systemname,\r\n qty: qty,\r\n systemtype: systemtype,\r\n inactive: inactive,\r\n deleted: deleted,\r\n scopeofwork: scopeofwork,\r\n sop: sop,\r\n excludefromsearch: excludefromsearch,\r\n controldwgname: controldwgname,\r\n controldwgimg: controldwgimg == null ? \"null\" : controldwgimg,\r\n tagtext: tagtext,\r\n tagnum: tagnum,\r\n description: description,\r\n };\r\n console.log(model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Upadte_EstimateAreaSystemCEAreaid(\r\n id,\r\n systemid,\r\n sort,\r\n areaname,\r\n areaid,\r\n systemname,\r\n qty,\r\n systemtype,\r\n inactive,\r\n deleted,\r\n scopeofwork,\r\n sop,\r\n excludefromsearch,\r\n controldwgname,\r\n controldwgimg,\r\n tagtext,\r\n tagnum,\r\n description\r\n ) {\r\n let model = {\r\n method: \"Upadte_EstimateAreaSystemCESingle\",\r\n id: id,\r\n systemid: systemid,\r\n sort: sort,\r\n areaname: areaname,\r\n areaid:areaid,\r\n systemname: systemname,\r\n qty: qty,\r\n systemtype: systemtype,\r\n inactive: inactive,\r\n deleted: deleted,\r\n scopeofwork: scopeofwork,\r\n sop: sop,\r\n excludefromsearch: excludefromsearch,\r\n controldwgname: controldwgname,\r\n controldwgimg: controldwgimg == null ? \"null\" : controldwgimg,\r\n tagtext: tagtext,\r\n tagnum: tagnum,\r\n description: description,\r\n };\r\n console.log(model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateAreaSystemDetailEditMultCE(systemid, detailid) {\r\n let model = {\r\n method: \"GetEstimateAreaSystemDetailEditMultCE-1\",\r\n systemid: systemid,\r\n detailid: detailid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetECOMMEstimateAreaSystemDetailEditMultCE(systemid, detailid) {\r\n let model = {\r\n method: \"GetECOMMEstimateAreaSystemDetailEditMultCE-1\",\r\n systemid: systemid,\r\n detailid: detailid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateSCAreaSystemDetailEditMultCE(systemid, detailid) {\r\n let model = {\r\n method: \"GetEstimateAreaSystemDetailEditMultServ\",\r\n systemid: systemid,\r\n detailid: detailid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateAreaSystemInfoCE(id) {\r\n let model = {\r\n method: \"GetEstimateAreaSystemInfoMultCE\",\r\n systemid: id,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n updateEstimateRevisionAreaSystemDetailCE(\r\n id,\r\n notes,\r\n systemid,\r\n partid,\r\n partcost,\r\n applicationnotes,\r\n applicationnotes1,\r\n applicationnotes2,\r\n qty,\r\n tag,\r\n pointnumber,\r\n deleted,\r\n punique,\r\n pgprefixed,\r\n pointtypeid\r\n ) {\r\n let model = {\r\n method: \"update_EstimateRevisionAreaSystemDetailCE\",\r\n id: id,\r\n notes: notes,\r\n systemid: systemid,\r\n partid: partid,\r\n partcost: partcost,\r\n applicationnotes: applicationnotes,\r\n applicationnotes1: applicationnotes1,\r\n applicationnotes2: applicationnotes2,\r\n qty: qty,\r\n tag: tag,\r\n pointnumber: pointnumber,\r\n deleted: deleted,\r\n punique: punique,\r\n pgprefixed: pgprefixed,\r\n pointtypeid: pointtypeid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n update_ECOMMEstimateRevisionAreaSystemDetailCE(\r\n id,\r\n notes,\r\n systemid,\r\n partid,\r\n partcost,\r\n applicationnotes,\r\n applicationnotes1,\r\n applicationnotes2,\r\n qty,\r\n tag,\r\n pointnumber,\r\n deleted,\r\n punique,\r\n pgprefixed,\r\n pointtypeid\r\n ) {\r\n let model = {\r\n method: \"update_ECOMMEstimateRevisionAreaSystemDetailCE\",\r\n id: id,\r\n notes: notes,\r\n systemid: systemid,\r\n partid: partid,\r\n partcost: partcost,\r\n applicationnotes: applicationnotes,\r\n applicationnotes1: applicationnotes1,\r\n applicationnotes2: applicationnotes2,\r\n qty: qty,\r\n tag: tag,\r\n pointnumber: pointnumber,\r\n deleted: deleted,\r\n punique: punique,\r\n pgprefixed: pgprefixed,\r\n pointtypeid: pointtypeid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n updateEstimateRevisionAreaSystemDetailCE2(\r\n id,\r\n notes,\r\n systemid,\r\n partid,\r\n partcost,\r\n applicationnotes,\r\n applicationnotes1,\r\n applicationnotes2,\r\n qty,\r\n tag,\r\n pointnumber,\r\n deleted,\r\n punique,\r\n pgprefixed,\r\n pointtypeid\r\n ) {\r\n let model = {\r\n method: \"update_EstimateRevisionAreaSystemDetail2\",\r\n id: id,\r\n notes: notes,\r\n systemid: systemid,\r\n partid: partid,\r\n partcost: partcost,\r\n applicationnotes: applicationnotes,\r\n applicationnotes1: applicationnotes1,\r\n applicationnotes2: applicationnotes2,\r\n qty: qty,\r\n tag: tag,\r\n pointnumber: pointnumber,\r\n deleted: deleted,\r\n punique: punique,\r\n pgprefixed: pgprefixed,\r\n pointtypeid: pointtypeid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n updateEstimateRevisionAreaSystemDetailCEFactor(\r\n id,\r\n notes,\r\n systemid,\r\n partid,\r\n partcost,\r\n applicationnotes,\r\n applicationnotes1,\r\n applicationnotes2,\r\n qty,\r\n tag,\r\n pointnumber,\r\n deleted,\r\n punique,\r\n pgprefixed,\r\n pointtypeid,\r\n QtyFactor\r\n ) {\r\n let model = {\r\n method: \"update_EstimateRevisionAreaSystemDetailCE\",\r\n id: id,\r\n notes: notes,\r\n systemid: systemid,\r\n partid: partid,\r\n partcost: partcost,\r\n applicationnotes: applicationnotes,\r\n applicationnotes1: applicationnotes1,\r\n applicationnotes2: applicationnotes2,\r\n qty: qty,\r\n tag: tag,\r\n pointnumber: pointnumber,\r\n deleted: deleted,\r\n punique: punique,\r\n pgprefixed: pgprefixed,\r\n pointtypeid: pointtypeid,\r\n qtyfactor:QtyFactor\r\n };\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n updateEstimateRevisionAreaSystemDetailCEFactorWithIO(\r\n id,\r\n notes,\r\n systemid,\r\n partid,\r\n partcost,\r\n applicationnotes,\r\n applicationnotes1,\r\n applicationnotes2,\r\n qty,\r\n tag,\r\n pointnumber,\r\n deleted,\r\n punique,\r\n pgprefixed,\r\n pointtypeid,\r\n QtyFactor,\r\n iowiredto\r\n ) {\r\n let model = {\r\n method: \"update_EstimateRevisionAreaSystemDetailCE\",\r\n id: id,\r\n notes: notes,\r\n systemid: systemid,\r\n partid: partid,\r\n partcost: partcost,\r\n applicationnotes: applicationnotes,\r\n applicationnotes1: applicationnotes1,\r\n applicationnotes2: applicationnotes2,\r\n qty: qty,\r\n tag: tag,\r\n pointnumber: pointnumber,\r\n deleted: deleted,\r\n punique: punique,\r\n pgprefixed: pgprefixed,\r\n pointtypeid: pointtypeid,\r\n qtyfactor:QtyFactor,\r\n iowiredto:iowiredto\r\n };\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n updateEditMultiplePartsSC(\r\n id,\r\n notes,\r\n systemid,\r\n partid,\r\n partcost,\r\n applicationnotes,\r\n applicationnotes1,\r\n applicationnotes2,\r\n qty,\r\n tag,\r\n pointnumber,\r\n deleted,\r\n punique,\r\n pgprefixed,\r\n pointtypeid,\r\n QtyFactor,\r\n iowiredto\r\n ) {\r\n let model = {\r\n method: \"Insert_EstimateAreaSystemDetailsSingleSC\",\r\n id: id,\r\n notes: notes,\r\n systemid: systemid,\r\n partid: partid,\r\n partcost: partcost,\r\n qty: qty,\r\n punique: punique == true ? 1 : 0,\r\n qtyfactor:QtyFactor,\r\n iowiredto:iowiredto\r\n };\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n\r\n Get_Estimates_findandreplace(id) {\r\n let model = {\r\n method: \"Get_Estimates_findandreplace\",\r\n estimateid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_AccParts(val) {\r\n let model = {\r\n method: \"Get_AccParts\",\r\n partnamefilter: val,\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_AccPartsNew(val) {\r\n let model = {\r\n method: \"Get_AccParts\",\r\n partnamefilter: val,\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_LaborParts(val) {\r\n let model = {\r\n method: \"Get_LaborParts\",\r\n partnamefilter: val,\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_AccPartsMaster(val) {\r\n let model = {\r\n method: \"Get_AccPartsMaster\",\r\n partnamefilter: val,\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_AccPartsKit(val) {\r\n let model = {\r\n method: \"Get_AccPartsKit\",\r\n partnamefilter: val,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_AccPartsTop(val) {\r\n let model = {\r\n method: \"Get_AccPartsTop\",\r\n partnamefilter: val,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_AccPartsTopMaster(val) {\r\n let model = {\r\n method: \"Get_AccPartsTopMaster\",\r\n partnamefilter: val,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateListNavAll(val, estimateID = null) {\r\n let model = {\r\n method: \"Get_EstimateListNavAll\",\r\n astimateName: val,\r\n estimateID: estimateID\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateListShop(val, estimateID = null) {\r\n let model = {\r\n method: \"Get_EstimateListNavAll\",\r\n astimateName: val,\r\n estimateID: estimateID\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateListNavAllClient(val, estimateID = null, dbcode) {\r\n console.log(\"🚀 ~ EstimateService ~ Get_EstimateListNavAllClient ~ val:\", val)\r\n console.log(\"🚀 ~ EstimateService ~ Get_EstimateListNavAllClient ~ estimateID:\", estimateID)\r\n console.log(\"🚀 ~ EstimateService ~ Get_EstimateListNavAllClient ~ dbcode:\", dbcode)\r\n let model = {\r\n method: \"Get_ClientEstimateListNavAll\",\r\n astimateName: val,\r\n estimateID: estimateID,\r\n dbcode: dbcode\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateListNavAllMaster(val, estimateID = null) {\r\n let model = {\r\n method: \"Get_EstimateListNavAllMaster\",\r\n astimateName: val,\r\n estimateID: estimateID\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateListCubeBox(val, estimateID = null) {\r\n let model = {\r\n method: \"Get_CubeBox_EstimateList\",\r\n astimateName: val,\r\n estimateID: estimateID\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n\r\n Insert_CreateSOVfroestimateCE(val) {\r\n let model = {\r\n method: \"Insert_CreateSOVfroestimateCE\",\r\n estimateid: val,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n\r\n Insert_CreatesowfroestimateCE(id) {\r\n let model = {\r\n method: \"Insert_CreatesowfroestimateCE\",\r\n estimateid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Update_EstimatePartCostCE(id, detailid) {\r\n let model = {\r\n method: \"Update_EstimatePartCostCE\",\r\n estimateid: id,\r\n detailid: detailid\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Update_EstimatePartCostSC(id, detailid) {\r\n let model = {\r\n method: \"UpdateServiceContractSystemDetailCurrentCost\",\r\n estimateid: id,\r\n detailid: detailid\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Update_EstimateComponentsCE(id) {\r\n let model = {\r\n method: \"Update_EstimateComponentsCE\",\r\n estimateid: id,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n UpadteEstimatePartFindandReplaceCE(estimateid, tofind, toreplace, detailid) {\r\n let model = {\r\n method: \"UpadteEstimatePartFindandReplaceCE\",\r\n estimateid: estimateid,\r\n parttofindid: tofind,\r\n parttoreplaceid: toreplace,\r\n detailid: detailid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateAreaSystemComponentsCE(systemid) {\r\n let model = {\r\n method: \"GetEstimateAreaSystemComponentsCE\",\r\n systemid: systemid,\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEcomAreaSystemComponentsCE(systemid) {\r\n let model = {\r\n method: \"GetEcomAreaSystemComponentsCE\",\r\n systemid: systemid,\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateAreaSystemComponentsCEVisio(systemid) {\r\n let model = {\r\n method: \"GetEstimateAreaSystemComponentsCEDiagram\",\r\n systemid: systemid,\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateAreaSystemComponentsCEDiagram_SCV2(systemid) {\r\n let model = {\r\n method: \"GetEstimateAreaSystemComponentsCEDiagram_SCV2\",\r\n systemid: systemid,\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetECOMMEstimateAreaSystemComponentsCEDiagram_SCV2(systemid) {\r\n let model = {\r\n method: \"GetECOMMEstimateAreaSystemComponentsCEDiagram_SCV2\",\r\n systemid: systemid,\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetEstimateAreaSystemComponentsCENewTag(systemid) {\r\n let model = {\r\n method: \"GetEstimateAreaSystemComponentsCE_SCV2\",\r\n systemid: systemid,\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetECOMMEstimateAreaSystemComponentsCE_SCV2(systemid) {\r\n let model = {\r\n method: \"GetECOMMEstimateAreaSystemComponentsCE_SCV2\",\r\n systemid: systemid,\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Update_EstmateSVG(ids, typeid) {\r\n let model = {\r\n method: \"Update_EstmateSVG\",\r\n ids: ids,\r\n typeid: typeid\r\n };\r\n\r\n console.log(model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateLibComponentsTreeCE() {\r\n let model = {\r\n method: \"Get_EstimateLibComponentsTreeCE\",\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateLibComponentsTreeCECR() {\r\n let model = {\r\n method: \"Get_EcomComponentsTreeCE\",\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateLibComponentsTreeCE2() {\r\n let model = {\r\n method: \"Get_EstimateLibComponentsTreeCEWithMaster\",\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateLibComponentsTreeCE2Client(dbcode) {\r\n let model = {\r\n method: \"Get_ClientEstimateLibComponentsTree\",\r\n dbcode: dbcode\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Get_EstimateLibComponentsTreeCEMaster(active = 0) {\r\n let model = {\r\n method: \"Get_EstimateLibComponentsTreeCEMaster\",\r\n all: active\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n } \r\n\r\n \r\n\r\n Get_EstimateLibComponentsTypesTreeCE() {\r\n let model = {\r\n method: \"Get_EstimateLibComponentsTypesTreeCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n } \r\n\r\n Get_EstimateLibComponentsMasterMenuCE() {\r\n let model = {\r\n method: \"Get_EstimateLibComponentsMasterMenuCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateSystemComponentDetailsCE(systemid) {\r\n let model = {\r\n method: \"Get_EstimateSystemComponentDetailsCE\",\r\n systemid: systemid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EcomSystemComponentDetailsCE(systemid) {\r\n let model = {\r\n method: \"Get_EcomSystemComponentDetailsCE\",\r\n systemid: systemid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Get_EstimateSystemComponentDetailsCE_SCV2(systemid) {\r\n let model = {\r\n method: \"Get_EstimateSystemComponentDetailsCE_SCV2\",\r\n systemid: systemid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_ECOMMEstimateSystemComponentDetailsCE_SCV2(systemid) {\r\n let model = {\r\n method: \"Get_ECOMMEstimateSystemComponentDetailsCE_SCV2\",\r\n systemid: systemid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Insert_EstimateRevisionAreaSystemDetailCE(systemid, componentids) {\r\n let model = {\r\n method: \"Insert_EstimateRevisionAreaSystemDetail\",\r\n systemid: systemid + \"-1\",\r\n componentids: componentids,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Insert_EstimateRevisionAreaSystemDetailCE2(systemid, componentids) {\r\n console.log(componentids)\r\n\r\n const arrayOriginal = componentids.split(',');\r\n const arrayUnico = [];\r\n\r\n for (let i = 0; i < arrayOriginal.length; i++) {\r\n if (!arrayUnico.includes(arrayOriginal[i])) {\r\n arrayUnico.push(arrayOriginal[i]);\r\n }\r\n }\r\n\r\n const stringUnico = arrayUnico.join(',');\r\n\r\n console.log(stringUnico)\r\n // let data\r\n let model = {\r\n method: \"Update_EstimateRevisionAreaSystemDetailFromWebDiagram\",\r\n systemid: systemid + \"-1\",\r\n componentids: stringUnico,\r\n };\r\n\r\n console.log(\"dataFinal\",model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Insert_EstimateRevisionAreaSystemDetailCE2_SCV2(systemid, componentids) {\r\n console.log(componentids)\r\n\r\n const arrayOriginal = componentids.split(',');\r\n const arrayUnico = [];\r\n\r\n for (let i = 0; i < arrayOriginal.length; i++) {\r\n if (!arrayUnico.includes(arrayOriginal[i])) {\r\n arrayUnico.push(arrayOriginal[i]);\r\n }\r\n }\r\n\r\n const stringUnico = arrayUnico.join(',');\r\n\r\n console.log(stringUnico)\r\n // let data\r\n let model = {\r\n method: \"Update_EstimateRevisionAreaSystemDetailFromWebDiagram_SCV2\",\r\n systemid: systemid + \"-1\",\r\n componentids: stringUnico,\r\n };\r\n\r\n console.log(\"dataFinal\",model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Update_ECOMM_EstimateRevisionAreaSystemDetailFromWebDiagram_SCV2(systemid, componentids) {\r\n console.log(componentids)\r\n\r\n const arrayOriginal = componentids.split(',');\r\n const arrayUnico = [];\r\n\r\n for (let i = 0; i < arrayOriginal.length; i++) {\r\n if (!arrayUnico.includes(arrayOriginal[i])) {\r\n arrayUnico.push(arrayOriginal[i]);\r\n }\r\n }\r\n\r\n const stringUnico = arrayUnico.join(',');\r\n\r\n console.log(stringUnico)\r\n // let data\r\n let model = {\r\n method: \"Update_ECOMM_EstimateRevisionAreaSystemDetailFromWebDiagram_SCV2\",\r\n systemid: systemid + \"-1\",\r\n componentids: stringUnico,\r\n };\r\n\r\n console.log(\"dataFinal\",model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Insert_EstimateRevisionAreaSystemDetailCE3(systemid, componentids) {\r\n let model = {\r\n method: \"insert_EstimateRevisionAreaSystemDetail2\",\r\n systemid: systemid + \"-1\",\r\n componentids: componentids,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Insert_ECOMMEstimateRevisionAreaSystemDetail2(systemid, componentids) {\r\n let model = {\r\n method: \"Insert_ECOMMEstimateRevisionAreaSystemDetail2\",\r\n systemid: systemid + \"-1\",\r\n componentids: componentids,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n insert_EcomRevisionAreaSystemDetail2(systemid, componentids) {\r\n let model = {\r\n method: \"insert_EcomRevisionAreaSystemDetail2\",\r\n systemid: systemid + \"-1\",\r\n componentids: componentids,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n \r\n\r\n Delete_EstimateSystemComponentCE(systemid, componentids, instatid) {\r\n let model = {\r\n method: \"Delete_EstimateSystemComponentCE\",\r\n systemid: systemid,\r\n componentid: componentids,\r\n instatid: instatid,\r\n };\r\n\r\n console.log(model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n DeletEcomSystemComponentCE(systemid, componentids, instatid) {\r\n let model = {\r\n method: \"DeletEcomSystemComponentCE\",\r\n systemid: systemid,\r\n componentid: componentids,\r\n instatid: instatid,\r\n };\r\n\r\n console.log(model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Insert_EstimateCreateNewSystemCE(\r\n id,\r\n systemid,\r\n sort,\r\n areaname,\r\n systemname,\r\n qty,\r\n systemtype,\r\n inactive,\r\n deleted,\r\n scopeofwork,\r\n sop,\r\n excludefromsearch,\r\n controldwgname,\r\n controldwgimg,\r\n tagtext,\r\n tagnum,\r\n description\r\n ) {\r\n let model = {\r\n method: \"Insert_EstimateCreateNewSystemCE\",\r\n id: id,\r\n systemid: systemid,\r\n sort: sort,\r\n areaname: areaname,\r\n systemname: systemname,\r\n qty: qty,\r\n systemtype: systemtype,\r\n inactive: inactive,\r\n deleted: deleted,\r\n scopeofwork: scopeofwork,\r\n sop: sop,\r\n excludefromsearch: excludefromsearch,\r\n controldwgname: controldwgname,\r\n controldwgimg: controldwgimg,\r\n tagtext: tagtext,\r\n tagnum: tagnum,\r\n description: description,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Insert_EstimateAreaCE(estimateid, name, id = 0, sort, inactive) {\r\n let model = {\r\n method: \"Insert_EstimateAreaCE\",\r\n estimateid: estimateid,\r\n name: name,\r\n id: id,\r\n sort: sort,\r\n inactive: !inactive\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_Estimates_MaterialListVendor(estimateid) {\r\n let model = {\r\n method: \"Get_Estimates_MaterialListVendor\",\r\n estimateid: estimateid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Get_EstimateSystemLibrary(\r\n systemid,\r\n systemtypeID,\r\n partid,\r\n verticalmarketid,\r\n inputappnotes,\r\n islibrary,\r\n projectname,\r\n systemname,\r\n projectbidstatusid,\r\n outputappnotes,\r\n tagids,\r\n designerids,\r\n estimateid\r\n ) {\r\n let model = {\r\n method: \"Get_EstimateSystemLibraryTreeCE\",\r\n // Get_EstimateSystemLibraryTreeCE, Get_EstimateSystemLibraryCE\r\n systemid: systemid,\r\n systemtypeID: systemtypeID,\r\n partid: partid,\r\n verticalmarketid: verticalmarketid,\r\n inputappnotes: inputappnotes,\r\n islibrary: islibrary,\r\n projectname: projectname,\r\n systemname: systemname,\r\n projectbidstatusid: projectbidstatusid,\r\n outputappnotes: outputappnotes,\r\n tagids: tagids,\r\n designerids: designerids,\r\n estimateid: estimateid,\r\n\r\n // \"serviceid\": 0,\r\n // \"siteid\": 2976,\r\n // \"requestedbyid\": 1,\r\n // \"customerpo\": \"new test in DB\",\r\n // \"requestdate\": \"2017-11-16T08:00:00-05:00\",\r\n // \"callahead\": 0,\r\n // \"serviceconfirmed\": 0,\r\n // \"priorityid\": 2,\r\n // \"projectid\": 1670,\r\n // \"servicetype\": 5,\r\n // \"servicecategoryid\": 1,\r\n // \"userid\": 1,\r\n // \"resources\": 1,\r\n // \"serviceestimatedhours\": 1,\r\n // \"scheduledate\": \"2017-11-16T08:00:00-05:00\",\r\n // \"statusid\": 1,\r\n // \"reasonforservice\": \"test in DB\"\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateDesignerList() {\r\n let model = {\r\n method: \"Get_EstimateDesignerList\",\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n DuplicateSystemSingle(areaid, systemid) {\r\n let model = {\r\n method: \"DuplicateSystemSingle\",\r\n areaid: areaid,\r\n systemid: systemid,\r\n };\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n DuplicateSystemSingleNetwork(areaid, systemid) {\r\n let model = {\r\n method: \"DuplicateSystemSingle_Net\",\r\n systemid: systemid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n ReplicateeEstimateSystems(systemid, totalsystem) {\r\n let model = {\r\n method: \"ReplicateeEstimateSystems\",\r\n totalsystem: totalsystem,\r\n systemid: systemid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateScheduleOfValuesCE(estimateid) {\r\n let model = {\r\n method: \"Get_EstimateScheduleOfValuesCE\",\r\n estimateid: estimateid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstDrawingList(estimateid) {\r\n let model = {\r\n method: \"Get_EstDrawingList\",\r\n estimateid: estimateid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_UserFilePath(userid) {\r\n let model = {\r\n method: \"Get_UserFilePath\",\r\n // userid: userid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_GetDocumentTypesCE() {\r\n let model = {\r\n method: \"Get_GetDocumentTypesCE\",\r\n // userid: userid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n UpdateDrwingList(\r\n id,\r\n estimateid,\r\n pagetitle,\r\n pagerevision,\r\n pageindex,\r\n pagedrawingnumber,\r\n pageheader,\r\n pagesource,\r\n pagesourcetype,\r\n pageactive,\r\n pagesourcename,\r\n pagesourcesystemname,\r\n pagesourcepath,\r\n drawingtypeid\r\n ) {\r\n let model = {\r\n method: \"UpdateDrwingList\",\r\n id: id,\r\n estimateid: estimateid,\r\n pagetitle: pagetitle,\r\n pagerevision: pagerevision,\r\n pageindex: pageindex,\r\n pagedrawingnumber: pagedrawingnumber,\r\n pageheader: pageheader,\r\n pagesource: pagesource,\r\n pagesourcetype: pagesourcetype,\r\n pageactive: pageactive,\r\n pagesourcename: pagesourcename,\r\n pagesourcesystemname: pagesourcesystemname,\r\n pagesourcepath: pagesourcepath,\r\n drawingtypeid: drawingtypeid\r\n };\r\n\r\n console.log(model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n UpdateEstimatesInfo(\r\n EstimateID,\r\n ProjectID,\r\n EstDate,\r\n ProfitMargin,\r\n OverHead,\r\n TaxID,\r\n LaborRisk,\r\n Freight,\r\n Warranty,\r\n RegionID,\r\n NotForConstruction,\r\n estimatename\r\n ) {\r\n let model = {\r\n method: \"Update_Estimates\",\r\n EstimateID: EstimateID,\r\n ProjectID: ProjectID,\r\n EstDate: EstDate,\r\n ProfitMargin: ProfitMargin,\r\n OverHead: OverHead,\r\n TaxID: TaxID,\r\n LaborRisk: LaborRisk,\r\n Freight: Freight,\r\n Warranty: Warranty,\r\n RegionID: RegionID,\r\n NotForConstruction: NotForConstruction,\r\n EstimateName: estimatename\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n UpdateEstimatesInfoSC(\r\n EstimateID,\r\n ProjectID,\r\n EstDate,\r\n ProfitMargin,\r\n OverHead,\r\n TaxID,\r\n LaborRisk,\r\n Freight,\r\n Warranty,\r\n RegionID,\r\n NotForConstruction,\r\n estimatename,\r\n filename\r\n ) {\r\n let model = {\r\n method: \"Update_EstimatesService\",\r\n EstimateID: EstimateID,\r\n ProjectID: ProjectID,\r\n EstDate: EstDate,\r\n ProfitMargin: ProfitMargin,\r\n OverHead: OverHead,\r\n TaxID: TaxID,\r\n LaborRisk: LaborRisk,\r\n Freight: Freight,\r\n Warranty: Warranty,\r\n RegionID: RegionID,\r\n NotForConstruction: NotForConstruction,\r\n EstimateName: estimatename,\r\n siteimage:filename\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n\r\n GetUpdateEstimateExpensive(\r\n id, estid, expenseid, expenseqty, expenseamount, expenseprofit\r\n ) {\r\n let model = {\r\n method: \"Get_UpdateEstimateExpensive\",\r\n id: id,\r\n estid: estid,\r\n expenseid: expenseid,\r\n expenseqty: expenseqty,\r\n expenseamount: expenseamount,\r\n expenseprofit: expenseprofit,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetUpdateEstimateExpensiveNew(\r\n id, estid, expenseid, expenseqty, expenseamount, expenseprofit, expensedescription\r\n ) {\r\n let model = {\r\n method: \"Get_UpdateEstimateExpensive\",\r\n id: id,\r\n estid: estid,\r\n expenseid: expenseid,\r\n expenseqty: expenseqty,\r\n expenseamount: expenseamount,\r\n expenseprofit: expenseprofit,\r\n expensedescription:expensedescription\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Update_EstimatesSellPrice(estimateid, price, typeid) {\r\n let model = {\r\n method: \"Update_EstimatesSellPrice\",\r\n estid: estimateid,\r\n estprice: price,\r\n calctypid: typeid\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Update_EstimatesSellPriceNew(estimateid, price, typeid) {\r\n let model = {\r\n method: \"Update_EstimatesSellPrice2\",\r\n estid: estimateid,\r\n estprice: price,\r\n calctypid: typeid\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n InsertCreateSOVfroestimateCE(\r\n estimateid, userid\r\n ) {\r\n let model = {\r\n method: \"Get_UpdateEstimateExpensive\",\r\n estimateid: estimateid,\r\n // userid: userid,\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n InsertEstimate(projectid, labor, freigt, warranty, overhead, proffitmargin, createdby) {\r\n let model = {\r\n method: \"Insert_Estimate\",\r\n projectid: projectid,\r\n // userid: userid,\r\n typeid: 0, // Porque ya el proyecto se crea desde el frontend\r\n labor: labor,\r\n freigt: freigt,\r\n warranty: warranty,\r\n overhead: overhead,\r\n proffitmargin: proffitmargin,\r\n createdby: createdby,\r\n };\r\n\r\n console.log(model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n InsertEstimateWithTax(projectid, labor, freigt, warranty, overhead, proffitmargin, createdby,taxid, regionid) {\r\n let model = {\r\n method: \"Insert_Estimate\",\r\n projectid: projectid,\r\n // userid: userid,\r\n typeid: 0, // Porque ya el proyecto se crea desde el frontend\r\n laborRisk: labor,\r\n freigt: freigt,\r\n warranty: warranty,\r\n overhead: overhead,\r\n proffitmargin: proffitmargin,\r\n createdby: createdby,\r\n taxid:taxid,\r\n regionid:regionid\r\n };\r\n\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Upatade_EstimateLaborSummaryCE(id, active, partcost, partid, pointtypeid, pointype, detailqty, systemqty, punique, systemid, systemSort, detailid,) {\r\n let model = {\r\n method: \"Upatade_EstimateLaborSummaryCE\",\r\n id: id,\r\n active: active,\r\n partcost: partcost,\r\n partid: partid,\r\n pointtypeid: pointtypeid,\r\n pointype: pointype,\r\n detailqty: detailqty,\r\n systemqty: systemqty,\r\n systemid: systemid,\r\n punique: punique,\r\n systemSort: systemSort,\r\n detailid: detailid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Upatade_SCEstimateLaborSummaryCE(id, active, partcost, partid, pointtypeid, pointype, detailqty, systemqty, punique, systemid, systemSort, detailid,) {\r\n let model = {\r\n method: \"Upatade_EstimateLaborSummaryService\",\r\n id: id,\r\n active: active,\r\n partcost: partcost,\r\n partid: partid,\r\n pointtypeid: pointtypeid,\r\n pointype: pointype,\r\n detailqty: detailqty,\r\n systemqty: systemqty,\r\n systemid: systemid,\r\n punique: punique,\r\n systemSort: systemSort,\r\n detailid: detailid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n\r\n Insert_AreaDuplicate(areaid, newestimateid) {\r\n let model = {\r\n method: \"Insert_AreaDuplicate\",\r\n areaid: areaid,\r\n newestimateid: newestimateid\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n DeleteSystem(systemid) {\r\n let model = {\r\n method: \"Delete_EstimateAreaSystemCE\",// ,\r\n systemid: systemid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n DeleteArea(areaid) {\r\n let model = {\r\n method: \"Delete_EstimateAreaCE\",\r\n areaid: areaid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimatesAll() {\r\n let model = {\r\n method: \"Get_EstimatesAll\",\r\n // tsdate: date\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_ServiceContractsAll() {\r\n let model = {\r\n method: \"Get_ServiceContractsAll\",\r\n // tsdate: date\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_ServiceContractsAllFilter(filter) {\r\n let model = {\r\n method: \"Get_ServiceContractsAll\",\r\n filter: filter\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Insert_EstimateDuplicate(estimateid) {\r\n let model = {\r\n method: \"Insert_EstimateDuplicate\",\r\n estimateid: estimateid\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n\r\n DeleteEstimate(id) {\r\n let model = {\r\n method: \"Delete_Estimate\",\r\n id: id\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Save_DuplicateComponentCE(id) {\r\n let model = {\r\n method: \"Save_DuplicateComponentCE\",\r\n id: id\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Save_DuplicateComponentCEMaster(id) {\r\n let model = {\r\n method: \"Save_DuplicateComponentCEMaster\",\r\n id: id\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Save_DuplicateSystemTypeComponentCE(id) {\r\n let model = {\r\n method: \"Duplicate_ComponentTypeCE\",\r\n id: id\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Save_DuplicateSystemTypeComponentCEMaster(id) {\r\n let model = {\r\n method: \"Duplicate_ComponentTypeCEMaster\",\r\n id: id\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_Estimates_MaterialListParts(estimateid, vendorid) {\r\n let model = {\r\n method: \"Get_Estimates_MaterialListParts\",\r\n vendorid: vendorid,\r\n estimateid: estimateid\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Insert_EstimateAreaSystemDetails(qty, partnumber, applicationnotes1, tag, pointype, pointnumber, systemid, partcost) {\r\n let model = {\r\n method: \"Insert_EstimateAreaSystemDetailsImportCE\",\r\n qty: qty,\r\n partnumber: partnumber,\r\n applicationnotes1: applicationnotes1,\r\n tag: tag,\r\n pointype: pointype,\r\n pointnumber: pointnumber,\r\n systemid: systemid,\r\n id: 0,\r\n damper: 0,\r\n VALVE: 0,\r\n partcost: partcost\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Insert_EstimateAreaSystemDetailsSingleCE(qty, partnumber, applicationnotes1, tag, pointype, pointnumber, systemid, partcost, applicationnotes2, partid, id, notes, Unique) {\r\n let model = {\r\n method: \"Insert_EstimateAreaSystemDetailsSingleCE\",\r\n qty: qty,\r\n partnumber: partnumber,\r\n applicationnotes1: applicationnotes1,\r\n tag: tag,\r\n pointype: pointype,\r\n pointtypeid: pointype,\r\n pointnumber: pointnumber,\r\n systemid: systemid,\r\n id: id,\r\n damper: 0,\r\n VALVE: 0,\r\n partcost: partcost,\r\n applicationnotes2: applicationnotes2,\r\n partid: partid,\r\n notes: notes,\r\n punique: Unique == true ? 1 : 0\r\n };\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateAreaSystemDetailsImportCE(partnumber, applicationnotes1, pointype) {\r\n let model = {\r\n method: \"Get_EstimateAreaSystemDetailsImportCE\",\r\n partnumber: partnumber,\r\n applicationnotes1: applicationnotes1,\r\n pointype: pointype,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Upadte_EstimateSystemAreaCE(systemid, areaid, sort) {\r\n let model = {\r\n method: \"Upadte_EstimateSystemAreaCE\",\r\n areaid: areaid,\r\n sort: sort,\r\n systemid: systemid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Update_EstimateSystemDrawingfromlibrary(estimateid, systemid) {\r\n let model = {\r\n method: \"Update_EstimateSystemDrawingfromlibrary\",\r\n estimateid: estimateid,\r\n systemid: systemid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateSystemLibDevNetWorkType() {\r\n let model = {\r\n method: \"Get_EstimateSystemLibDevNetWorkType\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateVAVByIds(ids) {\r\n let model = {\r\n method: \"Get_EstimateVAVByIds\",\r\n itemids: ids\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateValvesByIds(ids) {\r\n let model = {\r\n method: \"Get_EstimateValvesByIds\",\r\n itemids: ids\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Get_EstimateExpensetype() {\r\n let model = {\r\n method: \"Get_EstimateExpensetype\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n GetVAVHeatType() {\r\n let model = {\r\n method: \"GetVAVHeatTypeCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetDamperBladeStyle() {\r\n let model = {\r\n method: \"GetDamperBladeStyleCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetDamperStyle() {\r\n let model = {\r\n method: \"GetDamperStyleCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimatePartsDamperActuator() {\r\n let model = {\r\n method: \"Get_EstimatePartsDamperActuator\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetValveConfigurationCE() {\r\n let model = {\r\n method: \"GetValveConfigurationCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetMasterValveConfigurationCE() {\r\n let model = {\r\n method: \"GetMasterValveConfigurationCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetValveActuatorSignal() {\r\n let model = {\r\n method: \"GetValveActuatorSignalCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetMasterValveActuatorSignalCE() {\r\n let model = {\r\n method: \"GetMasterValveActuatorSignalCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetMasterValvePower() {\r\n let model = {\r\n method: \"GetMasterValvePower\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetValvePower() {\r\n let model = {\r\n method: \"GetValvePowerCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetValveLineSize() {\r\n let model = {\r\n method: \"GetValveLineSizeCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetValveType() {\r\n let model = {\r\n method: \"GetValveTypeCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetMasterValveTypeCE() {\r\n let model = {\r\n method: \"GetMasterValveTypeCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetValveSystemType() {\r\n let model = {\r\n method: \"GetValveSystemTypeCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetMasterValveSystemTypeCE() {\r\n let model = {\r\n method: \"GetMasterValveSystemTypeCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetValveSize() {\r\n let model = {\r\n method: \"GetValveSizeCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetMasterValveSizeCE() {\r\n let model = {\r\n method: \"GetMasterValveSizeCE\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetMasterValveBody() {\r\n let model = {\r\n method: \"GetMasterValveBody\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetMasterActuatorPos() {\r\n let model = {\r\n method: \"GetMasterActuatorPos\",\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_UserGridReportSettings(id) {\r\n let model = {\r\n method: \"Get_UserGridReportSettings\",\r\n reportid: id\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Update_UserGridReportSettings(id, reportid, reportname, filtersettings, visiblecolumns) {\r\n let model = {\r\n method: \"Update_UserGridReportSettings\",\r\n id: id,\r\n reportid: reportid,\r\n reportname: reportname,\r\n filtersettings: filtersettings,\r\n visiblecolumns: visiblecolumns,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n\r\n\r\n\r\n Update_EstimateVAVByIds(id, location, systemname, vavsize, vavmincoolcfm, vavmaxcoolcfm, vavminheatcfm, vavmaxheatcfm, vavpvt1, vavvolt, vavbaccadd, vavpnlpower, \r\n vavrst48netfrom, vavrst48netto, heattypeid, kw, kFactor) {\r\n let model = {\r\n method: \"Update_EstimateVAVByIds\",\r\n location: location,\r\n systemname: systemname,\r\n vavsize: vavsize,\r\n vavmincoolcfm: vavmincoolcfm,\r\n vavmaxcoolcfm: vavmaxcoolcfm,\r\n vavminheatcfm: vavminheatcfm,\r\n vavmaxheatcfm: vavmaxheatcfm,\r\n vavpvt1: vavpvt1,\r\n vavvolt: vavvolt,\r\n vavbaccadd: vavbaccadd,\r\n vavpnlpower: vavpnlpower,\r\n vavrst48netfrom: vavrst48netfrom,\r\n vavrst48netto: vavrst48netto,\r\n heattypeid: heattypeid,\r\n id: id,\r\n kw:kw,\r\n kfactor:kFactor\r\n };\r\n console.log(model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n UpdateMultiple_EstimateDamperByIds(itemids, bladeid, signalid, styleid, powerid, location, w, h, partid,DamperModel, SR, actuator) {\r\n let model = {\r\n method: \"UpdateMultiple_EstimateDamperByIds\",\r\n itemids: itemids,\r\n bladeid: bladeid,\r\n signalid: signalid,\r\n styleid: styleid,\r\n powerid: powerid,\r\n location: location,\r\n w: w,\r\n h: h,\r\n partid: partid,\r\n dampermodel:DamperModel,\r\n sr:SR,\r\n actuator:actuator\r\n };\r\n\r\n console.log(model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n UpdateMultiple_EstimateValvesByIds(itemids, valveacttypeid, valvelinesizeid, valvesystemid, velvetypeid, valvepipecongid, valvesizeid, partid,\r\n DamperModel,\r\n VALVEDESCV,\r\n VALVECV,\r\n VALVEDESIGNDP,\r\n VALVEACTUALDP,\r\n SystemName, \r\n VALVEDESGPM,\r\n tag,\r\n valveclsoffp = 0,\r\n sr,\r\n actfailsafe,\r\n valveactualgpm\r\n ) {\r\n let model = {\r\n method: \"UpdateMultiple_EstimateValvesByIds\",\r\n itemids: itemids,\r\n valveacttypeid: valveacttypeid,\r\n valvelinesizeid: valvelinesizeid,\r\n valvesystemid: valvesystemid,\r\n velvetypeid: velvetypeid,\r\n valvepipecongid: valvepipecongid,\r\n valvesizeid: valvesizeid,\r\n partid: partid,\r\n DamperModel:DamperModel,\r\n SystemName:SystemName,\r\n valvedescv:VALVEDESCV == undefined ? 0 : VALVEDESCV,\r\n valvecv:VALVECV == undefined ? 0 : VALVECV,\r\n valvedesigndp:VALVEDESIGNDP == undefined ? 0 : VALVEDESIGNDP,\r\n valveactualdp:VALVEACTUALDP == undefined ? 0 : VALVEACTUALDP,\r\n valvedesigngpm:VALVEDESGPM == undefined ? 0 : VALVEDESGPM,\r\n valvetag:tag,\r\n valveclsoffp:valveclsoffp,\r\n sr:sr == true ? 1 : 0,\r\n actfailsafe:actfailsafe,\r\n valveactualgpm:valveactualgpm\r\n };\r\n\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n UpdateMultiple_EstimateValvesByIds2(itemids, valveacttypeid, valvelinesizeid, valvesystemid, velvetypeid, valvepipecongid, valvesizeid, partid,\r\n DamperModel,\r\n VALVEDESCV,\r\n VALVECV,\r\n VALVEDESIGNDP,\r\n VALVEACTUALDP,\r\n SystemName, \r\n VALVEDESGPM,\r\n tag,\r\n valveclsoffp = 0,\r\n sr,\r\n actfailsafe,\r\n valveactualgpm,\r\n sr2\r\n ) {\r\n let model = {\r\n method: \"UpdateMultiple_EstimateValvesByIds\",\r\n itemids: itemids,\r\n valveacttypeid: valveacttypeid,\r\n valvelinesizeid: valvelinesizeid,\r\n valvesystemid: valvesystemid,\r\n velvetypeid: velvetypeid,\r\n valvepipecongid: valvepipecongid,\r\n valvesizeid: valvesizeid,\r\n partid: partid,\r\n DamperModel:DamperModel,\r\n SystemName:SystemName,\r\n valvedescv:VALVEDESCV == undefined ? 0 : VALVEDESCV,\r\n valvecv:VALVECV == undefined ? 0 : VALVECV,\r\n valvedesigndp:VALVEDESIGNDP == undefined ? 0 : VALVEDESIGNDP,\r\n valveactualdp:VALVEACTUALDP == undefined ? 0 : VALVEACTUALDP,\r\n valvedesigngpm:VALVEDESGPM == undefined ? 0 : VALVEDESGPM,\r\n valvetag:tag,\r\n valveclsoffp:valveclsoffp,\r\n sr:sr == true ? 1 : 0,\r\n actfailsafe:actfailsafe,\r\n valveactualgpm:valveactualgpm,\r\n valveactfailpos: sr2,\r\n };\r\n\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n UpdateMultiple_MasterValvesByIds(itemids, valveacttypeid, valvelinesizeid, valvesystemid, velvetypeid, valvepipecongid, valvesizeid, partid,\r\n DamperModel,\r\n VALVEDESCV,\r\n VALVECV,\r\n VALVEDESIGNDP,\r\n VALVEACTUALDP,\r\n SystemName, \r\n VALVEDESGPM,\r\n tag,\r\n valveclsoffp = 0,\r\n sr,\r\n actfailsafe,\r\n valveactualgpm,\r\n valvebody,\r\n sr2,\r\n parttorque,\r\n valvepwr\r\n ) {\r\n let model = {\r\n method: \"UpdateMultiple_MasterValves\",\r\n itemids: itemids,\r\n valveacttypeid: valveacttypeid,\r\n valvelinesizeid: valvelinesizeid,\r\n valvesystemid: valvesystemid,\r\n velvetypeid: velvetypeid,\r\n valvepipecongid: valvepipecongid,\r\n valvesizeid: valvesizeid,\r\n partid: partid,\r\n DamperModel:DamperModel,\r\n SystemName:SystemName,\r\n valvedescv:VALVEDESCV == undefined ? 0 : VALVEDESCV,\r\n valvecv:VALVECV == undefined ? 0 : VALVECV,\r\n valvedesigndp:VALVEDESIGNDP == undefined ? 0 : VALVEDESIGNDP,\r\n valveactualdp:VALVEACTUALDP == undefined ? 0 : VALVEACTUALDP,\r\n valvedesigngpm:VALVEDESGPM == undefined ? 0 : VALVEDESGPM,\r\n valvetag:tag,\r\n valveclsoffp:valveclsoffp,\r\n sr:sr == true ? 1 : 0,\r\n actfailsafe:actfailsafe,\r\n valveactualgpm:valveactualgpm,\r\n valvebody: valvebody,\r\n valveactfailpos: sr2,\r\n parttorque: parttorque,\r\n valvepwr: valvepwr\r\n };\r\n\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Get_EstimateDamperByIds(ids) {\r\n let model = {\r\n method: \"Get_EstimateDamperByIds\",\r\n itemids: ids\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Get_ProjectPartDetailSugestedValues(partnumber) {\r\n let model = {\r\n method: \"Get_ProjectPartDetailSugestedValues\",\r\n partnumber: partnumber\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_ProjectPartDetailSugestedValuesMaster(partnumber) {\r\n let model = {\r\n method: \"Get_ProjectPartDetailSugestedValuesMaster\",\r\n partnumber: partnumber\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateApplicationNotesValues(id) {\r\n let model = {\r\n method: \"Get_EstimateApplicationNotesValues\",\r\n id: id\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateApplicationNotesValuesMaster(id) {\r\n let model = {\r\n method: \"Get_EstimateApplicationNotesValuesMaster\",\r\n id: id\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetScopeOfWork(estimateid) {\r\n let model = {\r\n method: \"GetScopeOfWork\",\r\n estimateid: estimateid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimatesowReport(projectid) {\r\n let model = {\r\n method: \"Get_EstimatesowReport\",\r\n projectid: projectid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimatesowReportEstimate(projectid,estimateid) {\r\n let model = {\r\n method: \"Get_EstimatesowReportByEstimateID\",\r\n projectid: projectid,\r\n estimteid:estimateid\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetProjectQuoteSignature(projectid) {\r\n let model = {\r\n method: \"GetProjectQuoteSignature\",\r\n projectid: projectid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetProjectQuote(projectid) {\r\n let model = {\r\n method: \"GetProjectQuote\",\r\n projectid: projectid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n InsertUpdateProjectPartEstDetailSignature(\r\n id,\r\n projectid,\r\n acceptedbyname,\r\n acceptedbytitle,\r\n proposedbyname,\r\n proposedbyttile,\r\n proposeddate,\r\n signaturetext1,\r\n signaturetext2,\r\n accepteddate,\r\n estimateid,\r\n proposedbyid\r\n ) {\r\n let model = {\r\n method: \"InsertUpdateProjectPartEstDetailSignature\",\r\n id: id,\r\n projectid: projectid,\r\n acceptedbyname: acceptedbyname,\r\n acceptedbytitle: acceptedbytitle,\r\n proposedbyname: proposedbyname,\r\n proposedbyttile: proposedbyttile,\r\n proposeddate: proposeddate,\r\n signaturetext1: signaturetext1,\r\n signaturetext2: signaturetext2,\r\n accepteddate:accepteddate,\r\n // estimateid:estimateid\r\n proposedid:proposedbyid\r\n };\r\n\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n UpdateProjectQuoteSignatureApprovals(\r\n id,\r\n projectid,\r\n sowheader,\r\n exclusions,\r\n warrantyterms,\r\n pricesummarytext,\r\n signaturetext,\r\n ) {\r\n let model = {\r\n method: \"UpdateProjectQuoteSignatureApprovals\",\r\n id: id,\r\n projectid: projectid,\r\n sowheader: sowheader == undefined ? \"\":sowheader,\r\n exclusions: exclusions,\r\n warrantyterms: warrantyterms,\r\n pricesummarytext: pricesummarytext,\r\n signaturetext: signaturetext,\r\n };\r\n\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n SalesProjectsBiders(projectid) {\r\n let model = {\r\n method: \"Get_SalesProjectsBiders\",\r\n projectid: projectid,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n UpdateScopeOfWork(systemid, scopeofwork, showinsow) {\r\n let model = {\r\n method: \"UpdateScopeOfWork\",\r\n scopeofwork: scopeofwork,\r\n systemid: systemid,\r\n showinswo: showinsow\r\n };\r\n\r\n console.log(model)\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n UpdateScopeOfWorkSC(systemid, scopeofwork, showinsow, estimateid) {\r\n let model = {\r\n method: \"UpdatescScopeOfWork\",\r\n scopeofwork: scopeofwork,\r\n systemid: systemid,\r\n showinswo: showinsow,\r\n estimateid:estimateid\r\n };\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateSystemDocumentList() {\r\n let model = {\r\n method: \"Get_EstimateSystemDocumentList\"\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n InsertVisioDocument(id,systemid,name,documentrevision,description,revisionnotes,attachment,codename,locked,doctypeid,deleted) {\r\n let model = {\r\n method: \"InsertVisioDocument\",\r\n id: id,\r\n systemid: systemid,\r\n name: name,\r\n documentrevision: documentrevision,\r\n description: description,\r\n revisionnotes: revisionnotes,\r\n attachment: attachment,\r\n codename: codename,\r\n locked: locked == true ? 1:0,\r\n doctypeid: doctypeid,\r\n deleted: deleted == true ? 1:0,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n SaveImageSystem(filestring, id) {\r\n return this.http.post(this.BaseURI + '/DownloadFile/Upload', { filestring: filestring, doctype: 'systemsimg', id: id })\r\n }\r\n\r\n SaveImageProject(filestring, id) {\r\n return this.http.post(this.BaseURI + '/DownloadFile/Upload', { filestring: filestring, doctype: 'engimage', id: id })\r\n }\r\n\r\n SaveAttachment(filestring, id) {\r\n console.log(id)\r\n console.log(filestring)\r\n return this.http.post(this.BaseURI + '/DownloadFile/Upload', { filestring: filestring, doctype: 'systemsupload', id: id })\r\n }\r\n GetProcedureParameter(spname) {\r\n let model = {\r\n method: \"GetProcedureXMLParameters\",\r\n procedurename: spname,\r\n };\r\n\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n duplicateImage(from, to){\r\n console.log(from)\r\n console.log(to)\r\n return this.http.post(this.BaseURI + '/DownloadFile/DuplicateSystem', { \"from\": from, \"to\" : to } )\r\n }\r\n\r\n\r\n\r\n\r\n\r\n Upadte_EstimateAreaSystemCELoc(\r\n id,\r\n systemid,\r\n sort,\r\n areaname,\r\n systemname,\r\n qty,\r\n systemtype,\r\n inactive,\r\n deleted,\r\n scopeofwork,\r\n sop,\r\n excludefromsearch,\r\n controldwgname,\r\n controldwgimg,\r\n tagtext,\r\n tagnum,\r\n description,\r\n location\r\n ) {\r\n let model = {\r\n method: \"Upadte_EstimateAreaSystemCE-1\",\r\n id: id,\r\n systemid: systemid,\r\n sort: sort,\r\n areaname: areaname,\r\n systemname: systemname,\r\n qty: qty,\r\n systemtype: systemtype,\r\n inactive: inactive,\r\n deleted: deleted,\r\n scopeofwork: scopeofwork,\r\n sop: sop,\r\n excludefromsearch: excludefromsearch,\r\n controldwgname: controldwgname,\r\n controldwgimg: controldwgimg == null ? \"null\" : controldwgimg,\r\n tagtext: tagtext,\r\n tagnum: tagnum,\r\n description: description,\r\n location:location\r\n };\r\n console.log(model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n GetSystemAreaShop(id, viewtypeid = 1) {\r\n return this.http.post(this.BaseURI + \"/FlexIntegration/CallExtFlex\", {\r\n method: \"Get_AreaSystemAllShop\",\r\n estimateid: id,\r\n viewtypeid: viewtypeid\r\n });\r\n }\r\n\r\n Upadte_EstimateAreaSystemCEAreaidCubeShop(\r\n id,\r\n systemid,\r\n sort,\r\n areaname,\r\n areaid,\r\n systemname,\r\n qty,\r\n inactive,\r\n ) {\r\n let model = {\r\n method: \"Upadte_EstimateAreaSystemSingleShop\",\r\n id: id,\r\n systemid: systemid,\r\n sort: sort,\r\n areaname: areaname,\r\n areaid:areaid,\r\n systemname: systemname,\r\n qty: qty,\r\n inactive: inactive,\r\n };\r\n console.log(model)\r\n\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\r\n\r\n\r\n Get_ActuatorDamper(val) {\r\n let model = {\r\n method: \"Get_AccParts\",\r\n partnamefilter: val,\r\n };\r\n return this.http.post(this.BaseURI + this.apiroute, model);\r\n }\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 { AppConfigService } from '../app-config.service.service';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { ActivatedRoute, Params, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GeneralService {\r\n\r\n public currentUrl = new BehaviorSubject('');\r\n public previousUrl = new BehaviorSubject('');\r\n public moduleName = new BehaviorSubject('');\r\n public breadcrum = new BehaviorSubject([]);\r\n private uri = \"\";//`${environment.apiUrl}`;\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private router: Router,\r\n private toast: ToastService,\r\n private appConfigService: AppConfigService,\r\n private activatedRoute: ActivatedRoute,\r\n private toastService: ToastService,\r\n private translate:TranslateService) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n }\r\n\r\n myMethodChangingQueryParams(queryParams) {\r\n\r\n this.router.navigate(\r\n [],\r\n {\r\n relativeTo: this.activatedRoute,\r\n queryParams: queryParams,\r\n queryParamsHandling: 'merge', // remove to replace all query params by provided\r\n });\r\n }\r\n\r\n getJsonSignature(signaturePad) {\r\n let tempArray = [];\r\n let newTempArray = [];\r\n let arrayOfSignature = [];\r\n let requestString = '';\r\n if (signaturePad.toData().length > 0) {\r\n tempArray = signaturePad.toData();\r\n newTempArray = signaturePad.toData();\r\n requestString = '';\r\n try {\r\n for (let i = 0; i < tempArray.length; i++) {\r\n requestString += '[';\r\n for (let j = 0; j < tempArray[i].length; j++) {\r\n if (j == tempArray[i].length - 1) {\r\n requestString += ('[' + tempArray[i][j].x.toString() + ',' + tempArray[i][j].y.toString() + ']');\r\n }\r\n else {\r\n requestString += ('[' + tempArray[i][j].x.toString() + ',' + tempArray[i][j].y.toString() + '],');\r\n }\r\n }\r\n if (i == tempArray.length - 1) {\r\n requestString += ']';\r\n } else {\r\n requestString += '],';\r\n }\r\n\r\n }\r\n // alert(requestString)\r\n // saveSig();\r\n } catch (Ex) {\r\n // toast.(Ex.toString());\r\n ////////////////////////////////////////////\r\n for (let i = 1; i < tempArray.length; i++) {\r\n requestString += '[';\r\n for (let j = 0; j < tempArray[i].length; j++) {\r\n if (j == tempArray[i].length - 1) {\r\n requestString += ('[' + tempArray[i][j].x.toString() + ',' + tempArray[i][j].y.toString() + ']');\r\n } else {\r\n requestString += ('[' + tempArray[i][j].x.toString() + ',' + tempArray[i][j].y.toString() + '],');\r\n }\r\n }\r\n requestString += arrayOfSignature.toString();\r\n if (i == tempArray.length - 1) {\r\n requestString += ']';\r\n }\r\n else {\r\n requestString += '],';\r\n }\r\n\r\n }\r\n // saveSig();\r\n }\r\n } else {\r\n // toast.error('Please sign');\r\n requestString = ''\r\n return null;\r\n }\r\n return requestString;\r\n }\r\n\r\n getShowSignature(obj) {\r\n let _data = []\r\n // if (this.signature.length != 0) {\r\n // this.approvedBy = this.signatureDetails.SERVICEAPPROVEDBY;\r\n // this.signature = this.signature.substr(9, this.signature.length).substr(0, this.signature.length - 10);\r\n try {\r\n for (let i = 0; i < obj.length; i++) {\r\n _data.push([]);\r\n for (let j = 0; j < obj[i].length; j++) {\r\n _data[i].push({\r\n x: (obj[i][j][0]),\r\n y: (obj[i][j][1]),\r\n color: 'black',\r\n time: 0\r\n });\r\n }\r\n }\r\n\r\n return _data;\r\n } catch (error) {\r\n this.toast.error('Error with signature. Clear and try again.');\r\n }\r\n // }\r\n\r\n // console.log(_data);\r\n // setTimeout(() => {\r\n // this.signaturePad.fromData(_data);\r\n // }, 3000);\r\n\r\n }\r\n\r\n DownloadDocument(path, filename) {\r\n\r\n // const formato = data.data.ATTACHMENT.split(\".\")\r\n\r\n // console.clear();\r\n // console.log('El attachment es: ' + formato);\r\n\r\n // switch(formato[1]){\r\n // case 'PNG':tipo = \"png\";\r\n // break\r\n // case 'JPG':tipo = \"jpeg\";\r\n // break\r\n // case 'JPEG':tipo = \"jpeg\";\r\n // break\r\n // case 'docx':tipo = \"vnd.openxmlformats-officedocument.wordprocessingml.document\";\r\n // break\r\n // case 'doc':tipo = \"msword\";\r\n // break\r\n // case 'xls':tipo = \"vnd.ms-excel\";\r\n // break\r\n // case 'XLSX':tipo = \"vnd.openxmlformats-officedocument.spreadsheetml.sheet\";\r\n // break\r\n // case 'pdf':tipo = \"pdf\";\r\n // break\r\n // case 'ZIP':tipo = \"zip\";\r\n // break\r\n // }\r\n\r\n // console.log('El tipo es: ' + tipo);\r\n\r\n // var lfilepath = data.data.FILEPATH;\r\n\r\n this.GetDocument(path).subscribe(result => {\r\n console.log(result)\r\n\r\n let tipo = \"\"\r\n\r\n var data = result.filestring.substring(0, 5);\r\n\r\n if (!result || !result.filestring) {\r\n this.toast.warning(this.translate.instant('msgFilNotFound'));\r\n return;\r\n }\r\n\r\n switch (data.toUpperCase()) {\r\n case \"IVBOR\": tipo = \"png\";\r\n break\r\n case \"/9J/4\": tipo = \"jpeg\";\r\n break\r\n case \"JVBER\": tipo = \"pdf\";\r\n break\r\n case \"UESDB\":\r\n var data2 = result.filestring.substring(0, 19);\r\n switch (data.toUpperCase()) {\r\n case \"UEsDBBQABgAIAAAAIQB\": tipo = \"xlsx\";\r\n break\r\n default:\r\n var data3 = result.filestring.substring(0, 18);\r\n switch (data.toUpperCase()) {\r\n case \"UEsDBBQABgAIAAAAIQ\": tipo = \"docx\";\r\n break\r\n default: tipo = \"zip\";\r\n }\r\n }\r\n break\r\n case \"UMFYI\": tipo = \"rar\";\r\n break\r\n case \"U1PKC\": tipo = \"txt\";\r\n break\r\n }\r\n\r\n // let pdfWindow = window.open(\"\")\r\n // console.log(result)\r\n // pdfWindow.document.write(\r\n // \"\"\r\n // )\r\n\r\n // var theFilename = new guid lfilepath.replace(/^.*[\\\\\\/]/, '');\r\n console.log(tipo)\r\n\r\n var bytArray = Uint8Array.from(atob(result.filestring), c => c.charCodeAt(0));\r\n var blob = new Blob([bytArray], { type: \"application/\" + tipo });\r\n\r\n var link = document.createElement(\"a\");\r\n link.download = filename;\r\n\r\n link.href = window.URL.createObjectURL(blob);\r\n\r\n link.click();\r\n\r\n\r\n })\r\n }\r\n\r\n DownloadDocumentByEstimateId(estimateId: string) {\r\n\r\n this.GetDocumentByEstimateID(estimateId).subscribe(result => {\r\n\r\n let tipo = \"\"\r\n\r\n var data = result.filestring.substring(0, 5);\r\n\r\n if (!result || !result.filestring) {\r\n this.toast.warning(this.translate.instant('msgFilNotFound'));\r\n return;\r\n }\r\n\r\n switch (data.toUpperCase()) {\r\n case \"IVBOR\": tipo = \"png\";\r\n break\r\n case \"/9J/4\": tipo = \"jpeg\";\r\n break\r\n case \"JVBER\": tipo = \"pdf\";\r\n break\r\n case \"UESDB\":\r\n var data2 = result.filestring.substring(0, 19);\r\n switch (data.toUpperCase()) {\r\n case \"UEsDBBQABgAIAAAAIQB\": tipo = \"xlsx\";\r\n break\r\n default:\r\n var data3 = result.filestring.substring(0, 18);\r\n switch (data.toUpperCase()) {\r\n case \"UEsDBBQABgAIAAAAIQ\": tipo = \"docx\";\r\n break\r\n default: tipo = \"zip\";\r\n }\r\n }\r\n break\r\n case \"UMFYI\": tipo = \"rar\";\r\n break\r\n case \"U1PKC\": tipo = \"txt\";\r\n break\r\n }\r\n\r\n var bytArray = Uint8Array.from(atob(result.filestring), c => c.charCodeAt(0));\r\n var blob = new Blob([bytArray], { type: \"application/\" + tipo });\r\n\r\n var link = document.createElement(\"a\");\r\n link.download = \"9550_Project_Part_Reference.pdf\";\r\n\r\n link.href = window.URL.createObjectURL(blob);\r\n\r\n link.click();\r\n\r\n\r\n })\r\n }\r\n\r\n uuidv4() {\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\r\n var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);\r\n return v.toString(16);\r\n });\r\n }\r\n\r\n GetDocument(filepath): Observable {\r\n return this.http.post(this.uri + '/DownloadFile/Download', { filename: filepath });\r\n }\r\n\r\n GetDocumentByEstimateID(estimateID: string): Observable {\r\n return this.http.post(this.uri + '/DownloadFile/DownloadPdf', { \"id\": estimateID });\r\n }\r\n\r\n SaveUserSettings(model) {\r\n return this.http.post(this.uri + '/User/SaveUserSettings', model);\r\n }\r\n\r\n GetEmployees() {\r\n // return this.http.post(this.uri + '/Employee', {});\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_EmployeeListAll' });\r\n }\r\n\r\n GeneralService(obj){\r\n console.log(obj);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n getInitials(item) {\r\n if (item != undefined){\r\n let strs = item.split(' ');\r\n let initials = '';\r\n if (strs.length > 1) {\r\n initials = `${strs[0].substr(0, 1)}${strs[1].substr(0, 1)}`;\r\n } else {\r\n initials = `${strs[0].substr(0, 1)}`;\r\n }\r\n \r\n return initials;\r\n } else {\r\n return ''\r\n }\r\n }\r\n\r\n GetColorTaskStatus(statusid) {\r\n\r\n let statusidd = parseInt(statusid)\r\n\r\n if (Number.isInteger(statusidd)) {\r\n switch (statusid) {\r\n case 1:\r\n return 'orange';\r\n case 2:\r\n return 'blue';\r\n case 3:\r\n return 'green';\r\n case 4:\r\n return 'purple';\r\n case 5:\r\n return 'red';\r\n case 6:\r\n return 'grey';\r\n case 7:\r\n return 'pink';\r\n case 8:\r\n return 'brown';\r\n case 9:\r\n return 'black';\r\n default:\r\n return 'black';\r\n }\r\n } else {\r\n switch (statusid) {\r\n case 'Pre Bid':\r\n return 'orange';\r\n case 'Bid':\r\n return 'blue';\r\n // return '#12a5dd';\r\n case 'Sold':\r\n return 'green';\r\n case 'Design':\r\n return 'purple';\r\n case 'Abandoned':\r\n return 'red';\r\n case 'Lost':\r\n return 'grey';\r\n case 'Negotiating':\r\n return 'pink';\r\n case 'Prospect':\r\n return 'brown';\r\n case 'Unknown':\r\n return 'black';\r\n default:\r\n return 'black'\r\n }\r\n }\r\n }\r\n\r\n GetColorTaskPriority(priorityid) {\r\n\r\n let priorityidd = parseInt(priorityid)\r\n\r\n if (Number.isInteger(priorityidd)) {\r\n switch (priorityid) {\r\n case 1:\r\n return 'orange';\r\n case 2:\r\n return 'blue';\r\n case 3:\r\n return 'green';\r\n case 4:\r\n return 'purple';\r\n case 5:\r\n return 'red';\r\n case 6:\r\n return 'grey';\r\n case 7:\r\n return 'pink';\r\n case 8:\r\n return 'brown';\r\n case 9:\r\n return 'black';\r\n default:\r\n return 'black';\r\n }\r\n } else {\r\n switch (priorityid) {\r\n case 'Pre Bid':\r\n return 'orange';\r\n case 'Bid':\r\n return 'blue';\r\n // return '#12a5dd';\r\n case 'Sold':\r\n return 'green';\r\n case 'Design':\r\n return 'purple';\r\n case 'Abandoned':\r\n return 'red';\r\n case 'Lost':\r\n return 'grey';\r\n case 'Negotiating':\r\n return 'pink';\r\n case 'Prospect':\r\n return 'brown';\r\n case 'Unknown':\r\n return 'black';\r\n default:\r\n return 'black'\r\n }\r\n }\r\n }\r\n\r\n GetColorBidStatus(statusid) {\r\n\r\n let statusidd = parseInt(statusid)\r\n\r\n if (Number.isInteger(statusidd)) {\r\n switch (statusid) {\r\n case 1:\r\n return 'orange';\r\n case 2:\r\n return 'blue';\r\n case 3:\r\n return 'green';\r\n case 4:\r\n return 'purple';\r\n case 5:\r\n return 'red';\r\n case 6:\r\n return 'grey';\r\n case 7:\r\n return 'pink';\r\n case 8:\r\n return 'brown';\r\n case 9:\r\n return 'black';\r\n default:\r\n return 'black';\r\n }\r\n } else {\r\n switch (statusid) {\r\n case 'Pre Bid':\r\n return 'orange';\r\n case 'Bid':\r\n return 'blue';\r\n // return '#12a5dd';\r\n case 'Sold':\r\n return 'green';\r\n case 'Design':\r\n return 'purple';\r\n case 'Abandoned':\r\n return 'red';\r\n case 'Lost':\r\n return 'grey';\r\n case 'Negotiating':\r\n return 'pink';\r\n case 'Prospect':\r\n return 'brown';\r\n case 'Unknown':\r\n return 'black';\r\n default:\r\n return 'black'\r\n }\r\n }\r\n\r\n }\r\n\r\n quitChartesSpecials(string) {//solo letras y numeros\r\n var out = '';\r\n //Se añaden las letras validas\r\n var filtro = \"abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ1234567890.;.*´()-_?&!,'%# \";//Caracteres validos\r\n\r\n for (var i = 0; i < string.length; i++){\r\n if (filtro.indexOf(string.charAt(i)) != -1){\r\n out += string.charAt(i);\r\n }\r\n }\r\n\r\n let newDescription = out.replace('&', '&');\r\n console.log('NEw ', newDescription);\r\n\r\n return newDescription;\r\n }\r\n\r\n getcurrentDate() {\r\n let f = new Date();\r\n let month: string;\r\n let day: string;\r\n\r\n if ((f.getMonth() + 1) < 10) {\r\n month = '0' + (f.getMonth() + 1);\r\n } else {\r\n month = (f.getMonth() + 1) + '';\r\n }\r\n if ((f.getDate()) < 10) {\r\n day = '0' + (f.getDate());\r\n } else {\r\n day = (f.getDate()) + '';\r\n }\r\n return (f.getFullYear() + (month) + day) + ' ' + f.getHours() + ':' + f.getMinutes() + ':' + f.getSeconds();\r\n }\r\n\r\n GetProjectBidStatus() {\r\n return this.http.post(this.uri + '/ProjectBidStatus/', {});\r\n }\r\n\r\n SendSubscriptionNotification(projectid: any) {\r\n return this.http.post(this.uri + '/Notifications/NotificationGeneric/', projectid);\r\n }\r\n\r\n getTemplateFile(){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_EmailTemplateNameById', id: 6 } );\r\n }\r\n\r\n getToken(lchange: number){\r\n return this.http.post(this.uri + '/FlexIntegration/getToken', { change: lchange } );\r\n }\r\n\r\n GetProjectByField(model) {\r\n return this.http.post(this.uri + '/Pipeline/GetPipelineByField/', model);\r\n }\r\n\r\n GetSalesPerson() {\r\n return this.http.post(this.uri + '/SalesPerson', {});\r\n }\r\n \r\n /**\r\n *\r\n * @param entity\r\n * @param idEntidad\r\n * @param params\r\n */\r\n getPopulateGeneral(entity: string, idEntidad?: any, params?: Object) {\r\n if (idEntidad) {\r\n return this.http.post(this.uri + '/' + entity, { id: idEntidad });\r\n } else {\r\n if (params) {\r\n return this.http.post(this.uri + '/' + entity, params);\r\n } else {\r\n return this.http.post(this.uri + '/' + entity, {});\r\n }\r\n }\r\n\r\n }\r\n postInsertUpdategeneral(entity: string, idEntidad?: any, params?: Object) {\r\n if (idEntidad) {\r\n return this.http.post(this.uri + '/' + entity, { id: idEntidad });\r\n } else {\r\n if (params) {\r\n return this.http.post(this.uri + '/' + entity, params);\r\n } else {\r\n return this.http.post(this.uri + '/' + entity, {});\r\n }\r\n }\r\n }\r\n\r\n SaveSite(data) {\r\n return this.http.post(this.uri + '/Site/InsertSite', data);\r\n\r\n }\r\n goToHome() {\r\n this.router.navigateByUrl('/home');\r\n }\r\n\r\n // getcurrentDate() {\r\n // let f = new Date();\r\n // let month: string;\r\n // let day: string;\r\n\r\n // if ((f.getMonth() + 1) < 10) {\r\n // month = '0' + (f.getMonth() + 1);\r\n // } else {\r\n // month = (f.getMonth() + 1) + '';\r\n // }\r\n // if ((f.getMonth()) < 10) {\r\n // day = '0' + (f.getDate());\r\n // } else {\r\n // day = (f.getDate()) + '';\r\n // }\r\n // return (f.getFullYear() + \"-\" + (month) + \"-\" + day);\r\n // }\r\n\r\n getCurrency(){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Currency_ListCE'});\r\n }\r\n\r\n getParamethers(service){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'GetProcedureXMLParameters', procedurename: 'SP_API_Flex_'+service });\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppConfigService } from '../app-config.service.service';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IntegrationQuickbooksService {\r\n\r\n private baseurl = \"\";\r\n private dasbaseurl = \"\";\r\n\r\n private apiroute = \"\";\r\n quickbooksurl= \"\";\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private appSetting: AppConfigService,\r\n ) {\r\n this.baseurl = this.appSetting.apiBaseUrl;\r\n this.dasbaseurl = this.appSetting.newdashboardURL;\r\n\r\n this.apiroute = '/FlexIntegration';\r\n\r\n if(!appSetting.appConfig) {\r\n appSetting.loadAppConfig()\r\n }\r\n\r\n this.quickbooksurl = this.appSetting.appConfig.quickbooksurl; \r\n\r\n }\r\n\r\n //Customers\r\n // SP_API_Flex_Get_AcctQBCUSTOMER_CUBE\r\n GetClients() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: \"Get_Clients\" });\r\n }\r\n\r\n Get_AllBiDashboardComponents() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: \"Get_AllBiDashboardComponents\" });\r\n }\r\n\r\n Get_AllBiDashboardComponentsWithModules() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: \"Get_AllBiDashboardComponentsWithModules\" });\r\n }\r\n\r\n Get_AllBiDashboardComponentsClients() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: \"Get_AllBiDashboardComponentsClients\" });\r\n }\r\n\r\n Insert_Bi_Module(name: string, moduleid: string, id: string) {\r\n return this.http.post(this.baseurl + this.apiroute, { method: \"Insert_Bi_Module\", name: name, id: id, moduleid: moduleid });\r\n }\r\n\r\n GetDataSourceModules() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: \"GetDataSourceModules\" });\r\n }\r\n\r\n\r\n DeleteDataSourceModules(id: string) {\r\n return this.http.post(this.baseurl + this.apiroute, { method: \"DeleteDataSourceModules\", id: id });\r\n }\r\n\r\n InsertDataSourceModules(obj: any) {\r\n return this.http.post(this.baseurl + this.apiroute, obj);\r\n }\r\n\r\n InsertDataBISource(obj: any) {\r\n return this.http.post(this.baseurl + this.apiroute, obj);\r\n }\r\n\r\n Bi_GetDashboardsAvailableSP() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: \"Bi_GetDashboardsAvailableSP\" });\r\n }\r\n\r\n Get_CubeNavBIAll() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: \"Get_CubeNavBIAll\" });\r\n }\r\n\r\n Bi_GetDashboardsDataSources() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: \"Bi_GetDashboardsDataSources\" });\r\n }\r\n\r\n GetDashboardsAvailableSP() {\r\n return this.http.post(this.baseurl + this.apiroute, { method: \"GetDashboardsAvailableSP\" });\r\n }\r\n\r\n updateBIComponents2(dashboardComponentConfiguration: any): Observable {\r\n var mytoken = localStorage.getItem('token');\r\n dashboardComponentConfiguration.mtoken = mytoken;\r\n const url = this.dasbaseurl + 'updateBIComponents';\r\n return this.http.post(url, dashboardComponentConfiguration);\r\n } \r\n\r\n deleteDashboard(dashboardComponentConfiguration: any): Observable {\r\n var mytoken = localStorage.getItem('token');\r\n dashboardComponentConfiguration.mtoken = mytoken;\r\n const url = this.dasbaseurl + 'deleteBIComponents';\r\n return this.http.post(url, dashboardComponentConfiguration);\r\n } \r\n\r\n updateBIComponents(data: any) {\r\n return this.http.post('https://localhost:44376/Home/updateBIComponents', data);\r\n }\r\n\r\n GetCubeCustomers(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { method: \"Get_AcctQBCUSTOMER_CUBE\", pageindex: page, pagesize: size, searchtext: filter });\r\n }\r\n\r\n GetCustomersQb(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBCUSTOMER_QB\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter });\r\n }\r\n\r\n GetCustomersSynchronizedQb(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBCUSTOMER_SYNCH\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter })\r\n }\r\n\r\n //Jobs\r\n\r\n GetCubeProjects(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBJOBS_CUBE\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter })\r\n }\r\n\r\n GetAccountingSystemJobs(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBJOBS_QB\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter })\r\n }\r\n\r\n GetSynchronizedProjects(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBJOBS\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter });\r\n }\r\n\r\n //Vendors\r\n\r\n GetCubeVendors(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBVENDOR_CUBE\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter });\r\n }\r\n\r\n GetAccountingSystemVendors(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBVENDOR_QB\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter });\r\n }\r\n\r\n GetSynchronizedVendors(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBVENDOR_SYNCH\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter });\r\n }\r\n\r\n //Employees\r\n\r\n GetCubeEmployees(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBEMPLOYEES_CUBE\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter });\r\n }\r\n\r\n GetAccountingSystemEmployees(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBEMPLOYEES_QB\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter });\r\n }\r\n\r\n GetSynchronizedEmployees(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBEMPLOYEES_SYNCH\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter });\r\n }\r\n\r\n //Payroll\r\n\r\n GetCubePayroll(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBPAYROLLTYPE_CUBE\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter });\r\n }\r\n\r\n GetAccountingSystemPayroll(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBPAYROLLTYPE_QB\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter });\r\n }\r\n\r\n GetSynchronizedPayroll(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBPAYROLLTYPE_SYNCH\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter });\r\n }\r\n\r\n //Sales Tax\r\n\r\n GetCubeSalesTax(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBTAX_CUBE\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter })\r\n }\r\n\r\n GetQBSalesTax(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBTAX_QB\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter })\r\n }\r\n\r\n GetSyncSalesTax(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBTAX_SYNCH\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter })\r\n }\r\n\r\n //Service Items\r\n\r\n GetCubeServices(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBSERVICE_CUBE\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter })\r\n }\r\n\r\n GetQBServices(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBSERVICE_QB\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter })\r\n }\r\n\r\n GetSyncServices(page, size, filter) {\r\n return this.http.post(this.baseurl + this.apiroute, { \"method\": \"Get_AcctQBSERVICE_SYNCH\", \"pageindex\": page, \"pagesize\": size, \"searchtext\": filter })\r\n }\r\n\r\n //Transaction Log\r\n\r\n GetTransactionLog(date) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_Integration_TransactionLogAll', tsdate: date })\r\n }\r\n\r\n //Sincronizaciones\r\n\r\n Sync_Customer(reference, id: number) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_Customer', 'acctrefference': reference, 'customerid': id })\r\n }\r\n\r\n Sync_CustomerNV(id: number) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_Customer', 'customerid': id })\r\n }\r\n\r\n Sync_JobNV(id: number) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_Jobs', 'projectid': id })\r\n }\r\n\r\n Sync_VendorNV(id: number) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_Vendors', 'vendorid': id })\r\n }\r\n\r\n Sync_ServiceNV(id: number) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_Services', 'serviceid': id })\r\n }\r\n\r\n Sync_PayrollNV(id: number) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_Payrolls', 'payrollid': id })\r\n }\r\n\r\n Sync_SalesNV(id: number) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_Sales', 'saleid': id })\r\n }\r\n\r\n Sync_EmployeeNV(id: number) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_Employees', 'employeeid': id })\r\n }\r\n\r\n Sync_Employees(reference, id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_Employees', 'acctqbname': reference, 'employeeid': id })\r\n }\r\n\r\n Sync_Jobs(reference, id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_Jobs', 'qbprojectname': reference, 'projectid': id })\r\n }\r\n\r\n Sync_Vendors(reference, id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_Vendors', 'acctrefference': reference, 'vendorid': id })\r\n }\r\n\r\n Sync_Payroll(reference, id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_Payroll', 'acctrefference': reference, 'payrollid': id })\r\n }\r\n\r\n Sync_Services(reference, id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_ServiceItems', 'acctrefference': reference, 'projecttodoid': id })\r\n }\r\n\r\n Sync_Sales(reference, id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Syn_SalesTax', 'accreff': reference, 'clienttaxid': id })\r\n }\r\n\r\n //Datos Sincronizados\r\n\r\n SyncronizedCustomers() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_CustomerSynch' })\r\n }\r\n\r\n SyncronizedVendors() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_VendorSynch' })\r\n }\r\n\r\n SyncronizedPayroll() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_PayrollSynch' })\r\n }\r\n\r\n SyncronizedEmployees() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EmployeesSynch' })\r\n }\r\n\r\n UpdateComponentModule(obj: any) {\r\n return this.http.post(this.baseurl + this.apiroute, obj)\r\n } \r\n\r\n SyncronizedSales() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EmployeesSynch' })\r\n }\r\n\r\n SyncronizedJobs() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EmployeesSynch' })\r\n }\r\n\r\n //Settings\r\n\r\n ClientSettings() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ClientSettingsByName', 'name': 'QBCompany' })\r\n }\r\n\r\n UpdateClientSettings(description, value) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Update_ClientSettings', 'name': 'QBCompany', 'description': description, 'value': value })\r\n }\r\n\r\n synchEntities(usr: string) {\r\n return this.http.get(this.quickbooksurl + 'QBO/CreateCustomer?tk=' + localStorage.getItem('token') + '&usr=' + usr, {});\r\n }\r\n\r\n synchCustomerCEToQB(usr: string) {\r\n return this.http.get(this.quickbooksurl + 'QBO/InsertCustomer?tk=' + localStorage.getItem('token') + '&usr=' + usr, {});\r\n } \r\n\r\n Delete_QBtrx(data) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBtrx', 'id': data })\r\n }\r\n SP_API_Flex_Delete_QB(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBCustomer', 'id': ids })\r\n }\r\n SP_API_Flex_Delete_QBAllCustomer(preserve) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBCustomerAll', preserve: preserve })\r\n }\r\n SP_API_Flex_Delete_QBAllProject(preserve) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBJobAll', preserve: preserve })\r\n }\r\n SP_API_Flex_Delete_QBAllVendor(preserve) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBVendorAll', preserve: preserve })\r\n }\r\n SP_API_Flex_Delete_QBAllEmployees(preserve) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBEmployeeAll', preserve: preserve })\r\n }\r\n SP_API_Flex_Delete_QBAllPayrolls(preserve) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBPayrollAll', preserve: preserve })\r\n }\r\n SP_API_Flex_Delete_QBServiceAll(preserve) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBServiceAll', preserve: preserve })\r\n }\r\n SP_API_Flex_Delete_QBSalesAll(preserve) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBSalesAll', preserve: preserve })\r\n }\r\n SP_API_Flex_Delete_QBAllJobs() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBJobsAll' })\r\n }\r\n UnlinkAllCustomers() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'UnSyn_AllCustomer' })\r\n }\r\n UnlinkAllJobs() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'UnSyn_AllJobs' })\r\n }\r\n UnlinkAllVendors() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'UnSyn_AllVendors' })\r\n }\r\n UnlinkAllEmployees() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'UnSyn_AllEmployees' })\r\n }\r\n UnlinkAllpayrolls() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'UnSyn_AllPAyrolls' })\r\n }\r\n UnlinkAllservices() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'UnSyn_AllServices' })\r\n }\r\n UnlinkAllsales() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'UnSyn_AllSales' })\r\n }\r\n Get_ProjectsQB() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ProjectsQB' })\r\n }\r\n Get_CustomerQB() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_CustomerQB' })\r\n }\r\n Get_JobsQB() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_JobsQB' })\r\n }\r\n Get_VendorsQB() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_VendorsQB' })\r\n }\r\n Get_EmployeesQB() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EmployeesQB' })\r\n }\r\n Get_PayrollsQB() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_PayrollsQB' })\r\n }\r\n Get_ServicesQB() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ServicesQB' })\r\n }\r\n Get_SalesQB() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_SalesQB' })\r\n }\r\n SP_API_Flex_Delete_QBProject(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBProject', 'id': ids })\r\n }\r\n SP_API_Flex_Delete_QBVendor(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBVendor', 'id': ids })\r\n }\r\n SP_API_Flex_Delete_QBEmployee(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBEmployee', 'id': ids })\r\n }\r\n SP_API_Flex_Delete_QBServiceitems(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBServiceitems', 'id': ids })\r\n }\r\n SP_API_Flex_Delete_QBTaxcode(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBTaxcode', 'id': ids })\r\n }\r\n SP_API_Flex_Delete_QBPayrollitems(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Delete_QBPayrollitems', 'id': ids })\r\n }\r\n SP_API_Flex_Insert_CustomerfromQB(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Insert_CustomerfromQB', 'id': ids })\r\n }\r\n BreakLink(id: string) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'breakCustomerQBLink', 'id': id })\r\n }\r\n BreakLinkProject(id: string) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'breakProjectQBLink', 'id': id })\r\n }\r\n BreakLinkVendor(id: string) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'breakVendorQBLink', 'id': id })\r\n }\r\n BreakLinkPayroll(id: string) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'breakPayrollQBLink', 'id': id })\r\n }\r\n BreakLinkService(id: string) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'breakServiceQBLink', 'id': id })\r\n }\r\n BreakLinkSale(id: string) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'breakSaleQBLink', 'id': id })\r\n }\r\n SP_API_Flex_Insert_JobfromQB(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Insert_ProjectfromQB', 'id': ids })\r\n }\r\n SP_API_Flex_Insert_VendorfromQB(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Insert_VendorfromQB', 'id': ids })\r\n }\r\n SP_API_Flex_Insert_EmployeefromQB(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Insert_EmployeefromQB', 'id': ids })\r\n }\r\n SP_API_Flex_Insert_PayrollfromQB(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Insert_PayrollfromQB', 'id': ids })\r\n }\r\n SP_API_Flex_InsertServicefromQB(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Insert_ServicefromQB', 'id': ids })\r\n }\r\n SP_API_Flex_InsertSalesfromQB(ids) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Insert_SalesfromQB', 'id': ids })\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject, Observable } from 'rxjs';\r\nimport { ChangedAllSelectionInterface, DataControlMapInterface, DrawAllMapInterface, MarketUnitInterface, MarketPoiInterface, MarketGeofenceInterface, MarketRouteInterface, MarketServiceInterface } from '../models/models.interface';\r\n\r\nimport Swal from 'ngx-angular8-sweetalert2';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class InterfacectrlmapService {\r\n private DrawData = new Subject();\r\n private ZoomData = new Subject();\r\n private DrawAllData = new Subject();\r\n\r\n public Vehicles: MarketUnitInterface[] = [];\r\n public POI: MarketPoiInterface[] = [];\r\n public Geofence: MarketGeofenceInterface[] = [];\r\n public Route: MarketRouteInterface[] = [];\r\n public ActiveTracks: boolean = false;\r\n public Service: MarketServiceInterface[] = [];\r\n public ActiveServices: boolean = false; \r\n constructor(\r\n ) { }\r\n //Utils\r\n GetDataBy(data: boolean[]): string {\r\n let result = [];\r\n data.forEach(function (element, index, array) {\r\n if (element) {\r\n result.push(index);\r\n }\r\n });\r\n return result.join(';');\r\n }\r\n ChangeAll(data: any, value: boolean) {\r\n data.forEach(function (element, index, array) {\r\n let result = value; \r\n if(element.IsDelete != undefined){\r\n if(element.IsDelete == true){ \r\n result = false; \r\n }\r\n }\r\n data[index].puted = result;\r\n });\r\n return data\r\n }\r\n ValidAll(data: any): boolean {\r\n let result = true;\r\n data.forEach(function (element, index, array) {\r\n if (!element) {\r\n result = false;\r\n }\r\n });\r\n return result;\r\n }\r\n GetIds(data: any, localStorage: string): boolean[] {\r\n let result = [];\r\n data.forEach(function (element, index, array) {\r\n result[element.Id] = false;\r\n });\r\n\r\n localStorage.split(';').forEach(function (element, index, array) {\r\n result[element] = true;\r\n });\r\n return result;\r\n }\r\n\r\n GetDataToMap(_typeObject: number, id: number[], _put: boolean, _remove: boolean): DataControlMapInterface {\r\n return {\r\n typeObject: _typeObject,\r\n ids: id,\r\n put: _put,\r\n remove: _remove\r\n };\r\n\r\n }\r\n\r\n ShowLoading(_title: string = '', _text: string = '') {\r\n Swal.fire({\r\n icon: 'info',\r\n title: _title,\r\n text: _text,\r\n allowOutsideClick: false,\r\n showClass: {\r\n popup: 'animate__animated animate__fadeInDown'\r\n }\r\n });\r\n Swal.showLoading();\r\n }\r\n\r\n HideLoading() {\r\n setTimeout(() => {\r\n Swal.close();\r\n }, 1000);\r\n }\r\n\r\n\r\n ShowError(_title: string = '', _text: string = '') {\r\n Swal.fire({\r\n icon: 'info',\r\n title: _title,\r\n text: _text,\r\n allowOutsideClick: false,\r\n showClass: {\r\n popup: 'animate__animated animate__fadeInDown'\r\n }\r\n });\r\n }\r\n\r\n\r\n //Utils\r\n\r\n ChangeAllData(item: DrawAllMapInterface) {\r\n this.DrawAllData.next({ Data: item });\r\n }\r\n DrawAllDataEvent(): Observable {\r\n return this.DrawAllData.asObservable();\r\n }\r\n\r\n ChangeData(typeObject: number, id: number[], _put: boolean, _remove: boolean) {\r\n this.DrawData.next({ Data: this.GetDataToMap(typeObject, id, _put, _remove) });\r\n }\r\n DrawDataEvent(): Observable {\r\n return this.DrawData.asObservable();\r\n }\r\n\r\n ChangeZoom(item: any) {\r\n this.ZoomData.next({ Data: item });\r\n }\r\n DrawZomm(): Observable {\r\n return this.ZoomData.asObservable();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LoadingService {\r\n public isLoading = new BehaviorSubject(false);\r\n\r\n constructor() { }\r\n}\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { InterfacectrlmapService } from './interfacectrlmap.service';\r\nimport { MarketGeofenceInterface, MarketRouteInterface, MarketUnitInterface, MarketPoiInterface, LatLngInterface, MarketServiceInterface, UnitOrDriverInterface } from '../models/models.interface';\r\nimport {\r\n VehicleInterface, ServiceInterface, SiteInterface, TrackInterface,\r\n MarketInterface\r\n} from '../models/models.interface'\r\nimport { HttpClient, HttpErrorResponse, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { catchError, map } from 'rxjs/operators';\r\nimport { element } from 'protractor';\r\nimport { AppConfiguration } from '../config/app-configuration';\r\nimport { resolve } from 'dns';\r\nimport { AppConfigService } from '../app-config.service.service';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { DatePipe } from '@angular/common';\r\nimport { environment } from 'src/environments/environment';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MapInformationService {\r\n public Token = '';\r\n // private appConfig: AppConfiguration;\r\n private appConfig;\r\n public baseURI= \"\"\r\n public apiBaseUrlUtility= \"\"\r\n public urlAI= \"\"\r\n public EndpPointTag = \"\"\r\n private cubeAI_URL = \"\";\r\n // private urlInformation = 'https://wsapi.foresightgps.com/ForesightFlexAPI.ashx?';\r\n // private urlClientInformation = 'http://cube-mia.com/apicubeedge/';\r\n constructor(\r\n private http: HttpClient,\r\n private _interfacectrlmapService: InterfacectrlmapService,\r\n private appConfigP: AppConfiguration,\r\n private AppConfigService:AppConfigService,\r\n private toast: ToastService,\r\n private pipeDate: DatePipe,\r\n ) {\r\n this.baseURI = this.AppConfigService.apiBaseUrl;\r\n this.apiBaseUrlUtility = this.AppConfigService.apiBaseUrlUtility;\r\n this.urlAI = this.AppConfigService.urlAI;\r\n this.EndpPointTag = this.AppConfigService.EndpPointTag;\r\n this.appConfig = appConfigP;\r\n\r\n this.cubeAI_URL = this.AppConfigService.cubeAIserverURL;\r\n // this.appConfig = environment;\r\n // this.GetToken();\r\n }\r\n\r\n // GetToken(): void {\r\n // var userName = this.appConfig.userName // \"qa@sfc-mia.com\";\r\n // var pass = this.appConfig.pass // \"123456\";\r\n // this.http.post(this.appConfig.urlClientInformation + 'user',\r\n // {\r\n // \"username\": userName,\r\n // \"password\": pass\r\n // }\r\n // ).subscribe((data: any) => {\r\n // this.Token = data.token;\r\n // }, (error: any) => {\r\n // });\r\n // }\r\n\r\n // GetTokenPromise():Promise{\r\n // return new Promise((resolve, reject) => { \r\n // var userName = this.appConfig.userName // \"qa@sfc-mia.com\";\r\n // var pass = this.appConfig.pass // \"123456\";\r\n // this.http.post(this.appConfig.urlClientInformation + 'user',\r\n // {\r\n // \"username\": userName,\r\n // \"password\": pass\r\n // }\r\n // ).subscribe((data: any) => {\r\n // resolve (this.Token = data.token);\r\n // }, (error: any) => {\r\n // reject(error)\r\n // });\r\n // })\r\n // }\r\n\r\n GetVehicles(search: string = \"\"): VehicleInterface[] {\r\n this._interfacectrlmapService.ShowLoading(\"Espere porfavor\", \"Cargando Data\");\r\n this._interfacectrlmapService.HideLoading();\r\n let data = [\r\n { Id: 1, Employee: 'E1', Name: 'N1', Lat: 'Lat1', Long: 'Long1' },\r\n { Id: 2, Employee: 'E2', Name: 'N1', Lat: 'Lat2', Long: 'Long2' },\r\n { Id: 3, Employee: 'E3', Name: 'N1', Lat: 'Lat3', Long: 'Long3' },\r\n { Id: 4, Employee: 'E4', Name: 'N1', Lat: 'Lat4', Long: 'Long4' },\r\n ];\r\n return data;\r\n }\r\n GetVehiclesByID(ids: number[]): MarketInterface[] {\r\n let data = [\r\n { ID: 1, Lat: 19.491950, lng: -99.694015, name: \"test\", zoom: 9, icon: \"carro.png\" },\r\n { ID: 2, Lat: 19.290960, lng: -99.653025, name: \"otro\", zoom: 9, icon: \"carro.png\" }\r\n ];\r\n return data;\r\n }\r\n\r\n GetAllVehicles(allSelected: boolean): Observable {\r\n console.log(\"URL?? \", this.appConfig.urlInformation)\r\n return this.http.post(this.appConfig.urlInformation, {\r\n \"conncode\": this.appConfig.conncode,\r\n \"method\": \"GetUnits\",\r\n \"userid\": this.appConfig.fleetuserid\r\n },\r\n {\r\n headers: {\r\n \"Authorization\": \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),\r\n }\r\n })\r\n .pipe(\r\n map((data: any): MarketUnitInterface[] => {\r\n let resul: MarketUnitInterface[] = [];\r\n let contador=0\r\n data.ForesightFlexAPI.DATA.forEach((element, index, array) => {\r\n this.http.post(this.baseURI + '/FlexIntegration',\r\n { \r\n \"method\":\"Get_VehiclesByDeviceId\",\r\n \"deviceid\":element.devicename\r\n }) \r\n .subscribe(resp=>{\r\n if(resp[0] != undefined){\r\n resul.push({\r\n UnitID: parseInt(element.UnitID),\r\n Lat: parseFloat(element.ylat),\r\n lng: parseFloat(element.xlong),\r\n name: element.UnitName,\r\n zoom: 9,\r\n icon: \"carro.png\",\r\n CompanyName: element.CompanyName,\r\n SubFleetName: element.SubFleetName,\r\n GroupName: element.GroupName,\r\n Course: element.Course,\r\n OperatorName: resp[0].EMPLOYEE,\r\n PLanName: element.PLanName,\r\n callfignName: element.callfignName,\r\n isdeleted: (element.isdeleted.toLocaleLowerCase() == \"true\"),\r\n // lasttime: this.GetDateTimewithFormat(new Date(element.lasttime),'yyyymmdd'),\r\n lasttime:this.pipeDate.transform(element.lasttime, 'MM/dd/yyyy, hh:mm a'),\r\n location: element.location,\r\n odometer: parseFloat(element.odometer),\r\n plateno: element.plateno,\r\n speed: parseFloat(element.speed),\r\n show: allSelected,\r\n make:resp[0].MAKE,\r\n model:resp[0].MODEL,\r\n color:resp[0].COLOR, //\r\n vinnumber:resp[0].VINNUMBER,\r\n plateNumber:resp[0].LINCPLATE,\r\n // registryexpire: this.GetDateTimewithFormat(new Date(resp[0].REGEXPIRATIONDATE),'yyyymmdd'),\r\n registryexpire: this.pipeDate.transform(element.lasttime, 'MM/dd/yyyy'),\r\n trackingDevice: resp[0].TRACKINGDEVICENUMBER,\r\n ignition:element.ignition,\r\n notes:resp[0].NOTES, //\r\n year:resp[0].YEAR,\r\n resources:resp[0].EMPLOYEE, //\r\n type:resp[0].EMPLOYEE_CODE, //\r\n id:resp[0].ID\r\n });\r\n }\r\n contador++\r\n if(data.ForesightFlexAPI.DATA.length == contador){\r\n\r\n if(resul.length == 0){\r\n this.toast.warning(\"Your Company does not have any vehicles associated, please contact CUBE for more information\")\r\n }\r\n return resul\r\n }\r\n })\r\n });\r\n return resul;\r\n\r\n })\r\n );\r\n }\r\n\r\n GetAllVehiclesPolarix(allSelected: boolean): Observable {\r\n return this.http.post(this.appConfig.urlInformation, {\r\n \"conncode\": this.appConfig.conncode,\r\n \"method\": \"GetUnits\",\r\n \"userid\": this.appConfig.fleetuserid\r\n },\r\n {\r\n headers: {\r\n \"Authorization\": \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),\r\n }\r\n })\r\n .pipe(\r\n map((data: any): MarketUnitInterface[] => {\r\n return data.ForesightFlexAPI.DATA;\r\n })\r\n );\r\n }\r\n\r\n TestGetAllVehiclesPolarix(allSelected: boolean, subfleetid): Observable {\r\n return this.http.post(this.appConfig.urlInformation, {\r\n \"conncode\": this.appConfig.conncode,\r\n \"method\": \"GetUnits\",\r\n // \"subfleet\": subfleetid\r\n \"subfleet\": 304\r\n },\r\n {\r\n headers: {\r\n \"Authorization\": \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),\r\n }\r\n })\r\n .pipe(\r\n map((data: any): MarketUnitInterface[] => {\r\n if(data.ForesightFlexAPI.DATA.length > 0){\r\n return data.ForesightFlexAPI.DATA;\r\n } else {\r\n let datos = [data.ForesightFlexAPI.DATA]\r\n return datos\r\n }\r\n })\r\n );\r\n }\r\n GetAllVehiclesPolarixSinSubscribe(): Observable {\r\n return this.http.post(this.appConfig.urlInformation, {\r\n \"conncode\": this.appConfig.conncode,\r\n \"method\": \"GetUnits\",\r\n \"userid\": this.appConfig.fleetuserid\r\n },\r\n {\r\n headers: {\r\n \"Authorization\": \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),\r\n }\r\n })\r\n }\r\n\r\n AddVehiclePolarix(name,subfleetid): Observable {\r\n return this.http.post(this.appConfig.urlInformation, {\r\n \"conncode\": this.appConfig.conncode,\r\n \"method\": \"AddVehicle\",\r\n \"userid\": this.appConfig.fleetuserid,\r\n \"platenumber\":name,\r\n \"subfleetid\":subfleetid,\r\n \"companyid\":110,\r\n },\r\n {\r\n headers: {\r\n \"Authorization\": \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),\r\n }\r\n })\r\n }\r\n\r\n SearchSWO(value){\r\n return this.http.post(this.baseURI + '/FlexIntegration', { \"method\":\"Get_SWO_ServiceListByName \",\"name\":value, top:100} )\r\n }\r\n\r\n GetTaskCategories() {\r\n return this.http.post(this.baseURI + '/TaskCategory', {});\r\n }\r\n\r\n AddSubFleetPolarix(name): Observable {\r\n return this.http.post(this.appConfig.urlInformation, {\r\n \"conncode\": this.appConfig.conncode,\r\n \"method\": \"AddSubFleet\",\r\n \"userid\": this.appConfig.fleetuserid,\r\n \"name\":name,\r\n \"companyid\":110,\r\n },\r\n {\r\n headers: {\r\n \"Authorization\": \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),\r\n }\r\n })\r\n }\r\n\r\n AssignDeviceToVehiclePolarix(vehid,devicename): Observable {\r\n return this.http.post(this.appConfig.urlInformation, {\r\n \"conncode\": this.appConfig.conncode,\r\n \"method\": \"AssignDeviceToVehicle\",\r\n \"userid\": this.appConfig.fleetuserid,\r\n \"vehid\":vehid,\r\n \"devicename\":devicename,\r\n },\r\n {\r\n headers: {\r\n \"Authorization\": \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),\r\n }\r\n })\r\n }\r\n\r\n GetPOI(search: string = \"\"): ServiceInterface[] {\r\n this._interfacectrlmapService.ShowLoading(\"Espere porfavor\", \"Cargando Data\");\r\n this._interfacectrlmapService.HideLoading();\r\n let data = [\r\n { Id: 1, Time: 'E1', Site: 'N1', AssignedTo: 'AssignedTo1' },\r\n { Id: 2, Time: 'E2', Site: 'N1', AssignedTo: 'AssignedTo2' },\r\n { Id: 3, Time: 'E3', Site: 'N1', AssignedTo: 'AssignedTo3' },\r\n { Id: 4, Time: 'E4', Site: 'N1', AssignedTo: 'AssignedTo4' },\r\n ];\r\n return data;\r\n }\r\n\r\n GetMilesLog(vehid,startdateandtime,enddateandtime): Observable {\r\n return this.http.post(this.appConfig.urlInformation, {\r\n \"conncode\": this.appConfig.conncode,\r\n \"method\": \"getvehiclemileagehistory\",\r\n \"userid\": this.appConfig.fleetuserid,\r\n \"vehid\":vehid,\r\n \"startdateandtime\": this.GetDateTime(startdateandtime, \"yyyymmdd\"),\r\n \"enddateandtime\":this.GetDateTime(enddateandtime, \"yyyymmdd\")\r\n },\r\n {\r\n headers: {\r\n \"Authorization\": \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),\r\n }\r\n })\r\n }\r\n\r\n GetPOIByID(ids: number[]): MarketInterface[] {\r\n let data = [\r\n { ID: 1, Lat: 19.491950, lng: -99.694015, name: \"test\", zoom: 9, icon: \"service.gif\" },\r\n { ID: 2, Lat: 19.290960, lng: -99.653025, name: \"otro\", zoom: 9, icon: \"service.gif\" }\r\n ];\r\n return data;\r\n }\r\n\r\n // Regresa todos los services sites\r\n GetAllInfo(method:any):Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',{ \"method\":method})\r\n }\r\n\r\n GetAllInfoDinamicoEstimate(method:any, name:any):Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',{ \"method\":method,\"astimateName\":name,estimateID:null})\r\n }\r\n\r\n GetAllInfoDinamicoEstimateMaster(method:any, name:any):Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',{ \"method\":method,\"astimateName\":name,estimateID:null})\r\n }\r\n\r\n GetAllInfoDinamico(method:any, name:any):Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',{ \"method\":method,\"name\":name})\r\n }\r\n\r\n GetAllInfoDinamicoMaster(method:any, name:any):Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',{ \"method\":method,\"name\":name})\r\n }\r\n\r\n InfoFiltrada(method:any,campo:any):Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',{ \"method\":method, EMPLOYEENAME:campo})\r\n }\r\n\r\n GetSitesByID(method:any,campo:any):Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',{ \"method\":method, \"siteid\":campo})\r\n }\r\n\r\n GetOrderByID(method:any,campo:any):Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',{ \"method\":method, \"id\":campo})\r\n }\r\n\r\n GetAllInfoFiltro(method:any,campo:any):Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',{ \"method\":method})\r\n }\r\n\r\n GetInfo(method:any):Observable{\r\n return this.http.post(this.baseURI + method,{})\r\n }\r\n\r\n SendNotification(obj:any):Observable{\r\n return this.http.post(this.baseURI + '/Notifications/NotificationsTemplateA', obj)\r\n }\r\n\r\n SendNotificationB(obj:any):Observable{\r\n return this.http.post(this.baseURI + '/Notifications/NotificationsTemplateB', obj)\r\n }\r\n\r\n SendNotificationLetterType(obj:any):Observable{\r\n return this.http.post(this.baseURI + '/Notifications/NotificationGenericTemplate', obj)\r\n }\r\n\r\n InsertSWO(informacion:Object):Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',informacion)\r\n }\r\n\r\n GeneralService(obj:Object){\r\n return this.http.post(this.baseURI + '/FlexIntegration',obj);\r\n }\r\n\r\n GetRequestByName(name) {\r\n return this.http.post(this.baseURI + \"Contacts/Get_AllContactsByName\", {name: \"Hector Hernandez\" });\r\n }\r\n \r\n \r\n GetPMTask(assetID,serviceDetailID) {\r\n return this.http.post(this.baseURI + \"/ServiceWorkOrderDetail/GetServiceDetailPMTask\", {systemid: assetID, servicedetailid:serviceDetailID});\r\n }\r\n\r\n GetPO(metodo,valor) {\r\n return this.http.post(this.baseURI + metodo, {projectid: valor});\r\n }\r\n\r\n GetInfoDinamica(metodo,valor) {\r\n return this.http.post(this.baseURI + metodo, {projectid: valor});\r\n }\r\n\r\n SaveServiceManagement(metodo,valor) {\r\n return this.http.post(this.baseURI + metodo, valor);\r\n }\r\n\r\n GetAllInfoDinamica(metodo,valor) {\r\n return this.http.post(this.baseURI + metodo, {serviceid:valor});\r\n }\r\n \r\n SaveInfoSites(datos):Observable {\r\n // console.log(datos)\r\n return this.http.post(this.baseURI + '/FlexIntegration',datos)\r\n }\r\n\r\n generateToken(datos):Observable {\r\n // console.log(datos)\r\n return this.http.post(this.baseURI + '/FlexIntegration/createActionToken',{ estimateid: datos })\r\n }\r\n\r\n ProcesarPago(datos):Observable {\r\n // console.log(datos)\r\n return this.http.post(this.baseURI + '/Payment/createCharge',datos)\r\n }\r\n\r\n ProcesarPagoUtility(datos):Observable {\r\n // console.log(datos)\r\n return this.http.post(this.apiBaseUrlUtility + '/Payment/createChargev2',datos)\r\n }\r\n\r\n SendInvoiceCustomer(datos):Observable {\r\n // console.log(datos)\r\n return this.http.post(this.apiBaseUrlUtility + '/DownloadFile/SendNewClientInvoice',datos)\r\n }\r\n\r\n InfoReport(datos):Observable {\r\n // console.log(datos)\r\n // return this.http.post(this.baseURI + '/FlexIntegration',datos)\r\n return this.http.post(this.baseURI + '/Reports/CallReport', datos );\r\n } \r\n\r\n SaveInfoSites2(datos):Observable {\r\n // console.log(datos)\r\n // const data = \"https://flexapi.cube-usa.com\"\r\n return this.http.post(this.EndpPointTag + '/FlexIntegration',datos)\r\n }\r\n\r\n SendNotificationWorks(data){\r\n return this.http.post(this.baseURI + '/Notifications/SendNotifications', data )\r\n }\r\n\r\n SendNotificationPR(data){\r\n return this.http.post(this.baseURI + '/Notifications/SendNotification', data )\r\n }\r\n\r\n// https://devapi.cube-usa.com/openai/OpenAI\r\n ImageRecognition(data){ \r\n\r\n\r\n return this.http.post(\"https://devapi.cube-usa.com/openai/OpenAI\", data )\r\n // return this.http.post(this.baseURI + '/openai/OpenAI', data )\r\n }\r\n\r\n\r\n analyzeImage(base64Data: string) {\r\n // const url = 'https://devapi.cube-usa.com/openai/OpenAI'; \r\n const body = { base64: base64Data };\r\n \r\n return this.http.post(this.urlAI, body);\r\n }\r\n\r\n\r\n\r\n saveDataTranfer(datos):Observable {\r\n // console.log(datos)\r\n return this.http.post(this.baseURI + '/FlexIntegration/Payment/create',datos)\r\n }\r\n\r\n saveDataTranferUtility(datos):Observable {\r\n // console.log(datos)\r\n // return this.http.post(this.apiBaseUrlUtility + '/Payment/create',datos)\r\n return this.http.post(this.baseURI + '/Payment/create', datos)\r\n }\r\n\r\n SearInAI(datos):Observable {\r\n // console.log(datos)\r\n return this.http.get(\"http://cubeai.cube-usa.com:3000/cubeai/:\"+ datos)\r\n }\r\n\r\n SearInAICubeBox(url, datos):Observable {\r\n console.log(datos)\r\n return this.http.get(url + datos)\r\n\r\n }\r\n\r\n getcubechatResponse(obj: any) {\r\n \r\n return this.http.post(this.urlAI + '/cubeAI', obj);\r\n \r\n } \r\n \r\n GetCodeFromAI(obj: any) {\r\n return this.http.post(this.urlAI + '/cubeAIv3', obj); \r\n }\r\n\r\n MethodCallApiFlex(datos):Observable {\r\n return this.http.post(this.baseURI + '/FlexIntegration',datos)\r\n }\r\n\r\n MethodCallApiFlexUtility(datos):Observable {\r\n return this.http.post(this.apiBaseUrlUtility + '/FlexIntegration/ExecuteCommand', datos)\r\n }\r\n\r\n MethodCallApiFlexCubeWorks(datos):Observable {\r\n return this.http.post(this.baseURI + '/FlexIntegration/CallFlexCubeWorks',datos)\r\n }\r\n\r\n getParameters(datos):Observable {\r\n return this.http.post(this.baseURI + '/FlexIntegration',{method:\"GetProcedureXMLParameters\",procedurename: datos})\r\n }\r\n\r\n getProjectionBoard(){\r\n return this.http.post(this.baseURI + '/FlexIntegration',{method:\"Get_SalesForecastProjectionBoard\"})\r\n }\r\n\r\n NotifyTechnician(serviceid,mailto,subject){\r\n return this.http.post(this.baseURI + '/Notifications/NotificationServiceCust', { serviceid: serviceid, mailto: mailto, subject:subject } )\r\n }\r\n\r\n NotifyCustomer(serviceid,mailto){\r\n return this.http.post(this.baseURI + '/Notifications/NotificationServiceCust', { serviceid: serviceid, mailto: mailto, subject:'A new service ticket has been opened' } )\r\n }\r\n\r\n GetDocument(filepath):Observable {\r\n return this.http.post(this.baseURI + '/DownloadFile/Download', { filename: filepath } );\r\n }\r\n\r\n GetDocumentThumImg(filepath):Observable {\r\n return this.http.post(this.baseURI + '/DownloadFile/Download', { filename: filepath } );\r\n }\r\n\r\n DownloadDocument(filepath): Observable{\r\n return this.http.post(this.baseURI + '/DownloadFile/Download', { filename: filepath });\r\n }\r\n\r\n CopyFromAssets(data): Observable{\r\n return this.http.post(this.baseURI + '/DownloadFile/CopyAssetImages', { filestring: data });\r\n }\r\n\r\n SaveDocument(filestring,id){\r\n return this.http.post(this.baseURI + '/DownloadFile/Upload', { filestring: filestring, doctype: 'swodocs', id: id })\r\n }\r\n\r\n SaveDocumentDinamico(file, id,doctype){\r\n return this.http.post(this.baseURI + '/DownloadFile/Upload', { filestring: file, doctype: doctype, id: id })\r\n }\r\n\r\n // Regresa todos los services sites\r\n GetAllInfoOldFormat(method:any):Observable{\r\n return this.http.post(this.baseURI + method,{})\r\n }\r\n\r\n // Regresa todos los services sites\r\n GetAllPOI(allSelected?: boolean):Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',{ \"method\":\"Get_ServiceSites\"})\r\n }\r\n\r\n GetActivitySalesLeadProject(id){\r\n return this.http.post(this.baseURI + '/FlexIntegration', { method: 'Get_ActivityListByProject', projectid: id } );\r\n }\r\n\r\n InsertUpdateActivity(model) {\r\n return this.http.post(this.baseURI + '/Activity/InsertUpdateActivity', model);\r\n }\r\n\r\n GetProjectActivity(projectid) {\r\n return this.http.post(this.baseURI + '/Activity/GetActivityListByProject', { projectid: projectid });\r\n }\r\n\r\n GetProjectActivityFlex(projectid){\r\n return this.http.post(this.baseURI + '/FlexIntegration', { method: 'Get_ActivityListByProject', projectid: projectid });\r\n }\r\n \r\n // Regresa todos los services sites\r\n GetLogs(allSelected?: boolean):Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',{ \"method\":\"Get_Log\"})\r\n }\r\n\r\n // Trae todos los services work order \r\n GetAllService(allSelected?: boolean, unitOrDrier?: UnitOrDriverInterface, startdate?: Date,enddate?: Date,): Observable {\r\n return this.http.post(this.baseURI + '/FlexIntegration',\r\n {\r\n \"method\":\"Get_ServiceWorkOrderServiceSitesByDate\",\r\n \"startdate\": this.GetDateTime(startdate, \"yyyymmdd\") + \" 00:01\",\r\n \"enddate\":this.GetDateTime(startdate, \"yyyymmdd\") + \" 23:59:59\"\r\n }\r\n )\r\n }\r\n\r\n GetVehiclesCubeMia():Observable{\r\n return this.http.post(this.baseURI + '/FlexIntegration',\r\n { \r\n \"method\":\"Get_VehiclesByDeviceId\",\r\n \"deviceid\":\"864251020154930\"\r\n }\r\n ) \r\n }\r\n \r\n GetGeofence(search: string = \"\"): SiteInterface[] {\r\n this._interfacectrlmapService.ShowLoading(\"Espere porfavor\", \"Cargando Data\");\r\n this._interfacectrlmapService.HideLoading();\r\n let data = [\r\n { Id: 1, Name: 'N1', Customer: 'Customer1' },\r\n { Id: 2, Name: 'N1', Customer: 'Customer2' },\r\n { Id: 3, Name: 'N1', Customer: 'Customer3' },\r\n { Id: 4, Name: 'N1', Customer: 'Customer4' },\r\n ];\r\n return data;\r\n }\r\n\r\n GetGeofenceByID(ids: number[]): MarketGeofenceInterface[] {\r\n let data = [\r\n {\r\n ID: 1,\r\n Latlng: [\r\n { lat: 0, lng: 10 },\r\n { lat: 0, lng: 20 },\r\n { lat: 10, lng: 20 },\r\n { lat: 10, lng: 10 },\r\n { lat: 0, lng: 10 }\r\n ],\r\n name: \"test\", zoom: 9, icon: \"site.png\"\r\n },\r\n {\r\n ID: 2,\r\n Latlng: [\r\n { lat: 0, lng: 10 },\r\n { lat: 0, lng: 20 },\r\n { lat: 10, lng: 20 },\r\n { lat: 10, lng: 10 },\r\n { lat: 0, lng: 10 }\r\n ],\r\n name: \"otro\", zoom: 9, icon: \"site.png\"\r\n }\r\n ];\r\n return [];\r\n }\r\n\r\n GetAllGeofence(allSelected: boolean): Observable {\r\n return this.http.get(this.appConfig.urlInformation + 'conncode=PolarixUSA&method=GetZones&company=115').\r\n pipe(\r\n map((data: any): MarketGeofenceInterface[] => {\r\n let result: MarketGeofenceInterface[] = [];\r\n data.ForesightFlexAPI.DATA.forEach((element, index, array) => {\r\n result.push({\r\n ID: parseInt(element.ID),\r\n Latlng: this.GetVertices(element.Vertices),\r\n name: element.ZoneName,\r\n zoom: 9,\r\n icon: \"site.png\",\r\n puted: allSelected,\r\n });\r\n });\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n GetRoute(allSelected: boolean, unitOrDrier: UnitOrDriverInterface, dateFrom: Date, dateToRoute: Date): Observable {\r\n //return this.http.get(this.appConfig.urlInformation + 'conncode=PolarixUSA&method=HistoryOfUnit&tobjectid=' + unitOrDrier.ID + '&startdate=' + this.GetDateTime(dateFrom, \"yyyymmdd\") + '&enddate=' + this.GetDateTime(dateToRoute, \"yyyymmdd\")).\r\n let headers = new HttpHeaders();\r\n headers = headers.append(\"Authorization\", \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass));\r\n \r\n \r\n return this.http.post(this.appConfig.urlInformation, {\r\n \"conncode\": this.appConfig.conncode,\r\n \"method\": \"HistoryOfUnit\",\r\n \"tobjectid\": unitOrDrier.ID,\r\n \"userid\": this.appConfig.fleetuserid,\r\n \"startdate\": this.GetDateTime(dateFrom, \"yyyymmdd\"),\r\n \"enddate\": this.GetDateTime(dateToRoute, \"yyyymmdd\")\r\n },\r\n {\r\n headers\r\n }) \r\n .pipe(\r\n map((data: any): MarketRouteInterface[] => {\r\n let result: MarketRouteInterface[] = [];\r\n const auxData = data.ForesightFlexAPI.DATA;\r\n if (auxData.length != undefined) {\r\n result.push({\r\n ID: parseInt(auxData[0].id),\r\n Latlng: this.GetVerticesRoutes(auxData),\r\n name: auxData[0].Name,\r\n zoom: 9,\r\n icon: \"site.png\",\r\n puted: allSelected,\r\n IsDelete: false,\r\n show:false,\r\n today:\"\",\r\n sale:\"\",\r\n Lat:0,\r\n lng:0,\r\n });\r\n }\r\n else {\r\n result.push({\r\n ID: parseInt(auxData.id),\r\n Latlng: [{ lat: parseFloat(auxData.ylat), lng: parseFloat(auxData.xlong) }],\r\n name: auxData.Name,\r\n zoom: 9,\r\n icon: \"site.png\",\r\n puted: allSelected,\r\n IsDelete: false,\r\n show:false,\r\n today:\"\",\r\n sale:\"\",\r\n Lat:auxData.ylat,\r\n lng:auxData.xlong,\r\n });\r\n //result[0].Latlng.push({ lat: parseFloat(auxData.ylat)+10, lng: parseFloat(auxData.xlong) +10 });\r\n }\r\n\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n GetRouteByID(ids: number[]): MarketRouteInterface[] {\r\n let data = [\r\n {\r\n ID: 1,\r\n Latlng: [\r\n { lat: 0, lng: 10 },\r\n { lat: 0, lng: 20 },\r\n { lat: 10, lng: 20 },\r\n { lat: 10, lng: 10 },\r\n { lat: 0, lng: 10 }\r\n ],\r\n name: \"test\", zoom: 9, icon: \"site.png\"\r\n },\r\n {\r\n ID: 2,\r\n Latlng: [\r\n { lat: 0, lng: 10 },\r\n { lat: 0, lng: 20 },\r\n { lat: 10, lng: 20 },\r\n { lat: 10, lng: 10 },\r\n { lat: 0, lng: 10 }\r\n ],\r\n name: \"otro\", zoom: 9, icon: \"site.png\"\r\n }\r\n ];\r\n return [];\r\n }\r\n\r\n private GetVertices(Vertices: string): LatLngInterface[] {\r\n let latLon: LatLngInterface[] = [];\r\n Vertices.replace(/[{()} ]/g, '').split(';').forEach((element: any) => {\r\n const values = element.split(',');\r\n latLon.push({\r\n lat: parseFloat(values[0]),\r\n lng: parseFloat(values[1]),\r\n });\r\n });\r\n return latLon;\r\n }\r\n\r\n private GetVerticesRoutes(Vertices: any): LatLngInterface[] {\r\n let latLon: LatLngInterface[] = [];\r\n Vertices.forEach((element: any) => {\r\n latLon.push({\r\n lat: parseFloat(element.ylat),\r\n lng: parseFloat(element.xlong),\r\n });\r\n });\r\n return latLon;\r\n }\r\n\r\n GetAllUnitOrDriver(search: string): Observable {\r\n return this.http.get(this.appConfig.urlInformation + 'conncode=PolarixUSA&method=UnitsAndOperators&company=115&searchname=' + search).\r\n pipe(\r\n map((data: any): UnitOrDriverInterface[] => {\r\n let result: UnitOrDriverInterface[] = [];\r\n data.ForesightFlexAPI.DATA.forEach((element, index, array) => {\r\n result.push({\r\n ID: parseInt(element.id),\r\n Name: element.name\r\n });\r\n });\r\n return result;\r\n })\r\n );\r\n }\r\n\r\n GetAllUnit(search: string): Observable {\r\n\r\n let headers = new HttpHeaders();\r\n headers = headers.append(\"Authorization\", \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass));\r\n \r\n \r\n return this.http.post(this.appConfig.urlInformation, {\r\n \"conncode\": this.appConfig.conncode,\r\n \"method\": \"Units\",\r\n \"searchname\": search,\r\n \"userid\": this.appConfig.fleetuserid\r\n },\r\n {\r\n headers\r\n })\r\n .pipe(\r\n map((data: any): UnitOrDriverInterface[] => {\r\n let result: UnitOrDriverInterface[] = [];\r\n if (Array.isArray(data.ForesightFlexAPI.DATA)) {\r\n data.ForesightFlexAPI.DATA.forEach((element, index, array) => {\r\n result.push({\r\n ID: parseInt(element.id),\r\n Name: element.name\r\n });\r\n }) \r\n }\r\n else {\r\n result.push({\r\n ID: parseInt(data.ForesightFlexAPI.DATA.id),\r\n Name: data.ForesightFlexAPI.DATA.name\r\n });\r\n }\r\n return result;\r\n })\r\n );\r\n\r\n // return this.http.get(this.appConfig.urlInformation + 'conncode=PolarixUSA&method=Units&userid='+ this.appConfig.fleetuserid + '&searchname=' + search).\r\n // pipe(\r\n // map((data: any): UnitOrDriverInterface[] => {\r\n // let result: UnitOrDriverInterface[] = [];\r\n // data.ForesightFlexAPI.DATA.forEach((element, index, array) => {\r\n // result.push({\r\n // ID: parseInt(element.id),\r\n // Name: element.name\r\n // });\r\n // });\r\n // return result;\r\n // })\r\n // );\r\n }\r\n\r\n private GetDateTime(dateTime: Date, fomat: string): string {\r\n let result = '';\r\n switch (fomat) {\r\n case \"yyyymmdd\":\r\n result = dateTime.getFullYear() + this.completeLeft((dateTime.getMonth() + 1).toString(), 2) + this.completeLeft(dateTime.getDate().toString(), 2);\r\n break;\r\n }\r\n return result;\r\n }\r\n\r\n private GetDateTimewithFormat(dateTime: Date, fomat: string): string {\r\n let result = '';\r\n switch (fomat) {\r\n case \"yyyymmdd\":\r\n result = dateTime.getFullYear() + \"/\" + this.completeLeft((dateTime.getMonth() + 1).toString(), 2) + \"/\" +this.completeLeft(dateTime.getDate().toString(), 2);\r\n break;\r\n }\r\n return result;\r\n }\r\n\r\n private completeLeft(value: string, length: number, chart: String = '0'): string {\r\n let result = value;\r\n // while (result.length < length) {\r\n // result += chart;\r\n // }\r\n if (Number(result) <= 9) {\r\n result = '0' + result;\r\n }\r\n return result;\r\n }\r\n\r\n getEmailTemplate(){\r\n return this.http.post(this.baseURI + '/FlexIntegration', {\"method\":\"GetNotificationEmailTemplate \"})\r\n }\r\n\r\n insertUpdateEmailTemplate(obj){\r\n return this.http.post(this.baseURI + '/FlexIntegration', obj) \r\n }\r\n\r\n GetVendorsPart(id){\r\n return this.http.post(this.baseURI + '/FlexIntegration', {method: 'Get_VendorsPartsByVendorId', vendorid: id}) \r\n }\r\n\r\n syncVendorPart(partnumber, partid, update, vendormaster, mastertoken){\r\n partnumber = encodeURIComponent(partnumber); \r\n return this.http.get(this.baseURI + '/Apls/api?partnumber='+partnumber+'&vendorpartid='+partid+'&updateprice='+update+'&vendormaster='+vendormaster+'&mastertoken='+mastertoken, {})\r\n }\r\n\r\n syncVendorPart2(partnumber, partid, update, vendormaster, mastertoken){\r\n partnumber = encodeURIComponent(partnumber); \r\n \r\n return this.http.get(this.AppConfigService.appConfig.apiMasterVendorUrl + '?partnumber='+partnumber+'&vendorpartid='+partid+'&updateprice='+update+'&vendormaster='+vendormaster+'&mastertoken='+mastertoken, {\r\n headers: new HttpHeaders()\r\n .set('Authorization', 'Bearer ' + localStorage.getItem('token'))\r\n .set(\"Authorization\", \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),)\r\n })\r\n }\r\n \r\n sendOrderVendor(mastertoken, parameters){\r\n return this.http.get(this.AppConfigService.appConfig.apiMasterVendorUrl + '/orderSubmit?parameters='+parameters+'&mastertoken='+mastertoken, {\r\n headers: new HttpHeaders()\r\n .set('Authorization', 'Bearer ' + localStorage.getItem('token'))\r\n .set(\"Authorization\", \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),)\r\n })\r\n }\r\n\r\n GetCategories(manufacturerId){\r\n return this.http.get(this.AppConfigService.appConfig.apiMasterVendorUrl + `/getCategories?parameters={ManufacturerIds:[${manufacturerId}]}`, {\r\n headers: new HttpHeaders()\r\n .set('Authorization', 'Bearer ' + localStorage.getItem('token'))\r\n .set(\"Authorization\", \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),)\r\n })\r\n }\r\n \r\n GetManufacturer(categoryId, productTypeId,){\r\n return this.http.get(this.AppConfigService.appConfig.apiMasterVendorUrl + `/getManufacturer?parameters={ManufacturerIds:[],CategoryIds:[${categoryId}],ProductTypeIds:[${productTypeId}]}`, {\r\n headers: new HttpHeaders()\r\n .set('Authorization', 'Bearer ' + localStorage.getItem('token'))\r\n .set(\"Authorization\", \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),)\r\n })\r\n }\r\n\r\n GetproductType(categoryId, manufacturerId){\r\n return this.http.get(this.AppConfigService.appConfig.apiMasterVendorUrl + `/getProductTypes?parameters={ManufacturerIds:[${manufacturerId}],ProductTypeIds:[],CategoryIds:[${categoryId}]}`, {\r\n headers: new HttpHeaders()\r\n .set('Authorization', 'Bearer ' + localStorage.getItem('token'))\r\n .set(\"Authorization\", \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),)\r\n })\r\n }\r\n\r\n GetByCategoryId(categoryId, productTypeId, manufacturerId){\r\n return this.http.get(this.AppConfigService.appConfig.apiMasterVendorUrl + `/getProductByCategory?parameters={ManufacturerIds:[${manufacturerId}],CategoryIds:[${categoryId}],ProductTypeIds:[${productTypeId}]}`, {\r\n headers: new HttpHeaders()\r\n .set('Authorization', 'Bearer ' + localStorage.getItem('token'))\r\n .set(\"Authorization\", \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),)\r\n })\r\n }\r\n\r\n GetProductByNumber(partnumber, vendormaster, mastertoken){\r\n partnumber = encodeURIComponent(partnumber); \r\n return this.http.get(this.AppConfigService.appConfig.apiMasterVendorUrl + `/getProductByNum?partnumber=${partnumber}&vendormaster=${vendormaster}&mastertoken=${mastertoken}`, {\r\n headers: new HttpHeaders()\r\n .set('Authorization', 'Bearer ' + localStorage.getItem('token'))\r\n .set(\"Authorization\", \"Basic \" + btoa(this.appConfig.polarixapiuser + \":\" + this.appConfig.polarixapipass),)\r\n })\r\n }\r\n\r\n GetHelpSteps(component_name):Observable {\r\n let info = {\r\n method: \"GetOmboarding_Hints\",\r\n component_name: component_name\r\n }\r\n return this.http.post(this.baseURI + '/FlexIntegration', info)\r\n }\r\n\r\n PartsMasterOnDemand(name): Observable {\r\n return this.http.post(this.baseURI + '/FlexIntegration', {\r\n method: \"Get_MasterParts_CList\",\r\n search: name\r\n })\r\n }\r\n\r\n PartsClientOnDemand(name): Observable {\r\n return this.http.post(this.baseURI + '/FlexIntegration', {\r\n method: \"Get_PartsALlCETop\",\r\n name: name\r\n })\r\n }\r\n\r\n\r\n NotifyNewProposal(mailto, subject, dataProposalid, service){\r\n return this.http.post(this.baseURI + '/Notifications/SendNotifications', { service: service, mailto: mailto, subject:subject, parameterxml: `${dataProposalid}` } )\r\n }\r\n\r\n duplicateImage(from, to){\r\n console.log(from)\r\n console.log(to)\r\n return this.http.post(this.baseURI + '/DownloadFile/DuplicateSystem', { \"from\": from, \"to\" : to } )\r\n }\r\n\r\n duplicateImageCR(from, to){\r\n console.log(from)\r\n console.log(to)\r\n return this.http.post(this.baseURI + '/DownloadFile/Duplicate103System', { \"from\": from, \"to\" : to } )\r\n }\r\n\r\n DowloadDocumentlowQuality(filepath): Observable {\r\n return this.http.post(this.apiBaseUrlUtility + '/DownloadFile/DownloadThumImgShop', { filename: filepath });\r\n }\r\n\r\n\r\n NotificationUtility(data): Observable {\r\n return this.http.post(this.apiBaseUrlUtility + '/Notifications/SendNotificationFromTemplate', data);\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 { AppConfigService } from '../app-config.service.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MarketAnalysisService {\r\n\r\n private uri = \"\";//`${environment.apiUrl}`;\r\n\r\n constructor(private http: HttpClient, private appConfigService: AppConfigService) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n }\r\n\r\n GetForecastURL() {\r\n return this.uri + '/Forecast';\r\n }\r\n\r\n GetMarketAnalysisRegions() {\r\n return this.http.post(this.uri + '/MarketAnalysis/GetMarketAnalysisRegions', {} );\r\n }\r\n\r\n GetMarketAnalysisClientCompetitors() {\r\n return this.http.post(this.uri + '/MarketAnalysis/GetMarketAnalysisClientCompetitors', {} );\r\n }\r\n\r\n SaveMarketAnalysisClientCompetitors(form) {\r\n return this.http.post(this.uri + '/MarketAnalysis/InsertMarketAnalysisCompetitos', form );\r\n }\r\n\r\n SaveMarketAnalysisRegions(form) {\r\n return this.http.post(this.uri + '/MarketAnalysis/InsertMarketAnalysisRegions', form );\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppConfigService } from '../app-config.service.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OpenPunchListService {\r\n\r\n private baseurl = \"\";\r\n private apiroute = \"\";\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private appSetting: AppConfigService,\r\n ) {\r\n this.baseurl = this.appSetting.apiBaseUrl;\r\n this.apiroute = '/FlexIntegration';\r\n }\r\n\r\n InsertUpdateOpenItem(servicesiteid, name, dateex, responsible, itemreviewed, datereview, itemclosed, dateclosed, notes ){\r\n let obj = {\r\n method: 'SavePunchItempProjectCe',\r\n // servicesiteid: servicesiteid,\r\n projectid: servicesiteid,\r\n name: name,\r\n dateex: dateex,\r\n responsible: responsible,\r\n itemclosed: itemclosed,\r\n dateclosed: dateclosed,\r\n notes: notes,\r\n itemreviewed: itemreviewed,\r\n datereview: datereview,\r\n id: 0,\r\n }\r\n console.log(obj)\r\n return this.http.post(this.baseurl + '/FlexIntegration', obj);\r\n }\r\n\r\n GetPunchList(idProject){\r\n return this.http.post(this.baseurl + '/FlexIntegration', {method:'Get_OpenPunchListItemAllByProjectId', numProjectID:idProject});\r\n // return this.http.post(this.baseurl + this.apiroute, {method:'Get_OpenPunchListItemAll', Projected:idProject})\r\n }\r\n\r\n UpdatePunchList(taskid, projectid, userid, name, dateex, responsible, itemclosed, dateclosed, notes, itemreviewed, datereview ){\r\n let obj = {\r\n method: 'SavePunchItempProjectCe',\r\n name: name,\r\n dateex: dateex,\r\n responsible: responsible,\r\n itemclosed: itemclosed,\r\n dateclosed: itemclosed ? dateclosed : null,\r\n notes: notes,\r\n itemreviewed: itemreviewed,\r\n datereview:itemreviewed ? datereview : null,\r\n projectid: projectid,\r\n id: taskid,\r\n }\r\n console.log(obj);\r\n return this.http.post(this.baseurl + this.apiroute, obj);\r\n }\r\n\r\n GetPunchListByID(id){\r\n return this.http.post(this.baseurl + this.apiroute, {method:'Get_OpenPunchListItemById', itemid: id });\r\n }\r\n\r\n //Documents Punch List\r\n\r\n InsertDocument(form){\r\n console.log(form);\r\n return this.http.post(this.baseurl + this.apiroute, form);\r\n }\r\n\r\n DeleteDocument(id){\r\n return this.http.post(this.baseurl + '/ServiceSitePunch', {method:'DeleteOpenItemAttachment', Opeitemid: id });\r\n }\r\n\r\n GetDocuments(id){\r\n let obj = {method:'GetPunchItemsAttachment', punchitemid: id}\r\n return this.http.post(this.baseurl + this.apiroute, obj);\r\n }\r\n\r\n SaveDocumentDinamico(file, id,doctype){\r\n console.log({filestring: file, doctype: doctype, id: id })\r\n return this.http.post(this.baseurl + '/DownloadFile/Upload', { filestring: file, doctype: doctype, id: id })\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppConfigService } from '../app-config.service.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OpenRifService {\r\n private baseurl = \"\";\r\n private apiroute = \"\";\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private appSetting: AppConfigService,\r\n ) {\r\n this.baseurl = this.appSetting.apiBaseUrl;\r\n this.apiroute = '/FlexIntegration';\r\n }\r\n\r\n GetRfiById(id){\r\n return this.http.post(this.baseurl + this.apiroute, {method: 'Get_OpenRFIById', id: id});\r\n }\r\n\r\n Get_ContactsCS(val) {\r\n let model = {\r\n method: \"Get_ContactsByName\",\r\n name: val\r\n };\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n GetAllRfiById(id){\r\n // let obj = {method: 'Get_OpenRFIAllByProjectId', id: id}\r\n let obj = {method: 'Get_RFIByProjectIdCE', projectid: id}\r\n console.log(obj)\r\n return this.http.post(this.baseurl + this.apiroute, obj);\r\n }\r\n\r\n InsertRfi(docname, rfinumber, projectid, lastupdated, contactid, priorityid, assignto, respondbydate, needresponse, rfiresponse, description, id ){\r\n let obj2 = {\r\n method: 'Insert_ProjectRFI',\r\n docname: docname,\r\n rfinumber: rfinumber,\r\n projectid: projectid,\r\n lastupdated: lastupdated, \r\n assignto: assignto,\r\n priorityid: priorityid, \r\n contactid: contactid,\r\n respondbydate: respondbydate,\r\n needresponse: needresponse,\r\n rfiresponse: rfiresponse,\r\n description: description,\r\n id: id, \r\n }\r\n console.log(obj2);\r\n return this.http.post(this.baseurl + this.apiroute, obj2);\r\n }\r\n\r\n InsertRfiContactsID(docname, rfinumber, projectid, lastupdated, contactid, priorityid, assignto, respondbydate, needresponse, rfiresponse, description, id, contactids){\r\n let obj2 = {\r\n method: 'Insert_ProjectRFI',\r\n docname: docname,\r\n rfinumber: rfinumber,\r\n projectid: projectid,\r\n lastupdated: lastupdated, \r\n assignto: assignto,\r\n priorityid: priorityid, \r\n contactid: contactid,\r\n contactids: contactids,\r\n respondbydate: respondbydate,\r\n needresponse: needresponse,\r\n rfiresponse: rfiresponse,\r\n description: description,\r\n id: id, \r\n }\r\n console.log(obj2);\r\n return this.http.post(this.baseurl + this.apiroute, obj2);\r\n }\r\n\r\n GetEmployees(){\r\n return this.http.post(this.baseurl + this.apiroute, {method: 'Get_EmployeeListAll'});\r\n }\r\n\r\n GetContacts(name){\r\n return this.http.post(this.baseurl + '/Contacts/Get_AllContactsByName', {name: name});\r\n }\r\n\r\n GetContacts2(){\r\n return this.http.post(this.baseurl + this.apiroute, {method: 'Get_ContactsAll'})\r\n }\r\n\r\n GetDocuments(id){\r\n let obj = {method:'GetPunchItemsAttachment', id: id}\r\n console.log(obj)\r\n return this.http.post(this.baseurl + this.apiroute, obj);\r\n }\r\n\r\n InsertDocument(opeitemid, attachment, description, createbyid, deleted, id){\r\n let obj = {\r\n method: 'InsertUpdateOpenItemAttachment',\r\n opeitemid: opeitemid,\r\n attachment: attachment,\r\n description: description,\r\n createbyid: createbyid,\r\n deleted: deleted,\r\n id: id,\r\n }\r\n console.log(obj);\r\n return this.http.post(this.baseurl + '/ServiceSitePunch', obj);\r\n }\r\n\r\n notificationsEmail(mail, template, service, parameter, subject){\r\n let obj = {\r\n mailto: mail,\r\n templatename: template,\r\n service: service,\r\n parameterxml: parameter,\r\n subject: subject\r\n }\r\n console.log(obj)\r\n return this.http.post(this.baseurl + '/Notifications/GenericNotification', obj )\r\n }\r\n\r\n notificationsEmailDinamic(mail, template, service, parameter, subject){\r\n let obj = {\r\n mailto: mail,\r\n address: mail,\r\n // templatename: template,\r\n service: service,\r\n parameterxml: parameter,\r\n subject: subject\r\n }\r\n console.log(obj)\r\n return this.http.post(this.baseurl + '/Notifications/SendNotification', obj )\r\n }\r\n\r\n SendNotificationBox(mail, template, service, parameter, subject){\r\n let obj = {\r\n mailto: mail,\r\n address: mail,\r\n // templatename: template,\r\n service: service,\r\n parameterxml: parameter,\r\n subject: subject\r\n }\r\n console.log(obj)\r\n return this.http.post(this.baseurl + '/Notifications/SendNotificationBox', obj )\r\n }\r\n\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 { AppConfigService } from '../app-config.service.service';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PartsService {\r\n private uri = \"\";//`${environment.apiUrl}`;\r\n customerid = '';\r\n apiroute = '/FlexIntegration'\r\n\r\n constructor(private http: HttpClient, private appConfigService: AppConfigService) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n this.customerid = localStorage.getItem('customerid');\r\n }\r\n\r\n GetPartById(id) {\r\n console.log({ method: 'Get_AcctPartsDetailByIDCE', PARTid: id })\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_AcctPartsDetailByIDCE', PARTid: id });\r\n }\r\n\r\n GetPartByIdFlag(id){\r\n console.log({method: 'Get_AcctPartsDetailByIDCEMob',PARTid: id });\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_AcctPartsDetailByIDCEMob', PARTid: id });\r\n }\r\n\r\n InsertUpdate(data) {\r\n return this.http.post(this.uri + this.apiroute, data);\r\n }\r\n\r\n Get_AcctPartsUOM(){\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_AcctPartsUOM'});\r\n }\r\n\r\n InsertUpdate_VendorPartsMultiple(vendorid,detailid, defaultvendor?){\r\n let obj: any = {\r\n method: 'InsertUpdate_VendorPartsMultiple',\r\n vendorid: vendorid,\r\n detailid: detailid,\r\n }\r\n if(defaultvendor){\r\n obj.default = defaultvendor;\r\n }\r\n console.log(obj)\r\n return this.http.post(this.uri + this.apiroute, obj);\r\n }\r\n\r\n\r\n InsertDocument(file, id, doctype) {\r\n let obj = { filestring: file, doctype: doctype, id: id }\r\n console.log('Document string ', obj);\r\n return this.http.post(this.uri + '/DownloadFile/Upload', obj)\r\n }\r\n\r\n DowloadDocument(filepath): Observable {\r\n return this.http.post(this.uri + '/DownloadFile/DownloadThumImg', { filename: filepath });\r\n }\r\n\r\n GetVendors(id) {\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_VendorsForPartCE', partid: id });\r\n }\r\n\r\n GetVendorPartDetails(partid, vendorid){\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_AcctVendorPartsDetailByIDCE', PARTid: partid, VENDORid: vendorid });\r\n }\r\n\r\n GetVendorsAll() {\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_VendorsAll' });\r\n }\r\n\r\n Get_VendorsAllActive() {\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_VendorsAllActive' });\r\n }\r\n\r\n Get_Master_Vendors(){\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_Master_Vendors' });\r\n }\r\n\r\n GetPartType() {\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_PartType' });\r\n }\r\n\r\n GetPartCategory() {\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_PartCategory' });\r\n }\r\n\r\n GetPartTaskCategory() {\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_TaskCategoryCE' });\r\n }\r\n\r\n GetPartsUOM() {\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_AcctPartsUOM' });\r\n }\r\n\r\n GetPartHistory(id) {\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_POPartHiostory', partid: id });\r\n }\r\n\r\n GetVendortHistory(id) {\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_POPartHiostoryByVendorId', vendorid: id });\r\n }\r\n\r\n Get_PartCategoryNotCalsified() {\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_PartCategoryNotCalsified' });\r\n }\r\n\r\n Get_PartCategoryCalsified() {\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_PartCategoryCalsified' });\r\n }\r\n\r\n Get_PartCategory() {\r\n return this.http.post(this.uri + this.apiroute, { method: 'Get_PartCategoryEditPart' });\r\n }\r\n\r\n IsertUdate_Add_ParttoCategory(partid, partcategoryid) {\r\n return this.http.post(this.uri + this.apiroute, {\r\n method: 'IsertUdate_Add_ParttoCategory',\r\n partid: partid,\r\n partcategoryid: partcategoryid\r\n });\r\n }\r\n\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 { AppConfigService } from '../app-config.service.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PipelineService {\r\n\r\n private uri = \"\";// `${environment.apiUrl}`;\r\n\r\n constructor(private http: HttpClient, private appConfigService: AppConfigService) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n }\r\n GetPipeLine(filter) {\r\n return this.http.post(this.uri + '/Pipeline', filter);\r\n }\r\n\r\n GetPipeLineUrl() {\r\n return this.uri + '/Pipeline';\r\n }\r\n\r\n GetOportunityType() {\r\n return this.http.post(this.uri + '/OportunityType', {});\r\n }\r\n\r\n GetOportunityFunnel() {\r\n return this.http.post(this.uri + '/OportunityFunnel', {});\r\n }\r\n\r\n GetOpportunityProbability() {\r\n return this.http.post(this.uri + '/OportunitProbability', {});\r\n }\r\n\r\n GetPipelineByStatus(model) {\r\n return this.http.post(this.uri + '/Pipeline/GetPipelineByStatus', model)\r\n }\r\n\r\n GetOportunityByerRating() {\r\n return this.http.post(this.uri + '/BuyerRating', {});\r\n\r\n }\r\n deletePipeLine(id) {\r\n return this.http.post(this.uri + '/ProjectOportunity/DisableProjectOportunity', { id: id });\r\n }\r\n\r\n UpdatePipelineByStatus(projectid, bidstatusid) {\r\n return this.http.post(this.uri + '/Pipeline/UpdatePipelineProjectBidStatusById', { projectid: projectid, bidstatus: bidstatusid });\r\n } \r\n\r\n UpdatePipelineByRating(id, ratingid) {\r\n return this.http.post(this.uri + '/Pipeline/UpdatePipelineRatingById', { pipelineid: id, ratingid: ratingid });\r\n } \r\n\r\n \r\n UpdatePipelineByProbability(id, probabilityid) {\r\n return this.http.post(this.uri + '/Pipeline/UpdatePipelineProbabilitById', { pipelineid: id, probabilityid: probabilityid });\r\n } \r\n\r\n\r\n \r\n OportunityBuyerType() {\r\n return this.http.post(this.uri + '/OportunityBuyerType', {});\r\n\r\n }\r\n OportunityBuyerMode() {\r\n return this.http.post(this.uri + '/BuyerMode', {});\r\n }\r\n InsertUpdateOportuniyBuyer(model) {\r\n return this.http.post(this.uri + '/ProjectOprtunityBuyer/InsertUpdateOportuniyBuyer', model);\r\n }\r\n\r\n GetBuyerContacts() {\r\n return this.http.post(this.uri + '/Contacts/Get_AllContacts', {});\r\n }\r\n\r\n GetOportunityBuyerInfluence() {\r\n return this.http.post(this.uri + '/Customer/GetCustomerOportunityInfluence', {});\r\n }\r\n\r\n GetOportunityBuyers(id) {\r\n return this.http.post(this.uri + '/ProjectOprtunityBuyer', { oportunityid: id });\r\n }\r\n\r\n GetOportunityRedFlag(id) {\r\n return this.http.post(this.uri + '/ProjectOportunityRedFlag', { oportunityid: id });\r\n }\r\n\r\n InsertUpdateOportunityRedFlag(model) {\r\n return this.http.post(this.uri + '/ProjectOportunityRedFlag/InsertUpdateOportuniyRedFlag', model);\r\n }\r\n\r\n InsertUpdateOportunity(model) {\r\n return this.http.post(this.uri + '/ProjectOportunity/InsertUpdateProjectOportunity', model);\r\n }\r\n\r\n GetRedFlagType() {\r\n return this.http.post(this.uri + '/OportunityRedFlagType', {});\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 { AppConfigService } from '../app-config.service.service';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ProjectService {\r\n\r\n private uri = \"\";// `${environment.apiUrl}`;\r\n\r\n baseURI = '/Flexintegration/CallExtFlex'\r\n customerid = '';\r\n\r\n constructor(private http: HttpClient, private appConfigService: AppConfigService) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n this.customerid = localStorage.getItem('customerid');\r\n }\r\n\r\n GetCustumerProject() {\r\n return this.http.post(this.uri + '/Project/GetCustomerProjects',\r\n // { CustomerId: this.customerid })\r\n { CustomerId: 532 })\r\n }\r\n\r\n GetProjectBlogs(id) {\r\n return this.http.post(this.uri + '/ProjectBlog', { id: id });\r\n }\r\n\r\n\r\n InsertUpdateProjectBlog(value) {\r\n return this.http.post(this.uri + '/ProjectBlog/InsertUpdateProjectBlog', value);\r\n }\r\n\r\n Get_ProjectStatus(): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectStatus' });\r\n }\r\n\r\n GetProjectProgressByDateCE(date): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'GetProjectProgressByDateCE',\r\n tsdate: date\r\n });\r\n }\r\n\r\n Get_ProjectPhasesCE(): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration', { \r\n method: 'Get_ProjectPhasesCE' \r\n });\r\n }\r\n\r\n\r\n\r\n Get_InsertProjecttoWorkFlow(projectid): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration', { \r\n // method: 'Get_ProjectPhasesCE' \r\n method: 'Get_InsertProjecttoWorkFlow',\r\n projectid: projectid\r\n });\r\n }\r\n \r\n Get_ProjectByStatusandPhaseCE() {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'Get_ProjectByStatusandPhaseCE'\r\n });\r\n }\r\n\r\n Update_ProjectPhasesCE(idproject, phaseids) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Update_ProjectPhasesCE',\r\n phaseid: phaseids,\r\n projectid: idproject,\r\n });\r\n }\r\n ProjectBillingStatusCE(idproject, statusid): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Update_ProjectCompletionStatusCE',\r\n projectid: idproject,\r\n completionstatusid: statusid\r\n\r\n });\r\n }\r\n\r\n InsertUpdateGridConfiguration(id, gridid, filterconfig, columnconfig, extraconfig?:any){\r\n let obj: any = {\r\n id: id,\r\n gridid: gridid,\r\n filterconfig: filterconfig,\r\n columnconfig: columnconfig,\r\n extraconfig:extraconfig,\r\n method: 'InsertUpdateGridConfiguration',\r\n }\r\n return this.http.post(this.uri + '/FlexIntegration', obj)\r\n }\r\n\r\n InsertUpdateGridConfigurationVersion(id, gridid, filterconfig, columnconfig, versionconfig){\r\n let obj = {\r\n id: id,\r\n gridid: gridid,\r\n filterconfig: filterconfig,\r\n columnconfig: columnconfig,\r\n version: versionconfig,\r\n method: 'InsertUpdateGridConfiguration',\r\n }\r\n return this.http.post(this.uri + '/FlexIntegration', obj)\r\n }\r\n\r\n InsertUpdateGridConfigurationVersionWithTitle(data){\r\n console.log(data)\r\n return this.http.post(this.uri + '/FlexIntegration', data)\r\n }\r\n\r\n GetGridConfiguration(gridid){\r\n let obj = {\r\n gridid: gridid,\r\n method: 'GetGridConfiguration',\r\n }\r\n return this.http.post(this.uri + '/FlexIntegration', obj)\r\n }\r\n\r\n GetGridMultipleConfigurations(gridid){\r\n let obj = {\r\n gridid: gridid,\r\n method: 'GetGridConfigurations',\r\n }\r\n return this.http.post(this.uri + '/FlexIntegration', obj)\r\n }\r\n\r\n\r\n GetProjectByID(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectByID', projectid: id })\r\n }\r\n\r\n GetAllProjects(method) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: method });\r\n }\r\n\r\n Get_All_ProjectsPartsNyName(name){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_All_ProjectsPartsNyName', name: name});\r\n }\r\n\r\n Get_ServiceContractAllByame(name){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ServiceContractAllByame', projectname: name});\r\n }\r\n\r\n Get_All_ProjectsByName(name){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_All_ProjectsByName', name: name});\r\n }\r\n\r\n Get_All_SalesProjectsByName (nombre){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_All_SalesProjectsByName', name: nombre});\r\n }\r\n\r\n GetProjectsCategories(){\r\n return this.http.post(this.uri + '/ProjectSalesCategory/', {});\r\n }\r\n\r\n InsertUpdateProjectAddress(obj) {\r\n // return this.http.post(this.uri + '/Project/UpdateProjectAddress', obj);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n // Project Status\r\n\r\n InsertUpdateProjectStatus(id, status, startdate, duedate, compdate, warrantydate, warrantyid, percentcomp, projectname) {\r\n let obj = {\r\n id: id,\r\n projectid: id,\r\n statusid: status,\r\n // phaseid: phaseid,\r\n startdate: startdate,\r\n name: projectname,\r\n duedate: duedate,\r\n compdate: compdate,\r\n warrantydate: warrantydate,\r\n warrantyid: warrantyid,\r\n percentcomp: percentcomp,\r\n method: 'Update_ProjectChangeStatus'\r\n }\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n GetProjectStatus() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectStatus' });\r\n }\r\n\r\n Update_ProjectStatusDueDateCompletition(obj){\r\n return this.http.post(this.uri + '/FlexIntegration', { \r\n method: 'Update_ProjectStatusDueDateCompletition',\r\n projectid: obj.id,\r\n status: obj.status,\r\n duedate: obj.dudedate,\r\n completition: obj.percent \r\n });\r\n }\r\n\r\n GetWarrantyTerms() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_WarrantyTerms' });\r\n }\r\n\r\n //Permits\r\n\r\n GetProjectPermits(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectPermits', projectid: id });\r\n }\r\n\r\n GetProjectPermitInspections(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectPermitInspection', projectid: id });\r\n }\r\n\r\n InsertUpdatePermits(form) {\r\n let obj = {\r\n id: form.id,\r\n projectid: form.projectid,\r\n projectpermitnumber: form.permitNumber,\r\n projectpermitnotes: form.permitNotes,\r\n datecreated: form.permitIssuedOn,\r\n lastmodified: form.permitExpiresOn,\r\n permitammount: form.permitAmount,\r\n method: 'InsertUpdate_EditPermits'\r\n }\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n InsertUpdateInspection(form) {\r\n let obj = {\r\n id: form.id,\r\n // projectid: form.projectid,\r\n permitid: form.permit,\r\n inspectiondate: form.inspectionDate,\r\n inspectiontype: form.inspectionType,\r\n inspectionresult: form.inspectionResult,\r\n inspectionassigntoid: form.assginedTo,\r\n inspectionneedbydate: '4/6/2021',\r\n inspectionnotes: form.notes,\r\n method: 'Insert_SaveUpdateProjectPermitInspection'\r\n }\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n //Contract Information\r\n GetPrevaillingWages() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_PrevailingWagesce' });\r\n }\r\n\r\n GetProjectTPostt(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_UpdateProjecTPosttoQB', projectid: id });\r\n }\r\n\r\n InsertUpdateProjectContractInfo(obj) {\r\n let method = { method: 'InsertUpdate_ProjectContractInfo' };\r\n Object.assign(obj, method)\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n UpdateUnlockEstimate(id){\r\n return this.http.post(this.uri + '/FlexIntegration', {method: 'Update_ProjectChangeSoldStatus', projectid: id});\r\n }\r\n\r\n //Project Finanancial\r\n\r\n GetProjectFinnacialByProjectId(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Update_ProjectFinancialByProjectID', projectid: id });\r\n }\r\n\r\n GetProjectFinnacialByProjectId1(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Update_ProjectFinancialByProjectID-1', projectid: id });\r\n }\r\n\r\n GetSubcontractors(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectSubContractor_List', projectid: id });\r\n\r\n }\r\n GetEstimateVsActual(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectActualCostRevenueVsEstimateCostRevenue', projectid: id })\r\n }\r\n\r\n GetEstimateVsActualNew(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectActualCostRevenueVsEstimateCostRevenue', projectid: id })\r\n }\r\n\r\n GetLaborCost(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Project_LaborCostDetailByID', projectid: id })\r\n }\r\n\r\n GetMaterialCost(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Project_MaterialCostByID', projectid: id })\r\n }\r\n\r\n GetSubcontractorCost(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Project_SubcontractorCostDetailByID', projectid: id })\r\n }\r\n\r\n GetExpenseCost(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Project_ExpenseCostDetailByID', projectid: id })\r\n }\r\n\r\n GetMaterialRequest(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectMaterialRequestCE', projectid: id })\r\n }\r\n\r\n GetProjectFinancialDetailByCategory(id){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Project_FinancialDetailByCategory', projectid: id })\r\n }\r\n\r\n PostProjectToQB(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_UpdateProjecTPosttoQB', projectid: id })\r\n }\r\n\r\n Get_Method(obj){\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n //Customer Contact\r\n GetCustomerContactList(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectCustomerContact_List', projectid: id });\r\n }\r\n\r\n GetCustomerParticipantType() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectCustomerParticipantType' });\r\n }\r\n\r\n GetCustomerContactType() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectParticipantContactType' });\r\n }\r\n\r\n GetCustomerContactTypeAll(){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_VerticalProjectParticipantContactTypeAll' });\r\n }\r\n\r\n InsertUpdateCustomer(form) {\r\n let obj = {\r\n method: 'Insert_SaveUpdateProjectCustomerContact',\r\n }\r\n Object.assign(obj, form);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n GetCustomers() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_CustomerCE' });\r\n }\r\n\r\n //Change Order\r\n GetChangeOrders(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Project_ChangeOrderCEByID', projectid: id })\r\n }\r\n\r\n GetDetailsChangeOrder(id) {\r\n let obj = { method: 'Get_Project_ChangeOrderDetailByID', changeid: id };\r\n return this.http.post(this.uri + '/FlexIntegration', obj)\r\n }\r\n\r\n InsertUpdateChangeOrder(obj) {\r\n let method = { method: 'InsertUpdate_ProjectChangeOrder' };\r\n Object.assign(obj, method);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n GetProjectChangeOrderById(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Project_ChangeOrderHeaderCEByID', id: id })\r\n }\r\n\r\n InsertUpdateChangeOrderDetails(obj) {\r\n let method = { method: 'InsertUpdate_ProjectChangeOrderDetail'};\r\n Object.assign(obj, method);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n //Billing\r\n GetProjectRequisition(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectRequistionById', projectid: id })\r\n }\r\n\r\n GetRequisitionList(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectRequisitionListByProjectId', projectid: id })\r\n }\r\n\r\n GetCreditTerms() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_CustomerCreditTerms' })\r\n }\r\n\r\n GetBillingTax() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Taxs' })\r\n }\r\n\r\n GetBillingCategory() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_BillingCategory' })\r\n }\r\n\r\n Get_InserUpdateProjectPhasesCE(form) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_InserUpdateProjectPhasesCE',\r\n id: form.id,\r\n name: form.name,\r\n description: form.description,\r\n sort: form.sort,\r\n active: form.active\r\n });\r\n }\r\n Get_InserUpdateProjectStatusCE(form) {\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_InserUpdateProjectStatusCE',\r\n id: form.id,\r\n status: form.status,\r\n sort: form.sort,\r\n active: form.active\r\n });\r\n }\r\n\r\n //Project WorkFlow\r\n GetWorkflowList(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Project_WorkflowByID', projectid: id });\r\n }\r\n\r\n GetWorkflowListPhase(id,phaseid) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Project_WorkflowByID', projectid: id, phaseid:phaseid});\r\n }\r\n\r\n GetStatusList() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Project_WorkflowStatus' });\r\n }\r\n\r\n UpdateProjectWorkFlow(form) {\r\n let obj = { method: 'Get_UpdateProjectWorkFlow' }\r\n Object.assign(obj, form)\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n //Schedule of Values\r\n GetBillingSchedule(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectsovById', projectid: id });\r\n }\r\n\r\n GetBillingCategorys() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_BillingCategory ' });\r\n }\r\n\r\n GetTaxes() {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Taxs' });\r\n }\r\n\r\n UpdateProjectTax(projectid, salestaxid) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Update_ProjectTax ', projectid: projectid, salestaxid: salestaxid });\r\n }\r\n\r\n DelteBillingSchedule(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Delete_BillingSchedule', projectpartestdetailid: id });\r\n }\r\n\r\n DuplicateBillingSchedule(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Duplicate_BillingSchedule', projectpartdetailid: id });\r\n }\r\n\r\n InsertUpdateSchedule(obj) {\r\n let method = { method: 'InsertUpdate_ProjectPartDetail' }\r\n Object.assign(obj, method);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n GetAllParts(name) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_AccParts', partnamefilter: name });\r\n }\r\n\r\n GetAllPartsNew(name) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_AccPartsNumswithManufacturer', partnamefilter: name });\r\n }\r\n\r\n Get_LaborParts(name) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_LaborParts', partnamefilter: name });\r\n }\r\n\r\n GetAllPartsMaster(name) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_AccPartsMaster', partnamefilter: name });\r\n }\r\n\r\n GetAllParts2(name) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_EstimatePartsValves', partnamefilter: name });\r\n }\r\n\r\n GetPartsValve(name, valveConfigurationSelected?:any, valveTypeSelected?:any, valveSystemTypeSelected?:any, signalSelected?:any, valveLineSelected?:any, valveSizeSelected?:any) {\r\n \r\n if (valveConfigurationSelected == undefined && valveTypeSelected == undefined && valveSystemTypeSelected == undefined && \r\n signalSelected == undefined && valveSizeSelected == undefined){\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { \r\n method: 'Get_EstimatePartsValves', \r\n // partnamefilter: name,\r\n partnamefilter: name == \" \" ? -1 : name,\r\n valvepipecongid: valveConfigurationSelected == undefined ? -2 : valveConfigurationSelected,\r\n valvetypeid: valveTypeSelected == undefined ? -2 : valveTypeSelected,\r\n valvesystemid: valveSystemTypeSelected == undefined ? -2 : valveSystemTypeSelected,\r\n valveacttypeid: signalSelected == undefined ? -2 : signalSelected,\r\n // valvegpm: valveLineSelected == undefined ? -2 : valveLineSelected,\r\n valvegpm: -2,\r\n valvesizeid: valveSizeSelected == undefined ? -2 : valveSizeSelected,\r\n });\r\n\r\n } else {\r\n\r\n return this.http.post(this.uri + '/FlexIntegration', { \r\n method: 'Get_EstimatePartsValves', \r\n partnamefilter: name,\r\n // partnamefilter: name == \" \" ? -2 : name,\r\n valvepipecongid: valveConfigurationSelected == undefined ? -1 : valveConfigurationSelected,\r\n valvetypeid: valveTypeSelected == undefined ? -1 : valveTypeSelected,\r\n valvesystemid: valveSystemTypeSelected == undefined ? -1 : valveSystemTypeSelected,\r\n valveacttypeid: signalSelected == undefined ? -1 : signalSelected,\r\n // valvegpm: valveLineSelected == undefined ? -1 : valveLineSelected,\r\n valvegpm: -1,\r\n valvesizeid: valveSizeSelected == undefined ? -1 : valveSizeSelected,\r\n });\r\n }\r\n \r\n }\r\n\r\n\r\n GetPartsValvenew(name, valveConfigurationSelected?:any, valveTypeSelected?:any, valveSystemTypeSelected?:any, signalSelected?:any, valveLineSelected?:any, valveSizeSelected?:any, designcv?:any) {\r\n \r\n if (valveConfigurationSelected == undefined && valveTypeSelected == undefined && valveSystemTypeSelected == undefined && \r\n signalSelected == undefined && valveSizeSelected == undefined){\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { \r\n method: 'Get_EstimatePartsValves', \r\n // partnamefilter: name,\r\n partnamefilter: name == \" \" ? -1 : name,\r\n valvepipecongid: valveConfigurationSelected == undefined ? -2 : valveConfigurationSelected,\r\n valvetypeid: valveTypeSelected == undefined ? -2 : valveTypeSelected,\r\n valvesystemid: valveSystemTypeSelected == undefined ? -2 : valveSystemTypeSelected,\r\n valveacttypeid: signalSelected == undefined ? -2 : signalSelected,\r\n // valvegpm: valveLineSelected == undefined ? -2 : valveLineSelected,\r\n valvegpm: -2,\r\n valvesizeid: valveSizeSelected == undefined ? -2 : valveSizeSelected,\r\n designcv:designcv == undefined ? -2 : designcv,\r\n });\r\n\r\n } else {\r\n\r\n return this.http.post(this.uri + '/FlexIntegration', { \r\n method: 'Get_EstimatePartsValves', \r\n partnamefilter: name,\r\n // partnamefilter: name == \" \" ? -2 : name,\r\n valvepipecongid: valveConfigurationSelected == undefined ? -1 : valveConfigurationSelected,\r\n valvetypeid: valveTypeSelected == undefined ? -1 : valveTypeSelected,\r\n valvesystemid: valveSystemTypeSelected == undefined ? -1 : valveSystemTypeSelected,\r\n valveacttypeid: signalSelected == undefined ? -1 : signalSelected,\r\n // valvegpm: valveLineSelected == undefined ? -1 : valveLineSelected,\r\n valvegpm: -1,\r\n valvesizeid: valveSizeSelected == undefined ? -1 : valveSizeSelected,\r\n designcv:designcv == undefined ? -2 : designcv,\r\n });\r\n }\r\n \r\n }\r\n\r\n\r\n GetPartsDampernew(datos) {\r\n return this.http.post(this.uri + '/FlexIntegration', { \r\n method: 'Get_EstimatePartsDamperActuator', \r\n parttorque:datos.parttorque,\r\n valveacttypeid:datos.valveacttypeid,\r\n valvepwr:datos.valvepwr,\r\n partnamefilter: datos.partnamefilter\r\n });\r\n \r\n }\r\n\r\n GetPartsWithInventory(name) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_AccPartsTypeInventory', partnamefilter: name });\r\n }\r\n\r\n GetAllPartsDetail(name) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_AccPartsServiceDetailWithFilter', partnamefilter: name });\r\n }\r\n\r\n GetAllPartsDetailCubeBox(name) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_AccPartsServiceDetailWithFilterMaterial', partnamefilter: name });\r\n }\r\n\r\n GetAllLaborDetailCubeBox(name) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_AccPartsServiceDetailWithFilterLabor', partnamefilter: name });\r\n }\r\n\r\n GetAllProblem(name) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'GetServiceHistoryProblem', problemtext: name, systemid:null });\r\n }\r\n\r\n GetProjectPartDetail(number) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectPartDetailSugestedValues', partnumber: number, });\r\n }\r\n\r\n GetProjectPartDetail2(number, projectid) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectPartDetailSugestedValues', partnumber: number, projectid: projectid });\r\n }\r\n\r\n SaveEditMultiple(obj) {\r\n let method = { method: 'EditMultiple_BillingSchedule ' }\r\n Object.assign(obj, method);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n SaveRequest(obj) {\r\n let method = { method: 'Save_ProjectMaterialRequestCE ' }\r\n Object.assign(obj, method);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n //Progress Report\r\n InsertProgressReport(form) {\r\n let method = { method: 'InsertProjectProgressCE' };\r\n Object.assign(form, method);\r\n return this.http.post(this.uri + '/FlexIntegration', form);\r\n }\r\n\r\n GetProgressReport(id) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'GetProjectProgressCE', projectid: id });\r\n }\r\n Get_ProjectsAnalysisProfit(): Observable {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectsAnalysisProfit' })\r\n }\r\n Get_OpenPunchListItemAll(): Observable {\r\n return this.http.post(this.uri + \"/Flexintegration\", {\r\n method: 'Get_OpenPunchListItemAll'\r\n })\r\n }\r\n Get_ProjectsLaborProjection(date): Observable {\r\n return this.http.post(this.uri + \"/Flexintegration\", {\r\n method: 'Get_ProjectsLaborProjection',\r\n tsdate: date\r\n })\r\n }\r\n\r\n Get_ProjectsRevenueProjection(date): Observable {\r\n return this.http.post(this.uri + \"/Flexintegration\", {\r\n method: 'RevenueProjection',\r\n tsdate: date\r\n })\r\n }\r\n Get_Project_WorkflowListCE(): Observable {\r\n return this.http.post(this.uri + \"/Flexintegration\", {\r\n method: 'Get_Project_WorkflowListCE'\r\n })\r\n }\r\n Get_Project_WorkflowListCEByPhaseID(id): Observable {\r\n return this.http.post(this.uri + \"/Flexintegration\", {\r\n method: 'Get_Project_WorkflowListCEByPhaseID',\r\n phaseid:id\r\n })\r\n }\r\n Get_Dashboard_PROJECT_STATUS_DASHBOARD(): Observable {\r\n return this.http.post(this.uri + \"/Flexintegration\", {\r\n method: 'DashboardComponents_Get_Dashboard_PROJECT_STATUS_DASHBOARD'\r\n })\r\n }\r\n\r\n NotificationsProgressReport(obj){\r\n return this.http.post(this.uri + '/Notifications/NotificationProgress', obj )\r\n }\r\n\r\n\r\n Get_ProjectsCustomData(val = null) {\r\n let model = {\r\n method: \"Get_All_SalesProjectsByNameCubeShop\",\r\n name: val\r\n };\r\n return this.http.post(this.uri + this.baseURI , model);\r\n }\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 { AppConfigService } from '../app-config.service.service';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SalesProjectService {\r\n someDataObservable: Observable;\r\n private uri = \"\";//`${environment.apiUrl}`;\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private appConfigService: AppConfigService,) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n }\r\n\r\n GetSalesProject(model) {\r\n return this.http.post(this.uri + '/ProjectSales/GetSalesProjectPage/', model);\r\n }\r\n\r\n DeleteSalesProject(id) {\r\n return this.http.post(this.uri + '/ProjectSales/DeleteSalesProject/', { projectid: id });\r\n }\r\n\r\n DuplicateProject(id) {\r\n return this.http.post(this.uri + '/Project/DuplicateProject/', { projectid: id });\r\n\r\n }\r\n\r\n GetEmployeesNoSales() {\r\n return this.http.post(this.uri + '/Employee/GetEmployeesNoSales', {});\r\n }\r\n\r\n UpdateEmployeeToSales(id) {\r\n return this.http.post(this.uri + '/Employee/UpdateEmployeeToSales', { employeeid: id });\r\n }\r\n\r\n GetSalesProjectUrl() {\r\n return this.uri + '/ProjectSales/GetSalesProjectPage';\r\n }\r\n\r\n\r\n GetProjectSaleEmployee() {\r\n return this.http.post(this.uri + '/ProjectSaleEmployee/', {});\r\n }\r\n\r\n\r\n GetProjectBidStatus() {\r\n return this.http.post(this.uri + '/ProjectBidStatus/', {});\r\n }\r\n\r\n GetProjectSalesCategory() {\r\n return this.http.post(this.uri + '/ProjectSalesCategory/', {});\r\n }\r\n\r\n InsertUpdateSalesCategory(model) {\r\n return this.http.post(this.uri + '/ProjectSalesCategory/InsertUpdateSalesCategory/', model);\r\n }\r\n\r\n InsertUpdateVerticalMarket(model) {\r\n return this.http.post(this.uri + '/VerticalMarket/InsertUpdateVerticalMarket/', model);\r\n }\r\n\r\n InsertUpdateSalesProject(model) {\r\n // return this.http.post(this.uri + '/ProjectSales/InsertUpateProjectSales', model);\r\n return this.http.post(this.uri + '/FlexIntegration', model);\r\n }\r\n\r\n Get_SalesProject_All(date:Date) {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'Get_SalesProject_All',\r\n biddate:date\r\n });\r\n }\r\n Get_ProjectBidStatus() {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'Estimates_Get_ProjectBidStatus',\r\n });\r\n }\r\n\r\n Update_ProjectChangeStatus(id, bidestatus):Observable {\r\n if (this.someDataObservable) {\r\n return this.someDataObservable;\r\n } else {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'Update_ProjectChangeStatus',\r\n bidstatusid: bidestatus,\r\n projectid: id\r\n }); \r\n } \r\n \r\n }\r\n\r\n Get_SalesProject_Pagination(filter) {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'Get_SalesProject_Pagination',\r\n bidstatus: filter.bidstatus,\r\n pageindex: filter.pageindex,\r\n pagesize: filter.pagesize\r\n });\r\n }\r\n UpdateProjectBidDate(projectid, biddate) {\r\n return this.http.post(this.uri + '/FlexIntegration',\r\n {\r\n method: 'Update_ProjectBidDate',\r\n biddate: biddate,\r\n projectid: projectid\r\n });\r\n }\r\n /**\r\n * Get SalesPerson\r\n */\r\n GetSalesPerson() {\r\n return this.http.post(this.uri + '/SalesPerson', {});\r\n }\r\n /**\r\n * New SalesLeads\r\n * @param data\r\n */\r\n newSalesLeads(data) {\r\n return this.http.post(this.uri + '/SalesLead/InsertUpateSalesLead', data);\r\n }\r\n\r\n GetProjectParticipant(id) {\r\n return this.http.post(this.uri + '/ProjectParticipant', { id: id });\r\n }\r\n\r\n DeleteParticipant(id, projectid){\r\n //console.log({method:'Delete_ProjectEmployeesCE', id: id});\r\n return this.http.post(this.uri + '/FlexIntegration',{method:'Delete_ProjectEmployeesCE', id: id})\r\n }\r\n\r\n InsertProjectParticipant(model) {\r\n return this.http.post(this.uri + '/ProjectParticipant/InsertUpdateProjectParticipant', model);\r\n }\r\n\r\n GetProjectParticipantRole() {\r\n\r\n return this.http.post(this.uri + '/ProjectParticipantRole/', {});\r\n }\r\n\r\n //Documents\r\n\r\n GetDocuments(id, method){\r\n //console.log({ [method.name_id]: id, method: method.method });\r\n return this.http.post(this.uri + '/FlexIntegration', { method: method.method, [method.name_id]: id });\r\n }\r\n\r\n GetDocumentsTwoParameters(id, method, id2){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: method.method, [method.name_id]: id, [method.name_id2]: id2 });\r\n }\r\n\r\n InsertDocuments(form){\r\n //console.log(form);\r\n return this.http.post(this.uri + '/FlexIntegration', form);\r\n }\r\n\r\n CheckFileExist(filestring){\r\n return this.http.post(this.uri + '/DownloadFile/CheckFileExist', { filestring: filestring });\r\n } \r\n\r\n GetProjectDocument(projectid) {\r\n return this.http.post(this.uri + '/ProjectDocument', { projectid: projectid });\r\n }\r\n\r\n GetProjectDocumentType() {\r\n return this.http.post(this.uri + '/DocumentType', {});\r\n }\r\n\r\n GetProjectDocumentPartsType(){\r\n return this.http.post(this.uri + '/FlexIntegration', {method:'Get_GetPartDocumentTypes'});\r\n }\r\n\r\n GetProjectDocumentEditEmployeeDocumentType(){\r\n return this.http.post(this.uri + '/FlexIntegration', {method:'Get_EmployeeDocumentType'});\r\n }\r\n\r\n GetProjectNotBidReason() {\r\n return this.http.post(this.uri + '/ProjectNotBidReason', {});\r\n }\r\n\r\n GetClientCompetitor() {\r\n return this.http.post(this.uri + '/ClientCompetitor', {});\r\n }\r\n\r\n GetProjectActivity(projectid) {\r\n return this.http.post(this.uri + '/Activity/GetActivityListByProject', { projectid: projectid });\r\n }\r\n\r\n GetSalesLeadMarketingCampaign() {\r\n return this.http.post(this.uri + '/SalesLeadMarketingCampaign', {});\r\n }\r\n\r\n GetProjectVerticalMarket() {\r\n return this.http.post(this.uri + '/VerticalMarket', {});\r\n }\r\n\r\n GetPrevailingWages() {\r\n return this.http.post(this.uri + '/PrevailingWages', {});\r\n }\r\n\r\n InsertUpdateActivity(model) {\r\n console.log(model);\r\n return this.http.post(this.uri + '/Activity/InsertUpdateActivity', model);\r\n }\r\n\r\n updateTurnOverSheet(obj){\r\n //console.log(obj)\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n getTurnOverSheet(obj){\r\n //console.log(obj)\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n GetProjectRound(projectid) {\r\n return this.http.post(this.uri + '/ProjectRound', { id: projectid });\r\n }\r\n\r\n InsertUpdateProjectRound(model) {\r\n return this.http.post(this.uri + '/ProjectRound/InsertUpdateProjectRound', model);\r\n }\r\n\r\n InsertUpateProjectDocument(model) {\r\n return this.http.post(this.uri + '/ProjectDocument/InsertUpateProjectDocument', model);\r\n }\r\n\r\n SaveDocument(filename, file, id){\r\n //console.log({ filename: filename, filestring: file, doctype: 'swodocs', id: id })\r\n return this.http.post(this.uri + '/DownloadFile/Upload', { filename: filename, filestring: file, doctype: 'swodocs', id: id })\r\n }\r\n\r\n SaveDocumentDinamico(filename, file, id,doctype){\r\n console.log('DATA ', {filestring: file, doctype: doctype, id: id })\r\n return this.http.post(this.uri + '/DownloadFile/Upload', { filestring: file, doctype: doctype, id: id })\r\n }\r\n\r\n GeneralService(obj){\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { AppConfigService } from '../app-config.service.service';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SalesleadService {\r\n\r\n uri = '';\r\n constructor(\r\n private http: HttpClient,\r\n private appConfigService: AppConfigService\r\n ) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n }\r\n GetSalesLeadCompetitor() {\r\n return this.http.post(`${this.uri}/SalesLeadCompetitor`, {});\r\n }\r\n get(model) {\r\n return this.http.post(`${this.uri}/SalesLead`, model);\r\n }\r\n\r\n getSales() {\r\n return this.http.post(`${this.uri}/SalesLead`, {});\r\n }\r\n\r\n getUrl() {\r\n return `${this.uri}/SalesLead`;\r\n }\r\n\r\n getSalesLeadStatus() {\r\n return this.http.post(`${this.uri}/ProjectSalesLeadStatus`, {});\r\n }\r\n\r\n getSalesLeadFollowUpStatus() {\r\n return this.http.post(`${this.uri}/SalesLeadFollowUpStatus`, {});\r\n }\r\n\r\n getSalesLeadRating() {\r\n return this.http.post(`${this.uri}/SalesLeadRating`, {});\r\n }\r\n\r\n getSalesLeadByField(model) {\r\n return this.http.post(`${this.uri}/SalesLead/GetSalesLeadByField/`, model);\r\n }\r\n\r\n updateLeadStatusById(leadid, statusid) {\r\n return this.http.post(`${this.uri}/SalesLead/UpdateLeadStatusById/`, {salesleadid: leadid, leadstatus: statusid});\r\n }\r\n updateLeadFollowStatusById(leadid, statusid) {\r\n return this.http.post(`${this.uri}/SalesLead/UpdateLeadFollowStatusById/`, {salesleadid: leadid, leadfollowupstatus: statusid});\r\n }\r\n\r\n updateLeadFollowRatingById(leadid, statusid) {\r\n return this.http.post(`${this.uri}/SalesLead/UpdateLeadFollowRatingById/`, {salesleadid: leadid, leadrating: statusid});\r\n }\r\n\r\n deleteSalesLead(id){\r\n return this.http.post(`${this.uri}/SalesLead/DeleteSalesLead`, {Id: id});\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppConfigService } from '../app-config.service.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SiteService {\r\n\r\n uri = '';\r\n constructor(\r\n private http: HttpClient,\r\n private appConfigService: AppConfigService\r\n ) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n }\r\n\r\n GetSites() {\r\n return this.http.post(this.uri + '/Site', { });\r\n }\r\n\r\n GetSitesByName(sitename) {\r\n return this.http.post(this.uri + '/Site/GetSitesByName', { sitename: sitename });\r\n }\r\n\r\n GetSiteInfo(siteid) {\r\n return this.http.post(this.uri + '/Site/GetSiteInfo', { siteid: siteid });\r\n }\r\n\r\n GetSiteHistory(siteid) {\r\n return this.http.post(this.uri + '/Site/GetSiteHistory', { siteid: siteid });\r\n }\r\n\r\n GetSiteRecomendation(siteid) {\r\n return this.http.post(this.uri + '/Site/GetSiteRecomendations', { siteid: siteid });\r\n // return this.http.post(this.uri + '/Site/GetSiteRecomendations', { siteid: 1323 });\r\n }\r\n\r\n GetPunch(siteid) {\r\n return this.http.post(this.uri + '/Punch', { serviceid: siteid });\r\n // return this.http.post(this.uri + '/Punch', { serviceid: 2786 });\r\n }\r\n\r\n GetFaulDetection(siteid) {\r\n return this.http.post(this.uri + '/Site/GetSiteFaultDet', { siteid: siteid });\r\n // return this.http.post(this.uri + '/Site/GetSiteFaultDet', { siteid: 3066 });\r\n }\r\n\r\n InsertPunchItem(data) {\r\n return this.http.post(this.uri + '/Punch/InsertPunch', data);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppConfigService } from '../app-config.service.service';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SwoService {\r\n\r\n uri = '';\r\n \r\n serviceselected = {};\r\n constructor(\r\n private http: HttpClient,\r\n private appConfigService: AppConfigService\r\n ) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n \r\n }\r\n GetPagedServicesUrl() {\r\n return this.uri + '/ServiceWorkOrder/GetServiceWorkOrderPaged';\r\n }\r\n\r\n GetSwo(filter) {\r\n return this.http.post(this.uri + '/ServiceWorkOrder', filter);\r\n }\r\n\r\n InsertUpdateSwo(model) {\r\n return this.http.post(this.uri + '/ServiceWorkOrder/InsertUpdateServiceWorkOrder', model);\r\n }\r\n\r\n GetResponsible() {\r\n return this.http.post(this.uri + '/ServiceTechnician', {});\r\n }\r\n\r\n GetResourceEmployees() {\r\n // return this.http.post(this.uri + '/Employee', {} );\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_EmployeeListAll' });\r\n }\r\n\r\n GetServiceTypes() {\r\n return this.http.post(this.uri + '/ServiceType', {});\r\n }\r\n\r\n GetServiceStatus() {\r\n return this.http.post(this.uri + '/ServiceStatus', {});\r\n }\r\n\r\n GetProjectSales() {\r\n return this.http.post(this.uri + '/ProjectSales/', {});\r\n }\r\n\r\n GetProjectByName(projectname: string) {\r\n return this.http.post(this.uri + '/Project/GetProjectByName', { projectname: projectname } );\r\n }\r\n\r\n GetCustomerContacts() {\r\n return this.http.post(this.uri + '/Customer/GetCustomerContacts', { });\r\n }\r\n\r\n GetContactByName(name) {\r\n \r\n return this.http.post(this.uri + '/Contacts/Get_AllContactsByName', { name: name });\r\n }\r\n\r\n GetServiceCategory(){\r\n return this.http.post(this.uri + '/SerCategory', { });\r\n }\r\n\r\n GetCustomerSites() {\r\n // return this.http.post(this.uri + '/Site/GetSitesCustomer', { CustomerId: 192 });\r\n return this.http.post(this.uri + '/Site/GetSitesCustomer', { CustomerId: localStorage.getItem('customerid') });\r\n }\r\n \r\n GetSubContractors(){\r\n return this.http.post(this.uri + '/SubContractors', { });\r\n }\r\n\r\n GetServicePriority() {\r\n return this.http.post(this.uri + '/ServicePriority', { });\r\n }\r\n\r\n GetServiceCustomer() {\r\n // return this.http.post(this.uri + '/ServiceWorkOrder/GetServiceCustomer', { CustomerId: 192 });\r\n return this.http.post(this.uri + '/ServiceWorkOrder/GetServiceCustomer', { CustomerId: localStorage.getItem('customerid') });\r\n }\r\n\r\n GetServiceDetails(id) {\r\n return this.http.post(this.uri + '/ServiceDetail/GetServiceDetailsCustomer', { serviceid: id });\r\n }\r\n\r\n GetServiceRecomendation(id) {\r\n return this.http.post(this.uri + '/ServiceRecomendation', { serviceid: id });\r\n }\r\n \r\n GetTemplates(modulename) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ClientTemplateCE', modulename: modulename });\r\n }\r\n\r\n GetTemplatesByName(modulename) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ClientTemplateByCubeName', modulename: modulename });\r\n }\r\n\r\n DowloadDocument(filepath): Observable {\r\n return this.http.post(this.uri + '/DownloadFile/Download', { filename: filepath });\r\n }\r\n \r\n Update_ServiceReason(id, notes){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Update_ServiceReason', serviceid: id, reasonforservice: notes });\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\nimport { AppConfigService } from '../app-config.service.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SystemComponentService {\r\n\r\n private baseurl = \"\";// `${environment.apiUrl}`;\r\n apiroute = \"/FlexIntegration\";\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private appConfigService: AppConfigService\r\n ) {\r\n this.baseurl = this.appConfigService.apiBaseUrl;\r\n }\r\n\r\n SaveDocument(filestring, id) {\r\n return this.http.post(this.baseurl + '/DownloadFile/Upload', { filestring: filestring, doctype: 'component', id: id })\r\n }\r\n\r\n GetComponentsFileNames() {\r\n // return this.http.post(this.baseurl + '/DownloadFile/GetComponentsFileNames', {})\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstmateSVG'});\r\n }\r\n\r\n GetComponentsFileNamesSvg(id) {\r\n // return this.http.post(this.baseurl + '/DownloadFile/GetComponentsFileNames', {})\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstmateSVG', projectrfiid: id});\r\n }\r\n\r\n GetComponentsFileNamesSvgMaster(id) {\r\n // return this.http.post(this.baseurl + '/DownloadFile/GetComponentsFileNames', {})\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstmateSVGMaster', projectrfiid: id});\r\n }\r\n\r\n Get_EstmateSVG_Master() {\r\n // return this.http.post(this.baseurl + '/DownloadFile/Get_EstmateSVG_Master', {})\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstmateSVG_Master'});\r\n }\r\n\r\n Get_ProjectPartDetailSugestedValues() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ProjectPartDetailSugestedValues', partnumber: 20836 });\r\n }\r\n\r\n\r\n Get_ComponentDetailsCE(id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ComponentDetailsByIdCE', componentid: id });\r\n }\r\n\r\n Get_ComponentDetailsCEMaster(id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ComponentDetailsByIdCEMaster', componentid: id });\r\n }\r\n\r\n Get_ComponentsByIdCE(id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ComponentsByIdCE', componentid: id });\r\n }\r\n\r\n Get_ComponentsByIdCEMaster(id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ComponentsByIdCEMaster', componentid: id });\r\n }\r\n\r\n Get_ComponentsByIds(id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ComponentsByIdCE-2', componentid: id });\r\n }\r\n\r\n Get_ECOMMComponentsByIdCE2(id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ECOMMComponentsByIdCE-2', componentid: id });\r\n }\r\n\r\n Get_ComponentsByIdsMaster(id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ComponentsByIdCE-2Master', componentid: id });\r\n }\r\n\r\n Get_EstimatesystemDrawingjason(id) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstimatesystemDrawingjason', systemid: id });\r\n }\r\n\r\n InsertUpdate_EstimatesystemDrawingjason(id, drawingjason) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'InsertUpdate_EstimatesystemDrawingjason', systemid: id, drawingjason: drawingjason });\r\n }\r\n\r\n Get_EstimateLibComponentsType() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstimateLibComponentsType' });\r\n }\r\n\r\n Get_EstimateLibComponentsTypeMaster() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstimateLibComponentsTypeMaster' });\r\n }\r\n\r\n Get_EstimateLibComponentsTypeClient(dbcode) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstimateLibComponentsTypeClient', dbcode: dbcode });\r\n }\r\n\r\n Get_EstimateLibComponentsTypeSVG() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstimateMasterComponentsType' });\r\n }\r\n\r\n Get_EstimateLibComponentsTypeSVGMaster() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstimateMasterComponentsTypeMaster' });\r\n }\r\n \r\n Get_ApplicationNotesActive(applicationName) {\r\n let model = {\r\n 'method': 'Get_ApplicationNotesActive',\r\n applicationName: applicationName\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Get_ApplicationNotesActiveMaster(applicationName) {\r\n let model = {\r\n 'method': 'Get_ApplicationNotesActiveMaster',\r\n applicationName: applicationName\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Get_MasterApplicationNotesActive(applicationName) {\r\n let model = {\r\n 'method': 'Get_MasterApplicationNotesActive',\r\n applicationName: applicationName\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Get_ApplicationNotesActiveTop(applicationName) {\r\n let model = {\r\n 'method': 'Get_ApplicationNotesActiveTop',\r\n applicationName: applicationName\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Get_WiringdiagramListCE() {\r\n let model = {\r\n 'method': 'Get_WiringdiagramListCE'\r\n }\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Get_WiringdiagramListCEMaster() {\r\n let model = {\r\n 'method': 'Get_WiringdiagramListCEMaster'\r\n }\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Get_WiringdiagramPartCE(id) {\r\n let model = {\r\n 'method': 'Get_WiringdiagramPartCE',\r\n wiringdetailid: id\r\n }\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Get_WiringdiagramPartCEMaster(id) {\r\n let model = {\r\n 'method': 'Get_WiringdiagramPartCEMaster',\r\n wiringdetailid: id\r\n }\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpadte_WiringDiagramCE(id, partdwgrefference, partdwgrefferencename, partdwgrefferencedesc, active, partjumper, \r\n partcable, partcommisioning, wdrefpartid, wdfilepath, numberofwires, showshield, shield) {\r\n let model = {\r\n 'method': 'InsertUpadte_WiringDiagramCE',\r\n id: id,\r\n partdwgrefference: partdwgrefference,\r\n partdwgrefferencename: partdwgrefferencename,\r\n partdwgrefferencedesc: partdwgrefferencedesc,\r\n active: active == true ? 1 : 0,\r\n partjumper: partjumper,\r\n partcable: partcable,\r\n partcommisioning: partcommisioning,\r\n wdrefpartid: wdrefpartid,\r\n wdfilepath: wdfilepath,\r\n clearrecords:1,\r\n numberofwires:numberofwires,\r\n showshield:showshield,\r\n shield:shield\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpadte_WiringDiagramCEMaster(id, partdwgrefference, partdwgrefferencename, partdwgrefferencedesc, active, partjumper, \r\n partcable, partcommisioning, wdrefpartid, wdfilepath, numberofwires, showshield, shield) {\r\n let model = {\r\n 'method': 'InsertUpadte_WiringDiagramCEMaster',\r\n id: id,\r\n partdwgrefference: partdwgrefference,\r\n partdwgrefferencename: partdwgrefferencename,\r\n partdwgrefferencedesc: partdwgrefferencedesc,\r\n active: active == true ? 1 : 0,\r\n partjumper: partjumper,\r\n partcable: partcable,\r\n partcommisioning: partcommisioning,\r\n wdrefpartid: wdrefpartid,\r\n wdfilepath: wdfilepath,\r\n clearrecords:1,\r\n numberofwires:numberofwires,\r\n showshield:showshield,\r\n shield:shield\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpadte_WiringDiagramCE2(id, partdwgrefference, partdwgrefferencename, partdwgrefferencedesc, active, partjumper, partcable, partcommisioning, wdrefpartid, wdfilepath) {\r\n let model = {\r\n 'method': 'InsertUpadte_WiringDiagramCE',\r\n id: id,\r\n partdwgrefference: partdwgrefference,\r\n partdwgrefferencename: partdwgrefferencename,\r\n partdwgrefferencedesc: partdwgrefferencedesc,\r\n active: active == true ? 1 : 0,\r\n partjumper: partjumper,\r\n partcable: partcable,\r\n partcommisioning: partcommisioning,\r\n wdrefpartid: wdrefpartid,\r\n wdfilepath: wdfilepath,\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentCE(id, name, systemtypeid, image, active, compscope, deleted, tag, svg) {\r\n let model = {\r\n 'method': 'InsertUpdate_ComponentCE',\r\n name: name,\r\n systemtypeid: systemtypeid,\r\n image: image,\r\n active: active,\r\n compscope: compscope,\r\n deleted: deleted,\r\n tag: tag,\r\n svg: svg,\r\n id: id,\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentCEMaster(id, name, systemtypeid, image, active, compscope, deleted, tag, svg) {\r\n let model = {\r\n 'method': 'InsertUpdate_ComponentCEMaster',\r\n name: name,\r\n systemtypeid: systemtypeid,\r\n image: image,\r\n active: active,\r\n compscope: compscope,\r\n deleted: deleted,\r\n tag: tag,\r\n svg: svg,\r\n id: id,\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n\r\n InsertUpdate_ComponentCE2(id, name, systemtypeid, image, active, compscope, deleted, tag, svg,visio,notshowiddwg) {\r\n let model = {\r\n 'method': 'InsertUpdate_ComponentCE',\r\n name: name,\r\n systemtypeid: systemtypeid,\r\n image: image, //hacer split para enviar solo el nombre\r\n active: active,\r\n compscope: compscope,\r\n deleted: deleted,\r\n tag: tag,\r\n svg: svg,\r\n id: id,\r\n visiofilename: visio,\r\n notshowindwg:notshowiddwg == true ? 1 : 0\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n\r\n InsertUpdate_ComponentCE3(id, name, systemtypeid, image, active, compscope, deleted, tag, svg,visio,notshowiddwg, aplicationtypeid,\r\n notschematic) {\r\n let model = {\r\n 'method': 'InsertUpdate_ComponentCE',\r\n name: name,\r\n systemtypeid: systemtypeid,\r\n image: image, //hacer split para enviar solo el nombre\r\n active: active,\r\n compscope: compscope,\r\n deleted: deleted,\r\n tag: tag,\r\n svg: svg,\r\n id: id,\r\n visiofilename: visio,\r\n notshowindwg:notshowiddwg == true ? 1 : 0,\r\n aplicationtypeid:aplicationtypeid,\r\n notschematic:notschematic\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentCE3Master(id, name, systemtypeid, image, active, compscope, deleted, tag, svg,visio,notshowiddwg, aplicationtypeid,\r\n notschematic) {\r\n let model = {\r\n 'method': 'InsertUpdate_ComponentCEMaster',\r\n name: name,\r\n systemtypeid: systemtypeid,\r\n image: image, //hacer split para enviar solo el nombre\r\n active: active,\r\n compscope: compscope,\r\n deleted: deleted,\r\n tag: tag,\r\n svg: svg,\r\n id: id,\r\n visiofilename: visio,\r\n notshowindwg:notshowiddwg == true ? 1 : 0,\r\n aplicationtypeid:aplicationtypeid,\r\n notschematic:notschematic\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentCE3Client(id, name, systemtypeid, image, active, compscope, deleted, tag, svg,visio,notshowiddwg, aplicationtypeid, notschematic, dbcode) {\r\n let model = {\r\n 'method': 'InsertUpdate_ClientComponent',\r\n name: name,\r\n systemtypeid: systemtypeid,\r\n image: image, //hacer split para enviar solo el nombre\r\n active: active,\r\n compscope: compscope,\r\n deleted: deleted,\r\n tag: tag,\r\n svg: svg,\r\n id: id,\r\n visiofilename: visio,\r\n notshowindwg:notshowiddwg == true ? 1 : 0,\r\n aplicationtypeid:aplicationtypeid,\r\n notschematic:notschematic,\r\n dbcode: dbcode\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n\r\n\r\n InsertUpdate_ComponentDetailCE(id, estcompid, appnoteid, pointtypeid, partid, partqty, pointnumber, instantid, deleted, ctag, wddetailid) {\r\n let model = {\r\n 'method': 'InsertUpdate_ComponentDetailCE',\r\n estcompid: estcompid,\r\n appnoteid: appnoteid,\r\n pointtypeid: pointtypeid,\r\n partid: partid,\r\n partqty: partqty,\r\n pointnumber: pointnumber,\r\n instantid: instantid,\r\n deleted: deleted,\r\n ctag: ctag,\r\n wddetailid: wddetailid,\r\n id: id,\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentDetailCEMaster(id, estcompid, appnoteid, pointtypeid, partid, partqty, pointnumber, instantid, deleted, ctag, wddetailid) {\r\n let model = {\r\n 'method': 'InsertUpdate_ComponentDetailCEMaster',\r\n estcompid: estcompid,\r\n appnoteid: appnoteid,\r\n pointtypeid: pointtypeid,\r\n partid: partid,\r\n partqty: partqty,\r\n pointnumber: pointnumber,\r\n instantid: instantid,\r\n deleted: deleted,\r\n ctag: ctag,\r\n wddetailid: wddetailid,\r\n id: id,\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentDetailLaborWeightCE(id, estcompid, appnoteid, pointtypeid, partid, partqty, pointnumber, instantid, deleted, ctag, wddetailid) {\r\n let model = {\r\n 'method': 'InsertUpdate_ComponentDetailLaborCE',\r\n estcompid: estcompid,\r\n appnoteid: appnoteid,\r\n pointtypeid: pointtypeid,\r\n partid: partid,\r\n partqty: partqty,\r\n pointnumber: pointnumber,\r\n instantid: instantid,\r\n deleted: deleted == true || deleted == 1 ? 1 : 0,\r\n ctag: ctag,\r\n wddetailid: wddetailid,\r\n id: id,\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentDetailLaborWeightCEMaster(id, estcompid, appnoteid, pointtypeid, partid, partqty, pointnumber, instantid, deleted, ctag, wddetailid) {\r\n let model = {\r\n 'method': 'InsertUpdate_ComponentDetailLaborCEMaster',\r\n estcompid: estcompid,\r\n appnoteid: appnoteid,\r\n pointtypeid: pointtypeid,\r\n partid: partid,\r\n partqty: partqty,\r\n pointnumber: pointnumber,\r\n instantid: instantid,\r\n deleted: deleted == true || deleted == 1 ? 1 : 0,\r\n ctag: ctag,\r\n wddetailid: wddetailid,\r\n id: id,\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentDetailLaborWeightCEMultiple(id, estcompid, appnoteid, pointtypeid, partid, partqty, pointnumber, instantid, deleted, ctag, wddetailid) {\r\n let model = {\r\n 'method': 'UpdateMultiple_ComponentDetailLaborCE',\r\n estcompid: estcompid,\r\n appnoteid: appnoteid,\r\n pointtypeid: pointtypeid,\r\n partid: partid,\r\n partqty: partqty,\r\n pointnumber: pointnumber,\r\n instantid: instantid,\r\n deleted: deleted == true || deleted == 1 ? 1 : 0,\r\n ctag: ctag,\r\n wddetailid: wddetailid,\r\n ids: id,\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentDetailLaborWeightCEMultipleMaster(id, estcompid, appnoteid, pointtypeid, partid, partqty, pointnumber, instantid, deleted, ctag, wddetailid) {\r\n let model = {\r\n 'method': 'UpdateMultiple_ComponentDetailLaborCEMaster',\r\n estcompid: estcompid,\r\n appnoteid: appnoteid,\r\n pointtypeid: pointtypeid,\r\n partid: partid,\r\n partqty: partqty,\r\n pointnumber: pointnumber,\r\n instantid: instantid,\r\n deleted: deleted == true || deleted == 1 ? 1 : 0,\r\n ctag: ctag,\r\n wddetailid: wddetailid,\r\n ids: id,\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateJumper() {\r\n let model = {\r\n 'method': 'Get_EstimateJumper'\r\n }\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateJumperMaster() {\r\n let model = {\r\n 'method': 'Get_EstimateJumperMaster'\r\n }\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Insert_EstimateJumperType(id, name) {\r\n let model = {\r\n 'method': 'Insert_EstimateJumperType',\r\n id: id,\r\n name: name\r\n }\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Insert_EstimateJumperTypeMaster(id, name) {\r\n let model = {\r\n 'method': 'Insert_EstimateJumperTypeMaster',\r\n id: id,\r\n name: name\r\n }\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Insert_EstimateCableType(id, name, partid) {\r\n let model = {\r\n 'method': 'Insert_EstimateCableType',\r\n id: id,\r\n name: name,\r\n partid: partid\r\n }\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Insert_EstimateCableTypeMaster(id, name) {\r\n let model = {\r\n 'method': 'Insert_EstimateCableTypeMaster',\r\n id: id,\r\n name: name\r\n }\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateCable() {\r\n let model = {\r\n 'method': 'Get_EstimateCable'\r\n }\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n Get_EstimateCableMaster() {\r\n let model = {\r\n 'method': 'Get_EstimateCableMaster'\r\n }\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentTypeCE(id, componentname, parentid) {\r\n let model = {\r\n 'method': 'InsertUpdate_ComponentTypeCE',\r\n componentname: componentname,\r\n parentid: parentid,\r\n componenttypeid:id\r\n }\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentTypeCEStencil(id, componentname, parentid, stencil) {\r\n let model = {\r\n 'method': 'InsertUpdate_ComponentTypeCE',\r\n componentname: componentname,\r\n parentid: parentid,\r\n componenttypeid:id,\r\n visiofilename:stencil\r\n }\r\n console.log(model)\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentTypeCEStencilMaster(id, componentname, parentid, stencil) {\r\n let model = {\r\n 'method': 'InsertUpdate_ComponentTypeCEMaster',\r\n componentname: componentname,\r\n parentid: parentid,\r\n componenttypeid:id,\r\n visiofilename:stencil\r\n }\r\n console.log(model)\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n InsertUpdate_ComponentTypeCEStencilClient(dbcode, id, componentname, parentid, stencil) {\r\n let model = {\r\n 'method': 'Insert_ComponentTypeInClient',\r\n dbcode: dbcode,\r\n componentname: componentname,\r\n parentid: parentid,\r\n componenttypeid: id,\r\n visiofilename:stencil\r\n }\r\n console.log(model)\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\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 { AppConfigService } from '../app-config.service.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TaskService {\r\n\r\n private uri = \"\";// `${environment.apiUrl}`;\r\n\r\n constructor(private http: HttpClient, private appConfigService: AppConfigService) {\r\n this.uri = this.appConfigService.apiBaseUrl;\r\n }\r\n\r\n getParamethers(service){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'GetProcedureXMLParameters', procedurename: 'SP_API_Flex_'+service });\r\n }\r\n\r\n GetTaskUrl() {\r\n return this.uri + '/Task';\r\n }\r\n\r\n GeneralService(obj) {\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n GetSummaryTask(projectid) {\r\n // return this.http.post(this.uri + '/SummaryTask', { id: projectid });\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_SummaryTaskByProject', projectid:projectid });\r\n }\r\n\r\n DeleteSummaryTask(id) {\r\n return this.http.post(this.uri + '/SummaryTask/DeleteSummaryTask', { summarytaskid: id });\r\n }\r\n\r\n\r\n\r\n UpdateSummaryTask(model) {\r\n return this.http.post(this.uri + '/SummaryTask/InsertUpdateSummaryTask', model);\r\n }\r\n\r\n\r\n\r\n\r\n GetTaskAll(date){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_Task_All', tsdate:date });\r\n }\r\n\r\n GetTaskAll2(param, method){\r\n param['method'] = method;\r\n return this.http.post(this.uri + '/FlexIntegration', param);\r\n }\r\n\r\n GetTaskPaginate(filters){\r\n return this.http.post(this.uri + '/FlexIntegration', filters);\r\n }\r\n\r\n Get_Task_PagedDiagram(filters){\r\n return this.http.post(this.uri + '/FlexIntegration', filters);\r\n }\r\n\r\n GetSwoAll(date){\r\n console.log({ method: 'Get_SWO_ServiceListAll', tsdate:date });\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_SWO_ServiceListAll', tsdate:date });\r\n }\r\n\r\n GetSwoFilter(form){\r\n console.log(form);\r\n return this.http.post(this.uri + '/FlexIntegration', form);\r\n }\r\n\r\n GetPagedTasksUrl() {\r\n return this.uri + '/Task/GetTasks';\r\n }\r\n\r\n GetTasks(filter: any) {\r\n return this.http.post(this.uri + '/Task/GetTasksForManagment', filter);\r\n }\r\n \r\n NotificationTask(data){\r\n return this.http.post(this.uri + '/Notifications/NotificationTask', data);\r\n }\r\n\r\n Get_TaskInfo(obj){\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n \r\n DeleteTaskForEmployee(projecttodoid: number, resourceid: number) {\r\n return this.http.post(this.uri + '/Task/DeleteResourceFromTask', { projecttodoid: projecttodoid, resourceid: resourceid });\r\n }\r\n\r\n UpdateTaskResourceDates(projecttodoid: string, startdate: string, estimatedtime: string) {\r\n return this.http.post(this.uri + '/Task/UpdateTaskResourceDates', { taskid: projecttodoid, startdate: startdate, estimatedtime: estimatedtime });\r\n }\r\n\r\n GetProjectByName(projectname: string) {\r\n return this.http.post(this.uri + '/Project/GetProjectByName', { projectname: projectname });\r\n }\r\n\r\n GetTaskCategories() {\r\n // console.log('Task Categories ');\r\n return this.http.post(this.uri + '/TaskCategory', {});\r\n }\r\n\r\n GetTaskCategoriesFlex() {\r\n // console.log('Task Categories ');\r\n // return this.http.post(this.uri + '/TaskCategory', {});\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_TaskCategory' });\r\n }\r\n\r\n //--------------------------------------\r\n Activetaskcategory(){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_TaskCategoryCE_Active' });\r\n }\r\n\r\n ChangeActiveTaskCategory(obj){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'SaveTaskCategories' });\r\n }\r\n\r\n GetTaskStatus() {\r\n return this.http.post(this.uri + '/TaskStatus', {});\r\n }\r\n\r\n GetTaskPriorities() {\r\n return this.http.post(this.uri + '/TaskPriority', {});\r\n }\r\n\r\n GetTaskEmployees() {\r\n // return this.http.post(this.uri + '/Employee', {});\r\n // console.log('Call Employee ')\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_EmployeeListAll' });\r\n }\r\n\r\n GetTaskPhases() {\r\n return this.http.post(this.uri + '/TaskPhase', {});\r\n }\r\n\r\n GetTaskLocation() {\r\n return this.http.post(this.uri + '/TaskLocation', {});\r\n }\r\n\r\n GetPagedTasks(taskFilter: any) {\r\n return this.http.post(this.uri + '/Task/GetTasks', taskFilter);\r\n }\r\n\r\n GetPagedTaskFlex(taskFilter: any) {\r\n console.log(taskFilter)\r\n return this.http.post(this.uri + '/FlexIntegration', taskFilter);\r\n }\r\n\r\n UpdateSummaryTaskGantt(taskid, summarytaskid){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'UpdateSummaryTask', taskid: taskid, summarytaskid: summarytaskid });\r\n }\r\n\r\n DuplicateTask(id) {\r\n return this.http.post(this.uri + '/Task/DuplicateTask', {taskid: id});\r\n }\r\n\r\n GetTaskGanttData(filterGantt) {\r\n return this.http.post(this.uri + '/Task/GetTaskGanttData', { summaryvalues: filterGantt.summaryvalues, startdate: this.formatDate(filterGantt.startdate), enddate: this.formatDate(filterGantt.enddate) });\r\n }\r\n\r\n GetForGanttView(summaryvalues,startdate, enddate, method, projectid){\r\n let obj = {\r\n method: method,\r\n summaryvalues: summaryvalues,\r\n startdate: startdate,\r\n enddate: enddate,\r\n projectid: projectid\r\n }\r\n console.log(obj);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n GetForGanttViewPaged(summaryvalues,startdate, enddate, method, projectid, pageindex, pagesize){\r\n let obj = {\r\n method: method,\r\n summaryvalues: summaryvalues,\r\n startdate: startdate,\r\n enddate: enddate,\r\n projectid: projectid,\r\n pageindex: pageindex,\r\n pagesize: pagesize\r\n }\r\n console.log(obj);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n GetForGanttPagedByTaskIds(projectid, method, taskids){\r\n let obj = {\r\n method: method,\r\n projectid: projectid,\r\n taskids: taskids \r\n }\r\n console.log(obj);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n GetResourcesForGanttPaged(projectid, employeeids){\r\n let obj = {\r\n method: 'Get_TaskResourcesForGanttCE_ByEmployeeIDs',\r\n projectid: projectid,\r\n employeeids: employeeids \r\n }\r\n console.log(obj);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n GetTimeSheetsByTask(id) {\r\n return this.http.post(this.uri + '/Timesheet/GetTimeSheetsByTask', { taskid: id });\r\n }\r\n\r\n DeleteTimeSheet(id) {\r\n return this.http.post(this.uri + '/Timesheet/DeleteTimeSheet', { timesheetid: id });\r\n }\r\n\r\n InsertUpdateTimesheet(model) {\r\n console.log(model);\r\n return this.http.post(this.uri + '/Timesheet/InsertUpdateTimesheet', model);\r\n }\r\n\r\n GetTasksDependencies(id) {\r\n return this.http.post(this.uri + '/TaskDependency/GetTaskTasksDependencies', { taskid: id });\r\n }\r\n\r\n InsertUpdateTaskDependency(model) {\r\n console.log('Guardé dependency ', model)\r\n return this.http.post(this.uri + '/TaskDependency/InsertUpdateTaskDependency', model);\r\n }\r\n\r\n DeleteDependecy(id) {\r\n return this.http.post(this.uri + '/TaskDependency/DeleteTaskTasksDependencies', { id: id });\r\n }\r\n\r\n DeleteDependencyGantt(fromTaskid, toTaskid){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Delete_Task_ProjectTodoDependencies', fromtaskid: fromTaskid, totaskid: toTaskid});\r\n }\r\n\r\n GetDependendecyType() {\r\n return this.http.post(this.uri + '/TaskDependencyType', {});\r\n }\r\n\r\n GetTasksByProjectId(id, statuses?){\r\n let status = statuses== null ? null : statuses;\r\n console.log({method:'Get_Task_AllByProjectId', numProjectID:id, statuses: status});\r\n return this.http.post(this.uri + '/FlexIntegration', {method:'Get_Task_AllByProjectId', numProjectID:id, statuses: status});\r\n }\r\n\r\n GetTasksByProjectIdNoStatus(id){\r\n return this.http.post(this.uri + '/FlexIntegration', {method:'Get_Task_AllByProjectId', numProjectID:id});\r\n }\r\n\r\n GetTaskById(id){\r\n return this.http.post(this.uri + '/FlexIntegration', {method:'Get_Task_ByTaskId ', id:id});\r\n }\r\n\r\n GetSubContractors(projectid) {\r\n return this.http.post(this.uri + '/SubContractors/GetSubcontractorByProject', {projectid: projectid});\r\n }\r\n formatDate(theDate) {\r\n var date = theDate;\r\n var aaaa = date.getFullYear();\r\n var gg = date.getDate(); \r\n var mm = (date.getMonth() + 1);\r\n\r\n if (gg < 10)\r\n gg = \"0\" + gg;\r\n\r\n if (mm < 10)\r\n mm = \"0\" + mm;\r\n\r\n var cur_day = aaaa + \"-\" + mm + \"-\" + gg;\r\n\r\n var hours = date.getHours()\r\n var minutes = date.getMinutes()\r\n var seconds = date.getSeconds();\r\n\r\n if (hours < 10)\r\n hours = \"0\" + hours;\r\n\r\n if (minutes < 10)\r\n minutes = \"0\" + minutes;\r\n\r\n if (seconds < 10)\r\n seconds = \"0\" + seconds;\r\n\r\n return cur_day + \" \" + hours + \":\" + minutes + \":\" + seconds;\r\n\r\n }\r\n\r\n updateTask(formTask: any) {\r\n return this.http.post(this.uri + '/Task/InsertUpdateTask',\r\n {\r\n id: 0,\r\n name: formTask.name,\r\n projectid: formTask.projectid,\r\n employeeid: formTask.responsibleid,\r\n resources: formTask.resources,\r\n statusid: formTask.statusid,\r\n todocategoryid: formTask.categoryid,\r\n priorityid: formTask.taskpriorityid,\r\n startdate: this.formatDate(formTask.taskstartdate),\r\n estimatedtime: formTask.taskduration,\r\n completionperc: formTask.taskcompletition,\r\n duedate: this.formatDate(formTask.taskduedate),\r\n completiondate: this.formatDate(formTask.taskcompletiondate)\r\n });\r\n }\r\n\r\n updateTask2(formTask: any) {\r\n return this.http.post(this.uri + '/FlexIntegration', formTask);\r\n }\r\n\r\n GetTaskHoursByResource(employeeid, datetime){\r\n console.log({method: 'Get_TaskHours_ByResource_ByDay', employeeid: employeeid, datetime: datetime })\r\n return this.http.post(this.uri + '/FlexIntegration', {method: 'Get_TaskHours_ByResource_ByDay', employeeid: employeeid, datetime: datetime });\r\n }\r\n \r\n updateDueDateTwoWeek(id){\r\n return this.http.post(this.uri + '/FlexIntegration', {method: 'UpdateProjectToDoEndDate', projecttodoid: id});\r\n }\r\n\r\n DeleteTask(id){\r\n return this.http.post(this.uri + '/FlexIntegration', {method: 'Delete_TaskCE', id: id });\r\n }\r\n\r\n DuplicateTaskGrid(id){\r\n return this.http.post(this.uri + '/FlexIntegration', {method: 'Duplicate_Task', projecttodoid: id });\r\n }\r\n\r\n Get_CalendarTaks(date, identifier, employeeid ?, resources ?, statusid ?, reponsibleid ?, categoryid ?, projectid ?){\r\n let obj: any = {\r\n method: 'Get_MasterSchedule',\r\n itemdate: date,\r\n todoidentifier: identifier,\r\n resources: resources,\r\n }\r\n employeeid ? obj.employeeid = employeeid : '';\r\n resources ? obj.resources = resources : '';\r\n statusid ? obj.statusid = statusid : '';\r\n reponsibleid ? obj.reponsibleid = reponsibleid : '';\r\n categoryid ? obj.categoryid = categoryid : '';\r\n projectid ? obj.projectid = projectid : '';\r\n\r\n console.log(obj)\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n } \r\n\r\n Update_TaskDate(id, startDate, estimatedtime, progress, endDate){\r\n console.log({\r\n method: 'Update_TaskDate',\r\n projecttodoid: id,\r\n startdate: startDate,\r\n estimatedtime: estimatedtime,\r\n completitionperc: progress,\r\n duedate: endDate\r\n })\r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Update_TaskDate',\r\n projecttodoid: id,\r\n startdate: startDate,\r\n estimatedtime: estimatedtime,\r\n completitionperc: progress,\r\n duedate: endDate\r\n });\r\n }\r\n\r\n Update_TaskCalendar(id, startDate, estimatedtime, progress, resourceids){\r\n let obj = {\r\n method: 'Update_TaskCalendar',\r\n projecttodoid: id,\r\n startdate: startDate,\r\n estimatedtime: estimatedtime,\r\n completitionperc: progress,\r\n resoruceids: resourceids\r\n }\r\n console.log(obj);\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n Update_TaskDependency(hours, taskid){\r\n let obj = { method: 'PROJECTTODOShiftSuccessor',dateshift:hours, projecttodoid: taskid }\r\n console.log(obj);\r\n return this.http.post(this.uri+ '/FlexIntegration', obj);\r\n }\r\n\r\n Update_ServiceStartTime(id, startDate, endtime){\r\n let obj = {\r\n method: 'Update_ServiceStartTime',\r\n serviceid: id,\r\n starttime: startDate,\r\n endtime: endtime\r\n }\r\n // console.log(obj)\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n Update_ServiceStartTime2(id, startDate, endtime, oldresourceid, newresourceid){\r\n let obj = {\r\n method: 'Update_ServiceStartTime',\r\n serviceid: id,\r\n starttime: startDate,\r\n endtime: endtime,\r\n oldresourceid: oldresourceid,\r\n newresourceid: newresourceid\r\n }\r\n console.log(obj)\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n GetResourcesForGantt(startdate,days, ProjectIds, ResourceIds,CategoryIds){\r\n let obj = {\r\n method: 'Get_TasksCE',\r\n startdate: startdate,\r\n numberofdays: days,\r\n projectids: ProjectIds,\r\n resourceids: ResourceIds,\r\n categoryids: CategoryIds\r\n }\r\n console.log(obj)\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n GetTodoAll(id){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectTodoAll', moduleid: id })\r\n }\r\n\r\n GetServicesAll(id){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ServicesAll', moduleid: id })\r\n }\r\n\r\n //Memorize Task\r\n Get_ProjectTodoSummaryMemorized(id){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectTodoSummaryMemorized', projectid: id })\r\n }\r\n\r\n Get_ProjectTodoMemorized(id){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: 'Get_ProjectTodoMemorized', projectid: id })\r\n }\r\n\r\n Insert_Upadte_MemorizeTaskCE(obj){\r\n return this.http.post(this.uri + '/FlexIntegration', obj)\r\n }\r\n\r\n Insert_ProjectTodoSummaryMemorizedCE(obj){\r\n return this.http.post(this.uri + '/FlexIntegration', obj)\r\n }\r\n\r\n // GeneralService(obj){\r\n // return this.http.post(this.uri + '/FlexIntegration', obj)\r\n // }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TextToVoiceService {\r\n\r\n constructor() { }\r\n\r\n speak(text: string): void {\r\n if ('speechSynthesis' in window) {\r\n const utterance = new SpeechSynthesisUtterance(text);\r\n utterance.lang = 'en-US';\r\n window.speechSynthesis.speak(utterance);\r\n } else {\r\n console.error('Speech Synthesis not supported in this browser.');\r\n }\r\n }\r\n\r\n stop(): void {\r\n if (window.speechSynthesis.speaking) {\r\n window.speechSynthesis.cancel();\r\n }\r\n }\r\n\r\n}","import { Injectable } from '@angular/core';\r\nimport { environment } from 'src/environments/environment';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { LoginUser } from '../models/login-user';\r\nimport { ApiResponse } from '../models/api-response';\r\nimport { UserMenuNodes } from '../models/user-menu-nodes';\r\n\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\nimport { AppConfigService } from '../app-config.service.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserService {\r\n\r\n private uri = \"\";//`${environment.apiBaseUrl}`;\r\n private urlAI = \"\";\r\n private baseurlUtility = \"\";\r\n public currentUserName = new BehaviorSubject('');\r\n public isClient = new BehaviorSubject(false);\r\n // public settings: BehaviorSubject() = {\r\n // dateFormat: '',\r\n // moneyFormat: '',\r\n // startPage: ''\r\n // }\r\n\r\n public settings = new BehaviorSubject({\r\n dateFormat: '',\r\n moneyFormat: '',\r\n startPage: '',\r\n layout: '',\r\n map: '',\r\n regionid: '',\r\n languageid: ''\r\n })\r\n\r\n constructor(private http: HttpClient, private router: Router,\r\n private appConfigService: AppConfigService\r\n ) {\r\n this.uri = appConfigService.appConfigJson.apiBaseUrl;\r\n this.baseurlUtility = appConfigService.appConfigJson.baseurlUtility;\r\n this.urlAI = appConfigService.appConfigJson.urlAI;\r\n }\r\n login(loginUser: LoginUser) {\r\n if (this.uri != 'https://flexapi.cube-usa.com'){\r\n alert('Alert! Your are tryig to login to a NO Production environment. If you are sure that is not an error you can go.');\r\n }\r\n return this.http.post(this.uri + '/user', loginUser);\r\n }\r\n\r\n autologin(email: string) {\r\n return this.http.post(this.uri + '/user', { username: email, password: '', remember: '' } );\r\n }\r\n\r\n\r\n autoLoginUserTemp(email: string) {\r\n return this.http.post(this.baseurlUtility + '/user', { username: email, password: '', remember: '' } );\r\n }\r\n\r\n getMenu() {\r\n \r\n return this.http.post(this.uri + '/UserMenu', {});\r\n }\r\n\r\n changePassword(pass) {\r\n \r\n let email = localStorage.getItem('email');\r\n return this.http.post(this.uri + '/User/ChangePassword', {\r\n Email: email,\r\n Password: pass\r\n });\r\n }\r\n\r\n changePasswordCW(pass) {\r\n \r\n let email = localStorage.getItem('email');\r\n return this.http.post(this.uri + '/User/ChangePasswordCW', {\r\n Email: email,\r\n Password: pass\r\n });\r\n }\r\n\r\n getZDUserToken() {\r\n \r\n return this.http.post(this.uri + '/User/GetZendDeskToken', {});\r\n }\r\n\r\n getcubechatResponse(obj: any) {\r\n \r\n return this.http.post(this.urlAI + '/cubeAI', obj);\r\n\r\n }\r\n\r\n getuserSetting() {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Get_UserSettingsCE\" });\r\n\r\n }\r\n\r\n updateuserSetting(obj: any) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n\r\n }\r\n\r\n getClientTypes() {\r\n \r\n return this.http.post(this.uri + '/User/GetClientTypes', {});\r\n }\r\n\r\n createDatabase(clientDatabase: string, clientID: number) {\r\n \r\n return this.http.post(this.uri + '/User/CreateDatabase', { clientdatabase: clientDatabase, clientid: clientID });\r\n }\r\n\r\n recoverPassword(email) {\r\n \r\n return this.http.post(this.uri + '/User/RecoverPassword', {\r\n Email: email\r\n });\r\n }\r\n\r\n recoverPasswordCW(email) {\r\n \r\n return this.http.post(this.uri + '/User/RecoverPasswordCW', {\r\n Email: email\r\n });\r\n }\r\n\r\n saveUserSettingCoor(userSetting: any) {\r\n \r\n userSetting.method = \"update_UserSettingsCoor\";\r\n let user = JSON.parse(userSetting.usersettings)\r\n if(user && user.regionid){\r\n userSetting.regionid = user.regionid;\r\n }\r\n console.log(userSetting);\r\n return this.http.post(this.uri + '/FlexIntegration', userSetting);\r\n }\r\n\r\n saveUserSettingCoorMaster(userSetting: any) {\r\n \r\n userSetting.method = \"update_UserSettingsCoorMaster\";\r\n let user = JSON.parse(userSetting.usersettings)\r\n if(user && user.regionid){\r\n userSetting.regionid = user.regionid;\r\n }\r\n console.log(userSetting);\r\n return this.http.post(this.uri + '/FlexIntegration', userSetting);\r\n }\r\n\r\n Get_ClientUserStartPagesCE() {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_ClientUserStartPagesCE'\r\n });\r\n }\r\n\r\n Get_UserSettingsCE(userid) {\r\n // \r\n return this.http.post(this.uri + '/FlexIntegration', {\r\n method: 'Get_UserSettingsCE'\r\n });\r\n }\r\n\r\n Get_CubeWorksLogin(user: any) {\r\n \r\n return this.http.post(this.uri + '/user/LogincubeWorks', user);\r\n }\r\n\r\n GetUserClients() {\r\n return this.http.post(this.uri + '/User/GetUserCompanies', {});\r\n }\r\n\r\n UpdateUserDefaultClient(dbid: number) {\r\n \r\n return this.http.post(this.uri + '/User/updateDefaultCompany', { dbid: dbid });\r\n }\r\n\r\n activateUser(Email: string) {\r\n \r\n return this.http.post(this.uri + '/User/ActivateUser', { Email: Email });\r\n }\r\n\r\n acceptTerms(Email: string) {\r\n \r\n return this.http.post(this.uri + '/User/AccepTerm', { Email: Email });\r\n }\r\n\r\n getUserAvaliableGroups(userID: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"getUserAvaliableGroups\", currentuserid: userID });\r\n }\r\n\r\n getUserAssignedGroups(userID: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"getUserAssignedGroups\", currentuserid: userID });\r\n }\r\n\r\n getReportsAvaliableGroups(groupID: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"getGroupAvaliableReports\", groupid: groupID });\r\n }\r\n\r\n getReportsAssignedGroups(groupID: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"getGroupAssignedReports\", groupid: groupID });\r\n }\r\n\r\n getDashboardsAvaliableGroups(groupID: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"getGroupAvaliableDashboard\", groupid: groupID });\r\n }\r\n\r\n getDashboardsAssignedGroups(groupID: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"getGroupAssignedDashboard\", groupid: groupID });\r\n }\r\n\r\n getGroupNav(GroupID: number) {\r\n \r\n console.log({ method: \"Get_GroupToNavByGroupId\", usergroupid: GroupID });\r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Get_GroupToNavByGroupId\", usergroupid: GroupID });\r\n }\r\n\r\n changeUserNav(navIDs: string, groupid: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"changeUserNav\", navids: navIDs, groupid: groupid });\r\n }\r\n\r\n getUsers() {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Get_AllUser\" });\r\n }\r\n\r\n getGroups() {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Get_UserGroups\" });\r\n }\r\n\r\n deleteUserToGroup(groupids: string, userid: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"deleteUserToGroup\", userid: userid, groupids: groupids });\r\n }\r\n\r\n insertUserToGroup(groupids: string, userid: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"insertUserToGroup\", currentuserid: userid, groupids: groupids });\r\n }\r\n\r\n async asyncInsertUserToGroup(groupids: string, userid: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"insertUserToGroup\", currentuserid: userid, groupids: groupids });\r\n }\r\n\r\n async asyncDeleteUserToGroup(groupids: string, userid: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"deleteUserToGroup\", userid: userid, groupids: groupids });\r\n }\r\n\r\n deleteReportToGroup(reportids: string, groupid: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"deleteGroupToReport\", groupid: groupid, reportids: reportids });\r\n }\r\n\r\n insertReportToGroup(reportids: string, groupid: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"insertGroupToReport\", groupid: groupid, reportids: reportids });\r\n }\r\n\r\n deleteDashboardToGroup(dashboardids: string, groupid: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"deleteGroupToDashboard\", groupid: groupid, dashboardids: dashboardids });\r\n }\r\n\r\n insertDashboardToGroup(dashboardids: string, groupid: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"insertGroupToDashboard\", groupid: groupid, dashboardids: dashboardids });\r\n }\r\n\r\n getUserInUserGroup(groupid: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Get_UserInUserGroups\", groupid: groupid });\r\n }\r\n\r\n createUser(email: string, password: string) {\r\n \r\n return this.http.post(this.uri + '/User/InsertUser', { \"Email\": email, \"Password\": password })\r\n }\r\n\r\n getEmployees() {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Get_EmployeeListAll\" });\r\n }\r\n\r\n getGroupsAll() {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Get_UserGroups\" });\r\n }\r\n\r\n insertGroup(id: string, groupname: string) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"InsertUpdate_UserGroups\", id: id, groupname: groupname });\r\n }\r\n\r\n deleteGroup(id: string) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Delete_UserGroups\", id: id });\r\n }\r\n\r\n insertContact(contact: any) {\r\n \r\n return this.http.post(this.uri + '/public/insertcontacce', contact );\r\n }\r\n\r\n insertCompany(company: any) {\r\n \r\n return this.http.post(this.uri + '/public/InsertUser', company );\r\n }\r\n\r\n insertExtUsr(contact: any) {\r\n \r\n return this.http.post(this.uri + '/User/extusr', contact );\r\n } \r\n\r\n insertClient(company: any) {\r\n return this.http.post(this.uri + '/User/InsertClient', company );\r\n }\r\n\r\n getCustomers() {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Get_CustomerCE\" });\r\n }\r\n\r\n createClientUser(email: string, userfirstname: string, userlastname: string, employeeid: number, isvendor: number, isclient: number, isemployee: number) {\r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"InsertClientUser\", email: email, userfirstname: userfirstname, userlastname: userlastname, employeeid: employeeid, isvendor: isvendor, isclient: isclient, isemployee: isemployee });\r\n }\r\n\r\n sendUserConfirm(email: string) {\r\n \r\n return this.http.post(this.uri + '/User/SendUserConfirm', { Email: email } );\r\n }\r\n\r\n getUserAll() {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Get_UserAll\" });\r\n }\r\n\r\n getUserExternalUser(){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"GetExternal_UserAll\" });\r\n }\r\n\r\n getClients(){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"Get_ClientCustomer\" });\r\n }\r\n\r\n insertUser(obj){\r\n return this.http.post(this.uri + '/FlexIntegration', obj);\r\n }\r\n\r\n updateUserStatus(userID: number, userActive: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"updateUserStatus\", luserid: userID, active: userActive });\r\n }\r\n\r\n updateUserStatusLock(userID: number, userActive: number) {\r\n \r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"updateUserStatusLock\", luserid: userID, active: userActive });\r\n }\r\n\r\n updateExtUserStatusLock(id: number, locked: number){\r\n return this.http.post(this.uri + '/FlexIntegration', { method: \"updateUserStatusLockExtUsr\", luserid: id , islocked: locked });\r\n }\r\n\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { AppConfigService } from '../app-config.service.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UtilityService {\r\n private baseurl = \"\";\r\n private apiroute = \"\";\r\n\r\n constructor(\r\n private http: HttpClient,\r\n private appSetting: AppConfigService,\r\n ) {\r\n this.baseurl = this.appSetting.apiBaseUrl;\r\n this.apiroute = '/FlexIntegration';\r\n }\r\n\r\n GetApplicationNotesAll() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ApplicationNotesAll' });\r\n }\r\n\r\n GetMasterApplicationNotesAll() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_MasterApplicationNotesAll' });\r\n }\r\n\r\n Get_ApplicationCommSequence() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_ApplicationCommSequence' });\r\n }\r\n\r\n Get_MasterApplicationCommSequence() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_MasterApplicationCommSequence' });\r\n }\r\n\r\n GetPointType() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_PointType' });\r\n }\r\n\r\n GetPointTypeMaster() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_PointTypeMaster' });\r\n }\r\n\r\n GetWiringDiagram(){\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_WiringdiagramListCE' });\r\n }\r\n\r\n GetMasterPointType() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_MasterPointType' });\r\n }\r\n\r\n Get_EstDrawingListTemplateCE() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstDrawingListTemplateCE' });\r\n }\r\n\r\n GetObjectTypes() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstimateObjectType' });\r\n }\r\n\r\n GetMasterObjectTypes() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_MasterEstimateObjectType' });\r\n }\r\n\r\n GetParts() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_AccPartsEngUtility' });\r\n }\r\n\r\n GetUnits() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_UnitsEngUtility' });\r\n }\r\n\r\n GetMasterUnits() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_MasterUnitsEngUtility' });\r\n }\r\n\r\n GetTest() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_CommisionngProcEngUtility' });\r\n }\r\n\r\n GetMasterTest() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_MasterCommisionngProcEngUtility' });\r\n }\r\n\r\n GetWiringdiagram() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'GetWiringdiagramCE' });\r\n }\r\n\r\n UpdateApplicationNotes(id, applicationnote, labelname, testids, pointtypeid, partid, wdid, unitid, objectreffid, enable) {\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n 'method': 'SaveUpdateAppNotesCE',\r\n id: id,\r\n applicationnote: applicationnote,\r\n labelname: labelname,\r\n testids: testids,\r\n pointtypeid: pointtypeid,\r\n partid: partid,\r\n wdid: wdid,\r\n unitid: unitid,\r\n objectreffid: objectreffid,\r\n enable: enable\r\n });\r\n }\r\n\r\n UpdateMasterApplicationNotes(id, applicationnote, labelname, testids, pointtypeid, partid, wdid, unitid, objectreffid, enable) {\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n 'method': 'SaveMasterUpdateAppNotesCE',\r\n id: id,\r\n applicationnote: applicationnote,\r\n labelname: labelname,\r\n testids: testids,\r\n pointtypeid: pointtypeid,\r\n partid: partid,\r\n wdid: wdid,\r\n unitid: unitid,\r\n objectreffid: objectreffid,\r\n enable: enable\r\n });\r\n }\r\n\r\n UpdateApplicationNotesMultiple(id, applicationnote, labelname, testids, pointtypeid, partid, wdid, unitid, objectreffid, enable, readingRange,minvalue, maxvalue) {\r\n const model = {\r\n 'method': 'SaveUpdateAppNotesCE',\r\n id: id == undefined ? 0:id,\r\n applicationnote: applicationnote,\r\n labelname: labelname,\r\n testids: testids,\r\n pointtypeid: pointtypeid,\r\n partid: partid,\r\n wdid: wdid,\r\n unitid: unitid,\r\n objectreffid: objectreffid,\r\n enable: enable,\r\n readrange:minvalue,\r\n // minvalue:minvalue,\r\n readrangemax:maxvalue\r\n }\r\n console.log(model)\r\n return this.http.post(this.baseurl + this.apiroute, model\r\n );\r\n }\r\n\r\n UpdateMasterApplicationNotesMultiple(id, applicationnote, labelname, testids, pointtypeid, partid, wdid, unitid, objectreffid, enable, readingRange,minvalue, maxvalue) {\r\n const model = {\r\n 'method': 'SaveMasterUpdateAppNotesCE',\r\n id: id == undefined ? 0:id,\r\n applicationnote: applicationnote,\r\n labelname: labelname,\r\n testids: testids,\r\n pointtypeid: pointtypeid,\r\n partid: partid,\r\n wdid: wdid,\r\n unitid: unitid,\r\n objectreffid: objectreffid,\r\n enable: enable,\r\n readrange:minvalue,\r\n // minvalue:minvalue,\r\n readrangemax:maxvalue\r\n }\r\n console.log(model)\r\n return this.http.post(this.baseurl + this.apiroute, model\r\n );\r\n }\r\n\r\n SaveUpdateEstimateObjectReference(id, reff, objectname, active) {\r\n\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n 'method': 'Insert_SaveUpdateEstimateObjectReference',\r\n id: id,\r\n reff: reff,\r\n objectname: objectname,\r\n active: active\r\n });\r\n }\r\n\r\n SaveUpdateMasterEstimateObjectReference(id, reff, objectname, active) {\r\n\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n 'method': 'Insert_SaveMasterUpdateEstimateObjectReference',\r\n id: id,\r\n reff: reff,\r\n objectname: objectname,\r\n active: active\r\n });\r\n }\r\n\r\n SaveUpdateEstimateProgramerAddObjects(id, typeid, unitid, tag, objectname, systemtypeid, active) {\r\n\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n 'method': 'Insert_SaveUpdateEstimateProgramerAddObjects',\r\n id: id,\r\n typeid: typeid,\r\n unitid: unitid,\r\n tag: tag,\r\n objectname: objectname,\r\n systemtypeid: systemtypeid,\r\n active: active,\r\n });\r\n }\r\n\r\n SaveUpdateMasterEstimateProgramerAddObjects(id, typeid, unitid, tag, objectname, systemtypeid, active) {\r\n\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n 'method': 'Insert_SaveMasterUpdateEstimateProgramerAddObjects',\r\n id: id,\r\n typeid: typeid,\r\n unitid: unitid,\r\n tag: tag,\r\n objectname: objectname,\r\n systemtypeid: systemtypeid,\r\n active: active,\r\n });\r\n }\r\n\r\n GetCommisionngProcEngUtility() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_CommisionngProcEngUtility' });\r\n // return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_CommisioningActions' });\r\n }\r\n\r\n GetMasterCommisionngProcEngUtility() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_MasterCommisionngProcEngUtility' });\r\n }\r\n\r\n GetRegions() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_Regions' });\r\n }\r\n GetRegionsTree() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_CustomerDivision_ParentChild' });\r\n }\r\n GetEstimatetypicalsov() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_Estimatetypicalsov' });\r\n }\r\n GetTagEngUtility() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_TagEngUtility' });\r\n }\r\n GetTaskCatAssignedEngUtility(parentid = '0') {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_TaskCatAssignedEngUtility', parentid: parentid });\r\n }\r\n\r\n GetTaskCatAssignedEngUtilityCE(parentid = '0') {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_TaskCatAssignedEngUtilityCE', parentid: parentid });\r\n }\r\n\r\n GetTaskCatAssignedEngUtility2() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_TaskCategoryCE' });\r\n }\r\n\r\n InsetUpdate_Estimatetypicalsov(id,clientid,descriptionofwork,sort,inactive,projectodocatid,active,typicalpercentamnt) {\r\n let model = {\r\n 'method': 'InsetUpdate_Estimatetypicalsov',\r\n id: id,\r\n clientid: clientid,\r\n descriptionofwork: descriptionofwork,\r\n sort: sort,\r\n inactive: inactive,\r\n projectodocatid: projectodocatid,\r\n active: active,\r\n typicalpercentamnt: typicalpercentamnt,\r\n }\r\n return this.http.post(this.baseurl + this.apiroute, model);\r\n }\r\n\r\n GetTaskCatNotAssignedEngUtility() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_TaskCatNotAssignedEngUtility', pageindex: 1, pagesize: 10000 });\r\n }\r\n\r\n GetMasterTaskCatNotAssignedEngUtility() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_MasterTaskCatNotAssignedEngUtility', pageindex: 1, pagesize: 10000 });\r\n }\r\n\r\n GetSystemEngUtility() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_SystemEngUtility' });\r\n }\r\n\r\n InsertUpdateSystemTypesEngUtility(Id, Typename, Availabe, vav, shop, parentId, image) {\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n 'method': 'InsertUpdate_SystemTypesEngUtility',\r\n typrname: Typename,\r\n available: Availabe,\r\n vav: vav,\r\n shop: shop,\r\n parentid: parentId,\r\n image: image,\r\n id: Id,\r\n });\r\n }\r\n\r\n UpdateInsertCustomerDivision(id, name, active) {\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n 'method': 'Update_Insert_CustomerDivision',\r\n DivisionName: name,\r\n RegionID: id,\r\n Active: active ? 1 : 0\r\n });\r\n }\r\n\r\n GetCommisioningTag() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_CommisioningTag' });\r\n }\r\n\r\n GetMasterCommisioningTag() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_MasterCommisioningTag' });\r\n }\r\n\r\n GetCommisioningActions() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_CommisioningActions' });\r\n }\r\n\r\n GetMasterCommisioningActions() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_MasterCommisioningActions' });\r\n }\r\n\r\n InsertUpadte_CommisionngSequenceUtility(id,functionname,testobjective,action,reaction,actiontag,actioncmd,reactiontag,reactionendvalueid,actionvalue) {\r\n let model = {\r\n 'method': 'InsertUpadte_CommisionngSequenceUtility',\r\n id: id,\r\n functionname: functionname,\r\n testobjective: testobjective,\r\n action: action,\r\n reaction: reaction,\r\n actiontag: actiontag,\r\n actioncmd: actioncmd,\r\n reactiontag: reactiontag,\r\n reactionendvalueid: reactionendvalueid,\r\n actionvalue: actionvalue,\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute,\r\n model);\r\n }\r\n\r\n InsertUpadte_CommisionngSequenceUtilityEditMultiple(id,functionname,testobjective,action,reaction,actiontag,actioncmd,reactiontag,reactionendvalueid,actionvalue,\r\n ACTIONTIME) {\r\n let model = {\r\n 'method': 'InsertUpadte_CommisionngSequenceUtility',\r\n id: id,\r\n functionname: functionname,\r\n testobjective: testobjective,\r\n action: action,\r\n reaction: reaction,\r\n actiontag: actiontag,\r\n actioncmd: actioncmd,\r\n reactiontag: reactiontag,\r\n reactionendvalueid: reactionendvalueid,\r\n actionvalue: actionvalue,\r\n actiontime:ACTIONTIME\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute,\r\n model);\r\n }\r\n\r\n InsertUpadte_CommisionngSequenceUtilityNew(id,functionname,testobjective,action,reaction,actiontag,actioncmd,reactiontag,reactionendvalueid,actionvalue, Detail_Id, READINGRANGE, ACTIONTIME) {\r\n let model = {\r\n 'method': 'InsertUpadte_CommisionngSequenceUtility',\r\n id: id,\r\n functionname: functionname,\r\n testobjective: testobjective,\r\n action: action,\r\n reaction: reaction,\r\n actiontag: actiontag,\r\n actioncmd: actioncmd,\r\n reactiontag: reactiontag,\r\n reactionendvalueid: reactionendvalueid,\r\n actionvalue: actionvalue,\r\n systemdetailid:Detail_Id,\r\n READINGRANGE:READINGRANGE,\r\n actiontime:ACTIONTIME,\r\n }\r\n\r\n console.log(model);\r\n return this.http.post(this.baseurl + this.apiroute,\r\n model);\r\n }\r\n\r\n\r\n\r\n InsertUpadteCommisionngProcEngUtility(id, functionname, testobjective, action, reaction, actiontag, actioncmd, reactiontag, reactionendvalueid, actionvalue) {\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n 'method': 'InsertUpadte_CommisionngProcEngUtility',\r\n id: id,\r\n functionname: functionname,\r\n testobjective: testobjective,\r\n action: action,\r\n reaction: reaction,\r\n actiontag: actiontag,\r\n actioncmd: actioncmd,\r\n reactiontag: reactiontag,\r\n reactionendvalueid: reactionendvalueid,\r\n actionvalue: actionvalue,\r\n });\r\n }\r\n\r\n InsertUpadteCommisionngProcEngUtilityJSON(data) {\r\n return this.http.post(this.baseurl + this.apiroute, data);\r\n }\r\n\r\n InsertUpdateSystemTagsEngUtility(id, sort, tag, typename, parentid, active, descriptions) {\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n 'method': 'InsertUpdate_SystemTagsEngUtility',\r\n id: id,\r\n sort: sort,\r\n tag: tag,\r\n typename: typename,\r\n parentid: parentid,\r\n active: active,\r\n descriptions: descriptions,\r\n });\r\n }\r\n\r\n GetCustomerDivisionParts(id) {\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n 'method': 'Get_CustomerDivisionParts_List',\r\n DivisionID: id,\r\n });\r\n }\r\n\r\n GetCustomerDivisionsPartsList(name) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstimatePartsLabor-CE', partnamefilter: name });\r\n // return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstimateParts', partnamefilter: name });\r\n }\r\n\r\n GetGateways() {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'GetGateways' });\r\n // return this.http.post(this.baseurl + this.apiroute, { 'method': 'Get_EstimateParts', partnamefilter: name });\r\n }\r\n\r\n InsertGateway(ID: string, gatewayID: string, active: number) {\r\n return this.http.post(this.baseurl + this.apiroute, { 'method': 'InsertUpdateGateways', 'id': ID, 'gatewayid': gatewayID, 'active': active });\r\n }\r\n\r\n SaveUpdateLaborPart(PartID, RegionID, PartCost, PartCostID, Partefficiency) {\r\n let model = {\r\n 'method': 'Update_Insert_CustomerDivisionParts ',\r\n PartID: PartID,\r\n RegionID: RegionID,\r\n PartCost: PartCost,\r\n PartCostID: PartCostID,\r\n Partefficiency: Partefficiency,\r\n }\r\n\r\n // console.log(JSON.stringify(model));\r\n console.log(model)\r\n return this.http.post(this.baseurl + this.apiroute, model\r\n );\r\n }\r\n\r\n DeleteTaskCatAssignedEngUtility(id) {\r\n // id = id < 0 ? id * -1 : id;\r\n return this.http.post(this.baseurl + this.apiroute,\r\n {\r\n 'method': 'DeleteMultiple_TaskCatAssignedEngUtility',\r\n id: id,\r\n catid: 0,\r\n partid: 0\r\n });\r\n }\r\n\r\n InsertTaskCatAssignedEngUtility(partid, catid) {\r\n // id = id < 0 ? id * -1 : id;\r\n let model = {\r\n 'method': 'Insert_TaskCatAssignedEngUtility',\r\n partid: partid,\r\n catid: catid\r\n }\r\n\r\n console.log(JSON.stringify(model))\r\n return this.http.post(this.baseurl + this.apiroute, model\r\n );\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\ndeclare var webkitSpeechRecognition: any;\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class VoiceRecognitionService {\r\n\r\n recognition: any;\r\n isStoppedSpeechRecog = false;\r\n public text = '';\r\n\r\n private voiceToTextSubject: Subject = new Subject();\r\n private speakingPaused: Subject = new Subject();\r\n private tempWords: string = '';\r\n \r\n constructor(private http: HttpClient) { }\r\n\r\n // This function will return an observable, sending a voice message by using microphone/headset returning text recognized.\r\n speechInput() {\r\n return this.voiceToTextSubject.asObservable();\r\n }\r\n\r\n // Here we are starting the voice recognition feature\r\n init() {\r\n if ('webkitSpeechRecognition' in window) {\r\n this.recognition = new webkitSpeechRecognition();\r\n } else {\r\n console.warn('webkitSpeechRecognition is not supported in this browser.');\r\n return;\r\n }\r\n \r\n this.recognition.interimResults = true;\r\n this.recognition.lang = 'en-US';\r\n\r\n this.recognition.addEventListener('result', (e: any) => {\r\n const transcript = Array.from(e.results)\r\n .map((result: any) => result[0])\r\n .map((result) => result.transcript)\r\n .join('');\r\n this.tempWords = transcript;\r\n this.voiceToTextSubject.next(this.text || transcript);\r\n });\r\n return this.initListeners();\r\n }\r\n\r\n // Listening to the voice until end\r\n initListeners() {\r\n if (!this.recognition) return;\r\n\r\n this.recognition.addEventListener('end', (condition: any) => {\r\n this.recognition.stop();\r\n });\r\n return this.speakingPaused.asObservable();\r\n }\r\n\r\n // Function that grabs the sound from microphone by listen.\r\n start() {\r\n if (!this.recognition) return;\r\n\r\n this.text = '';\r\n this.isStoppedSpeechRecog = false;\r\n this.recognition.start();\r\n this.recognition.addEventListener('end', (condition: any) => {\r\n if (this.isStoppedSpeechRecog) {\r\n this.recognition.isActive = true;\r\n this.recognition.stop();\r\n } else {\r\n this.isStoppedSpeechRecog = false;\r\n this.wordConcat();\r\n if (!this.recognition.lastActiveTime || (Date.now() - this.recognition.lastActive) > 200) {\r\n this.recognition.start();\r\n this.recognition.lastActive = Date.now();\r\n }\r\n }\r\n this.voiceToTextSubject.next(this.text);\r\n });\r\n }\r\n\r\n // Function to stop the voice recognition\r\n stop() {\r\n if (!this.recognition) return;\r\n\r\n this.isStoppedSpeechRecog = true;\r\n this.wordConcat()\r\n this.recognition.stop();\r\n this.recognition.isActive = false;\r\n this.speakingPaused.next('Stopped speaking');\r\n }\r\n\r\n // Merging the previous message with the last one sent.\r\n wordConcat() {\r\n this.text = this.text.trim() + ' ' + this.tempWords;\r\n this.text = this.text.trim();\r\n this.tempWords = '';\r\n }\r\n}\r\n","export default \".dx-treeview-item-without-checkbox.dx-state-focused > .dx-treeview-item {\\n background-color: #337ab7 !important;\\n color: #fff !important;\\n}\\n\\n::ng-deep.currently-active-item {\\n background-color: #0000001f;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL0VkaXRTeXN0ZW1NdWx0aXBsZS9FOlxcRGV2XFxDVUJFVEVNUFxcbmV3Y3ViZS9zcmNcXGFwcFxcc2hhcmVkXFxFZGl0U3lzdGVtTXVsdGlwbGVcXEVkaXRTeXN0ZW1NdWx0aXBsZS5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL0VkaXRTeXN0ZW1NdWx0aXBsZS9FZGl0U3lzdGVtTXVsdGlwbGUuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxvQ0FBQTtFQUNBLHNCQUFBO0FDQ0Y7O0FER0E7RUFDRSwyQkFBQTtBQ0FGIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL0VkaXRTeXN0ZW1NdWx0aXBsZS9FZGl0U3lzdGVtTXVsdGlwbGUuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuZHgtdHJlZXZpZXctaXRlbS13aXRob3V0LWNoZWNrYm94LmR4LXN0YXRlLWZvY3VzZWQgPiAuZHgtdHJlZXZpZXctaXRlbSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNyAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG46Om5nLWRlZXAuY3VycmVudGx5LWFjdGl2ZS1pdGVtIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwMWY7XHJcbn1cclxuIiwiLmR4LXRyZWV2aWV3LWl0ZW0td2l0aG91dC1jaGVja2JveC5keC1zdGF0ZS1mb2N1c2VkID4gLmR4LXRyZWV2aWV3LWl0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcC5jdXJyZW50bHktYWN0aXZlLWl0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwMWY7XG59Il19 */\"","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { DeltaworldService } from 'src/app/services/deltaworld.service';\r\nimport { EstimateService } from 'src/app/services/estimate.service';\r\nimport { groupBy, mergeMap, toArray } from 'rxjs/operators';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { DxDataGridComponent, DxTreeViewComponent } from 'devextreme-angular';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { Router } from '@angular/router';\r\nimport { from } from 'rxjs';\r\nimport * as XLSX from 'xlsx';\r\nimport \"jspdf-autotable\";\r\n\r\ntype AOA = any[][];\r\n\r\n\r\n\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-edit-system-multiple',\r\n templateUrl: './EditSystemMultiple.component.html',\r\n styleUrls: ['./EditSystemMultiple.component.scss']\r\n})\r\nexport class EditSystemMultipleComponent implements OnInit {\r\n @ViewChild('treeViewSystemArea', { static: false }) treeViewSystemArea: DxTreeViewComponent; \r\n @ViewChild('treeDelete', { static: false }) treeDelete: DxTreeViewComponent; \r\n @ViewChild(DxTreeViewComponent, { static: false }) treeView;\r\n @ViewChild(DxTreeViewComponent, { static: false }) treeView2;\r\n @ViewChild(\"gridLabor\", { static: false }) gridLabor: DxDataGridComponent;\r\n\r\n @ViewChild(\"gridmultiplesystem\", { static: false })\r\n gridmultiplesystem: DxDataGridComponent;\r\n\r\n\r\n @Input() showsearch = false;\r\n @Input() showcheckbox = true;\r\n @Input() showoption = false;\r\n @Input() checkboxmode = 'none';\r\n @Input() heightParent = '100%';\r\n @Input() heightChild = '90%';\r\n @Input() expanded = true;\r\n @Input() systemidParent;\r\n @Input() Commissioning;\r\n @Input() FindAndReplace; \r\n @Input() popupEditAreaSystem = false; \r\n\r\n // private _showcheckbox: any;\r\n\r\n // @Input('showcheckbox')\r\n // set showcheckbox(showcheckbox: any) {\r\n // this._showcheckbox = showcheckbox;\r\n\r\n // if (showcheckbox == true && this.checkboxmode == 'none') {\r\n // this.checkboxmode = 'normal';\r\n // } else {\r\n // this.checkboxmode = 'none';\r\n // }\r\n // }\r\n\r\n // get showcheckbox(): any { return this._showcheckbox; }\r\n\r\n private _areas: any;\r\n systemid: any;\r\n totalReplicate = 1;\r\n systemSelect: any;\r\n cancelButtonEditDiferenceLabor: { text: any; icon: string; elementAttr: { id: string; }; onClick: () => void; };\r\n\r\n @Input('areas')\r\n set areas(areas: any) {\r\n this._areas = areas;\r\n\r\n // this.agrupar();\r\n if(areas.length != undefined){\r\n if (areas.length > 0){\r\n this.userService.Get_UserSettingsCE(localStorage.getItem(\"customerid\")).subscribe(result => {\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n if (obj.openTreeEstimate == true) {\r\n this.OpenOrClose = true\r\n this.treeViewSystemArea.instance.expandAll()\r\n this.estiloCarpetas()\r\n } else {\r\n this.OpenOrClose = false\r\n this.treeViewSystemArea.instance.collapseAll()\r\n this.estiloCarpetas()\r\n }\r\n\r\n // localStorage.setItem('settings', result[0].CLIENTUSERSETTING);\r\n })\r\n this.agrupar2(areas);\r\n }\r\n }\r\n\r\n }\r\n\r\n get areas(): any { return this._areas; }\r\n\r\n downloads = [\"Download Trial For Visual Studio\", \"Download Trial For All Platforms\", \"Package Managers\"];\r\n\r\n groupItems:any;\r\n\r\n @Output() onitemchange = new EventEmitter();\r\n @Output() reload = new EventEmitter();\r\n @Output() deletedSystemOrArea = new EventEmitter();\r\n @Output() NewSystem = new EventEmitter();\r\n @Output() gochangesystem = new EventEmitter();\r\n @Output() changeview = new EventEmitter();\r\n @Output() changeviewImages = new EventEmitter();\r\n @Output() reloadData = new EventEmitter();\r\n\r\n @Input() estimateid: number = 0;\r\n @Input() estimatenamestr = '';\r\n\r\n\r\n @Input('idsSystem')\r\n set idsSystem(idsSystem: any) {\r\n console.log(idsSystem)\r\n this.estimateService\r\n .GetEstimateAreaSystemInfoCE(idsSystem)\r\n .subscribe((result) => {\r\n console.log(result)\r\n this.getSystemType()\r\n this.rowsToEditAreaSystem = result\r\n .map((x) => {\r\n x.Active = !x.Active;\r\n // x.MarkLib = !x.MarkLib;\r\n return x;\r\n });\r\n });\r\n }\r\n \r\n\r\n\r\n rowsToEditAreaSystem:any[]=[]\r\n\r\n areaSelect = [];\r\n systemTypeSelectCE = [];\r\n itemsNewAreaSystem = [\r\n {\r\n id: 1,\r\n name: \"Area\",\r\n },\r\n {\r\n id: 2,\r\n name: \"System\",\r\n },\r\n ];\r\n\r\n itemsDuplicateAreaSystem = [\r\n {\r\n id: 1,\r\n name: \"Duplicate Area\",\r\n },\r\n {\r\n id: 2,\r\n name: \"Duplicate System\",\r\n },\r\n {\r\n id: 3,\r\n name: \"Replicate System\",\r\n },\r\n ];\r\n\r\n popupReplicateSystem = false;\r\n saveButtonReplicateSystem: any;\r\n cancelButtonReplicateSystem: any;\r\n\r\n popupEditArea = false;\r\n saveButtonEditArea: any;\r\n cancelButtonEditArea: any;\r\n rowsToEditArea = [];\r\n\r\n popupEditSystem = false;\r\n saveButtonEditSystem: any;\r\n cancelButtonEditSystem: any;\r\n\r\n popupDeleteSystem = false;\r\n popupDeleteArea = false;\r\n cancelButtonDeleteEstimate: any;\r\n saveButtonDeleteEstimate: any;\r\n\r\n modelArea = {\r\n name: '',\r\n id: 0,\r\n active: true,\r\n sort: 0\r\n }\r\n\r\n modelNewSystem = {\r\n id: 0,\r\n systemid: \"\",\r\n sort: \"\",\r\n areaname: \"\",\r\n systemname: \"\",\r\n qty: \"\",\r\n systemtype: \"\",\r\n inactive: false,\r\n deleted: false,\r\n scopeofwork: \"\",\r\n sop: \"\",\r\n excludefromsearch: \"\",\r\n controldwgname: \"\",\r\n controldwgimg: \"\",\r\n tagtext: \"\",\r\n tagnum: \"\",\r\n description: \"\",\r\n };\r\n\r\n // rowsToEditAreaSystem = [];\r\n saveButtonEditAreaSystem: any;\r\n cancelButtonEditAreaSystem: any;\r\n OpenOrClose:boolean = true\r\n\r\n profileSettings:any[];\r\n manageSettings:any[];\r\n\r\n isDuplicating:boolean = false\r\n itemsSelected:any[]=[]\r\n popupController:boolean = false\r\n imgSelected:any = \"Not_Image\"\r\n treeBoxValue: string[];\r\n // select\r\n taggingDatasource:any[]=[]\r\n treeBoxValue2: string[];\r\n componentModel = {\r\n ID:[],\r\n data:[]\r\n };\r\n\r\n showModalDiferencia:boolean = false\r\n\r\n constructor(\r\n private MapInformationService: MapInformationService,\r\n private estimateService: EstimateService,\r\n private deltaService: DeltaworldService,\r\n private translate:TranslateService,\r\n private userService: UserService,\r\n private toast: ToastService,\r\n private router: Router,\r\n ) {\r\n\r\n\r\n this.profileSettings = [\r\n { value: 1, name: 'Add Area', icon: 'fas fa-plus' },\r\n {\r\n value: 4, name: 'Add System', icon: 'fas fa-plus'\r\n },\r\n { value: 2, name: 'Import from Library', icon: 'fas fa-file-import' },\r\n { value: 3, name: 'Delete Area', icon: 'fas fa-trash-alt' },\r\n { value: 5, name: 'Delete System', icon: 'fas fa-trash-alt' },\r\n { value: 6, name: 'Clone Area', icon: 'fas fa-clone' },\r\n { value: 7, name: 'Clone System', icon: 'fas fa-clone' },\r\n { value: 8, name: 'Edit Area', icon: 'fas fa-edit' },\r\n { value: 9, name: 'Edit System', icon: 'fas fa-edit' },\r\n // { value: 10, name: 'Move to another Area', icon: 'fas fa-exchange-alt' },\r\n ];\r\n\r\n this.manageSettings = [\r\n // { value: 1, name: 'Network view', icon: 'fas fa-network-wired' },\r\n // {\r\n // value: 4, name: 'Galery View', icon: 'fas fa-eye'\r\n // },\r\n { value: 2, name: 'Find and Replace', icon: 'assets/find.png' },\r\n ];\r\n\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.cancelButtonEditDiferenceLabor = {\r\n text: this.translate.instant('btnClose'),\r\n icon:\"close\",\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.showModalDiferencia = false\r\n this.reloadData.emit(this.estimateid);\r\n // this.close();\r\n },\r\n };\r\n\r\n // this.agrupar();\r\n\r\n\r\n // this.getEstimateArea(this.estimateid);\r\n\r\n // this.deltaService.GetEstimateSystemTypeCE().subscribe((result) => {\r\n // this.systemTypeSelectCE = result;\r\n // });\r\n\r\n this.cancelButtonEditAreaSystem = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.reload.emit(this.estimateid)\r\n this.popupEditAreaSystem = false;\r\n // this.close();\r\n },\r\n };\r\n\r\n this.saveButtonEditAreaSystem = {\r\n text: this.translate.instant('btnSave'),\r\n icon: \"check\",\r\n elementAttr: {\r\n id: \"bton-green\",\r\n },\r\n onClick: () => {\r\n this.updateAreaSystem();\r\n // this.type = 1;\r\n // this.addNewComment();\r\n // this.updateNetworkConfiguration();\r\n },\r\n };\r\n\r\n\r\n this.cancelButtonDeleteEstimate = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupDeleteSystem = false;\r\n this.popupDeleteArea = false;\r\n this.componentModel.ID = []\r\n // this.close();\r\n },\r\n };\r\n\r\n this.saveButtonDeleteEstimate = {\r\n text: this.translate.instant('btnSave'),\r\n icon: \"check\",\r\n elementAttr: {\r\n id: \"bton-green\",\r\n },\r\n onClick: () => {\r\n if (this.popupDeleteSystem) {\r\n let data = this.getChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n // let reload = false\r\n // data.forEach(x=>{\r\n // if (x.network == 1) {\r\n // reload = true\r\n // }\r\n // })\r\n // if (reload){\r\n // this.toast.warning(\"The systme selected has child in network, you can´t delete it\")\r\n // this.reload.emit(this.estimateid);\r\n // this.popupDeleteSystem = false;\r\n // this.getEstimateArea(this.estimateid);\r\n // return\r\n // } else {\r\n this.componentModel.ID.forEach(element => {\r\n this.estimateService.DeleteSystem(element).subscribe(result => {\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgDelSys'));\r\n this.reload.emit(this.estimateid);\r\n this.popupDeleteSystem = false;\r\n this.getEstimateArea(this.estimateid);\r\n }\r\n })\r\n });\r\n // }\r\n\r\n }\r\n\r\n if (this.popupDeleteArea) {\r\n let data = this.getAreasChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgAnArea'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n data.forEach(element => {\r\n\r\n this.estimateService.DeleteArea(element.originalid).subscribe(result => {\r\n cantidadEnviada++;\r\n\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgAreDelSucc'));\r\n this.reload.emit(this.estimateid);\r\n // this.getEstimateArea(this.estimateid);\r\n this.popupDeleteArea = false;\r\n this.getEstimateArea(this.estimateid);\r\n }\r\n });\r\n\r\n });\r\n }\r\n },\r\n };\r\n\r\n this.cancelButtonReplicateSystem = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupReplicateSystem = false;\r\n // this.close();\r\n },\r\n };\r\n\r\n this.saveButtonReplicateSystem = {\r\n text: this.translate.instant('btnSave'),\r\n icon: \"check\",\r\n elementAttr: {\r\n id: \"bton-green\",\r\n },\r\n onClick: () => {\r\n\r\n let data = this.getChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n return;\r\n }\r\n\r\n\r\n if (this.totalReplicate <= 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgRepNum'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n data.forEach(element => {\r\n\r\n\r\n this.estimateService.ReplicateeEstimateSystems(element.id, this.totalReplicate).subscribe(result => {\r\n // this.estimateService.duplicateImage(element.id,result[0].ID)\r\n // .subscribe(res1=>{\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgRepSucc'));\r\n this.reload.emit(this.estimateid);\r\n this.totalReplicate = 0;\r\n this.popupReplicateSystem = false;\r\n }\r\n })\r\n // })\r\n });\r\n },\r\n };\r\n\r\n\r\n this.cancelButtonEditArea = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupEditArea = false;\r\n // this.close();\r\n },\r\n };\r\n\r\n this.saveButtonEditArea = {\r\n text: this.translate.instant('btnSave'),\r\n icon: \"check\",\r\n elementAttr: {\r\n id: \"bton-green\",\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n // this.addNewComment();\r\n //this.updateNetworkConfiguration();\r\n this.insertArea();\r\n },\r\n };\r\n\r\n this.cancelButtonEditSystem = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupEditSystem = false;\r\n // this.close();\r\n },\r\n };\r\n\r\n this.saveButtonEditSystem = {\r\n text: this.translate.instant('btnSave'),\r\n icon: \"check\",\r\n elementAttr: {\r\n id: \"bton-green\",\r\n },\r\n onClick: () => {\r\n\r\n\r\n let hasError = false;\r\n let erros = [];\r\n if (!this.modelNewSystem.areaname) {\r\n hasError = true;\r\n erros.push(\"Please select area.\");\r\n }\r\n\r\n if (!this.modelNewSystem.systemname) {\r\n hasError = true;\r\n erros.push(\"Please enter system name.\");\r\n }\r\n\r\n if (hasError) {\r\n this.toast.warning(erros.join(\",\"));\r\n return;\r\n }\r\n\r\n this.estimateService\r\n .Insert_EstimateCreateNewSystemCE(\r\n this.estimateid,\r\n 0,\r\n this.modelNewSystem.sort,\r\n this.modelNewSystem.areaname,\r\n this.modelNewSystem.systemname,\r\n this.modelNewSystem.qty,\r\n this.modelNewSystem.systemtype[0] != undefined ? this.modelNewSystem.systemtype[0] : this.modelNewSystem.systemtype,\r\n false, // inactive\r\n false, // deleted\r\n this.modelNewSystem.scopeofwork,\r\n this.modelNewSystem.sop,\r\n this.modelNewSystem.excludefromsearch,\r\n this.modelNewSystem.controldwgname,\r\n this.modelNewSystem.controldwgimg,\r\n this.modelNewSystem.tagtext,\r\n this.modelNewSystem.tagnum,\r\n this.modelNewSystem.description\r\n )\r\n .subscribe((r) => {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgSysCreSucc'));\r\n this.popupEditSystem = false;\r\n this.reload.emit(this.estimateid);\r\n this.NewSystem.emit(r[0].resultID);\r\n });\r\n },\r\n };\r\n\r\n // this.agruparItems(this.areas);\r\n }\r\n\r\n getEstimateArea(id) {\r\n this.deltaService.GetEstimateAreaList(id).subscribe((result) => {\r\n this.areaSelect = result;\r\n });\r\n }\r\n\r\n CancelPopup(){\r\n this.reload.emit(this.estimateid)\r\n this.popupEditAreaSystem = false;\r\n }\r\n\r\n insertArea() {\r\n let cantidadAEnviar = this.rowsToEditArea.length;\r\n let cantidadEnviada = 0;\r\n\r\n this.rowsToEditArea.forEach(item => {\r\n this.MapInformationService.SaveInfoSites({\r\n method: \"Insert_EstimateAreaCE\",\r\n estimateid: this.estimateid,\r\n name: item.name,\r\n id: item.id,\r\n sort: item.sort,\r\n inactive: !item.active,\r\n alternate: item.alternate == true ? 1 : 0,\r\n })\r\n // this.estimateService\r\n // .Insert_EstimateAreaCE(this.estimateid, item.name, item.id, item.sort, item.active)\r\n .subscribe((result) => {\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantidadAEnviar) {\r\n this.resetModelArea();\r\n this.popupEditArea = false;\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgAreSucc'));\r\n this.reload.emit(this.estimateid);\r\n this.getEstimateArea(this.estimateid);\r\n }\r\n });\r\n })\r\n }\r\n\r\n getSystemArea() {\r\n this.deltaService.GetSystemArea(this.estimateid).subscribe(result => {\r\n let areas = result.map(x => {\r\n x.SystemActive = !x.SystemActive;\r\n return x;\r\n });\r\n this.agrupar2(areas)\r\n });\r\n }\r\n\r\n getSystemType() {\r\n\r\n this.deltaService.GetEstimateSystemTypeCE().subscribe((result) => {\r\n this.systemTypeSelectCE = result;\r\n });\r\n }\r\n\r\n getAreaSystemToEdit(obj) {\r\n\r\n if (this.Commissioning == \"Commissioning\") {\r\n\r\n let nodes = this.getChecked();\r\n\r\n if (nodes.length == 1) {\r\n this.getEstimateArea(this.estimateid)\r\n this.getSystemType()\r\n this.popupController = true\r\n return false\r\n }\r\n\r\n if (obj.itemData.id == 1) {\r\n this.rowsToEditArea = [];\r\n let nodes = this.getAreasChecked();\r\n\r\n if (nodes && nodes.length > 0) {\r\n // this.modelArea.name = nodes.areaname;\r\n // this.modelArea.id = nodes.originalid;\r\n // this.modelArea.sort = nodes.sort;\r\n // this.modelArea.active = nodes.areaactive;\r\n nodes.forEach(node => {\r\n let AlternateTrueOrFalse = node.Alternate == 1 ? true : false\r\n this.rowsToEditArea.push({\r\n name: node.areaname,\r\n id: node.originalid,\r\n active: node.areaactive,\r\n sort: node.sort,\r\n alternate: AlternateTrueOrFalse,\r\n })\r\n });\r\n this.popupEditArea = true;\r\n\r\n }\r\n }\r\n else if (obj.itemData.id == 2) {\r\n let nodes = this.getChecked();\r\n\r\n this.estimateService\r\n .GetEstimateAreaSystemInfoCE(nodes.map((x) => x.id).join(\",\"))\r\n .subscribe((result) => {\r\n\r\n this.rowsToEditAreaSystem = result\r\n // .map((x) => {\r\n // x.Active = !x.Active;\r\n // x.MarkLib = !x.MarkLib;\r\n // return x;\r\n // });\r\n\r\n // this.customheight = \"70%\";\r\n setTimeout(() => {\r\n this.popupEditAreaSystem = true;\r\n // this.customheight = \"auto\";\r\n }, 20);\r\n });\r\n }\r\n } else {\r\n if (obj.itemData.id == 1) {\r\n this.rowsToEditArea = [];\r\n let nodes = this.getAreasChecked();\r\n\r\n \r\n if (nodes && nodes.length > 0) {\r\n // this.modelArea.name = nodes.areaname;\r\n // this.modelArea.id = nodes.originalid;\r\n // this.modelArea.sort = nodes.sort;\r\n // this.modelArea.active = nodes.areaactive;\r\n\r\n nodes.forEach(node => {\r\n let AlternateTrueOrFalse = node.Alternate == 1 ? true : false\r\n this.rowsToEditArea.push({\r\n name: node.areaname,\r\n id: node.originalid,\r\n active: node.areaactive,\r\n sort: node.sort,\r\n alternate: AlternateTrueOrFalse,\r\n })\r\n });\r\n this.popupEditArea = true;\r\n\r\n }\r\n }\r\n else if (obj.itemData.id == 2) {\r\n let nodes = this.getChecked();\r\n\r\n this.estimateService\r\n .GetEstimateAreaSystemInfoCE(nodes.map((x) => x.id).join(\",\"))\r\n .subscribe((result) => {\r\n\r\n\r\n this.rowsToEditAreaSystem = result.map((x) => {\r\n x.Active = !x.Active;\r\n x.MarkLib = !x.MarkLib;\r\n return x;\r\n });\r\n\r\n this.rowsToEditAreaSystem.sort(function (a, b) {\r\n if (a.ID > b.ID) {\r\n return 1;\r\n }\r\n if (a.ID < b.ID) {\r\n return -1;\r\n }\r\n // a must be equal to b\r\n return 0;\r\n });\r\n\r\n\r\n\r\n // this.customheight = \"70%\";\r\n setTimeout(() => {\r\n this.popupEditAreaSystem = true;\r\n // this.customheight = \"auto\";\r\n }, 20);\r\n });\r\n }\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n NameSystem:any=\"\"\r\n TagData:any=\"\"\r\n SortData:any=0\r\n QtyData:any = 0\r\n DrawingData:any=\"\"\r\n\r\n\r\n updateAreaSystem() {\r\n let cantidadLlamadas = this.rowsToEditAreaSystem.length;\r\n let cantidadTerminada = 0;\r\n\r\n console.log(this.rowsToEditAreaSystem)\r\n console.log(this.SystemTypeid)\r\n\r\n this.rowsToEditAreaSystem.forEach((item) => {\r\n this.estimateService\r\n .Upadte_EstimateAreaSystemCELoc(\r\n item.ID,\r\n item.ID,\r\n this.SortData != 0 ? this.SortData : item.SORT,\r\n item.AreaName,\r\n this.NameSystem != \"\" ? this.NameSystem : item.SystemName,\r\n this.QtyData != 0 ? this.QtyData : item.QTY,\r\n this.SystemTypeid != undefined ? this.SystemTypeid.length > 0 ? this.SystemTypeid[0] : item.SystemTypeid : item.SystemTypeid,\r\n !item.Active, // Ponemos el caso contrario porqu eel campo se llama inactive en bd y active en el front\r\n false, //deleted\r\n \"\", //scope\r\n item.SOP,\r\n item.MarkLib == true ? 1 : 0, // Ponemos el caso contrario porque el campo es diferente en bd y active en el front\r\n this.DrawingData != \"\" ? this.DrawingData : item.Control_Drawing,\r\n \"\", // img\r\n this.TagData != \"\" ? this.TagData : item.TAGTEXT,\r\n item.TAGNUM,\r\n item.DESCRIPTION,\r\n item.location\r\n )\r\n .subscribe((result) => {\r\n cantidadTerminada++;\r\n\r\n if (cantidadTerminada >= cantidadLlamadas) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgUpdSucc'));\r\n this.popupEditAreaSystem = false;\r\n this.reload.emit(this.estimateid);\r\n this.SystemTypeid = null\r\n\r\n this.NameSystem=\"\"\r\n this.TagData=\"\"\r\n this.SortData=0\r\n this.QtyData = 0\r\n this.DrawingData=\"\"\r\n\r\n }\r\n });\r\n });\r\n }\r\n\r\n \r\n\r\n goToImportFromLibrary() {\r\n\r\n localStorage.removeItem(\"systemidTree\")\r\n // localStorage.removeItem(\"fromLibrary\")\r\n if (this.systemid != undefined){\r\n localStorage.setItem(\"systemidTree\", this.systemid.toString())\r\n }\r\n // localStorage.setItem(\"fromLibrary\", \"Yes\")\r\n\r\n this.router.navigateByUrl(\r\n `/Estimates/import-from-library?estimateid=${this.estimateid}&project=${this.estimatenamestr}&systemid=${this.systemid}`\r\n );\r\n }\r\n\r\n changeActiveSystem(obj) {\r\n\r\n this.rowsToEditAreaSystem = this.rowsToEditAreaSystem.map(x => {\r\n x.Active = obj.value;\r\n\r\n return x;\r\n });\r\n }\r\n\r\n changeMarkLibSystem(obj) {\r\n\r\n this.rowsToEditAreaSystem = this.rowsToEditAreaSystem.map(x => {\r\n x.MarkLib = obj.value;\r\n\r\n return x;\r\n });\r\n }\r\n\r\n resetModelArea() {\r\n this.modelArea = {\r\n name: '',\r\n id: 0,\r\n sort: 0,\r\n active: true\r\n }\r\n }\r\n\r\n onItemClickNewAreaSystem(obj) {\r\n if (obj.itemData.id == 1) {\r\n this.rowsToEditArea = [];\r\n this.popupEditArea = true;\r\n this.rowsToEditArea.push({\r\n name: '',\r\n id: 0,\r\n active: true,\r\n sort: 0,\r\n alternate: true\r\n })\r\n } else if (obj.itemData.id == 2) {\r\n this.getEstimateArea(this.estimateid);\r\n this.deltaService.GetEstimateSystemTypeCE().subscribe((result) => {\r\n this.systemTypeSelectCE = result;\r\n this.popupEditSystem = true;\r\n });\r\n\r\n // this.customheight = \"70%\";\r\n // setTimeout(() => {\r\n // this.customheight = \"auto\";\r\n // }, 20);\r\n }\r\n }\r\n\r\n onItemClickDuplicateAreaSystem(obj) {\r\n\r\n\r\n if (obj.itemData.id == 1) {\r\n // this.popupEditArea = true;\r\n \r\n let data = this.getAreasChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgAnArea'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n\r\n data.forEach(element => {\r\n\r\n this.estimateService.Insert_AreaDuplicate(element.originalid, this.estimateid).subscribe(result => {\r\n // this.estimateService.duplicateImage(element.id,result[0].ID)\r\n // .subscribe(res1=>{\r\n cantidadEnviada++;\r\n\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgArDupSucc'));\r\n this.reload.emit(this.estimateid);\r\n }\r\n\r\n // })\r\n });\r\n\r\n });\r\n } else if (obj.itemData.id == 2) {\r\n\r\n let data = this.getChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n\r\n data.forEach(element => {\r\n\r\n this.estimateService.DuplicateSystemSingle(element.areaid, element.id).subscribe(result => {\r\n this.estimateService.duplicateImage(element.id,result[0].ID)\r\n .subscribe(res1=>{\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgSysDupSucc'));\r\n this.reload.emit(this.estimateid);\r\n }\r\n })\r\n })\r\n });\r\n // this.popupEditSystem = true;\r\n // this.customheight = \"70%\";\r\n // setTimeout(() => {\r\n // this.customheight = \"auto\";\r\n // }, 20);\r\n } else if (obj.itemData.id == 3) {\r\n let data = this.getChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n return;\r\n }\r\n\r\n\r\n if (this.totalReplicate <= 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgRepNum'));\r\n return;\r\n }\r\n\r\n this.popupReplicateSystem = true;\r\n }\r\n }\r\n\r\n onItemClickDeleteOrDuplicateAreaSystem(obj,duplicar:boolean=false) {\r\n\r\n this.isDuplicating = duplicar\r\n\r\n\r\n if (obj.itemData.id == 1) {\r\n // this.popupEditArea = true;\r\n\r\n const data = this.getAreasChecked();\r\n this.componentModel.data = this.getAreasChecked();\r\n\r\n if (this.componentModel.data.length > 0) {\r\n for (let i = 0; i < this.componentModel.data.length; i++) {\r\n this.componentModel.data[i].key = this.componentModel.data[i].originalid\r\n }\r\n }\r\n\r\n data.forEach(x=>{\r\n this.componentModel.ID.push(x.key)\r\n })\r\n \r\n if (this.componentModel.ID.length > 0) {\r\n this.popupDeleteArea = true;\r\n setTimeout(() => {\r\n if (this.treeDelete != undefined) {\r\n this.componentModel.ID.forEach(x=>{\r\n this.treeDelete.instance.selectItem(x)\r\n })\r\n }\r\n }, 2000);\r\n } else {\r\n this.toast.warning(\"You must select an area\")\r\n\r\n }\r\n\r\n\r\n } else if (obj.itemData.id == 2) {\r\n this.componentModel.ID = this.treeViewSystemArea.instance.getSelectedNodeKeys().filter(x=> x >= 1 )\r\n this.componentModel.data = this.treeViewSystemArea.instance.getSelectedNodes().filter(x=> x.key >= 1 )\r\n \r\n if (this.componentModel.ID.length > 0) {\r\n this.popupDeleteSystem = true;\r\n setTimeout(() => {\r\n if (this.treeDelete != undefined) {\r\n this.componentModel.ID.forEach(x=>{\r\n this.treeDelete.instance.selectItem(x)\r\n })\r\n }\r\n }, 2000);\r\n } else {\r\n this.toast.warning(\"You must select a system\")\r\n }\r\n } else if (obj.itemData.id == 3) {\r\n // let data = this.getChecked();\r\n\r\n // const data = this.getAreasChecked();\r\n\r\n this.componentModel.ID = this.treeViewSystemArea.instance.getSelectedNodeKeys().filter(x=> x >= 1 )\r\n this.componentModel.data = this.treeViewSystemArea.instance.getSelectedNodes().filter(x=> x.key >= 1 )\r\n\r\n // data.forEach(x=>{\r\n // this.componentModel.ID.push(x.originalid * -1)\r\n // })\r\n\r\n\r\n if (this.componentModel.ID.length > 0) {\r\n this.popupReplicateSystem = true;\r\n setTimeout(() => {\r\n if (this.treeDelete != undefined) {\r\n this.componentModel.ID.forEach(x=>{\r\n this.treeDelete.instance.selectItem(x)\r\n })\r\n }\r\n }, 1000);\r\n } else {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys')); \r\n }\r\n }\r\n\r\n }\r\n\r\n clearNewSystem() {\r\n this.modelNewSystem = {\r\n id: 0,\r\n systemid: \"\",\r\n sort: \"\",\r\n areaname: \"\",\r\n systemname: \"\",\r\n qty: \"\",\r\n systemtype: \"\",\r\n inactive: false,\r\n deleted: false,\r\n scopeofwork: \"\",\r\n sop: \"\",\r\n excludefromsearch: \"\",\r\n controldwgname: \"\",\r\n controldwgimg: \"\",\r\n tagtext: \"\",\r\n tagnum: \"\",\r\n description: \"\",\r\n };\r\n\r\n this.popupEditSystem = false;\r\n }\r\n\r\n goToFindAndReplace() {\r\n this.router.navigateByUrl(\r\n `/Estimates/find-replace?estimateid=${this.estimateid}&project=${this.estimatenamestr}&VieneDe=Comissioning`\r\n );\r\n }\r\n\r\n changeSystem() {\r\n this.gochangesystem.emit()\r\n }\r\n\r\n onItemClick(e) {\r\n switch (e.itemData.name) {\r\n case \"Add Area\":\r\n this.rowsToEditArea = [];\r\n this.popupEditArea = true;\r\n this.rowsToEditArea.push({\r\n name: '',\r\n id: 0,\r\n active: true,\r\n sort: 0\r\n })\r\n break\r\n case \"Add System\":\r\n this.getEstimateArea(this.estimateid);\r\n this.deltaService.GetEstimateSystemTypeCE().subscribe((result) => {\r\n this.systemTypeSelectCE = result;\r\n this.popupEditSystem = true;\r\n });\r\n break\r\n case \"Import from Library\":\r\n this.goToImportFromLibrary()\r\n break\r\n case \"Delete Area\":\r\n this.popupDeleteArea = true;\r\n break\r\n case \"Delete System\":\r\n this.popupDeleteSystem = true;\r\n break\r\n case \"Clone Area\":\r\n let data = this.getAreasChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgAnArea'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n\r\n data.forEach(element => {\r\n\r\n this.estimateService.Insert_AreaDuplicate(element.originalid, this.estimateid).subscribe(result => {\r\n // this.estimateService.duplicateImage(element.id,result[0].ID)\r\n // .subscribe(res1=>{\r\n cantidadEnviada++;\r\n\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgArDupSucc'));\r\n this.reload.emit(this.estimateid);\r\n }\r\n\r\n // })\r\n });\r\n\r\n });\r\n break\r\n case \"Clone System\":\r\n let data1 = this.getChecked();\r\n\r\n if (data1.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar1 = data1.length;\r\n let cantidadEnviada1 = 0;\r\n\r\n\r\n\r\n data1.forEach(element => {\r\n\r\n this.estimateService.DuplicateSystemSingle(element.areaid, element.id).subscribe(result => {\r\n this.estimateService.duplicateImage(element.id,result[0].ID)\r\n .subscribe(res1=>{\r\n cantidadEnviada1++;\r\n if (cantidadEnviada1 == cantadadAEnviar1) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgSysDupSucc'));\r\n this.reload.emit(this.estimateid);\r\n }\r\n })\r\n })\r\n });\r\n break\r\n case \"Edit Area\":\r\n let nodes1 = this.getChecked();\r\n\r\n if (nodes1.length == 1) {\r\n this.getEstimateArea(this.estimateid)\r\n this.getSystemType()\r\n this.popupController = true\r\n return false\r\n }\r\n\r\n this.rowsToEditArea = [];\r\n nodes1 = this.getAreasChecked();\r\n\r\n\r\n if (nodes1 && nodes1.length > 0) {\r\n // this.modelArea.name = nodes1.areaname;\r\n // this.modelArea.id = nodes1.originalid;\r\n // this.modelArea.sort = nodes1.sort;\r\n // this.modelArea.active = nodes1.areaactive;\r\n\r\n nodes1.forEach(node => {\r\n this.rowsToEditArea.push({\r\n name: node.areaname,\r\n id: node.originalid,\r\n active: node.areaactive,\r\n sort: node.sort\r\n })\r\n });\r\n this.popupEditArea = true;\r\n\r\n }\r\n break\r\n case \"Edit System\":\r\n\r\n let nodes = this.getChecked();\r\n\r\n if (nodes.length == 1) {\r\n this.getEstimateArea(this.estimateid)\r\n this.getSystemType()\r\n this.popupController = true\r\n return false\r\n }\r\n\r\n // let nodes1 = this.getChecked();\r\n\r\n this.getSystemType()\r\n\r\n this.estimateService\r\n .GetEstimateAreaSystemInfoCE(nodes.map((x) => x.id).join(\",\"))\r\n .subscribe((result) => {\r\n\r\n this.rowsToEditAreaSystem = result\r\n // .map((x) => {\r\n // x.Active = !x.Active;\r\n // x.MarkLib = !x.MarkLib;\r\n // return x;\r\n // });\r\n\r\n // this.customheight = \"70%\";\r\n setTimeout(() => {\r\n this.popupEditAreaSystem = true;\r\n // this.customheight = \"auto\";\r\n }, 20);\r\n });\r\n\r\n break\r\n }\r\n }\r\n\r\n onItemClickManage(e){\r\n switch (e.itemData.name) {\r\n case \"Network view\":\r\n\r\n break\r\n case \"Galery View\":\r\n\r\n break\r\n case \"Find and Replace\":\r\n this.goToFindAndReplace()\r\n break\r\n case \"\":\r\n break\r\n case \"\":\r\n break\r\n case \"\":\r\n break\r\n }\r\n }\r\n\r\n selectItem(item) {\r\n // debugger\r\n if (this.systemid != item.itemData.id){ //if agregado en la optimizacion \r\n this.onitemchange.emit(item.itemData);\r\n this.systemid = item.itemData.id > 0 ? item.itemData.id : this.systemid;\r\n // this.treeViewSystemArea.instance.selectItem(item.itemData.id > 0 ? item.itemData.id : this.systemid)\r\n $(\".dx-treeview-item\").removeClass(\"currently-active-item\");\r\n $(item.itemElement).addClass(\"currently-active-item\");\r\n }\r\n }\r\n\r\n onSelectionChange(item) {\r\n if (item.node.selected) {\r\n this.selectItem(item);\r\n }\r\n }\r\n\r\n agrupar() {\r\n const unique = [...new Set(this.areas.map(item => item.AreaName))];\r\n let prueba = unique.map(x => {\r\n let obj = {\r\n id: Math.random(),\r\n originalid: this.areas.find(a => a.AreaName == x).ID,\r\n sort: this.areas.find(a => a.AreaName == x).AreaSort,\r\n areaname: x,\r\n text: this.areas.find(a => a.AreaName == x).AreaSort + '-' + x,\r\n expanded: this.expanded,\r\n items: this.areas.filter(a => a.AreaName == x).map(a => {\r\n return {\r\n id: a.SystemID,\r\n text: a.SystemName,\r\n icon: a.SystemActive ? 'fas fa-folder systamactive' : 'fas fa-folder systeminactive',\r\n issystem: true,\r\n areaid: a.ID,\r\n path: a.ImagePath,\r\n SystemActive:a.SystemActive\r\n }\r\n })\r\n }\r\n\r\n return obj;\r\n });\r\n\r\n\r\n this.groupItems = prueba;\r\n\r\n if (this.groupItems.length > 0) {\r\n this.selectItem({ itemData: this.groupItems[0].items[0] });\r\n }\r\n\r\n setTimeout(() => {\r\n $(\".systamactive\").attr(\"style\", \"color:green !important\");\r\n $(\".systeminactive\").attr(\"style\", \"color:red !important\");\r\n if ($(\".dx-treeview-item\").length > 1) {\r\n $(\".dx-treeview-item\").removeClass(\"currently-active-item\");\r\n $($(\".dx-treeview-item\")[1]).addClass(\"currently-active-item\");\r\n }\r\n }, 1000);\r\n }\r\n\r\n agrupar2(arr) {\r\n var x = arr.reduce(function (map, node) {\r\n let parentid = node.ParetID;\r\n let nodeid = node.ID;\r\n map.i[nodeid] = node;\r\n node.items = [];\r\n if (parentid === null || parentid === 0) {\r\n map.result.push(node);\r\n }\r\n else if (parentid in map.i) {\r\n map.i[parentid].items.push(node);\r\n }\r\n else {\r\n (parentid in map.cache) ?\r\n map.cache[parentid].push(node) :\r\n map.cache[parentid] = [node];\r\n }\r\n if (nodeid in map.cache) {\r\n node.items = node.items.concat(map.cache[nodeid]);\r\n delete map.cache[nodeid];\r\n }\r\n return map;\r\n }, { i: {}, cache: {}, result: [] }).result;\r\n\r\n\r\n let data = x.map(item => {\r\n let obj = {\r\n id: Math.random(),\r\n originalid: (item.ID * -1),\r\n sort: item.Sort,\r\n areaname: item.Name,\r\n areaactive: item.AreaActive,\r\n icon: item.AreaActive ? 'fas fa-folder systamactive' : 'fas fa-folder systeminactive',\r\n text: item.Sort + '-' + item.Name,\r\n expanded: this.expanded,\r\n network: item.HASNETWORK,\r\n Alternate:item.Alternate,\r\n items: item.items.map(a => {\r\n return {\r\n id: a.ID,\r\n text: a.Name,\r\n icon: a.AreaActive ? 'fas fa-folder systamactive' : 'fas fa-folder systeminactive',\r\n issystem: true,\r\n areaid: (a.ParetID * -1),\r\n path: a.ImagePath,\r\n Sort: a.Sort,\r\n SystemActive:a.SystemActive,\r\n network: a.HASNETWORK,\r\n Alternate:a.Alternate\r\n }\r\n })\r\n }\r\n\r\n return obj;\r\n });\r\n\r\n\r\n this.groupItems = data;\r\n\r\n let first = arr.filter(x => x.ID > 0)[0];\r\n\r\n let child = this.groupItems.filter(x => x.items.length > 0)[0];\r\n if (child && child.items.length > 0) {\r\n if(this.systemid != undefined){\r\n child.items.forEach(element => {\r\n if(element.id == this.systemid){\r\n this.selectItem({ itemData: element });\r\n }\r\n });\r\n } else {\r\n this.selectItem({ itemData: child.items[0] });\r\n }\r\n }\r\n\r\n setTimeout(() => {\r\n if (this.FindAndReplace == undefined) {\r\n if (localStorage.getItem(\"systemidTree\") != undefined){\r\n this.treeViewSystemArea.instance.unselectAll()\r\n this.treeViewSystemArea.instance.selectItem(Number(localStorage.getItem(\"systemidTree\")))\r\n this.estiloCarpetas()\r\n localStorage.removeItem(\"systemidTree\")\r\n setTimeout(() => {\r\n this.treeViewSystemArea.instance.unselectAll()\r\n this.SelectASystem(this.systemidParent)\r\n }, 2000);\r\n } else {\r\n // localStorage.removeItem(\"fromLibrary\")\r\n if (this.systemidParent != 0 && this.systemidParent != undefined) {\r\n this.treeViewSystemArea.instance.unselectAll()\r\n this.treeViewSystemArea.instance.selectItem(this.systemidParent)\r\n // this.estiloCarpetas()\r\n \r\n setTimeout(() => {\r\n this.treeViewSystemArea.instance.unselectAll()\r\n this.SelectASystem(this.systemidParent)\r\n }, 2000);\r\n }\r\n }\r\n }\r\n $(\".systamactive\").attr(\"style\", \"color:green !important\");\r\n $(\".systeminactive\").attr(\"style\", \"color:red !important\");\r\n }, 2000);\r\n\r\n }\r\n\r\n onItemExpanded(ev?:any) {\r\n setTimeout(() => {\r\n $(\".systamactive\").attr(\"style\", \"color:green !important\")\r\n $(\".systeminactive\").attr(\"style\", \"color:red !important\")\r\n }, 500);\r\n }\r\n\r\n getChecked() {\r\n let nodes = this.treeViewSystemArea.instance.getSelectedNodes();\r\n let data = nodes.map(x => x.itemData).filter(f => f.issystem)\r\n\r\n return data;\r\n }\r\n\r\n getAreasChecked() {\r\n let nodes = this.treeViewSystemArea.instance.getSelectedNodes();\r\n let data = nodes.map(x => x.itemData).filter(f => !f.issystem)\r\n return data\r\n }\r\n\r\n\r\n closeParents(){\r\n this.treeViewSystemArea.instance.collapseAll()\r\n this.OpenOrClose = false\r\n this.userService.Get_UserSettingsCE(localStorage.getItem(\"customerid\")).subscribe(result => {\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n\r\n obj.openTreeEstimate = false\r\n let data = {\r\n usersettings : JSON.stringify(obj)\r\n }\r\n this.userService.saveUserSettingCoor(data).subscribe(result => {\r\n this.estiloCarpetas()\r\n })\r\n })\r\n }\r\n\r\n estiloCarpetas(){\r\n $(\".systamactive\").attr(\"style\", \"color:green !important\");\r\n $(\".systeminactive\").attr(\"style\", \"color:red !important\");\r\n if ($(\".dx-treeview-item\").length > 1) {\r\n $(\".dx-treeview-item\").removeClass(\"currently-active-item\");\r\n $($(\".dx-treeview-item\")[1]).addClass(\"currently-active-item\");\r\n }\r\n }\r\n// \"{\"dateFormat\":\"MM/dd/yyyy\",\"moneyFormat\":\"$\",\"startPage\":\"/projects\",\"estimateidDefault\":1717,\"method\":\"update_UserSettingsCoor\",\"DefaultSystemType\":\"9\",\"map\":\"Santo Domingo de los Tsachilas, Ecuador\"}\"\r\n \r\n OpenParents(){\r\n this.treeViewSystemArea.instance.expandAll()\r\n this.OpenOrClose = true\r\n\r\n this.userService.Get_UserSettingsCE(localStorage.getItem(\"customerid\")).subscribe(result => {\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n\r\n obj.openTreeEstimate = true\r\n let data = {\r\n usersettings : JSON.stringify(obj)\r\n }\r\n this.userService.saveUserSettingCoor(data).subscribe(result => {\r\n\r\n this.estiloCarpetas()\r\n\r\n })\r\n\r\n })\r\n\r\n this.onItemExpanded()\r\n setTimeout(() => {\r\n $(\".systamactive\").attr(\"style\", \"color:green !important\");\r\n $(\".systeminactive\").attr(\"style\", \"color:red !important\");\r\n if ($(\".dx-treeview-item\").length > 1) {\r\n $(\".dx-treeview-item\").removeClass(\"currently-active-item\");\r\n $($(\".dx-treeview-item\")[1]).addClass(\"currently-active-item\");\r\n }\r\n }, 1000);\r\n\r\n }\r\n\r\n SystemTypeid:any[]=[]\r\n SelectASystem(id){\r\n this.treeViewSystemArea.instance.selectItem(id)\r\n\r\n this.estiloCarpetas()\r\n \r\n this.treeViewSystemArea.instance.expandItem(id)\r\n\r\n }\r\n\r\n \r\n\r\n treeView_itemSelectionChanged(e) {\r\n // this.modelSystemInformation.systemtype = e.itemData.SystemType\r\n // this.modelSystemInformation.SystemTypeid = e.itemData.ID\r\n this.treeBoxValue = e.component.getSelectedNodeKeys();\r\n\r\n this.SystemTypeid = this.treeBoxValue\r\n }\r\n\r\n showImagesEstimate(){\r\n localStorage.removeItem(\"systemidTree\")\r\n if (this.systemid != undefined){\r\n localStorage.setItem(\"systemidTree\", this.systemid.toString())\r\n }\r\n this.changeviewImages.emit(this.groupItems)\r\n }\r\n\r\n syncTreeViewSelection2(e) {\r\n var component =\r\n (e && e.component) || (this.treeView2 && this.treeView2.instance);\r\n\r\n if (!component) return;\r\n\r\n if (!this.treeBoxValue2) {\r\n component.unselectAll();\r\n }\r\n\r\n if (this.treeBoxValue2) {\r\n this.treeBoxValue2.forEach(\r\n function (value) {\r\n component.selectItem(value);\r\n }.bind(this)\r\n );\r\n }\r\n\r\n if (this.componentModel.ID.length > 0) {\r\n setTimeout(() => {\r\n if (this.treeDelete != undefined) {\r\n this.componentModel.ID.forEach( x =>{\r\n if (this.popupDeleteArea){\r\n this.treeDelete.instance.selectItem(x.originalid * -1)\r\n } else {\r\n this.treeDelete.instance.selectItem(x)\r\n }\r\n })\r\n }\r\n }, 1000);\r\n }\r\n }\r\n\r\n treeView_itemSelectionChanged2(e) {\r\n // && this.notAllowed == false\r\n if(e.itemElement != undefined){\r\n this.componentModel.ID = e.component.getSelectedNodeKeys()\r\n this.treeBoxValue2 = e.component.getSelectedNodeKeys();\r\n } else {\r\n // this.notAllowed = false\r\n }\r\n\r\n // && this.notAllowed == false && this.FirtsTime \r\n if (e.itemElement != undefined){\r\n // this.componentModel.tagid = e.itemData.ID\r\n this.componentModel.ID = e.component.getSelectedNodeKeys();\r\n this.treeBoxValue2 = e.component.getSelectedNodeKeys();\r\n // this.FirtsTime = false\r\n }\r\n\r\n \r\n }\r\n\r\n cancelDelete(){\r\n this.popupDeleteSystem = false;\r\n this.popupDeleteArea = false;\r\n this.componentModel.ID = []\r\n if (this.treeDelete != undefined){\r\n this.treeDelete.instance.unselectAll()\r\n }\r\n }\r\n\r\n DeleteSystemsOrArea(){\r\n if (this.popupDeleteSystem) {\r\n let data = this.getChecked();\r\n\r\n // if (data.length == 0) {\r\n // this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n // return;\r\n // }\r\n\r\n let cantadadAEnviar = this.componentModel.ID.length;\r\n let cantidadEnviada = 0;\r\n this.componentModel.ID.forEach(element => {\r\n this.estimateService.DeleteSystem(element).subscribe(result => {\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgDelSys'));\r\n this.popupDeleteSystem = false;\r\n this.getEstimateArea(this.estimateid);\r\n this.cancelDelete()\r\n if(this.groupItems != undefined){\r\n if (this.groupItems.length > 0){\r\n if (this.groupItems[0].items.length > 0 ){\r\n if (this.groupItems[0].items.length == 1){\r\n this.deletedSystemOrArea.emit();\r\n return false\r\n }\r\n let contador = 0\r\n this.groupItems[0].items.forEach((x) => {\r\n if (contador == 0 && x.id != element){\r\n this.treeViewSystemArea.instance.selectItem(x.id)\r\n this.reload.emit(this.estimateid);\r\n contador++\r\n return false;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n }\r\n })\r\n });\r\n }\r\n\r\n if (this.popupDeleteArea) {\r\n let data = this.getAreasChecked();\r\n\r\n // if (data.length == 0) {\r\n // this.toast.warning(this.translate.instant('ModuleSystemToArea.msgAnArea'));\r\n // return;\r\n // }\r\n\r\n let cantadadAEnviar = this.componentModel.ID.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n this.componentModel.ID.forEach(element => {\r\n\r\n this.estimateService.DeleteArea(element).subscribe(result => {\r\n cantidadEnviada++;\r\n\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgAreDelSucc'));\r\n // this.reload.emit(this.estimateid);\r\n // this.getEstimateArea(this.estimateid);\r\n this.popupDeleteArea = false;\r\n this.getEstimateArea(this.estimateid);\r\n this.cancelDelete()\r\n if(this.groupItems != undefined){\r\n if (this.groupItems.length > 0){\r\n if (this.groupItems.length == 1){\r\n this.deletedSystemOrArea.emit();\r\n return false\r\n }\r\n\r\n let contador = 0\r\n this.groupItems.forEach((x) => {\r\n if (contador == 0 && x.originalid != element){\r\n this.treeViewSystemArea.instance.selectItem(x.items[0].id)\r\n this.reload.emit(this.estimateid);\r\n contador++\r\n return 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 DuplicateSystemsOrArea() {\r\n\r\n \r\n if (this.popupDeleteArea) {\r\n // this.popupEditArea = true;\r\n \r\n let data = this.getAreasChecked();\r\n\r\n // if (data.length == 0) {\r\n // this.toast.warning(this.translate.instant('ModuleSystemToArea.msgAnArea'));\r\n // return;\r\n // }\r\n\r\n let cantadadAEnviar = this.componentModel.ID.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n this.componentModel.ID.forEach(element => {\r\n\r\n\r\n this.estimateService.Insert_AreaDuplicate(element, this.estimateid).subscribe(result => {\r\n // this.estimateService.duplicateImage(element.id,result[0].ID)\r\n // .subscribe(res1=>{\r\n cantidadEnviada++;\r\n\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgArDupSucc'));\r\n this.reload.emit(this.estimateid);\r\n this.popupDeleteSystem = false;\r\n this.cancelDelete()\r\n }\r\n\r\n // })\r\n });\r\n\r\n });\r\n } else if (this.popupDeleteSystem) {\r\n\r\n let data = []\r\n if (this.treeDelete != undefined) {\r\n let nodes = this.treeDelete.instance.getSelectedNodes();\r\n data = nodes.map(x => x.itemData).filter(f => f.ParetID != undefined)\r\n } else {\r\n data = this.getChecked();\r\n }\r\n \r\n\r\n\r\n // if (data.length == 0) {\r\n // this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n // return;\r\n // }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n data.forEach(element => {\r\n\r\n this.estimateService.DuplicateSystemSingle(element.areaid != undefined ? element.areaid : element.ParetID * -1, element.id != undefined ? element.id : element.ID).subscribe(result => { //debes buscar el area id\r\n this.estimateService.duplicateImage(element.id,result[0].ID)\r\n .subscribe(res1=>{\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgSysDupSucc'));\r\n this.reload.emit(this.estimateid);\r\n this.popupDeleteArea = false;\r\n this.cancelDelete()\r\n }\r\n })\r\n })\r\n });\r\n } else if (this.popupReplicateSystem) {\r\n // let data = this.getChecked();\r\n\r\n // if (data.length == 0) {\r\n // this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n // return;\r\n // }\r\n\r\n\r\n if (this.totalReplicate <= 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgRepNum'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = this.componentModel.ID.length;\r\n let cantidadEnviada = 0;\r\n\r\n this.componentModel.ID.forEach(element => {\r\n\r\n\r\n this.estimateService.ReplicateeEstimateSystems(element, this.totalReplicate).subscribe(result => {\r\n // this.estimateService.duplicateImage(element.id,result[0].ID)\r\n // .subscribe(res1=>{\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgRepSucc'));\r\n this.reload.emit(this.estimateid);\r\n this.totalReplicate = 0;\r\n this.popupReplicateSystem = false;\r\n }\r\n })\r\n // })\r\n });\r\n }\r\n\r\n }\r\n\r\n closeReplicar(){\r\n this.totalReplicate = 1\r\n this.popupReplicateSystem = false;\r\n this.cancelDelete()\r\n }\r\n\r\n dataDifferenceLabor:any[]=[]\r\n\r\n OpenDiference(){\r\n let keys = this.treeViewSystemArea.instance.getSelectedNodeKeys()\r\n let idsFinal = []\r\n keys.forEach(x=>{\r\n if (1 < x){\r\n idsFinal.push(x)\r\n }\r\n })\r\n console.log(idsFinal.join(\",\"))\r\n this.MapInformationService.SaveInfoSites({method:\"GetEstimateAreaSystemSugestedLaborMultSystems\", systemid:idsFinal.join(\",\")}) //29779\r\n .subscribe(resp=>{\r\n this.dataDifferenceLabor = resp\r\n })\r\n }\r\n\r\n prepareRowPartLabor(info) {\r\n if (info.rowType === \"data\") {\r\n if (info.data.Est_Dif == 0) {\r\n info.rowElement.className = info.rowElement.className + ' checkbox-none'\r\n }\r\n }\r\n }\r\n\r\n NewLabor(data){\r\n this.MapInformationService.SaveInfoSites({method:\"CreateSystemDetailFromDetailID\", detailid:data.DetailID, laborid:data.LaborID, qty:data.TotalNewQty, systemid:data.SystemID})\r\n .subscribe(resp=>{\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n // this.showModalDiferencia = false\r\n this.OpenDiference()\r\n // this.reload.emit(this.estimateid);\r\n })\r\n }\r\n \r\n UpdateLabor(data){\r\n this.MapInformationService.SaveInfoSites({method:\"CreateSystemDetailFromDetailID\", detailid:data.DetailID, laborid:data.LaborID, qty:data.TotalNewQty, systemid:data.SystemID})\r\n .subscribe(resp=>{\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n // this.showModalDiferencia = false\r\n this.OpenDiference()\r\n // this.reload.emit(this.estimateid);\r\n })\r\n }\r\n\r\n UpdateSelected(){\r\n const data = this.gridLabor.instance.getSelectedRowsData()\r\n if (data.length > 0) {\r\n let contador = 0\r\n data.forEach(info=>{\r\n if (info.Est_Dif != 0) {\r\n this.MapInformationService.SaveInfoSites({method:\"CreateSystemDetailFromDetailID\", detailid:info.DetailID, laborid:info.LaborID, qty:info.TotalNewQty, systemid:info.SystemID})\r\n .subscribe(resp=>{\r\n contador++\r\n if (contador == data.length){\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n this.OpenDiference()\r\n // this.reload.emit(this.estimateid);\r\n this.gridLabor.instance.deselectAll()\r\n }\r\n })\r\n } else {\r\n contador++\r\n if (contador == data.length){\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n this.OpenDiference()\r\n // this.reload.emit(this.estimateid);\r\n this.gridLabor.instance.deselectAll()\r\n }\r\n }\r\n })\r\n } else {\r\n this.toast.warning(this.translate.instant('ModuleEditEstimate.msgLeasReg'));\r\n }\r\n }\r\n \r\n UpdateAll(){\r\n if (this.dataDifferenceLabor.length > 0){\r\n let contador = 0\r\n this.dataDifferenceLabor.forEach(info=>{\r\n if (info.Est_Dif != 0) {\r\n this.MapInformationService.SaveInfoSites({method:\"CreateSystemDetailFromDetailID\", detailid:info.DetailID, laborid:info.LaborID, qty:info.TotalNewQty, systemid:info.SystemID})\r\n .subscribe(resp=>{\r\n contador++\r\n if (contador == this.dataDifferenceLabor.length){\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n this.OpenDiference()\r\n // this.reload.emit(this.estimateid);\r\n this.gridLabor.instance.deselectAll()\r\n }\r\n })\r\n } else {\r\n contador++\r\n if (contador == this.dataDifferenceLabor.length){\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n this.OpenDiference()\r\n // this.reload.emit(this.estimateid);\r\n this.gridLabor.instance.deselectAll()\r\n }\r\n }\r\n })\r\n } else {\r\n this.toast.warning(this.translate.instant('ModuleEditEstimate.msgRegUpdate'));\r\n }\r\n }\r\n\r\n goToTutorial(id){\r\n\r\n // let info = {\r\n // method: 'Get_Training_Videos'\r\n // }\r\n\r\n // this.MapInformationService.MethodCallApiFlex(info).subscribe(resp => {\r\n // console.log(resp)\r\n // })\r\n\r\n // let id = \"CREATE-AND-VIEW-ESTIMATE\"\r\n\r\n let url = window.location.href.split(\"#\");\r\n let finalUrl = url[0] + `#/videoTutorial?numVideo=${id}`; \r\n console.log(finalUrl)\r\n window.open(finalUrl, \"_blank\");\r\n\r\n }\r\n\r\n\r\n dataFormatted = { headers: [], data: [] };\r\n onFileRemove2() {\r\n this.dataFormatted = {\r\n headers: [],\r\n data: []\r\n }\r\n }\r\n\r\n onFileAdd2(obj: File) {\r\n\r\n /* wire up file reader */\r\n const reader: FileReader = new FileReader();\r\n reader.onload = (e: any) => {\r\n /* read workbook */\r\n const bstr: string = e.target.result;\r\n const wb: XLSX.WorkBook = XLSX.read(bstr, { type: 'binary' });\r\n\r\n /* grab first sheet */\r\n const wsname: string = wb.SheetNames[0];\r\n const ws: XLSX.WorkSheet = wb.Sheets[wsname];\r\n\r\n /* save data */\r\n let data = (XLSX.utils.sheet_to_json(ws, { header: 1 }));\r\n data = data.filter(x => x.length > 0);\r\n // this.rowsToEditAreaSystem = data;\r\n this.dataFormatted.headers = data[0];\r\n\r\n this.dataFormatted.data = this.arrayToJSONObject2(data);\r\n const dataInfo = this.arrayToJSONObject2(data);\r\n\r\n console.log(dataInfo)\r\n this.rowsToEditAreaSystem = dataInfo.map(x=>{\r\n const info = {\r\n ID: x[\"ID\"],\r\n SystemName: x[\"System Name\"],\r\n TAGTEXT: x[\"Tag\"],\r\n SORT: x[\"Sort\"],\r\n SystemType: x[\"System Type\"],\r\n SystemTypeid: x[\"System Type ID\"],\r\n location: x[\"location\"],\r\n QTY: x[\"Qty\"],\r\n Control_Drawing: x[\"Control Drawing\"],\r\n Active: x[\"Active\"] == true || x[\"Active\"] == 'Yes' || x[\"Active\"] == 1 ? true : false,\r\n MarkLib: x[\"Library\"] == true || x[\"Library\"] == 'Yes' || x[\"Library\"] == 1 ? true : false,\r\n }\r\n return info\r\n }) \r\n\r\n console.log(this.rowsToEditAreaSystem)\r\n };\r\n reader.readAsBinaryString(obj);\r\n }\r\n\r\n\r\n arrayToJSONObject2(arr) {\r\n // header\r\n const keys = arr[0];\r\n\r\n // vacate keys from main array\r\n const newArr = arr.slice(1, arr.length);\r\n\r\n const formatted = [];\r\n const data = newArr;\r\n const cols = keys;\r\n const l = cols.length;\r\n for (let i = 0; i < data.length; i++) {\r\n const d = data[i];\r\n const o = {};\r\n for (let j = 0; j < l; j++) {\r\n o[cols[j]] = d[j];\r\n }\r\n formatted.push(o);\r\n }\r\n return formatted;\r\n }\r\n\r\n\r\n\r\n customizeExcelCell(options) {\r\n var gridCell = options.gridCell;\r\n if(!gridCell) {\r\n return;\r\n }\r\n\r\n if(gridCell.rowType === 'data') {\r\n if(gridCell.column.dataField === 'Active') {\r\n let item\r\n if (options.value == \"true\"){\r\n options.value = \"Yes\"\r\n } else {\r\n options.value = \"No\"\r\n }\r\n }\r\n if(gridCell.column.dataField === 'MarkLib') {\r\n let item\r\n if (options.value == \"true\"){\r\n options.value = \"Yes\"\r\n } else {\r\n options.value = \"No\"\r\n }\r\n }\r\n\r\n if(gridCell.column.dataField === \"SystemName\") {\r\n \r\n gridCell.column.caption = \"SystemName\"\r\n }\r\n // if(gridCell.column.dataField === 'PointlabeledId') {\r\n // let item\r\n // if (options.value == \"true\"){\r\n // options.value = \"Yes\"\r\n // } else {\r\n // options.value = \"No\"\r\n // }\r\n // }\r\n }\r\n }\r\n\r\n\r\n syncTreeViewSelection(e) {\r\n var component =\r\n (e && e.component) || (this.treeView && this.treeView.instance);\r\n\r\n if (!component) return;\r\n\r\n if (!this.treeBoxValue) {\r\n component.unselectAll();\r\n }\r\n\r\n if (this.treeBoxValue) {\r\n this.treeBoxValue.forEach(\r\n function (value) {\r\n component.selectItem(value);\r\n }.bind(this)\r\n );\r\n }\r\n }\r\n \r\n ChangeActive(event){\r\n this.rowsToEditAreaSystem.forEach(x=>{\r\n x.Active = event.value\r\n })\r\n }\r\n\r\n ChangeMarkLib(event){\r\n this.rowsToEditAreaSystem.forEach(x=>{\r\n x.MarkLib = event.value\r\n })\r\n }\r\n\r\n}\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { EditSystemMultipleComponent } from './EditSystemMultiple.component';\r\nimport { DxDropDownBoxModule,DxButtonModule, DxCheckBoxModule, DxDropDownButtonModule, DxNumberBoxModule, DxPopupModule, DxScrollViewModule, DxSelectBoxModule, DxSwitchModule, DxTextAreaModule, DxTextBoxModule, DxTreeViewModule, DxTagBoxModule, DxDataGridModule } from 'devextreme-angular';\r\nimport { MdbGlobalModule } from '../mdb-global.module';\r\nimport { SystemControllerModule } from 'src/app/pages/estimation/system-controller/system-controller.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [EditSystemMultipleComponent],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxTreeViewModule,\r\n DxButtonModule,\r\n DxDropDownButtonModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxCheckBoxModule,\r\n DxTextBoxModule,\r\n DxNumberBoxModule,\r\n DxTextAreaModule,\r\n DxSelectBoxModule,\r\n DxSwitchModule,\r\n DxDropDownBoxModule,\r\n SystemControllerModule,\r\n DxTagBoxModule,\r\n DxDataGridModule\r\n ],\r\n exports: [EditSystemMultipleComponent]\r\n})\r\nexport class EditSystemMultipleModule { }\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\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { Routes, RouterModule, Router } from '@angular/router';\r\n\r\n@Injectable()\r\nexport class ErrorInterceptor implements HttpInterceptor {\r\n constructor(private toast: ToastService, private router: Router) {\r\n }\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.authenticationService.logout();\r\n // location.reload(true);\r\n this.router.navigateByUrl('/login');\r\n } else {\r\n // this.toast.error('An unknown error has occurred: ' + err.status);\r\n }\r\n // const error = err.error.message || err.statusText;\r\n return throwError(err);\r\n }));\r\n\r\n }\r\n}\r\n","import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { tap, finalize } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\nimport { environment } from 'src/environments/environment';\r\nimport { LoadingService } from '../services/loading.service';\r\n\r\n\r\n@Injectable()\r\nexport class LoadingInterceptor implements HttpInterceptor {\r\n private totalRequests = 0;\r\n\r\n constructor(private loaderService: LoadingService) {}\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n this.totalRequests++;\r\n this.loaderService.isLoading.next(true);\r\n\r\n return next.handle(req).pipe(\r\n finalize(() => {\r\n this.totalRequests--;\r\n\r\n if (this.totalRequests === 0) {\r\n this.loaderService.isLoading.next(false);\r\n\r\n }\r\n })\r\n );\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9jcmVhdGUtdXBkYXRlLXRhc2svY3JlYXRlLXVwZGF0ZS10YXNrLmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, EventEmitter, Input, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { CompanySettingsService } from 'src/app/services/company-settings.service';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { TaskService } from 'src/app/services/task.service';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { DatePipe, Location } from '@angular/common';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { MapInformationService } from \"src/app/services/map-information.service\";\r\n\r\n@Component({\r\n selector: 'app-create-update-task',\r\n templateUrl: './create-update-task.component.html',\r\n styleUrls: ['./create-update-task.component.scss']\r\n})\r\nexport class CreateUpdateTaskComponent implements OnInit {\r\n\r\n _formNewTask: FormGroup = new FormGroup({\r\n taskid: new FormControl({ value: 0, disabled: false }, []),\r\n name: new FormControl({ value: '', disabled: false }, []),\r\n projectid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n employeeid: new FormControl({ value: '', disabled: false }, []), // !!\r\n taskresources : new FormControl({ value: [], disabled: false }, []),\r\n statusid: new FormControl({ value: 0, disabled: false }, []),\r\n todocategoryid: new FormControl({ value: 0, disabled: false }, []),\r\n priorityid: new FormControl({ value: 0, disabled: false }, []),\r\n area: new FormControl({ value: '', disabled: false }, []),\r\n phaseid: new FormControl({ value: 0, disabled: false }, []),\r\n estimatedcost: new FormControl({ value: 0, disabled: false }, []),\r\n startdate: new FormControl({ value: new Date(), disabled: false }, []),\r\n estimatedtime: new FormControl({ value: 0, disabled: false }, [Validators.pattern('[0-500][0-9]:[0-9][0-9]')]),\r\n duedate: new FormControl({ value: new Date(), disabled: false }, []),\r\n completionperc: new FormControl({ value: 0, disabled: false }, []),\r\n endofmonthproj: new FormControl({ value: 0, disabled: false }, []),\r\n completiondate: new FormControl({ value: '', disabled: false }, []),\r\n notes: new FormControl({ value: '', disabled: false }, []),\r\n sort: new FormControl({ value: 0, disabled: false }, []),\r\n locationid: new FormControl({ value: 0, disabled: false }, []),\r\n vendorid: new FormControl({ value: 0, disabled: false }, []),\r\n summarytaskid: new FormControl({ value: 0, disabled: false }, []),\r\n user: new FormControl({ value: '', disabled: false }, []),\r\n projectaddress: new FormControl({ value: '', disabled: false }, []),\r\n projectname: new FormControl({ value: '', disabled: false }, []),\r\n createon: new FormControl({ value: new Date(), disabled: false }, []),\r\n resources : new FormControl('', []),\r\n milestonename : new FormControl(false, []),\r\n });\r\n\r\n searchModeOption: string = \"contains\";\r\n searchExprOptionItems: Array = [{\r\n name: \"'Name'\",\r\n value: \"Name\"\r\n }, {\r\n name: \"['Name']\",\r\n value: ['Name']\r\n }]\r\n searchTimeoutOption: number = 200;\r\n minSearchLengthOption: number = 0;\r\n\r\n milestone: boolean = false;\r\n categorySelect: any = [];\r\n statusSelect: any = [];\r\n prioritySelect: any = [];\r\n employeeSelect: any = [];\r\n phasesSelect: any = [];\r\n locationSelect: any = [];\r\n projectslist: CustomStore;\r\n @Input() popupTask = false;\r\n\r\n now = new Date();\r\n //\r\n dateValue: number;\r\n todayButton: any;\r\n prevDateButton: any;\r\n nextDateButton: any;\r\n millisecondsInDay = 24 * 60 * 60 * 1000;\r\n today = new Date().getTime();\r\n resources: any;\r\n\r\n //Inputs Fecha\r\n startDate = { todayButton: {}, prevDateButton: {}, nextDateButton: {}, showDate: null };\r\n dueDate = { todayButton: {}, prevDateButton: {}, nextDateButton: {}, showDate: this.today };\r\n completionDate = { todayButton: {}, prevDateButton: {}, nextDateButton: {}, showDate: null };\r\n\r\n @Input() hideButtons = false;\r\n // @Input() project = {\r\n // projectid: 0,\r\n // projectname: '',\r\n // projectnumber: ''\r\n // };\r\n private _project: any;\r\n @Input('project')\r\n set project(project: any) {\r\n this._project = project;\r\n if (project && project.projectid > 0) {\r\n this.isprojectview = true;\r\n this.setProjectInfo(project);\r\n }\r\n }\r\n\r\n get project(): any { return this._project; }\r\n\r\n @Output() onsubmit = new EventEmitter();\r\n @Output() onresources = new EventEmitter();\r\n @Output() closemodal = new EventEmitter();\r\n @Output() ocultarSave = new EventEmitter();\r\n @Input() fromQuickAccess: any;\r\n\r\n isprojectview = false;\r\n\r\n private _task: any;\r\n summarytaskSelect: any = [];\r\n subcontractors = [];\r\n\r\n taskid: any;\r\n\r\n @Input('task')\r\n set task(task: any) {\r\n this._task = task;\r\n if (task.ID > 0) {\r\n this.taskid = task.ID;\r\n console.log('ESTOY EN TASK ', task)\r\n task.notes = task.notes.replace(/
/g,'\\n');\r\n this.taskService.GetTaskEmployees().subscribe(result => {\r\n this.employeeSelect = result;\r\n this.setForm(task);\r\n this.checkMilestone();\r\n });\r\n }\r\n }\r\n lastLocation: any;\r\n dateFormat: any;\r\n moneyFormat: any;\r\n disableInputs = false;\r\n get task(): any { return this._task; }\r\n\r\n primeraVez: boolean = false;\r\n\r\n disableDate: boolean = true;\r\n\r\n defaultPhase: any = 0;\r\n\r\n editLinkButton: any;\r\n externalLink: any;\r\n\r\n defaultPhaseid: any = 0;\r\n defaultPriorityid: any = 0;\r\n defaultCategoryid: any = 0;\r\n defaultLocationid: any = 0;\r\n defaultStatusid: any = 0;\r\n\r\n primeravez: boolean = false;\r\n\r\n defaultValues = [];\r\n employeesWithAlert: any;\r\n\r\n openModalAlert: boolean = false;\r\n\r\n defaultDuration: any = 0;\r\n defaultStartDate: any;\r\n\r\n @Input() blockMilestone = false;\r\n disableMilestone: boolean = false;\r\n\r\n timeSheet: any = [];\r\n\r\n disableInputMilestone: boolean = false;\r\n\r\n editando: boolean = true;\r\n\r\n\r\n items: any = [\r\n\r\n \"undo\", \"redo\", \"separator\",\r\n\r\n {\r\n name: \"size\",\r\n acceptedValues: [\"8pt\", \"10pt\", \"12pt\", \"14pt\", \"18pt\", \"24pt\", \"36pt\"]\r\n },\r\n {\r\n name: \"font\",\r\n acceptedValues: [\"Arial\", \"Courier New\", \"Georgia\", \"Impact\", \"Lucida Console\", \"Tahoma\", \"Times New Roman\", \"Verdana\"]\r\n },\r\n\r\n \"separator\", \"bold\", \"italic\", \"strike\", \"underline\", \"separator\",\r\n \"alignLeft\", \"alignCenter\", \"alignRight\", \"alignJustify\", \"increaseIndent\",\r\n \"decreaseIndent\", \"separator\",\r\n \"orderedList\", \"bulletList\", \"separator\",\r\n\r\n {\r\n name: \"header\",\r\n acceptedValues: [false, 1, 2, 3, 4, 5]\r\n },\r\n\r\n \"color\", \"background\", \"link\", \"clear\", \"codeBlock\", \"blockquote\", \"separator\", \"insertTable\", \"deleteTable\",\r\n \"insertRowAbove\", \"insertRowBelow\", \"deleteRow\", \"insertColumnLeft\", \"insertColumnRight\",\r\n \"deleteColumn\", \"cellProperties\", \"tableProperties\",\r\n ];\r\n\r\n constructor(\r\n private router: Router,\r\n public location:Location,\r\n private datepipe: DatePipe,\r\n private toast: ToastService,\r\n private taskService: TaskService,\r\n private appconfig: AppConfigService,\r\n private activatedRoute: ActivatedRoute,\r\n private generalService: GeneralService,\r\n public settingsCompany: CompanySettingsService,\r\n private MapInformationService:MapInformationService,\r\n private translate:TranslateService\r\n ) {\r\n\r\n // console.log('Constructor')\r\n this.taskService.GetTaskEmployees().subscribe(result => {\r\n this.employeeSelect = result\r\n });\r\n\r\n this.inputsDate(this.startDate, null);\r\n this.inputsDate(this.dueDate, null);\r\n this.inputsDate(this.completionDate, null);\r\n this.dateFormat = this.appconfig.dateFormat + ' HH:mm';\r\n this.moneyFormat = this.appconfig.moneyFormat;\r\n\r\n this.editLinkButton = {\r\n icon: 'fa fa-link',\r\n type: 'default',\r\n onClick: () => {\r\n this.externalLink = this.externalLink.trim();\r\n if(this.externalLink!=='' && this.externalLink!==undefined){\r\n window.open(this.externalLink, \"_blank\");\r\n }\r\n },\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n\r\n if(changes.project!==undefined && changes.project.previousValue!==undefined){\r\n this._project= changes.project.currentValue;\r\n // this.ngOnInit();\r\n }\r\n\r\n if(changes.blockMilestone!== undefined && changes.blockMilestone.currentValue !== undefined){\r\n this.checkMilestone();\r\n console.log(changes.blockMilestone)\r\n this.disableInputMilestone = changes.blockMilestone.currentValue;\r\n if(changes.blockMilestone.currentValue == true){\r\n this._formNewTask.get('milestonename').setValue(false);\r\n this.updateTask();\r\n }\r\n }\r\n }\r\n\r\n inputsDate(date, showdate) {\r\n if(showdate!==null){\r\n let year = this.datepipe.transform(showdate, 'yyyy');\r\n date.showDate = parseInt(year)<1990 ? new Date().getTime() : new Date(showdate).getTime() ;\r\n }else{ date.showDate = showdate; }\r\n\r\n date.todayButton = {\r\n text: this.translate.instant('btnToday'),\r\n onClick: () => {\r\n date.showDate = new Date().getTime();\r\n }\r\n };\r\n\r\n date.prevDateButton = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n date.showDate = date.showDate == null? this.today-this.millisecondsInDay : date.showDate -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n date.nextDateButton = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n date.showDate = date.showDate == null? this.today+this.millisecondsInDay : date.showDate += this.millisecondsInDay;\r\n }\r\n };\r\n }\r\n\r\n limpiarmodalTask() {\r\n this.popupTask = false;\r\n this.closemodal.emit();\r\n this.initForm();\r\n // this.setDefaultSettings();\r\n this._formNewTask.get('projectaddress').setValue(this.project.ADDRESS)\r\n this._formNewTask.get('projectname').setValue(this.project.NAME);\r\n }\r\n\r\n limpiarModalCompletas(){\r\n // console.log('Limpiar MOdal desde Quick Access')\r\n this.popupTask = false;\r\n this.closemodal.emit();\r\n this.initForm();\r\n this.project = null;\r\n }\r\n\r\n ngOnInit() {\r\n // console.log('Ngonit ');\r\n this.primeraVez = true;\r\n this.activatedRoute.queryParams.subscribe(params => {\r\n this.lastLocation = params['tab'];\r\n })\r\n\r\n if(this.categorySelect.length==0){\r\n this.taskService.GetTaskCategoriesFlex().subscribe(result => { this.categorySelect = result; });\r\n }\r\n\r\n if(this.statusSelect.length==0){\r\n this.taskService.GetTaskStatus().subscribe(result => { this.statusSelect = result; });\r\n }\r\n\r\n if(this.prioritySelect.length==0){\r\n this.taskService.GetTaskPriorities().subscribe(result => { this.prioritySelect = result; console.log('Priorities ', result) });\r\n }\r\n\r\n if(this.phasesSelect.length==0){\r\n this.taskService.GetTaskPhases().subscribe(result => { this.phasesSelect = result; });\r\n }\r\n\r\n if(this.locationSelect.length==0){\r\n this.taskService.GetTaskLocation().subscribe(result => { this.locationSelect = result; });\r\n }\r\n // if(this.fromQuickAccess){\r\n this.setDefaultSettings();\r\n // }\r\n\r\n if (this.project && this.project.projectid > 0) {\r\n // console.log(this.project)\r\n this.setProjectInfo(this.project);\r\n this.isprojectview = true;\r\n }\r\n\r\n let mythis = this;\r\n this.projectslist = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n return mythis.taskService.GetProjectByName(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n }\r\n\r\n checkMilestone(){\r\n this.taskService.GetTimeSheetsByTask(this.task.ID).subscribe(result => {\r\n console.log('Time Sheet ', result);\r\n this.timeSheet = result;\r\n if(result.length > 0){\r\n console.log('Disable Milestone ');\r\n this.disableInputMilestone = true;\r\n }\r\n })\r\n }\r\n\r\n changeMilestone(e){\r\n if(e!==undefined){\r\n this._formNewTask.get('milestonename').setValue(e);\r\n if(this.timeSheet.length == 0 && e == true){\r\n this.disableMilestone = true;\r\n this._formNewTask.get('estimatedtime').setValue('00000');\r\n let startDate = this._formNewTask.get('startdate').value;\r\n this._formNewTask.get('duedate').setValue(startDate);\r\n console.log('Actualizar data ');\r\n }else{\r\n this.disableMilestone = false;\r\n }\r\n }\r\n }\r\n\r\n setDefaultSettings(){\r\n // console.log('Default Settings de Create Task ');\r\n\r\n this.settingsCompany.GetClientSettings(\"DefaultProjectToDoLocation\").subscribe(result=>{\r\n this.defaultLocationid = Number(result[0].VALUE);\r\n if (!this._formNewTask.get('locationid').value || this._formNewTask.get('locationid').value == 0)\r\n this._formNewTask.get('locationid').setValue(this.defaultLocationid);\r\n })\r\n\r\n this.settingsCompany.GetClientSettings(\"ProjectEstimatingPhase\").subscribe(result=>{\r\n this.defaultPhaseid = Number(result[0].VALUE);\r\n if (!this._formNewTask.get('phaseid').value || this._formNewTask.get('phaseid').value == 0)\r\n this._formNewTask.get('phaseid').setValue(this.defaultPhaseid);\r\n })\r\n\r\n this.settingsCompany.GetClientSettings(\"DefaultProjectToDoPriority\").subscribe(result=>{\r\n this.defaultPriorityid = Number(result[0].VALUE);\r\n if (!this._formNewTask.get('priorityid').value || this._formNewTask.get('phaseid').value == 0)\r\n this._formNewTask.get('priorityid').setValue(this.defaultPriorityid);\r\n })\r\n\r\n this.settingsCompany.GetClientSettings(\"DefaultProjectToDoStatus\").subscribe(result=>{\r\n this.defaultStatusid = Number(result[0].VALUE);\r\n if (!this._formNewTask.get('statusid').value || this._formNewTask.get('statusid').value == 0)\r\n this._formNewTask.get('statusid').setValue(this.defaultStatusid);\r\n })\r\n\r\n this.settingsCompany.GetClientSettings(\"DefaultProjectToDoCategory\").subscribe(result=>{\r\n this.defaultCategoryid = Number(result[0].VALUE);\r\n if (!this._formNewTask.get('todocategoryid').value || this._formNewTask.get('todocategoryid').value == 0)\r\n this._formNewTask.get('todocategoryid').setValue(this.defaultCategoryid);\r\n })\r\n }\r\n\r\n getSubContractors(projectid) {\r\n this.taskService.GetSubContractors(projectid).subscribe(result => {\r\n this.subcontractors = result;\r\n // console.log('SubContractors ', result);\r\n })\r\n }\r\n getSummaryTask(projectid) {\r\n this.taskService.GetSummaryTask(projectid).subscribe(result => {\r\n this.summarytaskSelect = result.map(x=>{\r\n x.NAME = x.ID+'-'+x.NAME;\r\n return x;\r\n });\r\n // console.log('Summarys ', this.summarytaskSelect);\r\n })\r\n }\r\n // range slider\r\n format(value) {\r\n return value + \"%\";\r\n }\r\n\r\n initForm(item?: any) {\r\n // console.log('Init Foorm');\r\n this._formNewTask = new FormGroup({\r\n taskid: new FormControl({ value: 0, disabled: false }, []),\r\n name: new FormControl({ value: '', disabled: false }, []),\r\n projectid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n employeeid: new FormControl({ value: '', disabled: false }, []), // !!\r\n taskresources : new FormControl({ value: [], disabled: false }, []),\r\n statusid: new FormControl({ value: this.defaultStatusid, disabled: false }, []),\r\n todocategoryid: new FormControl({ value: this.defaultCategoryid, disabled: false }, []),\r\n priorityid: new FormControl({ value: this.defaultPriorityid, disabled: false }, []),\r\n area: new FormControl({ value: '', disabled: false }, []),\r\n phaseid: new FormControl({ value: this.defaultPhaseid, disabled: false }, []),\r\n estimatedcost: new FormControl({ value: 0, disabled: false }, []),\r\n startdate: new FormControl({ value: new Date(), disabled: false }, []),\r\n estimatedtime: new FormControl({ value: 0, disabled: false }, [Validators.pattern('[0-9][0-9]:[0-9][0-9]')]),\r\n duedate: new FormControl({ value: new Date(), disabled: false }, []),\r\n completionperc: new FormControl({ value: 0, disabled: false }, []),\r\n endofmonthproj: new FormControl({ value: 0, disabled: false }, []),\r\n completiondate: new FormControl({ value: '', disabled: false }, []),\r\n notes: new FormControl({ value: '', disabled: false }, []),\r\n sort: new FormControl({ value: 0, disabled: false }, []),\r\n locationid: new FormControl({ value: this.defaultLocationid, disabled: false }, []),\r\n vendorid: new FormControl({ value: 0, disabled: false }, []),\r\n summarytaskid : new FormControl({ value: 0, disabled: false }, []),\r\n user: new FormControl({ value: localStorage.getItem('username'), disabled: false }, []),\r\n // userid: new FormControl({ value: localStorage.getItem('customerid'), disabled: false }, []),\r\n createon: new FormControl({ value: new Date(), disabled: false }, []),\r\n projectaddress: new FormControl({ value: '', disabled: false }, []),\r\n projectname: new FormControl({ value: '', disabled: false }, []),\r\n milestonename: new FormControl({ value: false, disabled: false }, []),\r\n // resourceArray: new FormControl('', []),\r\n });\r\n\r\n // this.changeDueDate();\r\n }\r\n\r\n rebootForm(){\r\n this._formNewTask = new FormGroup({\r\n taskid: new FormControl({ value: 0, disabled: false }, []),\r\n name: new FormControl({ value: '', disabled: false }, []),\r\n projectid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n employeeid: new FormControl({ value: '', disabled: false }, []), // !!\r\n taskresources : new FormControl({ value: [], disabled: false }, []),\r\n statusid: new FormControl({ value: this.defaultStatusid, disabled: false }, []),\r\n todocategoryid: new FormControl({ value: this.defaultCategoryid, disabled: false }, []),\r\n priorityid: new FormControl({ value: this.defaultPriorityid, disabled: false }, []),\r\n area: new FormControl({ value: '', disabled: false }, []),\r\n phaseid: new FormControl({ value: this.defaultPhaseid, disabled: false }, []),\r\n estimatedcost: new FormControl({ value: 0, disabled: false }, []),\r\n startdate: new FormControl({ value: new Date(), disabled: false }, []),\r\n estimatedtime: new FormControl({ value: 0, disabled: false }, [Validators.pattern('[0-9][0-9]:[0-9][0-9]')]),\r\n duedate: new FormControl({ value: new Date(), disabled: false }, []),\r\n completionperc: new FormControl({ value: 0, disabled: false }, []),\r\n endofmonthproj: new FormControl({ value: 0, disabled: false }, []),\r\n completiondate: new FormControl({ value: '', disabled: false }, []),\r\n notes: new FormControl({ value: '', disabled: false }, []),\r\n sort: new FormControl({ value: 0, disabled: false }, []),\r\n locationid: new FormControl({ value: this.defaultLocationid, disabled: false }, []),\r\n vendorid: new FormControl({ value: 0, disabled: false }, []),\r\n summarytaskid : new FormControl({ value: 0, disabled: false }, []),\r\n user: new FormControl({ value: localStorage.getItem('username'), disabled: false }, []),\r\n // userid: new FormControl({ value: localStorage.getItem('customerid'), disabled: false }, []),\r\n createon: new FormControl({ value: new Date(), disabled: false }, []),\r\n projectaddress: new FormControl({ value: '', disabled: false }, []),\r\n projectname: new FormControl({ value: '', disabled: false }, []),\r\n milestonename: new FormControl({ value: false, disabled: false }, []),\r\n // resourceArray: new FormControl('', []),\r\n });\r\n }\r\n\r\n setForm(item?: any) {\r\n // console.log('Set item ',item);\r\n this.editando = true;\r\n this.isprojectview = true;\r\n this.disableInputs = item.STATUSID == 3;\r\n this.disableMilestone = this.disableInputs;\r\n this.disableInputs == false? this.disableInputMilestone = false : '';\r\n this.resources = item.resourcesIDs ? item.resourcesIDs.split(',').map(x => +x) : [];\r\n // console.log('Recursos ', this.resources);\r\n if (this.disableInputs)\r\n this.ocultarSave.emit();\r\n\r\n if (!this.project )\r\n this.project = {};\r\n this.project.projectid = item.PROJECTID;\r\n this.project.projectname = item.PROJECTNAME;\r\n this.summarytaskSelect = this.summarytaskSelect.filter(x => x.PROJECTID == item.PROJECTID);\r\n this.inputsDate(this.startDate, item.StartDate);\r\n (item.COMPLETIONPERC*100) == 100 ? item.COMPDATE : item.COMPDATE = null;\r\n this.inputsDate(this.completionDate, item.COMPDATE);\r\n // item.duration = item.duration ? '00.'+item.duration : '00.00';\r\n\r\n let durat = item.duration ? item.duration.toString().split('.') : ['0', '0'];\r\n console.log(\"🚀 ~ file: create-update-task.component.ts:495 ~ CreateUpdateTaskComponent ~ setForm ~ durat:\", durat)\r\n\r\n if(durat[1]!==undefined && durat[1]!==null){\r\n\r\n let hours, minutes;\r\n let hours_initial = durat[0].substr(0, 1);\r\n\r\n if(hours_initial==0){\r\n hours = durat[0].substr(1, 2);\r\n hours.length == 0 ? hours = '000' : '';\r\n\r\n minutes = durat[1].substr(0, 2);\r\n minutes.length == 1 ? minutes = minutes+'0' : '';\r\n\r\n }else{\r\n hours = durat[0].substr(0, 3);\r\n\r\n hours.length == 2 ? hours = '0'+hours : '';\r\n hours.length == 1 ? hours = '00'+hours : '';\r\n minutes = durat[1].substr(0, 2);\r\n\r\n minutes.length == 1 ? minutes = minutes+'0' : '';\r\n }\r\n \r\n item.duration = hours+minutes;\r\n console.log(\"🚀 ~ file: create-update-task.component.ts:519 ~ CreateUpdateTaskComponent ~ setForm ~ item.duration :\", item.duration )\r\n }else{\r\n item.duration.toString().length > 3 ? item.duration = item.duration+'0' : '';\r\n item.duration.toString().length == 3 ? item.duration = item.duration+'00' : '';\r\n item.duration.toString().length == 2 ? item.duration = '0'+item.duration+'00' : '';\r\n item.duration.toString().length == 1 ? item.duration = '00'+item.duration+'00' : '';\r\n }\r\n console.log(\"duration?? \", item.duration);\r\n item.MILESTONENAME = item.MILESTONENAME == null || item.MILESTONENAME == 'false' || item.MILESTONENAME == 'False' ? false : true;\r\n\r\n this.defaultDuration = item.duration;\r\n this.defaultStartDate = this.datepipe.transform(item.StartDate, 'yyyyMMdd');\r\n\r\n this.changeMilestone(item.MILESTONENAME);\r\n\r\n this.inputsDate(this.dueDate, item.DUEDATE);\r\n console.log('Due Date ', new Date(this.dueDate.showDate));\r\n console.log(\"COMPELTION PERC \", item.COMPLETIONPERC*100);\r\n this._formNewTask = new FormGroup({\r\n taskid: new FormControl({ value: item.ID, disabled: false }, []),\r\n name: new FormControl({ value: item.TASKNAME, disabled: false }, []),\r\n projectid: new FormControl({ value: item.PROJECTID, disabled: false }, [Validators.required]),\r\n employeeid: new FormControl({ value: item.REPONSIBLEID == undefined ? 0:item.REPONSIBLEID, disabled: false }, []),\r\n taskresources: new FormControl({ value: item.resourcesIDs ? item.resourcesIDs.split(',') : [], disabled: false }, []),\r\n statusid: new FormControl({ value: item.STATUSID == null ? this.defaultStatusid : item.STATUSID, disabled: false }, []),\r\n todocategoryid: new FormControl({ value: item.TODOCATEGORYID == null ? this.defaultCategoryid : item.TODOCATEGORYID, disabled: false }, []),\r\n priorityid: new FormControl({ value: item.PRIORITYID == null ? this.defaultPriorityid : item.PRIORITYID, disabled: false }, []),\r\n area: new FormControl({ value: item.area, disabled: false }, []),\r\n phaseid: new FormControl({ value: item.PHASEID == null ? this.defaultPhaseid : item.PHASEID, disabled: false }, []),\r\n estimatedcost: new FormControl({ value: item.estimatecost, disabled: false }, []),\r\n startdate: new FormControl({ value: this.startDate.showDate, disabled: false }, []),\r\n estimatedtime: new FormControl({ value: item.duration, disabled: false }, [Validators.pattern('[0-500][0-9]:[0-9][0-9]')]),\r\n duedate: new FormControl({ value: this.dueDate.showDate, disabled: false }, []),\r\n completionperc: new FormControl({ value: (item.COMPLETIONPERC*100), disabled: false }, []),\r\n endofmonthproj: new FormControl({ value: (item.ENDOFMNTHPROJ*100), disabled: false }, []),\r\n completiondate: new FormControl({ value: this.completionDate.showDate, disabled: false }, []),\r\n notes: new FormControl({ value: item.notes, disabled: false }, []),\r\n sort: new FormControl({ value: item.order, disabled: false }, []),\r\n locationid: new FormControl({ value: item.LOCATIONID, disabled: false }, []),\r\n vendorid: new FormControl({ value: item.VENDORID, disabled: false }, []),\r\n summarytaskid: new FormControl({ value: item.SUMMARYTASKID, disabled: false }, []),\r\n user: new FormControl({ value: item.createdbyname, disabled: false }, []),\r\n resources : new FormControl('', []),\r\n projectaddress: new FormControl({ value: item.projectaddress, disabled: false }, []),\r\n projectname: new FormControl({ value: item.PROJECTNAME, disabled: false }, []),\r\n createon: new FormControl({ value: this.datepipe.transform(item.OPENDATE, 'yyyy-MM-dd HH:mm'), disabled: false }, []),\r\n milestonename: new FormControl({ value: item.MILESTONENAME, disabled: false }, []),\r\n });\r\n console.log(this._formNewTask.get(\"completionperc\").value);\r\n\r\n this.notesData = item.notes\r\n\r\n this.getSummaryTask(this.project.projectid);\r\n this.getSubContractors(this.project.projectid);\r\n\r\n this.onResourcesChange(item.resourcesIDs ? item.resourcesIDs.split(',').map(Number) : []);\r\n\r\n setTimeout(() => {\r\n this.editando = false;\r\n }, 1000);\r\n }\r\n\r\n deleteResourcesNotFound(res){\r\n // console.log(res);\r\n let finalData = [...res];\r\n res.forEach((data, i)=>{\r\n let found = this.employeeSelect.find(x=> x.ID == data);\r\n if(found){\r\n finalData.splice(i,1);\r\n }\r\n })\r\n this.resources = finalData.join(',');\r\n // console.log('Resources ', this.resources);\r\n // console.log('Final Resources ', finalData);\r\n }\r\n\r\n onResourcesChange(ev) {\r\n if (ev && this.employeeSelect) {\r\n let contacts = this.employeeSelect.filter(x => ev.includes(x.ID));\r\n this.onresources.emit(contacts);\r\n }\r\n }\r\n\r\n onStatusChange(ev) {\r\n if (ev.value == 3) {\r\n if (this._formNewTask.get('completionperc').value < 100) {\r\n this.toast.warning(this.translate.instant('msgComp100'));\r\n }\r\n if (!this._formNewTask.get('completiondate').value) {\r\n this.toast.warning(this.translate.instant('msgCompDate'));\r\n }\r\n }\r\n }\r\n\r\n validateForm() {\r\n let hasError = false;\r\n let value = this._formNewTask.value;\r\n\r\n if (!value.projectid) {\r\n this.toast.warning(this.translate.instant('msgProjName'));\r\n hasError = true\r\n }\r\n\r\n if (value.statusid == 3) {\r\n if (value.completionperc < 100) {\r\n this.toast.warning(this.translate.instant('msgComp100'));\r\n hasError = true\r\n }\r\n if (!value.completiondate) {\r\n this.toast.warning(this.translate.instant('msgCompDate'));\r\n hasError = true\r\n }\r\n }\r\n\r\n return hasError;\r\n }\r\n\r\n setProjectInfo(item) {\r\n if (item) {\r\n this._formNewTask.get('projectid').setValue(item.projectid);\r\n this.getSubContractors(item.projectid);\r\n this.getSummaryTask(item.projectid);\r\n }\r\n }\r\n\r\n updateTask(visibleModal = false, goedit = false, volver = false) {\r\n\r\n console.log(visibleModal, ' Go edit ', goedit, ' Volver ', volver);\r\n\r\n if (this.validateForm())\r\n return;\r\n\r\n let values = this._formNewTask.value;\r\n console.log(\"FORM TASK ? \", values);\r\n if (!values.name) {\r\n values.name = 'New Task';\r\n return\r\n }\r\n\r\n let datetime = this.datepipe.transform(values.startdate, 'yyyyMMdd');\r\n let edit = false;\r\n if(this.defaultDuration >=8 && datetime == this.defaultStartDate){\r\n edit = true;\r\n }\r\n\r\n // console.log('Task Resources ', values);\r\n\r\n // let alertEmployees = [];\r\n // if(values.taskresources !== undefined && values.taskresources.length > 0){\r\n // values.taskresources.map((x, i)=>{\r\n // console.log('X ', x);\r\n // this.taskService.GetTaskHoursByResource(x, datetime).subscribe(data=>{\r\n // console.log('Resources alert ', data);\r\n // if(data[0].totalhour >= 8 && edit == false){\r\n // let found = this.employeeSelect.find(employee => employee.ID === x);\r\n // if(found){\r\n // alertEmployees.push(found.CONTACTNAME);\r\n // }\r\n // }\r\n // console.log(values.taskresources.length, ' / ', i+1);\r\n // if(values.taskresources.length === i+1){\r\n // this.defaultValues = [values, visibleModal, goedit, volver];\r\n // if(alertEmployees.length == 0){\r\n this.saveTask(values, visibleModal, goedit, volver);\r\n // }else{\r\n // this.employeesWithAlert = alertEmployees.join(',');\r\n // console.log('Estos empleados ya tienen 8 horas de tareas ', this.employeesWithAlert);\r\n // this.openModalAlert = true;\r\n // }\r\n // }\r\n // })\r\n // })\r\n // }else{\r\n // this.defaultValues = [values, visibleModal, goedit, volver];\r\n // this.saveTask(values, visibleModal, goedit, volver);\r\n // }\r\n }\r\n\r\n initValidationAlert(){\r\n this.openModalAlert = false;\r\n this.employeesWithAlert = '';\r\n }\r\n\r\n saveTask(values, visibleModal = false, goedit = false, volver = false){\r\n if(typeof values.estimatedtime== 'string' && values.estimatedtime!==''){\r\n let hours, minutes;\r\n let hours_initial = values.estimatedtime.substr(0, 1);\r\n if(hours_initial==0){\r\n hours = values.estimatedtime.substr(1, 2);\r\n minutes = values.estimatedtime.substr(3, 2);\r\n }else{\r\n hours = values.estimatedtime.substr(0, 3);\r\n minutes = values.estimatedtime.substr(3, 2);\r\n }\r\n values.estimatedtime = hours+'.'+minutes;\r\n }\r\n values.completionperc = values.completionperc/100;\r\n values.endofmonthproj = values.endofmonthproj/100;\r\n values.locationid = values.locationid ? values.locationid : 0;\r\n values.phaseid = values.phaseid ? values.phaseid : 0;\r\n values.vendorid = values.vendorid ? values.vendorid : 0;\r\n values.estimatedcost = values.estimatedcost ? values.estimatedcost : 0;\r\n values.summarytaskid = values.summarytaskid ? values.summarytaskid : 0;\r\n values.completiondate = this.datepipe.transform(values.completiondate, 'yyyyMMdd hh:mm:ss');\r\n\r\n // if(values.createon!== null && values.createon!== undefined && this._task !== undefined){\r\n // values.createon = this.datepipe.transform(this._task.WORKDATE, 'yyyyMMdd hh:mm:ss');\r\n // }\r\n // values.createon = values.createon ? this.datepipe.transform(this._task.WORKDATE, 'yyyyMMdd hh:mm:ss'): '';\r\n values.startdate = this.datepipe.transform(values.startdate, 'yyyyMMdd hh:mm:ss');\r\n values.duedate = this.datepipe.transform(values.duedate, 'yyyyMMdd hh:mm:ss');\r\n values.sort = values.sort == null || values.sort == '' ? 0 : values.sort;\r\n this._formNewTask.get('sort').setValue(values.sort);\r\n values.resources = (values.taskresources && values.taskresources.length > 0) ? values.taskresources.join(',') : '0';\r\n values.method = 'Insert_Task_ce';\r\n\r\n values.notes = values.notes.replace(/\\n/g, '
');\r\n \r\n console.log('Guardando... ',values);\r\n this.taskService.updateTask2(values).subscribe(result => {\r\n\r\n // this.taskService.updateDueDateTwoWeek(values.taskid).subscribe(resultDueDate=>{\r\n\r\n let id = result[0].Column1;\r\n this.toast.success(this.translate.instant('msgTaskUpdSucc'));\r\n this.initForm();\r\n // if (this.lastLocation !== 'Task') {\r\n this.ngOnInit();\r\n console.log('GoEdit ', goedit)\r\n if (goedit) {\r\n this.router.navigateByUrl(`/taskManagement/editTask?numID=${id}&numTODOID=${id}`)\r\n this.onsubmit.emit(false);\r\n return;\r\n }\r\n\r\n // }\r\n this.onResourcesChange(values.resources);\r\n\r\n this.onsubmit.emit(visibleModal);\r\n\r\n if(volver){\r\n if(this.lastLocation=='Task'){\r\n let previousUrl = this.generalService.currentUrl.value;\r\n\r\n if (previousUrl && previousUrl.toLocaleLowerCase().includes('editproject')) {\r\n this.router.navigate(['editProject'], { queryParams: { numID: this.project.projectid, tab: 'Task'}});\r\n } else {\r\n this.location.back();\r\n }\r\n }else if (this.lastLocation=='TaskManagement'){\r\n this.router.navigate(['taskManagement'], { queryParams: { tab: 'Task List'} });\r\n }else if (this.lastLocation=='Gantt View'){\r\n this.router.navigate(['taskManagement'], { queryParams: { tab: 'Gantt View'} });\r\n }else{\r\n this.location.back();\r\n }\r\n }\r\n // })\r\n })\r\n }\r\n\r\n updateProjectInfo(item) {\r\n // console.log(item)\r\n if (item.selectedItem && item.selectedItem.ID) {\r\n this._formNewTask.get('projectid').setValue(item.selectedItem.ID);\r\n // console.log('Actualizando id project')\r\n this.getSummaryTask(item.selectedItem.ID);\r\n this.getSubContractors(item.selectedItem.ID);\r\n }\r\n }\r\n\r\n changeDueDate(){\r\n console.log(\"update due\")\r\n\r\n if(this.editando !== true){\r\n\r\n let duration = this._formNewTask.get('estimatedtime').value;\r\n duration== null || duration == '' ? duration = '00000' : '';\r\n let startDate = new Date(this._formNewTask.get('startdate').value);\r\n let resources = 0\r\n if (this.resources != undefined){\r\n resources = this.resources.length;\r\n }\r\n let porcentaje = this._formNewTask.get('completionperc').value;\r\n porcentaje == 0 ? porcentaje = porcentaje / 100 : porcentaje;\r\n\r\n resources == 0 ? resources = 1 : resources;\r\n\r\n let hours;\r\n let minutes;\r\n console.log(\"DURATION \", duration);\r\n let hours_initial = duration.toString().substr(0, 1);\r\n if(hours_initial==0){\r\n hours = duration.toString().substr(1, 2);\r\n minutes = duration.toString().substr(3, 2);\r\n }else{\r\n hours = duration.toString().substr(0, 3);\r\n minutes = duration.toString().substr(3, 2);\r\n }\r\n\r\n console.log(\"HORAS \", hours);\r\n let durationFinal = Number(hours+'.'+minutes) == 0 ? 3 : Number(hours+'.'+minutes);\r\n\r\n let resto = durationFinal % 8;\r\n\r\n if(minutes>59){\r\n let finalHour = Number(minutes)/60;\r\n let finalMinutes: any = Number(minutes)%60;\r\n finalHour = Math.round(finalHour) + Number(hours);\r\n \r\n let estimatedtime;\r\n\r\n let legnth_hour = finalHour.toString().length;\r\n\r\n if(legnth_hour==1){\r\n estimatedtime = '00'+finalHour+finalMinutes;\r\n }else if(legnth_hour==2){\r\n estimatedtime = '0'+finalHour+finalMinutes;\r\n }else{\r\n estimatedtime = finalHour+''+finalMinutes;\r\n }\r\n estimatedtime.toString().length == 3 ? estimatedtime = estimatedtime+'00' : '';\r\n estimatedtime.toString().length == 4 ? estimatedtime = estimatedtime+'0' : '';\r\n\r\n this._formNewTask.get('estimatedtime').setValue(estimatedtime);\r\n }else{\r\n //Toma en cuenta el porcentaje de avance y se lo resta a la duracion final\r\n \r\n let days = (durationFinal / resources);\r\n let estimatedTime = 0;\r\n\r\n // console.log('Resto ', resto);\r\n // console.log('Dias ', days);\r\n\r\n if(resto == 0){\r\n estimatedTime = Math.round(days/8) - 1; \r\n }else{\r\n let division = (hours / 8) % 1;\r\n \r\n estimatedTime = division == 0 ? Math.round(days/8) : Math.floor(days/8);\r\n }\r\n\r\n Math.sign(estimatedTime) < 0 ? estimatedTime = 0 : '';\r\n console.log('EstimatedTime1 ', estimatedTime);\r\n\r\n let finalDueDate: any = new Date(startDate.setDate(startDate.getDate() + estimatedTime));\r\n\r\n console.log('FINAL ', finalDueDate);\r\n this._formNewTask.get('duedate').setValue(finalDueDate);\r\n this.primeraVez=true;\r\n }\r\n }\r\n }\r\n\r\n enableCompletionDate(event){\r\n let porcentaje = this._formNewTask.get('completionperc').value;\r\n if(porcentaje != event.value){\r\n this._formNewTask.get('completionperc').setValue(event.value);\r\n porcentaje = event.value;\r\n }\r\n porcentaje==100? this.disableDate = false : this.disableDate = true;\r\n navigator.cookieEnabled\r\n }\r\n\r\n enableRecognized(event){\r\n let porcentaje = this._formNewTask.get('endofmonthproj').value;\r\n if(porcentaje != event.value){\r\n this._formNewTask.get('endofmonthproj').setValue(event.value);\r\n porcentaje = event.value;\r\n }\r\n }\r\n\r\n\r\n openModalNote\r\n showNote(){\r\n this.openModalNote = true\r\n }\r\n\r\n\r\n SaveNote(){\r\n console.log(\"aquiiii\")\r\n this.openModalNote = false\r\n }\r\n\r\n notesData:any=\"\"\r\n asignarValue(event) {\r\n this.notesData = event.value\r\n this._formNewTask.get(\"notes\").setValue(event.value)\r\n }\r\n\r\n RefreshEstimateRevenue(){\r\n console.log(\"aqui\")\r\n console.log(this.task)\r\n this.MapInformationService.SaveInfoSites({method:\"Update_TaskRevenue\", taskid:this.taskid, taskcategoryid:this.task.TODOCATEGORYID})\r\n .subscribe(resp=>{\r\n this.toast.success(\"Updated Successfully\")\r\n this.onsubmit.emit(false)\r\n })\r\n \r\n }\r\n\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { CreateUpdateTaskComponent } from './create-update-task.component';\r\nimport { DxAutocompleteModule, DxNumberBoxModule, DxTextAreaModule, DxButtonModule, DxCheckBoxModule, DxDateBoxModule, DxPopupModule, DxScrollViewModule, DxSelectBoxModule, DxSliderModule, DxTagBoxModule, DxTemplateModule, DxTextBoxModule, DxHtmlEditorModule } from 'devextreme-angular';\r\nimport { MdbGlobalModule } from '../mdb-global.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [CreateUpdateTaskComponent],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxButtonModule,\r\n DxNumberBoxModule,\r\n DxAutocompleteModule,\r\n DxTextBoxModule,\r\n DxSelectBoxModule,\r\n DxTagBoxModule,\r\n DxDateBoxModule,\r\n DxSliderModule,\r\n DxCheckBoxModule,\r\n DxTemplateModule,\r\n DxScrollViewModule,\r\n DxTextAreaModule,\r\n DxPopupModule,\r\n DxHtmlEditorModule,\r\n ],\r\n exports: [\r\n CreateUpdateTaskComponent\r\n ],\r\n schemas: [NO_ERRORS_SCHEMA]\r\n})\r\nexport class CreateUpdateTaskModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9kYXNoYm9hcmQtZHJhZ2dhYmxlLW9wdGlvbnMvZGFzaGJvYXJkLWRyYWdnYWJsZS1vcHRpb25zLmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-dashboard-draggable-options',\r\n templateUrl: './dashboard-draggable-options.component.html',\r\n styleUrls: ['./dashboard-draggable-options.component.scss']\r\n})\r\nexport class DashboardDraggableOptionsComponent implements OnInit {\r\n\r\n\r\n items = [];\r\n @Input() sizeSelected;\r\n // tslint:disable-next-line: no-output-on-prefix\r\n @Output() onSizeChange: EventEmitter = new EventEmitter();\r\n // tslint:disable-next-line: no-output-on-prefix\r\n @Output() onRemove: EventEmitter = new EventEmitter();\r\n constructor() { \r\n for (let index = 3; index <= 12; index++) {\r\n this.items.push({label: 'Size ' + index, value: index});\r\n }\r\n }\r\n\r\n ngOnInit() {\r\n \r\n }\r\n\r\n sizeChange(size) {\r\n this.sizeSelected = size;\r\n this.onSizeChange.emit(size);\r\n }\r\n\r\n remove() {\r\n this.onRemove.emit();\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class DataService {\r\n\r\n private currentMessageValue = [{id: 1, moduleName: 'Windows Opened', userModules: []}];\r\n\r\n private messageSource = new BehaviorSubject(this.currentMessageValue);\r\n currentMessage = this.messageSource.asObservable();\r\n\r\n private currentactiveComponents = ['/home'];\r\n\r\n private activeComponentsSource = new BehaviorSubject(this.currentactiveComponents);\r\n activeComponents = this.activeComponentsSource.asObservable();\r\n\r\n // Global Variables\r\n private currentUserValue = '';\r\n\r\n private userSource = new BehaviorSubject(this.currentUserValue);\r\n currentUser = this.userSource.asObservable();\r\n // Global Variables\r\n\r\n\r\n constructor() {\r\n this.currentMessageValue = [{id: 1, moduleName: 'Windows Opened', userModules: []}];\r\n }\r\n\r\n changeUser(user) {\r\n this.userSource.next(user);\r\n }\r\n\r\n // changeMessage3(ms, ms4) {\r\n // this.activeComponentsSource.next(ms);\r\n // this.messageSource.next(ms4);\r\n // }\r\n\r\n changeMessage(msg2: any) {\r\n var elementFounded = false;\r\n var mythis = this;\r\n this.currentMessageValue[0].userModules.forEach(function(msg) {\r\n if (msg.id == msg2.id){\r\n elementFounded = true;\r\n }\r\n });\r\n if (elementFounded == false){\r\n this.currentMessageValue[0].userModules.push(msg2);\r\n this.messageSource.next(this.currentMessageValue)\r\n }\r\n this.currentactiveComponents.push(msg2.cubeLink);\r\n this.activeComponentsSource.next(this.currentactiveComponents)\r\n\r\n localStorage.setItem('messageNav', JSON.stringify(mythis.currentMessageValue));\r\n\r\n // localStorage.setItem('currentactiveComponents', JSON.stringify(this.currentactiveComponents));\r\n // localStorage.setItem('currentMessageValue', JSON.stringify(this.currentMessageValue));\r\n\r\n }\r\n\r\n clearMenu() {\r\n this.currentMessageValue = [{id: 1, moduleName: 'Windows Opened', userModules: []}];\r\n this.messageSource.next(this.currentMessageValue)\r\n // localStorage.setItem('currentactiveComponents', JSON.stringify(this.currentactiveComponents));\r\n // localStorage.setItem('currentMessageValue', JSON.stringify(this.currentMessageValue));\r\n }\r\n\r\n changeMessage2(id: number, nav: string) {\r\n\r\n this.currentMessageValue[0].userModules = this.currentMessageValue[0].userModules.filter(function( obj ) {\r\n return obj.id !== id;\r\n });\r\n this.messageSource.next(this.currentMessageValue)\r\n\r\n this.currentactiveComponents = this.currentactiveComponents.filter(function( inav ) {\r\n return inav !== nav;\r\n });\r\n this.activeComponentsSource.next(this.currentactiveComponents)\r\n localStorage.setItem('messageNav', JSON.stringify(this.currentMessageValue));\r\n\r\n // localStorage.setItem('currentactiveComponents', JSON.stringify(this.currentactiveComponents));\r\n // localStorage.setItem('currentMessageValue', JSON.stringify(this.currentMessageValue));\r\n\r\n }\r\n\r\n private moduleNameSource = new BehaviorSubject('Module Name');\r\n currentmoduleName = this.moduleNameSource.asObservable();\r\n\r\n changemoduleName(message: string) {\r\n this.moduleNameSource.next(message)\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9kZWZhdWx0LWxheW91dC9kZWZhdWx0LWxheW91dC5jb21wb25lbnQuc2NzcyJ9 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { LoadingService } from 'src/app/services/loading.service';\r\n\r\n@Component({\r\n selector: 'app-default-layout',\r\n templateUrl: './default-layout.component.html',\r\n styleUrls: ['./default-layout.component.scss']\r\n})\r\nexport class DefaultLayoutComponent implements OnInit {\r\n title = 'ng-uikit-pro-standard';\r\n isNavCollapse = false;\r\n visibleNav: boolean;\r\n\r\n constructor(\r\n public loadingService: LoadingService, \r\n translate: TranslateService,\r\n private appconfig: AppConfigService) {\r\n this.appconfig.loadAppConfig()\r\n translate.setDefaultLang('en');\r\n }\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9kaW5hbWljLW1vZGFsL2RpbmFtaWMtbW9kYWwuY29tcG9uZW50LnNjc3MifQ== */\"","import { DatePipe } from '@angular/common';\r\nimport { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { CustomerService } from 'src/app/services/customer.service';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { PipelineService } from 'src/app/services/pipeline.service';\r\nimport { ProjectService } from 'src/app/services/project.service';\r\nimport { SalesProjectService } from 'src/app/services/sales-project.service';\r\nimport { SalesleadService } from 'src/app/services/saleslead.service';\r\nimport { TaskService } from 'src/app/services/task.service';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport DataSource from 'devextreme/data/data_source';\r\nimport { ContactService } from 'src/app/services/contact.service';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { NewCustomerComponent } from 'src/app/pages/sales-management/employee-activities/forms/new-customer/new-customer.component';\r\nimport { DxSelectBoxComponent } from 'devextreme-angular';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'dinamic-modal',\r\n templateUrl: './dinamic-modal.component.html',\r\n styleUrls: ['./dinamic-modal.component.scss']\r\n})\r\nexport class DinamicModalComponent implements OnInit, OnChanges {\r\n @Input() popupUtilityTable: any\r\n @Input() EditDe: any;\r\n @Input() popupActivityType: any\r\n @Output() infoDeRegreso = new EventEmitter();\r\n @Output() resultado = new EventEmitter();\r\n @Input() popupUtilityTableVertical: any;\r\n @Input() popupaddProdSpeButtonNOTBIDREASON: any;\r\n @Input() popupLeadStatus: any;\r\n @Input() popupaddFollowleadSatatus: any;\r\n @Input() popupMarketCampaign: any;\r\n @Input() modalCustomerContacts: any;\r\n @Input() projectid: any;\r\n @Input() ModalDinamico: any;\r\n @Input() ServiceInsert: any;\r\n @Input() ServiceGet: any;\r\n @Input() nombreDinamico: any;\r\n\r\n @Input() serviceToSave: any;\r\n @Input() serviceToDelete: any;\r\n @Input() serviceGet: any;\r\n @Input() idField: any;\r\n @Input() nameField: any;\r\n @Input() idFieldSaveOrModify: any;\r\n @Input() nameFieldSaveOrModify: any;\r\n @Input() openUtilityReu:boolean\r\n @ViewChild('newcustomer', { static: false }) newcustomer: NewCustomerComponent;\r\n @ViewChild(\"newCustomerSelect\", { static: false }) newCustomerSelect: DxSelectBoxComponent;\r\n @ViewChild(\"newContactsSelect\", { static: false }) newContactsSelect: DxSelectBoxComponent;\r\n\r\n modalCustomer:any=\"New Contact\"\r\n\r\n\r\n dateFormat:any\r\n formatCurrency:any\r\n optionsCType:any\r\n projectCategorySelect:any\r\n events: Array = [];\r\n verticalMarketSelect:any\r\n notBidReasonSelect:any\r\n optionsSalesLeadStatus:any=[]\r\n allStatusSales2:any[]=[]\r\n allSalesLeadFollowUpStatus:any[]=[]\r\n optionsMarketingCampaign:any[]=[]\r\n enabeleCustomerContacts:boolean=false\r\n popupNewContact:boolean=false\r\n dataCustomerContacts:any[]=[]\r\n customerForm: FormGroup;\r\n selectedContact:any\r\n selectedCustomer:any\r\n customersList:any[]=[]\r\n contactDataSource:any\r\n participantType:any\r\n customerType:any\r\n infoGridDinamico:any[]=[]\r\n popupCustomer2:boolean=false\r\n addCustomerButton:any\r\n cancelButtonNewCustomer:any\r\n\r\n saveButtonNewCustomer:any\r\n addRequestByButton:any\r\n popupNewContactCustomer:boolean=false\r\n\r\n constructor(\r\n private salesProjectService: SalesProjectService,\r\n private pipeDate: DatePipe,\r\n private projectService: ProjectService,\r\n private toast: ToastService,\r\n private generalService: GeneralService,\r\n private customerService: CustomerService,\r\n private taskService: TaskService,\r\n private pipelineService: PipelineService,\r\n private datePipe: DatePipe,\r\n private router: Router,\r\n public appConfigService: AppConfigService,\r\n private activatedRoute: ActivatedRoute,\r\n public MapInformationService:MapInformationService,\r\n private salesLeadService: SalesleadService,\r\n private contactService: ContactService,\r\n private translate:TranslateService\r\n ) {\r\n this.dateFormat = this.appConfigService.dateFormat\r\n this.formatCurrency = {style: 'currency', currency: this.appConfigService.moneyFormat}\r\n\r\n let moneyTableFormat = this.appConfigService.moneyFormat;\r\n if (this.appConfigService.moneyFormat == '$') { moneyTableFormat = 'USD' }\r\n\r\n this.formatCurrency = { style: 'currency', currency: moneyTableFormat }\r\n\r\n this.addCustomerButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupCustomer2 = true;\r\n },\r\n };\r\n\r\n this.cancelButtonNewCustomer = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.closeModalCustomer()\r\n },\r\n };\r\n\r\n this.saveButtonNewCustomer = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.newcustomer.submitForm(true, false);\r\n },\r\n // disabled:this.newcustomer._formEntity.value.customername == \"\"\r\n };\r\n\r\n this.addRequestByButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupNewContactCustomer = true;\r\n },\r\n };\r\n\r\n }\r\n\r\n dataUtility:any[]=[]\r\n\r\n ngOnInit() {\r\n switch (this.EditDe){\r\n case \"Activity Type\":\r\n this.getInfoActivity()\r\n break\r\n case \"Utility Tables\":\r\n this.getProjectCategory()\r\n break\r\n case \"Vertical Market\":\r\n this.getProjectVerticalMarket()\r\n break\r\n case \"Not Bid Reason\":\r\n this.getProjectNotBidReason()\r\n break\r\n case \"leads Status\":\r\n this.getSalesleadsStatus()\r\n break\r\n case \"Follow Up Status\":\r\n this.getFollowupStatus()\r\n break\r\n case \"Marketing Campaign\":\r\n this.getMarketingCampaign()\r\n break\r\n case 'modalCustomerContacts':\r\n this.initCustomerForm()\r\n this.getCustomers()\r\n this.getContactsCustomer()\r\n this.getParticipantType()\r\n this.getContactsType()\r\n this.getInfoCustomerContacts()\r\n\r\n this.enabeleCustomerContacts = true\r\n break\r\n case \"Unico\":\r\n this.getinfo()\r\n break\r\n }\r\n\r\n this.getUtilityTable()\r\n\r\n }\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.ngOnInit()\r\n }\r\n\r\n\r\n // *************************** Modales para insertar o editar registros de select ***********************************\r\n\r\n // sales Activity type\r\n\r\n getInfoActivity(){\r\n this.customerService.GetCustomerActivityType().subscribe(\r\n data => {\r\n this.optionsCType = data.map((val) => {\r\n return { // Return the new object structure\r\n label: val.Name,\r\n value: val.ID\r\n };\r\n });\r\n },\r\n err => {\r\n console.log(err)\r\n }\r\n )\r\n }\r\n\r\n InsertNew(event){\r\n console.log(event)\r\n const data = {\r\n method:\"InsertUpdate_ActivityType\",\r\n id:0,\r\n name:event.data.label,\r\n sort:\"\",\r\n active:1\r\n }\r\n console.log(data)\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n this.toast.success(\"Activity Type added Successfully\")\r\n this.getInfoActivity()\r\n // this.infoDeRegreso.emit(false)\r\n this.resultado.emit(resp)\r\n this.popupActivityType = false\r\n })\r\n }\r\n\r\n UpdateNorReasonNew(event){\r\n const data = {\r\n method:\"InsertUpdate_ActivityType\",\r\n id:event.data.value,\r\n name:event.data.label,\r\n sort:\"\",\r\n active:1\r\n }\r\n console.log(data)\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n this.toast.success(\"Activity Type updated Successfully\")\r\n this.getInfoActivity()\r\n // this.infoDeRegreso.emit(false)\r\n this.resultado.emit(resp)\r\n })\r\n }\r\n\r\n // Utility tables Category\r\n\r\n getProjectCategory() {\r\n this.salesProjectService.GetProjectSalesCategory().subscribe(result => {\r\n // this.salesCategorySelect = result.map((val) => {\r\n // return { // Return the new object structure\r\n // label: val.PROJECTSLSCATEGORY,\r\n // value: val.ID\r\n // };\r\n // });\r\n this.projectCategorySelect = result;\r\n });\r\n }\r\n\r\n insertUpdateProjectCategory(ev) {\r\n console.log(ev);\r\n let model = {\r\n id: 0,\r\n projectslscategory : '',\r\n sort:0,\r\n active:1,\r\n method:\"Estimates_InsertUpdate_ProjectSalesCategory\"\r\n };\r\n\r\n model.sort = 0;\r\n model.active = 1;\r\n\r\n if (ev.data) {\r\n model.id = 0;\r\n model.projectslscategory = ev.data.PROJECTSLSCATEGORY;\r\n } else if (ev.newData) {\r\n model.id = ev.key;\r\n model.projectslscategory = ev.newData.PROJECTSLSCATEGORY;\r\n }\r\n\r\n console.log(model)\r\n console.log(this.projectCategorySelect)\r\n this.MapInformationService.SaveInfoSites(model).subscribe(result => {\r\n // this.salesProjectService.InsertUpdateSalesCategory(model).subscribe(result => {\r\n console.log(result)\r\n this.resultado.emit(result);\r\n this.getProjectCategory();\r\n // this.infoDeRegreso.emit(false)\r\n })\r\n }\r\n\r\n onCellPrepared(ev) { }\r\n\r\n logEvent(eventName) {\r\n this.events.unshift(eventName);\r\n }\r\n\r\n\r\n // Vertical Market\r\n\r\n getProjectVerticalMarket() {\r\n this.salesProjectService.GetProjectVerticalMarket().subscribe(result => {\r\n this.verticalMarketSelect = result;\r\n });\r\n }\r\n\r\n InsertUpdateVerticalMarket(ev) {\r\n console.log(ev);\r\n let model = {\r\n id: 0,\r\n verticalmarketdescription: ''\r\n };\r\n if (ev.data.ID && ev.data.ID > 0) {\r\n model.id = ev.data.ID;\r\n }\r\n\r\n model.verticalmarketdescription = ev.data.VERTMARKETDESCRIPTION;\r\n\r\n this.salesProjectService.InsertUpdateVerticalMarket(model).subscribe(result => {\r\n console.log('nitido', result);\r\n this.getProjectVerticalMarket();\r\n // this.infoDeRegreso.emit(false)\r\n this.resultado.emit(result)\r\n });\r\n }\r\n\r\n closeModal(){\r\n this.infoDeRegreso.emit(false)\r\n }\r\n\r\n // Not Bid Reasons\r\n\r\n getProjectNotBidReason() {\r\n this.salesProjectService.GetProjectNotBidReason().subscribe(result => {\r\n this.notBidReasonSelect = result;\r\n });\r\n }\r\n\r\n InsertNewNotBidReasons(event){\r\n console.log(event)\r\n const data = {\r\n method:\"InsertUpdate_SalesNotBidReason\",\r\n id:0,\r\n name:event.data.NAME,\r\n sort:\"\",\r\n active:1\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n this.toast.success(\"Not Bid Reason added Successfully\")\r\n this.getProjectNotBidReason()\r\n // this.infoDeRegreso.emit(false)\r\n this.resultado.emit(resp)\r\n })\r\n }\r\n\r\n UpdateNotBidReasons(event){\r\n const data = {\r\n method:\"InsertUpdate_SalesNotBidReason\",\r\n id:event.data.ID,\r\n name:event.data.NAME,\r\n sort:\"\",\r\n active:1\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n this.toast.success(\"Not Bid Reason updated Successfully\")\r\n this.getProjectNotBidReason()\r\n // this.infoDeRegreso.emit(false)\r\n this.resultado.emit(resp)\r\n })\r\n }\r\n\r\n // leads Status\r\n getSalesleadsStatus(){\r\n let data2 = {\r\n method:\"Get_ProjectSalesLeadStatusEdit\"\r\n }\r\n this.MapInformationService.SaveInfoSites(data2)\r\n .subscribe(info1=>{\r\n this.allStatusSales2 = info1\r\n })\r\n }\r\n\r\n save_edit(event) {\r\n let item = event.data;\r\n console.log(item)\r\n console.log(event)\r\n let contador = 0\r\n\r\n if(item.STATUS == undefined){\r\n this.toast.warning(\"Required Name\")\r\n contador++\r\n } else if (item.SORT == undefined){\r\n // this.toast.warning(\"Required Sort\")\r\n item.SORT = 0\r\n // contador++\r\n }\r\n\r\n if (item.ACTIVE == undefined){\r\n item.ENABLE = 0\r\n }\r\n\r\n\r\n if(contador == 0){\r\n const data = {\r\n id:0,\r\n name:item.STATUS,\r\n sort:item.SORT,\r\n active:item.ACTIVE == true ? 1:0,\r\n method:\"Insert_SalesLeadStatus\"\r\n }\r\n console.log(data)\r\n\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp => {\r\n this.toast.success(\"Successfully Created\")\r\n // this.infoDeRegreso.emit(false)\r\n this.resultado.emit(resp)\r\n })\r\n }\r\n\r\n }\r\n\r\n update(obj) {\r\n let olddata = obj.oldData;\r\n let newData = obj.newData;\r\n let item = obj.newData\r\n\r\n if(item.STATUS == undefined){\r\n item.STATUS = olddata.STATUS\r\n }\r\n\r\n if (item.SORT == undefined){\r\n item.SORT = olddata.SORT\r\n }\r\n\r\n if (item.ACTIVE == undefined){\r\n item.ACTIVE = olddata.ACTIVE\r\n }\r\n\r\n const data = {\r\n id:olddata.ID,\r\n name:item.STATUS,\r\n sort:item.SORT,\r\n active:item.ACTIVE == true ? 1:0,\r\n method:\"Update_SalesLeadStatus\"\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp => {\r\n this.toast.success(\"Successfully updated\")\r\n // this.infoDeRegreso.emit(false)\r\n this.resultado.emit([{ID:data.id}])\r\n })\r\n\r\n }\r\n\r\n // follow up status\r\n getFollowupStatus(){\r\n let data2 = {\r\n method:\"Get_ProjectSalesLeadFUpStatusEdit\"\r\n }\r\n this.MapInformationService.SaveInfoSites(data2)\r\n .subscribe(resp=>{\r\n this.allSalesLeadFollowUpStatus = resp\r\n })\r\n }\r\n\r\n save_edit_FollowUpStatus(event){\r\n let item = event.data;\r\n let contador = 0\r\n\r\n if(item.STATUS == undefined){\r\n this.toast.warning(\"Required Name\")\r\n contador++\r\n } else if (item.SORT == undefined){\r\n // this.toast.warning(\"Required Sort\")\r\n // contador++\r\n item.SORT = 0\r\n }\r\n\r\n if (item.ACTIVE == undefined){\r\n item.ENABLE = 0\r\n }\r\n\r\n\r\n if(contador == 0){\r\n const data = {\r\n id:0,\r\n name:item.STATUS,\r\n sort:item.SORT,\r\n active:item.ACTIVE == true ? 1:0,\r\n method:\"Insert_SalesLeadFollowUpStatus\"\r\n }\r\n\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp => {\r\n this.toast.success(\"Successfully Created\")\r\n // this.infoDeRegreso.emit(false)\r\n this.resultado.emit(resp)\r\n })\r\n }\r\n }\r\n\r\n update_FollowUpStatus(obj){\r\n let olddata = obj.oldData;\r\n let newData = obj.newData;\r\n let item = obj.newData\r\n\r\n if(item.STATUS == undefined){\r\n item.STATUS = olddata.STATUS\r\n }\r\n\r\n if (item.SORT == undefined){\r\n item.SORT = olddata.SORT\r\n }\r\n\r\n if (item.ACTIVE == undefined){\r\n item.ACTIVE = olddata.ACTIVE\r\n }\r\n\r\n const data = {\r\n id:olddata.ID,\r\n name:item.STATUS,\r\n sort:item.SORT,\r\n active:item.ACTIVE == true ? 1:0,\r\n method:\"Update_SalesLeadFollowUpStatus\"\r\n }\r\n console.log(data)\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp => {\r\n this.toast.success(\"Successfully updated\")\r\n // this.infoDeRegreso.emit(false)\r\n this.resultado.emit([{ID:data.id}])\r\n })\r\n }\r\n\r\n getMarketingCampaign(){\r\n this.generalService.getPopulateGeneral('SalesLeadMarketingCampaign').subscribe(result => {\r\n this.optionsMarketingCampaign = result.map((val) => {\r\n return { // Return the new object structure\r\n label: val.NAME, value: val.ID\r\n };\r\n });\r\n });\r\n }\r\n\r\n InsertMarketingCampaign(event){\r\n console.log(event)\r\n const data = {\r\n id:0,\r\n name:event.data.label,\r\n method:\"InsertUpdateMarketingCampaign\"\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n this.toast.success(\"The Marketing Campaign was saved successfully\")\r\n // this.infoDeRegreso.emit(false)\r\n this.resultado.emit(resp)\r\n })\r\n }\r\n\r\n UpdateMarketingCampaign(event){\r\n console.log(event)\r\n const data = {\r\n id:event.data.value,\r\n name:event.data.label,\r\n method:\"InsertUpdateMarketingCampaign\"\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n this.toast.success(\"The Marketing Campaign was updated successfully\")\r\n // this.infoDeRegreso.emit(false)\r\n this.resultado.emit(resp)\r\n\r\n })\r\n }\r\n\r\n\r\n\r\n // *************************** Funciones para componentes que seran reutilizable ***********************************\r\n\r\n // Customer Contacts (edit sales leads y edit Project)\r\n\r\n initCustomerForm() {\r\n // console.clear()\r\n this.customerForm = new FormGroup({\r\n customerid: new FormControl('', []), //901\r\n participanttypeid: new FormControl('', []),\r\n contactid: new FormControl('', []), //904957\r\n contacttypeid: new FormControl('', []),\r\n projectid: new FormControl(this.projectid, []),\r\n id: new FormControl(0, []),\r\n })\r\n this.selectedCustomer = '';\r\n this.selectedContact = '';\r\n this.popupNewContact=false;\r\n this.customerDataSource = []\r\n this.contactDataSource= []\r\n if (this.newCustomerSelect != undefined){\r\n this.newCustomerSelect.placeholder = \"Select...\"\r\n }\r\n\r\n if (this.newContactsSelect != undefined){\r\n this.newContactsSelect.placeholder = \"Select...\"\r\n }\r\n\r\n this.modalCustomer= \"'ModuleEditSalesProj.titleNContact' | translate\";\r\n }\r\n\r\n getInfoCustomerContacts(){\r\n console.log(this.projectid)\r\n this.projectService.GetCustomerContactList(this.projectid).subscribe(result => {\r\n console.log('Customer Contacts', result);\r\n this.dataCustomerContacts = result;\r\n })\r\n }\r\n\r\n selectCustomer(e) {\r\n if (e.selectedItem.ID != undefined) {\r\n this.customerForm.get('customerid').setValue(e.selectedItem.ID);\r\n this.selectedCustomer = e.DESCRIPTION;\r\n }\r\n }\r\n\r\n updateContactId(item) {\r\n if (item.selectedItem.ID != undefined) {\r\n this.customerForm.get('contactid').setValue(item.selectedItem.ID);\r\n this.selectedContact = item.selectedItem.ContaNameID;\r\n }\r\n }\r\n\r\n saveContact() {\r\n let form = this.customerForm.value;\r\n console.log(form);\r\n this.projectService.InsertUpdateCustomer(form).subscribe(result => {\r\n this.toast.success(this.translate.instant('msgCustSavSucc'));\r\n this.popupNewContact = false;\r\n this.getInfoCustomerContacts();\r\n this.initCustomerForm();\r\n this.selectedCustomer = '';\r\n this.selectedContact = '';\r\n })\r\n }\r\n\r\n getCustomers() {\r\n this.projectService.GetCustomers().subscribe(result => {\r\n this.customersList = result;\r\n })\r\n }\r\n\r\n\r\n getContactsCustomer() {\r\n let mythis = this;\r\n // this.contactDataSource = new DataSource({\r\n // load: function (loadOptions: any) {\r\n // return mythis.contactService.GetContactByName(loadOptions.searchValue)\r\n // .toPromise()\r\n // .then((data: any) => {\r\n // return data;\r\n // })\r\n // .catch(error => { throw 'Data Loading Error' });\r\n // }\r\n // });\r\n }\r\n\r\n getParticipantType() {\r\n this.projectService.GetCustomerParticipantType().subscribe(result => {\r\n this.participantType = result;\r\n })\r\n }\r\n\r\n getContactsType() {\r\n // this.projectService.GetCustomerContactType().subscribe(result => {\r\n this.projectService.GetCustomerContactTypeAll().subscribe(result => {\r\n console.log('Type ', result);\r\n this.customerType = result;\r\n })\r\n }\r\n\r\n\r\n\r\n /**Modal dinamico */\r\n getinfo(){\r\n\r\n this.MapInformationService.SaveInfoSites({method:this.ServiceGet})\r\n .subscribe(result=>{\r\n console.log()\r\n switch (this.nombreDinamico){\r\n case \"Vendor\":\r\n this.infoGridDinamico = result.map((val) => {\r\n return {\r\n label: val.Vendor_Name,\r\n value: val.ID\r\n };\r\n });\r\n break\r\n case \"Status\":\r\n this.infoGridDinamico = result.map((val) => {\r\n return {\r\n label: val.STATUS,\r\n value: val.ID\r\n };\r\n });\r\n break\r\n case \"Shipping Method\":\r\n this.infoGridDinamico = result.map((val) => {\r\n return {\r\n label: val.SHIPMETHOD,\r\n value: val.ID\r\n };\r\n });\r\n break\r\n case \"Shipping Speed\":\r\n this.infoGridDinamico = result.map((val) => {\r\n return {\r\n label: val.SHIPSPEED,\r\n value: val.ID\r\n };\r\n });\r\n break\r\n case \"Field Tech\":\r\n this.infoGridDinamico = result.map((val) => {\r\n return {\r\n label: val.CONTACTNAME,\r\n value: val.ID\r\n };\r\n });\r\n break\r\n case \"Action Taken\":\r\n this.infoGridDinamico = result.map((val) => {\r\n return {\r\n label: val.ACTIONTAKEN,\r\n value: val.ID\r\n };\r\n });\r\n break\r\n case \"Fail Mode\":\r\n this.infoGridDinamico = result.map((val) => {\r\n return {\r\n label: val.FAILMODE,\r\n value: val.ID\r\n };\r\n });\r\n break\r\n case \"Inv Number for Credit\":\r\n this.infoGridDinamico = result.map((val) => {\r\n return {\r\n label: val.CUSTOMERTYPE,\r\n value: val.ID\r\n };\r\n });\r\n break\r\n }\r\n })\r\n }\r\n\r\n InsertinfoDinamica(event){\r\n console.log(event)\r\n let data = {}\r\n switch (this.nombreDinamico){\r\n case \"Vendor\":\r\n data = {\r\n id:0,\r\n name:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Status\":\r\n data = {\r\n id:0,\r\n status:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Shipping Method\":\r\n data = {\r\n id:0,\r\n shipmethod:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Shipping Speed\":\r\n data = {\r\n id:0,\r\n shipspeed:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Field Tech\":\r\n data = {\r\n id:0,\r\n name:event.data.label,\r\n method:this.ServiceInsert\r\n }\r\n break\r\n case \"Action Taken\":\r\n data = {\r\n id:0,\r\n actiontaken:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Fail Mode\":\r\n data = {\r\n id:0,\r\n failmode:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Inv Number for Credit\":\r\n data = {\r\n id:0,\r\n name:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n // let resp = [{DebesIr:\"\"}]\r\n this.toast.success(\"The Information was saved successfully\")\r\n // this.infoDeRegreso.emit(false)\r\n resp[0].DebesIr = this.nombreDinamico\r\n this.resultado.emit(resp)\r\n })\r\n }\r\n\r\n UpdateinfoDinamica(event){\r\n\r\n let data = {}\r\n\r\n switch (this.nombreDinamico){\r\n case \"Vendor\":\r\n data = {\r\n id:event.data.value,\r\n name:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Status\":\r\n data = {\r\n id:event.data.value,\r\n status:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Shipping Method\":\r\n data = {\r\n id:event.data.value,\r\n shipmethod:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Shipping Speed\":\r\n data = {\r\n id:event.data.value,\r\n shipspeed:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Field Tech\":\r\n data = {\r\n id:event.data.value,\r\n name:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Action Taken\":\r\n data = {\r\n id:event.data.value,\r\n actiontaken:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Fail Mode\":\r\n data = {\r\n id:event.data.value,\r\n failmode:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n case \"Inv Number for Credit\":\r\n data = {\r\n id:event.data.value,\r\n name:event.data.label,\r\n method:this.ServiceInsert,\r\n active:1\r\n }\r\n break\r\n }\r\n\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n // let resp = [{DebesIr:\"\"}]\r\n this.toast.success(\"The Information was updated successfully\")\r\n resp[0].DebesIr = this.nombreDinamico\r\n this.resultado.emit(resp)\r\n\r\n })\r\n }\r\n\r\n customerDataSource:any\r\n\r\n OpenNewCustomerContacts(edit=null){\r\n let mythis = this\r\n this.customerDataSource = new CustomStore({\r\n key: \"ID\",\r\n useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.GetAllInfoDinamico(\"Get_CustomerCE_ByName\",loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n console.log(data);\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n this.contactDataSource = new CustomStore({\r\n key: \"ID\",\r\n useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.GetAllInfoDinamico(\"Get_ContactsByName\",loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n console.log(data);\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n if(edit == undefined){\r\n\r\n let contract = {\r\n method: \"Get_ProjectServiceContractByID\",\r\n projectid: this.projectid\r\n }\r\n let project = {\r\n method: \"Get_ProjectByID\",\r\n projectid: this.projectid\r\n }\r\n this.MapInformationService.SaveInfoSites(contract).subscribe(resultContract => {\r\n this.MapInformationService.SaveInfoSites(project).subscribe(resultProject => {\r\n if(resultContract.length > 0){\r\n console.log(resultContract)\r\n setTimeout(() => {\r\n this.newCustomerSelect.placeholder = resultContract[0].CoName\r\n // this.customerService.GetCustomerByName(resultContract[0].CoName).subscribe(data => {\r\n this.customerForm.get('customerid').setValue(resultContract[0].CUSTOMERID);\r\n // })\r\n }, 1000);\r\n }\r\n\r\n if(resultProject.length > 0){\r\n console.log(resultProject)\r\n setTimeout(() => {\r\n this.newCustomerSelect.placeholder = resultContract[0].CoName\r\n this.customerForm.get('customerid').setValue(resultContract[0].CUSTOMERID);\r\n }, 1000);\r\n }\r\n\r\n })\r\n })\r\n }\r\n this.modalCustomer=\"New Contact\"\r\n this.popupNewContact = true;\r\n }\r\n\r\n close(){}\r\n\r\n closeModalCustomer(){\r\n this.popupCustomer2 = false;\r\n }\r\n\r\n getNewCustomer(ev){\r\n console.log(ev)\r\n // this.customerDataSource = []\r\n let mythis = this;\r\n this.customerForm.get('customerid').setValue(ev.id);\r\n // this.selectedCustomer = ev.name\r\n this.newCustomerSelect.placeholder = ev.name\r\n // this.newCustomerSelect.value = ev.name\r\n\r\n // this.customerDataSource = new CustomStore({\r\n // key: \"ID\",\r\n // useDefaultSearch: false,\r\n // load: function (loadOptions: any) {\r\n // if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n // loadOptions.searchValue = \" \"\r\n // } else {\r\n // loadOptions.searchValue = loadOptions.searchValue\r\n // }\r\n // return mythis.MapInformationService.GetAllInfoDinamico(\"Get_CustomerCE_ByName\",loadOptions.searchValue)\r\n // .toPromise()\r\n // .then((data: any) => {\r\n // console.log(data);\r\n // return data;\r\n // })\r\n // .catch(error => { throw 'Data Loading Error' });\r\n // }\r\n // });\r\n }\r\n\r\n onsavecontact(ev) {\r\n console.log(ev)\r\n let obj = {\r\n selectedItem: {\r\n ID: ev.id,\r\n First: ev.First,\r\n Last: ev.Last\r\n }\r\n };\r\n\r\n this.customerForm.get('contactid').setValue(ev.id);\r\n this.newContactsSelect.placeholder = ev.First + ' ' + ev.Last;\r\n this.newContactsSelect.value = ev.id;\r\n // let mythis = this\r\n // this.contactDataSource = new CustomStore({\r\n // key: \"ID\",\r\n // useDefaultSearch: false,\r\n // load: function (loadOptions: any) {\r\n // if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n // loadOptions.searchValue = \" \"\r\n // } else {\r\n // loadOptions.searchValue = loadOptions.searchValue\r\n // }\r\n // return mythis.MapInformationService.GetAllInfoDinamico(\"Get_ContactsByName\",loadOptions.searchValue)\r\n // .toPromise()\r\n // .then((data: any) => {\r\n // console.log(data);\r\n // return data;\r\n // })\r\n // .catch(error => { throw 'Data Loading Error' });\r\n // }\r\n // });\r\n\r\n }\r\n\r\n\r\n editContact(data){\r\n console.log(data)\r\n this.OpenNewCustomerContacts(true)\r\n\r\n this.customerForm.get(\"id\").setValue(data.ID)\r\n\r\n this.customerForm.get(\"customerid\").setValue(data.CustomerID)\r\n setTimeout(() => {\r\n this.newCustomerSelect != undefined ? this.newCustomerSelect.placeholder = data.CUSTOMERNAME : \"\"\r\n this.newContactsSelect != undefined ? this.newContactsSelect.placeholder = data.ContactName : \"\"\r\n }, 1000);\r\n\r\n\r\n this.customerForm.get(\"contactid\").setValue(data.ContactID)\r\n this.customerForm.get(\"participanttypeid\").setValue(data.PARTICIPANTTYPEID)\r\n this.customerForm.get(\"contacttypeid\").setValue(data.CONTACTTYPEID)\r\n this.modalCustomer=\"Edit Contact\"\r\n }\r\n\r\n\r\n DeleteContact(data){\r\n console.log(data)\r\n const info = {\r\n method:\"Delete_ProjectParticipant\",\r\n id:data.ID\r\n }\r\n\r\n this.MapInformationService.SaveInfoSites(info)\r\n .subscribe(resp=>{\r\n this.toast.success(\"The record was successfully deleted\")\r\n this.getInfoCustomerContacts()\r\n })\r\n }\r\n\r\n\r\n // popup dinamico\r\n getUtilityTable(){\r\n console.log('DInamico ', this.serviceGet);\r\n if(this.serviceGet){\r\n this.MapInformationService.SaveInfoSites({method:this.serviceGet})\r\n .subscribe(resp=>{\r\n this.dataUtility = resp\r\n }, err => {\r\n console.log('Err ', err);\r\n })\r\n }\r\n }\r\n \r\n closeModalopenUtilityReu(){\r\n this.openUtilityReu = false\r\n this.infoDeRegreso.emit()\r\n }\r\n\r\n insertInfoUtility(event){\r\n // console.log(event.data)\r\n // console.log(event.data['idField'])\r\n let data = {\r\n method:this.serviceToSave,\r\n [this.idFieldSaveOrModify]:0,\r\n [this.nameFieldSaveOrModify]:event.data[this.nameField],\r\n }\r\n console.log(data)\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n this.toast.success(\"The Information was saved successfully\")\r\n this.getUtilityTable()\r\n // this.resultado.emit(resp)\r\n })\r\n }\r\n\r\n UpdateInfoUtility(event){\r\n\r\n let data = {\r\n method:this.serviceToSave,\r\n [this.idFieldSaveOrModify]:event.data[this.idField],\r\n [this.nameFieldSaveOrModify]:event.data[this.nameField],\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n this.toast.success(\"The Information was saved successfully\")\r\n this.getUtilityTable()\r\n // resp[0].DebesIr = this.nombreDinamico\r\n // this.resultado.emit(resp)\r\n })\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { TaskListModule } from 'src/app/shared/task-list/task-list.module';\r\nimport { DxTooltipModule, DxFormModule, DxToolbarModule, DxNumberBoxModule,DxAccordionModule,DxFileUploaderModule,DxDropDownButtonModule, DxButtonGroupModule, DxAutocompleteModule, DxButtonModule, DxCheckBoxModule, DxContextMenuModule, DxDateBoxModule, DxDropDownBoxModule, DxGanttModule, DxPopupModule, DxRadioGroupModule, DxSchedulerModule, DxScrollViewModule, DxSelectBoxModule, DxSliderModule, DxTabPanelModule, DxTextBoxModule, DxTreeViewModule, DxDataGridComponent, DxDataGridModule, DxTagBoxModule, DxTextAreaModule, } from 'devextreme-angular';\r\nimport { ServiceListModule } from 'src/app/shared/service-list/service-list.module';\r\n\r\nimport { DashboardModule } from 'src/app/shared/shared-dashboard/dashboard.module';\r\nimport { SharedDatagridModule } from 'src/app/shared/shared-datagrid/shared-datagrid.module';\r\n\r\nimport { ReportViewerModule } from 'src/app/shared/report-viewer/report-viewer.module';\r\n\r\nimport { SignaturePadModule } from 'angular2-signaturepad';\r\nimport { ScheduleValuesModule } from 'src/app/shared/schedule-values/schedule-values.module';\r\nimport { DinamicModalComponent } from './dinamic-modal.component';\r\nimport { NewContactModule } from '../new-contact/new-contact.module';\r\nimport { NewCustomerModule } from 'src/app/pages/sales-management/employee-activities/forms/new-customer/new-customer.module';\r\n\r\n@NgModule({\r\n declarations: [\r\n DinamicModalComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n TaskListModule,\r\n DxTreeViewModule,\r\n DxDropDownBoxModule,\r\n DxAccordionModule,\r\n DxTabPanelModule,\r\n DxButtonModule,\r\n DxContextMenuModule,\r\n DxSchedulerModule,\r\n DxDateBoxModule,\r\n DxGanttModule,\r\n DxTextBoxModule,\r\n DxRadioGroupModule,\r\n DxCheckBoxModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxAutocompleteModule,\r\n DxSelectBoxModule,\r\n DxSliderModule,\r\n ServiceListModule,\r\n DashboardModule,\r\n DxDataGridModule,\r\n DxTagBoxModule,\r\n DxButtonGroupModule,\r\n DxFileUploaderModule,\r\n DxDropDownButtonModule,\r\n SharedDatagridModule,\r\n ReportViewerModule,\r\n SignaturePadModule,\r\n DxNumberBoxModule,\r\n DxToolbarModule,\r\n DxTextAreaModule,\r\n DxFormModule,\r\n ScheduleValuesModule,\r\n NewContactModule,\r\n NewCustomerModule,\r\n DxTooltipModule\r\n ],\r\n exports:[DinamicModalComponent]\r\n})\r\nexport class DinamicModalModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9lZGl0LXNlcnZpY2Utd29yay1vcmRlci9lZGl0LXNlcnZpY2Utd29yay1vcmRlci5jb21wb25lbnQuc2NzcyJ9 */\"","import * as moment from 'moment';\r\nimport { Router } from '@angular/router';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { DxSelectBoxComponent } from 'devextreme-angular';\r\nimport { ContactService } from 'src/app/services/contact.service';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { Component, OnInit, ViewChild, Input, Output, EventEmitter } from '@angular/core';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { MarketPoiInterface, MarketServiceInterface } from 'src/app/models/models.interface';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { SwoService } from 'src/app/services/swo.service';\r\n@Component({\r\n selector: 'app-edit-service-work-order',\r\n templateUrl: './edit-service-work-order.component.html',\r\n styleUrls: ['./edit-service-work-order.component.scss']\r\n})\r\nexport class EditServiceWorkOrderComponent implements OnInit {\r\n\r\n @Input() serviceID : any;\r\n\r\n newSWO = new FormGroup({\r\n serviceid: new FormControl({ value: '', disabled: true }, []),\r\n siteid: new FormControl({ value: '', disabled: false }, []),\r\n servicetype: new FormControl({ value: '', disabled: false }, []),\r\n servicecategoryid: new FormControl({ value: '', disabled: false }, []),\r\n requestedbyid: new FormControl({ value: '', disabled: false }, []),\r\n requestdate: new FormControl(\"\"),\r\n customerpo: new FormControl({ value: '', disabled: false }, []),\r\n userid: new FormControl({ value: '', disabled: false }, []),\r\n resources: new FormControl({ value: '', disabled: false }, []),\r\n serviceestimatedhours: new FormControl(''),\r\n scheduledate: new FormControl({ value: \"\", disabled: false }, []),\r\n callahead: new FormControl(false),\r\n serviceconfirmed: new FormControl(false),\r\n projectid: new FormControl({ value: '', disabled: false }, []),\r\n priorityid: new FormControl({ value: '', disabled: false }, []),\r\n reasonforservice: new FormControl(''),\r\n Notify_Technician: new FormControl(false),\r\n status: new FormControl({ value: 0, disabled: false }, []),\r\n siteAddress: new FormControl({ value: \"\", disabled: true }, []),\r\n pmType: new FormControl({ value: \"\", disabled: false }, []),\r\n statusid: new FormControl({ value: 0, disabled: false }, []),\r\n pmtasks: new FormControl({ value: \"\", disabled: false }, []),\r\n servicedoneby: new FormControl({ value: \"\", disabled: false }, []),\r\n });\r\n\r\n siteID: any;\r\n // serviceID: any\r\n\r\n responsible: any;\r\n sitename: any;\r\n salesProject: any;\r\n siteDataSource: any\r\n plusSiteButton: any;\r\n popupServiceSite = false;\r\n\r\n dateFormat: any;\r\n\r\n lat:any\r\n lng:any\r\n\r\n request: any\r\n requestDataSource: any;\r\n reqDate = { todayButton: {}, prevDateButton: {}, nextDateButton: {}, showDate: new Date().getTime() };\r\n schedulatedDate = { todayButton: {}, prevDateButton: {}, nextDateButton: {}, showDate: new Date().getTime() };\r\n\r\n millisecondsInDay = 24 * 60 * 60 * 1000;\r\n\r\n status:any\r\n createdBy: any;\r\n\r\n loadInfo = {\r\n siteid: [],\r\n servicetype: [],\r\n servicecategoryid: [],\r\n requestedbyid: [],\r\n // requestdate: [],\r\n customerpo: \"\",\r\n userid: [],\r\n resources: [],\r\n // subcontractorid: [],\r\n // scheduledate: [],\r\n serviceconfirmed: [],\r\n projectid: [],\r\n priorityid: [],\r\n reasonforservice: \"\",\r\n pmType: [],\r\n status: []\r\n };\r\n\r\n siteAddress: any = \"\";\r\n createdDate: any;\r\n nombreNavigateTo : any;\r\n servicesid : any;\r\n pmtype: any[]=[];\r\n type = \"\";\r\n priority = \"\";\r\n category = \"\";\r\n recursos: any[]= [];\r\n callahead: any;\r\n\r\n serviceestimatedhours: any;\r\n serviceconfirmed: any;\r\n projectDataSource: any;\r\n ResponsibleDataSource: any;\r\n plusContactButton: any;\r\n popupNewContact: boolean = false;\r\n plusSalesProjectButton: any;\r\n popupCreateSalesProject: boolean = false;\r\n plusResponsibleButton: { icon: string; type: string; onClick: () => void; };\r\n popupResponsible: boolean = false;\r\n plusResourcesButton: { icon: string; type: string; onClick: () => void; };\r\n popupResources: boolean = false;\r\n\r\n @ViewChild(\"newSiteSelect\", { static: false }) newSiteSelect: DxSelectBoxComponent;\r\n @ViewChild(\"newProjectSelect\", { static: false }) newProjectSelect: DxSelectBoxComponent;\r\n @ViewChild(\"newRequestSelect\", { static: false }) newRequestSelect: DxSelectBoxComponent;\r\n @ViewChild(\"newResponsibleSelect\", { static: false }) newResponsibleSelect: DxSelectBoxComponent;\r\n\r\n @Output() onsubmit = new EventEmitter();\r\n\r\n constructor(\r\n private router: Router,\r\n private pipeDate: DatePipe,\r\n private toast: ToastService,\r\n public swoService:SwoService,\r\n private translate:TranslateService,\r\n private contactService: ContactService,\r\n public MapInformationService: MapInformationService,\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.inputsDate(this.reqDate);\r\n this.inputsDate(this.schedulatedDate);\r\n\r\n this.plusSiteButton = {\r\n icon:\"plus\",\r\n type: \"button\",\r\n hint:\"New service site\",\r\n onClick: () => {\r\n this.popupServiceSite = true;\r\n }\r\n };\r\n\r\n this.plusContactButton = {\r\n icon:\"plus\",\r\n type: \"button\",\r\n hint:\"New Contact\",\r\n onClick: () => {\r\n this.popupNewContact = true; // ---------------\r\n }\r\n };\r\n\r\n this.plusSalesProjectButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n hint:\"Create new Sales project\",\r\n onClick: () => {\r\n this.popupCreateSalesProject = true // ---------------\r\n }\r\n };\r\n\r\n this.plusResponsibleButton = {\r\n icon:\"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupResponsible = true // ---------------\r\n }\r\n };\r\n\r\n this.plusResourcesButton = {\r\n icon:\"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupResources = true // ---------------\r\n }\r\n };\r\n\r\n this.initVarible();\r\n this.GetAllInfo(this.serviceID);\r\n }\r\n\r\n editSite(){\r\n localStorage.removeItem('newSite')\r\n localStorage.removeItem('VolverEditSWO')\r\n localStorage.setItem('newSite',this.siteID)\r\n localStorage.setItem('VolverEditSWO',this.serviceID)\r\n this.router.navigate(['/serviceSites/editServiceSite']);\r\n }\r\n\r\n updateForm(item,tipo_select) {\r\n\r\n switch(tipo_select){\r\n case 'Responsible':\r\n if (item.selectedItem && item.selectedItem.ID) {\r\n this.newSWO.get('servicedoneby').setValue(item.selectedItem.ID);\r\n this.responsible = item.selectedItem.EMPLOYEENAME\r\n }\r\n break\r\n case 'Site_Name':\r\n console.log(item)\r\n if (item.selectedItem && item.selectedItem.ID) {\r\n this.newSWO.get('siteid').setValue(item.selectedItem.ID);\r\n this.sitename = item.selectedItem.name\r\n }\r\n break\r\n case 'Sales_Project':\r\n if (item.selectedItem && item.selectedItem.ID) {\r\n this.newSWO.get('projectid').setValue(item.selectedItem.ID);\r\n this.salesProject = item.selectedItem.Description\r\n }\r\n break\r\n }\r\n }\r\n\r\n GoToMap(){\r\n let data = {\r\n Lat: this.lat,\r\n lng: this.lng\r\n }\r\n localStorage.removeItem('SiteData')\r\n localStorage.setItem('SiteData',JSON.stringify(data))\r\n this.router.navigateByUrl('/services-map');\r\n }\r\n\r\n updateOwener(item) {\r\n if (item.selectedItem && item.selectedItem.ID) {\r\n this.newSWO.get('requestedbyid').setValue(item.selectedItem.ID);\r\n this.request = item.selectedItem.First\r\n }\r\n }\r\n\r\n editContact(){\r\n localStorage.removeItem(\"VolvereditSWO\")\r\n localStorage.setItem(\"VolvereditSWO\",this.serviceID)\r\n this.router.navigateByUrl(`/contacts/editContact/${this.newSWO.value.requestedbyid}`);\r\n }\r\n\r\n inputsDate(date) {\r\n date.todayButton = {\r\n text: this.translate.instant('btnToday'),\r\n onClick: () => {\r\n date.showDate = new Date().getTime();\r\n }\r\n };\r\n\r\n date.prevDateButton = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n date.showDate -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n date.nextDateButton = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n date.showDate += this.millisecondsInDay;\r\n }\r\n };\r\n }\r\n\r\n serviceDoneBy: any\r\n serviceDoneDate: any\r\n\r\n GetAllInfo(param){\r\n this.loadInfo = {\r\n siteid: [],\r\n servicetype: [],\r\n servicecategoryid: [],\r\n requestedbyid: [],\r\n // requestdate: [],\r\n customerpo: \"\",\r\n userid: [],\r\n resources: [],\r\n // subcontractorid: [],\r\n // serviceestimatedhours: [],\r\n // scheduledate: [],\r\n serviceconfirmed: [],\r\n projectid: [],\r\n priorityid: [],\r\n reasonforservice: \"\",\r\n pmType:[],\r\n status:[]\r\n };\r\n\r\n const infoPrincipal = {\r\n method:'GetServiceInfoCE',\r\n serviceid:param\r\n }\r\n console.log(infoPrincipal);\r\n // this.MapInformationService.GetOrderByID('Get_ServiceByID',param)\r\n this.MapInformationService.SaveInfoSites(infoPrincipal)\r\n .subscribe(datos=>{\r\n console.log(datos);\r\n this.MapInformationService.GetSitesByID(\"Get_SiteInfo\",datos[0].SITEID)\r\n .subscribe(sites=>{\r\n this.MapInformationService.GetAllInfo('GetServicePriorityCE')\r\n .subscribe(priority=>{\r\n this.MapInformationService.GetAllInfo('Get_EmployeeListAll')\r\n .subscribe(resources=>{\r\n this.MapInformationService.GetAllInfo('Get_ServiceTypes')\r\n .subscribe(allCategory=>{\r\n this.MapInformationService.GetAllInfo('Get_SerCategory')\r\n .subscribe(allTypes=>{\r\n this.MapInformationService.GetAllInfo('Get_Service_PMTask_Type')\r\n .subscribe(PMtype=>{\r\n this.MapInformationService.GetAllInfo('Get_ServiceStatus')\r\n .subscribe(Status=>{\r\n console.log(datos);\r\n\r\n /**SELECT ON DEMAND */\r\n // Service Site\r\n this.newSiteSelect.placeholder = datos[0].SITEID + \"-\" + datos[0].SITENAME\r\n this.newSWO.get('siteid').setValue(datos[0].SITEID);\r\n this.sitename = datos[0].SITENAME\r\n this.nombreNavigateTo = datos[0].SITEID + \"-\" + datos[0].SITENAME\r\n this.siteAddress = datos[0].SITEADDRESS;\r\n\r\n //requested By\r\n datos[0].REQUESTBYID ? '' : datos[0].REQUESTBYID = 0;\r\n this.newSWO.get('requestedbyid').setValue(datos[0].REQUESTBYID);\r\n this.request = datos[0].First + \" \" + datos[0].Last\r\n this.newRequestSelect.placeholder = datos[0].First + \" \" + datos[0].Last\r\n\r\n //Sales Project\r\n this.newSWO.get('projectid').setValue(datos[0].PROJECTID);\r\n this.salesProject = datos[0].QUOTE\r\n this.newProjectSelect.placeholder = datos[0].QUOTE\r\n\r\n //Responsible\r\n this.newSWO.get('servicedoneby').setValue(datos[0].RESPONSIBLEID);\r\n this.responsible = datos[0].RESPONSIBLENAME\r\n this.newResponsibleSelect.placeholder = datos[0].RESPONSIBLENAME\r\n\r\n this.newSWO.get('serviceid').setValue(param);\r\n this.servicesid = param\r\n this.serviceID = param\r\n this.createdBy = datos[0].CREATEDBYNAME\r\n this.createdDate = this.pipeDate.transform(datos[0].DATECREATED, 'MM/dd/yyyy');\r\n this.serviceDoneBy = datos[0].SERVICEDONEBY\r\n this.serviceDoneDate = this.pipeDate.transform(datos[0].SERVICEDONEDATE, 'MM/dd/yyyy');\r\n\r\n if(datos[0].PMCategoriesID != undefined){\r\n let pmtasks = datos[0].PMCategoriesID.split(\",\")\r\n PMtype.forEach((element,index) => {\r\n if(element.SPMCATEGORY != \"\"){\r\n this.loadInfo.pmType.push(element)\r\n }\r\n pmtasks.forEach(pmtask1 => {\r\n if(element.ID == parseInt(pmtask1)){\r\n console.log(\"aqui\")\r\n this.pmtype.push(element.ID)\r\n }\r\n });\r\n });\r\n } else {\r\n PMtype.forEach((element,index) => {\r\n if(element.SPMCATEGORY != \"\"){\r\n this.loadInfo.pmType.push(element)\r\n }\r\n })\r\n }\r\n\r\n // this.todasCategory = allCategory\r\n // this.todasTypes = allTypes\r\n\r\n allCategory.forEach((element,index) => {\r\n if(element.SERVICETYPE != \"\"){\r\n this.loadInfo.servicetype.push(element)\r\n }\r\n if(element.ID == datos[0].SERVICETYPEID){\r\n this.newSWO.get('servicetype').setValue(element.ID);\r\n this.type = element.ID\r\n }\r\n });\r\n priority.forEach((element,index) => {\r\n if(element.name != \"\"){\r\n this.loadInfo.priorityid.push(element)\r\n }\r\n if(element.ID == datos[0].PRIOROTYID){\r\n this.newSWO.get('priorityid').setValue(element.ID);\r\n this.priority = element.ID\r\n }\r\n });\r\n allTypes.forEach((element,index) => {\r\n if(element.NAME != \"\"){\r\n this.loadInfo.servicecategoryid.push(element)\r\n }\r\n if(element.ID == datos[0].SERVICECATEGORYID){\r\n this.newSWO.get('servicecategoryid').setValue(element.ID);\r\n this.category = element.ID\r\n }\r\n });\r\n this.siteID = datos[0].SITEID\r\n let result: MarketPoiInterface[] = [];\r\n let dataSite = []\r\n sites.forEach(element => {\r\n if(element.SITENAME != \"\"){\r\n this.loadInfo.siteid.push(element)\r\n }\r\n if(element.ID == datos[0].SITEID){\r\n this.lat = element.LAT\r\n this.lng = element.LON\r\n result.push({\r\n ID: parseInt(element.ID),\r\n Lat: parseFloat(element.LAT),\r\n lng: parseFloat(element.LON),\r\n name: element.SITENAME,\r\n zoom: 9,\r\n icon: { url: '/assets/img/map/iconoSites.png', scaledSize: { height: 45, width: 45 } },\r\n owner: element.OWNERNAME,\r\n show: true,\r\n VerticalMarket:element.VERTMARKETDESCRIPTION,\r\n HasContract:element.HASCONTRACT? \"Yes\":\"No\",\r\n Active:element.ACTIVE,\r\n sale:element.SALESSITE == true ? \"Yes\":\"No\"\r\n });\r\n } else {\r\n dataSite.push({\r\n ID: parseInt(element.ID),\r\n Lat: parseFloat(element.LAT),\r\n lng: parseFloat(element.LON),\r\n name: element.SITENAME,\r\n zoom: 9,\r\n icon: { url: '/assets/img/map/iconoSites.png', scaledSize: { height: 45, width: 45 } },\r\n owner: element.OWNERNAME,\r\n show: false,\r\n VerticalMarket:element.VERTMARKETDESCRIPTION,\r\n HasContract:element.HASCONTRACT? \"Yes\":\"No\"\r\n });\r\n }\r\n });\r\n // this._interfacectrlmapService.POI = dataSite;\r\n\r\n // this._interfacectrlmapService.POI.unshift(result[0])\r\n\r\n\r\n if(datos[0].RESOURCES != undefined){\r\n let recursos = datos[0].RESOURCES.split(\",\");\r\n let recursosIDS = datos[0].RESOURCESIDS.split(\",\");\r\n console.log('Recursos ', recursos);\r\n console.log('Resources ', resources)\r\n resources.forEach((element,index) => {\r\n if(element.CONTACTNAME != \"\"){\r\n this.loadInfo.resources.push(element)\r\n }\r\n recursosIDS.forEach(recurso => {\r\n // if(element.CONTACTNAME.trim() == recurso.trim()){\r\n // this.recursos.push(element.ID)\r\n // }\r\n if(element.ID == Number(recurso)){\r\n this.recursos.push(element.ID)\r\n }\r\n });\r\n });\r\n console.log('Recursos IDS ', this.recursos);\r\n } else {\r\n resources.forEach((element,index) => {\r\n if(element.CONTACTNAME != \"\"){\r\n this.loadInfo.resources.push(element)\r\n }\r\n })\r\n }\r\n\r\n\r\n if(datos[0].CUSTOMERPO != null){\r\n this.newSWO.get('customerpo').setValue(datos[0].CUSTOMERPO);\r\n this.loadInfo.customerpo = datos[0].CUSTOMERPO\r\n } else {\r\n this.loadInfo.customerpo = \"\"\r\n }\r\n\r\n if(datos[0].REASONFORSERVICE != null){\r\n this.newSWO.get('reasonforservice').setValue(datos[0].REASONFORSERVICE);\r\n this.loadInfo.reasonforservice = datos[0].REASONFORSERVICE\r\n } else {\r\n this.loadInfo.reasonforservice = \"\"\r\n }\r\n\r\n if(datos[0].CALLAHEAD != null){\r\n this.newSWO.get('callahead').setValue(datos[0].CALLAHEAD);\r\n this.callahead = datos[0].CALLAHEAD\r\n } else {\r\n this.callahead = false\r\n }\r\n\r\n if(datos[0].REQDATE != null){\r\n this.newSWO.get('requestdate').setValue(new Date(datos[0].REQDATE).getTime());\r\n this.reqDate.showDate = new Date(datos[0].REQDATE).getTime()\r\n } else {\r\n this.reqDate.showDate = new Date().getTime()\r\n }\r\n\r\n if(datos[0].SCHEDULEDATE != null){\r\n this.newSWO.get('scheduledate').setValue(new Date(datos[0].SCHEDULEDATE).getTime());\r\n this.schedulatedDate.showDate = new Date(datos[0].SCHEDULEDATE).getTime()\r\n } else {\r\n this.schedulatedDate.showDate = new Date().getTime()\r\n }\r\n\r\n if(datos[0].SERVESTIMATEHOURS != null){\r\n this.newSWO.get('serviceestimatedhours').setValue(datos[0].SERVESTIMATEHOURS);\r\n this.serviceestimatedhours = datos[0].SERVESTIMATEHOURS\r\n } else {\r\n this.serviceestimatedhours = \"\"\r\n }\r\n\r\n if(datos[0].SERVCONFIRMED != null){\r\n this.newSWO.get('serviceconfirmed').setValue(datos[0].SERVCONFIRMED);\r\n this.serviceconfirmed = datos[0].SERVCONFIRMED;\r\n }else {\r\n this.serviceconfirmed = false\r\n }\r\n\r\n\r\n Status.forEach((element,index) => {\r\n if(element.STATUS != \"\"){\r\n this.loadInfo.status.push(element)\r\n }\r\n if(element.ID == datos[0].SERVICESTATUSID){\r\n this.newSWO.get('statusid').setValue(element.ID);\r\n this.status = element.ID\r\n }\r\n });\r\n // if(datos[0].PROJECTID != undefined){\r\n // this.projectID = datos[0].PROJECTID\r\n // } else {\r\n // this.projectID = \"\"\r\n // }\r\n if(datos[0].SERVICEID != undefined){\r\n this.serviceID = datos[0].SERVICEID\r\n } else {\r\n this.serviceID = \"\"\r\n }\r\n // localStorage.removeItem('newSwoEdit')\r\n // this.SearchAllSwo()\r\n // })\r\n })\r\n })\r\n })\r\n })\r\n })\r\n })\r\n })\r\n\r\n /***Selects onDemand */\r\n\r\n let mythis = this;\r\n this.siteDataSource = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.GetAllInfoDinamico('Get_ServiceSites',loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n console.log(data)\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n this.requestDataSource = new CustomStore({\r\n key: \"ID\",\r\n useDefaultSearch: false,\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \"je\"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.contactService.GetContactByName(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n console.log(data);\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n this.projectDataSource = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == \"\" || loadOptions.searchValue == undefined) {\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.MapInformationService.GetAllInfoDinamico('Get_SalesProjectList',loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n console.log(data)\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n this.ResponsibleDataSource = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n return mythis.MapInformationService.GetAllInfo('Get_EmployeeListAll')\r\n .toPromise()\r\n .then((data: any) => {\r\n console.log(data)\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n })\r\n\r\n this.swoService.GetTemplates('WOReport').subscribe(result => {\r\n this.templates = []\r\n console.log('Templates');\r\n console.log(result);\r\n this.templatesO = result;\r\n this.templatesO.forEach(element => {\r\n this.templates.push(element.CLIENTNAME);\r\n });\r\n this.templates.push(\"Template III\")\r\n });\r\n }\r\n templates:any[]=[]\r\n templatesO:any[]=[]\r\n\r\n SaveInfo(){\r\n if(this.newSWO.value.callahead){this.newSWO.value.callahead = 1} else {this.newSWO.value.callahead = 0}\r\n if(this.newSWO.value.serviceconfirmed){this.newSWO.value.serviceconfirmed = 1} else {this.newSWO.value.serviceconfirmed = 0}\r\n\r\n let resourcesString = \"\";\r\n if(this.newSWO.value.resources.length != 0){\r\n this.newSWO.value.resources.forEach((element,index) => {\r\n if(resourcesString == \"\"){\r\n resourcesString += element.toString()\r\n } else {\r\n resourcesString += \",\"+element.toString()\r\n }\r\n });\r\n\r\n } else {\r\n resourcesString = \"0\"\r\n }\r\n\r\n let pmtasks = \"\"\r\n if(this.newSWO.value.pmtasks.length != 0){\r\n this.newSWO.value.pmtasks.forEach((element,index) => {\r\n if(index == 0){\r\n pmtasks += element.toString()\r\n } else {\r\n pmtasks += \",\"+element.toString()\r\n }\r\n });\r\n\r\n } else {\r\n }\r\n\r\n this.newSWO.value.method = \"Insert_ServiceCU\"\r\n\r\n this.newSWO.value.requestdate = new Date(this.newSWO.value.requestdate)\r\n // this.newSWO.value.scheduledate = new Date(this.newSWO.value.scheduledate)\r\n this.newSWO.value.scheduledate = this.pipeDate.transform(this.newSWO.value.scheduledate, 'MM/dd/yyyy hh:mm a')\r\n \r\n\r\n this.newSWO.value.userid = localStorage.getItem('customerid')\r\n\r\n let formValue = this.newSWO.value\r\n\r\n\r\n formValue.serviceid = this.servicesid\r\n\r\n let dataFinal\r\n\r\n dataFinal = {\r\n serviceid:formValue.serviceid,\r\n siteid:formValue.siteid,\r\n customerpo:formValue.customerpo,\r\n requestdate:formValue.requestdate,\r\n callahead:formValue.callahead,\r\n serviceconfirmed:formValue.serviceconfirmed,\r\n priorityid:formValue.priorityid,\r\n projectid:formValue.projectid,\r\n servicetype:formValue.servicetype,\r\n servicecategoryid:formValue.servicecategoryid,\r\n resources:resourcesString,\r\n serviceestimatedhours:formValue.serviceestimatedhours,\r\n scheduledate:formValue.scheduledate,\r\n statusid:formValue.statusid,\r\n reasonforservice:formValue.reasonforservice,\r\n servicedoneby:formValue.servicedoneby,\r\n subcontractorid:0,\r\n pmtasks:pmtasks,\r\n method:\"Insert_ServiceCU\"\r\n }\r\n\r\n formValue.requestedbyid ? dataFinal.requestedbyid = formValue.requestedbyid : '';\r\n\r\n console.log(dataFinal)\r\n\r\n const searchTimeSheet={\r\n method: 'GetTimeSheets',\r\n serviceid:this.serviceID,\r\n timesheetid:0,\r\n taskid:0\r\n }\r\n if(formValue.statusid == 3){\r\n this.MapInformationService.SaveInfoSites(searchTimeSheet)\r\n .subscribe(res=>{\r\n if (res.length > 0){\r\n dataFinal.servdonedate = new Date()\r\n this.MapInformationService.SaveInfoSites(dataFinal)\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n this.GetAllInfo(this.serviceID)\r\n this.toast.success(this.translate.instant('msgUpdSucc'));\r\n this.onsubmit.emit(true);\r\n })\r\n } else {\r\n this.toast.warning(\"Please, complete the Service Hours information\")\r\n }\r\n })\r\n } else {\r\n this.MapInformationService.SaveInfoSites(dataFinal)\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n this.GetAllInfo(this.serviceID);\r\n this.toast.success(this.translate.instant('msgUpdSucc'));\r\n this.onsubmit.emit(true);\r\n })\r\n }\r\n }\r\n\r\n initVarible(){\r\n this.servicesid = \"\"\r\n this.sitename = \"\"\r\n this.siteAddress = \"\"\r\n this.request = \"\"\r\n this.callahead = \"\"\r\n this.serviceconfirmed = \"\"\r\n this.loadInfo.customerpo = \"\"\r\n this.priority = \"\"\r\n this.salesProject = \"\"\r\n this.pmtype = []\r\n this.type = \"\"\r\n this.responsible = \"\"\r\n this.recursos = []\r\n this.serviceestimatedhours = \"\"\r\n this.status = \"\"\r\n this.loadInfo.reasonforservice = \"\"\r\n }\r\n\r\n editSalesProject(){}\r\n\r\n initForm(){\r\n this.newSWO = new FormGroup({\r\n serviceid: new FormControl({ value: '', disabled: true }, []),\r\n siteid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n servicetype: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n servicecategoryid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n requestedbyid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n requestdate: new FormControl(\"\"),\r\n customerpo: new FormControl({ value: '', disabled: false }, []),\r\n userid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n resources: new FormControl({ value: '', disabled: false }, []),\r\n serviceestimatedhours: new FormControl(''),\r\n scheduledate: new FormControl({ value: \"\", disabled: false }, [Validators.required]),\r\n callahead: new FormControl(false),\r\n serviceconfirmed: new FormControl(false),\r\n projectid: new FormControl({ value: '', disabled: false }, []),\r\n priorityid: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n reasonforservice: new FormControl(''),\r\n Notify_Technician: new FormControl(false),\r\n statusid: new FormControl({ value: 0, disabled: false }, []),\r\n siteAddress: new FormControl({ value: \"\", disabled: false }, []),\r\n pmtasks: new FormControl({ value: \"\", disabled: false }, []),\r\n servicedoneby: new FormControl({ value: \"\", disabled: false }, []),\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SignaturePadModule } from 'angular2-signaturepad';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport { TaskListModule } from 'src/app/shared/task-list/task-list.module';\r\nimport { NewContactModule } from 'src/app/shared/new-contact/new-contact.module';\r\nimport { DashboardModule } from 'src/app/shared/shared-dashboard/dashboard.module';\r\nimport { NewEmployeeModule } from 'src/app/shared/new-employee/new-employee.module';\r\nimport { ServiceListModule } from 'src/app/shared/service-list/service-list.module';\r\nimport { ReportViewerModule } from 'src/app/shared/report-viewer/report-viewer.module';\r\nimport { SharedDatagridModule } from 'src/app/shared/shared-datagrid/shared-datagrid.module';\r\nimport { ScheduleValuesModule } from 'src/app/shared/schedule-values/schedule-values.module';\r\n\r\nimport { EditServiceWorkOrderComponent } from './edit-service-work-order.component';\r\n\r\nimport { DxFormModule, DxToolbarModule, DxNumberBoxModule,DxAccordionModule,DxFileUploaderModule,DxDropDownButtonModule, DxButtonGroupModule, DxAutocompleteModule, DxButtonModule, DxCheckBoxModule, DxContextMenuModule, DxDateBoxModule, DxDropDownBoxModule, DxGanttModule, DxPopupModule, DxRadioGroupModule, DxSchedulerModule, DxScrollViewModule, DxSelectBoxModule, DxSliderModule, DxTabPanelModule, DxTextBoxModule, DxTreeViewModule, DxDataGridComponent, DxDataGridModule, DxTagBoxModule, DxTextAreaModule, } from 'devextreme-angular';\r\n\r\n@NgModule({\r\n declarations: [\r\n EditServiceWorkOrderComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n TaskListModule,\r\n DxTreeViewModule,\r\n DxDropDownBoxModule,\r\n DxAccordionModule,\r\n DxTabPanelModule,\r\n DxButtonModule,\r\n DxContextMenuModule,\r\n DxSchedulerModule,\r\n DxDateBoxModule,\r\n DxGanttModule,\r\n DxTextBoxModule,\r\n DxRadioGroupModule,\r\n DxCheckBoxModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxAutocompleteModule,\r\n DxSelectBoxModule,\r\n DxSliderModule,\r\n ServiceListModule,\r\n DashboardModule,\r\n DxDataGridModule,\r\n DxTagBoxModule,\r\n DxButtonGroupModule,\r\n DxFileUploaderModule,\r\n DxDropDownButtonModule,\r\n SharedDatagridModule,\r\n ReportViewerModule,\r\n SignaturePadModule,\r\n DxNumberBoxModule,\r\n DxToolbarModule,\r\n DxTextAreaModule,\r\n DxFormModule,\r\n ScheduleValuesModule,\r\n NewContactModule,\r\n NewEmployeeModule\r\n ],\r\n exports: [ EditServiceWorkOrderComponent ]\r\n})\r\nexport class EditServiceWorkOrderModule { }\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MdbWysiwygModule } from 'mdb-wysiwyg';\r\nimport { MdbSortableModule } from 'mdb-sortable';\r\nimport { MdbFileUploadModule } from 'mdb-file-upload';\r\nimport { AgmCoreModule } from '@agm/core';\r\nimport { MDBBootstrapModulesPro, ToastModule } from 'ng-uikit-pro-standard';\r\nimport { AngularFontAwesomeModule } from 'angular-font-awesome';\r\nimport { SearchPipe } from '../custom-pipe/SearchPipe';\r\nimport { GetTypePipe } from '../custom-pipe/GetTypePipe';\r\nimport { KeysPipe } from '../custom-pipe/KeysPipe';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { TruncatePipe } from '../custom-pipe/TruncatePipe';\r\n@NgModule({\r\n declarations: [\r\n KeysPipe,\r\n GetTypePipe,\r\n SearchPipe,\r\n TruncatePipe\r\n ],\r\n imports: [\r\n CommonModule,\r\n MDBBootstrapModulesPro.forRoot(),\r\n AgmCoreModule.forRoot({\r\n apiKey: 'AIzaSyD-LC1IRlirpLm8n6GjaCLTsR9cTJ_NT68',\r\n libraries: ['places']\r\n }),\r\n MdbFileUploadModule,\r\n MdbSortableModule,\r\n MdbWysiwygModule,\r\n AngularFontAwesomeModule,\r\n TranslateModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n HttpClientModule,\r\n\r\n ],\r\n exports: [\r\n MDBBootstrapModulesPro,\r\n AgmCoreModule,\r\n MdbFileUploadModule,\r\n MdbSortableModule,\r\n MdbWysiwygModule,\r\n AngularFontAwesomeModule,\r\n KeysPipe,\r\n GetTypePipe,\r\n SearchPipe,\r\n TruncatePipe,\r\n TranslateModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n HttpClientModule,\r\n\r\n ],\r\n schemas: [NO_ERRORS_SCHEMA]\r\n})\r\nexport class MdbGlobalModule { }\r\n","export default \".dx-icon-edit-button-addrow {\\n color: black;\\n font-size: 17px !important;\\n font-weight: bold;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL21lbW9yaXplZC10YXNrL0U6XFxEZXZcXENVQkVURU1QXFxuZXdjdWJlL3NyY1xcYXBwXFxzaGFyZWRcXG1lbW9yaXplZC10YXNrXFxtZW1vcml6ZWQtdGFzay5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL21lbW9yaXplZC10YXNrL21lbW9yaXplZC10YXNrLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksWUFBQTtFQUNBLDBCQUFBO0VBQ0EsaUJBQUE7QUNDSiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9tZW1vcml6ZWQtdGFzay9tZW1vcml6ZWQtdGFzay5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5keC1pY29uLWVkaXQtYnV0dG9uLWFkZHJvd3tcclxuICAgIGNvbG9yOiBibGFjaztcclxuICAgIGZvbnQtc2l6ZTogMTdweCAhaW1wb3J0YW50O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn0iLCIuZHgtaWNvbi1lZGl0LWJ1dHRvbi1hZGRyb3cge1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtc2l6ZTogMTdweCAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogYm9sZDtcbn0iXX0= */\"","import { ToastService } from 'ng-uikit-pro-standard';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { TaskService } from 'src/app/services/task.service';\r\nimport { Component, Input, OnInit, SimpleChanges } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'app-memorized-task',\r\n templateUrl: './memorized-task.component.html',\r\n styleUrls: ['./memorized-task.component.scss']\r\n})\r\nexport class MemorizedTaskComponent implements OnInit {\r\n\r\n @Input() projectid: any;\r\n @Input() listEmployees: any;\r\n\r\n popupNewSummaryMemorize: boolean = false;\r\n formSummaryMemorize: FormGroup;\r\n cancelButtonSummaryMemorize: any;\r\n saveButtonSummaryMemorize: any;\r\n\r\n popupNewTaskMemorize: boolean = false;\r\n formTaskMemorize: FormGroup;\r\n cancelButtonMemorizeTasK: any;\r\n saveButtonMemorizeTasK: any;\r\n\r\n cancelButtonImportMemorizeTasK: any;\r\n saveButtonImportMemorizeTasK:any;\r\n disableImport: boolean = true;\r\n rowSelectedMemorizeTasks: any = [];\r\n salesCategorySelect: any = [];\r\n popupMemorizedTask: boolean = false;\r\n dataSummaryMemorizeTask: any = [];\r\n dataMemorizeTask: any = [];\r\n\r\n prioritySelect: any;\r\n employeeSelect: any = [];\r\n categorySelect: any;\r\n categoriesMemorize: any;\r\n\r\n constructor(\r\n private toast: ToastService,\r\n private taskService: TaskService,\r\n private translate:TranslateService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.cancelButtonMemorizeTasK = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.popupNewTaskMemorize = false;\r\n },\r\n };\r\n\r\n this.saveButtonMemorizeTasK = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.saveUpdateMemorizeTask();\r\n },\r\n };\r\n\r\n this.cancelButtonSummaryMemorize = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.popupNewSummaryMemorize = false;\r\n },\r\n };\r\n\r\n this.saveButtonSummaryMemorize = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.saveUpdateSummaryMemorize();\r\n },\r\n };\r\n\r\n this.taskService.GetTaskCategories().subscribe(result => {\r\n this.categorySelect = result;\r\n });\r\n\r\n // this.taskService.GetTaskEmployees().subscribe(result => {\r\n // console.log('Employee Aqui x2');\r\n // this.employeeSelect = result;\r\n // });\r\n\r\n this.taskService.GetTaskPriorities().subscribe(result => {\r\n this.prioritySelect = result;\r\n });\r\n\r\n this.taskService.GeneralService({method: 'Estimates_Get_ProjectSalesCategory'}).subscribe(result=>{\r\n // console.log(result);\r\n this.salesCategorySelect = result;\r\n })\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n // console.log(changes);\r\n if(this.employeeSelect.length==0 && changes.listEmployees !== undefined){\r\n this.employeeSelect = changes.listEmployees.currentValue;\r\n // console.log('Lista de empleados on changes');\r\n }else if(changes.listEmployees==null && this.employeeSelect.length==0){\r\n this.taskService.GetTaskEmployees().subscribe(result => {\r\n console.log('Llamando servicio de employees')\r\n this.employeeSelect = result;\r\n });\r\n }\r\n }\r\n\r\n onToolbarPreparing(e) {\r\n e.toolbarOptions.items.unshift({\r\n location: 'before',\r\n template: 'buttonsTask'\r\n });\r\n }\r\n\r\n prepareRowPart(info){\r\n if (info.rowType === \"data\") {\r\n if (info.data.MILESTONEID2 == 1) {\r\n info.rowElement.style.backgroundColor = \"#e6c7a7\";\r\n }\r\n }\r\n }\r\n\r\n mdMemorizeTask(){\r\n console.log('Voy Acá ');\r\n this.popupMemorizedTask=true;\r\n this.dataMemorizeTask.length==0 ? this.getMemorizeTasks() : '';\r\n this.dataSummaryMemorizeTask.length==0 ? this.getSummaryMemorize() : '';\r\n }\r\n\r\n //Summary Tasks\r\n getSummaryMemorize(){\r\n this.taskService.Get_ProjectTodoSummaryMemorized(this.projectid).subscribe(result=>{\r\n // console.log('Summary Memorize ', result);\r\n this.dataSummaryMemorizeTask = result;\r\n })\r\n }\r\n\r\n getMemorizeTasks(){\r\n this.taskService.Get_ProjectTodoMemorized(this.projectid).subscribe(result=>{\r\n // console.log('Memorize Task', result);\r\n this.dataMemorizeTask = result;\r\n // let categories = [];\r\n result.forEach(async (element, i) => {\r\n let obj = {method: 'Get_ProjectTodoMemorizedCategoriesByMemorizedID', mtaskid: element.ID}\r\n this.taskService.GeneralService(obj).subscribe(async (result)=>{\r\n // console.log('Results ',result);\r\n // categories.push(result);\r\n let category = [];\r\n let categoryId = [];\r\n result.map((x,j)=>{\r\n let found = this.salesCategorySelect.find(el=>el.ID==x.PCATID);\r\n // console.log('Encontrado ', found);\r\n if(found){\r\n category.push(found.PROJECTSLSCATEGORY);\r\n categoryId.push(found.ID);\r\n }\r\n if(result.length==j+1){\r\n // console.log('Category array ', category);\r\n this.dataMemorizeTask[i].categories = category.join(',');\r\n this.dataMemorizeTask[i].categoryIDs = categoryId.join(',');\r\n }\r\n })\r\n })\r\n });\r\n })\r\n }\r\n\r\n //New Summary Memorize Task\r\n mdNewSummaryMemorizeTask(){\r\n this.popupNewSummaryMemorize = true;\r\n\r\n this.formSummaryMemorize = new FormGroup({\r\n name: new FormControl('', []),\r\n order: new FormControl('', []),\r\n id: new FormControl(0, []),\r\n })\r\n }\r\n\r\n saveUpdateSummaryMemorize(){\r\n let form = this.formSummaryMemorize.value;\r\n // console.log(form);\r\n form.method = 'Insert_ProjectTodoSummaryMemorizedCE';\r\n this.taskService.Insert_ProjectTodoSummaryMemorizedCE(form).subscribe(result=>{\r\n // console.log(result);\r\n this.toast.success(this.translate.instant('ModalTaskManagementMemNSumTask.msgUpdSucc'));\r\n this.popupNewSummaryMemorize = false;\r\n this.getSummaryMemorize();\r\n })\r\n }\r\n\r\n formatDuration(DURATION) {\r\n let durat = DURATION ? DURATION.toString().split('.') : ['', ''];\r\n durat[0] = durat[0] ? durat[0].substr(0, 2).padStart(2, '0') : '00';\r\n durat[1] = durat[1] ? durat[1].substr(0, 2).padEnd(2, '0') : '00';\r\n\r\n return durat[0] + ':' + durat[1];\r\n }\r\n\r\n editSummaryMemorize(data){\r\n // console.log(data);\r\n this.formSummaryMemorize = new FormGroup({\r\n name: new FormControl(data.NAME, []),\r\n order: new FormControl(data.SEQUENCE3, []),\r\n id: new FormControl(data.ID, []),\r\n })\r\n this.popupNewSummaryMemorize = true;\r\n }\r\n\r\n //New Memorize Task\r\n mdNewMemorizeTask(){\r\n this.popupNewTaskMemorize = true;\r\n this.initNewMemorizeForm();\r\n }\r\n\r\n initNewMemorizeForm(){\r\n this.formTaskMemorize = new FormGroup({\r\n taskname: new FormControl('', []),\r\n taskresponsible: new FormControl('', []),\r\n taskpriotirty: new FormControl('', []),\r\n taskarea: new FormControl('', []),\r\n tasksort: new FormControl('', []),\r\n taskduration: new FormControl('', []),\r\n taskismstone: new FormControl('', []),\r\n taskcategoryid: new FormControl('', []),\r\n taskauotadd: new FormControl('', []),\r\n tasknumberofdays: new FormControl(null, []),\r\n tasksalescategory: new FormControl('', []),\r\n memorizedtaskid: new FormControl(0, []),\r\n memorizedsumamryid: new FormControl('', []),\r\n })\r\n if(this.salesCategorySelect.length==0){\r\n this.taskService.GeneralService({method: 'Estimates_Get_ProjectSalesCategory'}).subscribe(result=>{\r\n // console.log(result);\r\n this.salesCategorySelect = result;\r\n })\r\n }\r\n }\r\n\r\n saveUpdateMemorizeTask(){\r\n let form = this.formTaskMemorize.value;\r\n form.taskismstone = form.taskismstone==true ? 1 : 0;\r\n form.taskauotadd = form.taskauotadd==true ? 1 : 0;\r\n form.method = 'Insert_Upadte_MemorizeTaskCE';\r\n if(this.categoriesMemorize){\r\n form.tasksalescategory = this.categoriesMemorize.join(',');\r\n }\r\n form.taskduration\r\n let duration = [];\r\n\r\n duration[0] = form.taskduration.substr(0, 2);\r\n duration[1] = form.taskduration.substr(2, 2);\r\n form.taskduration = duration[0]+'.'+duration[1];\r\n\r\n\r\n console.log(form);\r\n this.taskService.Insert_Upadte_MemorizeTaskCE(form).subscribe(result=>{\r\n // console.log(result);\r\n this.toast.success(this.translate.instant('ModalTaskManagementMemNSumTask.msgUpdSucc'));\r\n this.popupNewTaskMemorize = false;\r\n this.getMemorizeTasks();\r\n })\r\n }\r\n\r\n editMemorize(data){\r\n // console.log(data);\r\n let reponsible = this.employeeSelect.find(el=>el.CONTACTNAME==data.ASSIGNEDSCTO);\r\n if(reponsible!==undefined){ reponsible = reponsible.ID}else{ reponsible = null }\r\n\r\n let category = this.categorySelect.find(el=>el.TODOCATEGORY== data.TODOCATEGORY);\r\n if(category!==undefined){ category= category.ID } else{ category = null};\r\n let priority = this.prioritySelect.find(el=>el.Description == data.PRIORITY);\r\n if(priority!==undefined){ priority = priority.ID } else { priority = null };\r\n let summary = this.dataSummaryMemorizeTask.find(el=>el.NAME == data.Expr1);\r\n if(summary!==undefined){summary = summary.ID }else{ summary = null };\r\n data.MILESTONEID2 = data.MILESTONEID2 == 0 ? false : true;\r\n\r\n data.ESTIMATEDTIME = data.ESTIMATEDTIME ? data.ESTIMATEDTIME+'.00' : '00.00';\r\n let durat = data.ESTIMATEDTIME ? data.ESTIMATEDTIME.toString().split('.') : ['', ''];\r\n\r\n this.formTaskMemorize = new FormGroup({\r\n taskname: new FormControl(data.NAME, []),\r\n taskresponsible: new FormControl(reponsible, []),\r\n taskpriotirty: new FormControl(priority, []),\r\n taskarea: new FormControl(data.AREA, []),\r\n tasksort: new FormControl(data.SORT, []),\r\n taskduration: new FormControl(durat[0] + durat[1], []),\r\n taskismstone: new FormControl(data.MILESTONEID2, []),\r\n taskcategoryid: new FormControl(category, []),\r\n taskauotadd: new FormControl(data.AUTOADD, []),\r\n tasknumberofdays: new FormControl(data.DAYSFROMPSDATE, []),\r\n tasksalescategory: new FormControl(data.categoryIDs ? data.categoryIDs.split(',') : [], []),\r\n memorizedtaskid: new FormControl(data.ID, []),\r\n memorizedsumamryid: new FormControl(summary, []),\r\n })\r\n // console.log(this.formTaskMemorize.value);\r\n this.categoriesMemorize = data.categoryIDs ? data.categoryIDs.split(',').map(x => +x) : [];\r\n // console.log(this.categoriesMemorize);\r\n this.popupNewTaskMemorize = true;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MemorizedTaskComponent } from './memorized-task.component';\r\nimport { MdbGlobalModule } from '../mdb-global.module';\r\nimport { DxTooltipModule, DxButtonModule, DxAccordionModule, DxScrollViewModule, DxTagBoxModule, DxNumberBoxModule, DxDataGridModule, DxCheckBoxModule, DxPopupModule, DxSelectBoxModule, DxTextBoxModule } from 'devextreme-angular';\r\nimport { ProjectCommentsModule } from '../project-comments/project-comments.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [MemorizedTaskComponent],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxAccordionModule,\r\n DxDataGridModule,\r\n DxButtonModule,\r\n DxPopupModule,\r\n DxSelectBoxModule,\r\n DxNumberBoxModule,\r\n DxTextBoxModule,\r\n DxCheckBoxModule,\r\n DxTagBoxModule,\r\n DxScrollViewModule,\r\n DxTooltipModule\r\n ],\r\n exports: [\r\n MemorizedTaskComponent\r\n ]\r\n})\r\nexport class MemorizedTaskModule { }\r\n","export default \".container-favorite li {\\n border: 1px solid gray;\\n padding: 0.5rem;\\n border-radius: 0.125rem;\\n color: #6c757d;\\n}\\n\\n.container-favorite li:hover {\\n background-color: #007bff;\\n color: white;\\n box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);\\n border: 1px solid transparent;\\n border-radius: 0.125rem;\\n}\\n\\n.display-container {\\n display: grid;\\n grid-template-columns: repeat(3, 1fr);\\n grid-gap: 10px;\\n}\\n\\n.b-yellow .dx-button .dx-icon {\\n color: #ffd652 !important;\\n}\\n\\n.dx-field-label {\\n width: 5%;\\n}\\n\\n.dx-field-value:not(.dx-switch):not(.dx-checkbox):not(.dx-button), .dx-field-value-static {\\n width: 95%;\\n}\\n\\n::ng-deep .editor .dx-button-has-icon.dx-button-has-text .dx-icon {\\n color: #495057 !important;\\n}\\n\\n::ng-deep .listEmail .dx-list-item {\\n border-bottom: 1px solid rgba(0, 0, 0, 0.1);\\n}\\n\\n.dx-list-item-content {\\n white-space: nowrap;\\n}\\n\\n::ng-deep .dx-list-item.dx-state-focused {\\n background-color: #D1FC9A;\\n}\\n\\n::ng-deep #emailheader .dx-accordion-item-opened.dx-state-hover > .dx-accordion-item-title {\\n background-color: transparent !important;\\n}\\n\\n::ng-deep #emailheader .dx-accordion-item-opened > .dx-accordion-item-title {\\n background-color: transparent !important;\\n}\\n\\n::ng-deep #emailheader .dx-accordion-item:last-child {\\n box-shadow: none !important;\\n}\\n\\n::ng-deep #emailheader .dx-accordion-item-body {\\n padding: 0;\\n}\\n\\n::ng-deep #emailheader .dx-accordion-item-title .dx-accordion-item-title-caption {\\n left: 1px !important;\\n}\\n\\n#btnGray {\\n border: 1px solid #9fa4ab !important;\\n color: black !important;\\n}\\n\\n::ng-deep #btnGray.dx-button-has-icon.dx-button-has-text .dx-icon {\\n color: #95c83d !important;\\n}\\n\\n::ng-deep .container-m .dx-popup-content {\\n padding-top: 0 !important;\\n}\\n\\n::ng-deep .label-outlin .dx-htmleditor.dx-htmleditor-outlined {\\n box-shadow: none;\\n}\\n\\n::ng-deep .label-outlin .dx-texteditor.dx-editor-underlined {\\n box-shadow: none;\\n}\\n\\n::ng-deep .border-botom-label1 {\\n border-bottom: 1px solid #f0f0f0 !important;\\n}\\n\\n::ng-deep .label-outlin-search .dx-texteditor.dx-editor-underlined {\\n border-bottom: 1px solid #f0f0f0 !important;\\n box-shadow: none;\\n padding-bottom: 0.16rem !important;\\n background-color: #f0f0f0;\\n}\\n\\n::ng-deep .send-email-modal .dx-popup-title.dx-toolbar .dx-toolbar-items-container {\\n height: 42px !important;\\n}\\n\\n::ng-deep .mypopup .dx-popup-content {\\n padding: 0;\\n}\\n\\n#navbar-babycube .nav-item {\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n -webkit-box-align: center;\\n align-items: center;\\n text-align: center;\\n}\\n\\n#navbar-babycube .nav-item a {\\n text-decoration: none;\\n /* Para quitar el subrayado del enlace */\\n}\\n\\n.message {\\n display: -webkit-box;\\n display: flex;\\n margin-bottom: 10px;\\n}\\n\\n.user-message {\\n -webkit-box-orient: horizontal;\\n -webkit-box-direction: reverse;\\n flex-direction: row-reverse;\\n}\\n\\n.assistant-message {\\n -webkit-box-orient: horizontal;\\n -webkit-box-direction: normal;\\n flex-direction: row;\\n}\\n\\n.avatar i {\\n font-size: 40px;\\n color: #0275d8;\\n}\\n\\n.message-content {\\n margin-left: 10px;\\n background-color: white;\\n padding: 10px;\\n border-radius: 4px;\\n box-shadow: 0 1px 2px 2px rgba(0, 0, 0, 0.1);\\n}\\n\\n.user-message .message-content {\\n margin-left: 0;\\n margin-right: 10px;\\n background-color: #edf7ff;\\n}\\n\\n.message-author {\\n font-weight: bold;\\n}\\n\\n.message-text {\\n margin-top: 5px;\\n}\\n\\n.message-time {\\n font-size: 0.85em;\\n color: #999;\\n}\\n\\n.chat-container {\\n position: absolute;\\n top: 0;\\n bottom: 60px;\\n /* Ajusta esto para dejar espacio para el input-container */\\n width: 100%;\\n overflow-y: auto;\\n padding-bottom: 10px;\\n /* Espacio interno para evitar que el contenido toque el input-container */\\n background-color: #f5f5f5;\\n max-height: 90vh;\\n height: calc(100% - 50px);\\n padding: 10px;\\n border-radius: 4px;\\n}\\n\\n.input-container {\\n position: absolute;\\n bottom: 0;\\n width: 100%;\\n background-color: #e8e8e8;\\n padding: 10px;\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-pack: justify;\\n justify-content: space-between;\\n box-shadow: 0 -1px 5px rgba(0, 0, 0, 0.1);\\n}\\n\\n.input-container input {\\n -webkit-box-flex: 1;\\n flex: 1;\\n padding: 10px;\\n margin-right: 10px;\\n}\\n\\n.red-button {\\n background-color: red;\\n color: white;\\n /* Optional: to make the text/icon color white */\\n}\\n\\n.original-button {\\n background-color: blue;\\n /* Adjust to your original button color */\\n color: white;\\n /* Adjust to your original text/icon color */\\n}\\n\\ninput {\\n -webkit-box-flex: 1;\\n flex: 1;\\n padding: 10px;\\n border: 1px solid #ddd;\\n border-radius: 4px;\\n}\\n\\nbutton {\\n margin-left: 10px;\\n padding: 10px 20px;\\n background-color: #007bff;\\n color: white;\\n border: none;\\n border-radius: 4px;\\n cursor: pointer;\\n}\\n\\nbutton:hover {\\n background-color: #0056b3;\\n}\\n\\n::ng-deep .container-m .dx-popup-content {\\n padding-top: 0 !important;\\n}\\n\\n::ng-deep .label-outlin1 .dx-htmleditor.dx-htmleditor-outlined {\\n box-shadow: none;\\n}\\n\\n::ng-deep .label-outlin1 .dx-texteditor.dx-editor-underlined {\\n box-shadow: none;\\n}\\n\\n::ng-deep .label-outlin1 .dx-texteditor-input {\\n background-color: white;\\n}\\n\\n.buttonbot-container {\\n display: -webkit-box;\\n display: flex;\\n justify-content: space-around;\\n padding: 20px;\\n}\\n\\n.buttonbot {\\n background-color: #f8f9fa;\\n border: 1px solid #dee2e6;\\n border-radius: 5px;\\n padding: 15px;\\n text-align: center;\\n cursor: pointer;\\n -webkit-transition: background-color 0.3s ease;\\n transition: background-color 0.3s ease;\\n}\\n\\n/* Hover effect only applies when the button is not clicked */\\n\\n.buttonbot:not(.buttonbot-clicked):hover {\\n background-color: #e2e6ea;\\n}\\n\\n.buttonbot-clicked {\\n background-color: #007bff;\\n /* Change this to your desired color */\\n color: white;\\n /* Optional: Change text color */\\n border-color: #0056b3;\\n /* Optional: Change border color */\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL25hdmJhci1zaWRlYmFyL0U6XFxEZXZcXENVQkVURU1QXFxuZXdjdWJlL3NyY1xcYXBwXFxzaGFyZWRcXG5hdmJhci1zaWRlYmFyXFxuYXZiYXItc2lkZWJhci5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL25hdmJhci1zaWRlYmFyL25hdmJhci1zaWRlYmFyLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usc0JBQUE7RUFDQSxlQUFBO0VBQ0EsdUJBQUE7RUFDQSxjQUFBO0FDQ0Y7O0FEQ0E7RUFDRSx5QkFBQTtFQUNBLFlBQUE7RUFDQSw4RUFBQTtFQUNBLDZCQUFBO0VBQ0EsdUJBQUE7QUNFRjs7QURDQTtFQUNFLGFBQUE7RUFDQSxxQ0FBQTtFQUNBLGNBQUE7QUNFRjs7QURDQTtFQUVFLHlCQUFBO0FDQ0Y7O0FEWUE7RUFDRSxTQUFBO0FDVEY7O0FEWUE7RUFDRSxVQUFBO0FDVEY7O0FEWUE7RUFDRSx5QkFBQTtBQ1RGOztBRHFCQTtFQUNDLDJDQUFBO0FDbEJEOztBRHFCQTtFQUNJLG1CQUFBO0FDbEJKOztBRDBCQTtFQUNJLHlCQUFBO0FDdkJKOztBRDBCQTtFQUNFLHdDQUFBO0FDdkJGOztBRDBCQTtFQUNFLHdDQUFBO0FDdkJGOztBRDBCQTtFQUNFLDJCQUFBO0FDdkJGOztBRDBCQTtFQUNFLFVBQUE7QUN2QkY7O0FEMEJDO0VBQ0Usb0JBQUE7QUN2Qkg7O0FEMkJDO0VBQ0Usb0NBQUE7RUFDQSx1QkFBQTtBQ3hCSDs7QUQyQkU7RUFDQyx5QkFBQTtBQ3hCSDs7QUQ0QkE7RUFDQyx5QkFBQTtBQ3pCRDs7QUQ0QkE7RUFDRSxnQkFBQTtBQ3pCRjs7QUQ0QkE7RUFDRSxnQkFBQTtBQ3pCRjs7QUQ0QkE7RUFDRSwyQ0FBQTtBQ3pCRjs7QUQ0QkE7RUFDRSwyQ0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0NBQUE7RUFDQSx5QkFBQTtBQ3pCRjs7QUQ2QkE7RUFDRSx1QkFBQTtBQzFCRjs7QUQ2QkE7RUFDRSxVQUFBO0FDMUJGOztBRDhCQTtFQUNFLG9CQUFBO0VBQUEsYUFBQTtFQUNBLDRCQUFBO0VBQUEsNkJBQUE7VUFBQSxzQkFBQTtFQUNBLHlCQUFBO1VBQUEsbUJBQUE7RUFDQSxrQkFBQTtBQzNCRjs7QUQ4QkE7RUFDRSxxQkFBQTtFQUF1Qix3Q0FBQTtBQzFCekI7O0FEK0JBO0VBQ0Usb0JBQUE7RUFBQSxhQUFBO0VBQ0EsbUJBQUE7QUM1QkY7O0FEK0JBO0VBQ0UsOEJBQUE7RUFBQSw4QkFBQTtVQUFBLDJCQUFBO0FDNUJGOztBRCtCQTtFQUNFLDhCQUFBO0VBQUEsNkJBQUE7VUFBQSxtQkFBQTtBQzVCRjs7QUQrQkE7RUFDRSxlQUFBO0VBQ0EsY0FBQTtBQzVCRjs7QUQrQkE7RUFDRSxpQkFBQTtFQUNBLHVCQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsNENBQUE7QUM1QkY7O0FEK0JBO0VBQ0UsY0FBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7QUM1QkY7O0FEK0JBO0VBQ0UsaUJBQUE7QUM1QkY7O0FEK0JBO0VBQ0UsZUFBQTtBQzVCRjs7QUQrQkE7RUFDRSxpQkFBQTtFQUNBLFdBQUE7QUM1QkY7O0FEK0JBO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsWUFBQTtFQUFjLDJEQUFBO0VBQ2QsV0FBQTtFQUNBLGdCQUFBO0VBQ0Esb0JBQUE7RUFBc0IsMEVBQUE7RUFDdEIseUJBQUE7RUFDQSxnQkFBQTtFQUNBLHlCQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0FDMUJGOztBRDZCQTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSx5QkFBQTtFQUNBLGFBQUE7RUFDQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtVQUFBLDhCQUFBO0VBQ0EseUNBQUE7QUMxQkY7O0FENkJBO0VBQ0UsbUJBQUE7VUFBQSxPQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0FDMUJGOztBRDZCQTtFQUNFLHFCQUFBO0VBQ0EsWUFBQTtFQUFjLGdEQUFBO0FDekJoQjs7QUQ0QkE7RUFDRSxzQkFBQTtFQUF3Qix5Q0FBQTtFQUN4QixZQUFBO0VBQWMsNENBQUE7QUN2QmhCOztBRDBCQTtFQUNFLG1CQUFBO1VBQUEsT0FBQTtFQUNBLGFBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBO0FDdkJGOztBRDBCQTtFQUNFLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSx5QkFBQTtFQUNBLFlBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0FDdkJGOztBRDBCQTtFQUNFLHlCQUFBO0FDdkJGOztBRDJCQTtFQUNFLHlCQUFBO0FDeEJGOztBRDJCQztFQUNFLGdCQUFBO0FDeEJIOztBRDJCQztFQUNFLGdCQUFBO0FDeEJIOztBRDRCQztFQUNDLHVCQUFBO0FDekJGOztBRDRCQztFQUNDLG9CQUFBO0VBQUEsYUFBQTtFQUNBLDZCQUFBO0VBQ0EsYUFBQTtBQ3pCRjs7QUQ0QkE7RUFDRSx5QkFBQTtFQUNBLHlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxhQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBQ0EsOENBQUE7RUFBQSxzQ0FBQTtBQ3pCRjs7QUQ0QkEsNkRBQUE7O0FBQ0E7RUFDRSx5QkFBQTtBQ3pCRjs7QUQ0QkE7RUFDRSx5QkFBQTtFQUEyQixzQ0FBQTtFQUMzQixZQUFBO0VBQWMsZ0NBQUE7RUFDZCxxQkFBQTtFQUF1QixrQ0FBQTtBQ3RCekIiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvbmF2YmFyLXNpZGViYXIvbmF2YmFyLXNpZGViYXIuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuY29udGFpbmVyLWZhdm9yaXRlIGxpe1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIGdyYXk7XHJcbiAgcGFkZGluZzogMC41cmVtO1xyXG4gIGJvcmRlci1yYWRpdXM6IC4xMjVyZW07XHJcbiAgY29sb3I6IzZjNzU3ZFxyXG59XHJcbi5jb250YWluZXItZmF2b3JpdGUgbGk6aG92ZXJ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgYm94LXNoYWRvdzogMCA1cHggMTFweCAwIHJnYigwIDAgMCAvIDE4JSksIDAgNHB4IDE1cHggMCByZ2IoMCAwIDAgLyAxNSUpO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yYWRpdXM6IC4xMjVyZW07XHJcbn1cclxuXHJcbi5kaXNwbGF5LWNvbnRhaW5lcntcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XHJcbiAgZ3JpZC1nYXA6IDEwcHg7XHJcbn1cclxuXHJcbi5iLXllbGxvdyAuZHgtYnV0dG9uIC5keC1pY29uXHJcbntcclxuICBjb2xvcjpyZ2IoMjU1LCAyMTQsIDgyKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuLy8gQG1lZGlhIChtaW4td2lkdGg6IDQwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpLCAobWluLXdpZHRoOiA4MDBweCkgYW5kIChtYXgtd2lkdGg6IDg1MHB4KVxyXG4vLyB7XHJcbi8vIC5uYXZiYXIuZml4ZWQtdG9wIC5uYXZiYXItY29sbGFwc2UsIC5uYXZiYXIuc3RpY2t5LXRvcCAubmF2YmFyLWNvbGxhcHNlIHtcclxuLy8gICAgIC8vIG1heC1oZWlnaHQ6IDgwMHB4ICFpbXBvcnRhbnQ7XHJcbi8vICAgIG92ZXJmbG93LXg6IG5vbmUgIWltcG9ydGFudDtcclxuLy8gICAgb3ZlcmZsb3cteTogbm9uZSAhaW1wb3J0YW50O1xyXG4vLyB9XHJcbi8vIH1cclxuXHJcbi5keC1maWVsZC1sYWJlbCB7XHJcbiAgd2lkdGg6IDUlO1xyXG59XHJcblxyXG4uZHgtZmllbGQtdmFsdWU6bm90KC5keC1zd2l0Y2gpOm5vdCguZHgtY2hlY2tib3gpOm5vdCguZHgtYnV0dG9uKSwgLmR4LWZpZWxkLXZhbHVlLXN0YXRpYyB7XHJcbiAgd2lkdGg6IDk1JTtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5lZGl0b3IgLmR4LWJ1dHRvbi1oYXMtaWNvbi5keC1idXR0b24taGFzLXRleHQgLmR4LWljb24ge1xyXG4gIGNvbG9yOiAjNDk1MDU3ICFpbXBvcnRhbnQ7XHJcbn1cclxuLy9cclxuLy8gI3RlbXBsYXRlLWJ0biB7XHJcbi8vIGZsb2F0OnJpZ2h0O1xyXG4vLyB9XHJcblxyXG4vL1xyXG4vLyA6Om5nLWRlZXAgLmR4LXRvb2xiYXItYmVmb3JlIHtcclxuLy8gICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbi8vIH1cclxuXHJcbjo6bmctZGVlcCAubGlzdEVtYWlsIC5keC1saXN0LWl0ZW0ge1xyXG4gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtcclxufVxyXG5cclxuLmR4LWxpc3QtaXRlbS1jb250ZW50IHtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi8vXHJcbi8vIDo6bmctZGVlcCAuZHgtbGlzdC1pdGVtLmR4LXN0YXRlLWFjdGl2ZSB7XHJcbi8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDFGQzlBO1xyXG4vLyB9XHJcblxyXG46Om5nLWRlZXAgLmR4LWxpc3QtaXRlbS5keC1zdGF0ZS1mb2N1c2VkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNEMUZDOUE7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAjZW1haWxoZWFkZXIgLmR4LWFjY29yZGlvbi1pdGVtLW9wZW5lZC5keC1zdGF0ZS1ob3ZlciA+IC5keC1hY2NvcmRpb24taXRlbS10aXRsZXtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgI2VtYWlsaGVhZGVyIC5keC1hY2NvcmRpb24taXRlbS1vcGVuZWQgPiAuZHgtYWNjb3JkaW9uLWl0ZW0tdGl0bGV7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxufVxyXG5cclxuOjpuZy1kZWVwICNlbWFpbGhlYWRlciAgLmR4LWFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGR7XHJcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG46Om5nLWRlZXAgI2VtYWlsaGVhZGVyICAuZHgtYWNjb3JkaW9uLWl0ZW0tYm9keXtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4gOjpuZy1kZWVwICNlbWFpbGhlYWRlciAuZHgtYWNjb3JkaW9uLWl0ZW0tdGl0bGUgLmR4LWFjY29yZGlvbi1pdGVtLXRpdGxlLWNhcHRpb257XHJcbiAgIGxlZnQ6IDFweCAhaW1wb3J0YW50O1xyXG4gfVxyXG5cclxuXHJcbiAjYnRuR3JheXtcclxuICAgYm9yZGVyOjFweCBzb2xpZCAjOWZhNGFiICFpbXBvcnRhbnQ7XHJcbiAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xyXG4gfVxyXG5cclxuICA6Om5nLWRlZXAgICNidG5HcmF5LmR4LWJ1dHRvbi1oYXMtaWNvbi5keC1idXR0b24taGFzLXRleHQgLmR4LWljb257XHJcbiAgIGNvbG9yOiAjOTVjODNkICFpbXBvcnRhbnQ7XHJcbiB9XHJcblxyXG5cclxuOjpuZy1kZWVwIC5jb250YWluZXItbSAuZHgtcG9wdXAtY29udGVudHtcclxuIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAubGFiZWwtb3V0bGluIC5keC1odG1sZWRpdG9yLmR4LWh0bWxlZGl0b3Itb3V0bGluZWR7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5sYWJlbC1vdXRsaW4gLmR4LXRleHRlZGl0b3IuZHgtZWRpdG9yLXVuZGVybGluZWR7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5ib3JkZXItYm90b20tbGFiZWwxe1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjBmMGYwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAubGFiZWwtb3V0bGluLXNlYXJjaCAuZHgtdGV4dGVkaXRvci5keC1lZGl0b3ItdW5kZXJsaW5lZHtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YwZjBmMCAhaW1wb3J0YW50O1xyXG4gIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgcGFkZGluZy1ib3R0b206IDAuMTZyZW0gIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xyXG59XHJcblxyXG5cclxuOjpuZy1kZWVwICAuc2VuZC1lbWFpbC1tb2RhbCAuZHgtcG9wdXAtdGl0bGUuZHgtdG9vbGJhciAuZHgtdG9vbGJhci1pdGVtcy1jb250YWluZXJ7XHJcbiAgaGVpZ2h0OiA0MnB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAgLm15cG9wdXAgLmR4LXBvcHVwLWNvbnRlbnQge1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcblxyXG4jbmF2YmFyLWJhYnljdWJlIC5uYXYtaXRlbSB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4jbmF2YmFyLWJhYnljdWJlIC5uYXYtaXRlbSBhIHtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IC8qIFBhcmEgcXVpdGFyIGVsIHN1YnJheWFkbyBkZWwgZW5sYWNlICovXHJcbn1cclxuXHJcblxyXG5cclxuLm1lc3NhZ2Uge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLnVzZXItbWVzc2FnZSB7XHJcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG59XHJcblxyXG4uYXNzaXN0YW50LW1lc3NhZ2Uge1xyXG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbn1cclxuXHJcbi5hdmF0YXIgaSB7XHJcbiAgZm9udC1zaXplOiA0MHB4O1xyXG4gIGNvbG9yOiAjMDI3NWQ4O1xyXG59XHJcblxyXG4ubWVzc2FnZS1jb250ZW50IHtcclxuICBtYXJnaW4tbGVmdDogMTBweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICBwYWRkaW5nOiAxMHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICBib3gtc2hhZG93OiAwIDFweCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuLnVzZXItbWVzc2FnZSAubWVzc2FnZS1jb250ZW50IHtcclxuICBtYXJnaW4tbGVmdDogMDtcclxuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZjdmZjtcclxufVxyXG5cclxuLm1lc3NhZ2UtYXV0aG9yIHtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLm1lc3NhZ2UtdGV4dCB7XHJcbiAgbWFyZ2luLXRvcDogNXB4O1xyXG59XHJcblxyXG4ubWVzc2FnZS10aW1lIHtcclxuICBmb250LXNpemU6IDAuODVlbTtcclxuICBjb2xvcjogIzk5OTtcclxufVxyXG5cclxuLmNoYXQtY29udGFpbmVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGJvdHRvbTogNjBweDsgLyogQWp1c3RhIGVzdG8gcGFyYSBkZWphciBlc3BhY2lvIHBhcmEgZWwgaW5wdXQtY29udGFpbmVyICovXHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgb3ZlcmZsb3cteTogYXV0bztcclxuICBwYWRkaW5nLWJvdHRvbTogMTBweDsgLyogRXNwYWNpbyBpbnRlcm5vIHBhcmEgZXZpdGFyIHF1ZSBlbCBjb250ZW5pZG8gdG9xdWUgZWwgaW5wdXQtY29udGFpbmVyICovXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsgXHJcbiAgbWF4LWhlaWdodDogOTB2aDtcclxuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDUwcHgpO1xyXG4gIHBhZGRpbmc6IDEwcHg7XHJcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4uaW5wdXQtY29udGFpbmVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgYm90dG9tOiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7XHJcbiAgcGFkZGluZzogMTBweDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICBib3gtc2hhZG93OiAwIC0xcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxufVxyXG5cclxuLmlucHV0LWNvbnRhaW5lciBpbnB1dCB7XHJcbiAgZmxleDogMTtcclxuICBwYWRkaW5nOiAxMHB4O1xyXG4gIG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuLnJlZC1idXR0b24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJlZDtcclxuICBjb2xvcjogd2hpdGU7IC8qIE9wdGlvbmFsOiB0byBtYWtlIHRoZSB0ZXh0L2ljb24gY29sb3Igd2hpdGUgKi9cclxufVxyXG5cclxuLm9yaWdpbmFsLWJ1dHRvbiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTsgLyogQWRqdXN0IHRvIHlvdXIgb3JpZ2luYWwgYnV0dG9uIGNvbG9yICovXHJcbiAgY29sb3I6IHdoaXRlOyAvKiBBZGp1c3QgdG8geW91ciBvcmlnaW5hbCB0ZXh0L2ljb24gY29sb3IgKi9cclxufVxyXG5cclxuaW5wdXQge1xyXG4gIGZsZXg6IDE7XHJcbiAgcGFkZGluZzogMTBweDtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xyXG4gIGJvcmRlci1yYWRpdXM6IDRweDtcclxufVxyXG5cclxuYnV0dG9uIHtcclxuICBtYXJnaW4tbGVmdDogMTBweDtcclxuICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbmJ1dHRvbjpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTZiMztcclxufVxyXG5cclxuXHJcbjo6bmctZGVlcCAuY29udGFpbmVyLW0gLmR4LXBvcHVwLWNvbnRlbnR7XHJcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcclxuIH1cclxuIFxyXG4gOjpuZy1kZWVwIC5sYWJlbC1vdXRsaW4xIC5keC1odG1sZWRpdG9yLmR4LWh0bWxlZGl0b3Itb3V0bGluZWR7XHJcbiAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiB9XHJcbiBcclxuIDo6bmctZGVlcCAubGFiZWwtb3V0bGluMSAuZHgtdGV4dGVkaXRvci5keC1lZGl0b3ItdW5kZXJsaW5lZHtcclxuICAgYm94LXNoYWRvdzogbm9uZTtcclxuIH1cclxuXHJcblxyXG4gOjpuZy1kZWVwIC5sYWJlbC1vdXRsaW4xIC5keC10ZXh0ZWRpdG9yLWlucHV0IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuIH1cclxuXHJcbiAuYnV0dG9uYm90LWNvbnRhaW5lciB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICBwYWRkaW5nOiAyMHB4O1xyXG59XHJcblxyXG4uYnV0dG9uYm90IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWUyZTY7XHJcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gIHBhZGRpbmc6IDE1cHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZTtcclxufVxyXG5cclxuLyogSG92ZXIgZWZmZWN0IG9ubHkgYXBwbGllcyB3aGVuIHRoZSBidXR0b24gaXMgbm90IGNsaWNrZWQgKi9cclxuLmJ1dHRvbmJvdDpub3QoLmJ1dHRvbmJvdC1jbGlja2VkKTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTZlYTtcclxufVxyXG5cclxuLmJ1dHRvbmJvdC1jbGlja2VkIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmOyAvKiBDaGFuZ2UgdGhpcyB0byB5b3VyIGRlc2lyZWQgY29sb3IgKi9cclxuICBjb2xvcjogd2hpdGU7IC8qIE9wdGlvbmFsOiBDaGFuZ2UgdGV4dCBjb2xvciAqL1xyXG4gIGJvcmRlci1jb2xvcjogIzAwNTZiMzsgLyogT3B0aW9uYWw6IENoYW5nZSBib3JkZXIgY29sb3IgKi9cclxufSIsIi5jb250YWluZXItZmF2b3JpdGUgbGkge1xuICBib3JkZXI6IDFweCBzb2xpZCBncmF5O1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtO1xuICBjb2xvcjogIzZjNzU3ZDtcbn1cblxuLmNvbnRhaW5lci1mYXZvcml0ZSBsaTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCA1cHggMTFweCAwIHJnYmEoMCwgMCwgMCwgMC4xOCksIDAgNHB4IDE1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMC4xMjVyZW07XG59XG5cbi5kaXNwbGF5LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIGdyaWQtZ2FwOiAxMHB4O1xufVxuXG4uYi15ZWxsb3cgLmR4LWJ1dHRvbiAuZHgtaWNvbiB7XG4gIGNvbG9yOiAjZmZkNjUyICFpbXBvcnRhbnQ7XG59XG5cbi5keC1maWVsZC1sYWJlbCB7XG4gIHdpZHRoOiA1JTtcbn1cblxuLmR4LWZpZWxkLXZhbHVlOm5vdCguZHgtc3dpdGNoKTpub3QoLmR4LWNoZWNrYm94KTpub3QoLmR4LWJ1dHRvbiksIC5keC1maWVsZC12YWx1ZS1zdGF0aWMge1xuICB3aWR0aDogOTUlO1xufVxuXG46Om5nLWRlZXAgLmVkaXRvciAuZHgtYnV0dG9uLWhhcy1pY29uLmR4LWJ1dHRvbi1oYXMtdGV4dCAuZHgtaWNvbiB7XG4gIGNvbG9yOiAjNDk1MDU3ICFpbXBvcnRhbnQ7XG59XG5cbjo6bmctZGVlcCAubGlzdEVtYWlsIC5keC1saXN0LWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4uZHgtbGlzdC1pdGVtLWNvbnRlbnQge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG46Om5nLWRlZXAgLmR4LWxpc3QtaXRlbS5keC1zdGF0ZS1mb2N1c2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0QxRkM5QTtcbn1cblxuOjpuZy1kZWVwICNlbWFpbGhlYWRlciAuZHgtYWNjb3JkaW9uLWl0ZW0tb3BlbmVkLmR4LXN0YXRlLWhvdmVyID4gLmR4LWFjY29yZGlvbi1pdGVtLXRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwICNlbWFpbGhlYWRlciAuZHgtYWNjb3JkaW9uLWl0ZW0tb3BlbmVkID4gLmR4LWFjY29yZGlvbi1pdGVtLXRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwICNlbWFpbGhlYWRlciAuZHgtYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZCB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwICNlbWFpbGhlYWRlciAuZHgtYWNjb3JkaW9uLWl0ZW0tYm9keSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbjo6bmctZGVlcCAjZW1haWxoZWFkZXIgLmR4LWFjY29yZGlvbi1pdGVtLXRpdGxlIC5keC1hY2NvcmRpb24taXRlbS10aXRsZS1jYXB0aW9uIHtcbiAgbGVmdDogMXB4ICFpbXBvcnRhbnQ7XG59XG5cbiNidG5HcmF5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzlmYTRhYiAhaW1wb3J0YW50O1xuICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwICNidG5HcmF5LmR4LWJ1dHRvbi1oYXMtaWNvbi5keC1idXR0b24taGFzLXRleHQgLmR4LWljb24ge1xuICBjb2xvcjogIzk1YzgzZCAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmNvbnRhaW5lci1tIC5keC1wb3B1cC1jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5sYWJlbC1vdXRsaW4gLmR4LWh0bWxlZGl0b3IuZHgtaHRtbGVkaXRvci1vdXRsaW5lZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbjo6bmctZGVlcCAubGFiZWwtb3V0bGluIC5keC10ZXh0ZWRpdG9yLmR4LWVkaXRvci11bmRlcmxpbmVkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuOjpuZy1kZWVwIC5ib3JkZXItYm90b20tbGFiZWwxIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjAgIWltcG9ydGFudDtcbn1cblxuOjpuZy1kZWVwIC5sYWJlbC1vdXRsaW4tc2VhcmNoIC5keC10ZXh0ZWRpdG9yLmR4LWVkaXRvci11bmRlcmxpbmVkIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMGYwZjAgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZy1ib3R0b206IDAuMTZyZW0gIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbn1cblxuOjpuZy1kZWVwIC5zZW5kLWVtYWlsLW1vZGFsIC5keC1wb3B1cC10aXRsZS5keC10b29sYmFyIC5keC10b29sYmFyLWl0ZW1zLWNvbnRhaW5lciB7XG4gIGhlaWdodDogNDJweCAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLm15cG9wdXAgLmR4LXBvcHVwLWNvbnRlbnQge1xuICBwYWRkaW5nOiAwO1xufVxuXG4jbmF2YmFyLWJhYnljdWJlIC5uYXYtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI25hdmJhci1iYWJ5Y3ViZSAubmF2LWl0ZW0gYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLyogUGFyYSBxdWl0YXIgZWwgc3VicmF5YWRvIGRlbCBlbmxhY2UgKi9cbn1cblxuLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4udXNlci1tZXNzYWdlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG4uYXNzaXN0YW50LW1lc3NhZ2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuXG4uYXZhdGFyIGkge1xuICBmb250LXNpemU6IDQwcHg7XG4gIGNvbG9yOiAjMDI3NWQ4O1xufVxuXG4ubWVzc2FnZS1jb250ZW50IHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4udXNlci1tZXNzYWdlIC5tZXNzYWdlLWNvbnRlbnQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRmN2ZmO1xufVxuXG4ubWVzc2FnZS1hdXRob3Ige1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLm1lc3NhZ2UtdGV4dCB7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLm1lc3NhZ2UtdGltZSB7XG4gIGZvbnQtc2l6ZTogMC44NWVtO1xuICBjb2xvcjogIzk5OTtcbn1cblxuLmNoYXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogNjBweDtcbiAgLyogQWp1c3RhIGVzdG8gcGFyYSBkZWphciBlc3BhY2lvIHBhcmEgZWwgaW5wdXQtY29udGFpbmVyICovXG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgLyogRXNwYWNpbyBpbnRlcm5vIHBhcmEgZXZpdGFyIHF1ZSBlbCBjb250ZW5pZG8gdG9xdWUgZWwgaW5wdXQtY29udGFpbmVyICovXG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gIG1heC1oZWlnaHQ6IDkwdmg7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gNTBweCk7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLmlucHV0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODtcbiAgcGFkZGluZzogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBib3gtc2hhZG93OiAwIC0xcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLmlucHV0LWNvbnRhaW5lciBpbnB1dCB7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLnJlZC1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgLyogT3B0aW9uYWw6IHRvIG1ha2UgdGhlIHRleHQvaWNvbiBjb2xvciB3aGl0ZSAqL1xufVxuXG4ub3JpZ2luYWwtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmx1ZTtcbiAgLyogQWRqdXN0IHRvIHlvdXIgb3JpZ2luYWwgYnV0dG9uIGNvbG9yICovXG4gIGNvbG9yOiB3aGl0ZTtcbiAgLyogQWRqdXN0IHRvIHlvdXIgb3JpZ2luYWwgdGV4dC9pY29uIGNvbG9yICovXG59XG5cbmlucHV0IHtcbiAgZmxleDogMTtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG5idXR0b24ge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDU2YjM7XG59XG5cbjo6bmctZGVlcCAuY29udGFpbmVyLW0gLmR4LXBvcHVwLWNvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAgLmxhYmVsLW91dGxpbjEgLmR4LWh0bWxlZGl0b3IuZHgtaHRtbGVkaXRvci1vdXRsaW5lZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbjo6bmctZGVlcCAubGFiZWwtb3V0bGluMSAuZHgtdGV4dGVkaXRvci5keC1lZGl0b3ItdW5kZXJsaW5lZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbjo6bmctZGVlcCAubGFiZWwtb3V0bGluMSAuZHgtdGV4dGVkaXRvci1pbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuXG4uYnV0dG9uYm90LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBwYWRkaW5nOiAyMHB4O1xufVxuXG4uYnV0dG9uYm90IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwYWRkaW5nOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2U7XG59XG5cbi8qIEhvdmVyIGVmZmVjdCBvbmx5IGFwcGxpZXMgd2hlbiB0aGUgYnV0dG9uIGlzIG5vdCBjbGlja2VkICovXG4uYnV0dG9uYm90Om5vdCguYnV0dG9uYm90LWNsaWNrZWQpOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTZlYTtcbn1cblxuLmJ1dHRvbmJvdC1jbGlja2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgLyogQ2hhbmdlIHRoaXMgdG8geW91ciBkZXNpcmVkIGNvbG9yICovXG4gIGNvbG9yOiB3aGl0ZTtcbiAgLyogT3B0aW9uYWw6IENoYW5nZSB0ZXh0IGNvbG9yICovXG4gIGJvcmRlci1jb2xvcjogIzAwNTZiMztcbiAgLyogT3B0aW9uYWw6IENoYW5nZSBib3JkZXIgY29sb3IgKi9cbn0iXX0= */\"","import { TranslateService } from '@ngx-translate/core';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { UserMenuNodes } from 'src/app/models/user-menu-nodes';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { DataService } from \"../data-service/data.service.service\";\r\nimport { EstimateService } from 'src/app/services/estimate.service';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { Address } from 'ngx-google-places-autocomplete/objects/address';\r\nimport { Routes, RouterModule, Router, NavigationEnd, ActivatedRoute } from '@angular/router';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { CompanySettingsService } from 'src/app/services/company-settings.service';\r\nimport { Component, OnInit, Input, Output, EventEmitter, ViewChild, ElementRef, AfterViewChecked } from '@angular/core';\r\nimport { CreateUpdateTaskComponent } from '../create-update-task/create-update-task.component';\r\nimport { NewActivityComponent } from 'src/app/pages/home/new-activity/new-activity.component';\r\nimport { ModalModule, WavesModule, InputsModule, ButtonsModule, ToastService } from 'ng-uikit-pro-standard'\r\nimport { NewEmpleoyeActivitiesComponent } from 'src/app/pages/sales-management/employee-activities/forms/new-empleoye-activities/new-empleoye-activities.component';\r\nimport { NewCustomerComponent } from 'src/app/pages/sales-management/employee-activities/forms/new-customer/new-customer.component';\r\nimport { CreateUpdateSalesProjectComponent } from 'src/app/pages/sales-management/sales-project/create-update-sales-project/create-update-sales-project.component';\r\nimport { ConfigService } from 'src/app/services/config.service';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { ProjectService } from 'src/app/services/project.service';\r\nimport { DxDropDownBoxComponent, DxSelectBoxComponent, DxTreeViewComponent } from 'devextreme-angular';\r\nimport { SimpleViewCommissioningComponent } from 'src/app/pages/simpleView/simple-view-commissioning/simple-view-commissioning.component';\r\nimport { DatePipe, Location } from '@angular/common';\r\n\r\nimport { VoiceRecognitionService } from '../../services/voice-recognition.service';\r\nimport { TextToVoiceService } from '../../services/text-to-voice.service';\r\nimport { DeltaworldService } from 'src/app/services/deltaworld.service';\r\nimport { ApplicationsComponent } from 'src/app/pages/shop/applications/applications.component';\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-navbar-sidebar',\r\n templateUrl: './navbar-sidebar.component.html',\r\n styleUrls: ['./navbar-sidebar.component.scss']\r\n})\r\nexport class NavbarSidebarComponent implements OnInit, AfterViewChecked {\r\n\r\n @ViewChild(\"searchProject\", { static: false }) searchProject: DxSelectBoxComponent;\r\n\r\n // @ViewChild('dataCards', { static: false }) dataCards: SimpleViewCommissioningComponent;\r\n @ViewChild(\"dataCards\", { static: false }) dataCards: SimpleViewCommissioningComponent;\r\n\r\n @ViewChild(\"messagesContainer\", { static: false }) messagesContainer: ElementRef;\r\n\r\n @ViewChild('treeviewType', { static: false }) treeviewType: DxTreeViewComponent;\r\n @ViewChild('treeviewTag', { static: false }) treeviewTag: DxTreeViewComponent;\r\n\r\n\r\n @ViewChild('treeBoxType', { static: false }) treeBoxType: DxDropDownBoxComponent;\r\n @ViewChild('treeBoxTags', { static: false }) treeBoxTags: DxDropDownBoxComponent; \r\n\r\n\r\n\r\n // @ViewChild('ApplicationsComponentFunctions', { static: true }) ApplicationsComponentFunctions: ApplicationsComponent; \r\n\r\n @ViewChild(ApplicationsComponent, { static: true }) ApplicationsComponentFunctions: ApplicationsComponent;\r\n\r\n @ViewChild(DxTreeViewComponent, { static: false }) treeView;\r\n @ViewChild(DxTreeViewComponent, { static: false }) treeView2;\r\n\r\n\r\n emailList: any;\r\n emailPopup = false;\r\n plusSiteButton: any;\r\n plusSubjectemailButton: any;\r\n cancelButtonPopupemail: any;\r\n cleanButtonPopupemail: any;\r\n sendButtonPopupemail: any;\r\n updatetemplateButtonPopupemail: any;\r\n popupVisibleTemplates: boolean;\r\n isMultiline = false;\r\n toolbarButtonOptions: any = {\r\n icon: 'fas fa-layer-group',\r\n stylingMode: 'text',\r\n hint: \"Templates\",\r\n onClick: () => this.popupVisibleTemplates = true,\r\n };\r\n\r\n popupSettings2 = false;\r\n PopupTerms = false;\r\n\r\n defaultVisible: boolean;\r\n withTitleVisible: boolean;\r\n withAnimationOptionsVisible: boolean;\r\n withShadingOptionsVisible: boolean;\r\n\r\n name = '';\r\n isSideBarVisible: boolean = true;\r\n showNavbarCommissioning: boolean = false\r\n userNemu: any;\r\n menu: any;\r\n currentactiveComponents: any;\r\n userName: string;\r\n options: any;\r\n\r\n currentUserId = localStorage.getItem('customerid');\r\n userSetting: any = { lat: 0, long: 0, geoname: '' };\r\n currentUserCompanyId: number = 0;\r\n\r\n // @Input() userName: string;\r\n languageSelect: Array = [\r\n { value: 1, label: 'English', traduction: 'en' },\r\n // { value: 2, label: 'Español', traduction: 'es' },\r\n // { value: 3, label: 'Français', traduction: 'fr' }\r\n ];\r\n currencySelect: Array = [];\r\n timeformSelect: Array;\r\n timezoneSelect: Array = [];\r\n startpageSelect: Array = [];\r\n sesiontimeSelect: Array;\r\n dateformSelect: Array = [];\r\n UserCompanyName: string;\r\n openAI = false;\r\n\r\n skipIntroduction = false;\r\n\r\n appUser: string;\r\n\r\n isRecording: boolean = false;\r\n\r\n savingUserSetting = false;\r\n message: any;\r\n isNavCollapse = false;\r\n typeSupport = [];\r\n currentUrl = '';\r\n @Output() navCollapseOut: EventEmitter = new EventEmitter();\r\n @Output() outputVisibleNav: EventEmitter = new EventEmitter();\r\n\r\n modelChangePassword = {\r\n pass: '',\r\n confirmPass: ''\r\n };\r\n popupTask = false;\r\n popupEmployeeActivity = false;\r\n popupCustomer = false;\r\n popupNewContact = false;\r\n popupCreateSalesProject = false;\r\n popupSWOClient = false;\r\n popupNewRFI = false;\r\n popupPunchList = false;\r\n popupProgressReport = false;\r\n\r\n LinkGettingStarted: string;\r\n LinkCubeFlow: string;\r\n LinkWhatsNew: string;\r\n dashboardURL: string;\r\n\r\n // VARIABLES ALARMAS\r\n\r\n PopupAlarm: boolean = false;\r\n PopupChangeCompany: boolean = false;\r\n PhasesAlarm: any[] = [];\r\n customOperations: Array;\r\n popupPosition: any;\r\n TotalAlarms: number = 0;\r\n enablePopupWorkFlowAlarm: boolean = false;\r\n enablePopupCompaniewAlarm: boolean = false;\r\n\r\n\r\n\r\n cancelButtonTasK: any;\r\n saveButtonTasK: any;\r\n saveNewButtonTasK: any;\r\n saveEditButtonTasK: any;\r\n @ViewChild('newtask', { static: false }) newtask: CreateUpdateTaskComponent;\r\n\r\n cancelButtonNewEmployee: any;\r\n saveButtonNewEmployee: any;\r\n saveNewButtonNewEmployee: any;\r\n saveEditButtonNewEmployee: any;\r\n @ViewChild('newActivity', { static: false }) newActivity: NewEmpleoyeActivitiesComponent;\r\n\r\n cancelButtonNewCustomer: any;\r\n saveButtonNewCustomer: any;\r\n saveNewButtonNewCustomer: any;\r\n saveEditButtonNewCustomer: any;\r\n @ViewChild('newcustomer', { static: false }) newcustomer: NewCustomerComponent;\r\n\r\n cancelButtonNewSales: any;\r\n saveButtonNewSales: any;\r\n saveNewButtonNewSales: any;\r\n saveEditButtonNewSales: any;\r\n @ViewChild('componentSales', { static: false }) componentSales: CreateUpdateSalesProjectComponent;\r\n\r\n @ViewChild('componentCUBEcx', { static: false }) componentCUBEcx: SimpleViewCommissioningComponent;\r\n popupChatbox: boolean = false;\r\n\r\n userInput: string = '';\r\n messages: { author: string, text: string, time: string, authorName: string }[] = [\r\n ];\r\n\r\n messagescopy: { author: string, text: string, time: string, authorName: string }[] = [\r\n ];\r\n\r\n products: any;\r\n product: number;\r\n searchModeOption: string = \"contains\";\r\n searchExprOption: any = \"NAME\";\r\n searchTimeoutOption: number = 200;\r\n minSearchLengthOption: number = 0;\r\n showDataBeforeSearchOption: boolean = false;\r\n clients: any = [];\r\n\r\n clickedButtonIndex: number = -1;\r\n\r\n template = {\r\n id: 0,\r\n text: '',\r\n active: 1,\r\n subject: '',\r\n createdate: '',\r\n updateddate: '',\r\n updatedbyid: '',\r\n tag: '',\r\n metadata: '',\r\n method: 'InsertUpdateNotificationEmailTemplate'\r\n };\r\n\r\n acceptterm: string = \"0\";\r\n\r\n arrayTemplate: any;\r\n allTemplate: any;\r\n\r\n detailEmail: any = [];\r\n selectionModeValueList = 'multiple';\r\n emailCategory: any;\r\n selectionModeValue = 'single';\r\n selectAllModeVlaue = 'page';\r\n isButtonDisabled: boolean = true;\r\n\r\n fromQuickAccess = true;\r\n\r\n regionsSelect: any = [];\r\n\r\n popupSalesLead: boolean = false;\r\n popupNewEstimateQuick: boolean = false\r\n firstFormGroup: FormGroup;\r\n projectslist: CustomStore;\r\n projectName: any = \"\"\r\n popupCreateSalesProject2: boolean = false\r\n addCustomerButton: { icon: string; type: string; onClick: () => void; };\r\n\r\n menuDinamico: any[] = []\r\n\r\n layoutData: any[] = [\r\n {\r\n value: 'Horizontal',\r\n label: 'Horizontal'\r\n },\r\n {\r\n value: 'Vertical',\r\n label: 'Vertical'\r\n },\r\n ]\r\n\r\n\r\n constructor(\r\n private router: Router,\r\n private data: DataService,\r\n private location: Location,\r\n private toast: ToastService,\r\n public userService: UserService,\r\n public translate: TranslateService,\r\n public configService: ConfigService,\r\n public appSettings: AppConfigService,\r\n private activatedRoute: ActivatedRoute,\r\n private generalService: GeneralService,\r\n private ProjectService: ProjectService,\r\n private deltaService: DeltaworldService,\r\n private settingsImage: CompanySettingsService,\r\n private estimateService: EstimateService,\r\n public settingsCompany: CompanySettingsService,\r\n public service: VoiceRecognitionService,\r\n private textToVoiceService: TextToVoiceService,\r\n private MapInformationService: MapInformationService,\r\n ) {\r\n\r\n\r\n\r\n this.service.init();\r\n\r\n\r\n\r\n this.detailEmail = [{\r\n ID: 1,\r\n CompanyName: 'Super Mart of the West',\r\n Address: '702 SW 8th Street',\r\n City: 'Bentonville',\r\n State: 'Arkansas',\r\n Zipcode: 72716,\r\n Phone: '(800) 555-2797',\r\n Fax: '(800) 555-2171',\r\n Website: 'http://www.nowebsitesupermart.com',\r\n }];\r\n\r\n this.emailCategory = [\r\n {\r\n ID: 1,\r\n Name: 'Incoming',\r\n\r\n },\r\n {\r\n ID: 2,\r\n Name: 'Outgoing',\r\n },\r\n {\r\n ID: 3,\r\n Name: 'Draft',\r\n },\r\n {\r\n ID: 4,\r\n Name: 'Delete',\r\n }\r\n ];\r\n\r\n this.emailList = [{\r\n key: '2022/01/04',\r\n items: ['Choose between PPO and HMO Health Plan',\r\n 'Google AdWords Strategy',\r\n 'New Brochures',\r\n 'Update NDA Agreement',\r\n 'Review Product Recall Report by Engineering Team',\r\n 'Review Product Recall Report by Engineering Team',\r\n 'Review Product Recall Report by Engineering Team',\r\n 'Review Product Recall Report by Engineering Team',\r\n 'Choose between PPO and HMO Health Plan',\r\n 'Google AdWords Strategy',\r\n 'New Brochures',\r\n 'Update NDA Agreement',\r\n 'Review Product Recall Report by Engineering Team',\r\n 'Review Product Recall Report by Engineering Team',\r\n 'Review Product Recall Report by Engineering Team',\r\n 'Review Product Recall Report by Engineering Team'\r\n ]\r\n }\r\n ];\r\n\r\n this.arrayTemplate = [{\r\n key: 'Create Templates',\r\n items: [{ subject: 'Save as new template' }],\r\n },\r\n {\r\n key: 'Custom Template',\r\n items: [],\r\n }\r\n ];\r\n\r\n //modales\r\n\r\n\r\n this.plusSubjectemailButton = {\r\n icon: \"fas fa-paperclip\",\r\n type: \"button\",\r\n elementAttr: {\r\n id: 'c-green'\r\n },\r\n onClick: () => {\r\n }\r\n };\r\n\r\n this.cancelButtonPopupemail = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.emailPopup = false;\r\n this.clearTemplate()\r\n this.deleteUpdateTemplate()\r\n },\r\n };\r\n\r\n this.cleanButtonPopupemail = {\r\n text: 'Clear Template',\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.clearTemplate()\r\n },\r\n };\r\n\r\n this.sendButtonPopupemail = {\r\n text: 'Send',\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n\r\n },\r\n };\r\n\r\n this.addCustomerButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n this.popupCreateSalesProject2 = true;\r\n },\r\n };\r\n\r\n this.defaultVisible = false;\r\n this.withTitleVisible = false;\r\n this.withAnimationOptionsVisible = false;\r\n this.withShadingOptionsVisible = false;\r\n\r\n let settings = {\r\n dateFormat: this.appSettings.appConfig.dateFormat,\r\n moneyFormat: this.appSettings.appConfig.moneyFormat,\r\n layout: this.appSettings.appConfig.layout,\r\n startPage: ''\r\n }\r\n this.LinkGettingStarted = this.appSettings.appConfig.LinkGettingStarted;\r\n this.LinkCubeFlow = this.appSettings.appConfig.LinkCubeFlow;\r\n this.LinkWhatsNew = this.appSettings.appConfig.LinkWhatsNew;\r\n this.dashboardURL = this.appSettings.appConfig.dashboardURL;\r\n\r\n\r\n this.userNemu = [];\r\n const isclient = localStorage.getItem('isClient');\r\n if (isclient) {\r\n this.userService.isClient.next(JSON.parse(isclient.toLocaleLowerCase()));\r\n }\r\n\r\n\r\n this.currencySelect = this.appSettings.appConfig.currencyData;\r\n this.dateformSelect = this.appSettings.appConfig.dateFormatData;\r\n this.getRegions();\r\n\r\n if (this.userService.settings.value.languageid == undefined)\r\n this.userService.settings.value.languageid = 1;\r\n\r\n // sessionStorage.setItem('moduleId', '15');\r\n }\r\n\r\n getRegions() {\r\n\r\n var mytoken = localStorage.getItem('token');\r\n\r\n if (mytoken) {\r\n this.estimateService.Get_ProjectRegionID('dummyData').subscribe(result => {\r\n this.regionsSelect = result.map(x => {\r\n x.value = x.Id;\r\n x.label = x.DivisionName;\r\n x.code = x.Id;\r\n return x;\r\n });\r\n })\r\n }\r\n\r\n }\r\n\r\n changeTab(target) {\r\n switch (target.itemIndex) {\r\n case 0:\r\n break\r\n case 1:\r\n //Events\r\n break\r\n case 2:\r\n //Reports\r\n break\r\n }\r\n }\r\n\r\n changeStartPage(obj) {\r\n // this.userSettings.startPage = obj.selectedItem.NCUBELINK;\r\n }\r\n goTraining() {\r\n this.router.navigateByUrl('/Training');\r\n }\r\n\r\n cancelButtonEmail() {\r\n this.emailPopup = false;\r\n this.clearTemplate();\r\n this.deleteUpdateTemplate();\r\n };\r\n\r\n onCompanyChanged(e) {\r\n this.currentUserCompanyId = e.value;\r\n }\r\n\r\n getString(obj) {\r\n return JSON.stringify(obj)\r\n }\r\n\r\n updateDefaultCompany() {\r\n this.PopupChangeCompany = false;\r\n\r\n this.userService.UpdateUserDefaultClient(this.currentUserCompanyId).subscribe(result => {\r\n localStorage.setItem('autoStart', '1');\r\n this.router.navigateByUrl('/login');\r\n });\r\n }\r\n\r\n\r\n getSetting() {\r\n this.userService.Get_UserSettingsCE(localStorage.getItem('customerid')).subscribe(result => {\r\n\r\n if (result.length > 0 && result[0].CLIENTUSERSETTING) {\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n\r\n localStorage.setItem('regionId', result[0].RegionID)\r\n localStorage.setItem('settings', result[0].CLIENTUSERSETTING);\r\n localStorage.setItem('UserCompanyName', result[0].UserCompanyName);\r\n // localStorage.setItem('showbotintro', result[0].SHOWBOTINTRO);\r\n\r\n\r\n // const showBotIntro = localStorage.getItem('showbotintro');\r\n // if (showBotIntro !== null && showBotIntro === '0') {\r\n // this.skipIntroduction = true;\r\n // } \r\n // else{\r\n // this.skipIntroduction = false;\r\n // }\r\n\r\n let language = this.languageSelect.find(x => x.value == obj.languageid);\r\n if (language) {\r\n this.translate.use(language.traduction);\r\n }\r\n\r\n if (obj) {\r\n this.userService.settings.next(obj);\r\n setTimeout(() => {\r\n\r\n this.userService.settings.value.layout = obj.layout\r\n this.userService.settings.value.regionid = obj.regionid\r\n this.userService.settings.value.languageid = obj.languageid\r\n this.userService.settings.value.map = obj.map\r\n this.userService.settings.value.lat = obj.lat\r\n this.userService.settings.value.long = obj.long\r\n\r\n this.userSetting.lat = obj.lat\r\n this.userSetting.long = obj.long\r\n\r\n }, 500);\r\n }\r\n\r\n }\r\n });\r\n }\r\n\r\n dontShow: boolean = true\r\n moduloName: any = \"\"\r\n showLayout: boolean = false\r\n showNavbarCR: boolean = false\r\n dataMenuNavbar:any\r\n\r\n ngAfterViewChecked() {\r\n this.scrollToBottom();\r\n }\r\n\r\n private scrollToBottom(): void {\r\n if (this.messagesContainer) {\r\n this.messagesContainer.nativeElement.scrollTop = this.messagesContainer.nativeElement.scrollHeight;\r\n }\r\n }\r\n\r\n clientplanid:any\r\n ngOnInit() {\r\n\r\n\r\n if (localStorage.getItem('openai')) {\r\n this.modalChatbox();\r\n }\r\n\r\n setTimeout(() => {\r\n this.clientplanid = localStorage.getItem(\"clientplanid\")\r\n }, 2000);\r\n\r\n\r\n this.getTemplatesEmail()\r\n\r\n // Subscribe to the configChanged$ observable\r\n this.appSettings.configChanged$.subscribe(() => {\r\n // Handle the config change event\r\n this.handleConfigChange();\r\n });\r\n\r\n this.router.events.subscribe(event => {\r\n\r\n this.userName = localStorage.getItem('userName');\r\n if ((this.userName != null) && (this.appSettings.appConfig.dashboardURL == null)) {\r\n this.configService.loadConfigFromDB().subscribe(resultsett => {\r\n this.appSettings.expandSettings(resultsett[0])\r\n }, err => {\r\n this.router.navigateByUrl('/home')\r\n }\r\n );\r\n }\r\n\r\n this.UserCompanyName = localStorage.getItem('UserCompanyName');\r\n this.acceptterm = localStorage.getItem('termaccepted');\r\n\r\n if (this.acceptterm == \"0\") {\r\n this.PopupTerms = true;\r\n }\r\n\r\n // this.isClient = this.userService.isClient.value; \r\n\r\n // if (this.componentCUBEcx != undefined){\r\n\r\n // }\r\n\r\n\r\n if (event instanceof NavigationEnd) {\r\n this.currentUrl = event.url;\r\n this.name = (event).url.split(\"/\").slice(-1)[0];\r\n this.dataMenuNavbar = this.name.split(\"?\")[0]\r\n\r\n \r\n\r\n\r\n if (this.name == '' || this.name == 'cartPlans' || this.name == 'completedJobs' || this.name == 'RecoverPasswordCW' || this.name == 'createuserCW' || this.name == 'dashboardTalents' || this.name == 'logincubeworks' || this.name == 'login' || this.name == 'loginUserTemp' || this.name == 'NewAccount' || this.name == 'RecoverPassword' || this.name == 'CompanyRegistration' || this.name == 'clientuser' || this.name == 'Payment' || this.name == 'externaluser' || this.name == 'registerCompany' || this.name == 'companyRegistration' || this.name == 'payment' || this.name == 'plans' || this.name.indexOf('actPass') > -1\r\n || this.name == 'myCart' || this.name == 'applications' || this.name == 'yourOrder' || this.name == 'orderDetail' || this.name == 'order' || this.name == 'newShippingAddress' || this.name == 'shippingAddress' || this.name == 'newPayment' || this.name == 'creditcard' || this.name == 'paymentCart' || this.name == 'productsDetails' || this.name == 'productsCart' || this.name == 'productsCategory'\r\n || this.name == 'ApplicationType' || this.dataMenuNavbar == 'myCart' || this.dataMenuNavbar == 'applications' || this.dataMenuNavbar == 'yourOrder' || this.dataMenuNavbar == 'orderDetail' || this.dataMenuNavbar == 'order' || this.dataMenuNavbar == 'newShippingAddress' || this.dataMenuNavbar == 'shippingAddress' || this.dataMenuNavbar == 'newPayment' || this.dataMenuNavbar == 'creditcard' || this.dataMenuNavbar == 'paymentCart' || this.dataMenuNavbar == 'productsDetails' || this.dataMenuNavbar == 'productsCart' || this.dataMenuNavbar == 'productsCategory'\r\n || this.dataMenuNavbar == 'ApplicationType' || this.dataMenuNavbar == 'ListSystems' || this.dataMenuNavbar == 'MyProjects'\r\n || this.dataMenuNavbar == 'DetailProject' || this.dataMenuNavbar == 'Applicationfiltered' || this.dataMenuNavbar == 'AIShop' \r\n ) {\r\n this.isSideBarVisible = false;\r\n this.dontShow = true\r\n\r\n if (this.dataMenuNavbar == 'myCart' || this.dataMenuNavbar == 'applications' || this.dataMenuNavbar == 'yourOrder' || this.dataMenuNavbar == 'orderDetail' || this.dataMenuNavbar == 'order' || this.dataMenuNavbar == 'newShippingAddress' || this.dataMenuNavbar == 'shippingAddress' || this.dataMenuNavbar == 'newPayment' || this.dataMenuNavbar == 'creditcard' || this.dataMenuNavbar == 'paymentCart' || this.dataMenuNavbar == 'productsDetails' || this.dataMenuNavbar == 'productsCart' || this.dataMenuNavbar == 'productsCategory'\r\n || this.dataMenuNavbar == 'ApplicationType' || this.dataMenuNavbar == 'ListSystems' || this.dataMenuNavbar == 'MyProjects'\r\n || this.dataMenuNavbar == 'DetailProject' || this.dataMenuNavbar == 'Applicationfiltered' || this.dataMenuNavbar == 'AIShop' ) {\r\n this.showNavbarCR = true\r\n } else {\r\n this.showNavbarCR = false\r\n }\r\n\r\n }\r\n else {\r\n this.isSideBarVisible = true;\r\n this.showNavbarCR = false\r\n this.getMenu();\r\n // Agregado por Evander\r\n this.getAlarms()\r\n // Get UserCompanies\r\n // get Settings\r\n this.getSetting()\r\n this.userService.GetUserClients().subscribe(result => {\r\n this.clients = result;\r\n });\r\n\r\n this.currentUserId = localStorage.getItem('customerid');\r\n this.showLayout = localStorage.getItem('isBabyCube') == \"Yes\" ? false : true\r\n\r\n this.currencySelect = this.appSettings.appConfigJson.currencyData;\r\n this.dateformSelect = this.appSettings.appConfigJson.dateFormatData;\r\n if (this.startpageSelect.length == 0) {\r\n\r\n if (this.currentUserId) {\r\n this.userService.Get_UserSettingsCE(this.currentUserId).subscribe(result => {\r\n\r\n if (result.length > 0 && result[0].CLIENTUSERSETTING) {\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n\r\n localStorage.setItem('regionId', result[0].RegionID)\r\n localStorage.setItem('settings', result[0].CLIENTUSERSETTING);\r\n localStorage.setItem('UserCompanyName', result[0].UserCompanyName);\r\n\r\n let language = this.languageSelect.find(x => x.value == obj.languageid);\r\n if (language) {\r\n this.translate.use(language.traduction);\r\n }\r\n\r\n if (obj) {\r\n this.userService.settings.next(obj);\r\n setTimeout(() => {\r\n\r\n this.userService.settings.value.layout = obj.layout\r\n this.userService.settings.value.regionid = obj.regionid\r\n this.userService.settings.value.languageid = obj.languageid\r\n this.userService.settings.value.map = obj.map\r\n this.userService.settings.value.lat = obj.lat\r\n this.userService.settings.value.long = obj.long\r\n this.userSetting.lat = obj.lat\r\n this.userSetting.long = obj.long\r\n }, 500);\r\n }\r\n\r\n }\r\n });\r\n\r\n this.userService.Get_ClientUserStartPagesCE().subscribe(result => {\r\n const infoModules = result.filter(x => x.NCUBELINK != 'NULL');\r\n this.startpageSelect = infoModules.map(x => {\r\n x.value = x.NCUBELINK;\r\n x.label = x.MODULENAME;\r\n x.code = x.NCUBELINK;\r\n return x;\r\n });\r\n });\r\n }\r\n }\r\n\r\n if (localStorage.getItem(\"NavbarHorizontal\") == \"Yes\") {\r\n this.isSideBarVisible = false\r\n this.dontShow = true\r\n this.showNavbarCommissioning = true\r\n const modulo = this.activatedRoute.snapshot.queryParamMap.get(\"moduleName\");\r\n const currentUrl = this.router.routerState.snapshot.url\r\n\r\n if (currentUrl == \"/dashboard\") {\r\n this.moduloName = \"dashboard\"\r\n } else {\r\n if (decodeURIComponent(modulo) == \"Help\") {\r\n this.moduloName = \"\"\r\n } else {\r\n this.moduloName = decodeURIComponent(modulo)\r\n // this.showCardHelp = false\r\n // this.getCards()\r\n }\r\n }\r\n setTimeout(() => {\r\n this.menuDinamico = JSON.parse(localStorage.getItem('userMenu')).userMenuNodes\r\n this.settingsImage.GetImgLogoPath().subscribe(result => {\r\n this.settingsImage.GetDocument(result[0].FILEPATH).subscribe(result2 => {\r\n var data = result2.filestring.substring(0, 5);\r\n let tipo = \"\"\r\n switch (data.toUpperCase()) {\r\n case \"/9J/4\": tipo = \"jpeg\";\r\n break\r\n default:\r\n tipo = \"png\"\r\n break\r\n }\r\n\r\n // this.base64Logo = 'data:image/' + tipo + ';base64,' + result2.filestring;\r\n\r\n if (result2.filestring != '' && result2.filestring != undefined) {\r\n this.base64Logo = 'data:image/' + tipo + ';base64,' + result2.filestring;\r\n } else {\r\n this.base64Logo = ''\r\n }\r\n\r\n })\r\n })\r\n }, 500);\r\n } else {\r\n setTimeout(() => {\r\n this.settingsImage.GetImgLogoPath().subscribe(result => {\r\n this.settingsImage.GetDocument(result[0].FILEPATH).subscribe(result2 => {\r\n var data = result2.filestring.substring(0, 5);\r\n let tipo = \"\"\r\n switch (data.toUpperCase()) {\r\n case \"/9J/4\": tipo = \"jpeg\";\r\n break\r\n default:\r\n tipo = \"png\"\r\n break\r\n }\r\n\r\n if (result2.filestring != '' && result2.filestring != undefined) {\r\n this.base64Logo = 'data:image/' + tipo + ';base64,' + result2.filestring;\r\n } else {\r\n this.base64Logo = ''\r\n }\r\n })\r\n })\r\n }, 500);\r\n }\r\n\r\n\r\n if (localStorage.getItem(\"cubeWorksOnly\") == \"Yes\") {\r\n this.isSideBarVisible = false\r\n this.dontShow = false\r\n }\r\n\r\n }\r\n }\r\n if (event.constructor.name === \"NavigationEnd\") { }\r\n this.outputVisibleNav.emit(this.isSideBarVisible);\r\n\r\n });\r\n\r\n this.typeSupport = [\r\n { value: 1, label: 'Type Support 1' },\r\n ];\r\n // this.languageSelect = [\r\n // { value: 1, label: 'English' },\r\n // { value: 2, label: 'Español' },\r\n // { value: 3, label: 'Français' }\r\n // ];\r\n\r\n this.timeformSelect = [\r\n { value: '1', label: '12 Hours' },\r\n { value: '2', label: '24 Hours' },\r\n ];\r\n\r\n this.timezoneSelect = [\r\n { value: '1', label: '(GMT-11:00) International Date Line West' },\r\n { value: '2', label: '(GMT-11:00) Midway Island' },\r\n { value: '3', label: '(GMT-04:00) Samoa' },\r\n { value: '4', label: '(GMT-10:00) Hawaii' },\r\n { value: '5', label: '(GMT-04:00) Caracas' }\r\n\r\n ];\r\n\r\n // this.startpageSelect = [\r\n // { value: '1', label: 'Option 1' },\r\n // { value: '2', label: 'Option 2' },\r\n // { value: '3', label: 'Option 3' },\r\n // { value: '4', label: 'Option 4' },\r\n // { value: '5', label: 'Option 5' }\r\n\r\n // ];\r\n\r\n this.sesiontimeSelect = [\r\n { value: '1', label: '20 Min' },\r\n { value: '2', label: '30 Min' },\r\n { value: '3', label: '40 Min' },\r\n { value: '4', label: '50 Min' },\r\n { value: '5', label: '60 Min' }\r\n ];\r\n\r\n const storageMessage = localStorage.getItem('messageNav');\r\n if (storageMessage) {\r\n this.message = JSON.parse(storageMessage);\r\n }\r\n\r\n this.cancelButtonTasK = {\r\n text: \"Close\",\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupTask = false;\r\n },\r\n };\r\n\r\n this.saveButtonTasK = {\r\n text: \"Save\",\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.newtask.updateTask(false);\r\n },\r\n };\r\n\r\n this.saveNewButtonTasK = {\r\n text: 'Save & New',\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newtask.updateTask(true)\r\n },\r\n\r\n };\r\n\r\n this.saveEditButtonTasK = {\r\n text: \"Save & Edit \",\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newtask.updateTask(false, true)\r\n },\r\n };\r\n\r\n\r\n // if(localStorage.getItem('customerid') != undefined){\r\n // }\r\n\r\n\r\n }\r\n\r\n openCreateSalesProje() {\r\n this.popupCreateSalesProject = true;\r\n\r\n this.cancelButtonNewSales = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.componentSales.ngOnInit();\r\n this.popupCreateSalesProject = false;\r\n },\r\n };\r\n\r\n this.saveButtonNewSales = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.componentSales.updateSalesProject(1);\r\n },\r\n };\r\n\r\n this.saveNewButtonNewSales = {\r\n text: 'Save & New',\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.componentSales.updateSalesProject(2);\r\n }\r\n };\r\n\r\n this.saveEditButtonNewSales = {\r\n text: this.translate.instant('btnSaveEdit'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.componentSales.updateSalesProject(3);\r\n }\r\n };\r\n }\r\n\r\n openAddCompany() {\r\n this.popupCustomer = true;\r\n\r\n this.cancelButtonNewCustomer = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupCustomer = false;\r\n },\r\n };\r\n\r\n this.saveButtonNewCustomer = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.newcustomer.submitForm(true, false);\r\n },\r\n };\r\n\r\n this.saveNewButtonNewCustomer = {\r\n text: 'Save & New',\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newcustomer.submitForm(false, false);\r\n },\r\n\r\n };\r\n\r\n this.saveEditButtonNewCustomer = {\r\n text: this.translate.instant('btnSaveEdit'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newcustomer.submitForm(true, true);\r\n },\r\n };\r\n }\r\n\r\n openAddEmpActivity() {\r\n this.popupEmployeeActivity = true;\r\n\r\n this.cancelButtonNewEmployee = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupEmployeeActivity = false;\r\n },\r\n };\r\n\r\n this.saveButtonNewEmployee = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.newActivity.submitForm(true, false);\r\n },\r\n };\r\n\r\n this.saveNewButtonNewEmployee = {\r\n text: 'Save & New',\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newActivity.submitForm(false, false);\r\n },\r\n };\r\n\r\n this.saveEditButtonNewEmployee = {\r\n text: this.translate.instant('btnSaveEdit'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newActivity.submitForm(true, true);\r\n },\r\n };\r\n }\r\n\r\n getTemplatesEmail() {\r\n var mytoken = localStorage.getItem('token');\r\n\r\n if (mytoken) {\r\n this.MapInformationService.getEmailTemplate().subscribe(res => {\r\n let data = res\r\n let dataTemplate = []\r\n let titleTemplate = []\r\n Array.prototype.forEach.call(data, retorno => {\r\n let tempatePros = {\r\n id: retorno['ID'],\r\n active: retorno['ACTIVE'],\r\n createdate: retorno['CREATEDATE'],\r\n createbyid: retorno['CREATEBYID'],\r\n metadata: retorno['METADATA'],\r\n subject: retorno['SUBJECT'],\r\n tag: retorno['TAG'],\r\n text: retorno['TEXT'],\r\n updatedbyid: retorno['UPDATEDBYID'],\r\n updateddate: retorno['UPDATEDDATE'],\r\n key: 'Custom Template',\r\n method: 'InsertUpdateNotificationEmailTemplate'\r\n }\r\n dataTemplate.push(tempatePros)\r\n })\r\n Array.prototype.forEach.call(this.arrayTemplate, template => {\r\n if (template.key == 'Custom Template') {\r\n template.items = []\r\n template.items = dataTemplate\r\n }\r\n })\r\n })\r\n\r\n }\r\n\r\n }\r\n\r\n // ************ ALARMA (Parte del codigo agregado por Evander)*************************\r\n\r\n getAlarms() {\r\n const data = {\r\n method: \"Get_CompanyActiveAlarms\"\r\n }\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp => {\r\n resp.sort(function (a, b) { return a.Department_ID - b.Department_ID })\r\n\r\n this.TotalAlarms = resp.length\r\n this.PhasesAlarm = resp\r\n })\r\n\r\n }\r\n\r\n OpenPopupAlarm() {\r\n this.PopupAlarm = true\r\n }\r\n\r\n OpenPopupCompany() {\r\n this.PopupChangeCompany = true\r\n }\r\n\r\n OpenemailPopup() {\r\n this.emailPopup = true\r\n }\r\n\r\n GoToAlarmModal(data) {\r\n switch (data.data.Alarm_Page) {\r\n case \"Workflowsummary\":\r\n this.enablePopupWorkFlowAlarm = true\r\n break\r\n case \"Customer_Activities\":\r\n this.enablePopupCompaniewAlarm = true\r\n break\r\n }\r\n }\r\n\r\n // ******************************************\r\n toggleSide() {\r\n this.isNavCollapse = !this.isNavCollapse;\r\n this.navCollapseOut.emit(this.isNavCollapse);\r\n }\r\n\r\n handleAddressChange(res) {\r\n this.userSetting.long = res.geometry.location.lng();\r\n this.userSetting.lat = res.geometry.location.lat();\r\n this.userSetting.geoname = res.formatted_address;\r\n localStorage.setItem('currentLat', res.geometry.location.lat().toString())\r\n localStorage.setItem('currentLong', res.geometry.location.lng().toString())\r\n }\r\n\r\n logOut() {\r\n let settings = localStorage.getItem('settings');\r\n sessionStorage.clear();\r\n localStorage.clear();\r\n this.userService.currentUserName.next('');\r\n this.router.navigateByUrl('/login');\r\n localStorage.setItem('settings', settings)\r\n this.isSideBarVisible = false\r\n this.dontShow = false\r\n this.showNavbarCommissioning = false\r\n }\r\n\r\n logOutCubeWorks() {\r\n let settings = localStorage.getItem('settings');\r\n sessionStorage.clear();\r\n localStorage.clear();\r\n this.userService.currentUserName.next('');\r\n this.router.navigateByUrl('/logincubeworks');\r\n localStorage.setItem('settings', settings)\r\n }\r\n\r\n toggleWithShadingOptions() {\r\n this.withShadingOptionsVisible = !this.withShadingOptionsVisible;\r\n }\r\n\r\n limpiarmodalTask() {\r\n $('#btnlimpiarmodaltask').click();\r\n }\r\n\r\n onSubmitTask(visibleModal) {\r\n this.popupTask = visibleModal;\r\n // this.setGrid2();\r\n }\r\n\r\n saveUserSettings() {\r\n\r\n\r\n this.savingUserSetting = true;\r\n // this.userService.settings.value.moneyFormat = null;\r\n this.userService.settings.value.map = $('#txtmap').val();\r\n\r\n this.savingUserSetting = false;\r\n\r\n // this.userService.settings.value.regionid = null // comentar\r\n\r\n this.userSetting.usersettings = JSON.stringify(this.userService.settings.value);\r\n\r\n if (this.userService.settings.value.layout == \"Horizontal\") {\r\n localStorage.setItem('NavbarHorizontal', \"Yes\")\r\n } else {\r\n localStorage.setItem('NavbarHorizontal', \"No\")\r\n }\r\n\r\n\r\n\r\n this.userService.settings.value.lat = this.userSetting.lat\r\n this.userService.settings.value.long = this.userSetting.long\r\n\r\n let user = JSON.parse(this.userSetting.usersettings)\r\n user.lat = this.userSetting.lat;\r\n user.long = this.userSetting.long\r\n\r\n\r\n this.userSetting.usersettings = JSON.stringify(user)\r\n\r\n\r\n localStorage.setItem('settings', JSON.stringify(this.userService.settings.value));\r\n\r\n this.userService.saveUserSettingCoor(this.userSetting).subscribe(result => {\r\n this.toast.success(this.translate.instant('msgUpdSucc'));\r\n\r\n let languageid = JSON.parse(this.userSetting.usersettings).languageid;\r\n\r\n let language = this.languageSelect.find(x => x.value == languageid)\r\n\r\n if (language) {\r\n this.translate.use(language.traduction);\r\n }\r\n\r\n this.MapInformationService.SaveInfoSites({ method: \"Update_EmployeeDafualDivision\", regionid: this.userService.settings.value.regionid }).subscribe(result => {\r\n window.location.reload();\r\n });\r\n })\r\n\r\n }\r\n\r\n base64Logo: any = \"\"\r\n getMenu() {\r\n\r\n var mythis = this;\r\n\r\n this.data.currentMessage.subscribe(\r\n // message => this.message = message\r\n function name(message) {\r\n const storageMessage = localStorage.getItem('messageNav');\r\n\r\n if (storageMessage) {\r\n mythis.message = JSON.parse(storageMessage);\r\n } else {\r\n mythis.message = message;\r\n }\r\n // mythis.message = message;\r\n // localStorage.setItem('messageNav', JSON.stringify(message));\r\n\r\n const menu = localStorage.getItem('userMenu');\r\n if (!menu) {\r\n\r\n var mytoken = localStorage.getItem('token');\r\n\r\n if (mytoken) {\r\n\r\n mythis.userService.getMenu().subscribe((data) => {\r\n mythis.userNemu = data;\r\n localStorage.setItem('userMenu', JSON.stringify(data));\r\n\r\n mythis.menuDinamico = mythis.userNemu.userMenuNodes\r\n\r\n mythis.settingsImage.GetImgLogoPath().subscribe(result => {\r\n mythis.settingsImage.GetDocument(result[0].FILEPATH).subscribe(result2 => {\r\n var data = result2.filestring.substring(0, 5);\r\n let tipo = \"\"\r\n switch (data.toUpperCase()) {\r\n case \"/9J/4\": tipo = \"jpeg\";\r\n break\r\n default:\r\n tipo = \"png\"\r\n break\r\n }\r\n\r\n if (result2.filestring != '' && result2.filestring != undefined) {\r\n mythis.base64Logo = 'data:image/' + tipo + ';base64,' + result2.filestring;\r\n } else {\r\n mythis.base64Logo = ''\r\n }\r\n\r\n })\r\n\r\n });\r\n\r\n\r\n if (mythis.userNemu) {\r\n //\r\n //\r\n mythis.test(mythis.userNemu.userMenuNodes, mythis.currentUrl);\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n } else {\r\n mythis.userNemu = JSON.parse(menu);\r\n mythis.test(mythis.userNemu.userMenuNodes, mythis.currentUrl);\r\n }\r\n // setTimeout(() => {\r\n // if (mythis.userNemu) {\r\n //\r\n //\r\n // mythis.test(mythis.userNemu.userMenuNodes, mythis.currentUrl);\r\n // }\r\n // }, 500);\r\n\r\n }\r\n )\r\n\r\n this.data.activeComponents.subscribe(\r\n // message => this.message = message\r\n function name(currentactiveComponents) {\r\n mythis.currentactiveComponents = currentactiveComponents;\r\n }\r\n )\r\n\r\n // this.data.currentUser.subscribe(\r\n // function name(currentUserValue) {\r\n // mythis.userName = currentUserValue;\r\n // }\r\n // )\r\n\r\n // if (localStorage.hasOwnProperty('currentactiveComponents') == true){\r\n // this.currentactiveComponents = JSON.parse(localStorage.getItem('currentactiveComponents'));\r\n // this.currentMessageValue = JSON.parse(localStorage.getItem('currentMessageValue'));\r\n // this.data.changeMessage3(this.currentactiveComponents, this.currentMessageValue);\r\n // }\r\n\r\n }\r\n\r\n setModuleId() {\r\n sessionStorage.setItem('moduleId', '0');\r\n sessionStorage.setItem('moduleName', '');\r\n this.generalService.moduleName.next('');\r\n this.router.navigateByUrl('/Training')\r\n }\r\n\r\n GoDashboard() {\r\n window.open(this.dashboardURL + \"?uT=\" + localStorage.getItem('token'), '_blank');\r\n }\r\n\r\n cancel() {\r\n this.modelChangePassword = {\r\n pass: '',\r\n confirmPass: ''\r\n };\r\n }\r\n\r\n\r\n changePass() {\r\n this.userService.changePassword(this.modelChangePassword.pass).subscribe(result => {\r\n\r\n if (result.response == 0) {\r\n this.toast.success(this.translate.instant('msgPwdChagSucc'));\r\n }\r\n });\r\n }\r\n\r\n GoToZD() {\r\n this.userService.getZDUserToken().subscribe(result => {\r\n window.open(\"https://cube-usa-edge.zendesk.com/access/jwt?jwt=\" + result.ztoken, \"_blank\");\r\n });\r\n }\r\n\r\n test(array: any, link: string, resetbreadcrum = true, parentModule = {}) {\r\n if (resetbreadcrum) {\r\n this.generalService.breadcrum.next([]);\r\n }\r\n\r\n let finalLink = link.split('?')[0];\r\n\r\n for (let index = 0; index < array.length; index++) {\r\n const element = array[index];\r\n\r\n if (element.cubeLink == finalLink) {\r\n this.updateBreadCrum(parentModule);\r\n this.updateBreadCrum(element);\r\n sessionStorage.setItem('moduleId', element.id);\r\n this.generalService.moduleName.next(element.moduleName);\r\n\r\n return true;\r\n } else {\r\n if (element.userModules.length > 0) {\r\n // this.updateBreadCrum(element.moduleName);\r\n\r\n const stop = this.test(element.userModules, finalLink, false, element);\r\n\r\n if (stop == true) {\r\n return;\r\n }\r\n }\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n updateBreadCrum(item: any) {\r\n const currentValue = this.generalService.breadcrum.value;\r\n const updatedValue = [...currentValue, item];\r\n this.generalService.breadcrum.next(updatedValue);\r\n }\r\n\r\n callModule(item: any) {\r\n sessionStorage.setItem('moduleId', item.id);\r\n sessionStorage.setItem('moduleName', item.moduleName);\r\n this.generalService.moduleName.next(item.moduleName);\r\n this.data.changeMessage({ id: item.id, moduleName: item.moduleName, cubeLink: item.cubeLink });\r\n\r\n this.router.navigateByUrl(item.cubeLink);\r\n $(\"#AB1\").collapse(\"show\");\r\n }\r\n\r\n deleteModule(item: any) {\r\n this.data.changeMessage2(item.id, item.cubeLink);\r\n this.router.navigate([this.currentactiveComponents[this.currentactiveComponents.length - 1]]);\r\n }\r\n\r\n mdSettings2() {\r\n this.popupSettings2 = true;\r\n }\r\n\r\n AccepTerms() {\r\n this.userService.acceptTerms(localStorage.getItem('email').toString()).subscribe(result => {\r\n localStorage.setItem('termaccepted', \"1\");\r\n window.location.reload();\r\n });\r\n }\r\n\r\n getMenuTop() {\r\n return -200\r\n }\r\n\r\n goToHome() {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.router.onSameUrlNavigation = 'reload';\r\n this.router.navigateByUrl('/home');\r\n }\r\n\r\n asignarValue(event, input) {\r\n this.template[input] = event.value\r\n }\r\n\r\n deleteUpdateTemplate() {\r\n let eliminarObject: boolean\r\n eliminarObject = false\r\n Array.prototype.forEach.call(this.arrayTemplate, template => {\r\n if (template.key == \"Update Templates\") {\r\n eliminarObject = true\r\n }\r\n if (eliminarObject == true) {\r\n this.arrayTemplate.splice(1, 1)\r\n }\r\n })\r\n }\r\n\r\n saveTemplate(comportamiento) {\r\n let eliminarObject: boolean\r\n eliminarObject = false\r\n this.template['key'] = ''\r\n this.MapInformationService.insertUpdateEmailTemplate(this.template).subscribe(res => {\r\n Array.prototype.forEach.call(this.arrayTemplate, (template, i) => {\r\n if (template.key == \"Update Templates\") {\r\n eliminarObject = true\r\n }\r\n else if (template.key == \"Custom Template\") {\r\n if (comportamiento == 'update') {\r\n Array.prototype.forEach.call(template.items, item => {\r\n if (this.template.id == item.id) {\r\n item['key'] = \"Custom Template\"\r\n item['subject'] = this.template.subject\r\n item['text'] = this.template.text\r\n }\r\n })\r\n } else if (comportamiento == 'new') {\r\n this.MapInformationService.getEmailTemplate().subscribe((res: Array) => {\r\n let templates = res\r\n let numTemplate = res.length\r\n let templateNew = templates[numTemplate - 1]\r\n let tempatePros = {\r\n id: templateNew['ID'],\r\n active: templateNew['ACTIVE'],\r\n createdate: templateNew['CREATEDATE'],\r\n createbyid: templateNew['CREATEBYID'],\r\n metadata: templateNew['METADATA'],\r\n subject: templateNew['SUBJECT'],\r\n tag: templateNew['TAG'],\r\n text: templateNew['TEXT'],\r\n updatedbyid: templateNew['UPDATEDBYID'],\r\n updateddate: templateNew['UPDATEDDATE'],\r\n key: 'Custom Template',\r\n method: 'InsertUpdateNotificationEmailTemplate'\r\n }\r\n template.items.push(tempatePros)\r\n let nuevosTemplates = template.items\r\n this.arrayTemplate[i].items = nuevosTemplates\r\n })\r\n }\r\n }\r\n })\r\n if (eliminarObject == true) {\r\n this.arrayTemplate.splice(1, 1)\r\n }\r\n // this.emailPopup = false;\r\n // this.popupVisibleTemplates = false;\r\n this.clearTemplate()\r\n // this.getTemplatesEmail()\r\n this.toast.success(this.translate.instant('msgTempUpdSucc'));\r\n })\r\n }\r\n\r\n selectTemplate(item) {\r\n this.popupVisibleTemplates = false;\r\n this.template = item;\r\n let update =\r\n {\r\n key: 'Update Templates',\r\n items: [{ subject: 'Update template' }],\r\n }\r\n let agregar: Boolean\r\n agregar = true\r\n Array.prototype.forEach.call(this.arrayTemplate, template => {\r\n if (template.key == \"Update Templates\") {\r\n agregar = false\r\n }\r\n })\r\n if (agregar == true) {\r\n this.arrayTemplate.splice(1, 0, update)\r\n }\r\n }\r\n\r\n onItemDeleting(event) {\r\n }\r\n\r\n onItemDeleted(event) {\r\n }\r\n\r\n clearTemplate() {\r\n this.template = {\r\n id: 0,\r\n text: '',\r\n active: 1,\r\n subject: '',\r\n createdate: '',\r\n updateddate: '',\r\n updatedbyid: '',\r\n tag: '',\r\n metadata: '',\r\n method: 'InsertUpdateNotificationEmailTemplate'\r\n }\r\n }\r\n\r\n modalChatbox() {\r\n\r\n\r\n this.openAI = true;\r\n\r\n this.userService.Get_UserSettingsCE(localStorage.getItem('customerid')).subscribe(result => {\r\n\r\n if (result.length > 0 && result[0].CLIENTUSERSETTING) {\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n\r\n localStorage.setItem('showbotintro', result[0].SHOWBOTINTRO);\r\n\r\n const showBotIntroString = localStorage.getItem('showbotintro');\r\n const showBotIntro = showBotIntroString === 'true';\r\n\r\n if (showBotIntro !== null && showBotIntro == false) {\r\n this.skipIntroduction = true;\r\n }\r\n else {\r\n this.skipIntroduction = false;\r\n }\r\n\r\n // alert(showBotIntro);\r\n\r\n this.appUser = localStorage.getItem('botmessages');\r\n\r\n if (!(localStorage.getItem('openai'))) {\r\n const currentUrl = window.location.href;\r\n window.open(currentUrl, '_blank');\r\n localStorage.setItem('openai', 'true');\r\n return\r\n }\r\n\r\n this.popupChatbox = true;\r\n\r\n this.messages = [];\r\n\r\n const storedMessages = localStorage.getItem('botmessages');\r\n if (storedMessages) {\r\n //this.messages = JSON.parse(storedMessages);\r\n this.messages.push({\r\n author: 'Virtual Assistant',\r\n text: \"Welcome back \" + localStorage.getItem('userName'),\r\n time: 'Just now',\r\n authorName: 'Virtual Assistant'\r\n });\r\n }\r\n else {\r\n if (this.skipIntroduction == false) {\r\n this.messagescopy = [];\r\n\r\n // this.respondToMessage('What can you do?');\r\n\r\n this.messages.push({\r\n author: 'Virtual Assistant',\r\n text: 'Hello ' + localStorage.getItem('userName') + ' How can i help you?',\r\n time: 'Just now',\r\n authorName: 'Virtual Assistant'\r\n });\r\n\r\n localStorage.setItem('botmessages', JSON.stringify(this.messages));\r\n\r\n }\r\n }\r\n\r\n // this.messages.push({\r\n // author: 'Virtual Assistant',\r\n // text: 'How can I assist you? For example, you could ask, \"How do I create an estimate?\"',\r\n // time: 'Just now',\r\n // authorName: 'Virtual Assistant'\r\n // }); \r\n\r\n localStorage.removeItem('openai');\r\n\r\n }\r\n });\r\n\r\n\r\n };\r\n\r\n buttonData = [\r\n { title: 'HELP AND SUPPORT', action: 'USER_HELP' },\r\n { title: 'VIRTUAL ASSISTANT', action: 'USER_ACTION' },\r\n { title: 'DATA ANALYST', action: 'DATA_ANALYST' }\r\n ];\r\n\r\n onButtonClick(title: string, action: string, index: number) {\r\n this.clickedButtonIndex = index;\r\n var messagesupport = '';\r\n if (index == 0) {\r\n messagesupport = 'How can I assist you? For example, you could ask, \"How do I create an estimate?\"';\r\n } else if (index == 1) {\r\n messagesupport = 'How can I assist you? For example, you could ask, \"Create an estimate with this project name.\"';\r\n } else if (index == 2) {\r\n messagesupport = 'How can I assist you? For example, you could ask, \"Analyze monthly sales.\"';\r\n } else {\r\n messagesupport = 'How can I assist you? For example, you could ask about anything related to control engineering, \"Is there a Visio Add-In for Control Engineering?\"';\r\n }\r\n this.messages.push({\r\n author: 'Virtual Assistant',\r\n text: messagesupport,\r\n time: 'Just now',\r\n authorName: 'Virtual Assistant'\r\n });\r\n // if (action == 'VRTUALASSISTANT'){\r\n // this.buttonData = [\r\n // { title: 'CREATE AN ESTIMATE WITH NEW PROJECT NAME', action: 'Create an estimate with this new project name: ' },\r\n // { title: 'HOME', action: 'HOME' }\r\n // ];\r\n // }\r\n // else if (action == 'DATAANALYST'){\r\n // this.buttonData = [\r\n // { title: 'CONTROL ENGENIERING PROBLEM AND RESOLUTION', action: 'I need help about cube edge with: ' },\r\n // { title: 'HOME', action: 'HOME' }\r\n // ];\r\n // }\r\n // else if (action == 'HOME'){\r\n // this.buttonData = [\r\n // { title: 'HELP AND SUPPORT', action: 'I need help about cube edge with: ' },\r\n // { title: 'VIRTUAL ASSISTANT', action: 'VRTUALASSISTANT' },\r\n // { title: 'DATA ANALYST', action: 'DATAANALYST' }\r\n // ];\r\n // }\r\n // else {\r\n // this.userInput = action;\r\n // }\r\n }\r\n\r\n addTask() {\r\n this.popupTask = true;\r\n this.withShadingOptionsVisible = false;\r\n // if(this.newtask.primeraVez == true){\r\n // this.newtask.setDefaultSettings();\r\n // }\r\n }\r\n\r\n NavCubeWorks(to) {\r\n this.router.navigate([`/${to}`])\r\n // this.isActive = !this.isActive;\r\n }\r\n\r\n // Method to handle the config change\r\n handleConfigChange() {\r\n let settings = {\r\n dateFormat: this.appSettings.appConfig.dateFormat,\r\n moneyFormat: this.appSettings.appConfig.moneyFormat,\r\n layout: this.appSettings.appConfig.layout,\r\n startPage: ''\r\n }\r\n this.LinkGettingStarted = this.appSettings.appConfig.LinkGettingStarted;\r\n this.LinkCubeFlow = this.appSettings.appConfig.LinkCubeFlow;\r\n this.LinkWhatsNew = this.appSettings.appConfig.LinkWhatsNew;\r\n this.dashboardURL = this.appSettings.appConfig.dashboardURL;\r\n\r\n this.userService.settings.next(settings);\r\n\r\n }\r\n\r\n\r\n showNewEstimate() {\r\n this.initformAndSelect()\r\n this.initForm()\r\n this.popupNewEstimateQuick = true\r\n }\r\n\r\n initForm() {\r\n this.firstFormGroup = new FormGroup({\r\n projectid: new FormControl(null, [Validators.required]),\r\n projectname: new FormControl('', [Validators.required]),\r\n projectnameTemp: new FormControl('', [Validators.required]),\r\n });\r\n }\r\n\r\n initformAndSelect() {\r\n\r\n let mythis = this;\r\n this.projectslist = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n // return mythis.taskService.GetProjectByName(loadOptions.searchValue)\r\n return mythis.ProjectService.Get_All_SalesProjectsByName(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n }\r\n\r\n updateProjectInfo(obj) {\r\n if (obj.selectedItem) {\r\n this.firstFormGroup.get('projectname').setValue(obj.selectedItem.Project_Name);\r\n this.firstFormGroup.get('projectid').setValue(obj.selectedItem.ID);\r\n this.firstFormGroup.get('projectnameTemp').setValue(obj.selectedItem.Project_Name);\r\n } else {\r\n this.firstFormGroup.get('projectname').setValue(null);\r\n this.firstFormGroup.get('projectid').setValue(null);\r\n }\r\n }\r\n\r\n // createProject() {\r\n // if (this.projectName != undefined) {\r\n // let info =\r\n // {\r\n // \"bidreqdate\": \"\",\r\n // \"biddate\": \"\",\r\n // \"projectid\": 0,\r\n // \"projectnum\": null,\r\n // \"name\": this.projectName,\r\n // \"siteid\": 0,\r\n // \"salescategoryid\": 1,\r\n // \"bidstatus\": 1,\r\n // \"closedate\": \"\",\r\n // \"amount\": 0,\r\n // \"profit\": 0,\r\n // \"profitpercent\": 0,\r\n // \"consultingid\": 0,\r\n // \"salesemp\": 0,\r\n // \"custreqpriceid\": 0,\r\n // \"custawardprojectid\": 0,\r\n // \"projectverticalid\": 1,\r\n // \"awardedto\": 0,\r\n // \"productspecified\": 0,\r\n // \"partestimaterequestbyid\": 0,\r\n // \"prevailingwagecode\": 0,\r\n // \"notbidreason\": 0,\r\n // \"salescomment\": \"\",\r\n // \"salesnotes\": \"\",\r\n // \"address\": \"\",\r\n // \"addressline2\": \"\",\r\n // \"city\": \"\",\r\n // \"state\": \"\",\r\n // \"country\": \"\",\r\n // \"zip\": \"\",\r\n // \"lat\": 0,\r\n // \"lon\": 0,\r\n // \"prevailingwage\": 0,\r\n // \"method\": \"InsertUpdate_SalesProjectsCE\"\r\n // }\r\n\r\n // this.MapInformationService.SaveInfoSites(info)\r\n // .subscribe(resp => {\r\n\r\n\r\n // this.firstFormGroup.get('projectid').setValue(resp[0].ReturnID);\r\n // this.firstFormGroup.get('projectname').setValue(this.projectName);\r\n // this.firstFormGroup.get('projectnameTemp').setValue(this.projectName);\r\n // this.searchProject.placeholder = resp[0].ReturnID + \" \" + this.projectName\r\n\r\n // this.toast.success(\"Project created successfully\")\r\n // this.projectName = ''\r\n // this.popupCreateSalesProject2 = false\r\n // this.initformAndSelect()\r\n // })\r\n // } else {\r\n // this.toast.warning(\"You must write a name\")\r\n // }\r\n // }\r\n\r\n // createEstimate() {\r\n // let dataFinal = this.firstFormGroup.value\r\n // const currentuserid = localStorage.getItem(\"customerid\");\r\n // let project = this.firstFormGroup.value;\r\n // this.estimateService.InsertEstimateWithTax(\r\n // dataFinal.projectid,\r\n // 0,\r\n // 0,\r\n // 0,\r\n // 0,\r\n // 0,\r\n // currentuserid,\r\n // 0,\r\n // 0,\r\n // ).subscribe(result => {\r\n // if (result[0]) {\r\n // let estimateid = result[0].ID;\r\n // this.estimateService\r\n // .Insert_EstimateAreaCE(estimateid, 'Area 1', 0, 1, true)\r\n // .subscribe((area) => {\r\n // if (area[0]) {\r\n // this.popupNewEstimateQuick = false\r\n // this.popupCreateSalesProject2 = false\r\n // let url = `/Estimates/editEstimate?numESTIMATEID=${estimateid}&strPROJECT_NAME=${dataFinal.projectid + \"-\" + project.projectname}&numProjectID=${project.projectid}`\r\n // this.toast.success(this.translate.instant('msgEstCreSucc'));\r\n // this.initformAndSelect()\r\n // this.initForm()\r\n // this.projectName = ''\r\n // this.router.navigateByUrl(url)\r\n // }\r\n // });\r\n // }\r\n // })\r\n // }\r\n\r\n showLinksOrURL(data) {\r\n if (data.cubeLink == \"NULL\") {\r\n this.router.navigateByUrl(`/CUBEcx?moduleName=${data.moduleName}`);\r\n } else {\r\n this.router.navigateByUrl(data.cubeLink);\r\n }\r\n }\r\n\r\n goToDashboard() {\r\n this.router.navigateByUrl(\"/dashboard\");\r\n }\r\n\r\n showHelpCards() {\r\n this.router.navigateByUrl(`/CUBEcx?moduleName=Help`);\r\n }\r\n\r\n sendMessage() {\r\n if (this.userInput.trim()) {\r\n this.messages.push({\r\n author: 'User',\r\n text: this.userInput,\r\n time: 'Just now',\r\n authorName: localStorage.getItem('userName')\r\n });\r\n this.respondToMessage('');\r\n this.userInput = '';\r\n }\r\n }\r\n\r\n toggleRecording() {\r\n if (this.isRecording == false) {\r\n this.service.start();\r\n this.isRecording = true;\r\n }\r\n else {\r\n this.service.stop();\r\n this.isRecording = false;\r\n this.userInput = this.service.text;\r\n this.messages.push({\r\n author: 'User',\r\n text: this.userInput,\r\n time: 'Just now',\r\n authorName: localStorage.getItem('userName')\r\n });\r\n this.respondToMessage('');\r\n this.userInput = '';\r\n }\r\n }\r\n\r\n resetPopup() {\r\n this.popupChatbox = false;\r\n this.messages = [];\r\n }\r\n\r\n stopVoice() {\r\n this.isButtonDisabled = true;\r\n this.textToVoiceService.stop();\r\n }\r\n\r\n respondToMessage(msg: string) {\r\n\r\n\r\n var soloMsg = '';\r\n\r\n var themessages = JSON.stringify(this.messages);\r\n\r\n if (msg != '') {\r\n\r\n this.messagescopy = [];\r\n\r\n this.messagescopy.push({\r\n author: localStorage.getItem('userName'),\r\n text: msg,\r\n time: 'Just now',\r\n authorName: localStorage.getItem('userName')\r\n });\r\n\r\n themessages = JSON.stringify(this.messagescopy);\r\n\r\n soloMsg = msg;\r\n\r\n }\r\n else {\r\n if (this.messages.length != 0) {\r\n soloMsg = this.messages[this.messages.length - 1].text\r\n }\r\n }\r\n\r\n // if (msg != ''){ themessages = msg }\r\n\r\n const currentURL = window.location.origin + window.location.pathname;\r\n const encodedURL = encodeURIComponent(currentURL);\r\n\r\n\r\n this.userService.getcubechatResponse({ base64: \"\", textPrompt: themessages, usToken: localStorage.getItem('token'), currentURL: encodedURL, solotextPrompt: soloMsg, usercurrenttopic: this.buttonData[this.clickedButtonIndex].action }).subscribe(result => {\r\n this.textToVoiceService.speak(result);\r\n this.isButtonDisabled = false;\r\n this.messages.push({\r\n author: 'Virtual Assistant',\r\n text: result,\r\n time: 'Just now',\r\n authorName: 'Virtual Assistant'\r\n });\r\n localStorage.setItem('botmessages', JSON.stringify(this.messages));\r\n // this.messagesContainer.nativeElement.scrollTop = this.messagesContainer.nativeElement.scrollHeight; \r\n // alert('Hola'); \r\n });\r\n\r\n\r\n }\r\n\r\n onSkipIntroductionChanged(event: any) {\r\n // var valorsave = 0;\r\n // if (this.skipIntroduction == true) {\r\n // localStorage.setItem('showbotintro', 'false');\r\n // valorsave = 0;\r\n // }\r\n // else {\r\n // localStorage.setItem('showbotintro', 'true');\r\n // valorsave = 1;\r\n // }\r\n // // if(this.name != 'CompanyRegistration'){\r\n // this.userService.updateuserSetting({ method: \"Update_UserSettingsCEShowBotIntro\", showbotintro: valorsave }).subscribe(result => {\r\n // });\r\n // // }\r\n // this.openAI = false;\r\n }\r\n\r\n\r\n GotoEstimate() {\r\n const estimateIDSelected = localStorage.getItem(\"estimateIDSelected\")\r\n const estimatenamestrSelected = localStorage.getItem(\"estimatenamestrSelected\")\r\n const projectIDSelected = localStorage.getItem(\"projectIDSelected\")\r\n\r\n if (estimateIDSelected == undefined){\r\n this.router.navigate(['/home']);\r\n } else {\r\n if(localStorage.getItem(\"fromCommissioning\") == 'Yes'){\r\n this.router.navigate(['/commissioning/techView'], { queryParams: { numID: estimateIDSelected, numProjectID: projectIDSelected, strPROJECT_NAME: estimatenamestrSelected } });\r\n } else {\r\n this.router.navigate(['/Estimates/editEstimate'], { queryParams: { numESTIMATEID: estimateIDSelected, numProjectID: projectIDSelected, strPROJECT_NAME: estimatenamestrSelected } });\r\n }\r\n }\r\n }\r\n\r\n goHome(){\r\n if (this.clientplanid != 10){\r\n this.router.navigate(['/home']);\r\n } else {\r\n this.router.navigate(['/applications']);\r\n }\r\n }\r\n\r\n PreviousPage() {\r\n this.location.back()\r\n }\r\n\r\n NavCubeShop(to) {\r\n this.router.navigate([`/${to}`])\r\n }\r\n\r\n showFiltersAI(){\r\n this.componentModel = {\r\n COMPSCOPE: \"\",\r\n COMPSCOPEWITHOUTHTML: \"\",\r\n ID: 0,\r\n NAME: \"\",\r\n SystemType: \"\",\r\n TypeId: [],\r\n Image: 'Not_Image',\r\n VisionComponentName: '',\r\n Path: '',\r\n filename: '',\r\n ACHR: '',\r\n tagid:[],\r\n tagParent:0,\r\n typeImage:\"\",\r\n notshowiddwg:false,\r\n applicationtypeid:[],\r\n notschematic:false\r\n };\r\n this.showFiltersAIModal = true\r\n this.getTagParents()\r\n }\r\n\r\n showFiltersModal: boolean = false\r\n showFiltersAIModal: boolean = false\r\n filterNew: FormGroup\r\n showFilters() {\r\n this.componentModel = {\r\n COMPSCOPE: \"\",\r\n COMPSCOPEWITHOUTHTML: \"\",\r\n ID: 0,\r\n NAME: \"\",\r\n SystemType: \"\",\r\n TypeId: [],\r\n Image: 'Not_Image',\r\n VisionComponentName: '',\r\n Path: '',\r\n filename: '',\r\n ACHR: '',\r\n tagid:[],\r\n tagParent:0,\r\n typeImage:\"\",\r\n notshowiddwg:false,\r\n applicationtypeid:[],\r\n notschematic:false\r\n };\r\n this.showFiltersModal = true\r\n this.getTagParents()\r\n }\r\n\r\n tagsParens:any[]=[]\r\n taggingDatasource:any[]=[]\r\n componentModel = {\r\n COMPSCOPE: \"\",\r\n COMPSCOPEWITHOUTHTML: \"\",\r\n ID: 0,\r\n NAME: \"\",\r\n SystemType: \"\",\r\n TypeId: [],\r\n Image: 'Not_Image',\r\n VisionComponentName: '',\r\n Path: '',\r\n filename: '',\r\n ACHR: '',\r\n tagid:[],\r\n tagParent:0,\r\n typeImage:\"\",\r\n notshowiddwg:false,\r\n applicationtypeid:[],\r\n notschematic:false\r\n };\r\n\r\n systemTypeSelectCE:any[]=[]\r\n\r\n getTagParents(){\r\n this.MapInformationService.SaveInfoSites({method:\"Get_EcomEstimateSytemTypeCE\"})\r\n .subscribe(resp=>{\r\n this.systemTypeSelectCE = resp\r\n })\r\n\r\n // this.deltaService.GetEstimateSystemTypeCE().subscribe((result) => {\r\n // this.systemTypeSelectCE = result;\r\n // });\r\n }\r\n\r\n changeSegmentParents(e){\r\n this.getTagging(e.selectedItem.ID)\r\n }\r\n\r\n // getTagging(id) {\r\n // this.MapInformationService.SaveInfoSites({ 'method': 'Get_TagEngUtilityByParentID', parentid:id}).subscribe(result => {\r\n // this.taggingDatasource = result;\r\n // });\r\n // }\r\n\r\n\r\n getTagging(id) {\r\n this.MapInformationService.SaveInfoSites({ 'method': 'Get_EcomComponentsTreeFilter', id:id}).subscribe(result => {\r\n this.taggingDatasource = result;\r\n });\r\n }\r\n\r\n\r\n\r\n \r\n\r\n searchData() {\r\n\r\n const idsTags = this.componentModel.tagid.join(\",\")\r\n const idMastertype = this.componentModel.tagParent\r\n\r\n\r\n this.showFiltersModal = false\r\n this.clearFilterIndividual('Clear')\r\n\r\n this.router.navigate(['/Applicationfiltered'], { queryParams: { idMaster: idMastertype, componentids: idsTags} });\r\n if(this.dataMenuNavbar == \"Applicationfiltered\"){\r\n setTimeout(() => {\r\n window.location.reload();\r\n }, 500);\r\n }\r\n \r\n\r\n }\r\n\r\n searchDataAI() {\r\n\r\n const idMastertype = this.componentModel.tagParent\r\n\r\n\r\n this.showFiltersAIModal = false; \r\n this.clearFilterIndividual('Clear')\r\n\r\n this.router.navigate(['/AIShop'], { queryParams: { idType: idMastertype} });\r\n\r\n }\r\n\r\n closeParentsSystemType() {\r\n this.treeviewTag.instance.collapseAll()\r\n }\r\n\r\n OpenParentsSystemType() {\r\n this.treeviewTag.instance.expandAll()\r\n }\r\n\r\n\r\n closeParentsComponentType() {\r\n this.treeviewType.instance.collapseAll()\r\n }\r\n\r\n OpenParentsComponentType() {\r\n this.treeviewType.instance.expandAll()\r\n }\r\n\r\n groupItemsFilter: any[] = []\r\n typeDatasource: any[] = []\r\n openFilterParents() {\r\n\r\n this.estimateService.Get_EstimateLibComponentsTreeCE2().subscribe(result => {\r\n this.groupItemsFilter = result\r\n });\r\n\r\n this.deltaService.GetEstimateSystemTypeCE().subscribe((result) => {\r\n this.typeDatasource = result;\r\n });\r\n }\r\n\r\n typeids: any[] = []\r\n treeBoxValue2: string[] = [];\r\n notAllowed: boolean = false\r\n FirtsTime: boolean = true\r\n\r\n \r\n \r\n\r\n clearFilterIndividual(typeOfClear) {\r\n switch (typeOfClear) {\r\n case 'System Type':\r\n this.typeids = []\r\n this.treeBoxValue2 = []\r\n if (this.treeBoxTags != undefined) {\r\n this.treeBoxTags.instance.reset()\r\n }\r\n\r\n if (this.treeviewTag != undefined) {\r\n this.treeviewTag.instance.unselectAll()\r\n }\r\n\r\n this.filterNew.get(\"systemtypeID\").setValue(\"\")\r\n\r\n break\r\n case 'Component Type':\r\n this.categorySelected = []\r\n this.treeBoxValue = []\r\n if (this.treeBoxType != undefined) {\r\n this.treeBoxType.instance.reset()\r\n }\r\n if (this.treeviewType != undefined) {\r\n this.treeviewType.instance.unselectAll()\r\n }\r\n this.filterNew.get(\"componentType\").setValue(\"\")\r\n break\r\n default:\r\n this.clearDataAll()\r\n break\r\n }\r\n }\r\n\r\n clearDataAll() {\r\n this.typeids = []\r\n this.treeBoxValue2 = []\r\n this.showFiltersAIModal = false\r\n if (this.treeBoxTags != undefined) {\r\n this.treeBoxTags.instance.reset()\r\n }\r\n\r\n if (this.treeviewTag != undefined) {\r\n this.treeviewTag.instance.unselectAll()\r\n }\r\n\r\n if (this.filterNew != undefined){\r\n this.filterNew.get(\"systemtypeID\").setValue(\"\")\r\n }\r\n // *******************************************************\r\n this.categorySelected = []\r\n this.treeBoxValue = []\r\n if (this.treeBoxType != undefined) {\r\n this.treeBoxType.instance.reset()\r\n }\r\n if (this.treeviewType != undefined) {\r\n this.treeviewType.instance.unselectAll()\r\n }\r\n if (this.filterNew != undefined){\r\n this.filterNew.get(\"componentType\").setValue(\"\")\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n categorySelected: any[] = []\r\n treeBoxValue: string[];\r\n\r\n syncTreeViewSelection(e) {\r\n var component =\r\n (e && e.component) || (this.treeView && this.treeView.instance);\r\n\r\n if (!component) return;\r\n\r\n if (!this.treeBoxValue) {\r\n component.unselectAll();\r\n }\r\n\r\n if (this.treeBoxValue) {\r\n this.treeBoxValue.forEach(\r\n function (value) {\r\n component.selectItem(value);\r\n }.bind(this)\r\n );\r\n }\r\n }\r\n\r\n treeView_itemSelectionChanged(e) { \r\n // Si es la primera vez que se selecciona algo, realizar la misma operación\r\n if (e.itemElement !== undefined ) {\r\n\r\n this.componentModel.tagParent = e.component.getSelectedNodeKeys();\r\n this.treeBoxValue = e.component.getSelectedNodeKeys();\r\n this.FirtsTime = false;\r\n this.getTagging(e.itemData.ID)\r\n\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n syncTreeViewSelection2(e) {\r\n var component = (e && e.component) || (this.treeView2 && this.treeView2.instance);\r\n \r\n if (!component) return;\r\n \r\n // Desmarcar todos los elementos si no hay valores seleccionados\r\n if (!this.treeBoxValue2 || this.treeBoxValue2.length === 0) {\r\n component.unselectAll();\r\n } else {\r\n // Asegurarse de que solo se seleccionen los elementos presentes en treeBoxValue2\r\n component.unselectAll(); // Limpiar selección previa\r\n \r\n this.treeBoxValue2.forEach(function (value) {\r\n component.selectItem(value); // Seleccionar cada valor\r\n });\r\n }\r\n }\r\n\r\n treeView_itemSelectionChanged2(e) {\r\n \r\n // Si es la primera vez que se selecciona algo, realizar la misma operación\r\n if (e.itemElement !== undefined) {\r\n this.componentModel.tagid = e.component.getSelectedNodeKeys();\r\n this.treeBoxValue2 = e.component.getSelectedNodeKeys();\r\n this.FirtsTime = false;\r\n }\r\n }\r\n\r\n\r\n // Shop\r\n\r\n \r\ngoToCubeShop(){\r\n\r\n localStorage.removeItem(\"estimateIDSelected\")\r\n localStorage.removeItem(\"estimatenamestrSelected\")\r\n localStorage.removeItem(\"projectIDSelected\")\r\n localStorage.removeItem('CreateInAEstimate');\r\n localStorage.removeItem(\"fromCommissioning\")\r\n\r\n this.showPopupShop = false\r\n\r\n this.router.navigateByUrl(`/applications`)\r\n\r\n}\r\n\r\nshowPopupShop:boolean = false\r\nestimatename = \"\";\r\nestimatenamestr = \"\";\r\nestimateDataSourceSelect: CustomStore;\r\ngoToShop:boolean = false\r\nestimateSelectedShop:any\r\n\r\nShowModalShop(){\r\n this.showPopupShop = true\r\n this.getEstimateSelect()\r\n}\r\n\r\nupdateEstimate(item) {\r\n if (item.selectedItem) {\r\n\r\n }\r\n}\r\n\r\ngetEstimateSelect(){\r\n let mythis = this\r\n this.estimateDataSourceSelect = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n return mythis.estimateService.Get_EstimateListNavAll(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n}\r\n\r\n\r\ngoToNewEstimateShop(){\r\n this.goToShop = true\r\n this.initformAndSelect()\r\n this.initForm()\r\n \r\n this.popupNewEstimateQuick = true\r\n}\r\n\r\nupdateEstimateSelected(obj) {\r\n if (obj.selectedItem) {\r\n this.estimateSelectedShop = obj.selectedItem\r\n }\r\n}\r\n\r\n// initformAndSelect(){\r\n\r\n// let mythis = this;\r\n// this.projectslist = new CustomStore({\r\n// key: \"ID\",\r\n// load: function (loadOptions: any) {\r\n// // return mythis.taskService.GetProjectByName(loadOptions.searchValue)\r\n// return mythis.ProjectService.Get_All_SalesProjectsByName(loadOptions.searchValue)\r\n// .toPromise()\r\n// .then((data: any) => {\r\n// return data;\r\n// })\r\n// .catch(error => { throw 'Data Loading Error' });\r\n// }\r\n// });\r\n// }\r\n\r\n\r\n\r\ncreateEstimate(){\r\n let dataFinal = this.firstFormGroup.value\r\n const currentuserid = localStorage.getItem(\"customerid\");\r\n let project = this.firstFormGroup.value;\r\n this.estimateService.InsertEstimateWithTax(\r\n dataFinal.projectid,\r\n 0,\r\n 0,\r\n 0,\r\n 0,\r\n 0,\r\n currentuserid,\r\n 0,\r\n 0,\r\n ).subscribe(result => {\r\n if (result[0]) {\r\n let estimateid = result[0].ID;\r\n this.estimateService\r\n .Insert_EstimateAreaCE(estimateid, 'Area 1', 0, 1, true)\r\n .subscribe((area) => {\r\n if (area[0]) {\r\n\r\n if (this.goToShop){\r\n localStorage.setItem(\"estimateIDSelected\", estimateid.toString())\r\n localStorage.setItem(\"estimatenamestrSelected\", project.projectname.toString())\r\n localStorage.setItem(\"projectIDSelected\", project.projectid.toString())\r\n localStorage.removeItem(\"fromCommissioning\")\r\n this.showPopupShop = false\r\n this.showFiltersModal = false\r\n this.popupNewEstimateQuick = false\r\n this.toggleWithShadingOptions()\r\n this.router.navigateByUrl(`/applications`)\r\n } else {\r\n localStorage.setItem(\"ModuleFrom\", \"Engineering\")\r\n let url = `/Estimates/editEstimate?numESTIMATEID=${estimateid}&strPROJECT_NAME=${project.projectname}&numProjectID=${project.projectid}`\r\n this.toast.success(this.translate.instant('msgEstCreSucc'));\r\n // this.router.navigateByUrl(url)\r\n this.popupNewEstimateQuick = false\r\n this.toggleWithShadingOptions()\r\n this.router.navigate(['/Estimates/editEstimate'], { queryParams: { numESTIMATEID: estimateid, numProjectID:project.projectid, strPROJECT_NAME:project.projectname} });\r\n }\r\n }\r\n });\r\n }\r\n })\r\n}\r\n\r\n\r\ncreateProject(){\r\n if (this.projectName != undefined){\r\n let info = \r\n {\r\n \"bidreqdate\": \"\",\r\n \"biddate\": \"\",\r\n \"projectid\": 0,\r\n \"projectnum\": null,\r\n \"name\": this.projectName,\r\n \"siteid\": 0,\r\n \"salescategoryid\": 1,\r\n \"bidstatus\": 1,\r\n \"closedate\": \"\",\r\n \"amount\": 0,\r\n \"profit\": 0,\r\n \"profitpercent\": 0,\r\n \"consultingid\": 0,\r\n \"salesemp\": 0,\r\n \"custreqpriceid\": 0,\r\n \"custawardprojectid\": 0,\r\n \"projectverticalid\": 1,\r\n \"awardedto\": 0,\r\n \"productspecified\": 0,\r\n \"partestimaterequestbyid\": 0,\r\n \"prevailingwagecode\": 0,\r\n \"notbidreason\": 0,\r\n \"salescomment\": \"\",\r\n \"salesnotes\": \"\",\r\n \"address\": \"\",\r\n \"addressline2\": \"\",\r\n \"city\": \"\",\r\n \"state\": \"\",\r\n \"country\": \"\",\r\n \"zip\": \"\",\r\n \"lat\": 0,\r\n \"lon\": 0,\r\n \"prevailingwage\": 0,\r\n \"method\": \"InsertUpdate_SalesProjectsCE\"\r\n }\r\n\r\n this.MapInformationService.SaveInfoSites(info)\r\n .subscribe(resp=>{\r\n \r\n\r\n this.firstFormGroup.get('projectid').setValue(resp[0].ReturnID);\r\n this.firstFormGroup.get('projectname').setValue(this.projectName);\r\n this.firstFormGroup.get('projectnameTemp').setValue(this.projectName);\r\n this.searchProject.placeholder = resp[0].ReturnID + \" \" + this.projectName\r\n\r\n this.toast.success(\"Project created successfully\")\r\n this.projectName=''\r\n this.popupCreateSalesProject = false\r\n this.popupCreateSalesProject2 = false\r\n \r\n setTimeout(() => {\r\n this.createEstimate()\r\n }, 500);\r\n \r\n this.initformAndSelect()\r\n })\r\n } else {\r\n this.toast.warning(\"You must write a name\")\r\n }\r\n}\r\n\r\n\r\n\r\n@ViewChild('chatContainer', { static: true }) chatContainer!: ElementRef;\r\n @ViewChild('chatIframe', { static: true }) chatIframe!: ElementRef;\r\n @ViewChild('toggleButton', { static: true }) toggleButton!: ElementRef;\r\n showCbit:boolean = false\r\n\r\n isMinimized: boolean = false;\r\n\r\n toggleMinimizeChat(): void {\r\n this.isMinimized = !this.isMinimized;\r\n\r\n const icon = this.toggleButton.nativeElement.querySelector('i');\r\n if (this.isMinimized) {\r\n icon.classList.remove('fa-window-minimize');\r\n icon.classList.add('fa-window-maximize');\r\n } else {\r\n icon.classList.remove('fa-window-maximize');\r\n icon.classList.add('fa-window-minimize');\r\n }\r\n }\r\n\r\n closeChat(event: Event): void {\r\n this.chatContainer.nativeElement.style.display = 'none';\r\n event.stopPropagation();\r\n }\r\n\r\n goToCubeWork(){\r\n this.router.navigateByUrl('/searchJobsNew');\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { NavbarSidebarComponent } from './navbar-sidebar.component';\r\nimport { MdbGlobalModule } from '../mdb-global.module';\r\nimport { DxAccordionModule, DxHtmlEditorModule, DxTabPanelModule, DxTagBoxModule, DxTextAreaModule, DxPopupModule,DxCheckBoxModule, DxDropDownBoxModule, DxToolbarModule, DxButtonModule, DxActionSheetModule,DxListModule, DxPopoverModule, DxTemplateModule, DxAutocompleteModule, DxTextBoxModule, DxTooltipModule, DxScrollViewModule, DxSelectBoxModule, DxDataGridModule, DxDateBoxModule, DxRadioGroupModule, DxNumberBoxModule, DxDropDownButtonModule, DxTileViewModule, DxTreeViewModule, DxTreeListModule, DxGalleryModule} from \"devextreme-angular\";\r\n\r\nimport { GooglePlaceModule } from \"ngx-google-places-autocomplete\";\r\nimport { CreateUpdateTaskModule } from '../create-update-task/create-update-task.module';\r\nimport { NewEmpleoyeActivitiesModule } from 'src/app/pages/sales-management/employee-activities/forms/new-empleoye-activities/new-empleoye-activities.module';\r\nimport { NewCustomerModule } from 'src/app/pages/sales-management/employee-activities/forms/new-customer/new-customer.module';\r\nimport { CreateUpdateSalesProjectModule } from 'src/app/pages/sales-management/sales-project/create-update-sales-project/create-update-sales-project.module';\r\nimport { NewContactModule } from '../new-contact/new-contact.module';\r\nimport { ServicesMapModule } from 'src/app/pages/service-management/services-map/map-service/services-map.module';\r\nimport { NewServiceWorkOrderModule } from 'src/app/pages/service-management/services-map/components/new-service-work-order/new-service-work-order.module';\r\nimport { NewRfiModule } from 'src/app/pages/project-management/edit-project/new-rfi/new-rfi.module';\r\nimport { NewPushListItemModule } from 'src/app/pages/project-management/edit-project/new-push-list-item/new-push-list-item.module';\r\nimport { NewProgressReportModule } from 'src/app/pages/project-management/edit-project/new-progress-report/new-progress-report.module';\r\nimport { AlarmWorkFlowSummaryModule } from 'src/app/pages/project-management/alarm-work-flow-summary/alarm-work-flow-summary.module';\r\nimport { AlarmCustomersModule } from 'src/app/pages/sales-management/alarm-customers/alarm-customers.module';\r\nimport { NewSalesLeadModule } from 'src/app/pages/sales-management/sales-leads/modals/new-sales-lead/new-sales-lead.module';\r\nimport { SimpleViewCommissioningModule } from 'src/app/pages/simpleView/simple-view-commissioning/simple-view-commissioning.module';\r\nimport { TreeviewAreaSystemModule } from '../treeview-area-system/treeview-area-system.module';\r\nimport { ApplicationsComponent } from 'src/app/pages/shop/applications/applications.component';\r\nimport { ApplicationsModule } from 'src/app/pages/shop/applications/applications.module';\r\n\r\n@NgModule({\r\n declarations: [\r\n NavbarSidebarComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxTabPanelModule,\r\n DxCheckBoxModule,\r\n DxDropDownBoxModule,\r\n DxToolbarModule,\r\n DxButtonModule,\r\n DxActionSheetModule,\r\n DxListModule,\r\n DxPopoverModule,\r\n DxTemplateModule,\r\n DxAutocompleteModule,\r\n GooglePlaceModule,\r\n DxTextBoxModule,\r\n DxPopupModule,\r\n DxTooltipModule,\r\n CreateUpdateTaskModule,\r\n NewEmpleoyeActivitiesModule,\r\n NewCustomerModule,\r\n DxScrollViewModule,\r\n CreateUpdateSalesProjectModule,\r\n NewContactModule,\r\n NewServiceWorkOrderModule,\r\n NewRfiModule,\r\n NewPushListItemModule,\r\n NewProgressReportModule,\r\n DxSelectBoxModule,\r\n DxDataGridModule,\r\n AlarmWorkFlowSummaryModule,\r\n AlarmCustomersModule,\r\n DxTextAreaModule,\r\n DxTagBoxModule,\r\n DxHtmlEditorModule,\r\n DxAccordionModule,\r\n NewSalesLeadModule,\r\n SimpleViewCommissioningModule,\r\n DxDateBoxModule,\r\n DxRadioGroupModule,\r\n TreeviewAreaSystemModule,\r\n DxNumberBoxModule,\r\n DxDropDownButtonModule,\r\n DxTileViewModule,\r\n DxTreeViewModule,\r\n DxRadioGroupModule,\r\n DxTreeListModule,\r\n DxGalleryModule,\r\n DxTileViewModule,\r\n ApplicationsModule,\r\n // NewRFIModule\r\n ],\r\n exports: [NavbarSidebarComponent],\r\n // entryComponents:[ApplicationsComponent],\r\n schemas: [NO_ERRORS_SCHEMA]\r\n})\r\nexport class NavbarSidebarModule { }\r\n","export default \".modal-open .modal {\\n overflow-x: hidden;\\n overflow-y: auto !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL25ldy1jb250YWN0L0U6XFxEZXZcXENVQkVURU1QXFxuZXdjdWJlL3NyY1xcYXBwXFxzaGFyZWRcXG5ldy1jb250YWN0XFxuZXctY29udGFjdC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL25ldy1jb250YWN0L25ldy1jb250YWN0LmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usa0JBQUE7RUFDQSwyQkFBQTtBQ0NGIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL25ldy1jb250YWN0L25ldy1jb250YWN0LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLm1vZGFsLW9wZW4gLm1vZGFsIHtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xyXG59XHJcbiIsIi5tb2RhbC1vcGVuIC5tb2RhbCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xufSJdfQ== */\"","import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';\r\nimport { FasDirective, MDBModalRef, ToastService } from 'ng-uikit-pro-standard';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { ContactService } from 'src/app/services/contact.service';\r\nimport { Subject } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\ndeclare var $: any;\r\nimport { TranslateService } from '@ngx-translate/core';\r\n\r\n@Component({\r\n selector: 'app-new-contact',\r\n templateUrl: './new-contact.component.html',\r\n styleUrls: ['./new-contact.component.scss']\r\n})\r\nexport class NewContactComponent implements OnInit {\r\n\r\n text = '1';\r\n action: Subject = new Subject();\r\n customerSelect = [];\r\n optionsCountry = [];\r\n\r\n validatingFormContact: FormGroup;\r\n iscCstomerAddress = false;\r\n\r\n @Input() popupNewContact = false;\r\n @Input() VieneDe:any;\r\n @Output() closemodal = new EventEmitter();\r\n @Output() onsave = new EventEmitter();\r\n modalRef = new MDBModalRef();\r\n // @Output() outContactId = new EventEmitter();\r\n\r\n\r\n cancelButton: any;\r\n saveButton: any;\r\n saveNewButton: any;\r\n saveEditButton: any;\r\n constructor(\r\n //public modalRef: MDBModalRef,\r\n private contactService: ContactService,\r\n private toast: ToastService,\r\n private router: Router,\r\n public MapInformationService:MapInformationService,\r\n private translate:TranslateService\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.clearForm();\r\n this.GetContactCountries();\r\n this.getCustomer();\r\n setTimeout(() => {\r\n $('.modal').css('overflow-y', 'auto');\r\n }, 1000);\r\n\r\n\r\n this.cancelButton = {\r\n text: this.translate.instant('ModalNewContact.btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupNewContact = false;\r\n },\r\n };\r\n\r\n this.saveButton = {\r\n text: this.translate.instant('ModalNewContact.btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.save(true, true);\r\n },\r\n };\r\n\r\n this.saveNewButton = {\r\n text: this.translate.instant('ModalNewContact.btnSaveNew'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.save(false, true);\r\n },\r\n\r\n };\r\n\r\n this.saveEditButton = {\r\n text: this.translate.instant('ModalNewContact.btnSaveEdit'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.save(false, false, true);\r\n // this.submitForm(true, true);\r\n },\r\n };\r\n\r\n }\r\n\r\n save(cierramodal, limpiacampos, goEdit = false) {\r\n let value = this.validatingFormContact.value;\r\n value.Id = 0;\r\n value.CustomerID = value.CustomerID ? value.CustomerID : 0;\r\n console.log('values', value);\r\n this.contactService.SaveContact(value).subscribe(result => {\r\n this.toast.success(this.translate.instant('msgPepCreSucc'));\r\n // this.outContactId.emit(result.Result);\r\n\r\n let obj = {\r\n id: result[0].Result,\r\n First: this.validatingFormContact.get('FirstName').value ? this.validatingFormContact.get('FirstName').value : '',\r\n Last: this.validatingFormContact.get('LastName').value ? this.validatingFormContact.get('LastName').value : '',\r\n Email: this.validatingFormContact.get('Email').value ? this.validatingFormContact.get('Email').value : ''\r\n }\r\n\r\n if (limpiacampos) {\r\n this.clearForm();\r\n }\r\n\r\n if (cierramodal) {\r\n // this.modalRef.hide();\r\n this.closemodal.emit();\r\n }\r\n\r\n if (goEdit) {\r\n this.router.navigateByUrl('/contacts/editContact/' + result[0].Result);\r\n // this.modalRef.hide();\r\n this.closemodal.emit();\r\n }\r\n\r\n // this.get(true);\r\n // this.action.next({success: true, data: result[0].Result});\r\n\r\n this.onsave.emit(obj);\r\n },\r\n error => {\r\n this.toast.error('Error saving contact');\r\n this.action.next({success: false, data: null});\r\n });\r\n\r\n }\r\n\r\n clearForm() {\r\n this.iscCstomerAddress = false;\r\n this.validatingFormContact = new FormGroup({\r\n FirstName: new FormControl(null, [Validators.required, Validators.maxLength(30),Validators.pattern('[a-zA-Z ]*')]),\r\n LastName: new FormControl(null, [Validators.required, Validators.maxLength(30),Validators.pattern('[a-zA-Z ]*')]),\r\n Nickname: new FormControl(null, []),\r\n CustomerID: new FormControl(null, []),\r\n Department: new FormControl(null, []),\r\n JobTitle: new FormControl(null, []),\r\n WebPage: new FormControl(null, [ Validators.pattern(\"(https?://)?([\\\\da-z.-]+)\\\\.([a-z.]{2,6})[/\\\\w .-]*/?\")]),\r\n Comments: new FormControl(null, [Validators.maxLength(250)]),\r\n // Address: new FormControl(null, []),\r\n // MobilePhone: new FormControl(null, []),\r\n // Country: new FormControl(null, []),\r\n // City: new FormControl(null, []),\r\n // State: new FormControl(null, []),\r\n // Zip: new FormControl(null, []),\r\n Email: new FormControl(null, [Validators.pattern(\"^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\\.[a-z]{2,4}$\")]),\r\n // HomePhone: new FormControl(null, []),\r\n Phone: new FormControl(null, []),\r\n // Business2Phone: new FormControl(null, []),\r\n // OtherFax: new FormControl(null, []),\r\n // PHONEEXT1: new FormControl(null, []),\r\n // PHONEEXT2: new FormControl(null, []),\r\n // OffFax: new FormControl(null, []),\r\n // lon: new FormControl(null, []),\r\n // lat: new FormControl(null, []),\r\n });\r\n }\r\n\r\n cancelCreateContact() {\r\n this.clearForm();\r\n this.closemodal.emit();\r\n // this.modalRef.hide();\r\n }\r\n\r\n changeAddress() {\r\n // this.iscCstomerAddress = !this.iscCstomerAddress;\r\n\r\n if (this.iscCstomerAddress) {\r\n let id = this.validatingFormContact.get('CustomerID').value;\r\n\r\n if (!id) {\r\n id = 0;\r\n }\r\n\r\n this.contactService.GetCustomer(id).subscribe(result => {\r\n console.clear();\r\n console.log('customer', result[0]);\r\n const val = result[0];\r\n\r\n this.validatingFormContact.get('Address').setValue(val.ADDRESS);\r\n this.validatingFormContact.get('Country').setValue(val.COUNTRY);\r\n this.validatingFormContact.get('City').setValue(val.CITY);\r\n this.validatingFormContact.get('State').setValue(val.STATE);\r\n this.validatingFormContact.get('Zip').setValue(val.ZIP);\r\n });\r\n }\r\n }\r\n\r\n GetContactCountries() {\r\n this.contactService.GetContactCountries().subscribe(result => {\r\n this.optionsCountry = result.map((val) => {\r\n return { // Return the new object structure\r\n label: val.COUNTYNAME,\r\n value: val.CountryISO3\r\n };\r\n });\r\n });\r\n }\r\n\r\n getCustomer() {\r\n this.MapInformationService.SaveInfoSites({method:\"Get_CustomerCE\"}).subscribe(result => {\r\n console.log('customer', result);\r\n this.customerSelect = result.map((val, i) => {\r\n return { // Return the new object structure\r\n label: val.DESCRIPTION,\r\n value: val.ID\r\n };\r\n });\r\n console.log('CUstomer ', this.customerSelect);\r\n });\r\n }\r\n\r\n handleAddressChange(res){\r\n console.log(res);\r\n this.validatingFormContact.get('lon').setValue(res.geometry.location.lng());\r\n this.validatingFormContact.get('lat').setValue(res.geometry.location.lat());\r\n this.validatingFormContact.get('Address').setValue(res.formatted_address);\r\n // this.userSetting.long = res.geometry.location.lng();\r\n // this.userSetting.lat = res.geometry.location.lat();\r\n // this.userSetting.geoname = res.formatted_address;\r\n }\r\n\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NewContactComponent } from './new-contact.component';\r\nimport { MdbGlobalModule } from '../mdb-global.module';\r\n\r\n//input de ubicacion\r\nimport { GooglePlaceModule } from 'ngx-google-places-autocomplete';\r\nimport {DxFilterBuilderModule, DxAccordionModule,DxFileUploaderModule,DxDropDownButtonModule, DxButtonGroupModule, DxAutocompleteModule, DxContextMenuModule, DxDropDownBoxModule, DxGanttModule, DxPopupModule, DxRadioGroupModule, DxSchedulerModule, DxScrollViewModule, DxSelectBoxModule, DxSliderModule, DxTabPanelModule, DxTextBoxModule, DxTreeViewModule, DxDataGridModule, DxTagBoxModule, DxDateBoxModule, DxCheckBoxModule, DxButtonModule } from 'devextreme-angular';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n NewContactComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n GooglePlaceModule,\r\n DxAccordionModule,\r\n DxFilterBuilderModule,\r\n DxFileUploaderModule,\r\n DxDropDownButtonModule, \r\n DxButtonGroupModule,\r\n DxAutocompleteModule, \r\n DxContextMenuModule, \r\n DxDropDownBoxModule, \r\n DxGanttModule, \r\n DxPopupModule, \r\n DxRadioGroupModule, \r\n DxSchedulerModule, \r\n DxScrollViewModule, \r\n DxSelectBoxModule, \r\n DxSliderModule, \r\n DxTabPanelModule, \r\n DxTextBoxModule, \r\n DxTreeViewModule, \r\n DxDataGridModule, \r\n DxTagBoxModule,\r\n DxDateBoxModule,\r\n DxCheckBoxModule,\r\n DxButtonModule\r\n ],\r\n exports: [NewContactComponent]\r\n})\r\nexport class NewContactModule { }\r\n","export default \".modal-open .modal {\\n overflow-x: hidden;\\n overflow-y: auto !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL25ldy1lbXBsb3llZS9FOlxcRGV2XFxDVUJFVEVNUFxcbmV3Y3ViZS9zcmNcXGFwcFxcc2hhcmVkXFxuZXctZW1wbG95ZWVcXG5ldy1lbXBsb3llZS5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL25ldy1lbXBsb3llZS9uZXctZW1wbG95ZWUuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxrQkFBQTtFQUNBLDJCQUFBO0FDQ0YiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvbmV3LWVtcGxveWVlL25ldy1lbXBsb3llZS5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5tb2RhbC1vcGVuIC5tb2RhbCB7XHJcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcclxufVxyXG4iLCIubW9kYWwtb3BlbiAubW9kYWwge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcbn0iXX0= */\"","import { Component, OnInit, Output, EventEmitter, ViewChild, Input } from '@angular/core';\r\nimport { MDBModalRef, ToastService } from 'ng-uikit-pro-standard';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { ContactService } from 'src/app/services/contact.service';\r\nimport { Subject } from 'rxjs';\r\nimport { Router } from '@angular/router';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { EmployeesService } from '../../services/employees.service';\r\nimport { SharedDatagridModule } from '../shared-datagrid/shared-datagrid.module';\r\nimport { DatePipe } from '@angular/common';\r\nimport { DxFormComponent } from 'devextreme-angular';\r\nimport Popup from 'devextreme/ui/popup'; \r\ndeclare var $: any;\r\nimport { TranslateService } from '@ngx-translate/core';\r\n@Component({\r\n selector: 'app-new-employee',\r\n templateUrl: './new-employee.component.html',\r\n styleUrls: ['./new-employee.component.scss']\r\n})\r\nexport class NewEmployeeeComponent implements OnInit {\r\n // @ViewChild(DxFormComponent, { static: false }) myform: DxFormComponent;\r\n newEmployeeForm: FormGroup;\r\n @Output() cloeModal = new EventEmitter();\r\n @Output() result = new EventEmitter();\r\n @Input() popupNewEmployee: boolean;\r\n\r\n //Listas de Formulario\r\n departments: any = [];\r\n jobCode: any = [];\r\n supervisors: any = [];\r\n employmentType: any = [];\r\n submited = false;\r\n // popupNewEmployee = false;\r\n responsible: { value: string; label: string; }[] = [];\r\n\r\n BirthDateDate:number\r\n todayButtonBirthDateDate: any;\r\n prevDateButtonBirthDateDate: any;\r\n nextDateButtonBirthDateDate: any;\r\n\r\n HireDateDate:number\r\n todayButtonHireDateDate: any;\r\n prevDateButtonHireDateDate: any;\r\n nextDateButtonHireDateDate: any;\r\n\r\n TerminationDateDate:number\r\n todayButtonTerminationDateDate: any;\r\n prevDateButtonTerminationDateDate: any;\r\n nextDateButtonTerminationDateDate: any;\r\n\r\n millisecondsInDay = 24 * 60 * 60 * 1000;\r\n\r\n\r\n\r\n\r\n constructor(\r\n private contactService: ContactService,\r\n private router: Router,\r\n private generalService: GeneralService,\r\n private toast: ToastService,\r\n private employeesService: EmployeesService,\r\n private datepipe: DatePipe,\r\n private datagrid: SharedDatagridModule,\r\n private translate:TranslateService\r\n ) {\r\n\r\n Popup.defaultOptions({\r\n device: { deviceType: \"phone\" },\r\n options: {\r\n fullScreen: true,\r\n\r\n }\r\n });\r\n this.todayButtonBirthDateDate = {\r\n text: this.translate.instant('btnToday'),\r\n onClick: () => {\r\n this.BirthDateDate = new Date().getTime();\r\n }\r\n };\r\n\r\n this.prevDateButtonBirthDateDate = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.BirthDateDate -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.nextDateButtonBirthDateDate = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.BirthDateDate += this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.todayButtonHireDateDate = {\r\n text: this.translate.instant('btnToday'),\r\n onClick: () => {\r\n this.HireDateDate = new Date().getTime();\r\n }\r\n };\r\n\r\n this.prevDateButtonHireDateDate = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.HireDateDate -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.nextDateButtonHireDateDate = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.HireDateDate += this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.todayButtonTerminationDateDate = {\r\n text: this.translate.instant('btnToday'),\r\n onClick: () => {\r\n this.TerminationDateDate = new Date().getTime();\r\n }\r\n };\r\n\r\n this.prevDateButtonTerminationDateDate = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.TerminationDateDate -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n this.nextDateButtonTerminationDateDate = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n this.TerminationDateDate += this.millisecondsInDay;\r\n }\r\n };\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.responsible = [{ value: 'hplaa', label: 'hola' }]\r\n this.startForms();\r\n this.getDepartments();\r\n this.getJobCode();\r\n this.getSupervisors();\r\n this.getEmploymentType();\r\n }\r\n ngAfterViewInit() {\r\n // this.myform.instance.validate()\r\n }\r\n\r\n startForms() {\r\n\r\n this.newEmployeeForm = new FormGroup({\r\n EmployeeNumber: new FormControl('', []),\r\n FirstName: new FormControl(null, [Validators.pattern('[a-zA-Z ]*'), Validators.required]),\r\n LastName: new FormControl(null, [Validators.pattern('[a-zA-Z ]*'), Validators.required]),\r\n BirthDate: new FormControl('', []),\r\n Department: new FormControl('', []),\r\n JobCode: new FormControl('', []),\r\n Supervisor: new FormControl('', []),\r\n EmploymentType: new FormControl(0, []),\r\n Active: new FormControl(true, []),\r\n MobilePhone: new FormControl('', []),\r\n Email: new FormControl('', []),\r\n EmergencyContactName: new FormControl('', []),\r\n EmergencyContactNumber: new FormControl('', []),\r\n Address: new FormControl('', []),\r\n HireDate: new FormControl(null, []),\r\n TerminationDate: new FormControl(null, []),\r\n })\r\n }\r\n\r\n submitForm(action) {\r\n\r\n let form = this.newEmployeeForm.value;\r\n let date = '';\r\n if (!this.newEmployeeForm.controls.FirstName.valid) {\r\n this.toast.error('First Name invalid');\r\n return false;\r\n }\r\n if (!this.newEmployeeForm.controls.LastName.valid) {\r\n this.toast.error('Last Name invalid');\r\n return false;\r\n }\r\n\r\n if (form.BirthDate != undefined && form.BirthDate != ''){\r\n date = this.datepipe.transform(new Date(form.BirthDate), 'yyyyMMdd')\r\n }\r\n\r\n let date1 = \"\"\r\n if (form.HireDate != undefined && form.HireDate != \"\"){\r\n date1 = this.datepipe.transform(new Date(form.HireDate), 'yyyyMMdd')\r\n }\r\n let date2 = \"\"\r\n if (form.TerminationDate != undefined && form.TerminationDate != \"\"){\r\n date2 = this.datepipe.transform(new Date(form.TerminationDate), 'yyyyMMdd')\r\n }\r\n\r\n\r\n form.Active == false ? form.Active = '0' : form.Active = '1';\r\n\r\n\r\n this.employeesService.InsertEmployee(\r\n form.FirstName,\r\n form.LastName,\r\n form.EmployeeNumber,\r\n form.Active,\r\n form.Email,\r\n form.MobilePhone,\r\n form.EmergencyContactName,\r\n form.EmergencyContactNumber,\r\n form.Address,\r\n form.JobCode,\r\n form.Department,\r\n form.EmploymentType,\r\n form.Supervisor,\r\n date,date1,\r\n date2).subscribe(result => {\r\n console.log(result)\r\n this.newEmployeeForm.reset()\r\n this.success()\r\n // this.datagrid.reloadComponent()\r\n console.log(action)\r\n switch (action) {\r\n case 'save':\r\n this.popupNewEmployee = false;\r\n console.log(result[0])\r\n // form.id = result[0].ReturnID\r\n this.result.emit(result[0]);\r\n this.cloeModal.emit(false);\r\n console.log('paso')\r\n break;\r\n case 'new':\r\n this.newEmployeeForm.reset();\r\n break;\r\n }\r\n })\r\n\r\n\r\n //SP_API_Flex_Get_HumanResourcesAll\r\n //SP_API_Flex_Get_EmployeeListAll\r\n }\r\n\r\n\r\n handleAddressChange(res) {\r\n console.log(res.formatted_address)\r\n this.newEmployeeForm.get('Address').setValue(res.formatted_address);\r\n }\r\n\r\n success() {\r\n this.toast.success(this.translate.instant('msgEmpCreSucc'));\r\n }\r\n\r\n getDepartments() {\r\n this.employeesService.GetDepartments().subscribe(result => {\r\n // console.log('Departamentos', result);\r\n // this.departments = result;\r\n this.departments = result.map((val) => {\r\n return {\r\n name: val.NAME,\r\n id: val.ID\r\n }\r\n })\r\n })\r\n }\r\n\r\n getJobCode() {\r\n this.employeesService.GetJobCode().subscribe(result => {\r\n // console.log('Job Code', result)\r\n this.jobCode = result.map((val) => {\r\n return {\r\n id: val.ID,\r\n name: val.DESCRIPTION\r\n }\r\n });\r\n this.newEmployeeForm.get('JobCode').setValue(this.jobCode[0].id)\r\n })\r\n }\r\n\r\n getSupervisors() {\r\n this.employeesService.GetSupervisor().subscribe(result => {\r\n // console.log('Supervisors', result)\r\n this.supervisors = result.map((val) => {\r\n return {\r\n id: val.ID,\r\n name: val.CONTACTNAME\r\n }\r\n });\r\n })\r\n }\r\n\r\n getEmploymentType() {\r\n this.employeesService.GetEmploymentType().subscribe(result => {\r\n // console.log('Employment Type', result)\r\n this.employmentType = result.map((val) => {\r\n return {\r\n id: val.ID,\r\n name: val.EMPLOYMENTTYPE\r\n }\r\n });\r\n })\r\n }\r\n\r\n CerrarEmployee() {\r\n this.startForms()\r\n this.cloeModal.emit(true);\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NewEmployeeeComponent } from './new-employee.component'; \r\n\r\n//input de ubicacion\r\nimport { GooglePlaceModule } from 'ngx-google-places-autocomplete';\r\nimport { DxFilterBuilderModule, DxAccordionModule, DxFileUploaderModule, DxDropDownButtonModule, DxButtonGroupModule, DxAutocompleteModule, DxContextMenuModule, DxDropDownBoxModule, DxGanttModule, DxPopupModule, DxRadioGroupModule, DxSchedulerModule, DxScrollViewModule, DxSelectBoxModule, DxSliderModule, DxTabPanelModule, DxTextBoxModule, DxTreeViewModule, DxDataGridModule, DxTagBoxModule, DxDateBoxModule, DxCheckBoxModule, DxButtonModule, DxNumberBoxModule, DxValidatorModule } from 'devextreme-angular';\r\nimport { DxTextAreaModule } from 'devextreme-angular';\r\nimport { MdbGlobalModule } from 'src/app/shared/mdb-global.module';\r\nimport {\r\n DxFormModule, \r\n} from 'devextreme-angular';\r\n@NgModule({\r\n declarations: [\r\n NewEmployeeeComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n GooglePlaceModule,\r\n DxAccordionModule,\r\n DxFilterBuilderModule,\r\n DxFileUploaderModule,\r\n DxDropDownButtonModule,\r\n DxButtonGroupModule,\r\n DxAutocompleteModule,\r\n DxContextMenuModule,\r\n DxDropDownBoxModule,\r\n DxGanttModule,\r\n DxPopupModule,\r\n DxRadioGroupModule,\r\n DxSchedulerModule,\r\n DxScrollViewModule,\r\n DxSelectBoxModule,\r\n DxSliderModule,\r\n DxTabPanelModule,\r\n DxTextBoxModule,\r\n DxTreeViewModule,\r\n DxDataGridModule,\r\n DxTagBoxModule,\r\n DxDateBoxModule,\r\n DxCheckBoxModule,\r\n DxButtonModule,\r\n DxNumberBoxModule,\r\n DxValidatorModule,\r\n DxTextAreaModule,\r\n DxFormModule, \r\n ],\r\n exports: [NewEmployeeeComponent]\r\n})\r\nexport class NewEmployeeModule { }\r\n","export default \"::ng-deep .dx-tile-content {\\n height: 100%;\\n padding: 0;\\n position: relative;\\n}\\n\\n::ng-deep .dx-tile-content .image {\\n height: 100%;\\n width: 100%;\\n background-position: center;\\n background-size: cover;\\n display: block;\\n}\\n\\n#tileview {\\n -webkit-box-pack: center !important;\\n justify-content: center !important;\\n display: -webkit-box !important;\\n display: flex !important;\\n}\\n\\n.dx-tileview {\\n position: absolute;\\n width: 100%;\\n}\\n\\n::ng-deep .dx-gallery-indicator {\\n position: absolute;\\n top: 10px !important;\\n width: 100%;\\n height: 10px;\\n font-size: 0;\\n pointer-events: none;\\n text-align: center;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL3Byb2plY3QtYXR0YWNoZWQtZG9jdW1lbnQvRTpcXERldlxcQ1VCRVRFTVBcXG5ld2N1YmUvc3JjXFxhcHBcXHNoYXJlZFxccHJvamVjdC1hdHRhY2hlZC1kb2N1bWVudFxccHJvamVjdC1hdHRhY2hlZC1kb2N1bWVudC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL3Byb2plY3QtYXR0YWNoZWQtZG9jdW1lbnQvcHJvamVjdC1hdHRhY2hlZC1kb2N1bWVudC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQTtFQUNFLFlBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7QUNBRjs7QURFQTtFQUNFLFlBQUE7RUFDQSxXQUFBO0VBQ0EsMkJBQUE7RUFDQSxzQkFBQTtFQUNBLGNBQUE7QUNDRjs7QURFQTtFQUNLLG1DQUFBO1VBQUEsa0NBQUE7RUFDQSwrQkFBQTtFQUFBLHdCQUFBO0FDQ0w7O0FEU0E7RUFDRSxrQkFBQTtFQUlBLFdBQUE7QUNURjs7QURhQTtFQUNJLGtCQUFBO0VBQ0Esb0JBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFlBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0FDVkoiLCJmaWxlIjoic3JjL2FwcC9zaGFyZWQvcHJvamVjdC1hdHRhY2hlZC1kb2N1bWVudC9wcm9qZWN0LWF0dGFjaGVkLWRvY3VtZW50LmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbjo6bmctZGVlcCAuZHgtdGlsZS1jb250ZW50IHtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgcGFkZGluZzogMDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuOjpuZy1kZWVwIC5keC10aWxlLWNvbnRlbnQgLmltYWdlIHtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbiN0aWxldmlldyB7XHJcbiAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcclxuICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICAvLyBtYXJnaW46IGF1dG87XHJcbiAgICAvLyB3aWR0aDogMzAwcHg7XHJcbn1cclxuXHJcbi8vICNnYWxsZXJ5IHtcclxuLy8gICAgbWFyZ2luOiBhdXRvO1xyXG4vLyAgICB3aWR0aDogMTAwJTtcclxuLy8gfVxyXG5cclxuLmR4LXRpbGV2aWV3IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgLy8gbWFyZ2luOiBhdXRvO1xyXG4gIC8vIHJpZ2h0OiAwO1xyXG4gIC8vIGxlZnQ6IDMlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG5cclxufVxyXG5cclxuOjpuZy1kZWVwIC5keC1nYWxsZXJ5LWluZGljYXRvciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDEwcHggIWltcG9ydGFudDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgZm9udC1zaXplOiAwO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuIiwiOjpuZy1kZWVwIC5keC10aWxlLWNvbnRlbnQge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuOjpuZy1kZWVwIC5keC10aWxlLWNvbnRlbnQgLmltYWdlIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuI3RpbGV2aWV3IHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xufVxuXG4uZHgtdGlsZXZpZXcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG46Om5nLWRlZXAgLmR4LWdhbGxlcnktaW5kaWNhdG9yIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHggIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTBweDtcbiAgZm9udC1zaXplOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufSJdfQ== */\"","import { Component, EventEmitter, Input, OnInit, Output, SimpleChanges, ViewChild } from '@angular/core';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { SalesProjectService } from 'src/app/services/sales-project.service';\r\nimport { DriveserviceService } from 'src/app/services/driveservice.service';\r\nimport { EmployeesService } from 'src/app/services/employees.service';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { EstimateService } from 'src/app/services/estimate.service';\r\nimport { ProjectService } from 'src/app/services/project.service';\r\nimport { DxDataGridComponent } from 'devextreme-angular';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport DataGrid from \"devextreme/ui/data_grid\";\r\n\r\n@Component({\r\n selector: 'app-project-attached-document',\r\n templateUrl: './project-attached-document.component.html',\r\n styleUrls: ['./project-attached-document.component.scss']\r\n})\r\nexport class ProjectAttachedDocumentComponent implements OnInit {\r\n\r\n @Output() omitirsave2 = new EventEmitter();\r\n @Input() GalleryImages: boolean = true;\r\n @Input() showTabs: any;\r\n @Input() insertDocument: any;\r\n @Input() deleteDocument: any;\r\n @Input() getDocument: any;\r\n @Input() projectid: any;\r\n @Input() nameModule: any;\r\n @Input() editParts: any;\r\n @Input() itemid2: any;\r\n @Input() itemid: any;\r\n\r\n @ViewChild('GridDocuments', { static: false }) GridDocuments: DxDataGridComponent;\r\n\r\n private _itemid: number;\r\n\r\n popupNewDoc = false;\r\n _documentForm: FormGroup;\r\n currentCustomerid = localStorage.getItem('customerid');\r\n\r\n documentTypeSelect = [];\r\n employeeSelect = [];\r\n opeitemid: any;\r\n\r\n popupDocument = false;\r\n filterAttachedDocument = {\r\n name: '',\r\n revision: '',\r\n documentType: [],\r\n createby: []\r\n }\r\n\r\n value: any[] = [];\r\n documentDataSource = [];\r\n documentDataSourceOriginal = [];\r\n settings: any = {};\r\n ChangeBase64: any;\r\n\r\n selectedFile: any=\"\";\r\n attachment:any=\"\";\r\n actionDocument = 'New Document';\r\n showModalDelete:boolean=false\r\n idDocument:any\r\n\r\n File:File;\r\n valueDocument: any[] = [];\r\n\r\n cancelButton: any;\r\n saveButton: any;\r\n saveNewButton: any;\r\n imagesPicDataSource: any = [''];\r\n imagenFullScreen:any=\"\"\r\n openModalFullScreen:boolean=false\r\n tipoimagen:any\r\n changeBase64:boolean= true\r\n base64Imagenes:any[]=[{\r\n tipo: 'jpg',\r\n base64: '../../../../assets/img/noimage.jpeg'\r\n }]\r\n dataSource10: any;\r\n\r\n editLinkButton: any;\r\n externalLink: any = '';\r\n previewFile: any;\r\n showPreviewImage: boolean = false;\r\n\r\n optionsFile: any[] = ['Upload File to Cube','Select External File'];\r\n valueOptionsFile = this.optionsFile[0];\r\n uploadingFile: boolean;\r\n changeRadio: any = null;\r\n\r\n selectedLink: any;\r\n\r\n progress: number = 0;\r\n\r\n modalCookies: boolean = false;\r\n dominioactual: any;\r\n\r\n selectedTabPopup: any = 0;\r\n\r\n disableIconLink: boolean = false;\r\n\r\n tabsClass: any = \"col-md-12\";\r\n ToEmployeeDocument: boolean = false;\r\n ServiceSite: boolean = false;\r\n\r\n constructor(\r\n private toast: ToastService,\r\n private sanitizer: DomSanitizer,\r\n private employee: EmployeesService,\r\n private ProjectService: ProjectService,\r\n private estimateService: EstimateService,\r\n private appConfigService: AppConfigService,\r\n private salesProjectService: SalesProjectService,\r\n private MapInformationService:MapInformationService,\r\n private googleDrivePickerService: DriveserviceService,\r\n private translate:TranslateService\r\n ) {\r\n\r\n // this.ServiceSite = false\r\n\r\n this.imagesPicDataSource = [''];\r\n this.settings.dateFormat = this.appConfigService.dateFormat;\r\n\r\n this.initDocumentForm();\r\n\r\n this.editLinkButton = {\r\n icon: 'fa fa-link',\r\n type: 'default',\r\n onClick: () => {\r\n window.open(this.externalLink, \"_blank\");\r\n },\r\n }\r\n\r\n this.cancelButton = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.popupDocument = false;\r\n this.valueDocument=[]\r\n },\r\n };\r\n\r\n this.saveButton = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.submitDocument(true)\r\n },\r\n disabled:[this._documentForm.invalid]\r\n };\r\n\r\n this.saveNewButton = {\r\n text: this.translate.instant('btnSaveNew'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.submitDocument()\r\n },\r\n disabled:[this._documentForm.invalid]\r\n };\r\n\r\n DataGrid.defaultOptions({\r\n device: { deviceType: \"phone\" },\r\n options: {\r\n columnAutoWidth: true,\r\n columnHidingEnabled: true,\r\n wordWrapEnabled: false,\r\n rowAlternationEnabled: false\r\n }\r\n });\r\n\r\n DataGrid.defaultOptions({\r\n device: { deviceType: \"desktop\" },\r\n options: {\r\n columnAutoWidth: true,\r\n columnHidingEnabled: false\r\n }\r\n });\r\n\r\n this.ProjectService.GetGridConfiguration(this.gridId).subscribe(result=>{\r\n console.log(result)\r\n if(result && result.length != 0){\r\n this.actualState = result[0];\r\n }else{\r\n this.actualState = 0;\r\n }\r\n this.actualState.FILTERCONFIG\r\n let finalFilter = this.actualState.FILTERCONFIG == \"\" || this.actualState.FILTERCONFIG == undefined ? null : JSON.parse(this.actualState.FILTERCONFIG)\r\n let finalColumn = this.actualState.COLUMNCONFIG == \"\" || this.actualState.COLUMNCONFIG == undefined ? null : JSON.parse(this.actualState.COLUMNCONFIG)\r\n \r\n if(finalFilter){ this.filterValue = finalFilter; }\r\n\r\n if(finalColumn){\r\n localStorage.setItem('GridDocuments', this.actualState.COLUMNCONFIG);\r\n if(this.GridDocuments) { this.GridDocuments.instance.state({}); }\r\n }\r\n\r\n if(result && result.length != 0){\r\n if (result[0].EXTRACONFIG){\r\n if (JSON.parse(result[0].EXTRACONFIG).collased != undefined){\r\n if (JSON.parse(result[0].EXTRACONFIG).collased == 1){\r\n // this.closeParents()\r\n this.collased = true\r\n } else {\r\n // this.OpenParents()\r\n this.collased = false\r\n }\r\n }\r\n } \r\n }\r\n })\r\n\r\n }\r\n\r\n ngOnInit() {\r\n\r\n console.log(\"🚀 ~ file: project-attached-document.component.ts:117 ~ ProjectAttachedDocumentComponent ~ this.getDocument:\", this.getDocument)\r\n\r\n this.ServiceSite = this.getDocument.method == 'Get_ServiceSite_DocumentsCE' ? true : false\r\n\r\n if(this.nameModule == 'EditEmployeeDocument') this.ToEmployeeDocument = true\r\n this.getProjectDocument();\r\n this.initDocumentForm();\r\n\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.getProjectDocument();\r\n }\r\n\r\n mddocument() {\r\n this.popupDocument = true;\r\n this.actionDocument = 'New Document';\r\n this.initDocumentForm();\r\n this.getDocumentType();\r\n this.getEmployee();\r\n }\r\n\r\n onCellPrepared(ev) { }\r\n\r\n getProjectDocument() {\r\n if (this.getDocument != undefined){\r\n if(this.getDocument.name_id2 != undefined){\r\n this.salesProjectService.GetDocumentsTwoParameters(this.itemid, this.getDocument, this.itemid2).subscribe(result => {\r\n let paths = [];\r\n this.documentDataSource = result.map(x=>{\r\n x.FILEPATH = x.filepath\r\n x.ATTACHMENT = x.File_Name\r\n paths.push(x.FILEPATH);\r\n x.FilePath!==undefined ? x.FILEPATH = x.FilePath : '';\r\n x.HYPERLINK==undefined || null ? x.HYPERLINK = '' : '';\r\n\r\n if(x.ATTACHMENT !== \"\" && x.ATTACHMENT !== undefined && x.ATTACHMENT !== null){\r\n let type = x.ATTACHMENT.split('.');\r\n if(type[1] != undefined){\r\n x.TYPEFILE = type[1].toUpperCase();\r\n } else {\r\n x.TYPEFILE = \"\"\r\n }\r\n }\r\n\r\n x.LOCKED == true ? x.LOCKED = \"Yes\" : x.LOCKED = \"No\"\r\n x.FILEPATH += x.File_Name\r\n // x.filepath += x.File_Name\r\n\r\n return x;\r\n });\r\n this.documentDataSourceOriginal = this.documentDataSource;\r\n },error=>{\r\n });\r\n } else {\r\n this.salesProjectService.GetDocuments(this.itemid, this.getDocument).subscribe(result => {\r\n let paths = [];\r\n this.documentDataSource = result.map(x=>{\r\n paths.push(x.FILEPATH);\r\n x.FilePath!==undefined ? x.FILEPATH = x.FilePath : '';\r\n x.HYPERLINK==undefined || null ? x.HYPERLINK = '' : '';\r\n\r\n if(x.ATTACHMENT !== \"\" && x.ATTACHMENT !== undefined && x.ATTACHMENT !== null){\r\n let type = x.ATTACHMENT.split('.');\r\n if(type[1] != undefined){\r\n x.TYPEFILE = type[1].toUpperCase();\r\n } else {\r\n x.TYPEFILE = \"\"\r\n }\r\n }\r\n x.LOCKED == true ? x.LOCKED = \"Yes\" : x.LOCKED = \"No\"\r\n return x;\r\n });\r\n this.documentDataSourceOriginal = this.documentDataSource;\r\n if(this.GalleryImages==false){\r\n this.changeAcordeon(\"Images Pictures\");\r\n }\r\n },error=>{\r\n });\r\n }\r\n }\r\n\r\n this.showTabs ? this.tabsClass = \"col-md-12 hide-panel-tabs\": '';\r\n }\r\n\r\n initDocumentForm() {\r\n this.uploadingFile = true;\r\n if(this.nameModule == 'EditEmployeeDocument'){\r\n this._documentForm = new FormGroup({\r\n name: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n documenttypeid: new FormControl({ value: \"\", disabled: false }, [Validators.required]),\r\n documentrevision: new FormControl({ value: null, disabled: false }, [Validators.required]),\r\n revisionnotes: new FormControl({ value: '', disabled: false }, []),\r\n description: new FormControl({ value: '', disabled: false }, []),\r\n attachment: new FormControl({ value: '', disabled: false }, []), //Nombre de file con extensión\r\n employeeid: new FormControl({ value: this.itemid, disabled: false }, []),\r\n optionFile: new FormControl({ value: this.valueOptionsFile, disabled: false }, []),\r\n id: new FormControl({ value: 0, disabled: false }, []),\r\n restricted: new FormControl({ value: false, disabled: false }, []),\r\n });\r\n }else{\r\n this._documentForm = new FormGroup({\r\n name: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n documenttypeid: new FormControl({ value: \"\", disabled: false }, [Validators.required]),\r\n documentrevision: new FormControl({ value: null, disabled: false }, [Validators.required]),\r\n revisionnotes: new FormControl({ value: '', disabled: false }, []),\r\n description: new FormControl({ value: '', disabled: false }, []),\r\n attachment: new FormControl({ value: '', disabled: false }, []), //Nombre de file con extensión\r\n projectid: new FormControl({ value: this.itemid, disabled: false }, []),\r\n optionFile: new FormControl({ value: this.valueOptionsFile, disabled: false }, []),\r\n id: new FormControl({ value: 0, disabled: false }, []),\r\n restricted: new FormControl({ value: false, disabled: false }, []),\r\n });\r\n }\r\n this._documentForm.addControl('hyperlink', new FormControl({ value: '', disabled: false }, []));\r\n }\r\n\r\n setDocumentForm(val) {\r\n this.actionDocument = 'Edit Document';\r\n this.getDocumentType();\r\n this._documentForm = new FormGroup({\r\n name: new FormControl({ value: this.insertDocument.name_id == 'assetid' ? val.DOCNAME : val.NAME, disabled: false }, [Validators.required]),\r\n documenttypeid: new FormControl({ value: val.DOCUMENTTYPEID != undefined && val.DOCUMENTTYPEID != 0 && val.DOCUMENTTYPEID != \"\" ? val.DOCUMENTTYPEID : \"\", disabled: false }, [Validators.required]),\r\n documentrevision: new FormControl({ value: val.REVISION, disabled: false }, [Validators.required]),\r\n revisionnotes: new FormControl({ value: val.REVISIONNOTES, disabled: false }, []),\r\n description: new FormControl({ value: val.DESCRIPTION, disabled: false }, []),\r\n attachment: new FormControl({ value: '', disabled: false }, []),\r\n projecttodoid: new FormControl({ value: '', disabled: false }, []),\r\n employeeid: new FormControl({ value: this.currentCustomerid, disabled: false }, []),\r\n optionFile: new FormControl({ value: this.valueOptionsFile, disabled: false }, []),\r\n id: new FormControl({ value: val.ID, disabled: false }, []),\r\n restricted: new FormControl({ value: val.RESTRICTED, disabled: false }, []),\r\n });\r\n\r\n this._documentForm.addControl('hyperlink', new FormControl({ value: val.HYPERLINK, disabled: false }, []))\r\n let upload;\r\n if(val.TYPEFILE!=='' && val.TYPEFILE!== null){\r\n this.uploadingFile = true;\r\n this.MapInformationService.GetDocument(val.FILEPATH).subscribe(result => {\r\n let typeMime=[]\r\n\r\n if(val.ATTACHMENT != undefined && val.ATTACHMENT != null){\r\n typeMime = val.ATTACHMENT.toString().split(\".\")\r\n } else {\r\n typeMime = [\"\",\"document\"]\r\n }\r\n\r\n this.File = new File ([result.filestring], val.ATTACHMENT, {type:typeMime[1]});\r\n if(this.File!==null){\r\n\r\n this._documentForm.get('attachment').setValue(this.File.name);\r\n this.valueDocument = [this.File]\r\n this.attachment = result.filestring\r\n this.selectedFile = result.filestring\r\n this.changeBase64 = false;\r\n }\r\n })\r\n this.selectedTabPopup = 0;\r\n this.valueOptionsFile = this.optionsFile[0];\r\n }else{\r\n this.selectedTabPopup = 1;\r\n }\r\n this.externalLink = val.HYPERLINK;\r\n }\r\n\r\n // method: \"InsertVisioDocument\",\r\n // id: id,\r\n // systemid: systemid,\r\n // name: name,\r\n // documentrevision: documentrevision,\r\n // description: description,\r\n // revisionnotes: revisionnotes,\r\n // attachment: attachment,\r\n // codename: codename,\r\n // locked: locked == true ? 1:0,\r\n // doctypeid: doctypeid,\r\n // deleted: deleted == true ? 1:0,\r\n\r\n// attachment: \"icons8-autocad-48.png\"\r\n// description: \"des\"\r\n// documentrevision: 1\r\n// documenttypeid: 3\r\n// hyperlink: \"\"\r\n// id: 0\r\n// method: \"InsertVisioDocument\"\r\n// name: \"3123\"\r\n// optionFile: \"Upload File to Cube\"\r\n// projectid: \"2302\"\r\n// revisionnotes: \"notes\"\r\n// systemid: 29781\r\n\r\n submitDocument(saveandnew = false) {\r\n let form = this._documentForm.value;\r\n\r\n if(this.selectedFile.length == 0 && this.externalLink.length == 0 ){\r\n this.toast.warning('Select a File to Save');\r\n return this._documentForm.invalid;\r\n }\r\n\r\n form[this.insertDocument.name_id] = this.itemid;\r\n\r\n if(this.itemid2 != undefined) {\r\n form[this.insertDocument.name_id] = this.itemid2;\r\n }\r\n\r\n this.projectid!==null && this.projectid!==undefined ? form.projectid = this.projectid : '';\r\n\r\n form.method = this.insertDocument.method;\r\n\r\n if(this.itemid2 != undefined) {\r\n form[this.insertDocument.name_id] = this.itemid2;\r\n // if ()\r\n // delete form.projectid\r\n }\r\n\r\n form.doctypeid = form.documenttypeid\r\n form.restricted = form.restricted == true ? 1 : 0\r\n console.log('FORM ', form);\r\n this.salesProjectService.InsertDocuments(form).subscribe(result=>{\r\n console.log('INSERTED BD ', result);\r\n this.popupDocument = false;\r\n\r\n if(result[0].ReturnID != undefined) {\r\n this.salesProjectService.SaveDocumentDinamico(form.name, this.selectedFile, result[0].ReturnID, this.insertDocument.doctype)\r\n .subscribe((resp)=>{\r\n if ((typeof result[\"result\"] != \"undefined\") && (result[\"result\"].toString() == '0')){\r\n this.resetFormAfterSubmit();\r\n }else{\r\n this.resetFormAfterSubmit();\r\n }\r\n },error=>{\r\n console.log('Error ', error);\r\n this.toast.error('Error');\r\n });\r\n\r\n // this.resetFormAfterSubmit();\r\n } else {\r\n // this.salesProjectService.SaveDocumentDinamico(form.name, this.selectedFile, result[0].ResultID, this.insertDocument.doctype)\r\n this.estimateService.SaveAttachment(this.selectedFile, result[0].ResultID)\r\n .subscribe((resp)=>{\r\n this.resetFormAfterSubmit();\r\n },error=>{\r\n this.resetFormAfterSubmit();\r\n });\r\n }\r\n\r\n this.externalLink = \"\";\r\n this.selectedFile = \"\";\r\n\r\n },error=>{\r\n this.resetFormAfterSubmit();\r\n })\r\n }\r\n\r\n resetFormAfterSubmit(){\r\n this.initDocumentForm();\r\n this.toast.success(this.translate.instant('msgDocInfoUpdSucc'));\r\n this.selectedFile = '';\r\n this.valueDocument=[];\r\n this.getProjectDocument();\r\n }\r\n\r\n getDocumentType() {\r\n if(this.nameModule == 'EditEmployeeDocument'){\r\n this.salesProjectService.GetProjectDocumentEditEmployeeDocumentType().subscribe(result => {\r\n console.log(\"🚀 ~ file: project-attached-document.component.ts:492 ~ ProjectAttachedDocumentComponent ~ this.salesProjectService.GetProjectDocumentEditEmployeeDocumentType ~ result:\", result)\r\n this.documentTypeSelect = result.map(x=>{\r\n x.DESCRIPTION = x.ID + ' - ' + x.DOCNAME;\r\n return x;\r\n });\r\n });\r\n }else{\r\n if(this.insertDocument.name_id=='partid'){\r\n this.salesProjectService.GetProjectDocumentPartsType().subscribe(result => {\r\n console.log(\"🚀 ~ file: project-attached-document.component.ts:501 ~ ProjectAttachedDocumentComponent ~ this.salesProjectService.GetProjectDocumentPartsType ~ result:\", result)\r\n this.documentTypeSelect = result.map(x=>{\r\n x.DESCRIPTION = x.ID + ' - ' + x.NAME;\r\n return x;\r\n });\r\n });\r\n }else{\r\n this.salesProjectService.GetProjectDocumentType().subscribe(result => {\r\n console.log(\"🚀 ~ file: project-attached-document.component.ts:509 ~ ProjectAttachedDocumentComponent ~ this.salesProjectService.GetProjectDocumentType ~ result:\", result)\r\n this.documentTypeSelect = result.map(x => {\r\n x.DESCRIPTION = x.ID + ' - ' + x.DESCRIPTION;\r\n return x;\r\n });\r\n });\r\n }\r\n }\r\n \r\n console.log(this.documentTypeSelect);\r\n }\r\n\r\n getEmployee() {\r\n this.employee.GetAll().subscribe(result => {\r\n this.employeeSelect = result.map((val) => {\r\n return { // Return the new object structure\r\n label: val.CONTACTNAME,\r\n value: val.ID\r\n };\r\n });\r\n });\r\n }\r\n\r\n filterProjectDocument() {\r\n let result = [];\r\n\r\n result = this.documentDataSourceOriginal.filter(x =>\r\n x.NAME.toLowerCase().includes(this.filterAttachedDocument.name.toLowerCase())\r\n )\r\n\r\n if (this.filterAttachedDocument.revision) {\r\n result = result.filter(x => x.REVISION == this.filterAttachedDocument.revision);\r\n }\r\n\r\n if (this.filterAttachedDocument.documentType.length > 0) {\r\n result = result.filter(x => this.filterAttachedDocument.documentType.includes(x.DOCUMENTTYPEID));\r\n }\r\n\r\n if (this.filterAttachedDocument.createby.length > 0) {\r\n result = result.filter(x => this.filterAttachedDocument.createby.includes(x.CREATEDBY));\r\n }\r\n\r\n this.documentDataSource = result;\r\n }\r\n\r\n clearFilterProjectDocument() {\r\n this.filterAttachedDocument = {\r\n name: '',\r\n revision: '',\r\n documentType: [],\r\n createby: []\r\n }\r\n this.filterProjectDocument();\r\n }\r\n\r\n BorrarDocument(){\r\n this.valueDocument = [];\r\n this.selectedFile = '';\r\n this._documentForm.get('attachment').setValue('');\r\n }\r\n\r\n DownloadDocument(data,event){\r\n // data.data.FILEPATH\r\n // if (data.data.filepath != undefined){\r\n // data.data.FILEPATH = data.data.filepath + data.data.File_Name\r\n // }\r\n\r\n var lfilepath = data.data.FILEPATH;\r\n\r\n this.MapInformationService.GetDocument(data.data.FILEPATH).subscribe(result => {\r\n let tipo = \"\"\r\n\r\n var data = result.filestring.substring(0, 5);\r\n\r\n switch(data.toUpperCase()){\r\n case \"IVBOR\":tipo = \"png\";\r\n break\r\n case \"/9J/4\":tipo = \"jpeg\";\r\n break\r\n case \"JVBER\":tipo = \"pdf\";\r\n break\r\n case \"UESDB\":\r\n var data2 = result.filestring.substring(0, 19);\r\n switch (data2.toUpperCase()) {\r\n case \"UEsDBBQABgAIAAAAIQB\": tipo = \"xlsx\";\r\n break\r\n default:\r\n var data3 = result.filestring.substring(0, 18);\r\n\r\n switch (data3.toUpperCase()) {\r\n case \"UESDBBQABGAIAAAAIQ\": tipo = \"docx\";\r\n break\r\n default: tipo = \"zip\";\r\n }\r\n }\r\n break\r\n case \"UMFYI\": tipo = \"rar\";\r\n break\r\n case \"U1PKC\": tipo = \"txt\";\r\n break\r\n }\r\n\r\n var theFilename = lfilepath.replace(/^.*[\\\\\\/]/, '');\r\n\r\n var bytArray = Uint8Array.from(atob(result.filestring), c => c.charCodeAt(0));\r\n var blob = new Blob([bytArray], {type: \"application/\" + tipo });\r\n\r\n var link = document.createElement(\"a\");\r\n link.download = theFilename;\r\n\r\n link.href = window.URL.createObjectURL(blob);\r\n link.click();\r\n })\r\n }\r\n\r\n // uploadDocument\r\n changeFile(ev) {\r\n if(this.changeBase64 && ev.value[0] && ev.value[0].size < 40000000){\r\n this._documentForm.get('attachment').setValue(ev.value[0].name);\r\n this.getBase64(ev.value[0]);\r\n } else {\r\n this.changeBase64 = true;\r\n }\r\n }\r\n\r\n getBase64(file) {\r\n const mythis = this\r\n var reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n reader.onload = function () {\r\n let data = reader.result.toString().split(\",\")\r\n mythis.attachment = data[1]\r\n mythis.selectedFile = data[1];\r\n };\r\n reader.onerror = function (error) {\r\n };\r\n }\r\n\r\n deleteDocumentGridModal(data){\r\n this.showModalDelete = true\r\n this.idDocument = data.ID\r\n }\r\n\r\n deleteDocumentGrid(){\r\n let info = {\r\n method:this.deleteDocument.method.trim(),\r\n [this.deleteDocument.name_id]:this.idDocument\r\n }\r\n\r\n this.MapInformationService.SaveInfoSites(info)\r\n .subscribe(resp=>{\r\n this.getProjectDocument()\r\n this.showModalDelete = false\r\n })\r\n }\r\n\r\n changeAcordeon(title){\r\n switch(title){\r\n case \"Images Pictures\":\r\n this.base64Imagenes = [];\r\n\r\n let images = this.documentDataSource.filter(el=>el.TYPEFILE=='JPG' || el.TYPEFILE=='JPEG' || el.TYPEFILE=='PNG');\r\n\r\n let imagesFinal = [];\r\n images.forEach(element => {\r\n if(element.FILEPATH != undefined){\r\n\r\n this.MapInformationService.DownloadDocument(element.FILEPATH).subscribe(result => {\r\n let tipo;\r\n let href;\r\n var data = result.filestring.substring(0, 5);\r\n let theFilename = element.FILEPATH.replace(/^.*[\\\\\\/]/, '');\r\n\r\n switch(data.toUpperCase()){\r\n case \"/9J/4\":\r\n tipo = \"jpeg\";\r\n href = 'data:image/jpg;base64,' + result.filestring\r\n break\r\n default:\r\n tipo = \"png\"\r\n href = 'data:image/png;base64,' + result.filestring\r\n break\r\n }\r\n let informacion = {\r\n tipo: tipo,\r\n base64: href,\r\n imageName: theFilename\r\n }\r\n if(result.filestring){\r\n // this.base64Imagenes.push(informacion)\r\n imagesFinal.push(informacion);\r\n this.base64Imagenes = imagesFinal;\r\n }\r\n },error=>{\r\n })\r\n }\r\n });\r\n break\r\n case \"Documents\":\r\n this.getProjectDocument()\r\n break\r\n }\r\n }\r\n\r\n Openimage(base64, tipo){\r\n this.imagenFullScreen = base64;\r\n this.openModalFullScreen = true;\r\n this.tipoimagen = tipo;\r\n }\r\n\r\n PreviewDocument(data){\r\n\r\n // if(this.getDocument.name_id2 != undefined){\r\n // data.FILEPATH += data.File_Name\r\n // }\r\n\r\n if(data.ATTACHMENT !== null && data.ATTACHMENT !== undefined && data.ATTACHMENT !== ''){\r\n var img = data.ATTACHMENT.split('.');\r\n\r\n img[1] = img[1].toUpperCase();\r\n\r\n if(img[1]==\"PDF\"){\r\n this.filePreview(data.FILEPATH, 'application/pdf');\r\n }else if (img[1]==\"JPG\" || img[1]==\"PNG\"){\r\n this.filePreview(data.FILEPATH, \"image/\"+ img[1].toLowerCase());\r\n }else{\r\n this.toast.info('This file is not available for preview');\r\n }\r\n }\r\n\r\n }\r\n\r\n filePreview(path, tipo){\r\n var lfilepath = path;\r\n\r\n this.MapInformationService.DownloadDocument(path).subscribe(result => {\r\n\r\n var theFilename = lfilepath.replace(/^.*[\\\\\\/]/, '');\r\n\r\n var bytArray = Uint8Array.from(atob(result.filestring), c => c.charCodeAt(0));\r\n\r\n var blob = new Blob([bytArray], {type: tipo });\r\n\r\n var link = document.createElement(\"a\");\r\n link.download = theFilename;\r\n\r\n link.href = window.URL.createObjectURL(blob);\r\n\r\n let path = this.sanitizer.bypassSecurityTrustUrl(link.href)\r\n\r\n this.previewFile = path;\r\n\r\n\r\n window.open(link.href);\r\n })\r\n }\r\n\r\n changeUploadFile(e){\r\n if(e.value==\"Upload File to Cube\"){\r\n this.uploadingFile = true;\r\n }else if (e.value==\"Select External File\"){\r\n this.uploadingFile = false;\r\n }\r\n }\r\n\r\n openGoogleDrivePicker(): void {\r\n this.googleDrivePickerService.open((data) => {\r\n if (data.action === 'picked') {\r\n this.externalLink = data.docs[0].url;\r\n this._documentForm.get('hyperlink').setValue(data.docs[0].url)\r\n }else if (data.details == \"Cookies are not enabled in current environment.\"){\r\n this.dominioactual = document.domain;\r\n this.modalCookies = true;\r\n }\r\n })\r\n }\r\n\r\n closePopupDocument(){\r\n this.valueDocument=[];\r\n this.selectedFile = '';\r\n this.externalLink = '';\r\n this.selectedTabPopup = 0;\r\n }\r\n\r\n enableIconLink(e){\r\n\r\n if(e.length > 0){\r\n this.disableIconLink = true;\r\n }else{\r\n this.disableIconLink = false;\r\n }\r\n // this.editLinkButton.disabled = this.disableIconLink;\r\n }\r\n\r\n onToolbarPreparing(e) {\r\n e.toolbarOptions.items.unshift({\r\n location: 'before',\r\n template: 'buttonsTask'\r\n });\r\n e.toolbarOptions.items.unshift({\r\n location: 'after',\r\n template: 'buttonsRight'\r\n });\r\n }\r\n\r\n collased:boolean=false\r\n closeParents(){\r\n this.GridDocuments.instance.collapseAll()\r\n this.collased = true\r\n }\r\n\r\n OpenParents(){\r\n this.GridDocuments.instance.expandAll()\r\n this.collased = false\r\n }\r\n\r\n filterValue: Array;\r\n\r\n customizeColumns (columns) {\r\n let result = localStorage.getItem('GridDocuments');\r\n\r\n if(result){\r\n let data = JSON.parse(result);\r\n\r\n let finalColumns = columns.map((col, i) => {\r\n // data[i].name ? col.caption = data[i].name : '';\r\n data[i].dataField ? col.dataField = data[i].dataField : '';\r\n data[i].dataType ? col.dataType = data[i].dataType : '';\r\n col.visible = data[i].visible;\r\n col.visibleIndex = data[i].visibleIndex;\r\n data[i].width ? col.width = data[i].width : '';\r\n return col;\r\n });\r\n return finalColumns\r\n }\r\n }\r\n\r\n FirtsTime:boolean = true\r\n\r\n GetFilters(data){\r\n // if (data.component.option(\"filterValue\")){\r\n\r\n // localStorage.setItem('filterTaskEditProject' + this.parentProjectId, JSON.stringify(data.component.option(\"filterValue\")));\r\n // } else {\r\n // localStorage.setItem('filterTaskEditProject' + this.parentProjectId, JSON.stringify(data.component.option(\"filterValue\")));\r\n // this.filterValue = []\r\n // }\r\n console.log(this.collased)\r\n\r\n if (this.FirtsTime){\r\n if (this.collased){\r\n this.closeParents()\r\n } else {\r\n this.OpenParents()\r\n }\r\n this.FirtsTime = false\r\n }\r\n }\r\n\r\n\r\n actualState: any = 0;\r\n gridId: any = \"DocumentsGrid\";\r\n\r\n saveState1 = (state) => {\r\n \r\n\r\n let extraconfig = {\r\n collased : this.collased == true ? 1 : 0\r\n }\r\n \r\n if(this.actualState == 0){\r\n console.log(\"guardando\")\r\n this.ProjectService.InsertUpdateGridConfiguration(0, this.gridId, state.filterValue, JSON.stringify(state.columns), JSON.stringify(extraconfig) ).subscribe(result=>{\r\n return state;\r\n })\r\n }else if(this.actualState.ID){\r\n console.log(\"guardando\")\r\n this.ProjectService.InsertUpdateGridConfiguration(this.actualState.ID, this.gridId, state.filterValue, JSON.stringify(state.columns), JSON.stringify(extraconfig) ).subscribe(result=>{\r\n return state;\r\n })\r\n }\r\n }\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ProjectAttachedDocumentComponent } from './project-attached-document.component';\r\nimport { MdbGlobalModule } from '../mdb-global.module';\r\nimport { DxTooltipModule, DxGalleryModule, DxRadioGroupModule, DxTileViewModule, DxTabPanelModule, DxAccordionModule, DxTextAreaModule, DxNumberBoxModule,DxButtonModule, DxDataGridModule, DxFileUploaderModule, DxPopupModule, DxScrollViewModule, DxSelectBoxModule, DxTagBoxModule, DxTextBoxModule, DxCheckBoxModule } from 'devextreme-angular';\r\n\r\n@NgModule({\r\n declarations: [\r\n ProjectAttachedDocumentComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n DxPopupModule,\r\n DxButtonModule,\r\n DxTagBoxModule,\r\n MdbGlobalModule,\r\n DxTextBoxModule,\r\n DxGalleryModule,\r\n DxDataGridModule,\r\n DxTextAreaModule,\r\n DxTabPanelModule,\r\n DxTileViewModule,\r\n DxNumberBoxModule,\r\n DxAccordionModule,\r\n DxSelectBoxModule,\r\n DxScrollViewModule,\r\n DxRadioGroupModule,\r\n DxFileUploaderModule,\r\n DxTooltipModule,\r\n DxCheckBoxModule\r\n ],\r\n exports: [\r\n ProjectAttachedDocumentComponent\r\n ]\r\n})\r\nexport class ProjectAttachedDocumentModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\nimport { ReportViewerComponent } from './report-viewer.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n component: ReportViewerComponent\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class ReportViewerRoutingModule { }\r\n","// import { Component, ViewEncapsulation, OnInit, ViewChild } from '@angular/core';\r\n\r\n// import { DxReportViewerComponent } from 'devexpress-reporting-angular';\r\n\r\n// @Component({\r\n// selector: 'app-report-viewer',\r\n// encapsulation: ViewEncapsulation.None,\r\n// templateUrl: './report-viewer.component.html',\r\n// styleUrls: [\r\n// \"../../../../node_modules/@devexpress/analytics-core/dist/css/dx-analytics.common.css\",\r\n// \"../../../../node_modules/@devexpress/analytics-core/dist/css/dx-analytics.light.css\",\r\n// \"../../../../node_modules/devexpress-reporting/dist/css/dx-webdocumentviewer.css\"\r\n// ]\r\n// })\r\n// export class ReportViewerComponent implements OnInit {\r\n\r\n// @ViewChild(DxReportViewerComponent, { static: false }) viewer: DxReportViewerComponent;\r\n// reportUrl: string = \"Template2\";\r\n// invokeAction: string = '/DXXRDV';\r\n// hostUrl: string = 'http://192.168.3.33:7774/';\r\n// title = 'DXReportViewerSample';\r\n\r\n// constructor() {\r\n// }\r\n\r\n// ngOnInit() {\r\n// var parameterValue = \"2800\";\r\n// this.viewer.bindingSender.GetParametersModel()[\"Parameter1\"](parameterValue);\r\n// this.viewer.bindingSender.StartBuild();\r\n// }\r\n\r\n\r\n\r\n\r\nimport { Component, Inject, ViewEncapsulation, ViewChild, OnInit } from '@angular/core';\r\nimport { DxReportViewerComponent } from 'devexpress-reporting-angular';\r\n\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\n\r\nimport { GeneralService } from 'src/app/services/general.service';\r\n\r\n@Component({\r\n selector: 'app-report-viewer',\r\n encapsulation: ViewEncapsulation.None,\r\n templateUrl: './report-viewer.component.html',\r\n styleUrls: [\r\n \"../../../../node_modules/@devexpress/analytics-core/dist/css/dx-analytics.common.css\",\r\n \"../../../../node_modules/@devexpress/analytics-core/dist/css/dx-analytics.light.css\",\r\n \"../../../../node_modules/devexpress-reporting/dist/css/dx-webdocumentviewer.css\"\r\n ]\r\n})\r\nexport class ReportViewerComponent implements OnInit {\r\n @ViewChild(DxReportViewerComponent, { static: false }) viewer: DxReportViewerComponent;\r\n reportUrl: string = \"Template1\";\r\n //reportUrl: string = \"SWOTemplate1?paramXML=''\";\r\n invokeAction: string = '/DXXRDV';\r\n hostUrl: string = 'http://192.168.3.33:7774/';\r\n //hostUrl: string = 'http://localhost:1908/';\r\n\r\n paramReportName: string;\r\n paramReportParameter: string;\r\n estimateID: string;\r\n\r\n sub: any;\r\n showReport = false;\r\n\r\n constructor(private route: ActivatedRoute, private router: Router, private appConfigService: AppConfigService, private generalService: GeneralService) {\r\n\r\n if (!appConfigService.appConfig) {\r\n appConfigService.loadAppConfig()\r\n }\r\n\r\n this.hostUrl = this.appConfigService.reportingURL;\r\n this.invokeAction = 'DXXRDV';\r\n\r\n }\r\n\r\n ngOnInit() {\r\n\r\n // console.log('estoy en el init')\r\n\r\n // if(localStorage.getItem('dataReporte') != undefined){\r\n\r\n // let data = JSON.parse(localStorage.getItem('dataReporte'))\r\n // this.estimateID = data.reportparameters\r\n\r\n // console.log(this.estimateID)\r\n\r\n // } else {\r\n this.sub = this.route\r\n .queryParams\r\n .subscribe(params => {\r\n \r\n // Defaults to 0 if no query param provided.\r\n var displayName = \"\";\r\n if (params['displayName'] != undefined){\r\n displayName = \"&displayName=\" + params['displayName'];\r\n }\r\n\r\n\r\n this.reportUrl = params['reportname'] + \"?\" + \"paramXML=\" + params['reportparameters'] + \"&userToken=\" + localStorage.getItem(\"token\") + displayName;\r\n \r\n if (params['reportname']==\"9550ProjectPartReference\"){\r\n this.showReport = true;\r\n }\r\n console.log('Params ', params['reportparameters']);\r\n if (params['reportparameters'].includes(\"estimateid\") )\r\n {\r\n console.log(params['reportparameters']);\r\n var parser = new DOMParser();\r\n var xmlDoc = parser.parseFromString(params['reportparameters'], \"text/xml\");\r\n console.log(xmlDoc);\r\n this.estimateID = xmlDoc.getElementsByTagName(\"estimateid\")[0].childNodes[0].nodeValue;\r\n console.log(this.estimateID);\r\n }\r\n \r\n // var parameterValue = \"\" + params['reportparameters'] + \"\";\r\n // this.reportUrl = params['reportname'];\r\n // this.viewer.bindingSender.GetParametersModel()[\"parameter1\"](parameterValue);\r\n // this.viewer.bindingSender.StartBuild();\r\n \r\n });\r\n // }\r\n\r\n // if(localStorage.getItem('dataReporte') != undefined) localStorage.removeItem('dataReporte')\r\n\r\n\r\n }\r\n\r\n ngAfterViewInit() {\r\n\r\n // this.sub = this.route\r\n // .queryParams\r\n // .subscribe(params => {\r\n // // Defaults to 0 if no query param provided.\r\n // this.printReport(params['reportname'], params['reportparameters']);\r\n\r\n // this.paramReportName = params['reportname'];\r\n // this.paramReportParameter = params['reportparameters'];\r\n\r\n // // var parameterValue = \"\" + params['reportparameters'] + \"\";\r\n // // this.reportUrl = params['reportname'];\r\n // // this.viewer.bindingSender.GetParametersModel()[\"parameter1\"](parameterValue);\r\n // // this.viewer.bindingSender.StartBuild();\r\n\r\n // });\r\n\r\n }\r\n\r\n parametersSubmitted2(event) {\r\n\r\n // var mythis = this;\r\n // console.log('AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA');\r\n // console.log(event.args.Parameters);\r\n // if (event.args.Parameters.length > 0){\r\n // event.args.Parameters.filter(function (p)\r\n // {\r\n // console.log('Daleeeeeeeee');\r\n // console.log(p);\r\n // return p.Key == \"paramXML\";\r\n // })\r\n // [0].Value = \"\" + mythis.paramReportParameter + \"\";\r\n // }\r\n\r\n }\r\n\r\n printReport(reportname, parameterXML) {\r\n\r\n setTimeout (() => {\r\n // var parameterValue = \"\" + parameterXML + \"\";\r\n this.reportUrl = reportname;\r\n // this.viewer.bindingSender.GetParametersModel()[\"parameter1\"](parameterValue);\r\n this.viewer.bindingSender.StartBuild();\r\n }, 500);\r\n\r\n }\r\n\r\n OnCustomizeElements(event) {\r\n var rightPanel = event.args.GetById(this.viewer.bindingSender.RightPanel);\r\n var index = event.args.Elements.indexOf(rightPanel);\r\n event.args.Elements.splice(index, 1);\r\n }\r\n\r\n exportDocument() {\r\n this.generalService.DownloadDocumentByEstimateId(this.estimateID);\r\n } \r\n\r\n}\r\n\r\n\r\n\r\n//title = 'DXReportViewerSample';\r\n// The report's path. The Document Viewer opens it when the application starts.\r\n//reportUrl: string = 'Template1';\r\n// Backend's project URI.\r\n\r\n//hostUrl: string = 'http://192.168.3.33:7774/';\r\n// hostUrl: string = 'https://localhost:54114/';\r\n// Use this line if you use an ASP.NET MVC backend\r\n// invokeAction: string = \"/WebDocumentViewer/Invoke\";\r\n// Uncomment this line if you use an ASP.NET Core backend\r\n//invokeAction: string = '/DXXRDV';\r\n// }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ReportViewerRoutingModule } from './report-viewer-routing.module';\r\n\r\nimport { ReportViewerComponent } from './report-viewer.component';\r\n\r\nimport { DxReportViewerModule } from 'devexpress-reporting-angular';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n ReportViewerComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n DxReportViewerModule,\r\n ReportViewerRoutingModule\r\n ],\r\n exports: [ReportViewerComponent]\r\n})\r\nexport class ReportViewerModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { ScheduleValuesComponent } from './schedule-values.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n component: ScheduleValuesComponent\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class ScheduleValuesRoutingModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9zY2hlZHVsZS12YWx1ZXMvc2NoZWR1bGUtdmFsdWVzLmNvbXBvbmVudC5zY3NzIn0= */\"","import * as XLSX from 'xlsx';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport { FormGroup, FormControl } from '@angular/forms';\r\nimport { DxDataGridComponent } from 'devextreme-angular';\r\nimport { ProjectService } from 'src/app/services/project.service';\r\nimport { LoadingService } from 'src/app/services/loading.service';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { DxTreeViewComponent, DxSelectBoxComponent } from 'devextreme-angular';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { Component, OnInit, Output, EventEmitter, ViewChild, Input, SimpleChanges, OnChanges } from '@angular/core';\r\n\r\ntype AOA = any[][];\r\ndeclare var $: any;\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { UtilityService } from 'src/app/services/utility.service';\r\nimport { DeltaworldService } from 'src/app/services/deltaworld.service';\r\nimport { EstimateService } from 'src/app/services/estimate.service';\r\n@Component({\r\n selector: 'app-schedule-values',\r\n templateUrl: './schedule-values.component.html',\r\n styleUrls: ['./schedule-values.component.scss']\r\n})\r\n\r\nexport class ScheduleValuesComponent implements OnInit, OnChanges {\r\n\r\n @ViewChild('gridObjectInformation', { static: false }) gridObjectInformation: DxDataGridComponent;\r\n @ViewChild('gridChangeOrder', { static: false }) gridChangeOrder: DxDataGridComponent;\r\n @ViewChild(\"newPartSelect\", { static: false }) newPartSelect: DxSelectBoxComponent;\r\n @ViewChild('ScheduleGrid1', {static: false}) ScheduleGrid1: DxDataGridComponent;\r\n @ViewChild('fileUploader', { static: false }) fileUploader: DxDataGridComponent;\r\n @ViewChild('ScheduleGrid', {static: false}) ScheduleGrid: DxDataGridComponent;\r\n @ViewChild(\"gridfile\", { static: false }) gridfile: DxDataGridComponent;\r\n @ViewChild(DxTreeViewComponent, { static: false }) treeView;\r\n @Input() parentProjectId: number;\r\n @Input() VieneDe: any;\r\n @Input() serviceID: any;\r\n // @Input() SalesTaxID: any;\r\n \r\n // @ViewChild(\"gridfile\", { static: false })\r\n // gridfile: DxDataGridComponent;\r\n\r\n public dataSchedule;\r\n formatCurrency2: { type: string; currency: any; precision: number; };\r\n ChangeOrder: any;\r\n plusApplicationButton: { icon: string; type: string; onClick: () => void; };\r\n\r\n @Input('infoschedule')\r\n set infoschedule(infoschedule: any) {\r\n this.dataSchedule = infoschedule;\r\n }\r\n @Input('SalesTaxID')\r\n set SalesTaxID(SalesTaxID: any) {\r\n this.taxSelected = SalesTaxID;\r\n console.log(\"🚀 ~ file: schedule-values.component.ts:52 ~ ScheduleValuesComponent ~ setSalesTaxID ~ this.taxSelected:\", this.taxSelected)\r\n }\r\n @Output() onsubmit = new EventEmitter();\r\n @Output() getGridBillingDetail = new EventEmitter();\r\n\r\n\r\n formSchedule: FormGroup;\r\n billingcategory: any = [];\r\n partsProduct: any;\r\n settings: any = {};\r\n deleteSelectedId: any;\r\n billingCategorySelected: any;\r\n partDetails: any;\r\n formatCurrency: any;\r\n taxes: any;\r\n taxSelected: any;\r\n auto: any;\r\n\r\n //Popups\r\n popupAddItem = false;\r\n showpopupRequestMaterials = false;\r\n cancelButton: any;\r\n saveNewButton: any;\r\n saveButton: any;\r\n showpopupDeleteItem: boolean = false;\r\n popupEditMultiple: boolean = false;\r\n disableEditMultiple = true;\r\n rowSelectedMultiple = [];\r\n saveButtonEditMultiple: any;\r\n cancelButtonEditMultiple: any;\r\n product = ''\r\n taxamountValue:any;\r\n taxFactor:any\r\n taxFactorTemporal:any\r\n taxTrue:boolean=false\r\n disabledTaxt:boolean = true\r\n importFrom:any[]=[\r\n {\r\n name:\"Estimate\",\r\n id:0\r\n },\r\n {\r\n name:\"Spread Sheet\",\r\n id:1\r\n },\r\n {\r\n name:\"Change Order\",\r\n id:2\r\n }\r\n ]\r\n\r\n openPopupEstimated:boolean=false\r\n estimate:any[]=[]\r\n scheduleOfValuesDatasource = [];\r\n idEstimate:any=\"\"\r\n ImporFrom:any=\"\"\r\n seletedRowEdit = false;\r\n popupImportFromExcel:boolean=false\r\n openPopupChangeOrder:boolean=false\r\n openFullScreen:boolean=false\r\n\r\n valueDocument: any[] = [];\r\n\r\n toooltipVisible: boolean = false;\r\n\r\n markup: number = 0;\r\n\r\n popupTitle = '';\r\n originalUnitPrice: any = 0;\r\n popupNewAppNotes:boolean = false\r\n\r\n modelEdit = {\r\n applicationName: '',\r\n labelName: '',\r\n enable: true,\r\n testid: '',\r\n pointid: '',\r\n unitid: '',\r\n wiringid: '',\r\n objectreffid: '',\r\n partid: '',\r\n readingRange: null,\r\n minvalue: 0,\r\n maxvalue: 0,\r\n id:0\r\n };\r\n\r\n partstr: string;\r\n drawingTemplates: any[] = [];\r\n objectTypeSelect: any[] = [];\r\n wiringSelect: any[] = [];\r\n unitSelect: any[] = [];\r\n objReferenceSelect: any[] = [];\r\n testSelect: any[] = [];\r\n partSelect: any[] = [];\r\n pointTypeSelect:any[]=[]\r\n partselected:any[]=[]\r\n\r\n constructor(\r\n private route: Router,\r\n private toast: ToastService,\r\n private translate:TranslateService,\r\n private appconfig: AppConfigService,\r\n private utilityService: UtilityService,\r\n private loadingService: LoadingService,\r\n private projectService: ProjectService,\r\n private deltaService: DeltaworldService,\r\n public MapInformationService:MapInformationService,\r\n private estimateService: EstimateService,\r\n ) {\r\n this.settings.dateFormat = this.appconfig.dateFormat;\r\n this.settings.moneyFormat = this.appconfig.moneyFormat;\r\n let moneyTableFormat = this.settings.moneyFormat;\r\n if(this.appconfig.moneyFormat=='$'){ moneyTableFormat = 'USD' }\r\n\r\n // this.taxSelected = this.SalesTaxID\r\n // console.log(\"🚀 ~ file: schedule-values.component.ts:132 ~ ScheduleValuesComponent ~ this.taxSelected:\", this.taxSelected)\r\n this.formatCurrency = {style: 'currency', currency: moneyTableFormat}\r\n this.formatCurrency2 = {type: 'currency', currency: moneyTableFormat, precision:3}\r\n\r\n this.plusApplicationButton = {\r\n icon: \"plus\",\r\n type: \"button\",\r\n onClick: () => {\r\n\r\n this.getPointType();\r\n this.getObjectTypes()\r\n this.getWiringdiagram()\r\n this.getTest()\r\n this.getUnit()\r\n this.getPartsApplication()\r\n this.getReferences()\r\n\r\n this.popupNewAppNotes = true;\r\n },\r\n };\r\n\r\n }\r\n\r\n getPointType() {\r\n this.utilityService.GetPointType().subscribe(result => {\r\n this.pointTypeSelect = result;\r\n })\r\n }\r\n\r\n getPartsApplication() {\r\n this.utilityService.GetParts().subscribe(result => {\r\n this.partSelect = result;\r\n });\r\n }\r\n\r\n getTemplateDrawing() {\r\n this.utilityService.Get_EstDrawingListTemplateCE().subscribe(result => {\r\n this.drawingTemplates = result;\r\n });\r\n }\r\n\r\n getObjectTypes() {\r\n this.utilityService.GetObjectTypes().subscribe(result => {\r\n this.objectTypeSelect = result;\r\n });\r\n }\r\n\r\n getWiringdiagram() {\r\n this.utilityService.GetWiringdiagram().subscribe(result => {\r\n this.wiringSelect = result;\r\n });\r\n }\r\n\r\n getTest() {\r\n this.utilityService.GetTest().subscribe(result => {\r\n this.testSelect = result;\r\n });\r\n }\r\n\r\n getUnit() {\r\n this.utilityService.GetUnits().subscribe(result => {\r\n this.unitSelect = result;\r\n });\r\n }\r\n\r\n \r\n getParts() {\r\n this.utilityService.GetParts().subscribe(result => {\r\n this.partselected = result;\r\n });\r\n }\r\n\r\n getReferences() {\r\n this.deltaService.GetEstimateObjectReferences().subscribe(result => {\r\n this.objReferenceSelect = result;\r\n })\r\n }\r\n\r\n\r\n toggleDefault(){\r\n this.toooltipVisible = !this.toooltipVisible;\r\n }\r\n\r\n ngOnInit() {\r\n this.onReorderInputs = this.onReorderInputs.bind(this);\r\n\r\n this.cancelButton = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.popupAddItem = false;\r\n this.partsProduct = []\r\n this.markup = 0\r\n this.newPartSelect.placeholder = \"Select\"\r\n this.initForm()\r\n },\r\n };\r\n\r\n this.saveButton = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.markup = 0\r\n this.saveNewItem();\r\n },\r\n };\r\n\r\n // this.getBillingCategory();\r\n this.projectService.GetTaxes().subscribe(result=>{\r\n console.log(result)\r\n let dataTaxes=[]\r\n if(result.length > 0){\r\n result.forEach(element => {\r\n if(element.TAX != undefined){\r\n dataTaxes.push(element)\r\n }\r\n });\r\n }\r\n this.taxes = dataTaxes;\r\n console.log(\"🚀 ~ file: schedule-values.component.ts:188 ~ ScheduleValuesComponent ~ this.projectService.GetTaxes ~ this.taxes:\", this.taxes)\r\n })\r\n console.log('Schedule Values ',this.dataSchedule)\r\n\r\n this.getTemplate()\r\n\r\n this.getEstimatebyProject()\r\n\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n console.log('AAAAAAAAAAAAAAAAAAAAA ',changes)\r\n if (changes.VieneDe != undefined){\r\n if(changes.VieneDe.firstChange==false){\r\n this.ngOnInit()\r\n }\r\n }\r\n\r\n if(changes.parentProjectId != undefined){\r\n if(changes.parentProjectId.currentValue != undefined){\r\n this.projectService.GetBillingSchedule(changes.parentProjectId.currentValue).subscribe(result=>{\r\n console.log('Data Schedule ', result);\r\n this.dataSchedule = result.map((val, id)=>{\r\n val.TAX == true ? val.TAXCHECK = true : val.TAXCHECK = false;\r\n val.SHOWINBILL == true ? val.SHOWINBILLCHECK = true : val.SHOWINBILLCHECK = false ;\r\n val.TAX == true ? val.TAXYesOrNo = \"Yes\" : val.TAXYesOrNo = \"No\";\r\n val.SHOWINBILL == true ? val.SHOWINBILLYesOrNo = \"Yes\" : val.SHOWINBILLYesOrNo = \"No\";\r\n if(val.DESCRIPTION != undefined){\r\n val.DESCRIPTION = val.DESCRIPTION.replace(/<[^>]+>/g, '')\r\n }\r\n val.number != undefined ? val.number = val.number.toFixed(2) : '' ;\r\n if(val.QTY != undefined && val.PRODUCTSLSPRICE != undefined){\r\n val.ValTotalPrice = val.QTY * val.PRODUCTSLSPRICE\r\n val.ValTotalPrice.toFixed(2)\r\n }\r\n return val;\r\n })\r\n })\r\n }\r\n }\r\n }\r\n\r\n mdAddItem() {\r\n this.initForm();\r\n this.getAllParts();\r\n this.getBillingCategory();\r\n this.popupAddItem = true;\r\n this.popupTitle = this.translate.instant('ModalEditProjecNOpenItem.title');\r\n }\r\n\r\n getBillingCategory(){\r\n if(this.billingcategory.length==0){\r\n this.projectService.GetBillingCategorys().subscribe(result=>{\r\n this.billingcategory = result;\r\n })\r\n }\r\n }\r\n\r\n getAllParts(){\r\n let mythis = this;\r\n\r\n this.partsProduct = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n if(loadOptions.searchValue == undefined || loadOptions.searchValue == \"\"){\r\n loadOptions.searchValue = \" \"\r\n } else {\r\n loadOptions.searchValue = loadOptions.searchValue\r\n }\r\n return mythis.projectService.GetAllParts(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n console.log(data);\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n }\r\n\r\n onFocusOut(e){\r\n console.log('EVENTO ', e);\r\n let newValue = this.formSchedule.get('productslsprice');\r\n }\r\n\r\n updateParts(e){\r\n\r\n if(e.selectedItem!==null && e.selectedItem!==undefined){\r\n console.log(e.selectedItem)\r\n this.formSchedule.get('partnumber').setValue(e.selectedItem.ID);\r\n this.projectService.GetProjectPartDetail2(e.selectedItem.ID, this.parentProjectId).subscribe(result=>{\r\n console.log(result)\r\n this.formSchedule.get('description').setValue(result[0].PartDescription);\r\n this.formSchedule.get('costammount').setValue(result[0].PartCost);\r\n this.formSchedule.get('productslspriceOriginal').setValue(result[0].ProductPrice);\r\n this.formSchedule.get('productslsprice').setValue(result[0].ProductPrice);\r\n this.formSchedule.get('productnumber').setValue(result[0].ProductNumber);\r\n\r\n // result[0].Tax_Factor = 0.07;\r\n console.log(result[0].ProductPrice)\r\n this.originalUnitPrice = result[0].ProductPrice;\r\n\r\n const primero = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n const segundo = Math.abs(primero) * Math.abs(result[0].Tax_Factor)\r\n\r\n const tercero = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n const cuarto = Math.abs(segundo) - Math.abs(tercero)\r\n\r\n if(this.taxTrue){\r\n if(result[0].Tax_Factor == 0){\r\n this.taxamountValue = 0\r\n this.taxFactorTemporal = 0\r\n this.taxFactor = 0\r\n } else {\r\n this.taxFactorTemporal = result[0].Tax_Factor\r\n }\r\n } else {\r\n if(result[0].Tax_Factor == 0){\r\n this.taxamountValue = 0\r\n this.taxFactorTemporal = 0\r\n this.taxFactor = 0\r\n this.taxamountValue = undefined\r\n this.taxFactor = undefined\r\n } else {\r\n this.taxFactorTemporal = result[0].Tax_Factor\r\n this.taxamountValue = undefined\r\n this.taxFactor = undefined\r\n }\r\n }\r\n this.disabledTaxt=false\r\n this.changeBillingAmount();\r\n this.calculateUnitPrice();\r\n })\r\n }\r\n }\r\n\r\n setTax(data){\r\n // console.log(data)\r\n this.taxTrue = data.value\r\n if(data.value){\r\n const primero = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n const segundo = Math.abs(primero) * Math.abs(this.taxFactorTemporal)\r\n\r\n const tercero = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n const cuarto = Math.abs(segundo) - Math.abs(tercero)\r\n\r\n if(this.taxFactorTemporal == 0){\r\n this.taxamountValue = 0\r\n this.taxFactorTemporal = 0\r\n this.taxFactor = 0\r\n } else {\r\n this.taxamountValue = cuarto\r\n this.taxFactor = this.taxFactorTemporal\r\n let billing = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n let billingFinal = Math.abs(billing) + Math.abs(this.taxamountValue)\r\n this.formSchedule.get('billingamount').setValue(billingFinal);\r\n }\r\n } else {\r\n let billing = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n this.formSchedule.get('billingamount').setValue(billing);\r\n this.taxamountValue = undefined\r\n this.taxFactor = undefined\r\n }\r\n }\r\n\r\n changeBillingAmount(){\r\n const primero = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n const segundo = Math.abs(primero * this.taxFactor)\r\n\r\n const tercero = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n const cuarto = Math.abs(segundo) - Math.abs(tercero)\r\n\r\n if(this.taxFactorTemporal == 0){\r\n this.taxamountValue = 0\r\n this.taxFactorTemporal = 0\r\n this.taxFactor = 0\r\n } else {\r\n this.taxamountValue = Math.abs(cuarto)\r\n }\r\n\r\n let billing = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n let billingFinal = Math.abs(billing) + Math.abs(this.taxamountValue)\r\n\r\n if(this.taxTrue){\r\n this.formSchedule.get('billingamount').setValue(billingFinal);\r\n } else {\r\n this.formSchedule.get('billingamount').setValue(billing);\r\n this.taxamountValue = undefined\r\n this.taxFactor = undefined\r\n }\r\n\r\n }\r\n\r\n //change color header grid\r\n onCellPrepared(e) {\r\n if (e.rowType === \"header\") {\r\n e.cellElement.style.backgroundColor = \"rgb(242, 242, 242)\";\r\n e.cellElement.style.color = \"rgb(0, 0, 0)\";\r\n }\r\n }\r\n\r\n duplicate(data){\r\n this.projectService.DuplicateBillingSchedule(data.ID).subscribe(result=>{\r\n this.toast.success(this.translate.instant('msgItemDuplSucc'));\r\n this.onsubmit.emit();\r\n })\r\n }\r\n\r\n selectForDelete(data){\r\n this.showpopupDeleteItem = true;\r\n this.deleteSelectedId = data.ID;\r\n }\r\n\r\n deleteItem(id){\r\n this.projectService.DelteBillingSchedule(id).subscribe(result=>{\r\n this.toast.success(this.translate.instant('msgItemDuplSucc'));\r\n this.showpopupDeleteItem = false;\r\n this.onsubmit.emit();\r\n })\r\n }\r\n\r\n selectionChanged(){\r\n console.log(\"aqui\")\r\n this.rowSelectedMultiple = this.ScheduleGrid.instance.getSelectedRowsData();\r\n if(this.rowSelectedMultiple.length >=1){\r\n this.seletedRowEdit = true;\r\n }else{\r\n this.seletedRowEdit = false;\r\n }\r\n }\r\n\r\n initForm(){\r\n this.formSchedule = new FormGroup({\r\n partnumber: new FormControl('', []),\r\n qty: new FormControl(1, []),\r\n description: new FormControl('', []),\r\n productdiscount: new FormControl(0, []),\r\n costammount: new FormControl(0, []),\r\n productslsprice: new FormControl(0, []),\r\n billingamount: new FormControl('', []),\r\n sort: new FormControl(0, []),\r\n area: new FormControl('', []),\r\n billingcategory: new FormControl('', []),\r\n tax: new FormControl('', []),\r\n showinbill: new FormControl('', []),\r\n overridenotes: new FormControl('', []),\r\n notes: new FormControl('', []),\r\n productnumber: new FormControl('', []),\r\n projectid: new FormControl(this.parentProjectId, []),\r\n id: new FormControl(0, []),\r\n productslspriceOriginal: new FormControl(0, []),\r\n addmarkup:new FormControl(0, []),\r\n });\r\n this.product = '';\r\n }\r\n\r\n saveNewItem(){\r\n let form = this.formSchedule.value;\r\n form.tax == true ? form.tax = 1 : form.tax = 0;\r\n form.showinbill == true ? form.showinbill = 1 : form.showinbill = 0;\r\n if(this.VieneDe == \"editSWO\"){\r\n form.serviceid = this.serviceID\r\n }\r\n console.log(form)\r\n form.addmarkup = form.addmarkup * 100\r\n\r\n this.projectService.InsertUpdateSchedule(form).subscribe(result=>{\r\n console.log(result)\r\n this.toast.success(this.translate.instant('msgQuoInfoUpdSucc'));\r\n this.popupAddItem = false;\r\n this.taxamountValue = 0\r\n this.taxFactor = 0\r\n this.newPartSelect.placeholder = \"Select\"\r\n this.partsProduct = []\r\n this.onsubmit.emit();\r\n })\r\n }\r\n\r\n edit(data){\r\n console.log(data)\r\n this.projectService.GetProjectPartDetail2(data.PARTNUMBER,this.parentProjectId).subscribe(result=>{\r\n this.originalUnitPrice = result[0].ProductPrice\r\n console.log(data)\r\n this.formSchedule = new FormGroup({\r\n partnumber: new FormControl(data.PARTNUMBER, []),\r\n qty: new FormControl(data.QTY, []),\r\n description: new FormControl(data.DESCRIPTION, []),\r\n productdiscount: new FormControl(data.PRODUCTDISCOUNT, []),\r\n costammount: new FormControl(data.COSTAMMOUNT, []),\r\n productslsprice: new FormControl(data.PRODUCTSLSPRICE, []),\r\n billingamount: new FormControl(data.BILLINGAMMOUN, []),\r\n sort: new FormControl(data.SORT, []),\r\n area: new FormControl(data.AREA, []),\r\n billingcategory: new FormControl(data.BILLINGCATEGORY, []),\r\n tax: new FormControl(data.TAX, []),\r\n showinbill: new FormControl(data.SHOWINBILL, []),\r\n overridenotes: new FormControl(data.OVERRIDENOTES, []),\r\n notes: new FormControl(data.NOTES, []),\r\n productnumber: new FormControl(data.PRODUCTNUMBER, []),\r\n projectid: new FormControl(this.parentProjectId, []),\r\n id: new FormControl(data.ID, []),\r\n productslspriceOriginal: new FormControl(0, []),\r\n addmarkup:new FormControl(data.ADDMARKUP != undefined ? data.ADDMARKUP / 100 : 0, []),\r\n });\r\n \r\n // this.markup = data.ADDMARKUP\r\n \r\n // this.originalUnitPrice = data.PRODUCTSLSPRICE\r\n console.log(data)\r\n setTimeout(() => {\r\n if(this.newPartSelect != undefined){\r\n this.newPartSelect.placeholder = data.DESCRIPTION\r\n }\r\n }, 1000);\r\n console.log(result)\r\n this.disabledTaxt = false\r\n // result[0].Tax_Factor = 0.07;\r\n if(data.TAX){\r\n this.taxTrue = true\r\n\r\n const primero = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n const segundo = Math.abs(primero) * Math.abs(result[0].Tax_Factor)\r\n\r\n const tercero = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n const cuarto = Math.abs(segundo) - Math.abs(tercero)\r\n\r\n if(this.taxTrue){\r\n if(result[0].Tax_Factor == 0){\r\n this.taxamountValue = 0\r\n this.taxFactorTemporal = 0\r\n this.taxFactor = 0\r\n } else {\r\n this.taxFactorTemporal = result[0].Tax_Factor\r\n this.taxamountValue = cuarto\r\n this.taxFactor = result[0].Tax_Factor\r\n }\r\n } else {\r\n if(result[0].Tax_Factor == 0){\r\n this.taxamountValue = 0\r\n this.taxFactorTemporal = result[0].Tax_Factor\r\n this.taxFactor = 0\r\n } else {\r\n this.taxFactorTemporal = result[0].Tax_Factor\r\n this.taxamountValue = undefined\r\n this.taxFactor = undefined\r\n }\r\n }\r\n this.disabledTaxt=false\r\n this.changeBillingAmount();\r\n } else {\r\n this.taxTrue = false\r\n const primero = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n const segundo = Math.abs(primero) * Math.abs(result[0].Tax_Factor)\r\n\r\n const tercero = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n const cuarto = Math.abs(segundo) - Math.abs(tercero)\r\n\r\n if(result[0].Tax_Factor == 0){\r\n this.taxamountValue = 0\r\n this.taxFactorTemporal = 0\r\n this.taxFactor = 0\r\n } else {\r\n this.taxFactorTemporal = result[0].Tax_Factor\r\n this.taxamountValue = cuarto\r\n this.taxFactor = result[0].Tax_Factor\r\n }\r\n this.changeBillingAmount();\r\n }\r\n // this.product = data.PARTNUMBER\r\n this.product = data.DESCRIPTION\r\n this.popupAddItem = true;\r\n this.popupTitle = this.translate.instant('ModalEditProjecNOpenEditItem.title');\r\n this.getBillingCategory();\r\n this.getAllParts();\r\n })\r\n }\r\n\r\n mdEditMultiple(){\r\n console.log('Original Data ', this.dataSchedule);\r\n this.rowSelectedMultiple = [];\r\n this.rowSelectedMultiple = this.ScheduleGrid.instance.getSelectedRowsData();\r\n console.log(\"🚀 ~ file: schedule-values.component.ts:516 ~ ScheduleValuesComponent ~ mdEditMultiple ~ this.rowSelectedMultipl\", this.rowSelectedMultiple);\r\n \r\n this.cancelButtonEditMultiple = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.popupEditMultiple = false;\r\n },\r\n };\r\n\r\n this.saveButtonEditMultiple = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.saveEditMultiple();\r\n },\r\n };\r\n\r\n this.getBillingCategory();\r\n\r\n this.popupEditMultiple = true;\r\n }\r\n\r\n openModalDeleteMultiple:boolean=false\r\n\r\n mdDeleteMultiple(){\r\n this.openModalDeleteMultiple=true\r\n }\r\n\r\n DeleteMultiple(){\r\n let data = this.ScheduleGrid.instance.getSelectedRowsData();\r\n console.log(data)\r\n let contador = 0\r\n data.forEach(element=>{\r\n this.projectService.DelteBillingSchedule(element.ID).subscribe(result=>{\r\n contador++\r\n if (contador == data.length){\r\n this.toast.warning(\"Items were removed successfully\")\r\n this.openModalDeleteMultiple=false\r\n this.onsubmit.emit();\r\n }\r\n })\r\n })\r\n\r\n }\r\n\r\n saveEditMultiple(){\r\n console.log(this.rowSelectedMultiple)\r\n\r\n let ids = '';\r\n this.rowSelectedMultiple.forEach((key,i)=>{\r\n if(key.OVERRIDENOTES != undefined){\r\n if(key.OVERRIDENOTES.length > 50){\r\n this.toast.warning(\"Override Notes can be max 50 characters long\")\r\n return false\r\n }\r\n }\r\n ids = key.ID+','+ids;\r\n\r\n let valorFinal = 0\r\n let Calculartax = 0\r\n\r\n if(key.TAXCHECK){\r\n Calculartax = (key.QTY * key.PRODUCTSLSPRICE) * key.TaxPercent\r\n valorFinal = (key.QTY * key.PRODUCTSLSPRICE) + Calculartax\r\n }else{\r\n valorFinal = key.QTY * key.PRODUCTSLSPRICE\r\n }\r\n let saveRow = {\r\n id: key.ID,\r\n projectid: this.parentProjectId,\r\n notes: key.NOTES,\r\n partnumber: key.PARTNUMBER,\r\n productnumber: key.PRODUCTNUMBER,\r\n qty: key.QTY,\r\n description: key.DESCRIPTION,\r\n costammount: key.COSTAMMOUNT,\r\n productslsprice: key.PRODUCTSLSPRICE,\r\n billingamount: valorFinal,\r\n sort: key.SORT,\r\n area: key.AREA,\r\n billingcategory: key.BILLINGCATEGORY,\r\n tax: key.TAXCHECK,\r\n showinbill: key.SHOWINBILLCHECK,\r\n overridenotes: key.OVERRIDENOTES,\r\n }\r\n\r\n saveRow.tax == true ? saveRow.tax = 1 : saveRow.tax = 0;\r\n saveRow.showinbill == true ? saveRow.showinbill = 1 : saveRow.showinbill = 0;\r\n if(this.VieneDe == \"editSWO\"){\r\n let serviceid = {serviceid: this.serviceID}\r\n Object.assign(saveRow,serviceid);\r\n }\r\n console.log(saveRow);\r\n\r\n this.projectService.InsertUpdateSchedule(saveRow).subscribe(result=>{\r\n if(this.rowSelectedMultiple.length == i+1){\r\n // console.log('Guardado ',result);\r\n this.toast.success(this.translate.instant('msgQuoInfoUpdSucc'));\r\n this.onsubmit.emit();\r\n this.popupEditMultiple = false;\r\n }\r\n })\r\n })\r\n }\r\n\r\n // printReport(){\r\n // this.route.navigate(['/reportviewer'], { queryParams: { reportname: \"ProjectSOVandPart\", reportparameters: \"\"+this.parentProjectId+\"\" } } );\r\n // }\r\n\r\n updateTaxes(){\r\n // console.log(this.taxSelected)\r\n this.projectService.UpdateProjectTax(this.parentProjectId, this.taxSelected).subscribe(result=>{\r\n // console.log(result);\r\n this.toast.success(this.translate.instant('msgTaxUpdSucc'));\r\n this.updateBillingSchedule()\r\n })\r\n }\r\n\r\n dataFormatted = { headers: [], data: [] };\r\n openPopupImport(data){\r\n console.log(data)\r\n if (data.value === 0){\r\n this.ImporFrom = 0\r\n this.openPopupEstimated = true\r\n const datos = {\r\n method:\"Get_Projectestimate\",\r\n projectid:this.parentProjectId\r\n }\r\n // console.log(datos)\r\n this.MapInformationService.SaveInfoSites(datos)\r\n .subscribe(resp=>{\r\n this.estimate = resp\r\n // console.log(resp)\r\n })\r\n } else if (data.value === 1){\r\n this.ImporFrom = 1\r\n this.popupImportFromExcel= true\r\n } else if (data.value === \"\"){\r\n this.ImporFrom = \"\"\r\n this.openPopupEstimated = false\r\n this.popupImportFromExcel = false\r\n this.openPopupChangeOrder = false\r\n } else if (data.value === 2) {\r\n this.ImporFrom = 2\r\n this.openPopupChangeOrder = true\r\n\r\n const datos = {\r\n method:\"Get_Project_ChangeOrderImportByID\",\r\n projectid:this.parentProjectId\r\n }\r\n // console.log(datos)\r\n this.MapInformationService.SaveInfoSites(datos)\r\n .subscribe(resp=>{\r\n this.ChangeOrder = resp\r\n // console.log(resp)\r\n })\r\n }\r\n }\r\n\r\n CloseopenPopupImport(){\r\n // console.log(\"aqui\")\r\n this.openPopupEstimated = false\r\n this.popupImportFromExcel = false\r\n this.idEstimate = \"\"\r\n this.scheduleOfValuesDatasource=[]\r\n this.ImporFrom = \"\"\r\n this.onFileRemove()\r\n this.valueDocument = []\r\n }\r\n\r\n\r\n searchEstimate(data){\r\n const datos = {\r\n 'method': 'Get_EstimateScheduleOfValuesCE',\r\n 'estimateid': data.value\r\n }\r\n this.idEstimate = data.value\r\n this.MapInformationService.SaveInfoSites(datos)\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n let id = 0;\r\n this.scheduleOfValuesDatasource = resp.map(x => {\r\n id++;\r\n x.ident = id;\r\n\r\n return x;\r\n })\r\n // for (let i = 0; i < 30; i++) {\r\n // this.scheduleOfValuesDatasource.push(this.scheduleOfValuesDatasource[0])\r\n // }\r\n })\r\n }\r\n\r\n\r\n importEstimate(){\r\n console.log(\"aqui\")\r\n const data = {\r\n method:\"Insert_CreateSOVfroestimateCE\",\r\n estimateid:this.idEstimate\r\n }\r\n // console.log(data)\r\n this.MapInformationService.SaveInfoSites(data)\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n this.CloseopenPopupImport()\r\n this.updateBillingSchedule()\r\n })\r\n }\r\n\r\n updateBillingSchedule(){\r\n this.projectService.GetBillingSchedule(this.parentProjectId).subscribe(result=>{\r\n this.dataSchedule = result.map((val, id)=>{\r\n val.TAX == true ? val.TAXCHECK = true : val.TAXCHECK = false;\r\n val.TAX == true ? val.TAXYesOrNo = \"Yes\" : val.TAXYesOrNo = \"No\";\r\n val.SHOWINBILL == true ? val.SHOWINBILLYesOrNo = \"Yes\" : val.SHOWINBILLYesOrNo = \"No\";\r\n val.SHOWINBILL == true ? val.SHOWINBILLCHECK = true : val.SHOWINBILLCHECK = false ;\r\n if(val.DESCRIPTION != undefined){\r\n val.DESCRIPTION = val.DESCRIPTION.replace(/<[^>]+>/g, '')\r\n }\r\n val.number != undefined ? val.number = val.number.toFixed(2) : '' ;\r\n if(val.QTY != undefined && val.PRODUCTSLSPRICE != undefined){\r\n val.ValTotalPrice = val.QTY * val.PRODUCTSLSPRICE\r\n val.ValTotalPrice.toFixed(2)\r\n }\r\n return val;\r\n })\r\n console.log('Data Schedule Grid ',this.dataSchedule);\r\n })\r\n }\r\n\r\n onFileRemove() {\r\n this.dataFormatted = {\r\n headers: [],\r\n data: []\r\n }\r\n this.valueDocument = []\r\n // this.popupImportFromExcel = false\r\n }\r\n\r\n fileData: any[][] = [];\r\n onFileAdd(obj: File) {\r\n if(obj[0] != undefined){\r\n this.loadingService.isLoading.next(true);\r\n console.log('added', obj[0]);\r\n /* wire up file reader */\r\n const reader: FileReader = new FileReader();\r\n reader.onload = (e: any) => {\r\n /* read workbook */\r\n const bstr: string = e.target.result;\r\n const wb: XLSX.WorkBook = XLSX.read(bstr, { type: 'binary' });\r\n\r\n /* grab first sheet */\r\n const wsname: string = wb.SheetNames[0];\r\n const ws: XLSX.WorkSheet = wb.Sheets[wsname];\r\n\r\n /* save data */\r\n let data = (XLSX.utils.sheet_to_json(ws, { header: 1 }));\r\n data = data.filter(x => x.length > 0);\r\n this.fileData = data;\r\n this.dataFormatted.headers = data[0];\r\n console.log(JSON.stringify(data[0]))\r\n let dataFormateada = this.arrayToJSONObject(data);\r\n let infoFinal = []\r\n if(dataFormateada.length != 0){\r\n dataFormateada.forEach(element=>{\r\n if(element.Quantity != undefined){\r\n infoFinal.push(element)\r\n }\r\n })\r\n // this.dataFormatted.data = dataFormateada;\r\n this.dataFormatted.data = infoFinal;\r\n console.log(this.dataFormatted)\r\n }\r\n this.validateFile();\r\n // console.log('obj', this.dataFormatted.data.filter(x => !x.TAG && !x.QTY && !x.POINTTYPE && !x.POINTNUMBER && !x.PARTNUMBER && !x.APPNOTES));\r\n\r\n // console.log('obj', this.dataFormatted.data.filter(x => !x.TAG && !x.QTY && !x.POINTTYPE && !x.POINTNUMBER && !x.PARTNUMBER && !x.APPNOTES));\r\n };\r\n reader.readAsBinaryString(obj[0]);\r\n this.loadingService.isLoading.next(false);\r\n }\r\n }\r\n\r\n arrayToJSONObject(arr) {\r\n // header\r\n const keys = arr[0];\r\n\r\n // vacate keys from main array\r\n const newArr = arr.slice(1, arr.length);\r\n\r\n const formatted = [];\r\n const data = newArr;\r\n const cols = keys;\r\n const l = cols.length;\r\n for (let i = 0; i < data.length; i++) {\r\n const d = data[i];\r\n const o = {};\r\n for (let j = 0; j < l; j++) {\r\n o[cols[j]] = d[j];\r\n }\r\n formatted.push(o);\r\n }\r\n return formatted;\r\n }\r\n\r\n validateFile() {\r\n // this.dataFormatted.data.forEach(x => {\r\n // this.estimateService.Get_EstimateAreaSystemDetailsImportCE(x.PARTNUMBER, x.APPNOTES, x.POINTTYPE).subscribe(result => {\r\n // let obj = result[0];\r\n // if (obj) {\r\n // x.FlagApp_Note = obj.App_Note;\r\n // x.FlagPart_Number = obj.Part_Number;\r\n // x.FlagPoint_Type = obj.Point_Type;\r\n // }\r\n // console.log(result);\r\n // });\r\n // });\r\n }\r\n\r\n uploadFile(){\r\n // let data = this.gridfile.instance.getVisibleRows().map(x => x.data);\r\n let data = this.dataFormatted.data;\r\n let contador = 0\r\n let info\r\n let contadorTaxt = 0\r\n let contadorCostPrice = 0\r\n console.log(data)\r\n data.forEach(element=>{\r\n if (element.Taxable == 0 || element.Taxable == 1 || element.Taxable == \"\" || element.Taxable == undefined){\r\n } else {\r\n this.toast.warning(\"The Taxable field must be 1 for yes and 0 for no\")\r\n contadorTaxt++\r\n }\r\n\r\n // if (element.Show_in_Bill == 0 || element.Show_in_Bill == 1 || element.Show_in_Bill == \"\" || element.Show_in_Bill == undefined){\r\n // } else {\r\n // this.toast.warning(\"The Show_in_Bill field must be 1 for yes and 0 for no\")\r\n // contadorTaxt++\r\n // }\r\n\r\n if(element.Cost === undefined || element.Cost === \"\" || element.Cost == null || element.Price === undefined || element.Price === \"\" || element.Price === null){\r\n\r\n console.log(element.Cost)\r\n console.log(element.Quantity)\r\n console.log(element.Price)\r\n this.toast.warning(\"The quantity, cost and price fields cannot be empty (you can put 0 instead)\")\r\n contadorCostPrice++\r\n }\r\n if(isNaN(element.Quantity) == true || isNaN(element.Cost) == true || isNaN(element.Price) == true){\r\n this.toast.warning(\"The quantity, cost and price fields cannot have characters (you can put 0 instead)\")\r\n contadorCostPrice++\r\n }\r\n })\r\n if(contadorCostPrice == 0){\r\n data.forEach(element=>{\r\n console.log(element)\r\n info = {\r\n partnumber:\"\",\r\n productnumber: \"\",\r\n qty: parseInt(element.Quantity),\r\n description: element.Billing_Description,\r\n costammount: Number(element.Cost),\r\n productslsprice: Number(element.Price),\r\n billingamount: element.Quantity*element.Price,\r\n sort: element.Sort,\r\n area: element.Area,\r\n billingcategory: element.Category_ID,\r\n tax: element.Taxable == true ? 1:0,\r\n showinbill: 1,\r\n overridenotes: element.Override_Notes == undefined ? \"\":element.Override_Notes,\r\n notes: \"\",\r\n projectid:this.parentProjectId,\r\n id: 0,\r\n method:\"Insert_ProjectPartDetailformSS\",\r\n productmodel:element.Product_Number\r\n };\r\n if(this.VieneDe == \"editSWO\"){\r\n info.serviceid = this.serviceID\r\n }\r\n info.billingamount = info.billingamount.toFixed(4)\r\n\r\n this.MapInformationService.SaveInfoSites(info)\r\n .subscribe(resp=>{\r\n contador++\r\n if(contador == data.length){\r\n this.toast.success(\"information successfully uploaded\")\r\n this.onFileRemove()\r\n this.CloseopenPopupImport()\r\n this.onsubmit.emit();\r\n }\r\n },error=>{\r\n console.log(error)\r\n this.toast.warning(\"An error has occurred check the header and structure of the excel\")\r\n })\r\n })\r\n }\r\n }\r\n\r\n valueTaxDefault:boolean= false\r\n valueShowBillDefault:boolean= false\r\n\r\n \r\n\r\n\r\n updateBillingAmount(event){\r\n console.log(event)\r\n // this.originalUnitPrice = event.value;\r\n\r\n const primero = this.formSchedule.get('qty').value * event.value;\r\n const segundo = Math.abs(primero * this.taxFactor)\r\n\r\n const tercero = this.formSchedule.get('qty').value * event.value;\r\n const cuarto = Math.abs(segundo) - Math.abs(tercero)\r\n\r\n if(this.taxFactorTemporal == 0){\r\n this.taxamountValue = 0\r\n this.taxFactorTemporal = 0\r\n this.taxFactor = 0\r\n } else {\r\n this.taxamountValue = Math.abs(cuarto)\r\n }\r\n\r\n let billing = this.formSchedule.get('qty').value * event.value;\r\n let billingFinal = Math.abs(billing) + Math.abs(this.taxamountValue)\r\n\r\n if(this.taxTrue){\r\n this.formSchedule.get('billingamount').setValue(billingFinal);\r\n } else {\r\n this.formSchedule.get('billingamount').setValue(billing);\r\n this.taxamountValue = undefined\r\n this.taxFactor = undefined\r\n }\r\n }\r\n\r\n infoMaterial:any[]=[]\r\n showPopupMR:boolean=false\r\n openModalRequest(){\r\n this.MapInformationService.SaveInfoSites({method:\"Get_ProjectsovByIdforMR\",projectid:this.parentProjectId})\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n this.showpopupRequestMaterials = true\r\n this.infoMaterial= resp\r\n })\r\n }\r\n\r\n saveRequestModal(){\r\n console.log(\"aqui\")\r\n this.showPopupMR = true\r\n }\r\n\r\n saveRequest(){\r\n let data = this.gridObjectInformation.instance.getSelectedRowsData();\r\n if(data.length > 0){\r\n console.log(data)\r\n let dataFinal = \"\"\r\n data.forEach(info=>{\r\n if(dataFinal == \"\"){\r\n dataFinal = info.ID.toString()\r\n } else {\r\n dataFinal += \",\"+info.ID.toString()\r\n }\r\n })\r\n let datos: any = { method:\"Save_EditProjectMaterialRequest\", projectid:this.parentProjectId, detailid:dataFinal}\r\n // if(this.serviceID){\r\n // datos.swoid = this.serviceID;\r\n // console.log('Hay service id ', datos)\r\n // }else{\r\n // console.log('No Hay serice ID ', datos);\r\n // }\r\n\r\n this.MapInformationService.SaveInfoSites(datos)\r\n .subscribe(resp=>{\r\n this.toast.success(\"The Material Request information has been updated successfully\")\r\n this.showpopupRequestMaterials = false\r\n this.showPopupMR = false\r\n this.updateBillingSchedule()\r\n })\r\n } else {\r\n this.toast.warning(\"You must select one or more records\")\r\n }\r\n }\r\n\r\n updateShowInBill(obj) {\r\n console.log(this.rowSelectedMultiple)\r\n console.log(obj)\r\n if (obj.event != undefined){\r\n this.rowSelectedMultiple = this.rowSelectedMultiple.map(x => {\r\n // x.PrefferedYesorNo = obj.value == true ? \"Yes\":\"No\";\r\n x.SHOWINBILL = obj.value;\r\n x.SHOWINBILLCHECK = obj.value;\r\n return x;\r\n })\r\n }\r\n }\r\n\r\n titleHeaderTemplateTax(obj) {\r\n console.log(this.rowSelectedMultiple)\r\n console.log(obj)\r\n if (obj.event != undefined){\r\n this.rowSelectedMultiple = this.rowSelectedMultiple.map(x => {\r\n // x.PrefferedYesorNo = obj.value == true ? \"Yes\":\"No\";\r\n x.TAX = obj.value;\r\n x.TAXCHECK = obj.value;\r\n return x;\r\n })\r\n }\r\n }\r\n\r\n ImporChangeOrder(){\r\n let data = this.gridChangeOrder.instance.getSelectedRowsData()\r\n console.log(data)\r\n if (data.length > 0){\r\n\r\n // esta forma es con un bucle\r\n let contador = 0\r\n data.forEach(x=>{\r\n const dataFinal = {\r\n method:\"Insert_CreateSOVfromchangeorder\",\r\n projectid:this.parentProjectId,\r\n calctypid:1,\r\n billingammount: x.AMMOUNT,\r\n // scopeofwork:x.ID,\r\n scopeofwork:x.NOTES,\r\n }\r\n this.MapInformationService.SaveInfoSites(dataFinal)\r\n .subscribe(resp=>{\r\n contador++\r\n if (contador == data.length) {\r\n this.toast.success(\"Items imported successfully\")\r\n this.closeChangeOrder()\r\n }\r\n })\r\n })\r\n } else {\r\n this.toast.warning(\"You must select at least an item to import\")\r\n }\r\n console.log(data)\r\n }\r\n\r\n closeChangeOrder(){\r\n this.openPopupChangeOrder = false\r\n this.ImporFrom = ''\r\n this.gridChangeOrder.instance.deselectAll()\r\n this.updateBillingSchedule()\r\n }\r\n\r\n updateCheck(event, type, data ){\r\n console.log(data)\r\n console.log(event)\r\n let info = {}\r\n let value = event.value == true || event.value == \"Yes\" ? 1 : 0\r\n \r\n let id = data.data.ID\r\n\r\n if (type == 'tax'){\r\n info = {\r\n method: 'InsertUpdate_ProjectPartDetailGrid',\r\n id: id,\r\n showinbill: data.data.SHOWINBILLCHECK == true ? 1 : 0,\r\n tax: value,\r\n // billingamount: newTotalPriceWithTax,\r\n }\r\n // console.log(info)\r\n } if (type == 'showinbill'){\r\n info = {\r\n method: 'InsertUpdate_ProjectPartDetailGrid',\r\n id: id,\r\n showinbill: value,\r\n tax: data.data.TAXCHECK == true ? 1 : 0\r\n }\r\n }\r\n console.log(info)\r\n this.MapInformationService.SaveInfoSites(info).subscribe(resp => {\r\n console.log(resp)\r\n this.getGridBillingDetail.emit()\r\n console.log('eh??')\r\n this.toast.success(this.translate.instant('msgUpdSucc'))\r\n this.updateBillingSchedule()\r\n })\r\n }\r\n\r\n onToolbarPreparing(e){\r\n console.log('Event ', e);\r\n e.toolbarOptions.items.unshift({\r\n location: 'after',\r\n template: 'buttonsRight'\r\n });\r\n }\r\n \r\n onReorderInputs(e){\r\n console.log('Reorder ', e);\r\n let visibleRows = e.component.getVisibleRows();\r\n\r\n let newArray = visibleRows.map(x=> x.data);\r\n \r\n this.rowSelectedMultiple.splice(e.fromIndex,1);\r\n this.rowSelectedMultiple.splice(e.toIndex,0,e.itemData);\r\n console.log(\"🚀 ~ file: schedule-values.component.ts:1108 ~ ScheduleValuesComponent ~ onReorderInputs ~ rowSelectedMultiple\", this.rowSelectedMultiple)\r\n\r\n console.log('New Array ', newArray);\r\n \r\n let newIndex = e.fromIndex < e.toIndex ? e.fromIndex : e.toIndex;\r\n\r\n for (let index = newIndex; index < this.rowSelectedMultiple.length; index++) {\r\n this.rowSelectedMultiple[index].SORT = index + 1;\r\n }\r\n\r\n console.log('FINAL ', this.rowSelectedMultiple);\r\n }\r\n\r\n changeCategory(e, data){\r\n console.log(\"🚀 ~ file: schedule-values.component.ts:1122 ~ ScheduleValuesComponent ~ changeCategory ~ data\", data)\r\n console.log(e); \r\n console.log(this.billingcategory)\r\n console.log(\"🚀 ~ rowSelectedMultiple\", this.rowSelectedMultiple);\r\n\r\n if(e.previousValue){\r\n let index = this.rowSelectedMultiple.findIndex(x=> x.ID == data.ID);\r\n let category = this.billingcategory.find(x => x.ID == e.value);\r\n if(category){\r\n console.log(category);\r\n this.rowSelectedMultiple[index].Billingcategoryname = category.TODOCATEGORY;\r\n }\r\n }\r\n }\r\n\r\n calculateUnitPrice(){\r\n // let unitPrice = this.formSchedule.get('productslsprice').value;\r\n console.log(this.formSchedule.value)\r\n let unitPrice = this.originalUnitPrice; \r\n let calculatedMarkUp = this.formSchedule.value.addmarkup * 100;\r\n console.log(this.originalUnitPrice)\r\n console.log('Unit Price ', unitPrice, ' Mark Up ', calculatedMarkUp);\r\n\r\n let finalPrice = unitPrice * ( 1 + (calculatedMarkUp / 100));\r\n\r\n console.log('Final Price ', finalPrice);\r\n\r\n this.formSchedule.get('productslsprice').setValue(finalPrice);\r\n }\r\n\r\n templates:any[]=[]\r\n templatesO:any[]=[]\r\n templateSelected:any\r\n getTemplate(){\r\n this.MapInformationService.SaveInfoSites({ method: 'Get_ClientTemplateCE', modulename: \"SalesQuote\" })\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n this.templates = []\r\n this.templates = resp;\r\n })\r\n }\r\n\r\n PrintReport(data) {\r\n\r\n // if (this.templateSelected != undefined){\r\n console.log(data.itemData)\r\n let nameReport = \"\"\r\n console.log(this.templates)\r\n this.templates.forEach(x=>{\r\n if (x.CLIENTNAME == data.itemData.CLIENTNAME){\r\n nameReport = x.DESIGNERNAME\r\n }\r\n })\r\n console.log(nameReport)\r\n\r\n var mydisplayName = \"EST_\" + this.parentProjectId;\r\n\r\n this.route.navigate(['/reportviewer'], { queryParams: { displayName: mydisplayName, reportname: nameReport, reportparameters: \"\"+this.parentProjectId+\"\" } } );\r\n // } else {\r\n // this.toast.warning(\"You must select a template\")\r\n // }\r\n\r\n // })\r\n\r\n }\r\n\r\n popupNewPart:boolean = false\r\n partDataSource:any\r\n newPartModal(){\r\n let mythis = this;\r\n this.partDataSource = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n loadOptions.searchValue = loadOptions.searchValue ? loadOptions.searchValue : 'par';\r\n return mythis.estimateService.Get_AccParts(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n this.popupNewPart = true;\r\n }\r\n\r\n modelAddParts = {\r\n Id: 0,\r\n Unique: false,\r\n PartNumber: '',\r\n PointNumber: 0,\r\n PointType: 0,\r\n Tag: '',\r\n AppNoteId: 0,\r\n AppNote: '',\r\n Qty: 0,\r\n PartCost: 0,\r\n PartId: 0,\r\n Notes: '',\r\n systemid:0\r\n };\r\n\r\n PartCreated(newPart){\r\n this.partDataSource = []\r\n this.newPartSelect.instance.reset()\r\n\r\n console.log(newPart)\r\n\r\n this.modelAddParts.PartNumber = newPart.partnumber\r\n this.modelAddParts.PartId = newPart.idNewPart\r\n this.modelAddParts.PartCost = newPart.price\r\n this.newPartSelect.placeholder = newPart.partnumber + ' | ' + newPart.partdescription + '['+ newPart.price + ' ] '\r\n\r\n let mythis = this;\r\n this.partDataSource = new CustomStore({\r\n key: \"ID\",\r\n load: function (loadOptions: any) {\r\n loadOptions.searchValue = loadOptions.searchValue ? loadOptions.searchValue : 'par';\r\n return mythis.estimateService.Get_AccParts(loadOptions.searchValue)\r\n .toPromise()\r\n .then((data: any) => {\r\n return data;\r\n })\r\n .catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n\r\n\r\n this.formSchedule.get('partnumber').setValue(newPart.idNewPart);\r\n this.projectService.GetProjectPartDetail2(newPart.idNewPart, this.parentProjectId).subscribe(result=>{\r\n console.log(result)\r\n this.formSchedule.get('description').setValue(result[0].PartDescription);\r\n this.formSchedule.get('costammount').setValue(result[0].PartCost);\r\n this.formSchedule.get('productslspriceOriginal').setValue(result[0].ProductPrice);\r\n this.formSchedule.get('productslsprice').setValue(result[0].ProductPrice);\r\n this.formSchedule.get('productnumber').setValue(result[0].ProductNumber);\r\n\r\n // result[0].Tax_Factor = 0.07;\r\n console.log(result[0].ProductPrice)\r\n this.originalUnitPrice = result[0].ProductPrice;\r\n\r\n const primero = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n const segundo = Math.abs(primero) * Math.abs(result[0].Tax_Factor)\r\n\r\n const tercero = this.formSchedule.get('qty').value * this.formSchedule.get('productslsprice').value;\r\n const cuarto = Math.abs(segundo) - Math.abs(tercero)\r\n\r\n if(this.taxTrue){\r\n if(result[0].Tax_Factor == 0){\r\n this.taxamountValue = 0\r\n this.taxFactorTemporal = 0\r\n this.taxFactor = 0\r\n } else {\r\n this.taxFactorTemporal = result[0].Tax_Factor\r\n }\r\n } else {\r\n if(result[0].Tax_Factor == 0){\r\n this.taxamountValue = 0\r\n this.taxFactorTemporal = 0\r\n this.taxFactor = 0\r\n this.taxamountValue = undefined\r\n this.taxFactor = undefined\r\n } else {\r\n this.taxFactorTemporal = result[0].Tax_Factor\r\n this.taxamountValue = undefined\r\n this.taxFactor = undefined\r\n }\r\n }\r\n this.disabledTaxt=false\r\n this.changeBillingAmount();\r\n this.calculateUnitPrice();\r\n })\r\n\r\n\r\n\r\n }\r\n\r\n\r\n// {\r\n// \"partnumber\": 21738,\r\n// \"qty\": 1,\r\n// \"description\": null,\r\n// \"productdiscount\": 0,\r\n// \"costammount\": 25,\r\n// \"productslsprice\": 0,\r\n// \"billingamount\": 0,\r\n// \"sort\": 0,\r\n// \"area\": \"\",\r\n// \"billingcategory\": \"\",\r\n// \"tax\": 0,\r\n// \"showinbill\": 0,\r\n// \"overridenotes\": \"\",\r\n// \"notes\": \"\",\r\n// \"productnumber\": null,\r\n// \"projectid\": \"9051\",\r\n// \"id\": 0,\r\n// \"productslspriceOriginal\": null,\r\n// \"addmarkup\": 0,\r\n// \"method\": \"InsertUpdate_ProjectPartDetail\"\r\n// }\r\n\r\n\r\n estimatesByProject:any[]=[]\r\n idEstimateSelected:any=0\r\n\r\n getEstimatebyProject(){\r\n const datos = {\r\n method:\"Get_Projectestimate\",\r\n projectid:this.parentProjectId\r\n }\r\n // console.log(datos)\r\n this.MapInformationService.SaveInfoSites(datos)\r\n .subscribe(resp=>{\r\n this.estimatesByProject = resp\r\n // this.idEstimateSelected = 2758\r\n })\r\n\r\n this.getEstimateDefault()\r\n\r\n }\r\n\r\n SaveEstimate(){\r\n console.log(this.idEstimateSelected)\r\n\r\n this.MapInformationService.SaveInfoSites({method:\"UpdateProjectEstimateid\", projectid:this.parentProjectId, estimateid:this.idEstimateSelected})\r\n .subscribe(resp=>{\r\n this.getEstimatebyProject()\r\n this.toast.success(\"Updated Successfully\")\r\n })\r\n }\r\n\r\n getEstimateDefault(){\r\n this.MapInformationService.SaveInfoSites({method:\"GetProjectEstimateid\", projectid:this.parentProjectId})\r\n .subscribe(x=>{\r\n this.idEstimateSelected = x[0].ProjectEstId\r\n })\r\n }\r\n\r\n\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ScheduleValuesRoutingModule } from './schedule-values-routing.module';\r\nimport { ScheduleValuesComponent } from './schedule-values.component';\r\nimport { MdbGlobalModule } from '../mdb-global.module';\r\nimport { DxTooltipModule, DxAccordionModule, DxAutocompleteModule, DxButtonModule, DxNumberBoxModule, DxCheckBoxModule, DxDataGridModule, DxDateBoxModule, DxDropDownBoxModule, DxDropDownButtonModule, DxPopupModule, DxRangeSliderModule, DxScrollViewModule, DxSelectBoxModule, DxSliderModule, DxTagBoxModule, DxTemplateModule, DxTextAreaModule, DxTextBoxModule, DxTreeListModule, DxTreeViewModule, DxFileUploaderModule } from 'devextreme-angular';\r\n\r\nimport { SharedDatagridModule } from '../shared-datagrid/shared-datagrid.module';\r\nimport { NewPartsModule } from 'src/app/pages/inventory/parts/new-part/new-part.module';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n ScheduleValuesComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n ScheduleValuesRoutingModule,\r\n MdbGlobalModule,\r\n DxAccordionModule,\r\n DxButtonModule,\r\n DxTextBoxModule,\r\n DxDropDownBoxModule,\r\n DxTreeViewModule,\r\n DxDateBoxModule,\r\n DxAutocompleteModule,\r\n DxCheckBoxModule,\r\n DxDataGridModule,\r\n DxNumberBoxModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxSelectBoxModule,\r\n DxRangeSliderModule,\r\n DxTemplateModule,\r\n DxTagBoxModule,\r\n DxSliderModule,\r\n DxDropDownButtonModule,\r\n DxTextAreaModule,\r\n SharedDatagridModule,\r\n DxFileUploaderModule,\r\n DxTooltipModule,\r\n NewPartsModule\r\n ],\r\n exports: [\r\n ScheduleValuesComponent,\r\n MdbGlobalModule,\r\n DxAccordionModule,\r\n DxButtonModule,\r\n DxTextBoxModule,\r\n DxDropDownBoxModule,\r\n DxTreeViewModule,\r\n DxDateBoxModule,\r\n DxAutocompleteModule,\r\n DxCheckBoxModule,\r\n DxDataGridModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxSelectBoxModule,\r\n DxRangeSliderModule,\r\n DxTemplateModule,\r\n ],\r\n schemas: [NO_ERRORS_SCHEMA]\r\n\r\n})\r\nexport class ScheduleValuesModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n\r\n\r\nconst routes: Routes = [];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class ServiceListRoutingModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9zZXJ2aWNlLWxpc3Qvc2VydmljZS1saXN0LmNvbXBvbmVudC5zY3NzIn0= */\"","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { GeneralService } from 'src/app/services/general.service';\r\n\r\n@Component({\r\n selector: 'app-service-list',\r\n templateUrl: './service-list.component.html',\r\n styleUrls: ['./service-list.component.scss']\r\n})\r\nexport class ServiceListComponent implements OnInit {\r\n\r\n @Input() dsPagedService: any;\r\n\r\n constructor(private router: Router, public generalService: GeneralService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n openSWOEdit(swoid){\r\n this.router.navigateByUrl('/editSWO');\r\n }\r\n\r\n}\r\n","import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { ServiceListRoutingModule } from './service-list-routing.module';\r\nimport { ServiceListComponent } from './service-list.component';\r\nimport { MdbGlobalModule } from '../mdb-global.module';\r\nimport { DxDataGridModule } from 'devextreme-angular';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n ServiceListComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n ServiceListRoutingModule,\r\n MdbGlobalModule,\r\n DxDataGridModule\r\n ],\r\n exports: [ServiceListComponent],\r\n schemas: [NO_ERRORS_SCHEMA]\r\n})\r\nexport class ServiceListModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { DashboardPageComponent } from 'src/app/pages/dashboard/dashboard-page/dashboard-page.component';\r\nimport { SharedDashboardComponent } from './shared-dashboard.component';\r\n\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n component: DashboardPageComponent\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class DashboardRoutingModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SharedDashboardComponent } from './shared-dashboard.component';\r\nimport { DashboardDraggableOptionsComponent } from '../dashboard-draggable-options/dashboard-draggable-options.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { DashboardRoutingModule } from './dashboard-routing.module';\r\nimport { NavbarSidebarModule } from '../navbar-sidebar/navbar-sidebar.module';\r\nimport { NavbarModule } from 'ng-uikit-pro-standard';\r\nimport { DxButtonModule, DxDataGridModule, DxPopupModule, DxScrollViewModule, DxSortableModule, DxTemplateModule, DxDropDownButtonModule, DxTagBoxModule } from 'devextreme-angular';\r\nimport { MdbGlobalModule } from '../mdb-global.module';\r\nimport { FormsModule, ReactiveFormsModule, } from '@angular/forms';\r\nimport { DashboardPageComponent } from 'src/app/pages/dashboard/dashboard-page/dashboard-page.component';\r\n\r\nexport function createTranslateLoader(http: HttpClient) {\r\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [\r\n SharedDashboardComponent,\r\n DashboardDraggableOptionsComponent,\r\n DashboardPageComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n DashboardRoutingModule,\r\n MdbGlobalModule,\r\n DxTemplateModule,\r\n DxTagBoxModule,\r\n DxButtonModule,\r\n DxScrollViewModule,\r\n DxPopupModule,\r\n DxDataGridModule,\r\n DxSortableModule,\r\n DxDropDownButtonModule\r\n // NavbarSidebarModule,\r\n ],\r\n exports: [SharedDashboardComponent],\r\n schemas: [NO_ERRORS_SCHEMA]\r\n})\r\nexport class DashboardModule { }\r\n","export default \"#kanban {\\n white-space: nowrap;\\n width: 100%;\\n}\\n\\n.list1 {\\n background-color: white;\\n display: inline-block;\\n vertical-align: top;\\n border: 1px solid #dfdfdf;\\n}\\n\\n/*.list1 {\\n // border-radius: 8px;\\n // margin: 5px;\\n background-color:rgb(245, 245, 245);\\n display: inline-block;\\n vertical-align: top;\\n white-space: normal;\\n border: 1px solid #dfdfdf;\\n // width: 20%;\\n // position: relative;\\n// min-height: 100%;\\n\\n}*/\\n\\n.list-title {\\n font-size: 0.9rem;\\n margin-bottom: -10px;\\n font-weight: bold;\\n cursor: pointer;\\n}\\n\\n.scrollable-list {\\n width: 100% !important;\\n height: 100%;\\n display: -webkit-box;\\n display: flex;\\n -webkit-box-orient: vertical;\\n -webkit-box-direction: normal;\\n flex-direction: column;\\n}\\n\\n.box-grow {\\n -webkit-box-flex: 1;\\n flex: 1 1 100%;\\n}\\n\\n.sortable-cards {\\n min-height: 380px;\\n}\\n\\n.card-subject {\\n padding-bottom: 10px;\\n}\\n\\n.card-assignee {\\n opacity: 0.6;\\n}\\n\\n.card-priority {\\n position: absolute;\\n top: 10px;\\n bottom: 10px;\\n left: 5px;\\n width: 5px;\\n border-radius: 2px;\\n background: #86C285;\\n}\\n\\n.priority-1 {\\n background: #ADADAD;\\n}\\n\\n.priority-2 {\\n background: #86C285;\\n}\\n\\n.priority-3 {\\n background: #EDC578;\\n}\\n\\n.priority-4 {\\n background: #EF7D59;\\n}\\n\\n::ng-deep .dx-sortable {\\n display: block;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL3NoYXJlZC1kYXNoYm9hcmQvRTpcXERldlxcQ1VCRVRFTVBcXG5ld2N1YmUvc3JjXFxhcHBcXHNoYXJlZFxcc2hhcmVkLWRhc2hib2FyZFxcc2hhcmVkLWRhc2hib2FyZC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL3NoYXJlZC1kYXNoYm9hcmQvc2hhcmVkLWRhc2hib2FyZC5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLG1CQUFBO0VBQ0EsV0FBQTtBQ0NGOztBREdBO0VBR0UsdUJBQUE7RUFDQSxxQkFBQTtFQUNBLG1CQUFBO0VBQ0EseUJBQUE7QUNGRjs7QURTQTs7Ozs7Ozs7Ozs7O0VBQUE7O0FBY0E7RUFDRSxpQkFBQTtFQUdBLG9CQUFBO0VBQ0EsaUJBQUE7RUFDQSxlQUFBO0FDVEY7O0FEWUE7RUFDQSxzQkFBQTtFQUNBLFlBQUE7RUFDQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO1VBQUEsc0JBQUE7QUNUQTs7QURZQTtFQUNBLG1CQUFBO1VBQUEsY0FBQTtBQ1RBOztBRGFBO0VBQ0UsaUJBQUE7QUNWRjs7QURlQTtFQUNFLG9CQUFBO0FDWkY7O0FEZUE7RUFDRSxZQUFBO0FDWkY7O0FEZUE7RUFDRSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxZQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0FDWkY7O0FEZUE7RUFDRSxtQkFBQTtBQ1pGOztBRGVBO0VBQ0UsbUJBQUE7QUNaRjs7QURlQTtFQUNFLG1CQUFBO0FDWkY7O0FEZUE7RUFDRSxtQkFBQTtBQ1pGOztBRGVBO0VBQ0UsY0FBQTtBQ1pGIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL3NoYXJlZC1kYXNoYm9hcmQvc2hhcmVkLWRhc2hib2FyZC5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIiNrYW5iYW4ge1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG59XHJcblxyXG4ubGlzdDEge1xyXG4gIC8vIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAvLyBtYXJnaW46IDVweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZmRmZGY7XHJcbiAgICAvLyB3aWR0aDogMjAlO1xyXG4gIC8vIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuLy8gbWluLWhlaWdodDogMTAwJTtcclxuXHJcbn1cclxuXHJcbi8qLmxpc3QxIHtcclxuICAvLyBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgLy8gbWFyZ2luOiA1cHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjpyZ2IoMjQ1LCAyNDUsIDI0NSk7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjZGZkZmRmO1xyXG4gICAgLy8gd2lkdGg6IDIwJTtcclxuICAvLyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbi8vIG1pbi1oZWlnaHQ6IDEwMCU7XHJcblxyXG59Ki9cclxuXHJcbi5saXN0LXRpdGxlIHtcclxuICBmb250LXNpemU6IDAuOXJlbTtcclxuLy8gIHBhZGRpbmc6IDEwcHg7XHJcbiAgLy8gcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IC0xMHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLnNjcm9sbGFibGUtbGlzdCB7XHJcbndpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbmhlaWdodDoxMDAlO1xyXG5kaXNwbGF5OiBmbGV4O1xyXG5mbGV4LWRpcmVjdGlvbjogY29sdW1uXHJcbn1cclxuXHJcbi5ib3gtZ3JvdyB7XHJcbmZsZXg6IDEgMSAxMDAlO1xyXG4vL2JhY2tncm91bmQ6IGdyZWVuO1xyXG59XHJcblxyXG4uc29ydGFibGUtY2FyZHMge1xyXG4gIG1pbi1oZWlnaHQ6IDM4MHB4XHJcbn1cclxuXHJcblxyXG5cclxuLmNhcmQtc3ViamVjdCB7XHJcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi5jYXJkLWFzc2lnbmVlIHtcclxuICBvcGFjaXR5OiAwLjY7XHJcbn1cclxuXHJcbi5jYXJkLXByaW9yaXR5IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAxMHB4O1xyXG4gIGJvdHRvbTogMTBweDtcclxuICBsZWZ0OiA1cHg7XHJcbiAgd2lkdGg6IDVweDtcclxuICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgYmFja2dyb3VuZDogIzg2QzI4NTtcclxufVxyXG5cclxuLnByaW9yaXR5LTEge1xyXG4gIGJhY2tncm91bmQ6ICNBREFEQUQ7XHJcbn1cclxuXHJcbi5wcmlvcml0eS0yIHtcclxuICBiYWNrZ3JvdW5kOiAjODZDMjg1O1xyXG59XHJcblxyXG4ucHJpb3JpdHktMyB7XHJcbiAgYmFja2dyb3VuZDogI0VEQzU3ODtcclxufVxyXG5cclxuLnByaW9yaXR5LTQge1xyXG4gIGJhY2tncm91bmQ6ICNFRjdENTk7XHJcbn1cclxuXHJcbjo6bmctZGVlcCAuZHgtc29ydGFibGUge1xyXG4gIGRpc3BsYXk6IGJsb2NrXHJcbn1cclxuIiwiI2thbmJhbiB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubGlzdDEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGZkZmRmO1xufVxuXG4vKi5saXN0MSB7XG4gIC8vIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgLy8gbWFyZ2luOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6cmdiKDI0NSwgMjQ1LCAyNDUpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZmRmZGY7XG4gICAgLy8gd2lkdGg6IDIwJTtcbiAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gbWluLWhlaWdodDogMTAwJTtcblxufSovXG4ubGlzdC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMTBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnNjcm9sbGFibGUtbGlzdCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmJveC1ncm93IHtcbiAgZmxleDogMSAxIDEwMCU7XG59XG5cbi5zb3J0YWJsZS1jYXJkcyB7XG4gIG1pbi1oZWlnaHQ6IDM4MHB4O1xufVxuXG4uY2FyZC1zdWJqZWN0IHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi5jYXJkLWFzc2lnbmVlIHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4uY2FyZC1wcmlvcml0eSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDVweDtcbiAgd2lkdGg6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kOiAjODZDMjg1O1xufVxuXG4ucHJpb3JpdHktMSB7XG4gIGJhY2tncm91bmQ6ICNBREFEQUQ7XG59XG5cbi5wcmlvcml0eS0yIHtcbiAgYmFja2dyb3VuZDogIzg2QzI4NTtcbn1cblxuLnByaW9yaXR5LTMge1xuICBiYWNrZ3JvdW5kOiAjRURDNTc4O1xufVxuXG4ucHJpb3JpdHktNCB7XG4gIGJhY2tncm91bmQ6ICNFRjdENTk7XG59XG5cbjo6bmctZGVlcCAuZHgtc29ydGFibGUge1xuICBkaXNwbGF5OiBibG9jaztcbn0iXX0= */\"","// Sortable\r\nimport { moveItemInList } from 'mdb-sortable';\r\n// tables\r\nimport {\r\n Component, OnInit, ElementRef, HostListener,\r\n AfterViewInit, ViewChild, ChangeDetectorRef,\r\n QueryList, ViewChildren, Input \r\n} from '@angular/core';\r\nimport { MdbTableDirective, MdbTablePaginationComponent, MdbBtnDirective, MDBModalRef } from 'ng-uikit-pro-standard';\r\n// mensage type toast\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\n// forms and validations\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { environment } from 'src/environments/environment';\r\nimport { ComponentsType, ComponentIndicator, ComponentChart, ChartDatasets, ChartColors, Dashboard } from 'src/app/models/component-data';\r\nimport { DasboardService } from 'src/app/services/dashboard.service';\r\nimport { TranslatePipe, TranslateService } from '@ngx-translate/core';\r\nimport { groupBy, mergeMap, toArray } from 'rxjs/operators';\r\nimport { from, Observable } from 'rxjs';\r\nimport { GetTypePipe } from 'src/app/custom-pipe/GetTypePipe';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { IMyOptions } from 'ng-uikit-pro-standard';\r\nimport { CurrencyPipe, DatePipe } from '@angular/common';\r\n\r\nimport { DxDataGridModule, DxButtonModule, DxDataGridComponent, DxDropDownButtonModule } from 'devextreme-angular';\r\nimport { exportDataGrid as exportDataGridToPdf } from 'devextreme/pdf_exporter';\r\nimport { jsPDF } from 'jspdf';\r\nimport 'jspdf-autotable';\r\n\r\n\r\n@Component({\r\n selector: 'app-shared-dashboard',\r\n templateUrl: './shared-dashboard.component.html',\r\n styleUrls: ['./shared-dashboard.component.scss']\r\n})\r\nexport class SharedDashboardComponent implements OnInit, AfterViewInit {\r\n @ViewChildren(MdbBtnDirective, { read: ElementRef }) buttons: QueryList;\r\n @ViewChild(MdbTableDirective, { static: true }) mdbTable: MdbTableDirective;\r\n @ViewChild(MdbTableDirective, { static: true }) mdbTable3: MdbTableDirective;\r\n @ViewChild(MdbTablePaginationComponent, { static: true }) mdbTablePagination: MdbTablePaginationComponent;\r\n @ViewChild('row', { static: true }) row: ElementRef;\r\n @ViewChild('createDashboard', { static: true }) createDashboard;\r\n @ViewChild('mdelete', { static: true }) mdelete;\r\n @ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;\r\n // @ViewChildren(MdbBtnDirective, { read: ElementRef }) buttons: QueryList;\r\n\r\n @Input()\r\n showHeader: boolean = true;\r\n @Input()\r\n // dashboardCode: string = '';\r\n _paramsDash\r\n @Input('paramsDash')\r\n set paramsDash(data: any){\r\n this._paramsDash = data\r\n this.getDashboards()\r\n }\r\n elements2: any = [];\r\n statuses: Array;\r\n RInterval: Array;\r\n dataorigen: Array;\r\n iX: Array;\r\n iY: Array;\r\n categories: Array = [];\r\n disabledElements: any[];\r\n components: Array = new Array();\r\n componentsToAdd: Array = new Array();\r\n componentsTypes: any;\r\n dashboards: any;\r\n selectedDashboard: number;\r\n nameDashboardSelected: string;\r\n newDashboard: Dashboard = new Dashboard();\r\n textFilterComponent: string;\r\n chartType = 'doughnut';\r\n dashBoardForm: FormGroup;\r\n optionsCType = [];\r\n dsUsers: Array = [];\r\n\r\n videoDashboardSelected: string;\r\n videoDashboardUnSelected: string;\r\n\r\n userselected: Array = [];\r\n\r\n editingDashboard = false;\r\n\r\n cancelButton:any;\r\n saveButton:any;\r\n\r\n public myDatePickerOptions: IMyOptions = {\r\n // Your options\r\n };\r\n\r\n public chartDatasets: Array = [\r\n { data: [100, 50, 0, 0], label: 'My First dataset' }\r\n ];\r\n\r\n public activeLang = 'en';\r\n\r\n public chartLabels: Array = ['Material Cost', 'Labor Cost', 'Subcontrator', 'Expensive Report'];\r\n\r\n public chartColors: Array = [\r\n {\r\n backgroundClass: ['flex-rectangleRed', 'flex-rectangleGreen', 'flex-rectangleOrange', 'flex-rectangleBlue'],\r\n backgroundColor: ['#95c83d', '#F7464A', '#F9A21B', '#12A5DD'],\r\n hoverBackgroundColor: ['#95c83d', '#F7464A', '#F9A21B', '#12A5DD'],\r\n borderWidth: 2,\r\n }\r\n ];\r\n\r\n popupCreateDashboard = false;\r\n popupAddComponent = false;\r\n popupDeleteDashbord = false;\r\n popupShareDashboard = false;\r\n\r\n public chartOptions: any = {\r\n responsive: true\r\n };\r\n\r\n public chartType1 = 'pie';\r\n\r\n public chartDatasets1: Array = [\r\n { data: ['50', '50'], label: 'My First dataset' }\r\n ];\r\n public chartLabels1: Array = ['Billable', 'Non Billable'];\r\n public chartColors1: Array = [\r\n {\r\n backgroundClass: ['flex-rectangleRed', 'flex-rectangleGreen'],\r\n backgroundColor: ['#F7464A', '#95C83D'],\r\n hoverBackgroundColor: ['#F7464A', '#95C83D'],\r\n borderWidth: 2,\r\n }\r\n ];\r\n public chartOptions1: any = {\r\n responsive: true\r\n };\r\n\r\n headElements2 = [{ head: '', id: 'EstimateId', class: 'text-right' },\r\n { head: 'Cost Category', id: 'ProjectName', class: 'text-left' },\r\n { head: 'Total Cost', id: 'hours', class: 'text-right' }\r\n ];\r\n\r\n\r\n\r\n // disable objects sortable\r\n ngAfterViewInit() {\r\n const buttons = this.buttons.toArray();\r\n\r\n this.componentsTypes = environment.DashboardComponentsType;\r\n setTimeout(() => {\r\n this.disabledElements = buttons.map(button => button.nativeElement);\r\n }, 0);\r\n\r\n // this.newDashboard.dashboardSize = 1;\r\n\r\n\r\n }\r\n\r\n\r\n onListReorder(e) {\r\n console.clear();\r\n console.log(e);\r\n\r\n let fromindex = e.fromIndex + 1;\r\n let toindex = e.toIndex + 1;\r\n\r\n let fromindexOld = e.fromIndex;\r\n let toindexOld = e.toIndex;\r\n\r\n let primer = this.components.find(x => x.componentOrder == fromindex);\r\n let segundo = this.components.find(x => x.componentOrder == toindex);\r\n\r\n var copy = Object.assign({}, primer); \r\n console.log(copy);\r\n\r\n // Remove componet dragged from model\r\n const cloneSheepsES6A = [...this.components]; \r\n console.log(cloneSheepsES6A);\r\n this.components = this.components.filter(item => item.componentOrder !== copy.componentOrder)\r\n const cloneSheepsES6B = [...this.components]; \r\n console.log(cloneSheepsES6B);\r\n\r\n // Add componet dragged in a specific index\r\n let removed = this.components.splice(toindexOld, 0, copy);\r\n\r\n // update all values in sort field\r\n for (let index = 0; index < this.components.length; index++) {\r\n this.components[index].componentOrder = index + 1;\r\n console.log(this.components[index].componentOrder);\r\n console.log(index + 1);\r\n }\r\n console.log(this.components);\r\n\r\n // Insert component in position\r\n\r\n\r\n // Change de order of a unique component that was dragged\r\n // console.log('El component que se arrastró tenía: ' + primer.componentOrder);\r\n // primer.componentOrder = toindex;\r\n // console.log('El component que se arrastró ahora tiene: ' + primer.componentOrder);\r\n // // segundo.componentOrder = fromindex;\r\n // // moveItemInList(this.components, event.oldIndex, event.newIndex);\r\n\r\n // let firstIndexChange = 0;\r\n // if (toindex <= fromindex)\r\n // {\r\n // firstIndexChange = toindex;\r\n // }\r\n // else\r\n // {\r\n // firstIndexChange = fromindex;\r\n // }\r\n\r\n // // From dragged component to last component mst be reorder\r\n // let plus = 2;\r\n // for (let index = firstIndexChange - 1; index < this.components.length; index++) {\r\n\r\n // // if (this.components[index].componentOrder != -1){\r\n // // console.log('El component que tenía: ' + (index + 1));\r\n // // this.components[index].componentOrder = (index + 2);\r\n // // console.log('Ahora tiene: ' + this.components[index].componentOrder);\r\n // // this.components[index].DashboardId = this.selectedDashboard;\r\n // // }\r\n\r\n // // if ((index + 1) != fromindex){\r\n // // console.log('El component que tenía: ' + (index + 1));\r\n // // this.components[index].componentOrder = (index + plus);\r\n // // console.log('Ahora tiene: ' + this.components[index].componentOrder);\r\n // // this.components[index].DashboardId = this.selectedDashboard;\r\n // // }\r\n // // else{\r\n // // plus = 1;\r\n // // }\r\n // }\r\n\r\n // let comChanged = this.components.find(x => x.componentOrder == -1);\r\n // comChanged.componentOrder = firstIndexChange;\r\n\r\n this.saveChangeComponents();\r\n //this.components.splice(e.toIndex, 0, this.components.splice(e.fromIndex, 1)[0]);\r\n\r\n // const component1 = this.components.splice(e.fromIndex, 1)[0];\r\n // const component2 = this.components.splice(e.toIndex, 1)[0];\r\n\r\n // this.components.splice(e.toIndex, 0, component1);\r\n // this.components.splice(e.fromIndex, 0, component2);\r\n }\r\n\r\n onTaskDragStart(e) {\r\n e.itemData = e.fromData[e.fromIndex];\r\n }\r\n\r\n onTaskDrop(e) {\r\n e.fromData.splice(e.fromIndex, 1);\r\n e.toData.splice(e.toIndex, 0, e.itemData);\r\n }\r\n\r\n mouseEnter(item) {\r\n item.disabled = true;\r\n }\r\n\r\n mouseLeave(item) {\r\n item.disabled = false;\r\n }\r\n\r\n public chartClicked(e: any): void { }\r\n public chartHovered(e: any): void { }\r\n\r\n public chartClicked1(e: any): void { }\r\n public chartHovered1(e: any): void { }\r\n\r\n // tslint:disable-next-line: member-ordering\r\n dateFormat = 'dd-MM-yyyy';\r\n moneyFormat = '';\r\n /////// message tost\r\n constructor(\r\n private toastrService: ToastService,\r\n private dashboardService: DasboardService,\r\n translate: TranslateService,\r\n private currencyPipe: CurrencyPipe,\r\n private datePipe: DatePipe,\r\n private translateService: TranslateService,\r\n // private translatePipe: TranslatePipe,\r\n private appConfigService: AppConfigService) {\r\n translate.setDefaultLang(this.activeLang);\r\n\r\n \r\n this.dashboardService.getUsers().subscribe(result => {\r\n // console.log('getdassss', result);\r\n this.dsUsers = [];\r\n this.dsUsers = result;\r\n\r\n });\r\n \r\n\r\n\r\n\r\n if (!appConfigService.appConfig) {\r\n appConfigService.loadAppConfig()\r\n }\r\n this.dateFormat = this.appConfigService.dateFormat;\r\n this.moneyFormat = this.appConfigService.moneyFormat;\r\n\r\n this.videoDashboardSelected = this.appConfigService.appConfig.videoDashboardSelected;\r\n this.videoDashboardUnSelected = this.appConfigService.appConfig.videoDashboardUnSelected;\r\n\r\n\r\n this.elements2.push({ EstimateId: '1', ProjectName: 'Material Cost', hours: '6,299.52' });\r\n this.elements2.push({ EstimateId: '2', ProjectName: 'Labor Cost', hours: '421,658.21' });\r\n this.elements2.push({ EstimateId: '3', ProjectName: 'Subcontrator', hours: '0.00' });\r\n this.elements2.push({ EstimateId: '4', ProjectName: 'Expense Report', hours: '0.00' });\r\n this.setForm();\r\n\r\n\r\n this.cancelButton = {\r\n text: 'Close',\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.setForm();\r\n this.popupCreateDashboard = false;\r\n },\r\n };\r\n\r\n\r\n this.saveButton = {\r\n text: 'Save',\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.saveDashboard(this.dashBoardForm.value);\r\n },\r\n };\r\n }\r\n\r\n setForm() {\r\n this.editingDashboard = false;\r\n this.dashBoardForm = new FormGroup({\r\n name: new FormControl('', [\r\n Validators.required,\r\n Validators.minLength(1),\r\n Validators.maxLength(30)\r\n // forbiddenNameValidator(/bob/i) // <-- Here's how you pass in the custom validator.\r\n ]),\r\n description: new FormControl('', [\r\n // Validators.required,\r\n Validators.maxLength(50)\r\n // forbiddenNameValidator(/bob/i) // <-- Here's how you pass in the custom validator.\r\n ]),\r\n dashboarddefault: new FormControl(false, []),\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n\r\n const interval = setInterval(() => {\r\n if (sessionStorage.getItem('moduleId')) {\r\n clearInterval(interval);\r\n console.log('aqui???')\r\n console.log(sessionStorage.getItem('moduleId'))\r\n this.getDashboards();\r\n }\r\n }, 500);\r\n\r\n }\r\n\r\n // showSuccess() {\r\n // const options = {closeButton: true,actionButton: 'Action',tapToDismiss: true, toastClass: 'opacity: 1 ' };\r\n // this.toastrService.success('Added Successfully', options);\r\n // }\r\n\r\n // showWarning() {\r\n // const options = { progressBar: true, timeOut: 3000, toastClass: 'black' };\r\n // this.toastrService.warning('Warnig message', 'Toastr warning!', options);\r\n // }\r\n\r\n deleteDashboard() {\r\n this.dashboardService.deleteDashboard(this.selectedDashboard).subscribe(result => {\r\n this.popupDeleteDashbord = false;;\r\n this.toastrService.success('Deleted Successfully');\r\n this.getDashboards();\r\n });\r\n }\r\n\r\n shareDashboard() {\r\n this.dashboardService.shareDashboard({userids: this.userselected.join(\", \"), dashboardid: this.selectedDashboard, method: 'SharedDashBoard'}).subscribe(result => {\r\n this.popupShareDashboard = false;;\r\n this.toastrService.success('Dashboard shared Successfully');\r\n this.userselected = [];\r\n });\r\n }\r\n\r\n saveDashboard(item) {\r\n\r\n if (this.editingDashboard) {\r\n item.id = this.selectedDashboard;\r\n this.dashboardService.updateDashboard(item).subscribe(result => {\r\n // console.log('update', result);\r\n // let idx = this.categories.findIndex(x => x.value == this.selectedDashboard);\r\n // this.categories[idx].label = item.name;\r\n this.toastrService.success('Dashboad modified successfully.');\r\n this.popupCreateDashboard = false;\r\n this.setForm();\r\n this.getDashboards();\r\n });\r\n } else {\r\n\r\n this.dashboardService.newDashboard(item).subscribe(result => {\r\n // const options = { progressBar: true, timeOut: 3000,tapToDismiss: false, toastClass: 'bg-white', messageClass: 'gray',titleClass: 't-gray' };\r\n // this.toastrService.success('Hello world!', 'Toastr success!', options);\r\n const options = { progressBar: true, timeOut: 3000, opacity: 1 };\r\n this.toastrService.success('Added Successfully', '', options);\r\n this.popupCreateDashboard = false;\r\n this.getDashboards();\r\n this.setForm();\r\n });\r\n }\r\n\r\n }\r\n\r\n addNewComponent(item: ComponentsType) {\r\n // item.serviceEndPoint = null;\r\n // this.components.push(item);\r\n const orders = this.components.map(x => x.componentOrder);\r\n\r\n if (orders.length == 0) {\r\n item.componentOrder = 1;\r\n } else {\r\n const maxOrder = Math.max(...orders);\r\n item.componentOrder = maxOrder + 1;\r\n }\r\n\r\n this.components.push(item);\r\n this.getDataComponents(false, item);\r\n const obj = {\r\n dashboardid: this.selectedDashboard,\r\n componentid: item.componentID,\r\n componentorder: item.componentOrder\r\n };\r\n\r\n this.dashboardService.addNewComponentDashboard(obj).subscribe(result => {\r\n // console.log('save component dashboard', result);\r\n this.toastrService.success('Component added successfully');\r\n this.GetAllDashboardComponents();\r\n });\r\n }\r\n\r\n removeAlerts() {\r\n this.toastrService.clear();\r\n }\r\n\r\n onDrop(event: any) {\r\n moveItemInList(this.components, event.oldIndex, event.newIndex);\r\n for (let index = 0; index < this.components.length; index++) {\r\n this.components[index].componentOrder = index + 1;\r\n this.components[index].DashboardId = this.selectedDashboard;\r\n }\r\n\r\n this.saveChangeComponents();\r\n }\r\n\r\n saveChangeComponents() {\r\n this.dashboardService.UpdateDashBoardComponents(this.selectedDashboard, this.components).subscribe(result => {\r\n //this.ngOnInit();\r\n console.log('update', result);\r\n });\r\n }\r\n\r\n sumArrayNumber(array: any) {\r\n const sum = array.reduce((sum, current) => sum + current.total, 0);\r\n return sum;\r\n }\r\n\r\n populateData(component, data: any) {\r\n let chartType = '';\r\n\r\n switch (component.componentTypeID) {\r\n case 1:\r\n // console.log('table', data);\r\n\r\n // data = JSON.parse('[{\"numid\":14,\"strCoName\":\"Earthsmart controls\",\"strdbname\":\"cube00000013\",\"datlastlogin\":\"2021-03-26t21:34:52.677\",\"strlastuser\":\"earthsmartcontrols@cube-usa.com\",\"numNumbOfDays\":5},{\"numid\":50,\"strCoName\":\"Delta Integrated Building Solutions inc\",\"strdbname\":\"cube00000039\",\"datlastlogin\":\"2021-03-26t21:37:06.227\",\"strlastuser\":\"dibs@cube.com\",\"numNumbOfDays\":5},{\"numid\":55,\"strCoName\":\"ESC Automation inc\",\"strdbname\":\"cube00000044\",\"datlastlogin\":\"2021-03-26t20:40:16.58\",\"strlastuser\":\"esctoronto@cube-usa.com\",\"numNumbOfDays\":5},{\"numid\":60,\"strCoName\":\"Arizona Control Specialists, inc.\",\"strdbname\":\"cube00000049\",\"datlastlogin\":\"2021-03-26t21:28:53.433\",\"strlastuser\":\"azs@cube-usa.com\",\"numNumbOfDays\":5},{\"numid\":70,\"strCoName\":\"Ambient Mechanical ltd.\",\"strdbname\":\"cube00000060\",\"datlastlogin\":\"2021-03-26t17:21:52.663\",\"strlastuser\":\"aturola@acesolutionsgroup.ca\",\"numNumbOfDays\":5},{\"numid\":64,\"strCoName\":\"Delta Connects (2), inc.\",\"strdbname\":\"cube00000053\",\"datlastlogin\":\"2021-03-29t11:32:17.427\",\"strlastuser\":\"deltac3@cube-usa.com\",\"numnumbofdays\":2},{\"numid\":66,\"strconame\":\"mikkelsen-coward\",\"strdbname\":\"cube00000055\",\"datlastlogin\":\"2021-03-30t21:33:00.623\",\"strlastuser\":\"tbenson\",\"numNumbOfDays\":1},{\"numid\":68,\"strCoName\":\"Serv-All Mechanical Services ltd.\",\"strdbname\":\"cube00000058\",\"datlastlogin\":\"2021-03-30t20:12:00.847\",\"strlastuser\":\"douellette@serv-all.ca\",\"numNumbOfDays\":1},{\"numid\":72,\"strCoName\":\"Delaware Valley automation\",\"strdbname\":\"cube00000062\",\"datlastlogin\":\"2021-03-30t21:40:05.333\",\"strlastuser\":\"hweitzner@dvautomate.com\",\"numNumbOfDays\":1},{\"numid\":73,\"strCoName\":\"Twin Rivers controls\",\"strdbname\":\"cube00000064\",\"datlastlogin\":\"2021-03-30t21:46:37.677\",\"strlastuser\":\"jlarson@trcontrols.ca\",\"numNumbOfDays\":1},{\"numid\":61,\"strCoName\":\"Tampa Bay trane\",\"strdbname\":\"cube00000050\",\"datlastlogin\":\"2021-03-30t23:18:24.997\",\"strlastuser\":\"david.painter@trane.com\",\"numnumbofdays\":1},{\"numid\":62,\"strconame\":\"u.s. Engineering service\",\"strdbname\":\"cube00000051\",\"datlastlogin\":\"2021-03-30t20:15:32.513\",\"strlastuser\":\"michael.burr@usengineering.com\",\"numNumbOfDays\":1},{\"numid\":6,\"strCoName\":\"Travis Brothers Building automation\",\"strdbname\":\"cube00000006\",\"datlastlogin\":\"2021-03-30t18:54:32.383\",\"strlastuser\":\"dan.travis@travisbrothers.com\",\"numNumbOfDays\":1},{\"numid\":56,\"strCoName\":\"Controls and equipment\",\"strdbname\":\"cube00000045\",\"datlastlogin\":\"2021-03-30t18:55:21.917\",\"strlastuser\":\"mjones@controlsequipment.com\",\"numnumbofdays\":1},{\"numid\":52,\"strconame\":\"enervise\",\"strdbname\":\"cube00000041\",\"datlastlogin\":\"2021-03-30t13:07:58.637\",\"strlastuser\":\"mjacobus\",\"numNumbOfDays\":1},{\"numid\":37,\"strCoName\":\"Metropolitan Mechanical Contractors, inc.\",\"strdbname\":\"cube00000009\",\"datlastlogin\":\"2021-03-30t12:52:39.1\",\"strlastuser\":\"sam.johnson@metromech.us\",\"numNumbOfDays\":1},{\"numid\":41,\"strCoName\":\"Ecosave automation\",\"strdbname\":\"cube00000028\",\"datlastlogin\":\"2021-03-30t17:41:28.127\",\"strlastuser\":\"akhachaturian@ecosaveinc.com\",\"numNumbOfDays\":1},{\"numid\":20,\"strCoName\":\"Delta Connects, inc.\",\"strdbname\":\"cube00000017\",\"datlastlogin\":\"2021-03-30t23:11:39.05\",\"strlastuser\":\"hlittman@deltaconnects.com\",\"numNumbOfDays\":1},{\"numid\":25,\"strCoName\":\"Shasta Control company\",\"strdbname\":\"cube00000019\",\"datlastlogin\":\"2021-03-30t23:22:53.68\",\"strlastuser\":\"todd@shastacontrolcompany.com\",\"numNumbOfDays\":1},{\"numid\":27,\"strCoName\":\"Newmatic engineering\",\"strdbname\":\"cube00000022\",\"datlastlogin\":\"2021-03-31t00:06:31.007\",\"strlastuser\":\"nghotbi@newmatic.net\",\"numNumbOfDays\":0},{\"numid\":31,\"strCoName\":\"Automated Comfort Controls, inc.\",\"strdbname\":\"cube00000025\",\"datlastlogin\":\"2021-03-31t00:53:30.537\",\"strlastuser\":\"pkreiling@automatedcomfort.com\",\"numNumbOfDays\":0},{\"numid\":16,\"strCoName\":\"Energy Control inc\",\"strdbname\":\"cube00000016\",\"datlastlogin\":\"2021-03-31t00:14:28.527\",\"strlastuser\":\"claro.calaunan@engie.com\",\"numNumbOfDays\":0},{\"numid\":1,\"strCoName\":\"South Florida controls\",\"strdbname\":\"cube\",\"datlastlogin\":\"2021-03-31t03:17:46.713\",\"strlastuser\":\"jgarit@sfc-mia.com\",\"numnumbofdays\":0},{\"numid\":4,\"strconame\":\"cube-usa\",\"strdbname\":\"cube00000004\",\"datlastlogin\":\"2021-03-31t02:09:33.723\",\"strlastuser\":\"hector2\",\"numNumbOfDays\":0},{\"numid\":48,\"strCoName\":\"Automated Controls, inc.\",\"strdbname\":\"cube00000037\",\"datlastlogin\":\"2021-03-31t03:59:10.613\",\"strlastuser\":\"jjudy@automatedcontrols.net\",\"numNumbOfDays\":0},{\"numid\":39,\"strCoName\":\"HCT Control technology\",\"strdbname\":\"cube00000018\",\"datlastlogin\":\"2021-03-31t03:28:24.83\",\"strlastuser\":\"mfiebiger@mailhvac.com\",\"numNumbOfDays\":0},{\"numid\":69,\"strCoName\":\"TES controls\",\"strdbname\":\"cube00000059\",\"datlastlogin\":\"2021-03-31t01:47:28.45\",\"strlastuser\":\"konner@tescontrols.com\",\"numNumbOfDays\":0}]')\r\n\r\n\r\n component.data = data;\r\n\r\n\r\n\r\n let columns = [];\r\n let names = Object.keys(data[0]);\r\n let mythis = this;\r\n names.forEach(element => {\r\n let traduction: any = this.translateService.get(element);\r\n let datatype = 'string';\r\n let obj = {\r\n columnAutoWidth: true,\r\n dataField: element,\r\n caption: traduction.value.replace('ico_', ''), // element.substr(3, element.length - 1),\r\n // caption: this.translatePipe.transform(element), // element.substr(3, element.length - 1),\r\n dataType: 'string',\r\n cellTemplate: function (element, info) {\r\n let html = '';\r\n let initial = names[info.columnIndex].substr(0, 3);\r\n let val = info.data[names[info.columnIndex]];\r\n\r\n if (initial == 'hyp') {\r\n let internal = names[info.columnIndex].substr(0, 12).toLowerCase() == 'hyp_internal';\r\n \r\n if(internal)\r\n html = ' View link';\r\n else\r\n html = ' View link';\r\n }\r\n\r\n else if (initial == 'ico') {\r\n html = '';\r\n }\r\n\r\n else if (initial == 'str' || initial == 'boo') {\r\n html = '' + val + '';\r\n }\r\n\r\n else if (initial == 'cur') {\r\n datatype = 'number';\r\n html = '' + mythis.currencyPipe.transform(val, mythis.moneyFormat) + ''\r\n }\r\n\r\n else if (initial == 'dat') {\r\n datatype = 'date';\r\n html = '' + mythis.datePipe.transform(val, mythis.dateFormat) + ''\r\n } else if (initial == 'num') {\r\n datatype = 'number';\r\n val = val == null || val == undefined ? '' : val;\r\n html = '' + val + '';\r\n\r\n }\r\n\r\n else {\r\n html = '' + val + '';\r\n }\r\n obj.dataType = datatype;\r\n\r\n // html = '
' + val + \"
\";\r\n element.innerHTML = html;\r\n // .style(\"color\", \"red\");\r\n\r\n\r\n }\r\n }\r\n columns.push(obj);\r\n });\r\n\r\n component.columns = columns;\r\n // const pipe = new GetTypePipe();\r\n // const fiteredArr = pipe.transform(data, ['1']);\r\n // console.log('prueba final2', JSON.stringify(data));\r\n // console.log('prueba final', fiteredArr);\r\n break;\r\n case 2:\r\n case 3:\r\n case 4:\r\n case 5:\r\n case 6:\r\n case 9:\r\n case 10:\r\n if (component.componentTypeID === 2) {\r\n chartType = 'doughnut';\r\n }\r\n else if (component.componentTypeID === 3) {\r\n chartType = 'pie';\r\n }\r\n else if (component.componentTypeID === 4) {\r\n chartType = 'bar';\r\n }\r\n else if (component.componentTypeID === 5) {\r\n chartType = 'horizontalBar';\r\n }\r\n else if (component.componentTypeID === 6) {\r\n chartType = 'bar';\r\n }\r\n else if (component.componentTypeID === 9) {\r\n chartType = 'line';\r\n }\r\n else if (component.componentTypeID === 10) {\r\n chartType = 'radar';\r\n }\r\n // console.log('grafico', data);\r\n const chart = new ComponentChart();\r\n const dataset1 = new ChartDatasets();\r\n\r\n chart.chartType = chartType;\r\n chart.chartOptions = {\r\n responsive: true,\r\n };\r\n\r\n if (component.componentTypeID == 6) {\r\n chart.chartOptions = {\r\n responsive: true,\r\n scales: {\r\n xAxes: [{\r\n stacked: true\r\n }],\r\n yAxes: [\r\n {\r\n stacked: true\r\n }\r\n ]\r\n }\r\n };\r\n }\r\n\r\n\r\n if (component.componentTypeID == 9 || component.componentTypeID == 6 || component.componentTypeID == 10) {\r\n const source: Observable = from(data);\r\n // group by age\r\n const example = source.pipe(\r\n groupBy(person => person.chartDataName),\r\n // return each item in group as array\r\n mergeMap(group => group.pipe(toArray()))\r\n );\r\n\r\n const arrays = [];\r\n const subscribe = example.subscribe(val => {\r\n let datasetn = new ChartDatasets();\r\n\r\n arrays.push(val);\r\n val.forEach(ele => {\r\n // chart.chartLabels.push(ele.chartlabel);\r\n datasetn.data.push(ele.chartValue);\r\n });\r\n\r\n datasetn.label = val[0].chartDataName;\r\n chart.chartDatasets.push(datasetn);\r\n\r\n });\r\n\r\n arrays[0].forEach(element => {\r\n chart.chartLabels.push(element.chartlabel);\r\n });\r\n\r\n chart.chartColors = [\r\n {\r\n backgroundColor: 'rgba(105, 0, 132, .2)',\r\n borderColor: 'rgba(200, 99, 132, .7)',\r\n borderWidth: 2,\r\n backgroundClass: '',\r\n hoverBackgroundColor: ''\r\n },\r\n {\r\n backgroundColor: 'rgba(0, 137, 132, .2)',\r\n borderColor: 'rgba(0, 10, 130, .7)',\r\n borderWidth: 2,\r\n backgroundClass: '',\r\n hoverBackgroundColor: ''\r\n }\r\n ];\r\n\r\n } else {\r\n data.forEach(element => {\r\n chart.chartLabels.push(element.chartlabel);\r\n dataset1.data.push(element.chartValue);\r\n });\r\n dataset1.label = 'Dataset for doughnut';\r\n chart.chartDatasets.push(dataset1);\r\n }\r\n\r\n\r\n chart.chartColors.push(new ChartColors());\r\n component.data = chart;\r\n break;\r\n case 7:\r\n case 8:\r\n // console.log('indicator', data);\r\n component.data = data[0];\r\n break;\r\n\r\n }\r\n }\r\n\r\n GetAllDashboardComponents() {\r\n this.dashboardService.GetALlDashboardComponents().subscribe(result => {\r\n this.componentsToAdd = result.map(x => {\r\n let found = this.components.find(component => component.componentID == x.componentID);\r\n x.disable = found == undefined? false: true;\r\n return x;\r\n });\r\n // console.log('GetALlDashboardComponents CRUDOS', result);\r\n console.log('GetALlDashboardComponents', this.componentsToAdd);\r\n console.log(\"COMPONENTS \", this.components);\r\n });\r\n }\r\n\r\n editDashboard() {\r\n this.editingDashboard = true;\r\n console.log(this.selectedDashboard);\r\n let dash = this.dashboards.find(x => x.dashboardID == this.selectedDashboard);\r\n this.dashBoardForm.controls['name'].setValue(dash.name);\r\n this.dashBoardForm.controls['description'].setValue(dash.description);\r\n this.dashBoardForm.controls['dashboarddefault'].setValue(dash.dashboardDefault);\r\n }\r\n\r\n changeDashboard(item) {\r\n this.nameDashboardSelected = this.categories.find(x => x.value == item).label;\r\n this.dashboardService.getDashboardById(item).subscribe(result => {\r\n console.log('getDashboardById', result)\r\n this.components = result.sort(\r\n function (a, b) {\r\n return a.componentOrder - b.componentOrder;\r\n });\r\n\r\n for (let index = 0; index < this.components.length; index++) {\r\n this.components[index].DashboardId = this.selectedDashboard;\r\n }\r\n\r\n this.GetAllDashboardComponents();\r\n this.getDataComponents();\r\n });\r\n }\r\n\r\n changeDashboardCubeBox(item) {\r\n console.log(item)\r\n this.nameDashboardSelected = this.categories.find(x => x.value == item.DashboardID).label;\r\n this.dashboardService.getDashboardByIdCubeBox(item).subscribe(result => {\r\n console.log('getDashboardById', result)\r\n this.components = result.sort(\r\n function (a, b) {\r\n return a.componentOrder - b.componentOrder;\r\n });\r\n\r\n for (let index = 0; index < this.components.length; index++) {\r\n this.components[index].DashboardId = this.selectedDashboard;\r\n }\r\n\r\n this.getDataComponents();\r\n });\r\n }\r\n\r\n getDataComponents(isArray = true, item = null) {\r\n if (isArray) {\r\n this.components.forEach(element => {\r\n if (element.componentID) {\r\n this.dashboardService.getData(element.componentID).subscribe(result => {\r\n console.log('getData', result);\r\n this.populateData(element, result);\r\n });\r\n }\r\n });\r\n } else {\r\n if (item.componentID) {\r\n this.dashboardService.getData(item.componentID).subscribe(result => {\r\n console.log('getData', result);\r\n this.populateData(item, result);\r\n });\r\n }\r\n }\r\n\r\n\r\n }\r\n\r\n getDashboards() {\r\n \r\n this.dashboardService.getDashboard().subscribe(result => {\r\n console.log('getdassss', result);\r\n this.categories = [];\r\n this.dashboards = result;\r\n\r\n result.forEach(element => {\r\n // this.categories.push({ value: element.dashboardID, label: element.name });\r\n this.categories = [...this.categories, { value: element.dashboardID, label: element.name }];\r\n });\r\n console.log(this._paramsDash)\r\n if(this._paramsDash != undefined ){\r\n console.log(this._paramsDash)\r\n console.log('entre en el primer if')\r\n Array.prototype.forEach.call(result, item => {\r\n if(this._paramsDash.dash_code == item.description){\r\n this.selectedDashboard = item.dashboardID\r\n this._paramsDash['DashboardID'] = item.dashboardID\r\n delete this._paramsDash.dash_code\r\n this.changeDashboardCubeBox(this._paramsDash);\r\n }\r\n })\r\n } else {\r\n console.log('entre en el else')\r\n const dashboardselect = result.find(x => x.dashboardDefault == true);\r\n if (dashboardselect) {\r\n this.selectedDashboard = dashboardselect.dashboardID;\r\n this.changeDashboard(this.selectedDashboard);\r\n } else if (!dashboardselect && this.categories.length > 0) {\r\n this.selectedDashboard = result[0].dashboardID;\r\n this.changeDashboard(this.selectedDashboard);\r\n }\r\n }\r\n\r\n\r\n // console.log('categories', this.categories);\r\n });\r\n }\r\n\r\n onSizeChange(item: ComponentsType, size: number) {\r\n item.colLayoutBig = size;\r\n this.saveChangeComponents();\r\n }\r\n\r\n onRemove(item) {\r\n const index = this.components.indexOf(item, 0);\r\n if (index > -1) {\r\n this.components.splice(index, 1);\r\n for (let index = 0; index < this.components.length; index++) {\r\n this.components[index].componentOrder = index + 1;\r\n this.components[index].DashboardId = this.selectedDashboard;\r\n }\r\n }\r\n this.saveChangeComponents();\r\n this.GetAllDashboardComponents();\r\n }\r\n\r\n handleClick(event: Event) {\r\n alert('Prueba');\r\n }\r\n\r\n exportGrid(grid) {\r\n // console.log(grid)\r\n // console.log(this.dataGrid)\r\n // console.log(grid.instance)\r\n // console.log(this.dataGrid.instance)\r\n const doc = new jsPDF();\r\n exportDataGridToPdf({\r\n jsPDFDocument: doc,\r\n component: grid.instance\r\n }).then(() => {\r\n doc.save('Customers.pdf');\r\n })\r\n }\r\n\r\n //tabla anidada project labor\r\n\r\n elements: any = [\r\n {\r\n id: 'AutoCAD as-builting',\r\n first: '4.00',\r\n last: '24.00',\r\n handle: '0.00',\r\n handle5: '0.00',\r\n handle6: '0.00',\r\n handle7: '0.00',\r\n handle8: '0.00',\r\n collapsed: true,\r\n masterDetail: [{ orderDate: '0.00', adress: '0.00', adress4: '0.00', adress5: '0.00', adress6: '0.00', adress7: '0.00', adress8: '0.00' }],\r\n },\r\n ];\r\n\r\n headElements = ['Category', 'Actual Capacity', 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];\r\n masterHeadElements = ['Project Name', '%Completed', 'End Date', 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];\r\n masterHeadElements2 = ['Task Name', '%Completed', 'Start Date', 'End Date', 'Duration', 'Total Hours', 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug'];\r\n\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { DashboardPageComponent } from 'src/app/pages/dashboard/dashboard-page/dashboard-page.component';\r\nimport { SharedDatagridComponent } from './shared-datagrid.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n component: SharedDatagridComponent\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class SharedDatagridRoutingModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC9zaGFyZWQtZGF0YWdyaWQvc2hhcmVkLWRhdGFncmlkLmNvbXBvbmVudC5zY3NzIn0= */\"","\r\nimport { Component, ViewChild, AfterViewInit, Output, EventEmitter, Input } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { DatagridService } from 'src/app/services/datagrid.service';\r\nimport { TranslatePipe, TranslateService } from '@ngx-translate/core';\r\nimport { GetTypePipe } from 'src/app/custom-pipe/GetTypePipe';\r\nimport { CurrencyPipe, DatePipe } from '@angular/common';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\n\r\nimport { DxDataGridModule, DxButtonModule, DxDataGridComponent } from 'devextreme-angular';\r\nimport { exportDataGrid as exportDataGridToPdf } from 'devextreme/pdf_exporter';\r\nimport { jsPDF } from 'jspdf';\r\nimport 'jspdf-autotable';\r\n\r\nimport { WavesModule, SelectModule, ToastService } from 'ng-uikit-pro-standard';\r\n\r\n\r\n@Component({\r\n selector: 'app-shared-datagrid',\r\n templateUrl: './shared-datagrid.component.html',\r\n styleUrls: ['./shared-datagrid.component.scss']\r\n})\r\nexport class SharedDatagridComponent implements AfterViewInit {\r\n\r\n @ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;\r\n @Output() messageEvent = new EventEmitter();\r\n @Output() onLoadData = new EventEmitter();\r\n\r\n @Input() filters: any;\r\n @Input() offsetHeight: any;\r\n\r\n //grid\r\n dataSource: { ID: number, projectID: number, projectName: string, customerName: string, category: string, status: string, bidDate: string, bidTime: string, projectSalesPerson: string, amountPor: string, productSpecified: string, customerSalesPerson: string, engineer: string }[];\r\n\r\n customer: any;\r\n now: any;\r\n popupNewProject: any;\r\n clearFilter: any;\r\n get: any;\r\n optionsCType: any;\r\n reportData: any;\r\n reportColumns: any;\r\n component: any;\r\n dataSource2: any;\r\n grouppanel: boolean = false;\r\n exportexcel: boolean = false;\r\n headfilter: boolean = true;\r\n filterrow: boolean = true;\r\n filterpanel: boolean = true;\r\n moduleTitle: string = '';\r\n popupDelete: boolean = false;\r\n filter: any;\r\n customOperations: Array;\r\n filterValue: Array;\r\n moduleId: string;\r\n\r\n currentModuleId: number;\r\n filterValueSaved: any;\r\n\r\n\r\n iId: number = 0;\r\n\r\n public activeLang = 'en';\r\n dateFormat = 'dd-MM-yyyy';\r\n moneyFormat = '';\r\n lines: any = [];\r\n\r\n pageOpen: number = 1;\r\n\r\n constructor(private datagridService: DatagridService, private activatedRoute: ActivatedRoute, private translate: TranslateService, private currencyPipe: CurrencyPipe,\r\n private datePipe: DatePipe, private translateService: TranslateService, private appConfigService: AppConfigService, private router: Router, private toast: ToastService) {\r\n\r\n\r\n this.component = { data: [], columns: [] };\r\n\r\n\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n\r\n this.setInfo2();\r\n }\r\n\r\n goLink(rowData, router, activeRoute, routeLink) {\r\n // console.log('Mira lo que viene');\r\n // console.log(rowData);\r\n // console.log(activeRoute);\r\n // console.log(routeLink);\r\n router.navigate([routeLink], { queryParams: rowData });\r\n }\r\n\r\n showDeleteModal(theThis, info) {\r\n theThis.popupDelete = true;\r\n theThis.iId = info.numiId;\r\n }\r\n\r\n contentReady (e) {\r\n\r\n\r\n if (this.currentModuleId){\r\n\r\n if (e.component.option(\"filterValue\")){\r\n\r\n\r\n this.filterValueSaved = { moduleid: this.currentModuleId, filters: e.component.option(\"filterValue\")}\r\n localStorage.setItem('filterValueSaved' + this.currentModuleId, JSON.stringify(this.filterValueSaved));\r\n }\r\n else{\r\n if (this.pageOpen > 4){\r\n\r\n\r\n localStorage.removeItem('filterValueSaved' + this.currentModuleId);\r\n this.pageOpen = 4;\r\n }\r\n }\r\n }\r\n\r\n this.pageOpen = this.pageOpen + 1;\r\n\r\n }\r\n\r\n deleteObject() {\r\n this.datagridService.CallDeleteGrid(this.iId, this.currentModuleId).subscribe(result => {\r\n this.setInfo2();\r\n this.popupDelete = false;\r\n this.toast.success(this.translate.instant('msgObjDelSucc'));\r\n });\r\n }\r\n\r\n exportGrid() {\r\n const doc = new jsPDF();\r\n exportDataGridToPdf({\r\n jsPDFDocument: doc,\r\n component: this.dataGrid.instance\r\n }).then(() => {\r\n doc.save('report.pdf');\r\n })\r\n }\r\n\r\n setInfo2() {\r\n this.translate.setDefaultLang(this.activeLang);\r\n\r\n this.dateFormat = this.appConfigService.dateFormat;\r\n this.moneyFormat = this.appConfigService.moneyFormat;\r\n\r\n let configGrid: any;\r\n\r\n this.moduleId = sessionStorage.getItem('moduleId');\r\n\r\n let objData: any = {};\r\n\r\n const queryParamEntries = this.activatedRoute.snapshot.queryParamMap.keys.map(key => [key, this.activatedRoute.snapshot.queryParamMap.get(key)])\r\n\r\n if (this.filters) {\r\n\r\n objData = this.filters;\r\n if (!(this.filters.moduleid)) {\r\n\r\n objData.moduleid = parseInt(this.moduleId);\r\n }\r\n }\r\n else {\r\n\r\n objData.moduleid = parseInt(this.moduleId);\r\n }\r\n\r\n if (queryParamEntries.length > 0) {\r\n var arrObj = queryParamEntries.reduce(function (o, currentArray) {\r\n var key = currentArray[0], value = currentArray[1]\r\n o[key] = value\r\n return o\r\n }, {})\r\n objData = { ...objData, ...arrObj }\r\n }\r\n\r\n\r\n\r\n // if (objData.moduleid == -4) {\r\n // let json = '{\"moduleid\":-4,\"numiId\":\"6470\",\"numnumProjectID\":\"6470\",\"numProjectID\":\"6470\",\"strProjectNumber\":\"02052021-SIN PIPELINE\",\"strProjectNumberSolo\":\"02052021\",\"curDOLLARAMOUNT\":\"0\",\"datSTRBIDREQUESTDATE\":\"2021-02-05T00:00:00\",\"numBIDSTATUS\":\"1\",\"strCONTRACTORNAMEP\":\"DEmo Jeff\",\"strCONTACTNAME\":\"UNKNOWN \",\"strPROJECTSLSCATEGORY\":\"P&SC\",\"strBIDSTATUSDESCRIPTION\":\"PB\",\"ico_Sold\":\"fas fa-exclamation-circle whiteiconcolor/ \",\"numISOPORT\":\"1\",\"datBIDREQUESTDATE\":\"2021-02-05T00:00:00\",\"numPROJECTID1\":\"6470\",\"numPROFFITMARGIN\":\"0\",\"numDESIGNERID\":\"0\",\"numSALESEMPLOYEE\":\"0\",\"numCONTRACTORBUYER\":\"0\",\"numPROJECTVERTICALID\":\"1\",\"numCUSTOMERREQPRICEID\":\"0\",\"numNOTBIDREASON\":\"0\",\"strSALESCOMMENTS\":\"\",\"booPREVAILINGWAGES\":\"false\",\"numtotalCount\":\"5865\",\"datBIDDATE\":\"2021-02-05T00:00:00\",\"numSALESCATEGORYID\":\"1\",\"numAWARDEDTO\":\"0\",\"strDESIGNERNAME\":\"DEmo Jeff\",\"strBUYERNAME\":\"DEmo Jeff\",\"strCUSREQPRICENAME\":\"DEmo Jeff\",\"numIsPipeline\":\"1\",\"numPIPELINEID\":\"332\"}';\r\n // objData = JSON.parse(json);\r\n // }\r\n\r\n\r\n this.currentModuleId = objData.moduleid;\r\n // console.log(objData)\r\n if(objData != undefined){\r\n if(isNaN(objData.moduleid)){\r\n this.router.navigateByUrl('/login');\r\n } else {\r\n this.datagridService.CallGrid(objData).subscribe(result => {\r\n\r\n // This timeout in temp. Next routines generate error when http call is fast. The error was not fixed yet and this timeout is only\r\n // for testing\r\n\r\n setTimeout(() => {\r\n\r\n this.reportData = result.data;\r\n\r\n configGrid = JSON.parse(result.config);\r\n\r\n // It is an option to use shared datagrid in two modules User / Dashboard Component\r\n if (objData.hasOwnProperty(\"isBI\")) {\r\n if (objData.isBI == 1) {\r\n configGrid.Second_Level = \"adminComponent/editAdminComponentbi\";\r\n }\r\n }\r\n\r\n this.component.data = this.reportData;\r\n\r\n let columns = [];\r\n let names = configGrid.Fields.map(x => x.name);\r\n // let names = Object.keys(this.component.data[0]);\r\n\r\n let columnIndex = 0;\r\n let columnIndexGroup = undefined;\r\n\r\n let filterConfig = configGrid.Filters;\r\n\r\n let mythis = this;\r\n\r\n this.grouppanel = configGrid.ShowGroupPanel;\r\n this.exportexcel = configGrid.ShowExportExcel;\r\n\r\n this.filterpanel = configGrid.ShowFilterPanel;\r\n\r\n this.filterrow = configGrid.ShowFilterRow;\r\n this.headfilter = configGrid.ShowHeadFilter;\r\n\r\n this.messageEvent.emit(configGrid.ModuleName)\r\n\r\n names.forEach(element => {\r\n if (element == configGrid.Group_Name) {\r\n columnIndexGroup = columnIndex;\r\n }\r\n columnIndex = columnIndex + 1;\r\n\r\n let strFieldType = 'string';\r\n let format = '';\r\n\r\n if (element.substring(0, 3) == 'dat') {\r\n strFieldType = 'date';\r\n format = mythis.dateFormat;\r\n }\r\n else if (element.substring(0, 3) == 'boo') {\r\n strFieldType = 'boolean';\r\n }\r\n else if (element.substring(0, 3) == 'cur') {\r\n strFieldType = 'number';\r\n }\r\n else if (element.substring(0, 3) == 'num') {\r\n strFieldType = 'number';\r\n }\r\n else {\r\n strFieldType = 'string';\r\n }\r\n\r\n let columnWidth: string = '';\r\n\r\n\r\n configGrid.Fields.forEach(field => {\r\n if (field.name == element) {\r\n columnWidth = field.width;\r\n }\r\n })\r\n\r\n if (columnWidth != '') {\r\n\r\n let traduction: any = this.translateService.get(element);\r\n\r\n let objColumn: any = {\r\n dataField: element,\r\n width: columnWidth,\r\n caption: traduction.value.replace('ico_', ''),\r\n dataType: strFieldType,\r\n cellTemplate: function (element, info) {\r\n element.append(\"
\" + info.text + \"
\")\r\n\r\n let html = '';\r\n html = \"
\" + info.text + \"
\"\r\n\r\n // let initial = names[info.columnIndex].substr(0, 3);\r\n let initial = info.column.dataField.substr(0, 3);\r\n // let val = info.data[names[info.columnIndex]];\r\n let val = info.values[info.columnIndex];\r\n\r\n\r\n if (initial == 'hyp') {\r\n html = '';\r\n }\r\n\r\n else if (initial == 'ico') {\r\n if(val)\r\n html = '
' + val.split('/')[1] + '
';\r\n }\r\n\r\n else if (initial == 'str' || initial == 'boo') {\r\n val = val ? val : '';\r\n html = '
' + val + '
';\r\n }\r\n\r\n else if (initial == 'cur') {\r\n html = '
' + mythis.currencyPipe.transform(val, mythis.moneyFormat) + '
'\r\n }\r\n\r\n else if (initial == 'dat') {\r\n if (val) {\r\n html = '
' + mythis.datePipe.transform(val, mythis.dateFormat) + '
'\r\n }\r\n }\r\n\r\n else {\r\n html = '
' + val + '
';\r\n }\r\n\r\n element.innerHTML = html;\r\n\r\n }\r\n }\r\n\r\n if (format) {\r\n\r\n objColumn.format = format;\r\n }\r\n columns.push(objColumn);\r\n\r\n }\r\n\r\n });\r\n\r\n let handler = this.goLink;\r\n let handler2 = this.showDeleteModal;\r\n let therouter = this.router;\r\n let theactiverouter = this.activatedRoute;\r\n var theThis = this;\r\n\r\n // Add Edit Buttons if option is active\r\n if (configGrid.Edit == true) {\r\n let obj = {\r\n width: \"3%\",\r\n cellTemplate: function (el, info) {\r\n let element = document.createElement(\"a\");\r\n element.innerHTML = ' ';\r\n element.onclick = (e) => {\r\n // call handler\r\n handler(info.data, therouter, theactiverouter, configGrid.Second_Level);\r\n\r\n // or execute click action here\r\n };\r\n\r\n el.append(element);\r\n }\r\n }\r\n\r\n columns.push(obj);\r\n\r\n }\r\n\r\n // Add Delete Buttons if option is active\r\n if (configGrid.Delete == true) {\r\n let obj = {\r\n width: \"3%\",\r\n cellTemplate: function (el, info) {\r\n let element = document.createElement(\"a\");\r\n element.innerHTML = ' ';\r\n element.onclick = (e) => {\r\n // call handler\r\n theThis.showDeleteModal(theThis, info.data);\r\n\r\n // or execute click action here\r\n };\r\n\r\n el.append(element);\r\n }\r\n }\r\n\r\n columns.push(obj);\r\n\r\n }\r\n\r\n this.component.columns = columns;\r\n setTimeout(() => {\r\n\r\n this.dataGrid.instance.clearGrouping();\r\n this.dataGrid.instance.columnOption(columnIndexGroup, \"groupIndex\", '0');\r\n\r\n var myArrayFilter = [];\r\n if (filterConfig) {\r\n // console.log(filterConfig);\r\n myArrayFilter = filterConfig;\r\n }\r\n\r\n if (myArrayFilter.length > 0) {\r\n\r\n if (filterConfig[0].length > 1){\r\n\r\n this.filterValue = [];\r\n\r\n this.filterValue.push(filterConfig);\r\n\r\n }\r\n\r\n }\r\n\r\n\r\n\r\n this.filterValueSaved = JSON.parse(localStorage.getItem('filterValueSaved' + this.currentModuleId));\r\n\r\n if (this.currentModuleId){\r\n if (this.filterValueSaved){\r\n\r\n this.filterValue = [];\r\n this.filterValue.push(this.filterValueSaved.filters);\r\n }\r\n }\r\n\r\n\r\n\r\n }, 1000);\r\n\r\n\r\n\r\n if (this.reportData){\r\n this.onLoadData.emit(this.reportData);\r\n }\r\n\r\n }, 1000);\r\n\r\n });\r\n }\r\n }\r\n\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { SharedDatagridRoutingModule } from './shared-datagrid-routing.module';\r\nimport { Router } from '@angular/router';\r\nimport { SharedDatagridComponent } from './shared-datagrid.component';\r\n\r\nimport { DxButtonModule, DxDataGridModule, DxPopupModule, DxScrollViewModule, DxSortableModule, DxTemplateModule, DxDropDownButtonModule } from 'devextreme-angular';\r\nimport { MdbGlobalModule } from '../mdb-global.module';\r\nimport { FormsModule, ReactiveFormsModule, } from '@angular/forms';\r\n\r\nexport function createTranslateLoader(http: HttpClient) {\r\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [\r\n SharedDatagridComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n SharedDatagridRoutingModule,\r\n MdbGlobalModule,\r\n DxTemplateModule,\r\n DxButtonModule,\r\n DxScrollViewModule,\r\n DxPopupModule,\r\n DxDataGridModule,\r\n DxSortableModule,\r\n DxDropDownButtonModule\r\n ],\r\n exports: [SharedDatagridComponent],\r\n schemas: [NO_ERRORS_SCHEMA]\r\n})\r\nexport class SharedDatagridModule { \r\n \r\n constructor(private router: Router){ }\r\n\r\n ngOninit(){\r\n }\r\n\r\n reloadComponent() {\r\n let currentUrl = this.router.url;\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.router.onSameUrlNavigation = 'reload';\r\n this.router.navigate([currentUrl]);\r\n }\r\n\r\n ngAfterViewInit(){}\r\n \r\n}\r\n","export default \".IconColorRed {\\n color: #f7464a;\\n}\\n\\n.IconColorBlue {\\n color: #0ca8dd;\\n}\\n\\n.IconColorYellow {\\n color: yellow;\\n}\\n\\n.IconColorGreen {\\n color: #95c83d;\\n}\\n\\n.IconColorOrange {\\n color: #f9a21b;\\n}\\n\\n.IconColorPurple {\\n color: #b032e7;\\n}\\n\\n.dx-toolbar-button .dx-button-has-text:not(.dx-button-back) .dx-icon {\\n font-size: 0.9rem !important;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL3Rhc2stbGlzdC9FOlxcRGV2XFxDVUJFVEVNUFxcbmV3Y3ViZS9zcmNcXGFwcFxcc2hhcmVkXFx0YXNrLWxpc3RcXHRhc2stbGlzdC5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL3Rhc2stbGlzdC90YXNrLWxpc3QuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDSSxjQUFBO0FDQ0o7O0FERUE7RUFDSSxjQUFBO0FDQ0o7O0FERUE7RUFDSSxhQUFBO0FDQ0o7O0FERUE7RUFDSSxjQUFBO0FDQ0o7O0FERUE7RUFDSSxjQUFBO0FDQ0o7O0FERUE7RUFDSSxjQUFBO0FDQ0o7O0FERUE7RUFFSSw0QkFBQTtBQ0FKIiwiZmlsZSI6InNyYy9hcHAvc2hhcmVkL3Rhc2stbGlzdC90YXNrLWxpc3QuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuSWNvbkNvbG9yUmVke1xyXG4gICAgY29sb3I6ICNmNzQ2NGE7XHJcbn1cclxuXHJcbi5JY29uQ29sb3JCbHVle1xyXG4gICAgY29sb3I6ICMwY2E4ZGQ7XHJcbn1cclxuXHJcbi5JY29uQ29sb3JZZWxsb3d7XHJcbiAgICBjb2xvcjp5ZWxsb3c7XHJcbn1cclxuXHJcbi5JY29uQ29sb3JHcmVlbntcclxuICAgIGNvbG9yOiAjOTVjODNkO1xyXG59XHJcblxyXG4uSWNvbkNvbG9yT3Jhbmdle1xyXG4gICAgY29sb3I6ICNmOWEyMWI7XHJcbn1cclxuXHJcbi5JY29uQ29sb3JQdXJwbGV7XHJcbiAgICBjb2xvcjogI2IwMzJlNztcclxufVxyXG5cclxuLmR4LXRvb2xiYXItYnV0dG9uIC5keC1idXR0b24taGFzLXRleHQ6bm90KC5keC1idXR0b24tYmFjaykgLmR4LWljb24ge1xyXG5cclxuICAgIGZvbnQtc2l6ZTogMC45cmVtICFpbXBvcnRhbnQ7XHJcblxyXG59XHJcblxyXG5cclxuXHJcbi8vIHRyLmR4LXJvdy5keC1ncm91cC1yb3cgdGQ6bnRoLWNoaWxkKDQpe1xyXG4vLyAgICAgZGlzcGxheTogZmxleCA7XHJcbi8vIH0iLCIuSWNvbkNvbG9yUmVkIHtcbiAgY29sb3I6ICNmNzQ2NGE7XG59XG5cbi5JY29uQ29sb3JCbHVlIHtcbiAgY29sb3I6ICMwY2E4ZGQ7XG59XG5cbi5JY29uQ29sb3JZZWxsb3cge1xuICBjb2xvcjogeWVsbG93O1xufVxuXG4uSWNvbkNvbG9yR3JlZW4ge1xuICBjb2xvcjogIzk1YzgzZDtcbn1cblxuLkljb25Db2xvck9yYW5nZSB7XG4gIGNvbG9yOiAjZjlhMjFiO1xufVxuXG4uSWNvbkNvbG9yUHVycGxlIHtcbiAgY29sb3I6ICNiMDMyZTc7XG59XG5cbi5keC10b29sYmFyLWJ1dHRvbiAuZHgtYnV0dG9uLWhhcy10ZXh0Om5vdCguZHgtYnV0dG9uLWJhY2spIC5keC1pY29uIHtcbiAgZm9udC1zaXplOiAwLjlyZW0gIWltcG9ydGFudDtcbn0iXX0= */\"","import { from } from 'rxjs';\r\nimport * as XLSX from 'xlsx';\r\nimport { Router } from '@angular/router';\r\nimport { DatePipe } from '@angular/common';\r\nimport DataGrid from \"devextreme/ui/data_grid\";\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { DxDataGridComponent } from 'devextreme-angular';\r\nimport { DxTreeViewComponent } from 'devextreme-angular';\r\nimport { TaskService } from 'src/app/services/task.service';\r\nimport { groupBy, mergeMap, toArray } from 'rxjs/operators';\r\nimport * as AspNetData from \"devextreme-aspnet-data-nojquery\";\r\nimport { GeneralService } from 'src/app/services/general.service';\r\nimport { LoadingService } from 'src/app/services/loading.service';\r\nimport { ProjectService } from 'src/app/services/project.service';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { AppConfigService } from 'src/app/app-config.service.service';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { CreateUpdateTaskComponent } from '../create-update-task/create-update-task.component';\r\nimport { Component, OnInit, SimpleChanges, ViewContainerRef, ViewChild, TemplateRef, Input, Output, EventEmitter } from '@angular/core';\r\ndeclare var $: any;\r\n\r\ntype AOA = any[][];\r\n@Component({\r\n selector: 'app-task-list',\r\n templateUrl: './task-list.component.html',\r\n styleUrls: ['./task-list.component.scss']\r\n})\r\nexport class TaskListComponent implements OnInit {\r\n @ViewChild(DxTreeViewComponent, { static: false }) treeView;\r\n @ViewChild(\"gridfile\", { static: false }) gridfile: DxDataGridComponent;\r\n @ViewChild(\"gridFileSummary\", { static: false }) gridFileSummary: DxDataGridComponent;\r\n @ViewChild('GridTasks', { static: false }) TasksGrid: DxDataGridComponent;\r\n @ViewChild('SummaryTaskGrid', { static: false }) SummaryTaskGrid: DxDataGridComponent;\r\n @ViewChild('memorizeGrid', { static: false }) MemorizeTasksGrid: DxDataGridComponent;\r\n\r\n @Input() parentProjectId: number;\r\n @Input() offsetHeight: any = 0;\r\n @Input() expandpopup: boolean;\r\n @Output() onOpenFullScreen = new EventEmitter();;\r\n\r\n cancelButtonSummary: any;\r\n saveButtonSummary: any;\r\n\r\n customer: any;\r\n now = new Date();\r\n tooltip: any;\r\n popupTask = false;\r\n popupSummaryTask = false;\r\n popupDeleteSummaryTask = false;\r\n popupGridSummaryTask = false;\r\n popupImportMemorizedTask = false;\r\n serviceresourcesText = '';\r\n selectedRows = false;\r\n private _project: any;\r\n\r\n dateFormat = '';\r\n\r\n @Input('project')\r\n set project(project: any) {\r\n project.projectname = project.projectid + '-' + project.projectname;\r\n this._project = project;\r\n }\r\n\r\n get project(): any { return this._project; }\r\n\r\n filterPagedTask = {\r\n pageindex: 1,\r\n pagesize: 20,\r\n orderid: 1,\r\n summarytaskid: 0,\r\n projectnumber: '',\r\n taskname: '',\r\n responsiblesids: '',\r\n statusids: '',\r\n categoryids: '',\r\n duedate: '',\r\n taskid: 0,\r\n projectname: '',\r\n resourceids: '',\r\n priorityids: '',\r\n phaseids: '',\r\n projectid: 0\r\n };\r\n salesCategorySelect: any = [];\r\n categorySelect: any = [];\r\n statusSelect: any = [];\r\n prioritySelect: any = [];\r\n employeeSelect: any = [];\r\n phasesSelect: any = [];\r\n projectlist: any;\r\n updateProjectInfoName: any;\r\n projectslist: any;\r\n\r\n taskDataSource: any = [];\r\n\r\n taskresourcesText: string;\r\n taskresourcesValues = [];\r\n\r\n taskstatusValues = [];\r\n taskstatusText: string;\r\n\r\n //Task\r\n selectedTaskId: any;\r\n showpopupDeleteTask: boolean = false;\r\n showpopupDuplicateTask: boolean = false;\r\n filterValue: Array;\r\n\r\n categoriesValues = [];\r\n categoriesText: string;\r\n\r\n responsibleText: string;\r\n taskresponsiblesValues = [];\r\n\r\n resourcesValues = [];\r\n resourcesText: string;\r\n\r\n public _formEntity: FormGroup;\r\n _formSummary: FormGroup = new FormGroup({\r\n id: new FormControl({ value: 0, disabled: false }, []),\r\n sort: new FormControl({ value: 0, disabled: false }, []),\r\n name: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n projectid: new FormControl({ value: 0, disabled: false }, [Validators.required]),\r\n startdate: new FormControl({ value: null, disabled: false }, []),\r\n duedate: new FormControl({ value: null, disabled: false }, []),\r\n completionperc: new FormControl({ value: 0, disabled: false }, []),\r\n notes: new FormControl({ value: '', disabled: false }, []),\r\n });\r\n summaryTask = [];\r\n loading = false;\r\n summaryToDeleteId = null;\r\n\r\n dsPagedTask: any;\r\n percent = 0;\r\n _formNewTask: FormGroup;\r\n locationSelect: any;\r\n\r\n projectInfoModel = {\r\n projectid: 0,\r\n projectname: '',\r\n projectnumber: ''\r\n };\r\n\r\n items = [\r\n {\r\n id: 1,\r\n name: 'Summary Task',\r\n },\r\n {\r\n id: 2,\r\n name: 'Task',\r\n },\r\n {\r\n id: 4,\r\n name: 'Import Task from Excel',\r\n },\r\n {\r\n id: 5,\r\n name: 'Import Summary Task from Excel',\r\n },\r\n {\r\n id: 3,\r\n name: 'Import Task from Memorized Task',\r\n },\r\n {\r\n id: 6,\r\n name: 'Import Summary Task from Memorized Task',\r\n },\r\n ];\r\n\r\n taskFilters: any = {};\r\n rowSelected: any;\r\n\r\n //Multiple Edit Tasks\r\n rowSelectedTask: any;\r\n popupEditTask: any;\r\n\r\n employees: any;\r\n categories: any;\r\n resources: any;\r\n priorities: any;\r\n status: any;\r\n editTasks: FormGroup;\r\n\r\n cancelButtonTasK: any;\r\n saveButtonTasK: any;\r\n saveNewButtonTasK: any;\r\n saveEditButtonTasK: any;\r\n @ViewChild('newtask', { static: false }) newtask: CreateUpdateTaskComponent;\r\n settings: any = {};\r\n\r\n //Inputs date\r\n millisecondsInDay = 24 * 60 * 60 * 1000;\r\n today = new Date().getTime();\r\n startDate = { todayButton: {}, prevDateButton: {}, nextDateButton: {}, showDate: this.today };\r\n dueDate = { todayButton: {}, prevDateButton: {}, nextDateButton: {}, showDate: this.today };\r\n\r\n task: any = {\r\n taskid: '', name: '', projectid: '', employeeid: '', taskresources: '',\r\n statusid: '', todocategoryid: '', priorityid: '', area: '', phaseid: '', estimatedcost: '',\r\n startdate: '', estimatedtime: '', duedate: '', completionperc: '', completiondate: '',\r\n notes: '', sort: '', locationid: '', vendorid: '', SUMMARYTASKID: '',\r\n resources: '', createon: ''\r\n }\r\n\r\n //Memorize Task\r\n popupMemorizedTask: boolean = false;\r\n dataSummaryMemorizeTask: any = [];\r\n dataMemorizeTask: any = [];\r\n acordionClass = '';\r\n gridClass = '';\r\n popupNewSummaryMemorize: boolean = false;\r\n formSummaryMemorize: FormGroup;\r\n cancelButtonSummaryMemorize: any;\r\n saveButtonSummaryMemorize: any;\r\n\r\n popupNewTaskMemorize: boolean = false;\r\n formTaskMemorize: FormGroup;\r\n cancelButtonMemorizeTasK: any;\r\n saveButtonMemorizeTasK: any;\r\n\r\n cancelButtonImportMemorizeTasK: any;\r\n saveButtonImportMemorizeTasK: any;\r\n disableImport: boolean = true;\r\n rowSelectedMemorizeTasks: any = [];\r\n categoriesMemorize: any;\r\n\r\n showpopupDeleteMultipleTask: boolean = false;\r\n // expandpopup: boolean = false;\r\n\r\n popupFilter: boolean = false;\r\n cancelButtonFilter: any;\r\n saveButtonFilter: any;\r\n\r\n FiltrosTasks: FormGroup = new FormGroup({\r\n taskid: new FormControl('', []),\r\n statuses: new FormControl([1, 2], []),\r\n method: new FormControl('Get_Task_Paged', []),\r\n });\r\n\r\n statuses: any = [1, 2];\r\n\r\n //FullScreen Task Grid\r\n @ViewChild(\"originalContainer\", { read: ViewContainerRef, static: false }) originalContainer: ViewContainerRef;\r\n @ViewChild(\"contenedorPopup\", { read: ViewContainerRef, static: false }) contenedorPopup: ViewContainerRef;\r\n @ViewChild(\"templateTask\", { static: false }) tref: TemplateRef;\r\n\r\n showGallery: boolean = false;\r\n imagesGallery: any = [];\r\n\r\n imagenFullScreen: any;\r\n openModalFullScreen: boolean = false;\r\n\r\n methodGetDocument = { method: 'Get_ProjectTodo_DocumentsCE', name_id: 'projecttodoid' };\r\n selectedTaskGallery: any = {};\r\n\r\n //Import Task from Excel \r\n popupImportFromExcel: boolean = false;\r\n valueDocument: any[] = [];\r\n dataFormatted = { headers: [], data: [] };\r\n fileData: any[][] = [];\r\n\r\n //import Summary from Excel\r\n popupImportSummaryFromExcel: boolean = false;\r\n actualState: any = 0;\r\n gridId: any = \"TasksListStorage3\";\r\n\r\n constructor(\r\n private router: Router,\r\n private pipeDate: DatePipe,\r\n private toast: ToastService,\r\n private taskService: TaskService,\r\n private translate: TranslateService,\r\n public generalService: GeneralService,\r\n private ProjectService: ProjectService,\r\n private loadingService: LoadingService,\r\n private appConfigService: AppConfigService,\r\n public MapInformationService: MapInformationService,\r\n ) {\r\n\r\n this.calculateSelectedRow = this.calculateSelectedRow.bind(this)\r\n this.customizeText = this.customizeText.bind(this);\r\n this.customizeText2 = this.customizeText2.bind(this);\r\n\r\n // botones modal new summary\r\n this.cancelButtonSummary = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.initFormSummaryTask();\r\n this.popupSummaryTask = false;\r\n },\r\n };\r\n\r\n this.saveButtonSummary = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n this.saveUpdateSummary()\r\n },\r\n };\r\n\r\n this.dateFormat = appConfigService.dateFormat;\r\n // this.taskFilters.moduleid = -4;\r\n\r\n this.settings.dateFormat = this.appConfigService.dateFormat;\r\n\r\n DataGrid.defaultOptions({\r\n device: { deviceType: \"phone\" },\r\n options: {\r\n columnAutoWidth: true,\r\n columnHidingEnabled: true,\r\n wordWrapEnabled: false,\r\n rowAlternationEnabled: false\r\n }\r\n });\r\n\r\n DataGrid.defaultOptions({\r\n device: { deviceType: \"desktop\" },\r\n options: {\r\n columnAutoWidth: true,\r\n columnHidingEnabled: false\r\n }\r\n });\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.project != undefined) {\r\n if (changes.project.previousValue !== undefined) {\r\n this._project = changes.project.currentValue;\r\n this.parentProjectId = changes.project.currentValue.projectid;\r\n this.ngOnInit();\r\n }\r\n }\r\n }\r\n\r\n initView() {\r\n // setTimeout(() => {\r\n // let view = this.tref.createEmbeddedView(null);\r\n // this.originalContainer.insert(view);\r\n // this.expandpopup = false;\r\n // }, 600);\r\n }\r\n\r\n popupExpand(e) {\r\n this.expandpopup = e;\r\n this.onOpenFullScreen.emit(e)\r\n }\r\n\r\n ngOnInit() {\r\n this.filterPagedTask.projectid = this.parentProjectId;\r\n\r\n //Filtros\r\n let filterStorage = localStorage.getItem('filterStatus' + this.parentProjectId);\r\n if (filterStorage !== null) {\r\n this.statuses = filterStorage !== '' ? filterStorage.split(',') : [];\r\n }\r\n\r\n\r\n let filterTaskEditProject = localStorage.getItem('filterTaskEditProject' + this.parentProjectId);\r\n\r\n if (filterTaskEditProject !== null && filterTaskEditProject !== 'null') {\r\n this.filterValue = [];\r\n let filter = JSON.parse(filterTaskEditProject);\r\n filter.forEach((el, i) => {\r\n //Filtro de tabla cuando se escribe algo\r\n if ((el == 'StartDate' || el == 'DUEDATE') && filter[i + 1] !== 'anyof') {\r\n filter[i + 2] = new Date(filter[i + 2]);\r\n\r\n //Filtro de tabla cuando se elige algo desde los checkbox\r\n } else if ((el[0] == 'StartDate' || el == 'DUEDATE') && el[1] !== 'anyof') {\r\n filter[i][2] = new Date(filter[i][2]);\r\n }\r\n\r\n this.filterValue.push(el);\r\n });\r\n } else {\r\n this.filterValue = [\"STATUSNAME\", 'anyof', ['NS', 'IP']];\r\n }\r\n\r\n\r\n this.ProjectService.GetGridConfiguration(this.gridId).subscribe(result => {\r\n if (result && result.length != 0) {\r\n this.actualState = result[0];\r\n } else {\r\n this.actualState = 0;\r\n }\r\n this.actualState.FILTERCONFIG\r\n let finalFilter = this.actualState.FILTERCONFIG == \"\" || this.actualState.FILTERCONFIG == undefined ? null : JSON.parse(this.actualState.FILTERCONFIG)\r\n let finalColumn = this.actualState.COLUMNCONFIG == \"\" || this.actualState.COLUMNCONFIG == undefined ? null : JSON.parse(this.actualState.COLUMNCONFIG)\r\n\r\n if (finalFilter) { this.filterValue = finalFilter; }\r\n\r\n if (finalColumn) {\r\n localStorage.setItem('TasksGrid', this.actualState.COLUMNCONFIG);\r\n if (this.TasksGrid) { this.TasksGrid.instance.state({}); }\r\n }\r\n\r\n if (result && result.length != 0) {\r\n if (result[0].EXTRACONFIG) {\r\n if (JSON.parse(result[0].EXTRACONFIG).collased != undefined) {\r\n if (JSON.parse(result[0].EXTRACONFIG).collased == 1) {\r\n // this.closeParents()\r\n this.collased = true\r\n } else {\r\n // this.OpenParents()\r\n this.collased = false\r\n }\r\n }\r\n }\r\n }\r\n })\r\n\r\n this.cancelButtonTasK = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.newtask.rebootForm();\r\n this.popupTask = false;\r\n },\r\n };\r\n\r\n this.saveButtonTasK = {\r\n text: this.translate.instant('btnSave'),\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n this.newtask.updateTask(false);\r\n },\r\n };\r\n\r\n this.saveNewButtonTasK = {\r\n text: this.translate.instant('btnSaveNew'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newtask.updateTask(true)\r\n },\r\n };\r\n\r\n this.saveEditButtonTasK = {\r\n text: this.translate.instant('btnSaveEdit'),\r\n elementAttr: {\r\n id: 'bton-gray-outline'\r\n },\r\n onClick: () => {\r\n this.newtask.updateTask(false, true)\r\n },\r\n };\r\n\r\n this.cancelButtonImportMemorizeTasK = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.popupImportMemorizedTask = false;\r\n },\r\n };\r\n\r\n this.saveButtonImportMemorizeTasK = {\r\n text: 'Import',\r\n icon: 'check',\r\n elementAttr: {\r\n class: 'btn-green1 btn-icon-white',\r\n },\r\n onClick: () => {\r\n\r\n if(this.importMemorizeTosummary){\r\n const dataFinal = this.MemorizeTasksGrid.instance.getSelectedRowsData()\r\n console.log(dataFinal)\r\n \r\n if (dataFinal.length > 0) {\r\n let contador = 0\r\n dataFinal.forEach((element, i) => {\r\n \r\n const dataToSave = {\r\n \"method\": \"SaveTaskParentInfo\",\r\n \"projectid\": this.parentProjectId,\r\n \"taskname\": element.NAME,\r\n \"deleted\": 0,\r\n \"id\": 0,\r\n \"sort\": element.SEQUENCE3\r\n }\r\n \r\n this.taskService.GeneralService(dataToSave).subscribe(result => {\r\n contador++\r\n if (contador == dataFinal.length)\r\n this.toast.success(this.translate.instant('msgMemTaskImpSucc'));\r\n this.popupImportMemorizedTask = false;\r\n this.rowSelectedMemorizeTasks = [];\r\n this.MemorizeTasksGrid.instance.clearSelection();\r\n this.getTaksGrid();\r\n })\r\n });\r\n \r\n } else {\r\n this.toast.warning(\"You must select at least a registry\")\r\n }\r\n } else {\r\n this.importMemorize();\r\n }\r\n\r\n },\r\n };\r\n\r\n this.inputsDate(this.startDate);\r\n this.inputsDate(this.dueDate);\r\n\r\n // this.getTask();\r\n this.getTaksGrid();\r\n this.initView();\r\n }\r\n\r\n inputsDate(date) {\r\n date.todayButton = {\r\n text: this.translate.instant('btnToday'),\r\n onClick: () => {\r\n date.showDate = new Date().getTime();\r\n }\r\n };\r\n\r\n date.prevDateButton = {\r\n icon: \"spinprev\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n date.showDate -= this.millisecondsInDay;\r\n }\r\n };\r\n\r\n date.nextDateButton = {\r\n icon: \"spinnext\",\r\n stylingMode: \"text\",\r\n onClick: () => {\r\n date.showDate += this.millisecondsInDay;\r\n }\r\n };\r\n }\r\n\r\n getTaksGrid() {\r\n console.log(\"AQUI??? \");\r\n let status = '';\r\n this.statuses !== null && this.statuses !== undefined ? status = this.statuses.toString() : '';\r\n\r\n this.taskService.GetTasksByProjectId(this.parentProjectId, status).subscribe(result => {\r\n let infoFinal = result.map(x => {\r\n x.taskorigin = `${x.SUMMARYTASKNAME}`\r\n x.SUMMARYTASKNAME = x.SUMMARYTASKNAME ? \"[\" + x.summ_order + '] ' + x.SUMMARYTASKID + '-' + x.SUMMARYTASKNAME : '';\r\n\r\n let durat = ['', ''];\r\n if (x.duration) {\r\n let stringDuration = x.duration.toString();\r\n stringDuration.length > 5 ? x.duration = stringDuration.substr(0, 3) + ':' + stringDuration.substr(4, 2) : '';\r\n durat = x.duration ? stringDuration.split('.') : ['', ''];\r\n }\r\n if (durat[1] !== undefined && durat[1] !== null) {\r\n durat[0] = durat[0].substr(0, 3);\r\n durat[1] = durat[1].substr(0, 2);\r\n durat[1].length == 1 ? durat[1] = durat[1] + '0' : '';\r\n x.duration = durat[0] + ':' + durat[1];\r\n } else {\r\n x.duration.toString().length == 2 || x.duration.toString().length == 3 ? x.duration = x.duration + ':00' : '';\r\n x.duration.toString().length == 1 ? x.duration = '0' + x.duration + ':00' : '';\r\n }\r\n\r\n x.duration == ':' ? x.duration = '00:00' : '';\r\n x.COMPLETIONPERC = x.COMPLETIONPERC * 100\r\n x.COMPLETIONPERC = parseInt(x.COMPLETIONPERC)\r\n\r\n // Actual Hours\r\n x.ActualHours == undefined ? x.ActualHours = '00:00' : x.ActualHour;\r\n x.ActualHours == \"0:0\" ? x.ActualHours = '00:00' : x.ActualHour;\r\n\r\n // x.SUMMARYTASKNAME = `${x.SUMMARYTASKNAME} (${count.length}) - `\r\n\r\n return x;\r\n });\r\n infoFinal.map(x => {\r\n let count = result.filter((y) => y.SUMMARYTASKNAME === x.SUMMARYTASKNAME)\r\n // console.log(\"🚀 ~ file: task-list.component.ts:551 ~ infoFinal ~ count:\", count)\r\n x.TOTALSUMMARY = count.length;\r\n return x;\r\n })\r\n this.taskDataSource = infoFinal\r\n console.log(\"🚀 ~ file: task-list.component.ts:551 ~ this.taskService.GetTasksByProjectId ~ this.taskDataSource:\", this.taskDataSource)\r\n\r\n\r\n\r\n // setTimeout(() => {\r\n // this.TasksGrid.instance.\r\n // }, 1000);\r\n })\r\n }\r\n\r\n editTask(data) {\r\n let currentUrl = this.router.url.split('?')[0].split('/')[1];\r\n localStorage.setItem('filterTaskEditProject' + this.parentProjectId, JSON.stringify(this.filterValue));\r\n this.router.navigate(['taskManagement/editTask'], { queryParams: { numTODOID: data, projectId: this.parentProjectId, tab: 'Task', back: currentUrl } });\r\n }\r\n\r\n popupShowGallery(data) {\r\n this.selectedTaskGallery.id = data.ID;\r\n this.selectedTaskGallery.projectid = this._project.projectid;\r\n this.showGallery = true;\r\n }\r\n\r\n FirtsTime: boolean = true;\r\n\r\n GetFilters(data) {\r\n if (data.component.option(\"filterValue\")) {\r\n localStorage.setItem('filterTaskEditProject' + this.parentProjectId, JSON.stringify(data.component.option(\"filterValue\")));\r\n } else {\r\n localStorage.setItem('filterTaskEditProject' + this.parentProjectId, JSON.stringify(data.component.option(\"filterValue\")));\r\n this.filterValue = []\r\n }\r\n\r\n if (this.FirtsTime) {\r\n if (this.collased) {\r\n this.closeParents()\r\n } else {\r\n this.OpenParents()\r\n }\r\n this.FirtsTime = false\r\n }\r\n }\r\n\r\n onToolbarPreparing(e) {\r\n e.toolbarOptions.items.unshift({\r\n location: 'before',\r\n template: 'buttonsTask'\r\n });\r\n e.toolbarOptions.items.unshift({\r\n location: 'after',\r\n template: 'buttonsRight'\r\n });\r\n }\r\n\r\n // range slider\r\n format(value) {\r\n return value + \"%\";\r\n }\r\n\r\n onTooltipShown(val) {\r\n }\r\n\r\n initFormSummaryTask() {\r\n this._formSummary = new FormGroup({\r\n id: new FormControl({ value: 0, disabled: false }, []),\r\n sort: new FormControl({ value: 0, disabled: false }, []),\r\n name: new FormControl({ value: '', disabled: false }, [Validators.required]),\r\n projectid: new FormControl({ value: this.parentProjectId, disabled: false }, [Validators.required]),\r\n startdate: new FormControl({ value: null, disabled: false }, []),\r\n duedate: new FormControl({ value: null, disabled: false }, []),\r\n completionperc: new FormControl({ value: 0, disabled: false }, []),\r\n notes: new FormControl({ value: '', disabled: false }, []),\r\n })\r\n }\r\n\r\n setFormSummaryTask(item) {\r\n this._formSummary = new FormGroup({\r\n id: new FormControl({ value: item.ID, disabled: false }, []),\r\n sort: new FormControl({ value: item.SEQUENCE3, disabled: false }, []),\r\n name: new FormControl({ value: item.NAME, disabled: false }, [Validators.required]),\r\n projectid: new FormControl({ value: this.parentProjectId, disabled: false }, [Validators.required]),\r\n startdate: new FormControl({ value: item.STARTDATE, disabled: false }, []),\r\n duedate: new FormControl({ value: item.DUEDATE, disabled: false }, []),\r\n completionperc: new FormControl({ value: item.COMPLETIONPERC, disabled: false }, []),\r\n notes: new FormControl({ value: item.NOTES, disabled: false }, []),\r\n });\r\n\r\n this.popupSummaryTask = true;\r\n }\r\n\r\n limpiarmodalTask() {\r\n $('#btnlimpiarmodaltask').click();\r\n }\r\n\r\n saveUpdateSummary() {\r\n let value = this._formSummary.value;\r\n\r\n if (!value.name) {\r\n this.toast.warning(this.translate.instant('msgSummName'));\r\n return;\r\n }\r\n\r\n value.projectid = this.parentProjectId;\r\n value.startdate = value.startdate ? this.pipeDate.transform(value.startdate, 'yyyyMMdd HH:mm:ss') : this.pipeDate.transform(new Date(), 'yyyyMMdd HH:mm:ss');\r\n value.duedate = value.duedate ? this.pipeDate.transform(value.duedate, 'yyyyMMdd HH:mm:ss') : this.pipeDate.transform(new Date(), 'yyyyMMdd HH:mm:ss');\r\n value.completionperc = value.completionperc / 100;\r\n\r\n this.taskService.GeneralService({\r\n id: value.id,\r\n taskname: value.name,\r\n startdate: value.startdate,\r\n duedat: value.duedate,\r\n percentcomp: value.completionperc,\r\n sort: value.sort,\r\n nots: value.notes,\r\n projectid: this.project.projectid,\r\n // userid:value.id\r\n deleted: 0,\r\n method: \"SaveTaskParentInfo\"\r\n }).subscribe(result => {\r\n // this.taskService.UpdateSummaryTask(value).subscribe(result => {\r\n // if (result[0].ResultID > 0) {\r\n\r\n this.toast.success(this.translate.instant('msgTaskSuccUpd'));\r\n this.popupSummaryTask = false;\r\n this.getSummaryTask(true);\r\n // this.getTask();\r\n // }\r\n });\r\n }\r\n\r\n onSubmitTask(visibleModal) {\r\n this.popupTask = visibleModal;\r\n // this.setGrid2();\r\n this.getTaksGrid()\r\n }\r\n\r\n getTask() {\r\n $(\"#btntask\").click();\r\n }\r\n\r\n deleteSummary() {\r\n this.taskService.DeleteSummaryTask(this.summaryToDeleteId).subscribe(result => {\r\n if (result.length > 0) {\r\n this.toast.success(this.translate.instant('msgSumTaskInfDelSucc'));\r\n this.getSummaryTask(true);\r\n // this.getTask();\r\n this.popupDeleteSummaryTask = false;\r\n }\r\n })\r\n }\r\n\r\n importMemorizeTosummary: boolean = false\r\n onItemClick(ev) {\r\n if (ev.itemData.id == 1) {\r\n this.popupSummaryTask = true;\r\n } else if (ev.itemData.id == 2) {\r\n this.popupTask = true;\r\n } else if (ev.itemData.id == 3) {\r\n this.popupImportMemorizedTask = true;\r\n this.importMemorizeTosummary = false\r\n this.getMemorizeTasks();\r\n } else if (ev.itemData.id == 4) {\r\n this.popupImportFromExcel = true;\r\n } else if (ev.itemData.id == 5) {\r\n this.popupImportSummaryFromExcel = true;\r\n } else if (ev.itemData.id == 6) {\r\n this.popupImportMemorizedTask = true;\r\n this.importMemorizeTosummary = true\r\n this.getMemorizeTasks2();\r\n }\r\n }\r\n\r\n openNewTask() {\r\n this.popupTask = true;\r\n }\r\n\r\n test(test) {\r\n }\r\n\r\n getSummaryTask(reload?) {\r\n // if(this.summaryTask.length==0 || reload){\r\n this.taskService.GetSummaryTask(this.parentProjectId).subscribe(result => {\r\n this.summaryTask = result;\r\n });\r\n // }\r\n }\r\n\r\n updateProjectInfo(item) {\r\n if (item.selectedItem.ID) {\r\n this._formNewTask.get('projectid').setValue(item.selectedItem.ID);\r\n // this.state = item.selectedItem.First + ' ' + item.selectedItem.Last;\r\n }\r\n }\r\n //SP_API_Flex_Get_EstimatesSystemProgramDetailAll\r\n //SP_API_Flex_Get_AreaSystemAll\r\n //SP_API_Flex_Get_Task_AllByProjectId\r\n\r\n openSWOEdit(swoid) {\r\n this.router.navigateByUrl('/editSWO');\r\n }\r\n\r\n clearFilter() {\r\n\r\n this.filterPagedTask = {\r\n pageindex: 1,\r\n pagesize: 20,\r\n orderid: 1,\r\n summarytaskid: 0,\r\n projectnumber: '',\r\n taskname: '',\r\n responsiblesids: '',\r\n statusids: '',\r\n categoryids: '',\r\n duedate: '',\r\n taskid: 0,\r\n projectname: '',\r\n resourceids: '',\r\n priorityids: '',\r\n phaseids: '',\r\n projectid: this.parentProjectId\r\n };\r\n\r\n this.taskresourcesText = '';\r\n\r\n this.resourcesText = '';\r\n\r\n this.taskstatusText = '';\r\n\r\n this.categoriesText = '';\r\n\r\n this.get(true);\r\n }\r\n\r\n syncTreeViewSelection(e) {\r\n var component = (e && e.component) || (this.treeView && this.treeView.instance);\r\n\r\n if (!component) return;\r\n\r\n if (component._userOptions.noDataText == 'No resources to display') {\r\n if (!this.resourcesText) {\r\n component.unselectAll();\r\n }\r\n }\r\n\r\n if (component._userOptions.noDataText == 'No categories to display') {\r\n if (!this.categoriesText) {\r\n component.unselectAll();\r\n }\r\n }\r\n\r\n if (component._userOptions.noDataText == 'No responsible to display') {\r\n if (!this.responsibleText) {\r\n component.unselectAll();\r\n // this.taskresponsiblesValues = '';\r\n }\r\n }\r\n\r\n if (component._userOptions.noDataText == 'No status to display') {\r\n if (!this.taskstatusText) {\r\n component.unselectAll();\r\n }\r\n }\r\n }\r\n\r\n treeView_itemSelectionChanged(e) {\r\n var nodes = e.component.getNodes();\r\n var nodesSelectedValue = '';\r\n var nodesSelectedText = '';\r\n nodes.forEach(function eachNode(node) {\r\n if (node.selected == true) {\r\n nodesSelectedText = nodesSelectedText + node.text + ',';\r\n nodesSelectedValue = nodesSelectedValue + node.key + ',';\r\n }\r\n })\r\n\r\n if (e.component._userOptions.noDataText == 'No resources to display') {\r\n this.resourcesText = nodesSelectedText;\r\n }\r\n if (e.component._userOptions.noDataText == 'No categories to display ') {\r\n this.categoriesText = nodesSelectedText;\r\n }\r\n if (e.component._userOptions.noDataText == 'No status to display') {\r\n this.taskstatusText = nodesSelectedText;\r\n }\r\n\r\n if (e.component._userOptions.noDataText == 'No responsible to display') {\r\n this.responsibleText = nodesSelectedText;\r\n // this.taskresponsiblesValues = nodesSelectedValue;\r\n this._formEntity.get('resources').setValue(nodesSelectedValue);\r\n }\r\n\r\n }\r\n\r\n setGrid2() {\r\n let mythis = this;\r\n this.dsPagedTask = AspNetData.createStore({\r\n key: \"ID\",\r\n loadUrl: this.taskService.GetPagedTasksUrl(),\r\n onBeforeSend: function (e, ajaxOptions) {\r\n ajaxOptions.method = 'POST';\r\n mythis.filterPagedTask.pageindex = (ajaxOptions.data.skip / 20) == 0 ? 1 : ajaxOptions.data.skip / 20;\r\n if (!Number.isInteger(mythis.filterPagedTask.pageindex)) {\r\n mythis.filterPagedTask.pageindex = 1;\r\n }\r\n ajaxOptions.data = JSON.stringify(mythis.filterPagedTask);\r\n ajaxOptions.contentType = 'application/json';\r\n ajaxOptions.headers = {\r\n 'Authorization': `Bearer ${localStorage.getItem('token')}`\r\n }\r\n },\r\n onUpdated: function (key, values) {\r\n console.clear();\r\n },\r\n onLoading: function (loadoptions) {\r\n\r\n },\r\n onLoaded: function (data) {\r\n const grouped = mythis.agruparItems(data);\r\n\r\n return grouped;\r\n // data = grouped;\r\n // mythis.dsPagedTask = grouped;\r\n }\r\n });\r\n this.loading = false;\r\n }\r\n\r\n agruparItems(array = []) {\r\n let groupItems = [];\r\n const source = from(array);\r\n // group by code\r\n const example = source.pipe(\r\n groupBy((item: any) => item.SUMMARYTASKNAME),\r\n // return each item in group as array\r\n mergeMap(group => group.pipe(toArray()))\r\n );\r\n\r\n let contador = 0;\r\n const subscribe = example.subscribe(val => {\r\n let obj = {\r\n key: val[0].SUMMARYTASKNAME,\r\n items: val\r\n }\r\n groupItems[contador] = obj;\r\n contador++;\r\n });\r\n\r\n return groupItems;\r\n // this.subTotal = this.bagService.calcularTotal();\r\n }\r\n\r\n get(isFilter = false) {\r\n\r\n if (this.loading == true) { return 0; }\r\n\r\n if (isFilter == true) {\r\n this.filterPagedTask.pageindex = 1;\r\n\r\n this.filterPagedTask.responsiblesids = this.taskresponsiblesValues.join(',');\r\n this.filterPagedTask.statusids = this.taskstatusValues.join(',');\r\n this.filterPagedTask.categoryids = this.categoriesValues.join(',');\r\n this.filterPagedTask.resourceids = this.taskresourcesValues.join(',');\r\n this.filterPagedTask.priorityids = '';\r\n\r\n }\r\n\r\n\r\n this.loading = true;\r\n localStorage.setItem('filterPagedTask', JSON.stringify(this.filterPagedTask));\r\n\r\n console.clear();\r\n // this.setGrid2();\r\n // this.getTask();\r\n\r\n }\r\n\r\n openTaskEdit(taskid) {\r\n this.router.navigateByUrl(`/taskManagement/editTask/${taskid}/${this.parentProjectId > 0}`);\r\n }\r\n\r\n openProjectEdit(projectid, projectnumber) {\r\n this.router.navigateByUrl(`/editSales/${projectnumber}/${projectid}`);\r\n }\r\n\r\n // Modal Grid Summary Task\r\n\r\n mdSummaryTask() {\r\n this.initFormSummaryTask();\r\n this.getSummaryTask(true);\r\n this.popupGridSummaryTask = true;\r\n }\r\n\r\n //Modal Edit Multiple Tasks\r\n\r\n mdEditTasks() {\r\n if (this.categorySelect.length == 0) {\r\n this.taskService.GetTaskCategories().subscribe(result => {\r\n this.categorySelect = result;\r\n });\r\n }\r\n if (this.statusSelect.length == 0) {\r\n this.taskService.GetTaskStatus().subscribe(result => {\r\n this.statusSelect = result;\r\n });\r\n }\r\n if (this.prioritySelect.length == 0) {\r\n this.taskService.GetTaskPriorities().subscribe(result => {\r\n this.prioritySelect = result;\r\n });\r\n }\r\n if (this.employeeSelect == 0) {\r\n this.taskService.GetTaskEmployees().subscribe(result => {\r\n this.employeeSelect = result;\r\n });\r\n }\r\n\r\n this.getSummaryTask();\r\n\r\n this.popupEditTask = true;\r\n this.rowSelectedTask = [];\r\n this.rowSelectedTask = this.TasksGrid.instance.getSelectedRowsData();\r\n this.setEditForm();\r\n }\r\n\r\n setEditForm() {\r\n this.editTasks = new FormGroup({\r\n responsibleid: new FormControl('', []),\r\n resourceArray: new FormControl('', []),\r\n categoryid: new FormControl('', []),\r\n priorityid: new FormControl('', []),\r\n statusid: new FormControl('', []),\r\n completionperc: new FormControl(0, []),\r\n sort: new FormControl('', []),\r\n area: new FormControl('', []),\r\n summarytaskid: new FormControl('', []),\r\n })\r\n }\r\n\r\n selectionChanged(data) {\r\n this.rowSelectedTask = this.TasksGrid.instance.getSelectedRowsData();\r\n // this.selectedRows = true;\r\n if (this.rowSelectedTask.length >= 1) {\r\n this.selectedRows = true;\r\n } else { this.selectedRows = false; }\r\n }\r\n\r\n updateTasks() {\r\n let form = this.editTasks.value;\r\n\r\n this.rowSelectedTask.forEach(async (task, i) => {\r\n form.responsibleid == \"\" ? this.task.employeeid = task.EMPLOYEEID : this.task.employeeid = form.responsibleid;\r\n if (form.resourceArray == \"\") {\r\n this.task.taskresources = task.resourcesIDs\r\n } else {\r\n console.log(task.resourcesIDs);\r\n\r\n if (task.resourcesIDs == null) {\r\n this.task.taskresources = form.resourceArray.join(',');\r\n } else {\r\n let arr = task.resourcesIDs.split(',');\r\n arr.push(form.resourceArray);\r\n this.task.taskresources = arr.join(',');\r\n }\r\n }\r\n task.COMPLETIONPERC = form.completionperc !== 0 ? form.completionperc / 100 : task.COMPLETIONPERC / 100;\r\n\r\n form.statusid == \"\" ? this.task.statusid = task.STATUSID : this.task.statusid = form.statusid;\r\n if (form.statusid == 3) { this.task.completionperc = 1; } else { this.task.completionperc = task.COMPLETIONPERC; }\r\n form.categoryid == \"\" ? this.task.todocategoryid = task.TODOCATEGORYID : this.task.todocategoryid = form.categoryid;\r\n form.priorityid == \"\" ? this.task.priorityid = task.PRIORITYID : this.task.priorityid = form.priorityid;\r\n form.summarytaskid !== \"\" ? this.task.summarytaskid = form.summarytaskid : this.task.summarytaskid = task.summarytaskid;\r\n this.task.sort = form.sort !== \"\" ? form.sort : task.order;\r\n\r\n this.task.area = form.area !== \"\" ? form.area : task.area;\r\n task.LOCATIONID == null ? this.task.locationid = 0 : this.task.locationid = task.LOCATIONID;\r\n task.PHASEID == null ? this.task.phaseid = 0 : this.task.phaseid = task.PHASEID;\r\n task.VENDORID == null ? this.task.vendorid = 0 : this.task.vendorid = task.VENDORID;\r\n this.task.estimatedcost = task.estimatecost;\r\n // this.task.sort = task.order;\r\n this.task.name = task.TASKNAME;\r\n this.task.notes = task.notes;\r\n this.task.completiondate = task.COMPDATE ? this.pipeDate.transform(task.COMPDATE, 'yyyyMMdd hh:mm:ss') : '';\r\n this.task.duedate = task.DUEDATE ? this.pipeDate.transform(task.DUEDATE, 'yyyyMMdd hh:mm:ss') : '';\r\n this.task.estimatedtime = task.ESTIMATEDTIME;\r\n this.task.resources = this.task.taskresources;\r\n this.task.vendorid = task.VENDORID;\r\n this.task.taskid = task.ID;\r\n this.task.projectid = task.PROJECTID;\r\n this.task.startdate = task.StartDate ? this.pipeDate.transform(task.StartDate, 'yyyyMMdd hh:mm:ss') : '';\r\n this.task.method = 'Insert_Task_ce';\r\n this.taskService.updateTask2(this.task).subscribe(result => {\r\n if (this.rowSelectedTask.length == i + 1) {\r\n this.toast.success(this.translate.instant('msgTasUpdSucc'));\r\n this.popupEditTask = false;\r\n this.getTaksGrid();\r\n }\r\n })\r\n });\r\n\r\n }\r\n\r\n deleteTask(id) {\r\n this.taskService.DeleteTask(id).subscribe(result => {\r\n this.getTaksGrid();\r\n this.toast.success(this.translate.instant('msgTaskInfoDelSucc'));\r\n this.showpopupDeleteTask = false;\r\n })\r\n }\r\n\r\n popupDeleteTask(data) {\r\n this.selectedTaskId = data.ID;\r\n this.showpopupDeleteTask = true;\r\n }\r\n\r\n duplicateTask(id) {\r\n this.taskService.DuplicateTaskGrid(id).subscribe(result => {\r\n this.toast.success(this.translate.instant('msgInfoDupSucc'));\r\n this.getTaksGrid();\r\n // this.showpopupDuplicateTask = false;\r\n })\r\n }\r\n\r\n popupDuplicateTask(data) {\r\n this.selectedTaskId = data.ID;\r\n this.showpopupDuplicateTask = true;\r\n }\r\n\r\n //Import Memorize Task\r\n getMemorizeTasks() {\r\n this.taskService.Get_ProjectTodoMemorized(this.project).subscribe(result => {\r\n this.dataSummaryMemorizeTask = result;\r\n })\r\n\r\n // this.taskService.Get_ProjectTodoSummaryMemorized(this.project).subscribe(result=>{\r\n // this.dataSummaryMemorizeTask = result;\r\n // })\r\n }\r\n\r\n getMemorizeTasks2() {\r\n // this.taskService.Get_ProjectTodoMemorized(this.project).subscribe(result=>{\r\n // this.dataMemorizeTask = result;\r\n // })\r\n\r\n this.taskService.Get_ProjectTodoSummaryMemorized(this.project).subscribe(result => {\r\n this.dataSummaryMemorizeTask = result;\r\n })\r\n }\r\n\r\n formatDuration(DURATION) {\r\n let durat = DURATION ? DURATION.toString().split('.') : ['', ''];\r\n durat[0] = durat[0] ? durat[0].substr(0, 2).padStart(2, '0') : '00';\r\n durat[1] = durat[1] ? durat[1].substr(0, 2).padEnd(2, '0') : '00';\r\n\r\n return durat[0] + ':' + durat[1];\r\n }\r\n\r\n ImportSelectionChanged(data) {\r\n this.rowSelectedMemorizeTasks = this.MemorizeTasksGrid.instance.getSelectedRowsData();\r\n\r\n if (this.rowSelectedMemorizeTasks.length >= 1) {\r\n this.disableImport = false;\r\n } else { this.disableImport = true; }\r\n }\r\n\r\n prepareRowPart(info) {\r\n if (info.rowType === \"data\") {\r\n if (info.data.MILESTONEID2 == 1) {\r\n info.rowElement.style.backgroundColor = \"#e6c7a7\";\r\n }\r\n }\r\n }\r\n\r\n importMemorize() {\r\n let array = []\r\n\r\n this.rowSelectedMemorizeTasks.forEach((element, i) => {\r\n array.push(element.ID);\r\n if (this.rowSelectedMemorizeTasks.length == i + 1) {\r\n let ids;\r\n if (array) { ids = array.join(','); }\r\n let obj\r\n if (this.importMemorizeTosummary) {\r\n obj = { method: 'SaveTaskParentInfo', projectid: this.project.projectid, taskname: element.NAME, deleted: 0, id: 0, sort: element.SEQUENCE3 };\r\n } else {\r\n obj = { method: 'Insert_ProjectMemorizedTaskCEByMemorizedIdsCE', projectid: this.project.projectid, memorizedtaskids: ids };\r\n }\r\n\r\n this.taskService.GeneralService(obj).subscribe(result => {\r\n\r\n this.toast.success(this.translate.instant('msgMemTaskImpSucc'));\r\n this.popupImportMemorizedTask = false;\r\n this.rowSelectedMemorizeTasks = [];\r\n this.MemorizeTasksGrid.instance.clearSelection();\r\n this.getTaksGrid();\r\n })\r\n }\r\n });\r\n }\r\n\r\n mdGanttView() {\r\n // this.router.navigateByUrl(`/ganttScheduler/${this.parentProjectId}`);\r\n this.router.navigate(['/ganttScheduler'], { queryParams: { projectid: this.parentProjectId } });\r\n }\r\n task2: any = {\r\n taskid: '', name: '', projectid: '', employeeid: '', taskresources: '',\r\n statusid: '', todocategoryid: '', priorityid: '', area: '', phaseid: '', estimatedcost: '',\r\n startdate: '', estimatedtime: '', duedate: '', completionperc: '', completiondate: '',\r\n notes: '', sort: '', locationid: '', vendorid: '', SUMMARYTASKID: '',\r\n resources: '', createon: '', method: 'Insert_Task_ce'\r\n }\r\n\r\n updatePercent(e) {\r\n let task = e.oldData;\r\n this.task2.employeeid = e.oldData.EMPLOYEEID;\r\n this.task2.taskresources = task.resourcesIDs;\r\n this.task2.statusid = task.STATUSID;\r\n\r\n if (e.newData.COMPLETIONPERC != undefined) {\r\n this.task2.completionperc = Number(e.newData.COMPLETIONPERC) / 100;\r\n } else {\r\n this.task2.completionperc = Number(e.oldData.COMPLETIONPERC) / 100;\r\n }\r\n\r\n // *************\r\n this.task2.todocategoryid = task.TODOCATEGORYID;\r\n this.task2.priorityid = task.PRIORITYID;\r\n this.task2.area = task.area;\r\n this.task2.locationid = task.LOCATIONID;\r\n this.task2.phaseid = task.PHASEID;\r\n this.task2.vendorid = task.VENDORID;\r\n this.task2.estimatedcost = task.estimatecost;\r\n this.task2.summarytaskid = task.summarytaskid;\r\n\r\n if (e.newData.order != undefined) {\r\n this.task2.sort = e.newData.order;\r\n } else {\r\n this.task2.sort = e.oldData.order;\r\n }\r\n\r\n this.task2.name = task.TASKNAME;\r\n this.task2.notes = task.notes;\r\n this.task2.completiondate = task.COMPDATE;\r\n // this.task2.duedate = task.DUEDATE;\r\n this.task2.duedate = task.DUEDATE ? this.pipeDate.transform(task.DUEDATE, 'yyyyMMdd hh:mm:ss') : '';\r\n this.task2.startdate = task.StartDate ? this.pipeDate.transform(task.StartDate, 'yyyyMMdd hh:mm:ss') : '';\r\n this.task2.estimatedtime = task.ESTIMATEDTIME;\r\n this.task2.resources = this.task2.taskresources;\r\n this.task2.vendorid = task.VENDORID;\r\n this.task2.taskid = task.ID;\r\n this.task2.projectid = task.PROJECTID;\r\n this.task2.method = 'Insert_Task_ce';\r\n // this.task2.taskid = e.oldData.ID\r\n this.taskService.updateTask2(this.task2).subscribe(result => {\r\n this.toast.success(this.translate.instant('msgTasUpdSucc'));\r\n this.getTaksGrid();\r\n })\r\n }\r\n\r\n deleteMultipleTask() {\r\n this.rowSelectedTask.forEach((task, i) => {\r\n this.taskService.DeleteTask(task.ID).subscribe(result => {\r\n if (this.rowSelectedTask.length == i + 1) {\r\n this.toast.success(this.translate.instant('msgTaskInfoDelSucc'));\r\n this.showpopupDeleteMultipleTask = false;\r\n this.popupEditTask = false;\r\n this.getTaksGrid();\r\n this.rowSelectedTask = [];\r\n }\r\n })\r\n })\r\n }\r\n\r\n test2(notes) {\r\n }\r\n\r\n expandFilter() {\r\n if (this.statusSelect.length == 0) {\r\n this.taskService.GetTaskStatus().subscribe(result => {\r\n this.statusSelect = result;\r\n this.popupFilter = true;\r\n // this.statuses = [1,2];\r\n });\r\n } else {\r\n this.popupFilter = true;\r\n }\r\n\r\n this.cancelButtonFilter = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: 'bton-gray'\r\n },\r\n onClick: () => {\r\n this.popupFilter = false;\r\n },\r\n };\r\n\r\n this.saveButtonFilter = {\r\n text: 'Filter',\r\n icon: 'check',\r\n elementAttr: {\r\n id: 'bton-green'\r\n },\r\n onClick: () => {\r\n localStorage.setItem('filterStatus' + this.parentProjectId, this.statuses);\r\n this.getTaksGrid();\r\n this.popupFilter = false;\r\n },\r\n };\r\n }\r\n\r\n onOptionChanged(e) {\r\n\r\n if (e.name == \"filterValue\" && e.value && e.value.length == 0) {\r\n this.statuses = [];\r\n localStorage.setItem('filterStatus' + this.parentProjectId, this.statuses);\r\n this.getTaksGrid();\r\n }\r\n }\r\n\r\n CloseopenPopupImport() {\r\n this.popupImportFromExcel = false;\r\n this.popupImportSummaryFromExcel = false;\r\n this.onFileRemove();\r\n }\r\n\r\n onFileAdd(obj: File) {\r\n if (obj[0] != undefined) {\r\n this.loadingService.isLoading.next(true);\r\n /* wire up file reader */\r\n const reader: FileReader = new FileReader();\r\n reader.onload = (e: any) => {\r\n /* read workbook */\r\n const bstr: string = e.target.result;\r\n const wb: XLSX.WorkBook = XLSX.read(bstr, { type: 'binary', cellDates: true });\r\n\r\n\r\n\r\n\r\n\r\n\r\n /* grab first sheet */\r\n const wsname: string = wb.SheetNames[0];\r\n const ws: XLSX.WorkSheet = wb.Sheets[wsname];\r\n\r\n\r\n\r\n /* save data */\r\n let data = (XLSX.utils.sheet_to_json(ws, { header: 1 }));\r\n data = data.filter(x => x.length > 0);\r\n this.fileData = data;\r\n this.dataFormatted.headers = data[0];\r\n\r\n let dataFormateada = this.arrayToJSONObject(data);\r\n let infoFinal = []\r\n if (dataFormateada.length != 0) {\r\n dataFormateada.forEach(element => {\r\n infoFinal.push(element)\r\n })\r\n\r\n this.dataFormatted.data = infoFinal;\r\n }\r\n // this.validateFile();\r\n };\r\n reader.readAsBinaryString(obj[0]);\r\n this.loadingService.isLoading.next(false);\r\n }\r\n }\r\n\r\n onFileRemove() {\r\n this.dataFormatted = {\r\n headers: [],\r\n data: []\r\n }\r\n this.valueDocument = []\r\n }\r\n\r\n uploadFile() {\r\n let data = this.gridfile.instance.getVisibleRows().map(x => x.data);\r\n\r\n let contador = 0;\r\n\r\n this.taskService.GetTaskEmployees().subscribe(responsibles => {\r\n this.taskService.GetSummaryTask(this.parentProjectId).subscribe(summaryTaks => {\r\n this.taskService.GetTaskCategoriesFlex().subscribe(categories => {\r\n\r\n for (const element of data) {\r\n\r\n const Category_id = categories.find(({ ID }) => ID == element.Category_id);\r\n\r\n const Summary_id = summaryTaks.find(({ ID }) => ID == element.Summary_id);\r\n\r\n const Reponsible_id = responsibles.find(({ ID }) => ID == element.Reponsible_id);\r\n\r\n if (Category_id == undefined && element.Category_id != 0) {\r\n this.toast.warning(\"The Category ID does not exist\");\r\n return false;\r\n }\r\n\r\n if (Summary_id == undefined && element.Summary_id != 0) {\r\n this.toast.warning(\"The Summary ID does not exist\");\r\n return false;\r\n }\r\n\r\n if (Reponsible_id == undefined && element.Reponsible_id != 0) {\r\n this.toast.warning(\"The Responsible ID does not exist\");\r\n return false;\r\n }\r\n\r\n\r\n if (element.Name === undefined || element.Name === \"\" || element.Name == null) {\r\n this.toast.warning(\"The Name cannot be empty (you can put New Task instead)\");\r\n return false;\r\n }\r\n\r\n if (element.Priority !== undefined && !Number.isInteger(element.Summary_id || element.Category_id || element.Reponsible_id)) {\r\n this.toast.warning(\"Please verify that Summary, Responsible or Category is a valid ID\");\r\n return false;\r\n }\r\n\r\n if (!Number.isInteger(element.Sort)) {\r\n this.toast.warning(\"The Sort must be an integer)\");\r\n return false;\r\n }\r\n }\r\n\r\n for (const element of data) {\r\n let priority = element.Priority.toLowerCase();\r\n\r\n if (priority == 'high' || priority == 'High') {\r\n priority = 1;\r\n } else if (priority == 'low' || priority == 'Low') {\r\n priority = 3;\r\n } else if (priority == 'normal' || priority == 'Normal') {\r\n priority = 2;\r\n } else {\r\n this.toast.warning('Please verify that the priority is one of these \"High, Low, Normal\"');\r\n return false;\r\n }\r\n\r\n let newInfo = {\r\n notes: element.Notes,\r\n categoryid: element.Category_id,\r\n priorityid: priority,\r\n summarytaskid: element.Summary_id,\r\n duedate: element.Due_Date,\r\n startdate: element.Start_Date,\r\n reponsibleid: element.Reponsible_id,\r\n sort: element.Sort,\r\n area: element.Area,\r\n name: element.Name,\r\n duration: element.Duration,\r\n projectid: Number(this.parentProjectId),\r\n taskid: 0,\r\n method: \"Import_Task\"\r\n };\r\n\r\n\r\n this.MapInformationService.SaveInfoSites(newInfo)\r\n .subscribe(resp => {\r\n contador++\r\n if (contador == data.length) {\r\n this.toast.success(\"Information successfully uploaded\");\r\n // this.onFileRemove();\r\n this.CloseopenPopupImport();\r\n this.getTaksGrid();\r\n }\r\n }, error => {\r\n this.toast.warning(\"An error has occurred check the header and structure of the excel\")\r\n })\r\n }\r\n });\r\n })\r\n })\r\n\r\n }\r\n\r\n uploadFileSummary() {\r\n let data = this.gridFileSummary.instance.getVisibleRows().map(x => x.data);\r\n\r\n let contador = 0;\r\n\r\n data.forEach(element => {\r\n if (element.Name === undefined || element.Name === \"\" || element.Name == null) {\r\n this.toast.warning(\"The Name cannot be empty (you can put New Summary instead)\");\r\n }\r\n\r\n let newInfo = {\r\n notes: element.Notes,\r\n duedate: element.Due_Dates,\r\n startdate: element.Start_Date,\r\n sort: element.Sort,\r\n name: element.Name,\r\n projectid: Number(this.parentProjectId),\r\n id: 0,\r\n method: \"Import_SummaryTask\"\r\n };\r\n\r\n\r\n this.MapInformationService.SaveInfoSites(newInfo)\r\n .subscribe(resp => {\r\n contador++\r\n if (contador == data.length) {\r\n this.toast.success(\"Information successfully uploaded\");\r\n this.CloseopenPopupImport();\r\n this.getTaksGrid();\r\n }\r\n }, error => {\r\n this.toast.warning(\"An error has occurred check the header and structure of the excel\")\r\n })\r\n })\r\n }\r\n\r\n arrayToJSONObject(arr) {\r\n // header\r\n const keys = arr[0];\r\n\r\n // vacate keys from main array\r\n const newArr = arr.slice(1, arr.length);\r\n\r\n const formatted = [];\r\n const data = newArr;\r\n const cols = keys;\r\n const l = cols.length;\r\n for (let i = 0; i < data.length; i++) {\r\n const d = data[i];\r\n const o = {};\r\n for (let j = 0; j < l; j++) {\r\n o[cols[j]] = d[j];\r\n }\r\n formatted.push(o);\r\n }\r\n return formatted;\r\n }\r\n\r\n collased: boolean = false\r\n\r\n closeParents() {\r\n this.TasksGrid.instance.collapseAll()\r\n this.collased = true\r\n }\r\n\r\n calculateSelectedRow(options) {\r\n console.log(\"🚀 ~ file: task-list.component.ts:1498 ~ calculateSelectedRow ~ options:\", options)\r\n let found = this.taskDataSource.find((x) => x.SUMMARYTASKNAME === options.value);\r\n console.log(\"🚀 ~ file: task-list.component.ts:1500 ~ calculateSelectedRow ~ found:\", found)\r\n if (found != undefined) {\r\n return \" \" + found.TOTALSUMMARY;\r\n }\r\n }\r\n\r\n OpenParents() {\r\n this.TasksGrid.instance.expandAll()\r\n this.collased = false\r\n }\r\n\r\n customizeColumns(columns) {\r\n let result = localStorage.getItem('TasksGrid');\r\n\r\n if (result) {\r\n let data = JSON.parse(result);\r\n\r\n let finalColumns = columns.map((col, i) => {\r\n // data[i].name ? col.caption = data[i].name : '';\r\n data[i].dataField ? col.dataField = data[i].dataField : '';\r\n data[i].dataType ? col.dataType = data[i].dataType : '';\r\n col.visible = data[i].visible;\r\n col.visibleIndex = data[i].visibleIndex;\r\n data[i].width ? col.width = data[i].width : '';\r\n return col;\r\n });\r\n return finalColumns\r\n }\r\n }\r\n\r\n saveState1 = (state) => {\r\n\r\n\r\n let extraconfig = {\r\n collased: this.collased == true ? 1 : 0\r\n }\r\n\r\n if (this.actualState == 0) {\r\n this.ProjectService.InsertUpdateGridConfiguration(0, this.gridId, state.filterValue, JSON.stringify(state.columns), JSON.stringify(extraconfig)).subscribe(result => {\r\n return state;\r\n })\r\n } else if (this.actualState.ID) {\r\n this.ProjectService.InsertUpdateGridConfiguration(this.actualState.ID, this.gridId, state.filterValue, JSON.stringify(state.columns), JSON.stringify(extraconfig)).subscribe(result => {\r\n return state;\r\n })\r\n }\r\n }\r\n\r\n customizeText(data, reload) {\r\n if (data.value != undefined) {\r\n\r\n let item = data.value.toFixed(2)\r\n let visibleData = this.TasksGrid.instance.getVisibleRows().map(x => x.data);\r\n if (item.includes('.')) {\r\n // if (localStorage.getItem(\"SumaHora\") != undefined){\r\n if (visibleData) {\r\n // let infoGrid = JSON.parse(localStorage.getItem(\"SumaHora\"));\r\n let infoGrid = visibleData;\r\n let hour\r\n let minute\r\n let second\r\n let a = [0, 0]\r\n if (infoGrid.length > 0) {\r\n infoGrid.forEach(element => {\r\n if (element.duration != undefined) {\r\n let hora = element.duration.toString().split(':')[0]\r\n let minuto = element.duration.toString().split(':')[1]\r\n\r\n if (minuto != undefined) {\r\n if (minuto.length == 1) {\r\n minuto = minuto + \"0\"\r\n }\r\n } else {\r\n minuto = \"00\"\r\n }\r\n a[0] += parseInt(hora)\r\n a[1] += parseInt(minuto)\r\n }\r\n });\r\n }\r\n\r\n let seconds = (+a[0]) * 60 * 60 + (+a[1]) * 60;\r\n\r\n hour = Math.floor(seconds / 3600);\r\n hour = (hour < 10) ? '0' + hour : hour;\r\n minute = Math.floor((seconds / 60) % 60);\r\n minute = (minute < 10) ? '0' + minute : minute;\r\n second = seconds % 60;\r\n second = (second < 10) ? '0' + second : second;\r\n\r\n // localStorage.removeItem(\"SumaHora\")\r\n return hour + ':' + minute\r\n // }\r\n }\r\n }\r\n }\r\n }\r\n\r\n customizeText2(data, reload) {\r\n if (data.value != undefined) {\r\n\r\n let item = data.value.toFixed(2)\r\n let visibleData = this.TasksGrid.instance.getVisibleRows().map(x => x.data);\r\n if (item.includes('.')) {\r\n // if (localStorage.getItem(\"SumaHora\") != undefined){\r\n if (visibleData) {\r\n // let infoGrid = JSON.parse(localStorage.getItem(\"SumaHora\"));\r\n let infoGrid = visibleData;\r\n let hour\r\n let minute\r\n let second\r\n let a = [0, 0]\r\n if (infoGrid.length > 0) {\r\n infoGrid.forEach(element => {\r\n if (element.ActualHours != undefined) {\r\n let hora = element.ActualHours.toString().split(':')[0]\r\n let minuto = element.ActualHours.toString().split(':')[1]\r\n\r\n if (minuto != undefined) {\r\n if (minuto.length == 1) {\r\n minuto = minuto + \"0\"\r\n }\r\n } else {\r\n minuto = \"00\"\r\n }\r\n a[0] += parseInt(hora)\r\n a[1] += parseInt(minuto)\r\n }\r\n });\r\n }\r\n\r\n let seconds = (+a[0]) * 60 * 60 + (+a[1]) * 60;\r\n\r\n hour = Math.floor(seconds / 3600);\r\n hour = (hour < 10) ? '0' + hour : hour;\r\n minute = Math.floor((seconds / 60) % 60);\r\n minute = (minute < 10) ? '0' + minute : minute;\r\n second = seconds % 60;\r\n second = (second < 10) ? '0' + second : second;\r\n\r\n // localStorage.removeItem(\"SumaHora\")\r\n return hour + ':' + minute\r\n // }\r\n }\r\n }\r\n }\r\n }\r\n\r\n}\r\n","import { DxTooltipModule, DxToolbarModule, DxAccordionModule, DxNumberBoxModule, DxGanttModule, DxAutocompleteModule, DxButtonModule, DxCheckBoxModule, DxDataGridModule, DxDateBoxModule, DxDropDownBoxModule, DxDropDownButtonModule, DxPopupModule, DxRangeSliderModule, DxScrollViewModule, DxSelectBoxModule, DxSliderModule, DxTagBoxModule, DxTemplateModule, DxTextAreaModule, DxTextBoxModule, DxTreeListModule, DxTreeViewModule, DxFileUploaderModule } from 'devextreme-angular';\r\nimport { ProjectAttachedDocumentModule } from 'src/app/shared/project-attached-document/project-attached-document.module';\r\nimport { CreateUpdateTaskModule } from '../create-update-task/create-update-task.module';\r\nimport { SharedDatagridModule } from '../shared-datagrid/shared-datagrid.module';\r\nimport { MemorizedTaskModule } from '../memorized-task/memorized-task.module';\r\nimport { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';\r\nimport { TaskListComponent } from './task-list.component';\r\nimport { MdbGlobalModule } from '../mdb-global.module';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n TaskListComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n // TaskListRoutingModule,\r\n MdbGlobalModule,\r\n DxAccordionModule,\r\n DxButtonModule,\r\n DxTextBoxModule,\r\n DxDropDownBoxModule,\r\n DxTreeViewModule,\r\n DxDateBoxModule,\r\n DxAutocompleteModule,\r\n DxCheckBoxModule,\r\n DxDataGridModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxSelectBoxModule,\r\n DxRangeSliderModule,\r\n DxTemplateModule,\r\n DxTagBoxModule,\r\n DxNumberBoxModule,\r\n DxSliderModule,\r\n DxDropDownButtonModule,\r\n CreateUpdateTaskModule,\r\n DxTextAreaModule,\r\n MemorizedTaskModule,\r\n SharedDatagridModule,\r\n DxGanttModule,\r\n DxToolbarModule,\r\n ProjectAttachedDocumentModule,\r\n DxTooltipModule,\r\n DxFileUploaderModule,\r\n ],\r\n exports: [\r\n TaskListComponent,\r\n MdbGlobalModule,\r\n DxAccordionModule,\r\n DxButtonModule,\r\n DxTextBoxModule,\r\n DxDropDownBoxModule,\r\n DxTreeViewModule,\r\n DxDateBoxModule,\r\n DxAutocompleteModule,\r\n DxCheckBoxModule,\r\n DxDataGridModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxSelectBoxModule,\r\n DxRangeSliderModule,\r\n DxTemplateModule\r\n ],\r\n schemas: [NO_ERRORS_SCHEMA]\r\n\r\n})\r\nexport class TaskListModule { }\r\n","export default \".dx-treeview-item-without-checkbox.dx-state-focused > .dx-treeview-item {\\n background-color: #337ab7 !important;\\n color: #fff !important;\\n}\\n\\n::ng-deep.currently-active-item {\\n background-color: #0000001f;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvc2hhcmVkL3RyZWV2aWV3LWFyZWEtc3lzdGVtL0U6XFxEZXZcXENVQkVURU1QXFxuZXdjdWJlL3NyY1xcYXBwXFxzaGFyZWRcXHRyZWV2aWV3LWFyZWEtc3lzdGVtXFx0cmVldmlldy1hcmVhLXN5c3RlbS5jb21wb25lbnQuc2NzcyIsInNyYy9hcHAvc2hhcmVkL3RyZWV2aWV3LWFyZWEtc3lzdGVtL3RyZWV2aWV3LWFyZWEtc3lzdGVtLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usb0NBQUE7RUFDQSxzQkFBQTtBQ0NGOztBREdBO0VBQ0UsMkJBQUE7QUNBRiIsImZpbGUiOiJzcmMvYXBwL3NoYXJlZC90cmVldmlldy1hcmVhLXN5c3RlbS90cmVldmlldy1hcmVhLXN5c3RlbS5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5keC10cmVldmlldy1pdGVtLXdpdGhvdXQtY2hlY2tib3guZHgtc3RhdGUtZm9jdXNlZCA+IC5keC10cmVldmlldy1pdGVtIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM3YWI3ICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbjo6bmctZGVlcC5jdXJyZW50bHktYWN0aXZlLWl0ZW0ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDAxZjtcclxufVxyXG5cclxuXHJcbiIsIi5keC10cmVldmlldy1pdGVtLXdpdGhvdXQtY2hlY2tib3guZHgtc3RhdGUtZm9jdXNlZCA+IC5keC10cmVldmlldy1pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzN2FiNyAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG46Om5nLWRlZXAuY3VycmVudGx5LWFjdGl2ZS1pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDFmO1xufSJdfQ== */\"","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { MapInformationService } from 'src/app/services/map-information.service';\r\nimport { DeltaworldService } from 'src/app/services/deltaworld.service';\r\nimport { EstimateService } from 'src/app/services/estimate.service';\r\nimport { groupBy, mergeMap, toArray } from 'rxjs/operators';\r\nimport { UserService } from 'src/app/services/user.service';\r\nimport { DxDataGridComponent, DxTreeViewComponent } from 'devextreme-angular';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { ToastService } from 'ng-uikit-pro-standard';\r\nimport { Router } from '@angular/router';\r\nimport { from } from 'rxjs';\r\nimport * as XLSX from 'xlsx';\r\nimport \"jspdf-autotable\";\r\n\r\ntype AOA = any[][];\r\n\r\n\r\ndeclare var $: any;\r\n@Component({\r\n selector: 'app-treeview-area-system',\r\n templateUrl: './treeview-area-system.component.html',\r\n styleUrls: ['./treeview-area-system.component.scss']\r\n})\r\nexport class TreeviewAreaSystemComponent implements OnInit {\r\n @ViewChild('treeViewSystemArea', { static: false }) treeViewSystemArea: DxTreeViewComponent; \r\n @ViewChild('treeDelete', { static: false }) treeDelete: DxTreeViewComponent; \r\n @ViewChild(DxTreeViewComponent, { static: false }) treeView;\r\n @ViewChild(DxTreeViewComponent, { static: false }) treeView2;\r\n @ViewChild(\"gridLabor\", { static: false }) gridLabor: DxDataGridComponent;\r\n @ViewChild(\"gridTemplate\", { static: false }) gridTemplate: DxDataGridComponent;\r\n @ViewChild(\"gridfile\", { static: false })\r\n gridfile: DxDataGridComponent;\r\n\r\n\r\n @Input() showsearch = false;\r\n @Input() showcheckbox = true;\r\n @Input() showoption = false;\r\n @Input() checkboxmode = 'none';\r\n @Input() heightParent = '100%';\r\n @Input() heightChild = '90%';\r\n @Input() expanded = true;\r\n @Input() systemidParent;\r\n @Input() Commissioning;\r\n @Input() FindAndReplace;\r\n @Input() changeOfColor; \r\n @Input() graphicsCube; \r\n\r\n\r\n private _areas: any[]=[];\r\n\r\n showDiagram:boolean = false\r\n\r\n openAI:boolean = false\r\n systemid: any;\r\n totalReplicate = 1;\r\n systemSelect: any;\r\n cancelButtonEditDiferenceLabor: { text: any; icon: string; elementAttr: { id: string; }; onClick: () => void; };\r\n areaslenght:any = 1\r\n @Input('areas')\r\n set areas(areas: any) {\r\n \r\n // this.agrupar();\r\n if(areas.length != undefined){\r\n if (areas.length > 0){\r\n // if (this._areas.length != areas.length){\r\n // this._areas = areas;\r\n this.userService.Get_UserSettingsCE(localStorage.getItem(\"customerid\")).subscribe(result => {\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n if (obj.openTreeEstimate == true) {\r\n this.OpenOrClose = true\r\n this.treeViewSystemArea.instance.expandAll()\r\n this.estiloCarpetas()\r\n } else {\r\n this.OpenOrClose = false\r\n this.treeViewSystemArea.instance.collapseAll()\r\n this.estiloCarpetas()\r\n }\r\n \r\n // localStorage.setItem('settings', result[0].CLIENTUSERSETTING);\r\n })\r\n this.agrupar2(areas);\r\n // }\r\n\r\n } else {\r\n this.groupItems = []\r\n }\r\n }\r\n\r\n }\r\n\r\n get areas(): any { return this._areas; }\r\n\r\n downloads = [\"Download Trial For Visual Studio\", \"Download Trial For All Platforms\", \"Package Managers\"];\r\n\r\n groupItems:any;\r\n\r\n @Output() onitemchange = new EventEmitter();\r\n @Output() reload = new EventEmitter();\r\n @Output() deletedSystemOrArea = new EventEmitter();\r\n @Output() NewSystem = new EventEmitter();\r\n @Output() gochangesystem = new EventEmitter();\r\n @Output() changeview = new EventEmitter();\r\n @Output() changeviewImages = new EventEmitter();\r\n @Output() reloadData = new EventEmitter();\r\n @Output() HideSystemsData = new EventEmitter();\r\n\r\n\r\n @Input() estimateid: number = 0;\r\n @Input() estimatenamestr = '';\r\n @Input() projectid = '';\r\n\r\n areaSelect = [];\r\n systemTypeSelectCE = [];\r\n itemsNewAreaSystem = [\r\n {\r\n id: 1,\r\n name: \"Add Areas\",\r\n icon: \"fas fa-plus icon-green\",\r\n },\r\n {\r\n id: 2,\r\n name: \"Add Systems\",\r\n icon: \"fas fa-plus icon-green\",\r\n },\r\n // {\r\n // id: 3,\r\n // name: \"Add Systems\",\r\n // icon: \"fas fa-plus\",\r\n // },\r\n {\r\n id: 3,\r\n name: \"Import from Library\",\r\n icon: \"fas fa-file-import\",\r\n },\r\n {\r\n id: 4,\r\n name: \"Purchased in cube resources\",\r\n icon: \"fas fa-shopping-cart\",\r\n },\r\n ];\r\n\r\n itemsDuplicateAreaSystem = [\r\n {\r\n id: 1,\r\n name: \"Duplicate Area\",\r\n },\r\n {\r\n id: 2,\r\n name: \"Duplicate System\",\r\n },\r\n {\r\n id: 3,\r\n name: \"Replicate System\",\r\n },\r\n ];\r\n\r\n popupReplicateSystem = false;\r\n saveButtonReplicateSystem: any;\r\n cancelButtonReplicateSystem: any;\r\n\r\n popupEditArea = false;\r\n saveButtonEditArea: any;\r\n cancelButtonEditArea: any;\r\n rowsToEditArea = [];\r\n\r\n popupEditSystem = false;\r\n saveButtonEditSystem: any;\r\n cancelButtonEditSystem: any;\r\n\r\n popupDeleteSystem = false;\r\n popupDeleteArea = false;\r\n cancelButtonDeleteEstimate: any;\r\n saveButtonDeleteEstimate: any;\r\n\r\n modelArea = {\r\n name: '',\r\n id: 0,\r\n active: true,\r\n sort: 0\r\n }\r\n\r\n modelNewSystem = {\r\n id: 0,\r\n systemid: \"\",\r\n sort: \"\",\r\n areaname: \"\",\r\n systemname: \"\",\r\n qty: 1,\r\n systemtype: \"\",\r\n inactive: false,\r\n deleted: false,\r\n scopeofwork: \"\",\r\n sop: \"\",\r\n excludefromsearch: \"\",\r\n controldwgname: \"\",\r\n controldwgimg: \"\",\r\n tagtext: \"\",\r\n tagnum: \"\",\r\n description: \"\",\r\n };\r\n\r\n popupEditAreaSystem = false;\r\n rowsToEditAreaSystem = [];\r\n saveButtonEditAreaSystem: any;\r\n cancelButtonEditAreaSystem: any;\r\n OpenOrClose:boolean = true\r\n\r\n profileSettings:any[];\r\n manageSettings:any[];\r\n\r\n isDuplicating:boolean = false\r\n itemsSelected:any[]=[]\r\n popupController:boolean = false\r\n imgSelected:any = \"Not_Image\"\r\n treeBoxValue: string[];\r\n // select\r\n taggingDatasource:any[]=[]\r\n treeBoxValue2: string[];\r\n componentModel = {\r\n ID:[],\r\n data:[]\r\n };\r\n\r\n showModalDiferencia:boolean = false\r\n\r\n itemsNewAreaSystemEdit = [\r\n {\r\n id: 1,\r\n name: \"Area\",\r\n },\r\n {\r\n id: 2,\r\n name: \"System\",\r\n },\r\n ];\r\n\r\n popupImportFromExcel:boolean=false\r\n\r\n constructor(\r\n private MapInformationService: MapInformationService,\r\n private estimateService: EstimateService,\r\n private deltaService: DeltaworldService,\r\n private translate:TranslateService,\r\n private userService: UserService,\r\n private toast: ToastService,\r\n private router: Router,\r\n ) {\r\n\r\n\r\n this.profileSettings = [\r\n { value: 1, name: 'Add Area', icon: 'fas fa-plus icon-green' },\r\n {\r\n value: 4, name: 'Add System', icon: 'fas fa-plus icon-green'\r\n },\r\n { value: 2, name: 'Import from Library', icon: 'fas fa-file-import' },\r\n { value: 10, name: 'Import IO from Excel', icon: 'fas fa-file-excel' },\r\n { value: 3, name: 'Delete Area', icon: 'fas fa-trash-alt' },\r\n { value: 5, name: 'Delete System', icon: 'fas fa-trash-alt' },\r\n { value: 6, name: 'Clone Area', icon: 'fas fa-clone' },\r\n { value: 7, name: 'Clone System', icon: 'fas fa-clone' },\r\n { value: 7, name: 'Replicate System', icon: 'fas fa-clone' },\r\n { value: 8, name: 'Edit Area', icon: 'fas fa-edit' },\r\n { value: 9, name: 'Edit System', icon: 'fas fa-edit' },\r\n // { value: 10, name: 'Move to another Area', icon: 'fas fa-exchange-alt' },\r\n ];\r\n\r\n this.manageSettings = [\r\n // { value: 1, name: 'Network view', icon: 'fas fa-network-wired' },\r\n // {\r\n // value: 4, name: 'Galery View', icon: 'fas fa-eye'\r\n // },\r\n { value: 2, name: 'Find and Replace', icon: 'assets/find.png' },\r\n { value: 3, name: 'Change system to area', icon: 'fas fa-exchange-alt' },\r\n ];\r\n\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.cancelButtonEditDiferenceLabor = {\r\n text: this.translate.instant('btnClose'),\r\n icon:\"close\",\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.closeLabor()\r\n // this.close();\r\n },\r\n };\r\n\r\n // this.agrupar();\r\n\r\n\r\n // this.getEstimateArea(this.estimateid);\r\n\r\n // this.deltaService.GetEstimateSystemTypeCE().subscribe((result) => {\r\n // this.systemTypeSelectCE = result;\r\n // });\r\n\r\n this.cancelButtonEditAreaSystem = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupEditAreaSystem = false;\r\n // this.close();\r\n },\r\n };\r\n\r\n this.saveButtonEditAreaSystem = {\r\n text: this.translate.instant('btnSave'),\r\n icon: \"check\",\r\n elementAttr: {\r\n id: \"bton-green\",\r\n },\r\n onClick: () => {\r\n this.updateAreaSystem();\r\n // this.type = 1;\r\n // this.addNewComment();\r\n // this.updateNetworkConfiguration();\r\n },\r\n };\r\n\r\n\r\n this.cancelButtonDeleteEstimate = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupDeleteSystem = false;\r\n this.popupDeleteArea = false;\r\n this.componentModel.ID = []\r\n // this.close();\r\n },\r\n };\r\n\r\n this.saveButtonDeleteEstimate = {\r\n text: this.translate.instant('btnSave'),\r\n icon: \"check\",\r\n elementAttr: {\r\n id: \"bton-green\",\r\n },\r\n onClick: () => {\r\n if (this.popupDeleteSystem) {\r\n let data = this.getChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n // let reload = false\r\n // data.forEach(x=>{\r\n // if (x.network == 1) {\r\n // reload = true\r\n // }\r\n // })\r\n // if (reload){\r\n // this.toast.warning(\"The systme selected has child in network, you can´t delete it\")\r\n // this.reload.emit(this.estimateid);\r\n // this.popupDeleteSystem = false;\r\n // this.getEstimateArea(this.estimateid);\r\n // return\r\n // } else {\r\n this.componentModel.ID.forEach(element => {\r\n this.estimateService.DeleteSystem(element).subscribe(result => {\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgDelSys'));\r\n this.reload.emit(this.estimateid);\r\n this.popupDeleteSystem = false;\r\n this.getEstimateArea(this.estimateid);\r\n }\r\n })\r\n });\r\n // }\r\n\r\n }\r\n\r\n if (this.popupDeleteArea) {\r\n let data = this.getAreasChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgAnArea'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n data.forEach(element => {\r\n\r\n this.estimateService.DeleteArea(element.originalid).subscribe(result => {\r\n cantidadEnviada++;\r\n\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgAreDelSucc'));\r\n this.reload.emit(this.estimateid);\r\n // this.getEstimateArea(this.estimateid);\r\n this.popupDeleteArea = false;\r\n this.getEstimateArea(this.estimateid);\r\n }\r\n });\r\n\r\n });\r\n }\r\n },\r\n };\r\n\r\n this.cancelButtonReplicateSystem = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupReplicateSystem = false;\r\n // this.close();\r\n },\r\n };\r\n\r\n this.saveButtonReplicateSystem = {\r\n text: this.translate.instant('btnSave'),\r\n icon: \"check\",\r\n elementAttr: {\r\n id: \"bton-green\",\r\n },\r\n onClick: () => {\r\n\r\n let data = this.getChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n return;\r\n }\r\n\r\n\r\n if (this.totalReplicate <= 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgRepNum'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n data.forEach(element => {\r\n\r\n\r\n this.estimateService.ReplicateeEstimateSystems(element.id, this.totalReplicate).subscribe(result => {\r\n // this.estimateService.duplicateImage(element.id,result[0].ID)\r\n // .subscribe(res1=>{\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgRepSucc'));\r\n this.reload.emit(this.estimateid);\r\n this.totalReplicate = 0;\r\n this.popupReplicateSystem = false;\r\n }\r\n })\r\n // })\r\n });\r\n },\r\n };\r\n\r\n this.cancelButtonEditArea = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupEditArea = false;\r\n // this.close();\r\n },\r\n };\r\n\r\n this.saveButtonEditArea = {\r\n text: this.translate.instant('btnSave'),\r\n icon: \"check\",\r\n elementAttr: {\r\n id: \"bton-green\",\r\n },\r\n onClick: () => {\r\n // this.type = 1;\r\n // this.addNewComment();\r\n //this.updateNetworkConfiguration();\r\n this.insertArea();\r\n },\r\n };\r\n\r\n this.cancelButtonEditSystem = {\r\n text: this.translate.instant('btnCancel'),\r\n elementAttr: {\r\n id: \"bton-gray\",\r\n },\r\n onClick: () => {\r\n // this.componentSales.ngOnInit();\r\n this.popupEditSystem = false;\r\n // this.close();\r\n },\r\n };\r\n\r\n this.saveButtonEditSystem = {\r\n text: this.translate.instant('btnSave'),\r\n icon: \"check\",\r\n elementAttr: {\r\n id: \"bton-green\",\r\n },\r\n onClick: () => {\r\n this.SaveSystem()\r\n },\r\n };\r\n\r\n // this.agruparItems(this.areas);\r\n }\r\n\r\n closeLabor(){\r\n this.showModalDiferencia = false\r\n this.reloadData.emit(this.estimateid);\r\n }\r\n\r\n SaveSystem(){\r\n \r\n let hasError = false;\r\n let erros = [];\r\n if (!this.modelNewSystem.areaname) {\r\n hasError = true;\r\n erros.push(\"Please select area.\");\r\n }\r\n\r\n if (!this.modelNewSystem.systemname) {\r\n hasError = true;\r\n erros.push(\"Please enter system name.\");\r\n }\r\n\r\n if (hasError) {\r\n this.toast.warning(erros.join(\",\"));\r\n return;\r\n }\r\n\r\n this.estimateService\r\n .Insert_EstimateCreateNewSystemCE(\r\n this.estimateid,\r\n 0,\r\n this.modelNewSystem.sort,\r\n this.modelNewSystem.areaname,\r\n this.modelNewSystem.systemname,\r\n this.modelNewSystem.qty,\r\n this.modelNewSystem.systemtype[0] != undefined ? this.modelNewSystem.systemtype[0] : this.modelNewSystem.systemtype,\r\n false, // inactive\r\n false, // deleted\r\n this.modelNewSystem.scopeofwork,\r\n this.modelNewSystem.sop,\r\n this.modelNewSystem.excludefromsearch,\r\n this.modelNewSystem.controldwgname,\r\n this.modelNewSystem.controldwgimg,\r\n this.modelNewSystem.tagtext,\r\n this.modelNewSystem.tagnum,\r\n this.modelNewSystem.description\r\n )\r\n .subscribe((r) => {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgSysCreSucc'));\r\n this.popupEditSystem = false;\r\n this.reload.emit(this.estimateid);\r\n this.NewSystem.emit(r[0].resultID);\r\n this.modelNewSystem = {\r\n id: 0,\r\n systemid: this.systemid,\r\n sort: \"\",\r\n areaname: \"\",\r\n systemname: \"\",\r\n qty: 1,\r\n systemtype: \"\",\r\n inactive: false,\r\n deleted: false,\r\n scopeofwork: \"\",\r\n sop: \"\",\r\n excludefromsearch: \"\",\r\n controldwgname: \"\",\r\n controldwgimg: \"\",\r\n tagtext: \"\",\r\n tagnum: \"\",\r\n description: \"\",\r\n }\r\n });\r\n }\r\n\r\n getEstimateArea(id) {\r\n this.deltaService.GetEstimateAreaList(id).subscribe((result) => {\r\n this.areaSelect = result;\r\n if (result.length > 0){\r\n this.idAreaxDefault = result[0].ID\r\n this.dataTest = [{\r\n id:0,\r\n areaID:this.idAreaxDefault,\r\n systemTypeID:1,\r\n name:\"\",\r\n sort:1,\r\n qty:1,\r\n sytemOrigin:null\r\n }]\r\n }\r\n });\r\n }\r\n\r\n insertArea() {\r\n let cantidadAEnviar = this.rowsToEditArea.length;\r\n let cantidadEnviada = 0;\r\n\r\n this.rowsToEditArea.forEach(item => {\r\n this.MapInformationService.SaveInfoSites({\r\n method: \"Insert_EstimateAreaCE\",\r\n estimateid: this.estimateid,\r\n name: item.name,\r\n id: item.id,\r\n sort: item.sort,\r\n inactive: !item.active,\r\n alternate: item.alternate == true ? 1 : 0,\r\n })\r\n // this.estimateService\r\n // .Insert_EstimateAreaCE(this.estimateid, item.name, item.id, item.sort, item.active)\r\n .subscribe((result) => {\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantidadAEnviar) {\r\n this.resetModelArea();\r\n this.popupEditArea = false;\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgAreSucc'));\r\n this.reload.emit(this.estimateid);\r\n this.getEstimateArea(this.estimateid);\r\n }\r\n });\r\n })\r\n }\r\n\r\n getSystemArea() {\r\n this.deltaService.GetSystemArea(this.estimateid).subscribe(result => {\r\n let areas = result.map(x => {\r\n x.SystemActive = !x.SystemActive;\r\n return x;\r\n });\r\n this.agrupar2(areas)\r\n });\r\n }\r\n\r\n getSystemType() {\r\n\r\n this.deltaService.GetEstimateSystemTypeCE().subscribe((result) => {\r\n this.systemTypeSelectCE = result;\r\n });\r\n }\r\n\r\n getAreaSystemToEdit(obj) {\r\n\r\n if (this.Commissioning == \"Commissioning\") {\r\n\r\n let nodes = this.getChecked();\r\n\r\n if (nodes.length == 1) {\r\n this.getEstimateArea(this.estimateid)\r\n this.getSystemType()\r\n this.popupController = true\r\n return false\r\n }\r\n\r\n if (obj.itemData.id == 1) {\r\n this.rowsToEditArea = [];\r\n let nodes = this.getAreasChecked();\r\n\r\n if (nodes && nodes.length > 0) {\r\n // this.modelArea.name = nodes.areaname;\r\n // this.modelArea.id = nodes.originalid;\r\n // this.modelArea.sort = nodes.sort;\r\n // this.modelArea.active = nodes.areaactive;\r\n nodes.forEach(node => {\r\n let AlternateTrueOrFalse = node.Alternate == 1 ? true : false\r\n this.rowsToEditArea.push({\r\n name: node.areaname,\r\n id: node.originalid,\r\n active: node.areaactive,\r\n sort: node.sort,\r\n alternate: AlternateTrueOrFalse,\r\n })\r\n });\r\n this.popupEditArea = true;\r\n\r\n }\r\n }\r\n else if (obj.itemData.id == 2) {\r\n let nodes = this.getChecked();\r\n\r\n this.estimateService\r\n .GetEstimateAreaSystemInfoCE(nodes.map((x) => x.id).join(\",\"))\r\n .subscribe((result) => {\r\n\r\n this.rowsToEditAreaSystem = result.map((x) => {\r\n x.Active = !x.Active;\r\n x.MarkLib = !x.MarkLib;\r\n return x;\r\n });\r\n\r\n // this.customheight = \"70%\";\r\n setTimeout(() => {\r\n this.popupEditAreaSystem = true;\r\n // this.customheight = \"auto\";\r\n }, 20);\r\n });\r\n }\r\n } else {\r\n if (obj.itemData.id == 1) {\r\n this.rowsToEditArea = [];\r\n let nodes = this.getAreasChecked();\r\n\r\n \r\n if (nodes && nodes.length > 0) {\r\n // this.modelArea.name = nodes.areaname;\r\n // this.modelArea.id = nodes.originalid;\r\n // this.modelArea.sort = nodes.sort;\r\n // this.modelArea.active = nodes.areaactive;\r\n\r\n nodes.forEach(node => {\r\n let AlternateTrueOrFalse = node.Alternate == 1 ? true : false\r\n this.rowsToEditArea.push({\r\n name: node.areaname,\r\n id: node.originalid,\r\n active: node.areaactive,\r\n sort: node.sort,\r\n alternate: AlternateTrueOrFalse,\r\n })\r\n });\r\n this.popupEditArea = true;\r\n\r\n }\r\n }\r\n else if (obj.itemData.id == 2) {\r\n let nodes = this.getChecked();\r\n\r\n if (nodes.length == 1) {\r\n this.systemid = nodes[0].id\r\n this.getEstimateArea(this.estimateid)\r\n this.getSystemType()\r\n this.popupController = true\r\n return false\r\n }\r\n\r\n this.idsSystem = nodes.map((x) => x.id).join(\",\")\r\n setTimeout(() => {\r\n this.popupEditAreaSystem = true;\r\n // this.customheight = \"auto\";\r\n }, 20);\r\n }\r\n }\r\n\r\n\r\n }\r\n\r\n reloadSystems(d){\r\n this.reload.emit(this.estimateid);\r\n }\r\n\r\n updateAreaSystem() {\r\n let cantidadLlamadas = this.rowsToEditAreaSystem.length;\r\n let cantidadTerminada = 0;\r\n\r\n this.rowsToEditAreaSystem.forEach((item) => {\r\n this.estimateService\r\n .Upadte_EstimateAreaSystemCE(\r\n item.ID,\r\n item.ID,\r\n item.SORT,\r\n item.AreaName,\r\n item.SystemName,\r\n item.QTY,\r\n item.SystemTypeid,\r\n !item.Active, // Ponemos el caso contrario porqu eel campo se llama inactive en bd y active en el front\r\n false, //deleted\r\n \"\", //scope\r\n item.SOP,\r\n item.MarkLib == true ? 0 : 1, // Ponemos el caso contrario porque el campo es diferente en bd y active en el front\r\n item.Control_Drawing,\r\n \"\", // img\r\n item.TAGTEXT,\r\n item.TAGNUM,\r\n item.DESCRIPTION\r\n )\r\n .subscribe((result) => {\r\n cantidadTerminada++;\r\n\r\n if (cantidadTerminada >= cantidadLlamadas) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgUpdSucc'));\r\n this.popupEditAreaSystem = false;\r\n this.reload.emit(this.estimateid);\r\n }\r\n });\r\n });\r\n }\r\n\r\n\r\n goToImportFromLibrary() {\r\n\r\n localStorage.removeItem(\"systemidTree\")\r\n // localStorage.removeItem(\"fromLibrary\")\r\n if (this.systemid != undefined){\r\n localStorage.setItem(\"systemidTree\", this.systemid.toString())\r\n }\r\n // localStorage.setItem(\"fromLibrary\", \"Yes\")\r\n\r\n this.router.navigateByUrl(\r\n `/Estimates/import-from-library?estimateid=${this.estimateid}&project=${this.estimatenamestr}&systemid=${this.systemid}`\r\n );\r\n }\r\n\r\n changeActiveSystem(obj) {\r\n\r\n this.rowsToEditAreaSystem = this.rowsToEditAreaSystem.map(x => {\r\n x.Active = obj.value;\r\n\r\n return x;\r\n });\r\n }\r\n\r\n changeMarkLibSystem(obj) {\r\n\r\n this.rowsToEditAreaSystem = this.rowsToEditAreaSystem.map(x => {\r\n x.MarkLib = obj.value;\r\n\r\n return x;\r\n });\r\n }\r\n\r\n resetModelArea() {\r\n this.modelArea = {\r\n name: '',\r\n id: 0,\r\n sort: 0,\r\n active: true\r\n }\r\n\r\n this.popupEditArea = false\r\n }\r\n\r\n\r\n popupNewSystem:boolean=false\r\n\r\n onItemClickNewAreaSystem(obj) {\r\n if (obj.itemData.id == 1) {\r\n // this.rowsToEditArea = [];\r\n // this.popupEditArea = true;\r\n // this.rowsToEditArea.push({\r\n // name: '',\r\n // id: 0,\r\n // active: true,\r\n // sort: 0,\r\n // alternate: true\r\n // })\r\n this.openNewAreas()\r\n } else if (obj.itemData.id == 2) {\r\n // this.getEstimateArea(this.estimateid);\r\n // this.deltaService.GetEstimateSystemTypeCE().subscribe((result) => {\r\n // this.systemTypeSelectCE = result;\r\n // this.popupEditSystem = true;\r\n // });\r\n this.openNewSystems()\r\n } else if (obj.itemData.id == 3) {\r\n this.goToImportFromLibrary()\r\n } else if (obj.itemData.id == 4) {\r\n\r\n console.log(\"Aqui\")\r\n \r\n\r\n localStorage.setItem(\"SystemIDSelected\", this.systemid.toString())\r\n localStorage.setItem(\"estimateIDSelected\", this.estimateid.toString())\r\n localStorage.setItem(\"estimatenamestrSelected\", this.estimatenamestr.toString())\r\n localStorage.setItem(\"projectIDSelected\", this.projectid.toString())\r\n localStorage.removeItem(\"fromCommissioning\")\r\n\r\n \r\n\r\n this.router.navigateByUrl(`/applications`)\r\n\r\n }\r\n }\r\n\r\n onItemClickDuplicateAreaSystem(obj) {\r\n\r\n\r\n if (obj.itemData.id == 1) {\r\n // this.popupEditArea = true;\r\n \r\n let data = this.getAreasChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgAnArea'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n\r\n data.forEach(element => {\r\n\r\n this.estimateService.Insert_AreaDuplicate(element.originalid, this.estimateid).subscribe(result => {\r\n // this.estimateService.duplicateImage(element.id,result[0].ID)\r\n // .subscribe(res1=>{\r\n cantidadEnviada++;\r\n\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgArDupSucc'));\r\n this.reload.emit(this.estimateid);\r\n }\r\n\r\n // })\r\n });\r\n\r\n });\r\n } else if (obj.itemData.id == 2) {\r\n\r\n let data = this.getChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n\r\n data.forEach(element => {\r\n\r\n this.estimateService.DuplicateSystemSingle(element.areaid, element.id).subscribe(result => {\r\n this.estimateService.duplicateImage(element.id,result[0].ID)\r\n .subscribe(res1=>{\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgSysDupSucc'));\r\n this.reload.emit(this.estimateid);\r\n }\r\n })\r\n })\r\n });\r\n // this.popupEditSystem = true;\r\n // this.customheight = \"70%\";\r\n // setTimeout(() => {\r\n // this.customheight = \"auto\";\r\n // }, 20);\r\n } else if (obj.itemData.id == 3) {\r\n let data = this.getChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n return;\r\n }\r\n\r\n\r\n if (this.totalReplicate <= 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgRepNum'));\r\n return;\r\n }\r\n\r\n this.popupReplicateSystem = true;\r\n }\r\n }\r\n\r\n onItemClickDeleteOrDuplicateAreaSystem(obj,duplicar:boolean=false) {\r\n\r\n this.isDuplicating = duplicar\r\n\r\n\r\n if (obj.itemData.id == 1) {\r\n // this.popupEditArea = true;\r\n\r\n const data = this.getAreasChecked();\r\n this.componentModel.data = this.getAreasChecked();\r\n\r\n if (this.componentModel.data.length > 0) {\r\n for (let i = 0; i < this.componentModel.data.length; i++) {\r\n this.componentModel.data[i].key = this.componentModel.data[i].originalid\r\n }\r\n }\r\n\r\n data.forEach(x=>{\r\n this.componentModel.ID.push(x.key)\r\n })\r\n \r\n if (this.componentModel.ID.length > 0) {\r\n this.popupDeleteArea = true;\r\n setTimeout(() => {\r\n if (this.treeDelete != undefined) {\r\n this.componentModel.ID.forEach(x=>{\r\n this.treeDelete.instance.selectItem(x)\r\n })\r\n }\r\n }, 2000);\r\n } else {\r\n this.toast.warning(\"You must select an area\")\r\n\r\n }\r\n\r\n\r\n } else if (obj.itemData.id == 2) {\r\n this.componentModel.ID = this.treeViewSystemArea.instance.getSelectedNodeKeys().filter(x=> x >= 1 )\r\n this.componentModel.data = this.treeViewSystemArea.instance.getSelectedNodes().filter(x=> x.key >= 1 )\r\n \r\n if (this.componentModel.ID.length > 0) {\r\n this.popupDeleteSystem = true;\r\n setTimeout(() => {\r\n if (this.treeDelete != undefined) {\r\n this.componentModel.ID.forEach(x=>{\r\n this.treeDelete.instance.selectItem(x)\r\n })\r\n }\r\n }, 2000);\r\n } else {\r\n this.toast.warning(\"You must select a system\")\r\n }\r\n } else if (obj.itemData.id == 3) {\r\n\r\n this.componentModel.ID = this.treeViewSystemArea.instance.getSelectedNodeKeys().filter(x=> x >= 1 )\r\n this.componentModel.data = this.treeViewSystemArea.instance.getSelectedNodes().filter(x=> x.key >= 1 )\r\n\r\n\r\n if (this.componentModel.ID.length > 0) {\r\n this.popupReplicateSystem = true;\r\n setTimeout(() => {\r\n if (this.treeDelete != undefined) {\r\n this.componentModel.ID.forEach(x=>{\r\n this.treeDelete.instance.selectItem(x)\r\n })\r\n }\r\n }, 1000);\r\n } else {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys')); \r\n }\r\n }\r\n\r\n }\r\n\r\n clearNewSystem() {\r\n this.modelNewSystem = {\r\n id: 0,\r\n systemid: \"\",\r\n sort: \"\",\r\n areaname: \"\",\r\n systemname: \"\",\r\n qty: 1,\r\n systemtype: \"\",\r\n inactive: false,\r\n deleted: false,\r\n scopeofwork: \"\",\r\n sop: \"\",\r\n excludefromsearch: \"\",\r\n controldwgname: \"\",\r\n controldwgimg: \"\",\r\n tagtext: \"\",\r\n tagnum: \"\",\r\n description: \"\",\r\n };\r\n\r\n this.popupEditSystem = false;\r\n }\r\n\r\n goToFindAndReplace() {\r\n this.router.navigateByUrl(\r\n `/Estimates/find-replace?estimateid=${this.estimateid}&project=${this.estimatenamestr}&VieneDe=Comissioning`\r\n );\r\n }\r\n\r\n changeSystem() {\r\n this.gochangesystem.emit()\r\n }\r\n\r\n onItemClick(e) {\r\n console.log(e.itemData.name)\r\n switch (e.itemData.name) {\r\n case \"Add Area\":\r\n this.openNewAreas()\r\n break\r\n case \"Add System\":\r\n this.openNewSystems()\r\n break\r\n case \"Import from Excel\":\r\n this.popupImportFromExcel = true\r\n break\r\n case \"Import IO from Excel\":\r\n this.popupImportFromExcel = true\r\n break\r\n case \"Import from Library\":\r\n this.goToImportFromLibrary()\r\n break\r\n case \"Delete Area\":\r\n this.popupDeleteArea = true;\r\n const dataArea = this.getAreasChecked();\r\n this.componentModel.data = this.getAreasChecked();\r\n\r\n if (this.componentModel.data.length > 0) {\r\n for (let i = 0; i < this.componentModel.data.length; i++) {\r\n this.componentModel.data[i].key = this.componentModel.data[i].originalid\r\n }\r\n }\r\n\r\n dataArea.forEach(x=>{\r\n this.componentModel.ID.push(x.key)\r\n })\r\n \r\n if (this.componentModel.ID.length > 0) {\r\n this.popupDeleteArea = true;\r\n setTimeout(() => {\r\n if (this.treeDelete != undefined) {\r\n this.componentModel.ID.forEach(x=>{\r\n this.treeDelete.instance.selectItem(x)\r\n })\r\n }\r\n }, 2000);\r\n } else {\r\n this.toast.warning(\"You must select an area\")\r\n\r\n }\r\n break\r\n case \"Delete System\":\r\n this.popupDeleteSystem = true;\r\n this.componentModel.ID = this.treeViewSystemArea.instance.getSelectedNodeKeys().filter(x=> x >= 1 )\r\n this.componentModel.data = this.treeViewSystemArea.instance.getSelectedNodes().filter(x=> x.key >= 1 )\r\n \r\n if (this.componentModel.ID.length > 0) {\r\n this.popupDeleteSystem = true;\r\n setTimeout(() => {\r\n if (this.treeDelete != undefined) {\r\n this.componentModel.ID.forEach(x=>{\r\n this.treeDelete.instance.selectItem(x)\r\n })\r\n }\r\n }, 2000);\r\n } else {\r\n this.toast.warning(\"You must select a system\")\r\n }\r\n break\r\n case \"Clone Area\":\r\n let data = this.getAreasChecked();\r\n\r\n if (data.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgAnArea'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n\r\n data.forEach(element => {\r\n\r\n this.estimateService.Insert_AreaDuplicate(element.originalid, this.estimateid).subscribe(result => {\r\n // this.estimateService.duplicateImage(element.id,result[0].ID)\r\n // .subscribe(res1=>{\r\n cantidadEnviada++;\r\n\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgArDupSucc'));\r\n this.reload.emit(this.estimateid);\r\n }\r\n\r\n // })\r\n });\r\n\r\n });\r\n break\r\n case \"Clone System\":\r\n let data1 = this.getChecked();\r\n\r\n if (data1.length == 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar1 = data1.length;\r\n let cantidadEnviada1 = 0;\r\n\r\n\r\n\r\n data1.forEach(element => {\r\n\r\n this.estimateService.DuplicateSystemSingle(element.areaid, element.id).subscribe(result => {\r\n this.estimateService.duplicateImage(element.id,result[0].ID)\r\n .subscribe(res1=>{\r\n cantidadEnviada1++;\r\n if (cantidadEnviada1 == cantadadAEnviar1) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgSysDupSucc'));\r\n this.reload.emit(this.estimateid);\r\n }\r\n })\r\n })\r\n });\r\n break\r\n case 'Replicate System':\r\n this.componentModel.ID = this.treeViewSystemArea.instance.getSelectedNodeKeys().filter(x=> x >= 1 )\r\n this.componentModel.data = this.treeViewSystemArea.instance.getSelectedNodes().filter(x=> x.key >= 1 )\r\n\r\n\r\n if (this.componentModel.ID.length > 0) {\r\n this.popupReplicateSystem = true;\r\n setTimeout(() => {\r\n if (this.treeDelete != undefined) {\r\n this.componentModel.ID.forEach(x=>{\r\n this.treeDelete.instance.selectItem(x)\r\n })\r\n }\r\n }, 1000);\r\n } else {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys')); \r\n }\r\n break\r\n case \"Edit Area\":\r\n this.rowsToEditArea = [];\r\n let nodesArea = this.getAreasChecked();\r\n\r\n \r\n if (nodesArea && nodesArea.length > 0) {\r\n // this.modelArea.name = nodesArea.areaname;\r\n // this.modelArea.id = nodesArea.originalid;\r\n // this.modelArea.sort = nodesArea.sort;\r\n // this.modelArea.active = nodesArea.areaactive;\r\n\r\n console.log(nodesArea)\r\n\r\n nodesArea.forEach(node => {\r\n let AlternateTrueOrFalse = node.Alternate == 1 || node.Alternate == true ? true : false\r\n this.rowsToEditArea.push({\r\n name: node.areaname,\r\n id: node.originalid,\r\n active: node.areaactive,\r\n sort: node.sort,\r\n alternate: AlternateTrueOrFalse,\r\n })\r\n });\r\n this.popupEditArea = true;\r\n\r\n }\r\n break\r\n\r\n case \"Edit System\":\r\n console.log(\"system\")\r\n let nodes = this.getChecked();\r\n\r\n if (nodes.length == 1) {\r\n this.getEstimateArea(this.estimateid)\r\n this.getSystemType()\r\n this.popupController = true\r\n return false\r\n }\r\n\r\n // this.idsSystem = nodes.map((x) => x.id).join(\",\")\r\n\r\n // this.popupController = true\r\n\r\n\r\n // let nodes1 = this.getChecked();\r\n\r\n console.log(nodes)\r\n\r\n this.estimateService\r\n .GetEstimateAreaSystemInfoCE(nodes.map((x) => x.id).join(\",\"))\r\n .subscribe((result) => {\r\n this.rowsToEditAreaSystem = result.map((x) => {\r\n x.Active = !x.Active;\r\n x.MarkLib = !x.MarkLib;\r\n return x;\r\n });\r\n\r\n console.log(this.rowsToEditAreaSystem)\r\n\r\n this.idsSystem = nodes.map((x) => x.id).join(\",\")\r\n setTimeout(() => {\r\n this.popupEditAreaSystem = true;\r\n }, 20);\r\n });\r\n\r\n break\r\n }\r\n }\r\n\r\n idsSystem:any\r\n\r\n onItemClickManage(e){\r\n switch (e.itemData.name) {\r\n case \"Network view\":\r\n\r\n break\r\n case \"Galery View\":\r\n\r\n break\r\n case \"Find and Replace\":\r\n this.goToFindAndReplace()\r\n break\r\n case \"Change system to area\":\r\n this.changeSystem()\r\n break\r\n case \"\":\r\n break\r\n case \"\":\r\n break\r\n }\r\n }\r\n\r\n itemSelected:any\r\n\r\n selectItem(item) {\r\n this.itemSelected = item\r\n if (this.systemid != item.itemData.id){ //if agregado en la optimizacion \r\n this.onitemchange.emit(item.itemData);\r\n this.systemid = item.itemData.id > 0 ? item.itemData.id : this.systemid;\r\n // this.treeViewSystemArea.instance.selectItem(item.itemData.id > 0 ? item.itemData.id : this.systemid)\r\n $(\".dx-treeview-item\").removeClass(\"currently-active-item\");\r\n $(item.itemElement).addClass(\"currently-active-item\");\r\n }\r\n }\r\n\r\n onSelectionChange(item) {\r\n if (item.node.selected) {\r\n this.selectItem(item);\r\n }\r\n }\r\n\r\n agrupar() {\r\n const unique = [...new Set(this.areas.map(item => item.AreaName))];\r\n let prueba = unique.map(x => {\r\n let obj = {\r\n id: Math.random(),\r\n originalid: this.areas.find(a => a.AreaName == x).ID,\r\n sort: this.areas.find(a => a.AreaName == x).AreaSort,\r\n areaname: x,\r\n text: this.areas.find(a => a.AreaName == x).AreaSort + '-' + x,\r\n expanded: this.expanded,\r\n items: this.areas.filter(a => a.AreaName == x).map(a => {\r\n return {\r\n id: a.SystemID,\r\n text: a.SystemName,\r\n icon: a.SystemActive ? 'fas fa-folder systamactive' : 'fas fa-folder systeminactive',\r\n issystem: true,\r\n areaid: a.ID,\r\n path: a.ImagePath,\r\n SystemActive:a.SystemActive\r\n }\r\n })\r\n }\r\n\r\n return obj;\r\n });\r\n\r\n\r\n this.groupItems = prueba;\r\n\r\n if (this.groupItems.length > 0) {\r\n this.selectItem({ itemData: this.groupItems[0].items[0] });\r\n }\r\n\r\n setTimeout(() => {\r\n $(\".systamactive\").attr(\"style\", \"color:green !important\");\r\n $(\".systeminactive\").attr(\"style\", \"color:red !important\");\r\n if ($(\".dx-treeview-item\").length > 1) {\r\n $(\".dx-treeview-item\").removeClass(\"currently-active-item\");\r\n $($(\".dx-treeview-item\")[1]).addClass(\"currently-active-item\");\r\n }\r\n }, 1000);\r\n }\r\n\r\n agrupar2(arr) {\r\n var x = arr.reduce(function (map, node) {\r\n let parentid = node.ParetID;\r\n let nodeid = node.ID;\r\n map.i[nodeid] = node;\r\n node.items = [];\r\n if (parentid === null || parentid === 0) {\r\n map.result.push(node);\r\n }\r\n else if (parentid in map.i) {\r\n map.i[parentid].items.push(node);\r\n }\r\n else {\r\n (parentid in map.cache) ?\r\n map.cache[parentid].push(node) :\r\n map.cache[parentid] = [node];\r\n }\r\n if (nodeid in map.cache) {\r\n node.items = node.items.concat(map.cache[nodeid]);\r\n delete map.cache[nodeid];\r\n }\r\n return map;\r\n }, { i: {}, cache: {}, result: [] }).result;\r\n\r\n\r\n\r\n // debugger\r\n let data = x.map(item => {\r\n let obj\r\n if(this.changeOfColor == true){\r\n obj = {\r\n id: Math.random(),\r\n originalid: (item.ID * -1),\r\n sort: item.Sort,\r\n areaname: item.Name,\r\n areaactive: item.AreaActive,\r\n icon: 'fas fa-folder systWithOutComponent',\r\n text: item.Sort + '-' + item.Name,\r\n expanded: this.expanded,\r\n network: item.HASNETWORK,\r\n Alternate:item.Alternate,\r\n items: item.items.map(a => {\r\n return {\r\n id: a.ID,\r\n text: a.Name,\r\n icon: a.HASSCOMPONENTS == 1 ? 'fas fa-folder systWithComponent' : 'fas fa-folder systWithOutComponent',\r\n hassComponents: a.HASSCOMPONENTS,\r\n issystem: true,\r\n areaid: (a.ParetID * -1),\r\n path: a.ImagePath,\r\n Sort: a.Sort,\r\n SystemActive:a.SystemActive,\r\n network: a.HASNETWORK,\r\n Alternate:a.Alternate\r\n }\r\n })\r\n }\r\n } else {\r\n obj = {\r\n id: Math.random(),\r\n originalid: (item.ID * -1),\r\n sort: item.Sort,\r\n areaname: item.Name,\r\n areaactive: item.AreaActive,\r\n icon: item.AreaActive ? 'fas fa-folder systamactive' : 'fas fa-folder systeminactive',\r\n text: item.Sort + '-' + item.Name,\r\n expanded: this.expanded,\r\n network: item.HASNETWORK,\r\n Alternate:item.Alternate,\r\n items: item.items.map(a => {\r\n return {\r\n id: a.ID,\r\n text: a.Name,\r\n icon: a.AreaActive ? 'fas fa-folder systamactive' : 'fas fa-folder systeminactive',\r\n issystem: true,\r\n areaid: (a.ParetID * -1),\r\n path: a.ImagePath,\r\n Sort: a.Sort,\r\n SystemActive:a.SystemActive,\r\n network: a.HASNETWORK,\r\n Alternate:a.Alternate\r\n }\r\n })\r\n }\r\n \r\n }\r\n \r\n\r\n return obj;\r\n });\r\n\r\n\r\n this.groupItems = data;\r\n\r\n let first = arr.filter(x => x.ID > 0)[0];\r\n\r\n let child = this.groupItems.filter(x => x.items.length > 0)[0];\r\n if (child && child.items.length > 0) {\r\n if(this.systemid != undefined){\r\n child.items.forEach(element => {\r\n if(element.id == this.systemid){\r\n this.selectItem({ itemData: element });\r\n }\r\n });\r\n } else {\r\n this.selectItem({ itemData: child.items[0] });\r\n }\r\n }\r\n\r\n setTimeout(() => {\r\n if (this.FindAndReplace == undefined) {\r\n if (localStorage.getItem(\"systemidTree\") != undefined){\r\n this.treeViewSystemArea.instance.unselectAll()\r\n this.treeViewSystemArea.instance.selectItem(Number(localStorage.getItem(\"systemidTree\")))\r\n this.estiloCarpetas()\r\n localStorage.removeItem(\"systemidTree\")\r\n setTimeout(() => {\r\n this.treeViewSystemArea.instance.unselectAll()\r\n this.SelectASystem(this.systemidParent)\r\n }, 2000);\r\n } else {\r\n // localStorage.removeItem(\"fromLibrary\")\r\n if (this.systemidParent != 0 && this.systemidParent != undefined) {\r\n this.treeViewSystemArea.instance.unselectAll()\r\n this.treeViewSystemArea.instance.selectItem(this.systemidParent)\r\n \r\n setTimeout(() => {\r\n $(\".systamactive\").attr(\"style\", \"color:green !important\");\r\n $(\".systeminactive\").attr(\"style\", \"color:red !important\");\r\n if ($(\".dx-treeview-item\").length > 1) {\r\n $(\".dx-treeview-item\").removeClass(\"currently-active-item\");\r\n $(this.itemSelected.itemElement).addClass(\"currently-active-item\");\r\n }\r\n }, 800);\r\n }\r\n }\r\n }\r\n $(\".systamactive\").attr(\"style\", \"color:green !important\");\r\n $(\".systeminactive\").attr(\"style\", \"color:red !important\");\r\n }, 2000);\r\n\r\n }\r\n\r\n onItemExpanded(ev?:any) {\r\n setTimeout(() => {\r\n $(\".systamactive\").attr(\"style\", \"color:green !important\")\r\n $(\".systeminactive\").attr(\"style\", \"color:red !important\")\r\n }, 500);\r\n }\r\n\r\n getChecked() {\r\n let nodes = this.treeViewSystemArea.instance.getSelectedNodes();\r\n let data = nodes.map(x => x.itemData).filter(f => f.issystem)\r\n return data;\r\n }\r\n\r\n getAreasChecked() {\r\n let nodes = this.treeViewSystemArea.instance.getSelectedNodes();\r\n let data = nodes.map(x => x.itemData).filter(f => !f.issystem)\r\n return data\r\n }\r\n\r\n\r\n closeParents(){\r\n this.treeViewSystemArea.instance.collapseAll()\r\n this.OpenOrClose = false\r\n this.userService.Get_UserSettingsCE(localStorage.getItem(\"customerid\")).subscribe(result => {\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n\r\n obj.openTreeEstimate = false\r\n let data = {\r\n usersettings : JSON.stringify(obj)\r\n }\r\n this.userService.saveUserSettingCoor(data).subscribe(result => {\r\n this.estiloCarpetas()\r\n })\r\n })\r\n }\r\n\r\n estiloCarpetas(){\r\n if(this.changeOfColor){\r\n $(\".systWithOutComponent\").attr(\"style\", \"color:green !important\");\r\n $(\".systWithComponent\").attr(\"style\", \"color:#ffc107 !important\");\r\n } else {\r\n $(\".systamactive\").attr(\"style\", \"color:green !important\");\r\n $(\".systeminactive\").attr(\"style\", \"color:red !important\");\r\n }\r\n if ($(\".dx-treeview-item\").length > 1) {\r\n $(\".dx-treeview-item\").removeClass(\"currently-active-item\");\r\n $($(\".dx-treeview-item\")[1]).addClass(\"currently-active-item\");\r\n }\r\n }\r\n// \"{\"dateFormat\":\"MM/dd/yyyy\",\"moneyFormat\":\"$\",\"startPage\":\"/projects\",\"estimateidDefault\":1717,\"method\":\"update_UserSettingsCoor\",\"DefaultSystemType\":\"9\",\"map\":\"Santo Domingo de los Tsachilas, Ecuador\"}\"\r\n \r\n OpenParents(){\r\n this.treeViewSystemArea.instance.expandAll()\r\n this.OpenOrClose = true\r\n\r\n this.userService.Get_UserSettingsCE(localStorage.getItem(\"customerid\")).subscribe(result => {\r\n let obj = JSON.parse(result[0].CLIENTUSERSETTING);\r\n\r\n obj.openTreeEstimate = true\r\n let data = {\r\n usersettings : JSON.stringify(obj)\r\n }\r\n this.userService.saveUserSettingCoor(data).subscribe(result => {\r\n\r\n this.estiloCarpetas()\r\n\r\n })\r\n\r\n })\r\n\r\n this.onItemExpanded()\r\n setTimeout(() => {\r\n $(\".systamactive\").attr(\"style\", \"color:green !important\");\r\n $(\".systeminactive\").attr(\"style\", \"color:red !important\");\r\n if ($(\".dx-treeview-item\").length > 1) {\r\n $(\".dx-treeview-item\").removeClass(\"currently-active-item\");\r\n $($(\".dx-treeview-item\")[1]).addClass(\"currently-active-item\");\r\n }\r\n }, 1000);\r\n\r\n }\r\n\r\n SelectASystem(id){\r\n this.treeViewSystemArea.instance.selectItem(id)\r\n\r\n this.estiloCarpetas()\r\n \r\n this.treeViewSystemArea.instance.expandItem(id)\r\n\r\n }\r\n\r\n syncTreeViewSelection(e) {\r\n\r\n var component =\r\n (e && e.component) || (this.treeView && this.treeView.instance);\r\n\r\n if (!component) return;\r\n\r\n if (!this.treeBoxValue) {\r\n component.unselectAll();\r\n }\r\n\r\n if (this.treeBoxValue) {\r\n this.treeBoxValue.forEach(\r\n function (value) {\r\n component.selectItem(value);\r\n }.bind(this)\r\n );\r\n }\r\n }\r\n\r\n treeView_itemSelectionChanged(e) {\r\n // this.modelSystemInformation.systemtype = e.itemData.SystemType\r\n // this.modelSystemInformation.SystemTypeid = e.itemData.ID\r\n this.treeBoxValue = e.component.getSelectedNodeKeys();\r\n }\r\n\r\n showImagesEstimate(){\r\n localStorage.removeItem(\"systemidTree\")\r\n if (this.systemid != undefined){\r\n localStorage.setItem(\"systemidTree\", this.systemid.toString())\r\n }\r\n this.changeviewImages.emit(this.groupItems)\r\n }\r\n\r\n syncTreeViewSelection2(e) {\r\n var component =\r\n (e && e.component) || (this.treeView2 && this.treeView2.instance);\r\n\r\n if (!component) return;\r\n\r\n if (!this.treeBoxValue2) {\r\n component.unselectAll();\r\n }\r\n\r\n if (this.treeBoxValue2) {\r\n this.treeBoxValue2.forEach(\r\n function (value) {\r\n component.selectItem(value);\r\n }.bind(this)\r\n );\r\n }\r\n\r\n if (this.componentModel.ID.length > 0) {\r\n setTimeout(() => {\r\n if (this.treeDelete != undefined) {\r\n this.componentModel.ID.forEach( x =>{\r\n if (this.popupDeleteArea){\r\n this.treeDelete.instance.selectItem(x.originalid * -1)\r\n } else {\r\n this.treeDelete.instance.selectItem(x)\r\n }\r\n })\r\n }\r\n }, 1000);\r\n }\r\n }\r\n\r\n treeView_itemSelectionChanged2(e) {\r\n // && this.notAllowed == false\r\n if(e.itemElement != undefined){\r\n this.componentModel.ID = e.component.getSelectedNodeKeys()\r\n this.treeBoxValue2 = e.component.getSelectedNodeKeys();\r\n } else {\r\n // this.notAllowed = false\r\n }\r\n\r\n // && this.notAllowed == false && this.FirtsTime \r\n if (e.itemElement != undefined){\r\n // this.componentModel.tagid = e.itemData.ID\r\n this.componentModel.ID = e.component.getSelectedNodeKeys();\r\n this.treeBoxValue2 = e.component.getSelectedNodeKeys();\r\n // this.FirtsTime = false\r\n }\r\n\r\n \r\n }\r\n\r\n cancelDelete(){\r\n this.popupDeleteSystem = false;\r\n this.popupDeleteArea = false;\r\n this.componentModel.ID = []\r\n if (this.treeDelete != undefined){\r\n this.treeDelete.instance.unselectAll()\r\n }\r\n }\r\n\r\n DeleteSystemsOrArea(){\r\n if (this.popupDeleteSystem) {\r\n let data = this.getChecked();\r\n\r\n // if (data.length == 0) {\r\n // this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n // return;\r\n // }\r\n\r\n let cantadadAEnviar = this.componentModel.ID.length;\r\n let cantidadEnviada = 0;\r\n this.componentModel.ID.forEach(element => {\r\n this.estimateService.DeleteSystem(element).subscribe(result => {\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgDelSys'));\r\n this.popupDeleteSystem = false;\r\n this.getEstimateArea(this.estimateid);\r\n this.cancelDelete()\r\n if(this.groupItems != undefined){\r\n if (this.groupItems.length > 0){\r\n if (this.groupItems[0].items.length > 0 ){\r\n if (this.groupItems[0].items.length == 1){\r\n this.deletedSystemOrArea.emit();\r\n return false\r\n }\r\n let contador = 0\r\n this.groupItems[0].items.forEach((x) => {\r\n if (contador == 0 && x.id != element){\r\n this.treeViewSystemArea.instance.selectItem(x.id)\r\n this.reload.emit(this.estimateid);\r\n contador++\r\n return false;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n }\r\n })\r\n });\r\n }\r\n\r\n if (this.popupDeleteArea) {\r\n let data = this.getAreasChecked();\r\n\r\n // if (data.length == 0) {\r\n // this.toast.warning(this.translate.instant('ModuleSystemToArea.msgAnArea'));\r\n // return;\r\n // }\r\n\r\n let cantadadAEnviar = this.componentModel.ID.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n this.componentModel.ID.forEach(element => {\r\n\r\n this.estimateService.DeleteArea(element).subscribe(result => {\r\n cantidadEnviada++;\r\n\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgAreDelSucc'));\r\n // this.reload.emit(this.estimateid);\r\n // this.getEstimateArea(this.estimateid);\r\n this.popupDeleteArea = false;\r\n this.getEstimateArea(this.estimateid);\r\n this.cancelDelete()\r\n if(this.groupItems != undefined){\r\n if (this.groupItems.length > 0){\r\n if (this.groupItems.length == 1){\r\n this.deletedSystemOrArea.emit();\r\n return false\r\n }\r\n\r\n let contador = 0\r\n this.groupItems.forEach((x) => {\r\n if (contador == 0 && x.originalid != element){\r\n this.treeViewSystemArea.instance.selectItem(x.items[0].id)\r\n this.reload.emit(this.estimateid);\r\n contador++\r\n return 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 DuplicateSystemsOrArea() {\r\n\r\n \r\n if (this.popupDeleteArea) {\r\n // this.popupEditArea = true;\r\n \r\n let data = this.getAreasChecked();\r\n\r\n // if (data.length == 0) {\r\n // this.toast.warning(this.translate.instant('ModuleSystemToArea.msgAnArea'));\r\n // return;\r\n // }\r\n\r\n let cantadadAEnviar = this.componentModel.ID.length;\r\n let cantidadEnviada = 0;\r\n\r\n\r\n this.componentModel.ID.forEach(element => {\r\n\r\n\r\n this.estimateService.Insert_AreaDuplicate(element, this.estimateid).subscribe(result => {\r\n // this.estimateService.duplicateImage(element.id,result[0].ID)\r\n // .subscribe(res1=>{\r\n cantidadEnviada++;\r\n\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgArDupSucc'));\r\n this.reload.emit(this.estimateid);\r\n this.popupDeleteSystem = false;\r\n this.cancelDelete()\r\n }\r\n\r\n // })\r\n });\r\n\r\n });\r\n } else if (this.popupDeleteSystem) {\r\n\r\n let data = []\r\n if (this.treeDelete != undefined) {\r\n let nodes = this.treeDelete.instance.getSelectedNodes();\r\n data = nodes.map(x => x.itemData).filter(f => f.ParetID != undefined)\r\n } else {\r\n data = this.getChecked();\r\n }\r\n let dataFinal = []\r\n this.componentModel.ID.forEach(x=>{\r\n data.forEach(y=>{\r\n if (x == y.id || x == y.ID){\r\n dataFinal.push(y)\r\n }\r\n\r\n })\r\n })\r\n\r\n // if (data.length == 0) {\r\n // this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n // return;\r\n // }\r\n\r\n let cantadadAEnviar = dataFinal.length;\r\n let cantidadEnviada = 0;\r\n\r\n dataFinal.forEach(element => {\r\n\r\n this.estimateService.DuplicateSystemSingle(element.areaid != undefined ? element.areaid : element.ParetID * -1, element.id != undefined ? element.id : element.ID).subscribe(result => { //debes buscar el area id\r\n this.estimateService.duplicateImage(element.id,result[0].ID)\r\n .subscribe(res1=>{\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgSysDupSucc'));\r\n this.reload.emit(this.estimateid);\r\n this.popupDeleteArea = false;\r\n this.cancelDelete()\r\n }\r\n })\r\n })\r\n });\r\n } else if (this.popupReplicateSystem) {\r\n // let data = this.getChecked();\r\n\r\n // if (data.length == 0) {\r\n // this.toast.warning(this.translate.instant('ModuleSystemToArea.msgSelSys'));\r\n // return;\r\n // }\r\n\r\n\r\n if (this.totalReplicate <= 0) {\r\n this.toast.warning(this.translate.instant('ModuleSystemToArea.msgRepNum'));\r\n return;\r\n }\r\n\r\n let cantadadAEnviar = this.componentModel.ID.length;\r\n let cantidadEnviada = 0;\r\n\r\n this.componentModel.ID.forEach(element => {\r\n\r\n\r\n this.estimateService.ReplicateeEstimateSystems(element, this.totalReplicate).subscribe(result => {\r\n // this.estimateService.duplicateImage(element.id,result[0].ID)\r\n // .subscribe(res1=>{\r\n cantidadEnviada++;\r\n if (cantidadEnviada == cantadadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleSystemToArea.msgRepSucc'));\r\n this.reload.emit(this.estimateid);\r\n this.totalReplicate = 0;\r\n this.popupReplicateSystem = false;\r\n }\r\n })\r\n // })\r\n });\r\n }\r\n\r\n }\r\n\r\n closeReplicar(){\r\n this.totalReplicate = 1\r\n this.popupReplicateSystem = false;\r\n this.cancelDelete()\r\n }\r\n\r\n dataDifferenceLabor:any[]=[]\r\n\r\n OpenDiference(){\r\n let keys = this.treeViewSystemArea.instance.getSelectedNodeKeys()\r\n let idsFinal = []\r\n keys.forEach(x=>{\r\n if (1 < x){\r\n idsFinal.push(x)\r\n }\r\n })\r\n this.MapInformationService.SaveInfoSites({method:\"GetEstimateAreaSystemSugestedLaborMultSystems\", systemid:idsFinal.join(\",\")}) //29779\r\n .subscribe(resp=>{\r\n this.dataDifferenceLabor = resp\r\n })\r\n }\r\n\r\n prepareRowPartLabor(info) {\r\n if (info.rowType === \"data\") {\r\n if (info.data.Est_Dif == 0) {\r\n info.rowElement.className = info.rowElement.className + ' checkbox-none'\r\n }\r\n }\r\n }\r\n\r\n NewLabor(data){\r\n this.MapInformationService.SaveInfoSites({method:\"CreateSystemDetailFromDetailID\", detailid:data.DetailID, laborid:data.LaborID, qty:data.TotalNewQty, systemid:data.SystemID})\r\n .subscribe(resp=>{\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n // this.showModalDiferencia = false\r\n this.OpenDiference()\r\n // this.reload.emit(this.estimateid);\r\n })\r\n }\r\n \r\n UpdateLabor(data){\r\n this.MapInformationService.SaveInfoSites({method:\"CreateSystemDetailFromDetailID\", detailid:data.DetailID, laborid:data.LaborID, qty:data.TotalNewQty, systemid:data.SystemID})\r\n .subscribe(resp=>{\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n // this.showModalDiferencia = false\r\n this.OpenDiference()\r\n // this.reload.emit(this.estimateid);\r\n })\r\n }\r\n\r\n UpdateSelected(){\r\n const data = this.gridLabor.instance.getSelectedRowsData()\r\n if (data.length > 0) {\r\n let contador = 0\r\n data.forEach(info=>{\r\n if (info.Est_Dif != 0) {\r\n this.MapInformationService.SaveInfoSites({method:\"CreateSystemDetailFromDetailID\", detailid:info.DetailID, laborid:info.LaborID, qty:info.TotalNewQty, systemid:info.SystemID})\r\n .subscribe(resp=>{\r\n contador++\r\n if (contador == data.length){\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n this.OpenDiference()\r\n // this.reload.emit(this.estimateid);\r\n this.gridLabor.instance.deselectAll()\r\n }\r\n })\r\n } else {\r\n contador++\r\n if (contador == data.length){\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n this.OpenDiference()\r\n // this.reload.emit(this.estimateid);\r\n this.gridLabor.instance.deselectAll()\r\n }\r\n }\r\n })\r\n } else {\r\n this.toast.warning(this.translate.instant('ModuleEditEstimate.msgLeasReg'));\r\n }\r\n }\r\n \r\n UpdateAll(){\r\n if (this.dataDifferenceLabor.length > 0){\r\n let contador = 0\r\n this.dataDifferenceLabor.forEach(info=>{\r\n if (info.Est_Dif != 0) {\r\n this.MapInformationService.SaveInfoSites({method:\"CreateSystemDetailFromDetailID\", detailid:info.DetailID, laborid:info.LaborID, qty:info.TotalNewQty, systemid:info.SystemID})\r\n .subscribe(resp=>{\r\n contador++\r\n if (contador == this.dataDifferenceLabor.length){\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n this.OpenDiference()\r\n // this.reload.emit(this.estimateid);\r\n this.gridLabor.instance.deselectAll()\r\n }\r\n })\r\n } else {\r\n contador++\r\n if (contador == this.dataDifferenceLabor.length){\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n this.OpenDiference()\r\n // this.reload.emit(this.estimateid);\r\n this.gridLabor.instance.deselectAll()\r\n }\r\n }\r\n })\r\n } else {\r\n this.toast.warning(this.translate.instant('ModuleEditEstimate.msgRegUpdate'));\r\n }\r\n }\r\n\r\n goToTutorial(id){\r\n // let id = \"ibtVDO1\"\r\n // this.router.navigateByUrl()\r\n\r\n let url = window.location.href.split(\"#\");\r\n let finalUrl = url[0] + `#/videoTutorial?numVideo=${id}`; \r\n window.open(finalUrl, \"_blank\");\r\n\r\n }\r\n\r\n dataTest:any[]=[\r\n {\r\n id:0,\r\n areaID:1,\r\n systemTypeID:1,\r\n name:\"\",\r\n sort:1,\r\n qty:1,\r\n sytemOrigin:null\r\n }\r\n ]\r\n\r\n systemTypeMultipleData:any[]=[]\r\n idAreaxDefault:any\r\n openNewSystems(){\r\n this.popupNewSystem = true;\r\n this.getEstimateArea(this.estimateid)\r\n this.getSystemTypeMultiple()\r\n }\r\n\r\n closeAddMultipleSystem(){\r\n this.dataTest = [\r\n {\r\n id:0,\r\n areaID:this.idAreaxDefault,\r\n systemTypeID:1,\r\n name:\"\",\r\n sort:1,\r\n qty:1\r\n }\r\n ]\r\n this.onFileRemove()\r\n this.popupNewSystem = false\r\n\r\n }\r\n\r\n SaveSystemMultiples(){\r\n\r\n if (this.dataTest.length > 0){\r\n let contador = 0\r\n console.log(this.dataTest)\r\n let stop = false\r\n this.dataTest.forEach(x=>{\r\n if (x.areaID == undefined || x.areaID == ''){\r\n stop = true\r\n }\r\n })\r\n\r\n if (!stop){\r\n this.dataTest.forEach(x=>{\r\n \r\n let model = {\r\n method: \"Insert_EstimateCreateNewSystemCE\",\r\n id: this.estimateid,\r\n systemid: 0,\r\n sort: x.sort,\r\n areaname: x.areaID,\r\n systemname: x.name,\r\n qty: x.qty,\r\n systemtype: x.systemTypeID,\r\n inactive: 0,\r\n deleted: 0,\r\n scopeofwork: 0,\r\n sop: \"\",\r\n excludefromsearch: \"\",\r\n controldwgname: \"\",\r\n controldwgimg: \"\",\r\n tagtext: \"\",\r\n tagnum: \"\",\r\n description: \"\",\r\n };\r\n this.MapInformationService.SaveInfoSites(model)\r\n .subscribe(resp=>{\r\n \r\n if (x.base64 != undefined && x.base64 != \"\") {\r\n this.estimateService.SaveImageSystem(x.base64, resp[0].resultID).subscribe(res => {\r\n if (x.sytemOrigin != undefined) {\r\n \r\n console.log(resp) \r\n this.MapInformationService.SaveInfoSites({\r\n \"method\": \"ImportintoSystemSingle\",\r\n \"systemid\": x.sytemOrigin,\r\n \"newsystemid\": resp[0].resultID\r\n })\r\n .subscribe(res1 => {\r\n \r\n this.estimateService.duplicateImage(x.sytemOrigin,resp[0].resultID)\r\n .subscribe(res1=>{\r\n\r\n contador++\r\n \r\n if (contador == this.dataTest.length){\r\n this.toast.success(\"Created Successfully\")\r\n this.popupNewSystem = false\r\n this.dataTest = [\r\n {\r\n id:0,\r\n areaID:this.idAreaxDefault,\r\n systemTypeID:1,\r\n name:\"\",\r\n sort:1,\r\n qty:1\r\n }\r\n ]\r\n this.reload.emit()\r\n }\r\n })\r\n \r\n })\r\n } else {\r\n contador++\r\n if (contador == this.dataTest.length){\r\n this.toast.success(\"Created Successfully\")\r\n this.popupNewSystem = false\r\n this.dataTest = [\r\n {\r\n id:0,\r\n areaID:this.idAreaxDefault,\r\n systemTypeID:1,\r\n name:\"\",\r\n sort:1,\r\n qty:1\r\n }\r\n ]\r\n this.reload.emit()\r\n }\r\n }\r\n });\r\n } else {\r\n if (x.sytemOrigin != undefined) {\r\n \r\n console.log(resp) \r\n this.MapInformationService.SaveInfoSites({\r\n \"method\": \"ImportintoSystemSingle\",\r\n \"systemid\": x.sytemOrigin,\r\n \"newsystemid\": resp[0].resultID\r\n })\r\n .subscribe(res1 => {\r\n this.estimateService.duplicateImage(x.sytemOrigin,resp[0].resultID)\r\n .subscribe(res1=>{\r\n contador++\r\n if (contador == this.dataTest.length){\r\n this.toast.success(\"Created Successfully\")\r\n this.popupNewSystem = false\r\n this.dataTest = [\r\n {\r\n id:0,\r\n areaID:this.idAreaxDefault,\r\n systemTypeID:1,\r\n name:\"\",\r\n sort:1,\r\n qty:1\r\n }\r\n ]\r\n this.reload.emit()\r\n }\r\n\r\n })\r\n \r\n })\r\n } else {\r\n contador++\r\n if (contador == this.dataTest.length){\r\n this.toast.success(\"Created Successfully\")\r\n this.popupNewSystem = false\r\n this.dataTest = [\r\n {\r\n id:0,\r\n areaID:this.idAreaxDefault,\r\n systemTypeID:1,\r\n name:\"\",\r\n sort:1,\r\n qty:1\r\n }\r\n ]\r\n this.reload.emit()\r\n }\r\n }\r\n }\r\n \r\n \r\n })\r\n })\r\n } else {\r\n this.toast.warning(\"All records must have an assigned area\")\r\n }\r\n }\r\n\r\n\r\n }\r\n\r\n newSystemMultiple(){\r\n let dataTempo = [...this.dataTest]\r\n const newSort = this.dataTest[this.dataTest.length - 1].sort + 1\r\n dataTempo.push({\r\n id:this.dataTest.length++,\r\n areaID:this.idAreaxDefault,\r\n systemTypeID:1,\r\n name:\"\",\r\n sort:newSort,\r\n qty:1\r\n })\r\n this.dataTest = dataTempo \r\n }\r\n\r\n getSystemTypeMultiple(){\r\n this.MapInformationService.SaveInfoSites({method:\"Get_EstimateSytemTypeCreateSystem\"})\r\n .subscribe(resp=>{\r\n this.systemTypeMultipleData = resp\r\n })\r\n }\r\n\r\n\r\n deletesystemMultiple(data){\r\n if(this.dataTest.length > 1){\r\n const dataTempo = this.dataTest.filter(x=>x.id != data.id)\r\n this.dataTest = dataTempo\r\n }\r\n }\r\n\r\n // javascript create JSON object from two dimensional Array\r\n arrayToJSONObject(arr) {\r\n // header\r\n const keys = arr[0];\r\n\r\n // vacate keys from main array\r\n const newArr = arr.slice(1, arr.length);\r\n\r\n const formatted = [];\r\n const data = newArr;\r\n const cols = keys;\r\n const l = cols.length;\r\n for (let i = 0; i < data.length; i++) {\r\n const d = data[i];\r\n const o = {};\r\n for (let j = 0; j < l; j++) {\r\n o[cols[j]] = d[j];\r\n }\r\n formatted.push(o);\r\n }\r\n return formatted;\r\n }\r\n\r\n dataFormatted = { headers: [], data: [] };\r\n onFileRemove() {\r\n this.dataFormatted = {\r\n headers: [],\r\n data: []\r\n }\r\n }\r\n\r\n fileData: any[][] = [];\r\n onFileAdd(obj: File) {\r\n // this.loadingService.isLoading.next(true);\r\n\r\n /* wire up file reader */\r\n const reader: FileReader = new FileReader();\r\n reader.onload = (e: any) => {\r\n /* read workbook */\r\n const bstr: string = e.target.result;\r\n const wb: XLSX.WorkBook = XLSX.read(bstr, { type: 'binary' });\r\n\r\n /* grab first sheet */\r\n const wsname: string = wb.SheetNames[0];\r\n const ws: XLSX.WorkSheet = wb.Sheets[wsname];\r\n\r\n /* save data */\r\n let data = (XLSX.utils.sheet_to_json(ws, { header: 1 }));\r\n data = data.filter(x => x.length > 0);\r\n this.fileData = data;\r\n this.dataFormatted.headers = data[0];\r\n\r\n this.dataFormatted.data = this.arrayToJSONObject(data);\r\n\r\n\r\n\r\n if (this.dataFormatted.data.length > 0) {\r\n let dataTempo = [...this.dataTest]\r\n let newid = this.dataTest[this.dataTest.length - 1].id + 1\r\n\r\n console.log(this.areaSelect)\r\n this.dataFormatted.data.forEach(x=>{\r\n dataTempo.push({\r\n id:newid++,\r\n areaID:this.areaSelect.some(area => area.ID === x.AreaID) ? x.AreaID : '',\r\n systemTypeID:x.SystemTypeID,\r\n name:x.SystemName,\r\n sort:x.Sort,\r\n qty:x.Qty,\r\n sytemOrigin:x.systemOrigin\r\n })\r\n })\r\n this.dataTest = dataTempo \r\n }\r\n\r\n };\r\n reader.readAsBinaryString(obj);\r\n }\r\n\r\n\r\n\r\n\r\n // Area\r\n\r\n AreaTypeMultipleData:any[]=[]\r\n dataArea:any[]=[\r\n {\r\n id:0,\r\n name:\"\",\r\n sort:1,\r\n alternate:false,\r\n }\r\n ]\r\n\r\n popupNewArea:boolean = false\r\n \r\n openNewAreas(){\r\n this.popupNewArea = true;\r\n }\r\n\r\n closeAddMultipleArea(){\r\n this.dataArea = [\r\n {\r\n id:0,\r\n name:\"\",\r\n sort:1,\r\n alternate:false,\r\n }\r\n ]\r\n this.onFileRemove()\r\n this.popupNewArea = false\r\n\r\n }\r\n\r\n SaveAreaMultiples(){\r\n\r\n if (this.dataArea.length > 0){\r\n let contador = 0\r\n this.dataArea.forEach(x=>{\r\n \r\n let model = {\r\n method: \"Insert_EstimateAreaCE\",\r\n estimateid: this.estimateid,\r\n name: x.name,\r\n id: 0,\r\n sort: x.sort,\r\n inactive: 0,\r\n alternate: x.alternate == true || x.alternate == 1 || x.alternate == \"1\" ? 1 : 0,\r\n };\r\n this.MapInformationService.SaveInfoSites(model)\r\n .subscribe(resp=>{\r\n contador++\r\n if (contador == this.dataArea.length){\r\n this.toast.success(\"Created Successfully\")\r\n this.popupNewArea = false\r\n this.dataArea = [\r\n {\r\n id:0,\r\n name:\"\",\r\n sort:1,\r\n alternate:false,\r\n }\r\n ]\r\n this.reload.emit()\r\n }\r\n })\r\n })\r\n }\r\n\r\n\r\n }\r\n\r\n newAreaMultiple(){\r\n let dataTempo = [...this.dataArea]\r\n const newSort = this.dataArea[this.dataArea.length - 1].sort + 1\r\n dataTempo.push({\r\n id:this.dataArea.length++,\r\n name:\"\",\r\n sort:newSort,\r\n alternate:false\r\n })\r\n this.dataArea = dataTempo \r\n }\r\n\r\n\r\n deleteAreaMultiple(data){\r\n if (this.dataArea.length > 1){\r\n const dataTempo = this.dataArea.filter(x=>x.id != data.id)\r\n this.dataArea = dataTempo\r\n }\r\n }\r\n\r\n onFileAddAreas(obj: File) {\r\n // this.loadingService.isLoading.next(true);\r\n\r\n /* wire up file reader */\r\n const reader: FileReader = new FileReader();\r\n reader.onload = (e: any) => {\r\n /* read workbook */\r\n const bstr: string = e.target.result;\r\n const wb: XLSX.WorkBook = XLSX.read(bstr, { type: 'binary' });\r\n\r\n /* grab first sheet */\r\n const wsname: string = wb.SheetNames[0];\r\n const ws: XLSX.WorkSheet = wb.Sheets[wsname];\r\n\r\n /* save data */\r\n let data = (XLSX.utils.sheet_to_json(ws, { header: 1 }));\r\n data = data.filter(x => x.length > 0);\r\n this.fileData = data;\r\n this.dataFormatted.headers = data[0];\r\n\r\n this.dataFormatted.data = this.arrayToJSONObject(data);\r\n\r\n\r\n\r\n if (this.dataFormatted.data.length > 0) {\r\n let dataTempo = [...this.dataArea]\r\n let newid = this.dataArea[this.dataArea.length - 1].id + 1\r\n\r\n this.dataFormatted.data.forEach(x=>{\r\n dataTempo.push({\r\n id:newid++,\r\n name:x.Name,\r\n sort:x.Sort,\r\n alternate:x.isAlternate\r\n })\r\n })\r\n this.dataArea = dataTempo \r\n }\r\n\r\n };\r\n reader.readAsBinaryString(obj);\r\n }\r\n\r\n\r\n refreshTree(){\r\n this.reload.emit()\r\n }\r\n\r\n selectfirtsArea(){\r\n }\r\n\r\n dataSystemSelected:any\r\n\r\n OpenNewAI(dataSystem){\r\n this.openAI = true\r\n this.dataSystemSelected = dataSystem\r\n }\r\n\r\n hidden(){\r\n this.openAI = false\r\n }\r\n\r\n\r\n returnImage(datasystem){\r\n \r\n this.dataTest.map(x=>{\r\n x = datasystem\r\n return x\r\n })\r\n this.toast.success(\"Image loaded successfully\")\r\n }\r\n\r\n eliminarFoto(datasystem){\r\n \r\n this.dataTest.map(x=>{\r\n x = datasystem\r\n return x\r\n })\r\n this.toast.success(\"Image deleted successfully\")\r\n }\r\n\r\n AsignarSystem(datasystem){\r\n console.log(datasystem)\r\n console.log(this.dataTest)\r\n this.dataTest.map(x=>{\r\n x = datasystem\r\n return x\r\n })\r\n this.toast.success(\"Components loaded successfully\")\r\n }\r\n\r\n\r\n\r\n modal:boolean = false\r\n title:any = \"\"\r\n\r\n\r\n componetsIDS:any[]=[]\r\n\r\n importComponentFromLibrary(dataSystem){\r\n this.modal = true\r\n this.dataSystemSelected = dataSystem\r\n\r\n }\r\n\r\n hiddenImportLibrary(data){\r\n console.log(data)\r\n this.modal= false\r\n }\r\n\r\n\r\n\r\n validateFile() {\r\n this.dataFormatted.data.forEach(x => {\r\n this.estimateService.Get_EstimateAreaSystemDetailsImportCE(x.PARTNUMBER, x.APPNOTES, x.POINTTYPE).subscribe(result => {\r\n let obj = result[0];\r\n if (obj) {\r\n x.FlagApp_Note = obj.App_Note;\r\n x.FlagPart_Number = obj.Part_Number;\r\n x.FlagPoint_Type = obj.Point_Type;\r\n }\r\n\r\n });\r\n });\r\n }\r\n // javascript create JSON object from two dimensional Array\r\n arrayToJSONObject2(arr) {\r\n // header\r\n const keys = arr[0];\r\n\r\n // vacate keys from main array\r\n const newArr = arr.slice(1, arr.length);\r\n\r\n const formatted = [];\r\n const data = newArr;\r\n const cols = keys;\r\n const l = cols.length;\r\n for (let i = 0; i < data.length; i++) {\r\n const d = data[i];\r\n const o = {};\r\n for (let j = 0; j < l; j++) {\r\n o[cols[j]] = d[j];\r\n }\r\n formatted.push(o);\r\n }\r\n return formatted;\r\n }\r\n\r\n onFileRemove2() {\r\n this.dataFormatted = {\r\n headers: [],\r\n data: []\r\n }\r\n }\r\n\r\n onFileAdd2(obj: File) {\r\n\r\n /* wire up file reader */\r\n const reader: FileReader = new FileReader();\r\n reader.onload = (e: any) => {\r\n /* read workbook */\r\n const bstr: string = e.target.result;\r\n const wb: XLSX.WorkBook = XLSX.read(bstr, { type: 'binary' });\r\n\r\n /* grab first sheet */\r\n const wsname: string = wb.SheetNames[0];\r\n const ws: XLSX.WorkSheet = wb.Sheets[wsname];\r\n\r\n /* save data */\r\n let data = (XLSX.utils.sheet_to_json(ws, { header: 1 }));\r\n data = data.filter(x => x.length > 0);\r\n this.fileData = data;\r\n this.dataFormatted.headers = data[0];\r\n\r\n this.dataFormatted.data = this.arrayToJSONObject2(data);\r\n this.validateFile();\r\n\r\n };\r\n reader.readAsBinaryString(obj);\r\n }\r\n\r\n uploadFile() {\r\n let data = this.gridfile.instance.getVisibleRows().map(x => x.data);\r\n\r\n let invalid = data.some(x => !x.TAG || !x.QTY || !x.POINTTYPE || !x.PARTNUMBER || !x.APPNOTES);\r\n\r\n if (invalid) {\r\n this.toast.warning(this.translate.instant('ModuleEditEstimate.msgValues'));\r\n return;\r\n }\r\n\r\n let cantidadAEnviar = data.length;\r\n let cantidadEnviada = 0;\r\n\r\n data.forEach(element => {\r\n this.estimateService.Insert_EstimateAreaSystemDetails(\r\n element.QTY,\r\n element.PARTNUMBER,\r\n element.APPNOTES,\r\n element.TAG,\r\n element.POINTTYPE,\r\n element.POINTNUMBER,\r\n element.SYSTEMID,\r\n 0\r\n ).subscribe(x => {\r\n cantidadEnviada++;\r\n\r\n if (cantidadEnviada == cantidadAEnviar) {\r\n this.toast.success(this.translate.instant('ModuleEditEstimate.msgUpdSucc'));\r\n this.popupImportFromExcel = false;\r\n this.onFileRemove()\r\n // this.updateEstimate({\r\n // selectedItem: {\r\n // PROJECT_NAME: this.estimatenamestr,\r\n // ID: this.estimateid\r\n // }\r\n // });\r\n this.reload.emit()\r\n }\r\n });\r\n });\r\n }\r\n\r\n\r\n reloadDataMaster(){\r\n this.reload.emit()\r\n }\r\n\r\n showpopupSystems:boolean = false\r\n dataTemplate:any[]=[]\r\n showSystems(){\r\n this.MapInformationService.SaveInfoSites({method:\"GetSystemTemplate\"})\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n this.dataTemplate = resp\r\n this.showpopupSystems = true\r\n })\r\n }\r\n\r\n\r\n getTemplate(){\r\n this.MapInformationService.SaveInfoSites({method:\"GetSystemTemplate\"})\r\n .subscribe(resp=>{\r\n console.log(resp)\r\n console.log(this.groupItems)\r\n let idArea = 0\r\n if (this.groupItems.length > 0){\r\n idArea = this.groupItems[0].originalid\r\n }\r\n\r\n if (resp.length > 0){\r\n let dataTempo = []\r\n resp.forEach(x=>{\r\n dataTempo.push({\r\n id:x.ID,\r\n areaID:idArea,\r\n systemTypeID:x.SYSTEMTYPE,\r\n name:x.SYSTEMNAME,\r\n sort:0,\r\n qty:1,\r\n sytemOrigin:x.COPYFROMSYSTEM == 0 || x.COPYFROMSYSTEM == undefined ? null : x.COPYFROMSYSTEM\r\n })\r\n })\r\n this.dataTest = dataTempo \r\n } else {\r\n this.toast.warning(\"You don´t have systems template\")\r\n }\r\n })\r\n }\r\n\r\n \r\n\r\n closeModalTempla(){\r\n this.showpopupSystems = false\r\n this.gridTemplate.instance.deselectAll()\r\n }\r\n\r\n insertData(){\r\n const resp = this.gridTemplate.instance.getSelectedRowsData()\r\n\r\n if (resp.length > 0){\r\n let dataTempo = []\r\n console.log(this.groupItems)\r\n let idArea = 0\r\n if (this.groupItems.length > 0){\r\n idArea = this.groupItems[0].originalid\r\n }\r\n resp.forEach((x, index)=>{\r\n dataTempo.push({\r\n id:x.ID,\r\n areaID:idArea,\r\n systemTypeID:x.SYSTEMTYPE,\r\n name:x.SYSTEMNAME,\r\n sort:x.SORT == undefined ? index : x.SORT,\r\n qty:1,\r\n sytemOrigin:x.COPYFROMSYSTEM == 0 || x.COPYFROMSYSTEM == undefined ? null : x.COPYFROMSYSTEM\r\n })\r\n })\r\n this.dataTest = dataTempo \r\n this.closeModalTempla()\r\n } else {\r\n this.toast.warning(\"You don´t have systems template\")\r\n }\r\n }\r\n\r\n onCleanClick(item){\r\n console.log(item)\r\n console.log(this.dataTest)\r\n this.dataTest.forEach(x=>{\r\n if (x.id == item.id){\r\n x.sytemOrigin = null\r\n }\r\n })\r\n }\r\n\r\n updateMultiplesystemsGrid(){\r\n let nodes = this.getChecked();\r\n\r\n if (nodes.length == 1) {\r\n this.systemid = nodes[0].id\r\n this.getEstimateArea(this.estimateid)\r\n this.getSystemType()\r\n this.popupController = true\r\n return false\r\n }\r\n\r\n this.idsSystem = nodes.map((x) => x.id).join(\",\")\r\n setTimeout(() => {\r\n this.popupEditAreaSystem = true;\r\n // this.customheight = \"auto\";\r\n }, 20);\r\n }\r\n\r\n\r\n openSaveTemplate:boolean = false\r\n saveAsTemplate(){\r\n this.openSaveTemplate = true\r\n }\r\n\r\n SaveTemplate(){\r\n\r\n\r\n this.MapInformationService.SaveInfoSites({method:\"DeleteSystemTemplate\"})\r\n .subscribe(resp=>{\r\n let contador = 0\r\n this.dataTest.forEach((x, index)=>{\r\n const dataFinal = {\r\n isfirst:index == 0 ? 1 : 0,\r\n copyfrom:x.sytemOrigin,\r\n systemname:x.name,\r\n systemtypeid:x.systemTypeID,\r\n sort:x.sort,\r\n method:\"SaveSystemTemplate\"\r\n }\r\n \r\n this.MapInformationService.SaveInfoSites(dataFinal)\r\n .subscribe(resp=>{\r\n contador++\r\n if (contador == this.dataTest.length) {\r\n this.toast.success(\"Template Saved Successfully\")\r\n this.openSaveTemplate = false\r\n // this.getTemplate()\r\n }\r\n })\r\n \r\n })\r\n })\r\n }\r\n\r\n\r\n hideSystem(){\r\n this.HideSystemsData.emit()\r\n }\r\n\r\n}\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TreeviewAreaSystemComponent } from './treeview-area-system.component';\r\nimport { DxDropDownBoxModule,DxButtonModule, DxCheckBoxModule, DxDropDownButtonModule, DxNumberBoxModule, DxPopupModule, DxScrollViewModule, DxSelectBoxModule, DxSwitchModule, DxTextAreaModule, DxTextBoxModule, DxTreeViewModule, DxTagBoxModule, DxDataGridModule } from 'devextreme-angular';\r\nimport { MdbGlobalModule } from '../mdb-global.module';\r\nimport { SystemControllerModule } from 'src/app/pages/estimation/system-controller/system-controller.module';\r\nimport { EditSystemMultipleModule } from '../EditSystemMultiple/EditSystemMultiple.module';\r\nimport { AIestimateModule } from 'src/app/pages/estimation/ai-estimate/ai-estimate.module';\r\nimport { ImportLibraryDinamicModule } from 'src/app/pages/estimation/import-from-library/import-from-library.module';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [TreeviewAreaSystemComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n MdbGlobalModule,\r\n DxTreeViewModule,\r\n DxButtonModule,\r\n DxDropDownButtonModule,\r\n DxPopupModule,\r\n DxScrollViewModule,\r\n DxCheckBoxModule,\r\n DxTextBoxModule,\r\n DxNumberBoxModule,\r\n DxTextAreaModule,\r\n DxSelectBoxModule,\r\n DxSwitchModule,\r\n DxDropDownBoxModule,\r\n SystemControllerModule,\r\n DxTagBoxModule,\r\n DxDataGridModule,\r\n EditSystemMultipleModule,\r\n AIestimateModule,\r\n ImportLibraryDinamicModule\r\n ],\r\n exports: [TreeviewAreaSystemComponent,\r\n ]\r\n})\r\nexport class TreeviewAreaSystemModule { }\r\n","import { ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\n\r\nexport function createTranslateLoader(http: HttpClient) {\r\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [\r\n CommonModule,\r\n TranslateModule.forRoot({\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: createTranslateLoader,\r\n deps: [HttpClient]\r\n },\r\n isolate: false\r\n }),\r\n ],\r\n exports: [TranslateModule],\r\n})\r\nexport class TranlationConfigModule {\r\n\r\n constructor(@Optional() @SkipSelf() parentModule?: TranlationConfigModule) {\r\n if (parentModule) {\r\n throw new Error(\r\n 'TranlationConfigModule is already loaded. Import it in the AppModule only');\r\n }\r\n }\r\n\r\n static forRoot(): ModuleWithProviders {\r\n return {\r\n ngModule: TranlationConfigModule,\r\n // providers: [ShoppingCartService, AccountService]\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 pendingResources: false,\r\n // apiUrlOld: 'https://cube-mia.com/cubeapi/api',\r\n apiUrl: 'http://192.168.0.33/api2/api2',\r\n //Variables Config\r\n //apiBaseUrl: \"https://devapi.cube-usa.com/api6\",\r\n // dateFormat: \"MM/dd/yyyy\",\r\n // moneyFormat: \"$\", \r\n // videoDashboardSelected: \"https://www.google.com/\",\r\n // videoDashboardUnSelected: \"https://www.amazon.com/\",\r\n // whatsNewURL: \"https://www.amazon.com/\",\r\n urlInformation: \"https://wsapi.foresightgps.com/ForesightFlexAPI.ashx?\",\r\n quickbooksurl: \"https://qbapi.cube-usa.com/\",\r\n\r\n // apiMasterVendorUrl: \"http://cube-mia.com/alpsapi/Apls/api\",\r\n // userName: \"qa@sfc-mia.com\", //\r\n // pass: \"123456\", //\r\n fleetuserid: \"487\",\r\n conncode: \"PolarixUSA\",\r\n polarixapiuser: \"terpel\",\r\n polarixapipass: \"fsgpsTerpel\",\r\n // reportingURL: \"http://localhost:1908/\",\r\n // LinkGettingStarted: \"https://cube-usa.com/\",\r\n // LinkCubeFlow: \"https://cube-usa.com/\",\r\n // LinkWhatsNew: \"https://amazon.com/\",\r\n // dashboardURL: \"https://localhost:44376/\",\r\n // newdashboardURL: \"https://cubebi.cube-usa.com/\",\r\n // UseNewDashboard: \"false\",\r\n // websocketserverURL:\"wss://cubewss.polarix.com:8444\",\r\n // cubeAIserverURL: \"http://cubewss.polarix.com:8447/cubeai/:\",\r\n\r\n DashboardComponentsType: {\r\n table: 1,\r\n doughnut: 2,\r\n pie: 3,\r\n bar: 4,\r\n barHorizontal: 5,\r\n Stacked: 6,\r\n indicator: 7,\r\n indicator2: 8,\r\n line: 9,\r\n radar: 10\r\n },\r\n DataTableFiltersType: {\r\n InputTypeNumber: 1,\r\n InputTypeText: 2,\r\n DropDown: 3,\r\n DatePicker: 4,\r\n DatePickerRange: 5\r\n }\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 { 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","/* (ignored) */","/* (ignored) */","/* (ignored) */"],"sourceRoot":"webpack:///"}