Compare commits

..

No commits in common. "master" and "20-job-order-cancel-api" have entirely different histories.

680 changed files with 10758 additions and 121065 deletions

View file

@ -15,78 +15,4 @@ APP_SECRET=b344cd6cd151ae1d61403ed55806c5ce
# Configure your db driver and server_version in config/packages/doctrine.yaml
DATABASE_URL=mysql://db_user:db_password@127.0.0.1:3306/db_name
###< doctrine/doctrine-bundle ###
GMAPS_API_KEY=insert_gmapsapikey_here
# rising tide sms gateway
RT_USER=rt_user
RT_PASS=rt_pass
RT_USAGE_TYPE=rt_usage_type
RT_SHORTCODE=1234
# mosquitto client
MQTT_IP_ADDRESS=localhost
MQTT_PORT=8883
MQTT_CERT=/location/of/cert/file.crt
MQTT_WS_HOST=insert_ip_here
MQTT_WS_PORT=8083
# redis client
REDIS_CLIENT_SCHEME=tcp
REDIS_CLIENT_HOST=127.0.0.1
REDIS_CLIENT_PORT=6379
REDIS_CLIENT_PASSWORD=foobared
# privacy policy ids
POLICY_PROMO=insert_promopolicyid_here
POLICY_THIRD_PARTY=insert_thirdpartypolicyid_here
POLICY_MOBILE=insert_mobilepolicyid_here
# OTP
OTP_MODE=set_to_test_or_random
# geofence
GEOFENCE_ENABLE=set_to_true_or_false
# unknown manufacturer and vehicle ids
CVU_MFG_ID=insert_mfgid_for_unknown_vehicles
CVU_BRAND_ID=insert_brandid_for_unknown_vehicles
# country code prefix
COUNTRY_CODE=+insert_country_code_here
# redis hash
LATEST_ACTIVE_JO=latest_active_jo
# dashboard
DASHBOARD_ENABLE=set_to_true_or_false
# auth token for Inventory API
INVENTORY_API_URL=insert_api_url_here
INVENTORY_API_OCP=insert_ocp_text_here
INVENTORY_API_AUTH_TOKEN_PREFIX=Bearer
INVENTORY_API_AUTH_TOKEN=insert_auth_token_here
# API logging
API_LOGGING=set_to_true_or_false
# customer distance limit in km for mobile
CUST_DISTANCE_LIMIT=5
# customer distance limit in km for admin panel
CUST_DISTANCE_LIMIT_ADMIN_PANEL=5
MAPTILER_API_KEY=map_tiler_api_key
# API version
API_VERSION=insert_api_version_here
#SSL_ENABLE for websockets
SSL_ENABLE=set_to_true_or_false
# for hub filtering round robin
HUB_JO_KEY=hub_jo_count
# hub geofence
HUB_GEOFENCE_ENABLE=set_to_true_or_false
HUB_FILTER_ENABLE=set_to_true_or_false
GMAPS_API_KEY=insertgmapsapikeyhere

8
.gitignore vendored
View file

@ -4,14 +4,6 @@
/public/bundles/
/var/
/vendor/
/sql/
/pem/
/migration/
/kml/
###< symfony/framework-bundle ###
*.swp
/public/warranty_uploads/*
.vscode
*__pycache__
/public/assets/images/insurance-premiums.png

View file

@ -1,2 +0,0 @@
MQTT format for location updates:
`<latitude>:<longitude>`

View file

@ -1,59 +1,22 @@
{
"type": "project",
"license": "proprietary",
"repositories": [
{
"type": "vcs",
"url": "https://github.com/jankstudio/doctrine2-spatial.git"
},
{
"type": "vcs",
"url": "git@gitlab.com:jankstudio1/catalyst-2/api-bundle.git"
},
{
"type": "vcs",
"url": "git@gitlab.com:jankstudio1/catalyst-2/auth-bundle.git"
},
{
"type": "vcs",
"url": "git@gitlab.com:jankstudio1/catalyst-2/menu-bundle.git"
},
{
"type": "vcs",
"url": "https://github.com/arcticzero/php-fcm.git"
}
],
"require": {
"php": "^7.1.3",
"ext-iconv": "*",
"composer/package-versions-deprecated": "1.11.99.4",
"data-dog/audit-bundle": "^0.1.10",
"doctrine/common": "^2",
"doctrine/doctrine-bundle": "^2",
"doctrine/doctrine-migrations-bundle": "^2",
"doctrine/orm": "^2",
"edwinhoksberg/php-fcm": "dev-notif-priority-hotfix",
"creof/doctrine2-spatial": "^1.2",
"guzzlehttp/guzzle": "^6.3",
"hashids/hashids": "^4.1",
"jankstudio/catalyst-api-bundle": "dev-master",
"jankstudio/catalyst-auth-bundle": "dev-master",
"jankstudio/catalyst-menu-bundle": "dev-master",
"jankstudio/doctrine-spatial": "dev-master",
"microsoft/azure-storage-blob": "^1.5",
"predis/predis": "^1.1",
"sensio/framework-extra-bundle": "^5.1",
"setasign/fpdf": "^1.8",
"symfony/asset": "^4.0",
"symfony/console": "^4.0",
"symfony/debug": "^4.0",
"symfony/filesystem": "^4.0",
"symfony/flex": "^1.0",
"symfony/framework-bundle": "^4.0",
"symfony/lts": "^4@dev",
"symfony/maker-bundle": "^1.0",
"symfony/monolog-bundle": "^3.7",
"symfony/process": "^4.0",
"symfony/orm-pack": "^1.0",
"symfony/profiler-pack": "^1.0",
"symfony/security-bundle": "^4.0",
"symfony/translation": "^4.0",
"symfony/twig-bundle": "^4.0",
"symfony/validator": "^4.0",
"symfony/yaml": "^4.0"
@ -61,24 +24,18 @@
"require-dev": {
"doctrine/doctrine-fixtures-bundle": "^3.0",
"symfony/dotenv": "^4.0",
"symfony/stopwatch": "^4.0",
"symfony/thanks": "^1.0",
"symfony/web-profiler-bundle": "^4.0"
"symfony/thanks": "^1.0"
},
"config": {
"preferred-install": {
"*": "dist"
},
"sort-packages": true,
"allow-plugins": {
"composer/package-versions-deprecated": true,
"symfony/flex": true,
"symfony/thanks": true
}
"sort-packages": true
},
"autoload": {
"psr-4": {
"App\\": "src/"
"App\\": "src/",
"Catalyst\\": "catalyst-libs/"
}
},
"autoload-dev": {

6899
composer.lock generated

File diff suppressed because it is too large Load diff

View file

@ -34,32 +34,6 @@ access_keys:
label: Update
- id: role.delete
label: Delete
- id: apiuser
label: API User Access
acls:
- id: apiuser.menu
label: Menu
- id: apiuser.list
label: List
- id: apiuser.add
label: Add
- id: apiuser.update
label: Update
- id: apiuser.delete
label: Delete
- id: apirole
label: API Role Access
acls:
- id: apirole.menu
label: Menu
- id: apirole.list
label: List
- id: apirole.add
label: Add
- id: apirole.update
label: Update
- id: apirole.delete
label: Delete
- id: logistics
label: Logistics Access
acls:
@ -156,8 +130,6 @@ access_keys:
label: Update
- id: customer.delete
label: Delete
- id: customer.dpa
label: Display DPA
- id: location
@ -191,17 +163,6 @@ access_keys:
label: Update
- id: hub.delete
label: Delete
- id: geofence
label: Geofence
acls:
- id: geofence.menu
label: Menu
- id: geofence.list
label: List
- id: geofence.add
label: Add
- id: geofence.delete
label: Delete
- id: rider
label: Rider Access
@ -217,20 +178,6 @@ access_keys:
- id: rider.delete
label: Delete
- id: servicecharge
label: Service Charge
acls:
- id: service_charge.menu
label: Menu
- id: service_charge.list
label: List
- id: service_charge.add
label: Add
- id: service_charge.update
label: Update
- id: service_charge.delete
label: Delete
- id: joborder
label: Job Order
acls:
@ -239,54 +186,17 @@ access_keys:
- id: jo_in.list
label: Incoming
- id: jo_proc.list
label: Dispatch
- id: jo_proc.unlock
label: Dispatch Unlock
label: Processing
- id: jo_assign.list
label: Rider Assignment
- id: jo_assign.unlock
label: Rider Assignment Unlock
label: Assigning
- id: jo_fulfill.list
label: Fulfillment
- id: jo_open.list
label: Open
- id: jo_all.list
label: View All
- id: jo_pdf.list
label: PDF
- id: jo_open.edit
label: Edit
- id: joborder.cancel
label: Cancel
- id: jo_onestep.form
label: One-step Process
- id: jo_onestep.edit
label: One-step Process Edit
- id: jo_walkin.form
label: Walk-in
- id: jo_walkin.edit
label: Walk-in Edit
- id: jo_autoassign.test
label: Autoassign Test
- id: jo_hub.list
label: Hub View
- id: jo_cancel.fulfill
label: Fulfill Cancelled JO
- id: jo_resq_proc.list
label: RESQ Dispatch
- id: support
label: Customer Support Access
acls:
- id: support.menu
label: Menu
- id: general.search
label: Search
- id: warranty.search
label: Customer Battery Search
- id: warranty.upload
label: Warranty Upload
- id: ticket
label: Ticket Access
acls:
@ -314,289 +224,3 @@ access_keys:
label: Update
- id: promo.delete
label: Delete
- id: report
label: Reports
acls:
- id: report.menu
label: Menu
- id: report.reject
label: Rejection Report
- id: report.battery.conflict
label: Battery Conflict Report
- id: report.popapp.comparison
label: Popapp Comparison Report
- id: report.meh.customer
label: RESQ MEH Customer Report
- id: report.warranty.class
label: Warranty Class Report
- id: report.vehicle.battery.compatibility
label: Vehicle Battery Compatibility Report
- id: report.warranty.details
label: Warranty Details Report
- id: report.jo.details
label: Job Order Details Report
- id: report.jo_events
label: Job Order Events Report
- id: report.sms_messages
label: SMS Messages Report
- id: report.jo.auto_assign
label: Auto Assigned Job Order Report
- id: report.jo.advance_order
label: Advance Order Job Order Report
- id: report.customer.source
label: Customer Source Report
- id: report.hub.filter
label: Hub Filter Report
- id: report.warranty.raffle
label: Warranty Raffle Report
- id: report.jo.raffle
label: JO Raffle Report
- id: service
label: Other Services
acls:
- id: service.menu
label: Menu
- id: service.list
label: List
- id: service.add
label: Add
- id: service.update
label: Update
- id: service.delete
label: Delete
- id: partner
label: Partners
acls:
- id: partner.menu
label: Menu
- id: partner.list
label: List
- id: partner.add
label: Add
- id: partner.update
label: Update
- id: partner.delete
label: Delete
- id: review
label: Reviews
acls:
- id: review.menu
label: Menu
- id: review.list
label: List
- id: review.view
label: View
- id: review.delete
label: Delete
- id: privacypolicy
label: Privacy Policy
acls:
- id: privacy_policy.menu
label: Menu
- id: privacy_policy.list
label: List
- id: privacy_policy.add
label: Add
- id: privacy_policy.update
label: Update
- id: privacy_policy.delete
label: Delete
- id: warranty
label: Warranty
acls:
- id: warranty.menu
label: Menu
- id: warranty.list
label: List
- id: warranty.add
label: Add
- id: warranty.update
label: Update
- id: staticcontent
label: Static Content
acls:
- id: static_content.menu
label: Menu
- id: static_content.list
label: List
- id: static_content.add
label: Add
- id: static_content.update
label: Update
- id: static_content.delete
label: Delete
- id: analytics
label: Analytics
acls:
- id: analytics.menu
label: Menu
- id: analytics.forecast
label: Forecasting
- id: sap_battery
label: SAP Battery Access
acls:
- id: sap_battery.menu
label: Menu
- id: sap_battery.list
label: List
- id: sap_battery.add
label: Add
- id: sap_battery.update
label: Update
- id: sap_battery.delete
label: Delete
- id: sap_brand
label: SAP Battery Brand Access
acls:
- id: sap_brand.menu
label: Menu
- id: sap_brand.list
label: List
- id: sap_brand.add
label: Add
- id: sap_brand.update
label: Update
- id: sap_brand.delete
label: Delete
- id: sap_bsize
label: SAP Battery Size Access
acls:
- id: sap_bsize.menu
label: Menu
- id: sap_bsize.list
label: List
- id: sap_bsize.add
label: Add
- id: sap_bsize.update
label: Update
- id: sap_bsize.delete
label: Delete
- id: sap_csize
label: SAP Battery Container Size Access
acls:
- id: sap_csize.menu
label: Menu
- id: sap_csize.list
label: List
- id: sap_csize.add
label: Add
- id: sap_csize.update
label: Update
- id: sap_csize.delete
label: Delete
- id: customer_tag
label: Customer Tags Access
acls:
- id: customer_tag.menu
label: Menu
- id: customer_tag.list
label: List
- id: customer_tag.add
label: Add
- id: customer_tag.update
label: Update
- id: customer_tag.delete
label: Delete
- id: dealer
label: Dealer Access
acls:
- id: dealer.menu
label: Menu
- id: dealer.list
label: List
- id: dealer.add
label: Add
- id: dealer.update
label: Update
- id: dealer.delete
label: Delete
- id: database
label: Database Access
acls:
- id: database.menu
label: Menu
- id: ticket_type
label: Ticket Type Access
acls:
- id: ticket_type.menu
label: Menu
- id: ticket_type.list
label: List
- id: ticket_type.add
label: Add
- id: ticket_type.update
label: Update
- id: ticket_type.delete
label: Delete
- id: subticket_type
label: Sub Ticket Type Access
acls:
- id: subticket_type.menu
label: Menu
- id: subticket_type.list
label: List
- id: subticket_type.add
label: Add
- id: subticket_type.update
label: Update
- id: subticket_type.delete
label: Delete
- id: emergency_type
label: Emergency Type Access
acls:
- id: emergency_type.menu
label: Menu
- id: emergency_type.list
label: List
- id: emergency_type.add
label: Add
- id: emergency_type.update
label: Update
- id: emergency_type.delete
label: Delete
- id: ownership_type
label: Ownership Type Access
acls:
- id: ownership_type.menu
label: Menu
- id: ownership_type.list
label: List
- id: ownership_type.add
label: Add
- id: ownership_type.update
label: Update
- id: ownership_type.delete
label: Delete
- id: customer_location
label: Customer Location Access
acls:
- id: cust_location.menu
label: Menu
- id: cust_location.list
label: List
- id: cust_location.add
label: Add
- id: cust_location.update
label: Update
- id: cust_location.delete
label: Delete

View file

@ -1,124 +0,0 @@
access_keys:
- id: warranty
label: Warranty Access
acls:
- id: warranty.list
label: List
- id: warranty.find.serial
label: Find by Serial
- id: warranty.find.platenumber
label: Find by Plate Number
- id: warranty.register.battery
label: Register Battery
- id: warranty.claim
label: Claim
- id: warranty.update
label: Update
- id: warranty.cancel
label: Cancel
- id: warranty.delete
label: Delete
- id: warranty.set.privacypolicy
label: Set Privacy Policy
- id: warranty.list.serial
label: List by Serial
- id: batterybrand
label: Battery Brand Access
acls:
- id: batterybrand.list
label: List
- id: batterysize
label: Battery Size Access
acls:
- id: batterysize.list
label: List
- id: battery
label: Battery Access
acls:
- id: battery.list
label: List
- id: vmanufacturer
label: Vehicle Manufacturer Access
acls:
- id: vmanufacturer.list
label: List
- id: vehicle
label: Vehicle Access
acls:
- id: vehicle.list
label: List
- id: privacypolicy
label: Privacy Policy
acls:
- id: privacypolicy.find
label: Find Privacy Policy
- id: customer
label: Customer
acls:
- id: customer.register
label: Register Customer
- id: customer.verify
label: Verify Customer
- id: municipality
label: Municipality
acls:
- id: municipality.list
label: List
- id: dealer
label: Dealer
acls:
- id: dealer.list
label: List
- id: warrantyserial
label: Warranty Serial
acls:
- id: warrantyserial.upload
label: Upload
- id: tapi_vmanufacturer
label: Third Party Vehicle Manufacturer Access
acls:
- id: tapi_vmanufacturer.list
label: List Third Party Vehicle Manufacturers
- id: tapi_vehicle
label: Third Party Vehicle Make Access
acls:
- id: tapi_vehicle.list
label: List Third Party Vehicles
- id: tapi_promo
label: Third Party Promo Access
acls:
- id: tapi_promo.list
label: List Third Party Promos
- id: tapi_battery
label: Third Party Battery Access
acls:
- id: tapi_battery_compatible.list
label: List Third Party Compatible Batteries
- id: tapi_jo
label: Third Party Job Order Access
acls:
- id: tapi_jo.request
label: Third Party Request Job Order
- id: tapi_jo.get.estimate
label: Third Party Get Estimate
- id: tapi_jo.get.ongoing
label: Third Party Get Ongoing Job Order
- id: tapi_jo.cancel
label: Third Party Cancel Job Order
- id: tapi_jo.get.invoice
label: Third Party Get Job Order Invoice
- id: tapi_jo.location.support
label: Third Party Check Location Support
- id: tapi_jo.nearest_hub.get
label: Third Party Get Nearest Hub and Slots
- id: tapi_jo.schedule_option.status
label: Third Party Schedule Option Status
- id: tapi_jo.get.info
label: Third Party Get Job Order Info
- id: tapi_service
label: Third Party Service Access
acls:
- id: tapi_service.list
label: List Third Party Services

View file

@ -2,6 +2,7 @@
return [
Symfony\Bundle\FrameworkBundle\FrameworkBundle::class => ['all' => true],
Doctrine\Bundle\DoctrineCacheBundle\DoctrineCacheBundle::class => ['all' => true],
Doctrine\Bundle\DoctrineBundle\DoctrineBundle::class => ['all' => true],
Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle::class => ['all' => true],
Symfony\Bundle\SecurityBundle\SecurityBundle::class => ['all' => true],
@ -10,8 +11,4 @@ return [
Symfony\Bundle\TwigBundle\TwigBundle::class => ['all' => true],
Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle::class => ['dev' => true, 'test' => true],
Symfony\Bundle\WebProfilerBundle\WebProfilerBundle::class => ['dev' => true, 'test' => true],
Symfony\Bundle\MonologBundle\MonologBundle::class => ['all' => true],
Catalyst\ApiBundle\CatalystApiBundle::class => ['all' => true],
Catalyst\AuthBundle\CatalystAuthBundle::class => ['all' => true],
Catalyst\MenuBundle\CatalystMenuBundle::class => ['all' => true],
];

View file

@ -1,179 +0,0 @@
main_menu:
- id: home
acl: dashboard.menu
label: Dashboard
icon: flaticon-line-graph
- id: user
acl: user.menu
label: User
icon: flaticon-users
- id: user_list
acl: user.list
label: Users
parent: user
- id: role_list
acl: role.list
label: Roles
parent: user
- id: apiuser
acl: apiuser.menu
label: API User
icon: flaticon-users
- id: api_user_list
acl: apiuser.list
label: API Users
parent: apiuser
- id: api_role_list
acl: apirole.list
label: API Roles
parent: apiuser
- id: logistics
acl: logistics.menu
label: Logistics
icon: fa fa-truck
- id: rider_list
acl: rider.list
label: Riders
parent: logistics
- id: service_charge_list
acl: service_charge.list
label: Service Charges
parent: logistics
- id: battery
acl: battery.menu
label: Battery
icon: fa fa-battery-3
- id: battery_list
acl: battery.list
label: Batteries
parent: battery
- id: bmfg_list
acl: bmfg.list
label: Manufacturers
parent: battery
- id: bmodel_list
acl: bmodel.list
label: Models
parent: battery
- id: bsize_list
acl: bsize.list
label: Sizes
parent: battery
- id: promo_list
acl: promo.list
label: Promos
parent: battery
- id: vehicle
acl: vehicle.menu
label: Vehicle
icon: fa fa-car
- id: vehicle_list
acl: vehicle.list
label: Vehicles
parent: vehicle
- id: vmfg_list
acl: vmfg.list
label: Manufacturers
parent: vehicle
- id: location
acl: location.menu
label: Location
icon: fa fa-home
- id: outlet_list
acl: outlet.menu
label: Outlet
parent: location
- id: hub_list
acl: hub.menu
label: Hub
parent: location
- id: geofence_list
acl: geofence.menu
label: Geofence
parent: location
- id: joborder
acl: joborder.menu
label: Job Order
icon: flaticon-calendar-3
- id: jo_onestep_form
acl: jo_onestep.form
label: One-step Process
parent: joborder
- id: jo_walkin_form
acl: jo_walkin.form
label: Walk-in
parent: joborder
- id: jo_open
acl: jo_open.list
label: Open
parent: joborder
- id: jo_all
acl: jo_all.list
label: View All
parent: joborder
- id: support
acl: support.menu
label: Customer Support
icon: flaticon-support
- id: customer_list
acl: customer.list
label: Customers
parent: support
- id: ticket_list
acl: ticket.list
label: Tickets
parent: support
- id: general_search
acl: general.search
label: Search
parent: support
- id: warranty_search
acl: warranty.search
label: Customer Battery Search
parent: support
- id: privacy_policy_list
acl: privacy_policy.list
label: Privacy Policy
parent: support
- id: warranty_list
acl: warranty.list
label: Warranty
parent: support
- id: warranty_upload
acl: warranty.upload
label: Warranty Upload
parent: support
- id: static_content_list
acl: static_content.list
label: Static Content
parent: support
- id: service
acl: service.menu
label: Other Services
icon: flaticon-squares
- id: service_list
acl: service.list
label: Services
parent: service
- id: partner
acl: partner.menu
label: Partners
icon: flaticon-network
- id: partner_list
acl: partner.list
label: Partners
parent: partner
- id: review_list
acl: review.list
label: Reviews
parent: partner

View file

@ -1,177 +0,0 @@
# Put parameters here that don't need to change on each machine where the app is deployed
# https://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration
parameters:
map_default:
latitude: 14.6091
longitude: 121.0223
image_upload_directory: '%kernel.project_dir%/public/uploads'
job_order_refresh_interval: 300000
api_acl_file: 'api_acl.yaml'
api_access_key: 'api_access_keys'
app_acl_file: 'acl.yaml'
app_access_key: 'access_keys'
cvu_brand_id: "%env(CVU_BRAND_ID)%"
country_code: "%env(COUNTRY_CODE)%"
services:
# default configuration for services in *this* file
_defaults:
autowire: true # Automatically injects dependencies in your services.
autoconfigure: true # Automatically registers your services as commands, event subscribers, etc.
public: false # Allows optimizing the container by removing unused services; this also means
# fetching services directly from the container via $container->get() won't work.
# The best practice is to be explicit about your dependencies anyway.
# makes classes in src/ available to be used as services
# this creates a service per class whose id is the fully-qualified class name
App\:
resource: '../src/*'
exclude: '../src/{Entity,Migrations,Tests,Menu,Access}'
# controllers are imported separately to make sure services can be injected
# as action arguments even if you don't extend any base controller class
App\Controller\:
resource: '../src/Controller'
tags: ['controller.service_arguments']
# add more service definitions when explicit configuration is needed
# please note that last definitions always *replace* previous ones
App\Menu\Generator:
arguments:
$router: "@router.default"
$cache_dir: "%kernel.cache_dir%"
$config_dir: "%kernel.root_dir%/../config"
App\Service\FileUploader:
arguments:
$target_dir: '%image_upload_directory%'
App\Service\MapTools:
arguments:
$em: "@doctrine.orm.entity_manager"
$gmaps_api_key: "%env(GMAPS_API_KEY)%"
$cust_dist_limit: "%env(CUST_DISTANCE_LIMIT)%"
App\Service\RisingTideGateway:
arguments:
$em: "@doctrine.orm.entity_manager"
$user: "%env(RT_USER)%"
$pass: "%env(RT_PASS)%"
$usage_type: "%env(RT_USAGE_TYPE)%"
$shortcode: "%env(RT_SHORTCODE)%"
App\Service\MQTTClient:
arguments:
$redis_client: "@App\\Service\\RedisClientProvider"
$key: "mqtt_events"
App\Service\APNSClient:
arguments:
$redis_client: "@App\\Service\\RedisClientProvider"
App\Service\RedisClientProvider:
arguments:
$scheme: "%env(REDIS_CLIENT_SCHEME)%"
$host: "%env(REDIS_CLIENT_HOST)%"
$port: "%env(REDIS_CLIENT_PORT)%"
$password: "%env(REDIS_CLIENT_PASSWORD)%"
App\Service\GeofenceTracker:
arguments:
$geofence_flag: "%env(GEOFENCE_ENABLE)%"
App\Service\WarrantyHandler:
arguments:
$em: "@doctrine.orm.entity_manager"
App\Command\SetCustomerPrivacyPolicyCommand:
arguments:
$policy_promo: "%env(POLICY_PROMO)%"
$policy_third_party: "%env(POLICY_THIRD_PARTY)%"
$policy_mobile: "%env(POLICY_MOBILE)%"
App\Command\CreateCustomerFromWarrantyCommand:
arguments:
$cvu_mfg_id: "%env(CVU_MFG_ID)%"
$cvu_brand_id: "%env(CVU_BRAND_ID)%"
# rider tracker service
App\Service\RiderTracker:
arguments:
$redis_client: "@App\\Service\\RedisClientProvider"
# invoice generator
App\Service\InvoiceGenerator\CMBInvoiceGenerator: ~
# invoice generator interface
App\Service\InvoiceGeneratorInterface: "@App\\Service\\InvoiceGenerator\\CMBInvoiceGenerator"
# job order generator
App\Service\JobOrderHandler\CMBJobOrderHandler:
arguments:
$country_code: "%env(COUNTRY_CODE)%"
#job order generator interface
App\Service\JobOrderHandlerInterface: "@App\\Service\\JobOrderHandler\\CMBJobOrderHandler"
# customer generator
App\Service\CustomerHandler\CMBCustomerHandler:
arguments:
$country_code: "%env(COUNTRY_CODE)%"
# customer generator interface
App\Service\CustomerHandlerInterface: "@App\\Service\\CustomerHandler\\CMBCustomerHandler"
# rider assignment
App\Service\RiderAssignmentHandler\CMBRiderAssignmentHandler: ~
# rider assignment interface
App\Service\RiderAssignmentHandlerInterface: "@App\\Service\\RiderAssignmentHandler\\CMBRiderAssignmentHandler"
# rider API service
App\Service\RiderAPIHandler\CMBRiderAPIHandler:
arguments:
$country_code: "%env(COUNTRY_CODE)%"
# rider API interface
App\Service\RiderAPIHandlerInterface: "@App\\Service\\RiderAPIHandler\\CMBRiderAPIHandler"
# map manager
#App\Service\GISManager\Bing: ~
App\Service\GISManager\OpenStreet: ~
#App\Service\GISManager\Google: ~
#App\Service\GISManagerInterface: "@App\\Service\\GISManager\\Bing"
App\Service\GISManagerInterface: "@App\\Service\\GISManager\\OpenStreet"
#App\Service\GISManagerInterface: "@App\\Service\\GISManager\\Google"
App\EventListener\JobOrderActiveCacheListener:
arguments:
$jo_cache: "@App\\Service\\JobOrderCache"
$mqtt: "@App\\Service\\MQTTClient"
tags:
- name: 'doctrine.orm.entity_listener'
event: 'postUpdate'
entity: 'App\Entity\JobOrder'
- name: 'doctrine.orm.entity_listener'
event: 'postRemove'
entity: 'App\Entity\JobOrder'
- name: 'doctrine.orm.entity_listener'
event: 'postPersist'
entity: 'App\Entity\JobOrder'
App\Service\JobOrderCache:
arguments:
$redis_prov: "@App\\Service\\RedisClientProvider"
$active_jo_key: "%env(LOCATION_JO_ACTIVE_KEY)%"
App\Service\RiderCache:
arguments:
$redis_prov: "@App\\Service\\RedisClientProvider"
$loc_key: "%env(LOCATION_RIDER_ACTIVE_KEY)%"
$status_key: "%env(STATUS_RIDER_KEY)%"
# API logging
App\EventSubscriber\LogSubscriber:
arguments:
$api_log_flag: "%env(API_LOGGING)%"

View file

@ -16,19 +16,6 @@ main_menu:
label: Roles
parent: user
- id: apiuser
acl: apiuser.menu
label: API User
icon: flaticon-users
- id: api_user_list
acl: apiuser.list
label: API Users
parent: apiuser
- id: api_role_list
acl: apirole.list
label: API Roles
parent: apiuser
- id: logistics
acl: logistics.menu
label: Logistics
@ -63,28 +50,6 @@ main_menu:
label: Promos
parent: battery
- id: sapbattery
acl: sap_battery.menu
label: SAP Battery
icon: fa fa-battery
- id: sapbattery_list
acl: sap_battery.list
label: SAP Batteries
parent: sapbattery
- id: sapbrand_list
acl: sap_brand.list
label: SAP Battery Brands
parent: sapbattery
- id: sapbsize_list
acl: sap_bsize.list
label: SAP Battery Sizes
parent: sapbattery
- id: sapcsize_list
acl: sap_csize.list
label: SAP Container Sizes
parent: sapbattery
- id: vehicle
acl: vehicle.menu
label: Vehicle
@ -110,14 +75,6 @@ main_menu:
acl: hub.menu
label: Hub
parent: location
- id: dealer_list
acl: dealer.list
label: Dealer
parent: location
- id: geofence_list
acl: geofence.menu
label: Geofence
parent: location
- id: joborder
@ -130,32 +87,16 @@ main_menu:
parent: joborder
- id: jo_proc
acl: jo_proc.list
label: Dispatch
parent: joborder
- id: jo_resq_proc
acl: jo_resq_proc.list
label: RESQ Dispatch
label: Processing
parent: joborder
- id: jo_assign
acl: jo_assign.list
label: Rider Assignment
label: Assigning
parent: joborder
- id: jo_fulfill
acl: jo_fulfill.list
label: Fulfillment
parent: joborder
- id: jo_open
acl: jo_open.list
label: Open
parent: joborder
- id: jo_all
acl: jo_all.list
label: View All
parent: joborder
- id: jo_hub_view
acl: jo_hub.list
label: Hub View
parent: joborder
- id: support
acl: support.menu
@ -169,87 +110,3 @@ main_menu:
acl: ticket.list
label: Tickets
parent: support
- id: general_search
acl: general.search
label: Search
parent: support
- id: warranty_search
acl: warranty.search
label: Customer Battery Search
parent: support
- id: privacy_policy_list
acl: privacy_policy.list
label: Privacy Policy
parent: support
- id: warranty_list
acl: warranty.list
label: Warranty
parent: support
- id: warranty_upload
acl: warranty.upload
label: Warranty Upload
parent: support
- id: static_content_list
acl: static_content.list
label: Static Content
parent: support
- id: customertag_list
acl: customer_tag.list
label: Customer Tags
parent: support
- id: service
acl: service.menu
label: Other Services
icon: flaticon-squares
- id: service_list
acl: service.list
label: Services
parent: service
- id: partner
acl: partner.menu
label: Partners
icon: flaticon-network
- id: partner_list
acl: partner.list
label: Partners
parent: partner
- id: review_list
acl: review.list
label: Reviews
parent: partner
- id: analytics
acl: analytics.menu
label: Analytics
icon: flaticon-graphic
- id: analytics_forecast_form
acl: analytics.forecast
label: Forecasting
parent: analytics
- id: database
acl: database.menu
label: Database
icon: fa fa-database
- id: ticket_type_list
acl: ticket_type.menu
label: Ticket Types
parent: database
- id: subticket_type_list
acl: subticket_type.menu
label: Sub Ticket Types
parent: database
- id: emergency_type_list
acl: emergency_type.menu
label: Emergency Types
parent: database
- id: ownership_type_list
acl: ownership_type.menu
label: Ownership Types
parent: database
- id: customer_location_list
acl: cust_location.menu
label: Customer Locations
parent: database

View file

@ -1,944 +0,0 @@
catalyst_auth:
main:
user_entity: "App\\Entity\\User"
acl_data:
- id: dashboard
label: Dashboard Access
acls:
- id: dashboard.menu
label: Menu
- id: user
label: User Access
acls:
- id: user.menu
label: Menu
- id: user.list
label: List
- id: user.add
label: Add
- id: user.update
label: Update
- id: user.delete
label: Delete
- id: user.role.sadmin
label: Super Admin Role
- id: user.profile
label: User Profile
- id: role
label: Role Access
acls:
- id: role.menu
label: Menu
- id: role.list
label: List
- id: role.add
label: Add
- id: role.update
label: Update
- id: role.delete
label: Delete
- id: apiuser
label: API User Access
acls:
- id: apiuser.menu
label: Menu
- id: apiuser.list
label: List
- id: apiuser.add
label: Add
- id: apiuser.update
label: Update
- id: apiuser.delete
label: Delete
- id: apirole
label: API Role Access
acls:
- id: apirole.menu
label: Menu
- id: apirole.list
label: List
- id: apirole.add
label: Add
- id: apirole.update
label: Update
- id: apirole.delete
label: Delete
- id: logistics
label: Logistics Access
acls:
- id: logistics.menu
label: Menu
- id: battery
label: Battery Access
acls:
- id: battery.menu
label: Menu
- id: battery.list
label: List
- id: battery.add
label: Add
- id: battery.update
label: Update
- id: battery.delete
label: Delete
- id: bmfg
label: Battery Manufacturer Access
acls:
- id: bmfg.menu
label: Menu
- id: bmfg.list
label: List
- id: bmfg.add
label: Add
- id: bmfg.update
label: Update
- id: bmfg.delete
label: Delete
- id: bmodel
label: Battery Model Access
acls:
- id: bmodel.menu
label: Menu
- id: bmodel.list
label: List
- id: bmodel.add
label: Add
- id: bmodel.update
label: Update
- id: bmodel.delete
label: Delete
- id: bsize
label: Battery Size Access
acls:
- id: bsize.menu
label: Menu
- id: bsize.list
label: List
- id: bsize.add
label: Add
- id: bsize.update
label: Update
- id: bsize.delete
label: Delete
- id: vehicle
label: Vehicle Access
acls:
- id: vehicle.menu
label: Menu
- id: vehicle.list
label: List
- id: vehicle.add
label: Add
- id: vehicle.update
label: Update
- id: vehicle.delete
label: Delete
- id: vmfg
label: Vehicle Manufacturer Access
acls:
- id: vmfg.menu
label: Menu
- id: vmfg.list
label: List
- id: vmfg.add
label: Add
- id: vmfg.update
label: Update
- id: vmfg.delete
label: Delete
- id: customer
label: Customer Access
acls:
- id: customer.menu
label: Menu
- id: customer.list
label: List
- id: customer.add
label: Add
- id: customer.update
label: Update
- id: customer.delete
label: Delete
- id: customer.dpa
label: Display DPA
- id: location
label: Location Access
acls:
- id: location.menu
label: Menu
- id: outlet
label: Outlet Access
acls:
- id: outlet.menu
label: Menu
- id: outlet.list
label: List
- id: outlet.add
label: Add
- id: outlet.update
label: Update
- id: outlet.delete
label: Delete
- id: hub
label: Hub Access
acls:
- id: hub.menu
label: Menu
- id: hub.list
label: List
- id: hub.add
label: Add
- id: hub.update
label: Update
- id: hub.delete
label: Delete
- id: geofence
label: Geofence
acls:
- id: geofence.menu
label: Menu
- id: geofence.list
label: List
- id: geofence.add
label: Add
- id: geofence.delete
label: Delete
- id: rider
label: Rider Access
acls:
- id: rider.menu
label: Menu
- id: rider.list
label: List
- id: rider.add
label: Add
- id: rider.update
label: Update
- id: rider.delete
label: Delete
- id: servicecharge
label: Service Charge
acls:
- id: service_charge.menu
label: Menu
- id: service_charge.list
label: List
- id: service_charge.add
label: Add
- id: service_charge.update
label: Update
- id: service_charge.delete
label: Delete
- id: joborder
label: Job Order
acls:
- id: joborder.menu
label: Menu
- id: jo_in.list
label: Incoming
- id: jo_proc.list
label: Dispatch
- id: jo_proc.unlock
label: Dispatch Unlock
- id: jo_assign.list
label: Rider Assignment
- id: jo_assign.unlock
label: Rider Assignment Unlock
- id: jo_fulfill.list
label: Fulfillment
- id: jo_open.list
label: Open
- id: jo_all.list
label: View All
- id: jo_pdf.list
label: PDF
- id: jo_open.edit
label: Edit
- id: joborder.cancel
label: Cancel
- id: jo_onestep.form
label: One-step Process
- id: jo_onestep.edit
label: One-step Process Edit
- id: jo_walkin.form
label: Walk-in
- id: jo_walkin.edit
label: Walk-in Edit
- id: jo_autoassign.test
label: Autoassign Test
- id: jo_hub.list
label: Hub View
- id: jo_cancel.fulfill
label: Fulfill Cancelled JO
- id: jo_resq_proc.list
label: RESQ Dispatch
- id: jo_resq_all.list
label: RESQ All
- id: support
label: Customer Support Access
acls:
- id: support.menu
label: Menu
- id: general.search
label: Search
- id: warranty.search
label: Customer Battery Search
- id: warranty.upload
label: Warranty Upload
- id: ticket
label: Ticket Access
acls:
- id: ticket.menu
label: Menu
- id: ticket.list
label: List
- id: ticket.add
label: Add
- id: ticket.update
label: Update
- id: ticket.delete
label: Delete
- id: promo
label: Promo Access
acls:
- id: promo.menu
label: Menu
- id: promo.list
label: List
- id: promo.add
label: Add
- id: promo.update
label: Update
- id: promo.delete
label: Delete
- id: report
label: Reports
acls:
- id: report.menu
label: Menu
- id: report.reject
label: Rejection Report
- id: report.battery.conflict
label: Battery Conflict Report
- id: report.popapp.comparison
label: Popapp Comparison Report
- id: report.meh.customer
label: RESQ MEH Customer Report
- id: report.warranty.class
label: Warranty Class Report
- id: report.vehicle.battery.compatibility
label: Vehicle Battery Compatibility Report
- id: report.warranty.details
label: Warranty Details Report
- id: report.jo.details
label: Job Order Details Report
- id: report.jo_events
label: Job Order Events Report
- id: report.sms_messages
label: SMS Messages Report
- id: report.jo.auto_assign
label: Auto Assigned Job Order Report
- id: report.jo.advance_order
label: Advance Order Job Order Report
- id: report.customer.source
label: Customer Source Report
- id: report.hub.filter
label: Hub Filter Report
- id: report.warranty.raffle
label: Warranty Raffle Report
- id: report.jo.raffle
label: JO Raffle Report
- id: service
label: Other Services
acls:
- id: service.menu
label: Menu
- id: service.list
label: List
- id: service.add
label: Add
- id: service.update
label: Update
- id: service.delete
label: Delete
- id: partner
label: Partners
acls:
- id: partner.menu
label: Menu
- id: partner.list
label: List
- id: partner.add
label: Add
- id: partner.update
label: Update
- id: partner.delete
label: Delete
- id: motolite_event
label: Motolite Events
acls:
- id: motolite_event.menu
label: Menu
- id: motolite_event.list
label: List
- id: motolite_event.add
label: Add
- id: motolite_event.update
label: Update
- id: motolite_event.delete
label: Delete
- id: review
label: Reviews
acls:
- id: review.menu
label: Menu
- id: review.list
label: List
- id: review.view
label: View
- id: review.delete
label: Delete
- id: privacypolicy
label: Privacy Policy
acls:
- id: privacy_policy.menu
label: Menu
- id: privacy_policy.list
label: List
- id: privacy_policy.add
label: Add
- id: privacy_policy.update
label: Update
- id: privacy_policy.delete
label: Delete
- id: warranty
label: Warranty
acls:
- id: warranty.menu
label: Menu
- id: warranty.list
label: List
- id: warranty.add
label: Add
- id: warranty.update
label: Update
- id: staticcontent
label: Static Content
acls:
- id: static_content.menu
label: Menu
- id: static_content.list
label: List
- id: static_content.add
label: Add
- id: static_content.update
label: Update
- id: static_content.delete
label: Delete
- id: analytics
label: Analytics
acls:
- id: analytics.menu
label: Menu
- id: analytics.forecast
label: Forecasting
- id: sap_battery
label: SAP Battery Access
acls:
- id: sap_battery.menu
label: Menu
- id: sap_battery.list
label: List
- id: sap_battery.add
label: Add
- id: sap_battery.update
label: Update
- id: sap_battery.delete
label: Delete
- id: sap_brand
label: SAP Battery Brand Access
acls:
- id: sap_brand.menu
label: Menu
- id: sap_brand.list
label: List
- id: sap_brand.add
label: Add
- id: sap_brand.update
label: Update
- id: sap_brand.delete
label: Delete
- id: sap_bsize
label: SAP Battery Size Access
acls:
- id: sap_bsize.menu
label: Menu
- id: sap_bsize.list
label: List
- id: sap_bsize.add
label: Add
- id: sap_bsize.update
label: Update
- id: sap_bsize.delete
label: Delete
- id: sap_csize
label: SAP Battery Container Size Access
acls:
- id: sap_csize.menu
label: Menu
- id: sap_csize.list
label: List
- id: sap_csize.add
label: Add
- id: sap_csize.update
label: Update
- id: sap_csize.delete
label: Delete
- id: customer_tag
label: Customer Tags Access
acls:
- id: customer_tag.menu
label: Menu
- id: customer_tag.list
label: List
- id: customer_tag.add
label: Add
- id: customer_tag.update
label: Update
- id: customer_tag.delete
label: Delete
- id: review_tag
label: Review Tags Access
acls:
- id: review_tag.menu
label: Menu
- id: review_tag.list
label: List
- id: review_tag.add
label: Add
- id: review_tag.update
label: Update
- id: review_tag.delete
label: Delete
- id: dealer
label: Dealer Access
acls:
- id: dealer.menu
label: Menu
- id: dealer.list
label: List
- id: dealer.add
label: Add
- id: dealer.update
label: Update
- id: dealer.delete
label: Delete
- id: database
label: Database Access
acls:
- id: database.menu
label: Menu
- id: ticket_type
label: Ticket Type Access
acls:
- id: ticket_type.menu
label: Menu
- id: ticket_type.list
label: List
- id: ticket_type.add
label: Add
- id: ticket_type.update
label: Update
- id: ticket_type.delete
label: Delete
- id: subticket_type
label: Sub Ticket Type Access
acls:
- id: subticket_type.menu
label: Menu
- id: subticket_type.list
label: List
- id: subticket_type.add
label: Add
- id: subticket_type.update
label: Update
- id: subticket_type.delete
label: Delete
- id: emergency_type
label: Emergency Type Access
acls:
- id: emergency_type.menu
label: Menu
- id: emergency_type.list
label: List
- id: emergency_type.add
label: Add
- id: emergency_type.update
label: Update
- id: emergency_type.delete
label: Delete
- id: ownership_type
label: Ownership Type Access
acls:
- id: ownership_type.menu
label: Menu
- id: ownership_type.list
label: List
- id: ownership_type.add
label: Add
- id: ownership_type.update
label: Update
- id: ownership_type.delete
label: Delete
- id: service_offering
label: Service Offering Access
acls:
- id: service_offering.menu
label: Menu
- id: service_offering.list
label: List
- id: service_offering.add
label: Add
- id: service_offering.update
label: Update
- id: service_offering.delete
label: Delete
- id: price_tier
label: Price Tier
acls:
- id: price_tier.menu
label: Menu
- id: price_tier.list
label: List
- id: price_tier.add
label: Add
- id: price_tier.update
label: Update
- id: price_tier.delete
label: Delete
- id: item_type
label: Item Type
acls:
- id: item_type.menu
label: Menu
- id: item_type.list
label: List
- id: item_type.add
label: Add
- id: item_type.update
label: Update
- id: item_type.delete
label: Delete
- id: item
label: Item
acls:
- id: item.menu
label: Menu
- id: item_pricing
label: Item Pricing
acls:
- id: item_pricing.update
label: Update
api:
user_entity: "App\\Entity\\ApiUser"
acl_data:
- id: warranty
label: Warranty Access
acls:
- id: warranty.list
label: List
- id: warranty.find.serial
label: Find by Serial
- id: warranty.find.platenumber
label: Find by Plate Number
- id: warranty.register.battery
label: Register Battery
- id: warranty.claim
label: Claim
- id: warranty.update
label: Update
- id: warranty.cancel
label: Cancel
- id: warranty.delete
label: Delete
- id: warranty.set.privacypolicy
label: Set Privacy Policy
- id: warranty.list.serial
label: List by Serial
- id: batterybrand
label: Battery Brand Access
acls:
- id: batterybrand.list
label: List
- id: batterysize
label: Battery Size Access
acls:
- id: batterysize.list
label: List
- id: battery
label: Battery Access
acls:
- id: battery.list
label: List
- id: vmanufacturer
label: Vehicle Manufacturer Access
acls:
- id: vmanufacturer.list
label: List
- id: vehicle
label: Vehicle Access
acls:
- id: vehicle.list
label: List
- id: privacypolicy
label: Privacy Policy
acls:
- id: privacypolicy.find
label: Find Privacy Policy
- id: customer
label: Customer
acls:
- id: customer.register
label: Register Customer
- id: customer.verify
label: Verify Customer
- id: municipality
label: Municipality
acls:
- id: municipality.list
label: List
- id: dealer
label: Dealer
acls:
- id: dealer.list
label: List
- id: warrantyserial
label: Warranty Serial
acls:
- id: warrantyserial.upload
label: Upload
- id: hub
label: Hub Access
acls:
- id: hub.list
label: List
- id: joborder
label: Job Order Access
acls:
- id: joborder.find
label: Find Job Order
- id: tapi_vmanufacturer
label: Third Party Vehicle Manufacturer Access
acls:
- id: tapi_vmanufacturer.list
label: List Third Party Vehicle Manufacturers
- id: tapi_vehicle
label: Third Party Vehicle Make Access
acls:
- id: tapi_vehicle.list
label: List Third Party Vehicles
- id: tapi_promo
label: Third Party Promo Access
acls:
- id: tapi_promo.list
label: List Third Party Promos
- id: tapi_battery
label: Third Party Battery Access
acls:
- id: tapi_battery_compatible.list
label: List Third Party Compatible Batteries
- id: tapi_jo
label: Third Party Job Order Access
acls:
- id: tapi_jo.request
label: Third Party Request Job Order
- id: tapi_jo.get.estimate
label: Third Party Get Estimate
- id: tapi_jo.get.ongoing
label: Third Party Get Ongoing Job Order
- id: tapi_jo.cancel
label: Third Party Cancel Job Order
- id: tapi_jo.get.invoice
label: Third Party Get Job Order Invoice
- id: tapi_jo.location.support
label: Third Party Check Location Support
- id: tapi_jo.nearest_hub.get
label: Third Party Get Nearest Hub and Slots
- id: tapi_jo.schedule_option.status
label: Third Party Schedule Option Status
- id: tapi_jo.get.info
label: Third Party Get Job Order Info
- id: tapi_service
label: Third Party Service Access
acls:
- id: tapi_service.list
label: List Third Party Services
cust_api_v2:
user_entity: "App\\Entity\\CustomerUser"
acl_data:
- id: cust_api_v2.auth
label: Authentication
acls:
- id: cust_api_v2.auth.register
label: Register
- id: cust_api_v2.auth.confirm
label: Confirm Number
- id: cust_api_v2.auth.validate
label: Validate Code
- id: cust_api_v2.auth.resend_code
label: Resend Code
- id: cust_api_v2.customer
label: Customer
acls:
- id: cust_api_v2.customer.info
label: Info
- id: cust_api_v2.customer.update
label: Update
- id: cust_api_v2.customer.status
label: Status
- id: cust_api_v2.customer.hash
label: Hash
- id: cust_api_v2.device
label: Device
acls:
- id: cust_api_v2.device.id
label: Update
- id: cust_api_v2.invoice
label: Invoice
acls:
- id: cust_api_v2.invoice.estimate
label: Estimate
- id: cust_api_v2.jo
label: Job Order
acls:
- id: cust_api_v2.jo.ongoing
label: List Ongoing
- id: cust_api_v2.jo.invoice
label: Get Invoice
- id: cust_api_v2.jo.cancel
label: Cancel
- id: cust_api_v2.jo.info
label: Info
- id: cust_api_v2.jo.history
label: History
- id: cust_api_v2.jo.latest
label: Latest
- id: cust_api_v2.jo.all_ongoing
label: List All Ongoing
- id: cust_api_v2.jo.ongoing_count
label: List Ongoing Count
- id: cust_api_v2.jo.create
label: Create
- id: cust_api_v2.jo.request
label: Request
- id: cust_api_v2.jo.completed
label: List Completed
- id: cust_api_v2.location
label: Location
acls:
- id: cust_api_v2.location.support
label: Get Support Status
- id: cust_api_v2.location.nearest_hub_and_slots
label: List Nearest Hub and Slots
- id: cust_api_v2.location.create
label: Create
- id: cust_api_v2.location.list
label: List
- id: cust_api_v2.partner
label: Partner
acls:
- id: cust_api_v2.partner.info
label: Info
- id: cust_api_v2.partner.closest
label: List Closest Partners
- id: cust_api_v2.partner.review
label: Review
- id: cust_api_v2.privacy
label: Privacy
acls:
- id: cust_api_v2.privacy.settings
label: Get Privacy Settings
- id: cust_api_v2.promo
label: Promo
acls:
- id: cust_api_v2.promo.list
label: Get Promos
- id: cust_api_v2.rider
label: Rider
acls:
- id: cust_api_v2.rider.status
label: Status
- id: cust_api_v2.rider.rating
label: Rate
- id: cust_api_v2.schedule
label: Schedule
acls:
- id: cust_api_v2.schedule.status
label: Get Schedule Option Status
- id: cust_api_v2.service
label: Service
acls:
- id: cust_api_v2.service.list
label: List
- id: cust_api_v2.vehicle
label: Vehicle
acls:
- id: cust_api_v2.vehicle.mfgs
label: List Manufacturers
- id: cust_api_v2.vehicle.makes
label: List Makes
- id: cust_api_v2.vehicle.create
label: Add
- id: cust_api_v2.vehicle.update
label: Update
- id: cust_api_v2.vehicle.list
label: List
- id: cust_api_v2.vehicle.batteries
label: Compatible Batteries
- id: cust_api_v2.vehicle.delete
label: Delete
- id: cust_api_v2.warranty
label: Warranty
acls:
- id: cust_api_v2.warranty.activate
label: Activate
- id: cust_api_v2.warranty.check
label: Check Status
- id: cust_api_v2.warranty.register
label: Register

View file

@ -1,308 +0,0 @@
catalyst_menu:
main:
- id: home
acl: dashboard.menu
label: '[menu.dashboard]'
icon: flaticon-line-graph
order: 1
- id: user
acl: user.menu
label: '[menu.user]'
icon: flaticon-users
order: 2
- id: user_list
acl: user.list
label: '[menu.user.users]'
parent: user
- id: role_list
acl: role.list
label: '[menu.user.roles]'
parent: user
- id: apiuser
acl: apiuser.menu
label: '[menu.apiuser]'
icon: flaticon-users
order: 3
- id: api_user_list
acl: apiuser.list
label: '[menu.apiuser.users]'
parent: apiuser
- id: api_role_list
acl: apirole.list
label: '[menu.apiuser.roles]'
parent: apiuser
- id: logistics
acl: logistics.menu
label: '[menu.logistics]'
icon: fa fa-truck
order: 4
- id: rider_list
acl: rider.list
label: '[menu.logistics.riders]'
parent: logistics
- id: battery
acl: battery.menu
label: '[menu.battery]'
icon: fa fa-battery-3
order: 5
- id: battery_list
acl: battery.list
label: '[menu.battery.batteries]'
parent: battery
- id: bmfg_list
acl: bmfg.list
label: '[menu.battery.manufacturers]'
parent: battery
- id: bmodel_list
acl: bmodel.list
label: '[menu.battery.models]'
parent: battery
- id: bsize_list
acl: bsize.list
label: '[menu.battery.sizes]'
parent: battery
- id: promo_list
acl: promo.list
label: '[menu.battery.promos]'
parent: battery
- id: sapbattery
acl: sap_battery.menu
label: '[menu.sapbattery]'
icon: fa fa-battery
order: 6
- id: sapbattery_list
acl: sap_battery.list
label: '[menu.sapbattery.batteries]'
parent: sapbattery
- id: sapbrand_list
acl: sap_brand.list
label: '[menu.sapbattery.brands]'
parent: sapbattery
- id: sapbsize_list
acl: sap_bsize.list
label: '[menu.sapbattery.sizes]'
parent: sapbattery
- id: sapcsize_list
acl: sap_csize.list
label: '[menu.sapbattery.csizes]'
parent: sapbattery
- id: vehicle
acl: vehicle.menu
label: '[menu.vehicle]'
icon: fa fa-car
order: 7
- id: vehicle_list
acl: vehicle.list
label: '[menu.vehicle.vehicles]'
parent: vehicle
- id: vmfg_list
acl: vmfg.list
label: '[menu.vehicle.manufacturers]'
parent: vehicle
- id: location
acl: location.menu
label: '[menu.location]'
icon: fa fa-home
order: 8
- id: outlet_list
acl: outlet.menu
label: '[menu.location.outlets]'
parent: location
- id: hub_list
acl: hub.menu
label: '[menu.location.hubs]'
parent: location
- id: dealer_list
acl: dealer.list
label: '[menu.location.dealers]'
parent: location
- id: geofence_list
acl: geofence.menu
label: '[menu.location.geofence]'
parent: location
- id: joborder
acl: joborder.menu
label: '[menu.joborder]'
icon: flaticon-calendar-3
order: 9
- id: jo_in
acl: jo_in.list
label: '[menu.joborder.incoming]'
parent: joborder
- id: jo_proc
acl: jo_proc.list
label: '[menu.joborder.dispatch]'
parent: joborder
- id: jo_resq_proc
acl: jo_resq_proc.list
label: '[menu.joborder.resqdispatch]'
parent: joborder
- id: jo_assign
acl: jo_assign.list
label: '[menu.joborder.assignment]'
parent: joborder
- id: jo_fulfill
acl: jo_fulfill.list
label: '[menu.joborder.fulfillment]'
parent: joborder
- id: jo_open
acl: jo_open.list
label: '[menu.joborder.open]'
parent: joborder
- id: jo_all
acl: jo_all.list
label: '[menu.joborder.viewall]'
parent: joborder
- id: jo_hub_view
acl: jo_hub.list
label: '[menu.joborder.hubview]'
parent: joborder
- id: jo_resq_all
acl: jo_resq_all.list
label: '[menu.joborder.resqall]'
parent: joborder
- id: support
acl: support.menu
label: '[menu.support]'
icon: flaticon-support
order: 11
- id: customer_list
acl: customer.list
label: '[menu.support.customers]'
parent: support
- id: ticket_list
acl: ticket.list
label: '[menu.support.tickets]'
parent: support
- id: general_search
acl: general.search
label: '[menu.support.search]'
parent: support
- id: warranty_search
acl: warranty.search
label: '[menu.support.warrantysearch]'
parent: support
- id: privacy_policy_list
acl: privacy_policy.list
label: '[menu.support.privacypolicy]'
parent: support
- id: warranty_list
acl: warranty.list
label: '[menu.support.warranty]'
parent: support
- id: warranty_upload
acl: warranty.upload
label: '[menu.support.warrantyupload]'
parent: support
- id: static_content_list
acl: static_content.list
label: '[menu.support.staticcontent]'
parent: support
- id: customertag_list
acl: customer_tag.list
label: '[menu.support.customertags]'
parent: support
- id: reviewtag_list
acl: review_tag.list
label: '[menu.support.reviewtags]'
parent: support
- id: service
acl: service.menu
label: '[menu.service]'
icon: flaticon-squares
order: 12
- id: service_list
acl: service.list
label: '[menu.service.services]'
parent: service
- id: partner
acl: partner.menu
label: '[menu.partner]'
icon: flaticon-network
order: 13
- id: partner_list
acl: partner.list
label: '[menu.partner.partners]'
parent: partner
- id: review_list
acl: review.list
label: '[menu.partner.reviews]'
parent: partner
- id: motolite_event
acl: motolite_event.menu
label: '[menu.motolite_event]'
icon: flaticon-event-calendar-symbol
order: 14
- id: motolite_event_list
acl: motolite_event.list
label: '[menu.motolite_event.events]'
parent: motolite_event
- id: analytics
acl: analytics.menu
label: '[menu.analytics]'
icon: flaticon-graphic
order: 15
- id: analytics_forecast_form
acl: analytics.forecast
label: '[menu.analytics.forecasting]'
parent: analytics
- id: database
acl: database.menu
label: '[menu.database]'
icon: fa fa-database
order: 16
- id: ticket_type_list
acl: ticket_type.menu
label: '[menu.database.tickettypes]'
parent: database
- id: subticket_type_list
acl: subticket_type.menu
label: '[menu.database.subtickettypes]'
parent: database
- id: emergency_type_list
acl: emergency_type.menu
label: '[menu.database.emergencytypes]'
parent: database
- id: ownership_type_list
acl: ownership_type.menu
label: '[menu.database.ownershiptypes]'
parent: database
- id: service_offering_list
acl: service_offering.menu
label: '[menu.database.serviceofferings]'
parent: database
- id: item_type_list
acl: item_type.menu
label: '[menu.database.itemtypes]'
parent: database
- id: item
acl: item.menu
label: Item Management
icon: fa fa-boxes
order: 10
- id: price_tier_list
acl: price_tier.list
label: Price Tiers
parent: item
- id: item_pricing
acl: item_pricing.update
label: Item Pricing
parent: item

View file

@ -1,19 +0,0 @@
monolog:
handlers:
main:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log"
level: debug
channels: ["!event"]
# uncomment to get logging in your browser
# you may have to allow bigger header sizes in your Web server configuration
#firephp:
# type: firephp
# level: info
#chromephp:
# type: chromephp
# level: info
console:
type: console
process_psr_3_messages: false
channels: ["!event", "!doctrine", "!console"]

View file

@ -3,4 +3,4 @@ web_profiler:
intercept_redirects: false
framework:
profiler: { only_exceptions: true }
profiler: { only_exceptions: false }

View file

@ -11,8 +11,6 @@ doctrine:
driver: 'pdo_mysql'
server_version: '5.7'
charset: utf8mb4
options:
!php/const PDO::MYSQL_ATTR_LOCAL_INFILE: true
# With Symfony 3.3, remove the `resolve:` prefix
url: '%env(resolve:DATABASE_URL)%'
@ -21,7 +19,6 @@ doctrine:
point: CrEOF\Spatial\DBAL\Types\Geometry\PointType
polygon: CrEOF\Spatial\DBAL\Types\Geometry\PolygonType
linestring: CrEOF\Spatial\DBAL\Types\Geometry\LineStringType
multipolygon: CrEOF\Spatial\DBAL\Types\Geometry\MultiPolygonType
orm:
auto_generate_proxy_classes: '%kernel.debug%'
naming_strategy: doctrine.orm.naming_strategy.underscore
@ -41,8 +38,6 @@ doctrine:
stcollect: CrEOF\Spatial\ORM\Query\AST\Functions\PostgreSql\STCollect
stsnaptogrid: CrEOF\Spatial\ORM\Query\AST\Functions\PostgreSql\STSnapToGrid
stoverlaps: CrEOF\Spatial\ORM\Query\AST\Functions\PostgreSql\STOverlaps
# for match against
match_against: App\Doctrine\MatchAgainst
numeric_functions:
# for postgresql
starea: CrEOF\Spatial\ORM\Query\AST\Functions\PostgreSql\STArea

View file

@ -1,8 +0,0 @@
# As of Symfony 5.1, deprecations are logged in the dedicated "deprecation" channel when it exists
#monolog:
# channels: [deprecation]
# handlers:
# deprecation:
# type: stream
# channels: [deprecation]
# path: php://stderr

View file

@ -1,18 +0,0 @@
monolog:
handlers:
main:
type: fingers_crossed
action_level: error
handler: nested
excluded_http_codes: [404, 405]
buffer_size: 50 # How many messages should be saved? Prevent memory leaks
nested:
type: stream
path: php://stderr
level: debug
formatter: monolog.formatter.json
console:
type: console
process_psr_3_messages: false
channels: ["!event", "!doctrine"]

View file

@ -5,104 +5,25 @@ security:
algorithm: bcrypt
cost: 12
providers:
user_provider:
user:
entity:
class: App\Entity\User
property: username
api_provider:
entity:
class: App\Entity\ApiUser
property: api_key
api_v2_provider:
entity:
class: App\Entity\CustomerUser
property: api_key
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
new_rider_api_login:
pattern: ^\/rider_api\/login$
methods: [POST]
security: false
login:
pattern: ^\/login$
methods: [GET]
security: false
tracker:
pattern: ^\/track\/
methods: [GET]
security: false
api:
pattern: ^\/api\/
security: false
sms:
pattern: ^/sms\/
security: false
rider_api:
pattern: ^\/rapi\/
security: false
test_capi:
pattern: ^\/test_capi\/
security: false
insurance:
pattern: ^\/insurance\/
security: false
paymongo:
pattern: ^\/paymongo\/
security: false
cust_api_v2:
pattern: ^\/apiv2\/(?!register|register\/|number_confirm|number_confirm\/|code_validate|code_validate\/|resend_code|resend_code\/|version_check|version_check\/|account|account\/|account_code_validate|account_code_validate\/|account_resend_code|account_resend_code\/)
provider: api_v2_provider
access_denied_handler: Catalyst\ApiBundle\Service\AccessDeniedHandler
stateless: true
guard:
authenticators:
- Catalyst\ApiBundle\Security\Authenticator
cust_api_v2_guest:
pattern: ^\/apiv2\/(register|register\/|number_confirm|number_confirm\/|code_validate|code_validate\/|resend_code|resend_code\/|version_check|version_check\/|account|account\/|account_code_validate|account_code_validate\/|account_resend_code|account_resend_code\/)
security: false
warranty_api:
pattern: ^\/capi\/
provider: api_provider
access_denied_handler: Catalyst\ApiBundle\Service\AccessDeniedHandler
stateless: true
guard:
authenticators:
- Catalyst\ApiBundle\Security\Authenticator
new_rider_api:
pattern: ^\/rider_api\/
provider: api_provider
access_denied_handler: Catalyst\ApiBundle\Service\AccessDeniedHandler
stateless: true
guard:
authenticators:
- Catalyst\ApiBundle\Security\Authenticator
third_party_api:
pattern: ^\/tapi\/
provider: api_provider
access_denied_handler: Catalyst\ApiBundle\Service\AccessDeniedHandler
stateless: true
guard:
authenticators:
- Catalyst\ApiBundle\Security\Authenticator
main:
provider: user_provider
form_login:
login_path: login
check_path: login
@ -113,8 +34,6 @@ security:
secret: '%env(APP_SECRET)%'
lifetime: 604800
path: /
user_checker: Catalyst\AuthBundle\Service\UserChecker
switch_user: { role: ROLE_SUPER_ADMIN }
# activate different ways to authenticate

View file

@ -1,13 +0,0 @@
monolog:
handlers:
main:
type: fingers_crossed
action_level: error
handler: nested
excluded_http_codes: [404, 405]
channels: ["!event"]
nested:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log"
level: debug

View file

@ -1,6 +1,7 @@
framework:
default_locale: en
default_locale: '%locale%'
translator:
default_path: '%kernel.project_dir%/translations'
paths:
- '%kernel.project_dir%/translations'
fallbacks:
- en
- '%locale%'

View file

@ -4,8 +4,3 @@ twig:
strict_variables: '%kernel.debug%'
globals:
gmaps_api_key: "%env(GMAPS_API_KEY)%"
maptiler_api_key: "%env(MAPTILER_API_KEY)%"
mqtt_host: "%env(MQTT_WS_HOST)%"
mqtt_port: "%env(MQTT_WS_PORT)%"
dashboard_enable: "%env(DASHBOARD_ENABLE)%"
ssl_enable: "%env(SSL_ENABLE)%"

View file

@ -1,186 +0,0 @@
main_menu:
- id: home
acl: dashboard.menu
label: Dashboard
icon: flaticon-line-graph
- id: user
acl: user.menu
label: User
icon: flaticon-users
- id: user_list
acl: user.list
label: Users
parent: user
- id: role_list
acl: role.list
label: Roles
parent: user
- id: apiuser
acl: apiuser.menu
label: API User
icon: flaticon-users
- id: api_user_list
acl: apiuser.list
label: API Users
parent: apiuser
- id: api_role_list
acl: apirole.list
label: API Roles
parent: apiuser
- id: logistics
acl: logistics.menu
label: Logistics
icon: fa fa-truck
- id: rider_list
acl: rider.list
label: Riders
parent: logistics
- id: battery
acl: battery.menu
label: Battery
icon: fa fa-battery-3
- id: battery_list
acl: battery.list
label: Batteries
parent: battery
- id: bmfg_list
acl: bmfg.list
label: Manufacturers
parent: battery
- id: bmodel_list
acl: bmodel.list
label: Models
parent: battery
- id: bsize_list
acl: bsize.list
label: Sizes
parent: battery
- id: promo_list
acl: promo.list
label: Promos
parent: battery
- id: vehicle
acl: vehicle.menu
label: Vehicle
icon: fa fa-car
- id: vehicle_list
acl: vehicle.list
label: Vehicles
parent: vehicle
- id: vmfg_list
acl: vmfg.list
label: Manufacturers
parent: vehicle
- id: location
acl: location.menu
label: Location
icon: fa fa-home
- id: outlet_list
acl: outlet.menu
label: Outlet
parent: location
- id: hub_list
acl: hub.menu
label: Hub
parent: location
- id: geofence_list
acl: geofence.menu
label: Geofence
parent: location
- id: joborder
acl: joborder.menu
label: Job Order
icon: flaticon-calendar-3
- id: jo_in
acl: jo_in.list
label: Incoming
parent: joborder
- id: jo_proc
acl: jo_proc.list
label: Dispatch
parent: joborder
- id: jo_assign
acl: jo_assign.list
label: Rider Assignment
parent: joborder
- id: jo_fulfill
acl: jo_fulfill.list
label: Fulfillment
parent: joborder
- id: jo_open
acl: jo_open.list
label: Open
parent: joborder
- id: jo_all
acl: jo_all.list
label: View All
parent: joborder
- id: jo_hub.view
label: Hub View
parent: joborder
- id: support
acl: support.menu
label: Customer Support
icon: flaticon-support
- id: customer_list
acl: customer.list
label: Customers
parent: support
- id: ticket_list
acl: ticket.list
label: Tickets
parent: support
- id: general_search
acl: general.search
label: Search
parent: support
- id: warranty_search
acl: warranty.search
label: Customer Battery Search
parent: support
- id: privacy_policy_list
acl: privacy_policy.list
label: Privacy Policy
parent: support
- id: warranty_list
acl: warranty.list
label: Warranty
parent: support
- id: warranty_upload
acl: warranty.upload
label: Warranty Upload
parent: support
- id: static_content_list
acl: static_content.list
label: Static Content
parent: support
- id: service
acl: service.menu
label: Other Services
icon: flaticon-squares
- id: service_list
acl: service.list
label: Services
parent: service
- id: partner
acl: partner.menu
label: Partners
icon: flaticon-network
- id: partner_list
acl: partner.list
label: Partners
parent: partner
- id: review_list
acl: review.list
label: Reviews
parent: partner

View file

@ -1,185 +0,0 @@
# Put parameters here that don't need to change on each machine where the app is deployed
# https://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration
parameters:
map_default:
latitude: 14.6091
longitude: 121.0223
image_upload_directory: '%kernel.project_dir%/public/uploads'
job_order_refresh_interval: 300000
api_acl_file: 'api_acl.yaml'
api_access_key: 'api_access_keys'
app_acl_file: 'acl.yaml'
app_access_key: 'access_keys'
cvu_brand_id: "%env(CVU_BRAND_ID)%"
country_code: "%env(COUNTRY_CODE)%"
api_version: "%env(API_VERSION)%"
services:
# default configuration for services in *this* file
_defaults:
autowire: true # Automatically injects dependencies in your services.
autoconfigure: true # Automatically registers your services as commands, event subscribers, etc.
public: false # Allows optimizing the container by removing unused services; this also means
# fetching services directly from the container via $container->get() won't work.
# The best practice is to be explicit about your dependencies anyway.
# makes classes in src/ available to be used as services
# this creates a service per class whose id is the fully-qualified class name
App\:
resource: '../src/*'
exclude: '../src/{Entity,Migrations,Tests,Menu,Access}'
# controllers are imported separately to make sure services can be injected
# as action arguments even if you don't extend any base controller class
App\Controller\:
resource: '../src/Controller'
tags: ['controller.service_arguments']
# add more service definitions when explicit configuration is needed
# please note that last definitions always *replace* previous ones
App\Menu\Generator:
arguments:
$router: "@router.default"
$cache_dir: "%kernel.cache_dir%"
$config_dir: "%kernel.root_dir%/../config"
App\Service\FileUploader:
arguments:
$target_dir: '%image_upload_directory%'
App\Service\MapTools:
arguments:
$em: "@doctrine.orm.entity_manager"
$gmaps_api_key: "%env(GMAPS_API_KEY)%"
$cust_dist_limit: "%env(CUST_DISTANCE_LIMIT)%"
App\Service\RisingTideGateway:
arguments:
$em: "@doctrine.orm.entity_manager"
$user: "%env(RT_USER)%"
$pass: "%env(RT_PASS)%"
$usage_type: "%env(RT_USAGE_TYPE)%"
$shortcode: "%env(RT_SHORTCODE)%"
App\Service\MQTTClient:
arguments:
$redis_client: "@App\\Service\\RedisClientProvider"
$key: "mqtt_events"
App\Service\APNSClient:
arguments:
$redis_client: "@App\\Service\\RedisClientProvider"
App\Service\RedisClientProvider:
arguments:
$scheme: "%env(REDIS_CLIENT_SCHEME)%"
$host: "%env(REDIS_CLIENT_HOST)%"
$port: "%env(REDIS_CLIENT_PORT)%"
$password: "%env(REDIS_CLIENT_PASSWORD)%"
App\Service\GeofenceTracker:
arguments:
$geofence_flag: "%env(GEOFENCE_ENABLE)%"
App\Service\WarrantyHandler:
arguments:
$em: "@doctrine.orm.entity_manager"
App\Command\SetCustomerPrivacyPolicyCommand:
arguments:
$policy_promo: "%env(POLICY_PROMO)%"
$policy_third_party: "%env(POLICY_THIRD_PARTY)%"
$policy_mobile: "%env(POLICY_MOBILE)%"
App\Command\CreateCustomerFromWarrantyCommand:
arguments:
$cvu_mfg_id: "%env(CVU_MFG_ID)%"
$cvu_brand_id: "%env(CVU_BRAND_ID)%"
# rider tracker service
App\Service\RiderTracker:
arguments:
$redis_client: "@App\\Service\\RedisClientProvider"
# invoice generator
App\Service\InvoiceGenerator\ResqInvoiceGenerator: ~
# invoice generator interface
App\Service\InvoiceGeneratorInterface: "@App\\Service\\InvoiceGenerator\\ResqInvoiceGenerator"
# job order generator
App\Service\JobOrderHandler\ResqJobOrderHandler:
arguments:
$country_code: "%env(COUNTRY_CODE)%"
#job order generator interface
App\Service\JobOrderHandlerInterface: "@App\\Service\\JobOrderHandler\\ResqJobOrderHandler"
# customer generator
App\Service\CustomerHandler\ResqCustomerHandler:
arguments:
$country_code: "%env(COUNTRY_CODE)%"
# customer generator interface
App\Service\CustomerHandlerInterface: "@App\\Service\\CustomerHandler\\ResqCustomerHandler"
# rider assignment
App\Service\RiderAssignmentHandler\ResqRiderAssignmentHandler: ~
# rider assignment interface
App\Service\RiderAssignmentHandlerInterface: "@App\\Service\\RiderAssignmentHandler\\ResqRiderAssignmentHandler"
# rider API service
App\Service\RiderAPIHandler\ResqRiderAPIHandler:
arguments:
$country_code: "%env(COUNTRY_CODE)%"
App\Service\RiderAPIHandlerInterface: "@App\\Service\\RiderAPIHandler\\ResqRiderAPIHandler"
# map manager
#App\Service\GISManager\Bing: ~
App\Service\GISManager\OpenStreet: ~
#App\Service\GISManager\Google: ~
#App\Service\GISManagerInterface: "@App\\Service\\GISManager\\Bing"
App\Service\GISManagerInterface: "@App\\Service\\GISManager\\OpenStreet"
#App\Service\GISManagerInterface: "@App\\Service\\GISManager\\Google"
App\EventListener\JobOrderActiveCacheListener:
arguments:
$jo_cache: "@App\\Service\\JobOrderCache"
$mqtt: "@App\\Service\\MQTTClient"
tags:
- name: 'doctrine.orm.entity_listener'
event: 'postUpdate'
entity: 'App\Entity\JobOrder'
- name: 'doctrine.orm.entity_listener'
event: 'postRemove'
entity: 'App\Entity\JobOrder'
- name: 'doctrine.orm.entity_listener'
event: 'postPersist'
entity: 'App\Entity\JobOrder'
App\Service\JobOrderCache:
arguments:
$redis_prov: "@App\\Service\\RedisClientProvider"
$active_jo_key: "%env(LOCATION_JO_ACTIVE_KEY)%"
App\Service\RiderCache:
arguments:
$redis_prov: "@App\\Service\\RedisClientProvider"
$loc_key: "%env(LOCATION_RIDER_ACTIVE_KEY)%"
$status_key: "%env(STATUS_RIDER_KEY)%"
# inventory manager
App\Service\InventoryManager:
arguments:
$api_url: "%env(INVENTORY_API_URL)%"
$api_ocp_key: "%env(INVENTORY_API_OCP)%"
$api_auth_prefix: "%env(INVENTORY_API_AUTH_TOKEN_PREFIX)%"
$api_auth_token: "%env(INVENTORY_API_AUTH_TOKEN)%"
# API logging
App\EventSubscriber\LogSubscriber:
arguments:
$api_log_flag: "%env(API_LOGGING)%"

View file

@ -3,3 +3,7 @@
# controller: App\Controller\DefaultController::index
#
#
home:
path: /
controller: App\Controller\HomeController::index

View file

@ -1,11 +0,0 @@
# analytics
analytics_forecast_form:
path: /analytics/forecast
controller: App\Controller\AnalyticsController::forecastForm
methods: [GET]
analytics_forecast_submit:
path: /analytics/forecast
controller: App\Controller\AnalyticsController::forecastSubmit
methods: [POST]

View file

@ -94,134 +94,3 @@ api_jo_cancel:
path: /api/job_order/cancel
controller: App\Controller\APIController:cancelJobOrder
methods: [POST]
api_jo_history:
path: /api/job_order/history
controller: App\Controller\APIController:getJOHistory
methods: [GET]
api_jo_invoice:
path: /api/job_order/invoice
controller: App\Controller\APIController:getJOInvoice
methods: [GET]
api_device_id:
path: /api/device_id
controller: App\Controller\APIController:updateDeviceID
methods: [POST]
api_privacy:
path: /api/privacy
controller: App\Controller\APIController:privacySettings
methods: [POST]
api_resend_code:
path: /api/resend_code
controller: App\Controller\APIController:resendCode
methods: [POST]
api_location_support:
path: /api/location_support
controller: App\Controller\APIController:locationSupport
methods: [GET]
api_activate_warranty:
path: /api/activate_warranty
controller: App\Controller\APIController:activateWarranty
methods: [POST]
api_service_list:
path: /api/services
controller: App\Controller\APIController:listServices
methods: [GET]
api_partner_info:
path: /api/partners/{pid}
controller: App\Controller\APIController:getPartnerInformation
methods: [GET]
api_partner:
path: /api/partners
controller: App\Controller\APIController:getClosestPartners
methods: [GET]
api_partner_review:
path: /api/partners/{pid}/review
controller: App\Controller\APIController:reviewPartner
methods: [POST]
api_nearest_hub_slots:
path: /api/hub_slots
controller: App\Controller\APIController::getNearestHubAndSlots
methods: [GET]
api_new_jo_request:
path: /api/new_job_order
controller: App\Controller\APIController::newRequestJobOrder
methods: [POST]
api_version_check:
path: /api/version_check
controller: App\Controller\APIController::versionCheck
methods: [GET]
api_schedule_option_status:
path: /api/schedule_option_status
controller: App\Controller\APIController::scheduleOptionStatus
methods: [GET]
# paperless warranty / qr code
api_warr_serial_check:
path: /api/warranty/{serial}
controller: App\Controller\APIController::warrantyCheck
methods: [GET]
api_warr_serial_register:
path: /api/warranty/{serial}
controller: App\Controller\APIController::warrantyRegister
methods: [POST]
api_jo_info:
path: /api/job_order/{id}/info
controller: App\Controller\APIController::getJobOrderInfo
methods: [GET]
api_ongoing_job_orders:
path: /api/job_orders/ongoing
controller: App\Controller\APIController::getAllOngoingJobOrders
methods: [GET]
api_ongoing_jo_count:
path: /api/job_orders/ongoing/count
controller: App\Controller\APIController::getOngoingJobOrderCount
methods: [GET]
api_new_location:
path: /api/new_location
controller: App\Controller\APIController::addLocation
methods: [POST]
api_locations:
path: /api/locations
controller: App\Controller\APIController::getLocations
methods: [GET]
api_cust_vehicle_remove:
path: /api/vehicles/{id}/remove
controller: App\Controller\APIController::removeVehicle
methods: [POST]
api_latest_job_order:
path: /api/job_order/latest
controller: App\Controller\APIController::getLatestJobOrder
methods: [GET]
api_customer_hash_get:
path: /api/customer_hash
controller: App\Controller\APIController::getCustomerHash
methods: [GET]
#api_completed_job_orders:
# path: /api/job_orders/completed
# controller: App\Controller\APIController::getCompletedJobOrders
# methods: [GET]

View file

@ -1,33 +0,0 @@
api_role_list:
path: /api-roles
controller: App\Controller\APIRoleController::index
api_role_rows:
path: /api-roles/rows
controller: App\Controller\APIRoleController::rows
methods: [POST]
api_role_create:
path: /api-roles/create
controller: App\Controller\APIRoleController::addForm
methods: [GET]
api_role_create_submit:
path: /api-roles/create
controller: App\Controller\APIRoleController::addSubmit
methods: [POST]
api_role_update:
path: /api-roles/{id}
controller: App\Controller\APIRoleController::updateForm
methods: [GET]
api_role_update_submit:
path: /api-roles/{id}
controller: App\Controller\APIRoleController::updateSubmit
methods: [POST]
api_role_delete:
path: /api-roles/{id}
controller: App\Controller\APIRoleController::destroy
methods: [DELETE]

View file

@ -1,33 +0,0 @@
api_user_list:
path: /apiusers
controller: App\Controller\APIUserController::index
api_user_rows:
path: /apiusers/rows
controller: App\Controller\APIUserController::rows
methods: [POST]
api_user_create:
path: /apiusers/create
controller: App\Controller\APIUserController::addForm
methods: [GET]
api_user_create_submit:
path: /apiusers/create
controller: App\Controller\APIUserController::addSubmit
methods: [POST]
api_user_update:
path: /apiusers/{id}
controller: App\Controller\APIUserController::updateForm
methods: [GET]
api_user_update_submit:
path: /apiusers/{id}
controller: App\Controller\APIUserController::updateSubmit
methods: [POST]
api_user_delete:
path: /apiusers/{id}
controller: App\Controller\APIUserController::destroy
methods: [DELETE]

View file

@ -1,315 +0,0 @@
# api
apiv2_register:
path: /apiv2/register
controller: App\Controller\CustomerAppAPI\AuthController::register
methods: [POST]
apiv2_confirm:
path: /apiv2/number_confirm
controller: App\Controller\CustomerAppAPI\AuthController::confirmNumber
methods: [POST]
apiv2_validate:
path: /apiv2/code_validate
controller: App\Controller\CustomerAppAPI\AuthController::validateCode
methods: [POST]
apiv2_info_get:
path: /apiv2/info
controller: App\Controller\CustomerAppAPI\CustomerController::getInfo
methods: [GET]
apiv2_info_update:
path: /apiv2/info
controller: App\Controller\CustomerAppAPI\CustomerController::updateInfo
methods: [POST]
apiv2_status:
path: /apiv2/status
controller: App\Controller\CustomerAppAPI\CustomerController::getStatus
methods: [GET]
apiv2_vehicle_mfg_list:
path: /apiv2/vehicle/mfgs
controller: App\Controller\CustomerAppAPI\VehicleController::listVehicleManufacturers
methods: [GET]
apiv2_vehicle_make_list:
path: /apiv2/vehicle/mfgs/{mfg_id}/makes
controller: App\Controller\CustomerAppAPI\VehicleController::listVehicleMakes
methods: [GET]
apiv2_cust_vehicle_add:
path: /apiv2/vehicles
controller: App\Controller\CustomerAppAPI\VehicleController::addVehicle
methods: [POST]
apiv2_cust_vehicle_info:
path: /apiv2/vehicles/{id}
controller: App\Controller\CustomerAppAPI\VehicleController::getVehicle
methods: [GET]
apiv2_cust_vehicle_update:
path: /apiv2/vehicles/{id}
controller: App\Controller\CustomerAppAPI\VehicleController::updateVehicle
methods: [POST]
apiv2_cust_vehicle_list:
path: /apiv2/vehicles
controller: App\Controller\CustomerAppAPI\VehicleController::listVehicles
methods: [GET]
apiv2_promo_list:
path: /apiv2/promos
controller: App\Controller\CustomerAppAPI\PromoController::listPromos
methods: [GET]
apiv2_battery_list:
path: /apiv2/vehicles/{vid}/compatible_batteries
controller: App\Controller\CustomerAppAPI\VehicleController::getCompatibleBatteries
methods: [GET]
apiv2_jo_request:
path: /apiv2/job_order
controller: App\Controller\CustomerAppAPI\JobOrderController::requestJobOrder
methods: [POST]
apiv2_estimate:
path: /apiv2/estimate
controller: App\Controller\CustomerAppAPI\InvoiceController::getEstimate
methods: [POST]
apiv2_ongoing:
path: /apiv2/job_order/ongoing
controller: App\Controller\CustomerAppAPI\JobOrderController::getOngoing
methods: [GET]
apiv2_rider_status:
path: /apiv2/rider
controller: App\Controller\CustomerAppAPI\RiderController::getRiderStatus
methods: [GET]
apiv2_rider_rating_add:
path: /apiv2/rider_rating
controller: App\Controller\CustomerAppAPI\RiderController::addRiderRating
methods: [POST]
apiv2_jo_cancel:
path: /apiv2/job_order/cancel
controller: App\Controller\CustomerAppAPI\JobOrderController:cancelJobOrder
methods: [POST]
apiv2_jo_history:
path: /apiv2/job_order/history
controller: App\Controller\CustomerAppAPI\JobOrderController:getJOHistory
methods: [GET]
apiv2_jo_invoice:
path: /apiv2/job_order/invoice
controller: App\Controller\CustomerAppAPI\JobOrderController:getJOInvoice
methods: [GET]
apiv2_device_id:
path: /apiv2/device_id
controller: App\Controller\CustomerAppAPI\DeviceController:updateDeviceID
methods: [POST]
apiv2_privacy:
path: /apiv2/privacy
controller: App\Controller\CustomerAppAPI\PrivacyController:privacySettings
methods: [POST]
apiv2_resend_code:
path: /apiv2/resend_code
controller: App\Controller\CustomerAppAPI\AuthController:resendCode
methods: [POST]
apiv2_location_support:
path: /apiv2/location_support
controller: App\Controller\CustomerAppAPI\LocationController:locationSupport
methods: [GET]
apiv2_activate_warranty:
path: /apiv2/activate_warranty
controller: App\Controller\CustomerAppAPI\WarrantyController:activateWarranty
methods: [POST]
apiv2_service_list:
path: /apiv2/services
controller: App\Controller\CustomerAppAPI\ServiceController:listServices
methods: [GET]
apiv2_partner_info:
path: /apiv2/partners/{pid}
controller: App\Controller\CustomerAppAPI\PartnerController:getPartnerInformation
methods: [GET]
apiv2_partner:
path: /apiv2/partners
controller: App\Controller\CustomerAppAPI\PartnerController:getClosestPartners
methods: [GET]
apiv2_partner_review:
path: /apiv2/partners/{pid}/review
controller: App\Controller\CustomerAppAPI\PartnerController:reviewPartner
methods: [POST]
apiv2_nearest_hub_slots:
path: /apiv2/hub_slots
controller: App\Controller\CustomerAppAPI\LocationController::getNearestHubAndSlots
methods: [GET]
apiv2_new_jo_request:
path: /apiv2/new_job_order
controller: App\Controller\CustomerAppAPI\JobOrderController::newRequestJobOrder
methods: [POST]
apiv2_version_check:
path: /apiv2/version_check
controller: App\Controller\CustomerAppAPI\AppController::versionCheck
methods: [GET]
apiv2_schedule_option_status:
path: /apiv2/schedule_option_status
controller: App\Controller\CustomerAppAPI\ScheduleController::scheduleOptionStatus
methods: [GET]
# paperless warranty / qr code
apiv2_warr_serial_check:
path: /apiv2/warranty/{serial}
controller: App\Controller\CustomerAppAPI\WarrantyController::warrantyCheck
methods: [GET]
apiv2_warr_serial_register:
path: /apiv2/warranty/{serial}
controller: App\Controller\CustomerAppAPI\WarrantyController::warrantyRegister
methods: [POST]
apiv2_jo_info:
path: /apiv2/job_order/{id}/info
controller: App\Controller\CustomerAppAPI\JobOrderController::getJobOrderInfo
methods: [GET]
apiv2_ongoing_job_orders:
path: /apiv2/job_orders/ongoing
controller: App\Controller\CustomerAppAPI\JobOrderController::getAllOngoingJobOrders
methods: [GET]
apiv2_ongoing_jo_count:
path: /apiv2/job_orders/ongoing/count
controller: App\Controller\CustomerAppAPI\JobOrderController::getOngoingJobOrderCount
methods: [GET]
apiv2_new_location:
path: /apiv2/new_location
controller: App\Controller\CustomerAppAPI\LocationController::addLocation
methods: [POST]
apiv2_locations:
path: /apiv2/locations
controller: App\Controller\CustomerAppAPI\LocationController::getLocations
methods: [GET]
apiv2_location_remove:
path: /apiv2/locations/{id}/remove
controller: App\Controller\CustomerAppAPI\LocationController::removeLocation
methods: [POST]
apiv2_cust_vehicle_remove:
path: /apiv2/vehicles/{id}/remove
controller: App\Controller\CustomerAppAPI\VehicleController::removeVehicle
methods: [POST]
apiv2_latest_job_order:
path: /apiv2/job_order/latest
controller: App\Controller\CustomerAppAPI\JobOrderController::getLatestJobOrder
methods: [GET]
apiv2_customer_hash_get:
path: /apiv2/customer_hash
controller: App\Controller\CustomerAppAPI\CustomerController::getCustomerHash
methods: [GET]
#apiv2_completed_job_orders:
# path: /apiv2/job_orders/completed
# controller: App\Controller\CustomerAppAPI\JobOrderController::getCompletedJobOrders
# methods: [GET]
# motolite events
apiv2_motolite_events:
path: /apiv2/motolite_events
controller: App\Controller\CustomerAppAPI\MotoliteEventController::getEvents
methods: [GET]
# review tags
apiv2_partner_review_tags:
path: /apiv2/review_tags/partner
controller: App\Controller\CustomerAppAPI\ReviewTagController::getPartnerReviewTags
apiv2_rider_review_tags:
path: /apiv2/review_tags/rider
controller: App\Controller\CustomerAppAPI\ReviewTagController::getRiderReviewTags
# account deletion
apiv2_account_delete:
path: /apiv2/account_delete
controller: App\Controller\CustomerAppAPI\AccountController::deleteAccount
methods: [POST]
apiv2_account_delete_resend_code:
path: /apiv2/account_delete_resend_code
controller: App\Controller\CustomerAppAPI\AccountController:resendCode
methods: [POST]
apiv2_account_delete_code_validate:
path: /apiv2/account_delete_code_validate
controller: App\Controller\CustomerAppAPI\AccountController::validateDeleteCode
methods: [POST]
# trade-in support
apiv2_cust_vehicle_trade_in_estimate:
path: /apiv2/vehicles/{id}/trade_in_estimate
controller: App\Controller\CustomerAppAPI\VehicleController::getTradeInEstimate
methods: [GET]
# insurance
apiv2_insurance_vehicle_maker_list:
path: /apiv2/insurance/vehicles/makers
controller: App\Controller\CustomerAppAPI\InsuranceController::getVehicleMakers
methods: [GET]
apiv2_insurance_vehicle_model_list:
path: /apiv2/insurance/vehicles/models/{maker_id}
controller: App\Controller\CustomerAppAPI\InsuranceController::getVehicleModels
methods: [GET]
apiv2_insurance_vehicle_trim_list:
path: /apiv2/insurance/vehicles/trims/{model_id}
controller: App\Controller\CustomerAppAPI\InsuranceController::getVehicleTrims
methods: [GET]
apiv2_insurance_vehicle_mv_type_list:
path: /apiv2/insurance/mvtypes
controller: App\Controller\CustomerAppAPI\InsuranceController::getMVTypes
methods: [GET]
apiv2_insurance_vehicle_client_type_list:
path: /apiv2/insurance/clienttypes
controller: App\Controller\CustomerAppAPI\InsuranceController::getClientTypes
methods: [GET]
apiv2_insurance_application_create:
path: /apiv2/insurance/application
controller: App\Controller\CustomerAppAPI\InsuranceController::createApplication
methods: [POST]
apiv2_insurance_premiums_banner:
path: /apiv2/insurance/premiums_banner
controller: App\Controller\CustomerAppAPI\InsuranceController::getPremiumsBanner
methods: [GET]
apiv2_insurance_body_types:
path: /apiv2/insurance/body_types
controller: App\Controller\CustomerAppAPI\InsuranceController::getBodyTypes
methods: [GET]

View file

@ -39,11 +39,6 @@ battery_delete:
controller: App\Controller\BatteryController::destroy
methods: [DELETE]
battery_ajax_get:
path: /ajax/battery_find
controller: App\Controller\BatteryController::getBattery
methods: [GET]
# battery manufacturers
bmfg_list:

View file

@ -1,209 +0,0 @@
# api test
capi_test:
path: /capi/test
controller: App\Controller\CAPI\TestController::test
capi_test_warranty_serial:
path: /test_capi/test/warranty_serial
controller: App\Controller\CAPI\TestController::warrantySerial
# battery api
# battery models
#capi_battery_models:
# path: /capi/battery_models
# controller: App\Controller\CAPI\BatteryController::getModels
# methods: [GET]
# battery models
capi_battery_brands:
path: /capi/battery_brands
controller: App\Controller\CAPI\BatteryController::getBrands
methods: [GET]
# batteries
capi_batteries:
path: /capi/batteries
controller: App\Controller\CAPI\BatteryController::getBatteries
methods: [GET]
# battery sizes
capi_battery_sizes:
path: /capi/battery_sizes
controller: App\Controller\CAPI\BatteryController::getSizes
methods: [GET]
# add battery
capi_battery_add:
path: /capi/batteries
controller: App\Controller\CAPI\BatteryController::addBattery
methods: [POST]
# vehicle api
capi_vehicle_mfgs:
path: /capi/vehicle_manufacturers
controller: App\Controller\CAPI\VehicleController::getManufacturers
methods: [GET]
capi_vehicle_list:
path: /capi/vehicles
controller: App\Controller\CAPI\VehicleController::list
methods: [GET]
capi_vehicle_by_mfg:
path: /capi/vehicle_manufacturer/{mfg_id}
controller: App\Controller\CAPI\VehicleController::getByManufacturer
methods: [GET]
# plate api
capi_plate_warranty:
path: /capi/plates/{plate_number}/warranties
controller: App\Controller\CAPI\WarrantyController::getPlateWarranties
methods: [GET]
# warranty api
# check warranty by serial
capi_warranty_find:
path: /capi/warranties/{serial}
controller: App\Controller\CAPI\WarrantyController::find
methods: [GET]
# register battery
capi_warranty_register:
path: /capi/warranties
controller: App\Controller\CAPI\WarrantyController::register
methods: [POST]
# claim warranty
capi_warranty_claim:
path: /capi/warranties/{id}/claim
controller: App\Controller\CAPI\WarrantyController::claim
methods: [POST]
# get warranties
capi_warranty_get_all:
path: /capi/warranties
controller: App\Controller\CAPI\WarrantyController::getAll
methods: [GET]
# edit warranty
capi_warranty_update:
path: /capi/warranties/{id}
controller: App\Controller\CAPI\WarrantyController::update
methods: [POST]
# cancel warranty
capi_warranty_cancel:
path: /capi/warranties/{id}/cancel
controller: App\Controller\CAPI\WarrantyController::cancel
methods: [GET]
# delete warranty
capi_warranty_delete:
path: /capi/warranties/{id}/delete
controller: App\Controller\CAPI\WarrantyController::delete
methods: [POST]
# set privacy policy of warranty
capi_warranty_privacy_policy:
path: /capi/warranties/{id}/privacypolicy
controller: App\Controller\CAPI\WarrantyController::setPrivacyPolicy
methods: [POST]
# get list of warranties given list of serials
capi_warranty_get_warranties_from_serials:
path: /capi/warranties_list
controller: App\Controller\CAPI\WarrantyController::getWarrantiesBySerialList
methods: [POST]
# customer vehicle api
# find customer vehicle by id
capi_cv_find_by_id:
path: /capi/customer_vehicle/id/{id}
controller: App\Controller\::findByID
methods: [GET]
# find customer vehicle by plate
capi_cv_find_by_plate:
path: /capi/customer_vehicle/plate/{plate}
controller: App\Controller\CAPI\CustomerVehicle::findByPlate
methods: [GET]
# register customer vehicle
capi_cv_register:
path: /capi/customer_vehicle
controller: App\Controller\CAPI\CustomerVehicle::register
methods: [POST]
# privacy policy
# get privacy policy by id
capi_privacy_policy:
path: /capi/privacy_policy/{id}
controller: App\Controller\CAPI\PrivacyPolicyController::getPrivacyPolicy
methods: [GET]
# customer
# register customer and customer vehicle
capi_customer_register:
path: /capi/quick_registration
controller: App\Controller\CAPI\CustomerController::register
methods: [POST]
# verify if resq customer
capi_customer_verify:
path: /capi/customer/{customer_hash}
controller: App\Controller\CAPI\CustomerController::verifyCustomer
methods: [GET]
# customer warranty api
capi_cwarr_check:
path: /capi/customer_warranty/{serial}
controller: App\Controller\CAPI\CustomerWarrantyController::check
methods: [GET]
capi_cwarr_register:
path: /capi/customer_warranty/{serial}
controller: App\Controller\CAPI\CustomerWarrantyController::register
methods: [POST]
# municipality
capi_municipality_list:
path: /capi/municipality
controller: App\Controller\CAPI\MunicipalityController::getAll
methods: [GET]
# dealer
capi_dealer_list:
path: /capi/dealers
controller: App\Controller\CAPI\DealerController::getAll
methods: [GET]
# warranty serial api
capi_warranty_serial_upload:
path: /capi/warranty_serial/upload
controller: App\Controller\CAPI\WarrantySerialController::uploadWarrantySerialFile
methods: [POST]
# pullout form system
# hub
capi_hub_list:
path: /capi/hubs
controller: App\Controller\CAPI\HubController::getAll
methods: [GET]
# job order details
capi_job_order:
path: /capi/job_order/{id}
controller: App\Controller\CAPI\JobOrderController::getJobOrder
methods: [GET]

View file

@ -1,117 +0,0 @@
# rider app api
capi_rider_register:
path: /rider_api/register
controller: App\Controller\CAPI\RiderAppController::register
methods: [POST]
capi_rider_login:
path: /rider_api/login
controller: App\Controller\CAPI\RiderAppController::login
methods: [POST]
capi_rider_logout:
path: /rider_api/logout
controller: App\Controller\CAPI\RiderAppController::logout
methods: [POST]
capi_rider_jo_get:
path: /rider_api/joborder
controller: App\Controller\CAPI\RiderAppController::getJobOrder
methods: [GET]
capi_rider_jo_accept:
path: /rider_api/accept
controller: App\Controller\CAPI\RiderAppController::acceptJobOrder
methods: [POST]
capi_rider_jo_cancel:
path: /rider_api/cancel
controller: App\Controller\CAPI\RiderAppController::cancelJobOrder
methods: [POST]
capi_rider_arrive:
path: /rider_api/arrive
controller: App\Controller\CAPI\RiderAppController::arrive
methods: [POST]
capi_rider_payment:
path: /rider_api/payment
controller: App\Controller\CAPI\RiderAppController::payment
methods: [POST]
capi_rider_hub_arrive:
path: /rider_api/hub_arrive
controller: App\Controller\CAPI\RiderAppController::hubArrive
methods: [POST]
capi_rider_promos:
path: /rider_api/promos
controller: App\Controller\CAPI\RiderAppController::getPromos
methods: [GET]
capi_rider_batteries:
path: /rider_api/batteries
controller: App\Controller\CAPI\RiderAppController::getBatteries
methods: [GET]
capi_rider_change_service:
path: /rider_api/service
controller: App\Controller\CAPI\RiderAppController::changeService
methods: [POST]
capi_rider_available:
path: /rider_api/available
controller: App\Controller\CAPI\RiderAppController::available
methods: [POST]
capi_rider_hub_depart:
path: /rider_api/hub_depart
controller: App\Controller\CAPI\RiderAppController::hubDepart
methods: [POST]
capi_rider_pre_hub_depart:
path: /rider_api/pre_hub_depart
controller: App\Controller\CAPI\RiderAppController::preHubDepart
methods: [POST]
capi_rider_pre_hub_arrive:
path: /rider_api/pre_hub_arrive
controller: App\Controller\CAPI\RiderAppController::preHubArrive
methods: [POST]
capi_rider_post_hub_depart:
path: /rider_api/post_hub_depart
controller: App\Controller\CAPI\RiderAppController::postHubDepart
methods: [POST]
capi_rider_post_hub_arrive:
path: /rider_api/post_hub_arrive
controller: App\Controller\CAPI\RiderAppController::postHubArrive
methods: [POST]
capi_rider_jo_start:
path: /rider_api/start
controller: App\Controller\CAPI\RiderAppController::startJobOrder
methods: [POST]
# trade-ins
capi_rider_battery_sizes:
path: /rider_api/battery_sizes
controller: App\Controller\CAPI\RiderAppController::getBatterySizes
methods: [GET]
capi_rider_trade_in_types:
path: /rider_api/trade_in_types
controller: App\Controller\CAPI\RiderAppController::getTradeInTypes
methods: [GET]
capi_rider_battery_info:
path: /rider_api/battery/{serial}
controller: App\Controller\CAPI\RiderAppController::getBatteryInfo
methods: [GET]
capi_rider_update_jo:
path: /rider_api/job_order/update
controller: App\Controller\CAPI\RiderAppController::updateJobOrder
methods: [POST]

View file

@ -5,7 +5,7 @@ customer_list:
customer_rows:
path: /customers/rows
controller: App\Controller\CustomerController::rows
methods: [GET,POST]
methods: [POST]
customer_vehicle_search:
path: /customers/vehicles
@ -27,9 +27,6 @@ customer_create_submit:
controller: App\Controller\CustomerController::addSubmit
methods: [POST]
customer_update_blank:
path: /customers
customer_update:
path: /customers/{id}
controller: App\Controller\CustomerController::updateForm
@ -44,8 +41,3 @@ customer_delete:
path: /customers/{id}
controller: App\Controller\CustomerController::destroy
methods: [DELETE]
customer_vehicle_warranty_edit_ajax:
path: /ajax/customer_vehicle/{id}
controller: App\Controller\CustomerController::editCustomerVehicleWarranty
methods: [POST]

View file

@ -1,227 +0,0 @@
# api
cust_api_register:
path: /apiv2/register
controller: App\Controller\CustomerAppAPI\AuthController::register
methods: [POST]
cust_api_confirm:
path: /apiv2/number_confirm
controller: App\Controller\CustomerAppAPI\AuthController::confirmNumber
methods: [POST]
cust_api_validate:
path: /apiv2/code_validate
controller: App\Controller\CustomerAppAPI\AuthController::validateCode
methods: [POST]
cust_api_info_get:
path: /apiv2/info
controller: App\Controller\CustomerAppAPI\CustomerController::getInfo
methods: [GET]
cust_api_info_update:
path: /apiv2/info
controller: App\Controller\CustomerAppAPI\CustomerController::updateInfo
methods: [POST]
cust_api_status:
path: /apiv2/status
controller: App\Controller\CustomerAppAPI\CustomerController::getStatus
methods: [GET]
cust_api_vehicle_mfg_list:
path: /apiv2/vehicle/mfgs
controller: App\Controller\CustomerAppAPI\VehicleController::listVehicleManufacturers
methods: [GET]
cust_api_vehicle_make_list:
path: /apiv2/vehicle/mfgs/{mfg_id}/makes
controller: App\Controller\CustomerAppAPI\VehicleController::listVehicleMakes
methods: [GET]
cust_api_cust_vehicle_add:
path: /apiv2/vehicles
controller: App\Controller\CustomerAppAPI\VehicleController::addVehicle
methods: [POST]
cust_api_cust_vehicle_update:
path: /apiv2/vehicles/{id}
controller: App\Controller\CustomerAppAPI\VehicleController::updateVehicle
methods: [POST]
cust_api_cust_vehicle_list:
path: /apiv2/vehicles
controller: App\Controller\CustomerAppAPI\VehicleController::listVehicles
methods: [GET]
cust_api_promo_list:
path: /apiv2/promos
controller: App\Controller\CustomerAppAPI\PromoController::listPromos
methods: [GET]
cust_api_battery_list:
path: /apiv2/vehicles/{vid}/compatible_batteries
controller: App\Controller\CustomerAppAPI\VehicleController::getCompatibleBatteries
methods: [GET]
cust_api_jo_request:
path: /apiv2/job_order
controller: App\Controller\CustomerAppAPI\JobOrderController::requestJobOrder
methods: [POST]
cust_api_estimate:
path: /apiv2/estimate
controller: App\Controller\CustomerAppAPI\EstimateController::getEstimate
methods: [POST]
cust_api_ongoing:
path: /apiv2/job_order/ongoing
controller: App\Controller\CustomerAppAPI\JobOrderController::getOngoing
methods: [GET]
cust_api_rider_status:
path: /apiv2/rider
controller: App\Controller\CustomerAppAPI\RiderController::getRiderStatus
methods: [GET]
cust_api_rider_rating_add:
path: /apiv2/rider_rating
controller: App\Controller\CustomerAppAPI\RiderController::addRiderRating
methods: [POST]
cust_api_jo_cancel:
path: /apiv2/job_order/cancel
controller: App\Controller\CustomerAppAPI\JobOrderController:cancelJobOrder
methods: [POST]
cust_api_jo_history:
path: /apiv2/job_order/history
controller: App\Controller\CustomerAppAPI\JobOrderController:getJOHistory
methods: [GET]
cust_api_jo_invoice:
path: /apiv2/job_order/invoice
controller: App\Controller\CustomerAppAPI\JobOrderController:getJOInvoice
methods: [GET]
cust_api_device_id:
path: /apiv2/device_id
controller: App\Controller\CustomerAppAPI\DeviceController:updateDeviceID
methods: [POST]
cust_api_privacy:
path: /apiv2/privacy
controller: App\Controller\CustomerAppAPI\PrivacyController:privacySettings
methods: [POST]
cust_api_resend_code:
path: /apiv2/resend_code
controller: App\Controller\CustomerAppAPI\AuthController:resendCode
methods: [POST]
cust_api_location_support:
path: /apiv2/location_support
controller: App\Controller\CustomerAppAPI\LocationController:locationSupport
methods: [GET]
cust_api_activate_warranty:
path: /apiv2/activate_warranty
controller: App\Controller\CustomerAppAPI\WarrantyController:activateWarranty
methods: [POST]
cust_api_service_list:
path: /apiv2/services
controller: App\Controller\CustomerAppAPI\ServiceController:listServices
methods: [GET]
cust_api_partner_info:
path: /apiv2/partners/{pid}
controller: App\Controller\CustomerAppAPI\PartnerController:getPartnerInformation
methods: [GET]
cust_api_partner:
path: /apiv2/partners
controller: App\Controller\CustomerAppAPI\PartnerController:getClosestPartners
methods: [GET]
cust_api_partner_review:
path: /apiv2/partners/{pid}/review
controller: App\Controller\CustomerAppAPI\PartnerController:reviewPartner
methods: [POST]
cust_api_nearest_hub_slots:
path: /apiv2/hub_slots
controller: App\Controller\CustomerAppAPI\LocationController::getNearestHubAndSlots
methods: [GET]
cust_api_new_jo_request:
path: /apiv2/new_job_order
controller: App\Controller\CustomerAppAPI\JobOrderController::newRequestJobOrder
methods: [POST]
cust_api_version_check:
path: /apiv2/version_check
controller: App\Controller\CustomerAppAPI\AppController::versionCheck
methods: [GET]
cust_api_schedule_option_status:
path: /apiv2/schedule_option_status
controller: App\Controller\CustomerAppAPI\ScheduleController::scheduleOptionStatus
methods: [GET]
# paperless warranty / qr code
cust_api_warr_serial_check:
path: /apiv2/warranty/{serial}
controller: App\Controller\CustomerAppAPI\WarrantyController::warrantyCheck
methods: [GET]
cust_api_warr_serial_register:
path: /apiv2/warranty/{serial}
controller: App\Controller\CustomerAppAPI\WarrantyController::warrantyRegister
methods: [POST]
cust_api_jo_info:
path: /apiv2/job_order/{id}/info
controller: App\Controller\CustomerAppAPI\JobOrderController::getJobOrderInfo
methods: [GET]
cust_api_ongoing_job_orders:
path: /apiv2/job_orders/ongoing
controller: App\Controller\CustomerAppAPI\JobOrderController::getAllOngoingJobOrders
methods: [GET]
cust_api_ongoing_jo_count:
path: /apiv2/job_orders/ongoing/count
controller: App\Controller\CustomerAppAPI\JobOrderController::getOngoingJobOrderCount
methods: [GET]
cust_api_new_location:
path: /apiv2/new_location
controller: App\Controller\CustomerAppAPI\LocationController::addLocation
methods: [POST]
cust_api_locations:
path: /apiv2/locations
controller: App\Controller\CustomerAppAPI\LocationController::getLocations
methods: [GET]
cust_api_cust_vehicle_remove:
path: /apiv2/vehicles/{id}/remove
controller: App\Controller\CustomerAppAPI\VehicleController::removeVehicle
methods: [POST]
cust_api_latest_job_order:
path: /apiv2/job_order/latest
controller: App\Controller\CustomerAppAPI\JobOrderController::getLatestJobOrder
methods: [GET]
cust_api_customer_hash_get:
path: /apiv2/customer_hash
controller: App\Controller\CustomerAppAPI\CustomerController::getCustomerHash
methods: [GET]
#cust_api_completed_job_orders:
# path: /apiv2/job_orders/completed
# controller: App\Controller\CustomerAppAPI\JobOrderController::getCompletedJobOrders
# methods: [GET]

View file

@ -1,35 +0,0 @@
customer_location_list:
path: /customer-locations
controller: App\Controller\CustomerLocationController::index
methods: [GET]
customer_location_rows:
path: /customer-locations/rowdata
controller: App\Controller\CustomerLocationController::datatableRows
methods: [POST]
customer_location_add_form:
path: /customer-locations/newform
controller: App\Controller\CustomerLocationController::addForm
methods: [GET]
customer_location_add_submit:
path: /customer-locations
controller: App\Controller\CustomerLocationController::addSubmit
methods: [POST]
customer_location_update_form:
path: /customer-locations/{id}
controller: App\Controller\CustomerLocationController::updateForm
methods: [GET]
customer_location_update_submit:
path: /customer-locations/{id}
controller: App\Controller\CustomerLocationController::updateSubmit
methods: [POST]
customer_location_delete:
path: /customer-locations/{id}
controller: App\Controller\CustomerLocationController::deleteSubmit
methods: [DELETE]

View file

@ -1,33 +0,0 @@
customertag_list:
path: /customer_tags
controller: App\Controller\CustomerTagController::index
customertag_rows:
path: /customer_tags/rows
controller: App\Controller\CustomerTagController::rows
methods: [POST]
customertag_create:
path: /customer_tags/create
controller: App\Controller\CustomerTagController::addForm
methods: [GET]
customertag_create_submit:
path: /customer_tags/create
controller: App\Controller\CustomerTagController::addSubmit
methods: [POST]
customertag_update:
path: /customer_tags/{id}
controller: App\Controller\CustomerTagController::updateForm
methods: [GET]
customertag_update_submit:
path: /customer_tags/{id}
controller: App\Controller\CustomerTagController::updateSubmit
methods: [POST]
customertag_delete:
path: /customer_tags/{id}
controller: App\Controller\CustomerTagController::destroy
methods: [DELETE]

View file

@ -1,33 +0,0 @@
dealer_list:
path: /dealers
controller: App\Controller\DealerController::index
dealer_rows:
path: /dealers/rows
controller: App\Controller\DealerController::rows
methods: [POST]
dealer_create:
path: /dealers/create
controller: App\Controller\DealerController::addForm
methods: [GET]
dealer_create_submit:
path: /dealers/create
controller: App\Controller\DealerController::addSubmit
methods: [POST]
dealer_update:
path: /dealers/{id}
controller: App\Controller\DealerController::updateForm
methods: [GET]
dealer_update_submit:
path: /dealers/{id}
controller: App\Controller\DealerController::updateSubmit
methods: [POST]
dealer_delete:
path: /dealers/{id}
controller: App\Controller\DealerController::destroy
methods: [DELETE]

View file

@ -11,7 +11,3 @@ test_gmap:
test_distance:
path: /test/distance
controller: App\Controller\TestController::distance
test_motiv_connector:
path: /test/motiv_connector
controller: App\Controller\TestController::motivConnector

View file

@ -1,34 +0,0 @@
emergency_type_list:
path: /emergency-types
controller: App\Controller\EmergencyTypeController::index
methods: [GET]
emergency_type_rows:
path: /emergency-types/rowdata
controller: App\Controller\EmergencyTypeController::datatableRows
methods: [POST]
emergency_type_add_form:
path: /emergency-types/newform
controller: App\Controller\EmergencyTypeController::addForm
methods: [GET]
emergency_type_add_submit:
path: /emergency-types
controller: App\Controller\EmergencyTypeController::addSubmit
methods: [POST]
emergency_type_update_form:
path: /emergency-types/{id}
controller: App\Controller\EmergencyTypeController::updateForm
methods: [GET]
emergency_type_update_submit:
path: /emergency-types/{id}
controller: App\Controller\EmergencyTypeController::updateSubmit
methods: [POST]
emergency_type_delete:
path: /emergency-types/{id}
controller: App\Controller\EmergencyTypeController::deleteSubmit
methods: [DELETE]

View file

@ -1,20 +0,0 @@
#geofence
geofence_list:
path: /geofence
controller: App\Controller\GeofenceController::index
geofence_upload_kml:
path: /geofence/upload
controller: App\Controller\GeofenceController::uploadKML
methods: [POST]
geofence_create:
path: /geofence/create
controller: App\Controller\GeofenceController::addForm
methods: [GET]
geofence_delete:
path: /geofence/{id}
controller: App\Controller\GeofenceController::destroy
methods: [DELETE]

View file

@ -1,8 +0,0 @@
home:
path: /
controller: App\Controller\HomeController::index
rider_locations:
path: /rider_locations
controller: App\Controller\HomeController::getRiderLocations

View file

@ -34,12 +34,3 @@ hub_delete:
controller: App\Controller\HubController::destroy
methods: [DELETE]
hub_nearest:
path: /ajax/nearest_hubs
controller: App\Controller\HubController::nearest
methods: [GET]
hub_riders:
path: /ajax/hubs/riders
controller: App\Controller\HubController::getHubRiders
methods: [GET]

View file

@ -1,6 +0,0 @@
# insurance
insurance_listener:
path: /insurance/listen
controller: App\Controller\InsuranceController::listen
methods: [POST]

View file

@ -1,14 +0,0 @@
item_pricing:
path: /item-pricing
controller: App\Controller\ItemPricingController::index
methods: [GET]
item_pricing_update:
path: /item-pricing
controller: App\Controller\ItemPricingController::formSubmit
methods: [POST]
item_pricing_prices:
path: /item-pricing/{pt_id}/{it_id}/prices
controller: App\Controller\ItemPricingController::itemPrices
methods: [GET]

View file

@ -1,34 +0,0 @@
item_type_list:
path: /item-types
controller: App\Controller\ItemTypeController::index
methods: [GET]
item_type_rows:
path: /item-types/rowdata
controller: App\Controller\ItemTypeController::datatableRows
methods: [POST]
item_type_add_form:
path: /item-types/newform
controller: App\Controller\ItemTypeController::addForm
methods: [GET]
item_type_add_submit:
path: /item-types
controller: App\Controller\ItemTypeController::addSubmit
methods: [POST]
item_type_update_form:
path: /item-types/{id}
controller: App\Controller\ItemTypeController::updateForm
methods: [GET]
item_type_update_submit:
path: /item-types/{id}
controller: App\Controller\ItemTypeController::updateSubmit
methods: [POST]
item_type_delete:
path: /item-types/{id}
controller: App\Controller\ItemTypeController::deleteSubmit
methods: [DELETE]

View file

@ -3,14 +3,6 @@ jo_in:
controller: App\Controller\JobOrderController::incomingForm
methods: [GET]
jo_in_vehicle:
path: /job-order/incoming/cvehicle/{cvid}
controller: App\Controller\JobOrderController::incomingVehicleForm
methods: [GET]
jo_in_vehicle_blank:
path: /job-order/incoming/cvehicle
jo_in_submit:
path: /job-order/incoming
controller: App\Controller\JobOrderController::incomingSubmit
@ -18,8 +10,10 @@ jo_in_submit:
jo_proc:
path: /job-order/processing
controller: App\Controller\JobOrderController::listProcessing
controller: App\Controller\JobOrderController::listRows
methods: [GET]
defaults:
tier: "proc"
jo_proc_rows:
path: /job-order/processing-rows
@ -86,189 +80,3 @@ jo_fulfill_submit:
path: /job-order/fulfillment/{id}
controller: App\Controller\JobOrderController::fulfillmentSubmit
methods: [POST]
jo_open:
path: /job-order/open
controller: App\Controller\JobOrderController::listOpen
methods: [GET]
jo_open_rows:
path: /job-order/open-rows
controller: App\Controller\JobOrderController::getRows
methods: [POST]
defaults:
tier: "open"
jo_open_hub_form:
path: /job-order/open/hub/{id}
controller: App\Controller\JobOrderController::openHubForm
methods: [GET]
jo_open_hub_submit:
path: /job-order/open/hub/{id}
controller: App\Controller\JobOrderController::openHubSubmit
methods: [POST]
jo_open_rider_form:
path: /job-order/open/rider/{id}
controller: App\Controller\JobOrderController::openRiderForm
methods: [GET]
jo_open_rider_submit:
path: /job-order/open/rider/{id}
controller: App\Controller\JobOrderController::openRiderSubmit
methods: [POST]
jo_cancel:
path: /job-order/cancel/{id}
controller: App\Controller\JobOrderController::cancelJobOrder
methods: [DELETE]
jo_search:
path: /job-order/search
controller: App\Controller\JobOrderController::getJobOrders
methods: [GET]
jo_proc_unlock:
path: /job-order/{id}/unlock/processor
controller: App\Controller\JobOrderController::unlockProcessor
methods: [GET]
jo_assign_unlock:
path: /job-order/{id}/unlock/assignor
controller: App\Controller\JobOrderController::unlockAssignor
methods: [GET]
jo_all:
path: /job-order/all
controller: App\Controller\JobOrderController::listAll
methods: [GET]
jo_all_rows:
path: /job-order/all-rows
controller: App\Controller\JobOrderController::getRows
methods: [POST]
defaults:
tier: "all"
jo_all_form:
path: /job-order/all/{id}
controller: App\Controller\JobOrderController::allForm
methods: [GET]
jo_pdf_form:
path: /job-order/pdf/{id}
controller: App\Controller\JobOrderController::pdfForm
methods: [GET]
jo_open_edit_form:
path: /job-order/{id}/open-edit
controller: App\Controller\JobOrderController::openEditForm
methods: [GET]
jo_open_edit_submit:
path: /job-order/{id}/open-edit
controller: App\Controller\JobOrderController::openEditSubmit
methods: [POST]
jo_reject_hub:
path: /job-order/{id}/reject-hub
controller: App\Controller\JobOrderController::rejectHubSubmit
methods: [POST]
jo_onestep_form:
path: /job-order/onestep
controller: App\Controller\JobOrderController::oneStepForm
methods: [GET]
jo_onestep_submit:
path: /job-order/onestep
controller: App\Controller\JobOrderController::oneStepSubmit
methods: [POST]
jo_onestep_edit_form:
path: /job-order/onestep/{id}/edit
controller: App\Controller\JobOrderController::oneStepEditForm
methods: [GET]
jo_onestep_edit_submit:
path: /job-order/onestep/{id}/edit
controller: App\Controller\JobOrderController::oneStepEditSubmit
methods: [POST]
jo_ajax_popup:
path: /job-order/{id}/popup
controller: App\Controller\JobOrderController::popupInfo
methods: [GET]
jo_tracker:
path: /track/{id}
controller: App\Controller\JobOrderController::tracker
methods: [GET]
jo_walkin_form:
path: /job-order/walk-in
controller: App\Controller\JobOrderController::walkInForm
methods: [GET]
jo_walkin_submit:
path: /job-order/walk-in
controller: App\Controller\JobOrderController::walkInSubmit
methods: [POST]
jo_walkin_edit_form:
path: /job-order/walk-in/{id}
controller: App\Controller\JobOrderController::walkInEditForm
methods: [GET]
jo_walkin_edit_submit:
path: /job-order/walk-in/{id}
controller: App\Controller\JobOrderController::walkInEditSubmit
methods: [POST]
jo_autoassign:
path: /job-order/autoassign
controller: App\Controller\JobOrderController::autoAssignForm
methods: [GET]
jo_autoassign_test_submit:
path: /job-order/autoassign
controller: App\Controller\JobOrderController::autoAssignSubmit
methods: [POST]
jo_hub_view:
path: /job-order/hub-view
controller: App\Controller\JobOrderController::hubView
methods: [GET]
jo_hub_view_rows:
path: /job-order/hub-view-rows
controller: App\Controller\JobOrderController::getHubViewRows
methods: [POST]
defaults:
tier: "hub_view_all"
jo_hub_view_form:
path: /job-order/hub-view/{id}
controller: App\Controller\JobOrderController::hubViewForm
methods: [GET]
jo_fulfill_cancel_submit:
path: /job-order/fulfillcancel/{id}
controller: App\Controller\JobOrderController::fulfillCancelSubmit
methods: [POST]
jo_cancel_reasons:
path: /ajax/jo_cancel_reasons
controller: App\Controller\JobOrderController::cancelReasons
methods: [GET]
jo_geofence:
path: /ajax/job-order/geofence
controller: App\Controller\JobOrderController::checkGeofence
methods: [GET]
jo_all_view_form:
path: /job-order/all/view/{id}
controller: App\Controller\JobOrderController::allViewForm
methods: [GET]

View file

@ -1,38 +0,0 @@
motolite_event_list:
path: /motolite_events
controller: App\Controller\MotoliteEventController::index
motolite_event_rows:
path: /motolite_events/rows
controller: App\Controller\MotoliteEventController::rows
methods: [POST]
motolite_event_create:
path: /motolite_events/create
controller: App\Controller\MotoliteEventController::addForm
methods: [GET]
motolite_event_create_submit:
path: /motolite_events/create
controller: App\Controller\MotoliteEventController::addSubmit
methods: [POST]
motolite_event_upload_image:
path: /motolite_events/upload
controller: App\Controller\MotoliteEventController::uploadImage
methods: [POST]
motolite_event_update:
path: /motolite_events/{id}
controller: App\Controller\MotoliteEventController::updateForm
methods: [GET]
motolite_event_update_submit:
path: /motolite_events/{id}
controller: App\Controller\MotoliteEventController::updateSubmit
methods: [POST]
motolite_event_delete:
path: /motolite_events/{id}
controller: App\Controller\MotoliteEventController::destroy
methods: [DELETE]

View file

@ -1,35 +0,0 @@
ownership_type_list:
path: /ownership-types
controller: App\Controller\OwnershipTypeController::index
methods: [GET]
ownership_type_rows:
path: /ownership-types/rowdata
controller: App\Controller\OwnershipTypeController::datatableRows
methods: [POST]
ownership_type_add_form:
path: /ownership-types/newform
controller: App\Controller\OwnershipTypeController::addForm
methods: [GET]
ownership_type_add_submit:
path: /ownership-types
controller: App\Controller\OwnershipTypeController::addSubmit
methods: [POST]
ownership_type_update_form:
path: /ownership-types/{id}
controller: App\Controller\OwnershipTypeController::updateForm
methods: [GET]
ownership_type_update_submit:
path: /ownership-types/{id}
controller: App\Controller\OwnershipTypeController::updateSubmit
methods: [POST]
ownership_type_delete:
path: /ownership-types/{id}
controller: App\Controller\OwnershipTypeController::deleteSubmit
methods: [DELETE]

View file

@ -1,33 +0,0 @@
partner_list:
path: /partners
controller: App\Controller\PartnerController::index
partner_rows:
path: /partners/rows
controller: App\Controller\PartnerController::rows
methods: [POST]
partner_create:
path: /partners/create
controller: App\Controller\PartnerController::addForm
methods: [GET]
partner_create_submit:
path: /partners/create
controller: App\Controller\PartnerController::addSubmit
methods: [POST]
partner_update:
path: /partners/{id}
controller: App\Controller\PartnerController::updateForm
methods: [GET]
partner_update_submit:
path: /partners/{id}
controller: App\Controller\PartnerController::updateSubmit
methods: [POST]
partner_delete:
path: /partners/{id}
controller: App\Controller\PartnerController::destroy
methods: [DELETE]

View file

@ -1,16 +0,0 @@
# paymongo
paymongo_listener:
path: /paymongo/listen
controller: App\Controller\PayMongoController::listen
methods: [POST]
paymongo_payment_success:
path: /paymongo/success
controller: App\Controller\PayMongoController::paymentSuccess
methods: [GET]
paymongo_payment_cancelled:
path: /paymongo/cancelled
controller: App\Controller\PayMongoController::paymentCancelled
methods: [GET]

View file

@ -1,34 +0,0 @@
price_tier_list:
path: /price-tiers
controller: App\Controller\PriceTierController::index
methods: [GET]
price_tier_rows:
path: /price-tiers/rows
controller: App\Controller\PriceTierController::datatableRows
methods: [POST]
price_tier_add_form:
path: /price-tiers/newform
controller: App\Controller\PriceTierController::addForm
methods: [GET]
price_tier_add_submit:
path: /price-tiers
controller: App\Controller\PriceTierController::addSubmit
methods: [POST]
price_tier_update_form:
path: /price-tiers/{id}
controller: App\Controller\PriceTierController::updateForm
methods: [GET]
price_tier_update_submit:
path: /price-tiers/{id}
controller: App\Controller\PriceTierController::updateSubmit
methods: [POST]
price_tier_delete:
path: /price-tiers/{id}
controller: App\Controller\PriceTierController::deleteSubmit
methods: [DELETE]

View file

@ -1,33 +0,0 @@
privacy_policy_list:
path: /privacy_policies
controller: App\Controller\PrivacyPolicyController::index
privacy_policy_rows:
path: /privacy_policies/rows
controller: App\Controller\PrivacyPolicyController::rows
methods: [POST]
privacy_policy_create:
path: /privacy_policies/create
controller: App\Controller\PrivacyPolicyController::addForm
methods: [GET]
privacy_policy_create_submit:
path: /privacy_policies/create
controller: App\Controller\PrivacyPolicyController:addSubmit
methods: [POST]
privacy_policy_update:
path: /privacy_policies/{id}
controller: App\Controller\PrivacyPolicyController::updateForm
methods: [GET]
privacy_policy_update_submit:
path : /privacy_policies/{id}
controller: App\Controller\PrivacyPolicyController:updateSubmit
methods: [POST]
privacy_policy_delete:
path: /privacy_policies/{id}
controller: App\Controller\PrivacyPolicyController:destroy
methods: [DELETE]

View file

@ -1,169 +0,0 @@
rep_reject_summary_form:
path: /report/rejection_summary
controller: App\Controller\ReportController::rejectSummaryForm
methods: [GET]
rep_reject_summary_submit:
path: /report/rejection_summary
controller: App\Controller\ReportController::rejectSummarySubmit
methods: [POST]
rep_reject_detail_form:
path: /report/rejection_detail
controller: App\Controller\ReportController::rejectDetailForm
methods: [GET]
rep_reject_detail_submit:
path: /report/rejection_detail
controller: App\Controller\ReportController::rejectDetailSubmit
methods: [POST]
rep_battery_conflict_form:
path: /report/battery_conflict
controller: App\Controller\ReportController::batteryConflictForm
methods: [GET]
rep_battery_conflict_submit:
path: /report/battery_conflict
controller: App\Controller\ReportController::batteryConflictSubmit
methods: [POST]
rep_popapp_comp_form:
path: /report/popapp_comparison
controller: App\Controller\ReportController::popappComparisonForm
methods: [GET]
rep_popapp_export_csv:
path: /report/popapp_export
controller: App\Controller\ReportController::popappExportCSV
methods: [POST]
rep_resq_meh_form:
path: /report/meh_customer
controller: App\Controller\ReportController::mehCustomerForm
methods: [GET]
rep_resq_meh_export_csv:
path: /report/meh_customer_export
controller: App\Controller\ReportController::mehCustomerExportCSV
methods: [POST]
rep_warranty_class_form:
path: /report/warranty_class_report
controller: App\Controller\ReportController::warrantyClassForm
methods: [GET]
rep_warranty_class_export_csv:
path: /report/warranty_class_report
controller: App\Controller\ReportController::warrantyClassExportCSV
methods: [POST]
rep_vehicle_battery_compatibility_form:
path: /report/vehicle_battery_compatibility_report
controller: App\Controller\ReportController::vehicleBatteryCompatibilityForm
methods: [GET]
rep_vehicle_battery_compatibility_export_csv:
path: /report/vehicle_battery_compatibility_report
controller: App\Controller\ReportController::vehicleBatteryCompatibilityExportCSV
methods: [POST]
rep_warranty_details_form:
path: /report/warranty_details_report
controller: App\Controller\ReportController::warrantyDetailsForm
methods: [GET]
rep_warranty_details_submit:
path: /report/warranty_details_report
controller: App\Controller\ReportController::warrantyDetailsSubmit
methods: [POST]
rep_jo_details_form:
path: /report/jo_details_report
controller: App\Controller\ReportController::jobOrderDetailsForm
methods: [GET]
rep_jo_details_submit:
path: /report/jo_details_report
controller: App\Controller\ReportController::jobOrderDetailsSubmit
methods: [POST]
rep_jo_events_form:
path: /report/jo_events_report
controller: App\Controller\ReportController::jobOrderEventsForm
methods: [GET]
rep_jo_events_submit:
path: /report/jo_events_report
controller: App\Controller\ReportController::jobOrderEventsSubmit
methods: [POST]
rep_sms_messages_form:
path: /report/sms_messages_report
controller: App\Controller\ReportController::smsMessagesForm
methods: [GET]
rep_sms_messages_submit:
path: /report/sms_messages_report
controller: App\Controller\ReportController::smsMessagesSubmit
methods: [POST]
rep_jo_auto_assign_form:
path: /report/jo_auto_assign_report
controller: App\Controller\ReportController::jobOrderAutoAssignForm
methods: [GET]
rep_jo_auto_assign_submit:
path: /report/jo_auto_assign_report
controller: App\Controller\ReportController::jobOrderAutoAssignSubmit
methods: [POST]
rep_jo_advance_order_form:
path: /report/jo_advance_order_report
controller: App\Controller\ReportController::jobOrderAdvanceOrderForm
methods: [GET]
rep_jo_advance_order_submit:
path: /report/jo_advance_order_report
controller: App\Controller\ReportController::jobOrderAdvanceOrderSubmit
methods: [POST]
rep_customer_source_form:
path: /report/customer_source_report
controller: App\Controller\ReportController::customerSourceForm
methods: [GET]
rep_customer_source_submit:
path: /report/customer_source_report
controller: App\Controller\ReportController::customerSourceSubmit
methods: [POST]
rep_hub_filter_form:
path: /report/hub_filter_report
controller: App\Controller\ReportController::hubFilterForm
methods: [GET]
rep_hub_filter_submit:
path: /report/hub_filter_report
controller: App\Controller\ReportController::hubFilterSubmit
methods: [POST]
rep_warranty_raffle_form:
path: /report/warranty_raffle_report
controller: App\Controller\ReportController::warrantyRaffleForm
methods: [GET]
rep_warranty_raffle_submit:
path: /report/warranty_raffle_report
controller: App\Controller\ReportController::warrantyRaffleSubmit
methods: [POST]
rep_jo_raffle_form:
path: /report/jo_raffle_report
controller: App\Controller\ReportController::joRaffleForm
methods: [GET]
rep_jo_raffle_submit:
path: /report/jo_raffle_report
controller: App\Controller\ReportController::joRaffleSubmit
methods: [POST]

View file

@ -1,23 +0,0 @@
jo_resq_proc:
path: /resq-job-order/processing
controller: App\Controller\ResqJobOrderController::listProcessing
methods: [GET]
jo_resq_proc_rows:
path: /resq-job-order/processing-rows
controller: App\Controller\ResqJobOrderController::datatableRows
methods: [POST]
defaults:
tier: "proc"
jo_resq_all:
path: /resq-job-order/all
controller: App\Controller\ResqJobOrderController::listAll
methods: [GET]
jo_resq_all_rows:
path: /resq-job-orer/all
controller: App\Controller\ResqJobOrderController::datatableRows
methods: [POST]
defaults:
tier: "all"

View file

@ -1,18 +0,0 @@
review_list:
path: /reviews
controller: App\Controller\ReviewController::index
review_rows:
path: /reviews/rows
controller: App\Controller\ReviewController::rows
methods: [POST]
review_view_form:
path: /reviews/{id}/view
controller: App\Controller\ReviewController::openViewForm
methods: [GET]
review_delete:
path: /reviews/{id}
controller: App\Controller\ReviewController::destroy
methods: [DELETE]

View file

@ -1,33 +0,0 @@
reviewtag_list:
path: /review_tags
controller: App\Controller\ReviewTagController::index
reviewtag_rows:
path: /review_tags/rows
controller: App\Controller\ReviewTagController::rows
methods: [POST]
reviewtag_create:
path: /review_tags/create
controller: App\Controller\ReviewTagController::addForm
methods: [GET]
reviewtag_create_submit:
path: /review_tags/create
controller: App\Controller\ReviewTagController::addSubmit
methods: [POST]
reviewtag_update:
path: /review_tags/{id}
controller: App\Controller\ReviewTagController::updateForm
methods: [GET]
reviewtag_update_submit:
path: /review_tags/{id}
controller: App\Controller\ReviewTagController::updateSubmit
methods: [POST]
reviewtag_delete:
path: /review_tags/{id}
controller: App\Controller\ReviewTagController::destroy
methods: [DELETE]

View file

@ -36,28 +36,3 @@ rider_delete:
path: /riders/{id}
controller: App\Controller\RiderController::destroy
methods: [DELETE]
rider_ajax_popup:
path: /riders/{id}/popup
controller: App\Controller\RiderController::popupInfo
methods: [GET]
rider_active_jo:
path: /riders/{id}/activejo/{jo_id}
controller: App\Controller\RiderController::riderActiveJO
methods: [GET]
rider_priority_up_jo:
path: /riders/{id}/priority_up/{jo_id}
controller: App\Controller\RiderController::priorityUpJO
methods: [GET]
rider_priority_down_jo:
path: /riders/{id}/priority_down/{jo_id}
controller: App\Controller\RiderController::priorityDownJO
methods: [GET]
rider_ajax_available:
path: /riders/{id}/available
controller: App\Controller\RiderController::ajaxAvailable
methods: [GET]

View file

@ -1,97 +0,0 @@
# rider app api
rapi_register:
path: /rapi/register
controller: App\Controller\RAPIController::register
methods: [POST]
rapi_login:
path: /rapi/login
controller: App\Controller\RAPIController::login
methods: [POST]
rapi_logout:
path: /rapi/logout
controller: App\Controller\RAPIController::logout
methods: [POST]
rapi_jo_get:
path: /rapi/joborder
controller: App\Controller\RAPIController::getJobOrder
methods: [GET]
rapi_jo_accept:
path: /rapi/accept
controller: App\Controller\RAPIController::acceptJobOrder
methods: [POST]
rapi_jo_cancel:
path: /rapi/cancel
controller: App\Controller\RAPIController::cancelJobOrder
methods: [POST]
rapi_arrive:
path: /rapi/arrive
controller: App\Controller\RAPIController::arrive
methods: [POST]
rapi_payment:
path: /rapi/payment
controller: App\Controller\RAPIController::payment
methods: [POST]
rapi_hub_arrive:
path: /rapi/hub_arrive
controller: App\Controller\RAPIController::hubArrive
methods: [POST]
rapi_promos:
path: /rapi/promos
controller: App\Controller\RAPIController::getPromos
methods: [GET]
rapi_batteries:
path: /rapi/batteries
controller: App\Controller\RAPIController::getBatteries
methods: [GET]
rapi_change_service:
path: /rapi/service
controller: App\Controller\RAPIController::changeService
methods: [POST]
rapi_available:
path: /rapi/available
controller: App\Controller\RAPIController::available
methods: [POST]
rapi_hub_depart:
path: /rapi/hub_depart
controller: App\Controller\RAPIController::hubDepart
methods: [POST]
rapi_pre_hub_depart:
path: /rapi/pre_hub_depart
controller: App\Controller\RAPIController::preHubDepart
methods: [POST]
rapi_pre_hub_arrive:
path: /rapi/pre_hub_arrive
controller: App\Controller\RAPIController::preHubArrive
methods: [POST]
rapi_post_hub_depart:
path: /rapi/post_hub_depart
controller: App\Controller\RAPIController::postHubDepart
methods: [POST]
rapi_post_hub_arrive:
path: /rapi/post_hub_arrive
controller: App\Controller\RAPIController::postHubArrive
methods: [POST]
rapi_jo_start:
path: /rapi/start
controller: App\Controller\RAPIController::startJobOrder
methods: [POST]

View file

@ -1,148 +0,0 @@
# sap battery
sapbattery_list:
path: /sap-batteries
controller: App\Controller\SAPBatteryController::index
sapbattery_rows:
path: /sap-batteries/rows
controller: App\Controller\SAPBatteryController::rows
methods: [POST]
sapbattery_upload_image:
path: /sap-batteries/upload
controller: App\Controller\SAPBatteryController::uploadImage
methods: [POST]
sapbattery_create:
path: /sap-batteries/create
controller: App\Controller\SAPBatteryController::addForm
methods: [GET]
sapbattery_create_submit:
path: /sap-batteries/create
controller: App\Controller\SAPBatteryController::addSubmit
methods: [POST]
sapbattery_update:
path: /sap-batteries/{id}
controller: App\Controller\SAPBatteryController::updateForm
methods: [GET]
sapbattery_update_submit:
path: /sap-batteries/{id}
controller: App\Controller\SAPBatteryController::updateSubmit
methods: [POST]
sapbattery_delete:
path: /sap-batteries/{id}
controller: App\Controller\SAPBatteryController::destroy
methods: [DELETE]
# sap battery brands
sapbrand_list:
path: /sap-battery-brands
controller: App\Controller\SAPBatteryBrandController::index
sapbrand_rows:
path: /sap-battery-brands/rows
controller: App\Controller\SAPBatteryBrandController::rows
methods: [POST]
sapbrand_create:
path: /sap-battery-brands/create
controller: App\Controller\SAPBatteryBrandController::addForm
methods: [GET]
sapbrand_create_submit:
path: /sap-battery-brands/create
controller: App\Controller\SAPBatteryBrandController::addSubmit
methods: [POST]
sapbrand_update:
path: /sap-battery-brands/{id}
controller: App\Controller\SAPBatteryBrandController::updateForm
methods: [GET]
sapbrand_update_submit:
path: /sap-battery-brands/{id}
controller: App\Controller\SAPBatteryBrandController::updateSubmit
methods: [POST]
sapbrand_delete:
path: /sap-battery-brands/{id}
controller: App\Controller\SAPBatteryBrandController::destroy
methods: [DELETE]
# sap battery sizes
sapbsize_list:
path: /sap-battery-sizes
controller: App\Controller\SAPBatterySizeController::index
sapbsize_rows:
path: /sap-battery-sizes/rows
controller: App\Controller\SAPBatterySizeController::rows
methods: [POST]
sapbsize_create:
path: /sap-battery-sizes/create
controller: App\Controller\SAPBatterySizeController::addForm
methods: [GET]
sapbsize_create_submit:
path: /sap-battery-sizes/create
controller: App\Controller\SAPBatterySizeController::addSubmit
methods: [POST]
sapbsize_update:
path: /sap-battery-sizes/{id}
controller: App\Controller\SAPBatterySizeController::updateForm
methods: [GET]
sapbsize_update_submit:
path: /sap-battery-sizes/{id}
controller: App\Controller\SAPBatterySizeController::updateSubmit
methods: [POST]
sapbsize_delete:
path: /sap-battery-sizes/{id}
controller: App\Controller\SAPBatterySizeController::destroy
methods: [DELETE]
# sap battery container sizes
sapcsize_list:
path: /sap-battery-container-sizes
controller: App\Controller\SAPBatteryContainerSizeController::index
sapcsize_rows:
path: /sap-battery-container-sizes/rows
controller: App\Controller\SAPBatteryContainerSizeController::rows
methods: [POST]
sapcsize_create:
path: /sap-battery-container-sizes/create
controller: App\Controller\SAPBatteryContainerSizeController::addForm
methods: [GET]
sapcsize_create_submit:
path: /sap-battery-container-sizes/create
controller: App\Controller\SAPBatteryContainerSizeController::addSubmit
methods: [POST]
sapcsize_update:
path: /sap-battery-container-sizes/{id}
controller: App\Controller\SAPBatteryContainerSizeController::updateForm
methods: [GET]
sapcsize_update_submit:
path: /sap-battery-container-sizes/{id}
controller: App\Controller\SAPBatteryContainerSizeController::updateSubmit
methods: [POST]
sapcsize_delete:
path: /sap-battery-container-sizes/{id}
controller: App\Controller\SAPBatteryContainerSizeController::destroy
methods: [DELETE]

View file

@ -1,12 +0,0 @@
general_search:
path: /search
controller: App\Controller\SearchController::index
search_history:
path: /search/history
controller: App\Controller\SearchController::search
methods: [GET]
search_legacyjo_details:
path: /search/legacyjo/{id}/details
controller: App\Controller\SearchController::legacyJODetails

View file

@ -1,33 +0,0 @@
service_list:
path: /services
controller: App\Controller\ServiceController::index
service_rows:
path: /services/rows
controller: App\Controller\ServiceController::rows
methods: [POST]
service_create:
path: /services/create
controller: App\Controller\ServiceController::addForm
methods: [GET]
service_create_submit:
path: /services/create
controller: App\Controller\ServiceController::addSubmit
methods: [POST]
service_update:
path: /services/{id}
controller: App\Controller\ServiceController::updateForm
methods: [GET]
service_update_submit:
path: /services/{id}
controller: App\Controller\ServiceController::updateSubmit
methods: [POST]
service_delete:
path: /services/{id}
controller: App\Controller\ServiceController::destroy
methods: [DELETE]

View file

@ -1,34 +0,0 @@
service_charge_list:
path: /service_charges
controller: App\Controller\ServiceChargeController::index
service_charge_rows:
path: /service_charges/rows
controller: App\Controller\ServiceChargeController::rows
methods: [POST]
service_charge_create:
path: /service_charges/create
controller: App\Controller\ServiceChargeController::addForm
methods: [GET]
service_charge_create_submit:
path: /service_charges/create
controller: App\Controller\ServiceChargeController::addSubmit
methods: [POST]
service_charge_update:
path: /service_charges/{id}
controller: App\Controller\ServiceChargeController::updateForm
methods: [GET]
service_charge_update_submit:
path: /service_charges/{id}
controller: App\Controller\ServiceChargeController::updateSubmit
methods: [POST]
service_charge_delete:
path: /service_charges/{id}
controller: App\Controller\ServiceChargeController::destroy
methods: [DELETE]

View file

@ -1,34 +0,0 @@
service_offering_list:
path: /service-offerings
controller: App\Controller\ServiceOfferingController::index
methods: [GET]
service_offering_rows:
path: /service-offerings/rowdata
controller: App\Controller\ServiceOfferingController::datatableRows
methods: [POST]
service_offering_add_form:
path: /service-offerings/newform
controller: App\Controller\ServiceOfferingController::addForm
methods: [GET]
service_offering_add_submit:
path: /service-offerings
controller: App\Controller\ServiceOfferingController::addSubmit
methods: [POST]
service_offering_update_form:
path: /service-offerings/{id}
controller: App\Controller\ServiceOfferingController::updateForm
methods: [GET]
service_offering_update_submit:
path: /service-offerings/{id}
controller: App\Controller\ServiceOfferingController::updateSubmit
methods: [POST]
service_offering_delete:
path: /service-offerings/{id}
controller: App\Controller\ServiceOfferingController::deleteSubmit
methods: [DELETE]

View file

@ -1,6 +0,0 @@
# sms handling - rising tide
sms_delivery_receipt:
path: /sms/delivery_receipt
controller: App\Controller\SMSController::deliveryReceipt
methods: [POST]

View file

@ -1,2 +0,0 @@
static_battery_image:
path: /battery

View file

@ -1,33 +0,0 @@
static_content_list:
path: /static_content
controller: App\Controller\StaticContentController::index
static_content_rows:
path: /static_content/rows
controller: App\Controller\StaticContentController::rows
methods: [POST]
static_content_create:
path: /static_content/create
controller: App\Controller\StaticContentController::addForm
methods: [GET]
static_content_create_submit:
path: /static_content/create
controller: App\Controller\StaticContentController::addSubmit
methods: [POST]
static_content_update:
path: /static_content/{id}
controller: App\Controller\StaticContentController::updateForm
methods: [GET]
static_content_update_submit:
path: /static_content/{id}
controller: App\Controller\StaticContentController::updateSubmit
methods: [POST]
static_content_delete:
path: /static_content/{id}
controller: App\Controller\StaticContentController::destroy
methods: [DELETE]

View file

@ -1,35 +0,0 @@
subticket_type_list:
path: /subticket-types
controller: App\Controller\SubTicketTypeController::index
methods: [GET]
subticket_type_rows:
path: /subticket-types/rowdata
controller: App\Controller\SubTicketTypeController::datatableRows
methods: [POST]
subticket_type_add_form:
path: /subticket-types/newform
controller: App\Controller\SubTicketTypeController::addForm
methods: [GET]
subticket_type_add_submit:
path: /subticket-types
controller: App\Controller\SubTicketTypeController::addSubmit
methods: [POST]
subticket_type_update_form:
path: /subticket-types/{id}
controller: App\Controller\SubTicketTypeController::updateForm
methods: [GET]
subticket_type_update_submit:
path: /subticket-types/{id}
controller: App\Controller\SubTicketTypeController::updateSubmit
methods: [POST]
subticket_type_delete:
path: /subticket-types/{id}
controller: App\Controller\SubTicketTypeController::deleteSubmit
methods: [DELETE]

View file

@ -1,60 +0,0 @@
# third party api
# job order
tapi_jo_request:
path: /tapi/job_order
controller: App\Controller\TAPI\JobOrderController::requestJobOrder
methods: [POST]
tapi_estimate:
path: /tapi/estimate
controller: App\Controller\TAPI\JobOrderController::getEstimate
methods: [POST]
tapi_jo_invoice:
path: /tapi/job_order/invoice/{jo_id}
controller: App\Controller\TAPI\JobOrderController:getJOInvoice
methods: [GET]
tapi_jo_cancel:
path: /tapi/job_order/cancel
controller: App\Controller\TAPI\JobOrderController:cancelJobOrder
methods: [POST]
tapi_jo_info:
path: /tapi/job_order/{jo_id}/info
controller: App\Controller\TAPI\JobOrderController::getJobOrderInfo
methods: [GET]
tapi_location_support:
path: /tapi/location_support
controller: App\Controller\TAPI\JobOrderController:locationSupport
methods: [POST]
tapi_nearest_hub_slots:
path: /tapi/hub_slots
controller: App\Controller\TAPI\JobOrderController::getNearestHubAndSlots
methods: [POST]
# vehicle manufacturer and vehicle
tapi_vehicle_mfg_list:
path: /tapi/vehicle/mfgs
controller: App\Controller\TAPI\VehicleController::listVehicleManufacturers
methods: [GET]
tapi_vehicle_make_list:
path: /tapi/vehicle/mfgs/{mfg_id}/makes
controller: App\Controller\TAPI\VehicleController::listVehicleMakes
methods: [GET]
# battery
tapi_battery_list:
path: /tapi/vehicles/{vid}/compatible_batteries
controller: App\Controller\TAPI\BatteryController::getCompatibleBatteries
methods: [POST]
# promos
tapi_promo_list:
path: /tapi/promos
controller: App\Controller\TAPI\PromoController::listPromos
methods: [GET]

View file

@ -10,20 +10,18 @@ ticket_rows:
methods: [POST]
ticket_create:
path: /tickets/create/{customer_id}/{job_order_id}
path: /tickets/create/{customer_id}
controller: App\Controller\TicketController::addForm
methods: [GET]
defaults:
customer_id: false
job_order_id: false
ticket_create_submit:
path: /tickets/create/{customer_id}/{job_order_id}
path: /tickets/create/{customer_id}
controller: App\Controller\TicketController::addSubmit
methods: [POST]
defaults:
customer_id: false
job_order_id: false
ticket_update:
path: /tickets/{id}

View file

@ -1,35 +0,0 @@
ticket_type_list:
path: /ticket-types
controller: App\Controller\TicketTypeController::index
methods: [GET]
ticket_type_rows:
path: /ticket-types/rowdata
controller: App\Controller\TicketTypeController::datatableRows
methods: [POST]
ticket_type_add_form:
path: /ticket-types/newform
controller: App\Controller\TicketTypeController::addForm
methods: [GET]
ticket_type_add_submit:
path: /ticket-types
controller: App\Controller\TicketTypeController::addSubmit
methods: [POST]
ticket_type_update_form:
path: /ticket-types/{id}
controller: App\Controller\TicketTypeController::updateForm
methods: [GET]
ticket_type_update_submit:
path: /ticket-types/{id}
controller: App\Controller\TicketTypeController::updateSubmit
methods: [POST]
ticket_type_delete:
path: /ticket-types/{id}
controller: App\Controller\TicketTypeController::deleteSubmit
methods: [DELETE]

View file

@ -34,11 +34,6 @@ vehicle_delete:
controller: App\Controller\VehicleController::destroy
methods: [DELETE]
vehicle_batteries:
path: /vehicle/batteries
controller: App\Controller\VehicleController::getBatteries
methods: [POST]
# vehicle manufacturers
vmfg_list:

View file

@ -1,40 +0,0 @@
# warranty
warranty_list:
path: /warranties
controller: App\Controller\WarrantyController::index
warranty_rows:
path: /warranties/rows
controller: App\Controller\WarrantyController::rows
methods: [POST]
warranty_create:
path: /warranties/create
controller: App\Controller\WarrantyController::addForm
methods: [GET]
warranty_create_submit:
path: /warranties/create
controller: App\Controller\WarrantyController::addSubmit
methods: [POST]
warranty_update:
path: /warranties/{id}
controller: App\Controller\WarrantyController::updateForm
methods: [GET]
warranty_update_submit:
path: /warranties/{id}
controller: App\Controller\WarrantyController::updateSubmit
methods: [POST]
warranty_upload:
path: /warranty/upload
controller: App\Controller\WarrantyController::uploadForm
methods: [GET]
warranty_upload_submit:
path: /warranty/upload
controller: App\Controller\WarrantyController::uploadSubmit
methods: [POST]

View file

@ -1,10 +0,0 @@
# warranty search
warranty_search:
path: /warranty_search
controller: App\Controller\WarrantySearchController::index
search_warranty:
path: /warranty_search/warranty
controller: App\Controller\WarrantySearchController::search
methods: [GET]

View file

@ -1,22 +1,12 @@
# Put parameters here that don't need to change on each machine where the app is deployed
# https://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration
parameters:
locale: 'en'
map_default:
latitude: 14.6091
longitude: 121.0223
image_upload_directory: '%kernel.project_dir%/public/uploads'
job_order_refresh_interval: 300000
api_acl_file: 'api_acl.yaml'
api_access_key: 'api_access_keys'
app_acl_file: 'acl.yaml'
app_access_key: 'access_keys'
cvu_brand_id: "%env(CVU_BRAND_ID)%"
country_code: "%env(COUNTRY_CODE)%"
api_version: "%env(API_VERSION)%"
android_app_version: "%env(ANDROID_APP_VERSION)%"
ios_app_version: "%env(IOS_APP_VERSION)%"
insurance_premiums_banner_url: "%env(INSURANCE_PREMIUMS_BANNER_URL)%"
enabled_hub_filters: "%env(ENABLED_HUB_FILTERS)%"
services:
# default configuration for services in *this* file
@ -47,6 +37,17 @@ services:
$cache_dir: "%kernel.cache_dir%"
$config_dir: "%kernel.root_dir%/../config"
App\Access\Generator:
arguments:
$router: "@router.default"
$cache_dir: "%kernel.cache_dir%"
$config_dir: "%kernel.root_dir%/../config"
App\Access\Voter:
arguments:
$acl_gen: "@App\\Access\\Generator"
tags: ['security.voter']
App\Service\FileUploader:
arguments:
$target_dir: '%image_upload_directory%'
@ -55,304 +56,3 @@ services:
arguments:
$em: "@doctrine.orm.entity_manager"
$gmaps_api_key: "%env(GMAPS_API_KEY)%"
$cust_dist_limit: "%env(CUST_DISTANCE_LIMIT)%"
App\Service\RisingTideGateway:
arguments:
$em: "@doctrine.orm.entity_manager"
$user: "%env(RT_USER)%"
$pass: "%env(RT_PASS)%"
$usage_type: "%env(RT_USAGE_TYPE)%"
$shortcode: "%env(RT_SHORTCODE)%"
$dr_url: "https://resqaws.jankstudio.com/sms/delivery_receipt"
App\Service\MQTTClient:
arguments:
$redis_client: "@App\\Service\\RedisClientProvider"
$key: "mqtt_events"
App\Service\MQTTClientApiv2:
arguments:
$redis_client: "@App\\Service\\RedisClientProvider"
$key: "mqtt_events"
App\Service\APNSClient:
arguments:
$redis_client: "@App\\Service\\RedisClientProvider"
App\Service\RedisClientProvider:
arguments:
$scheme: "%env(REDIS_CLIENT_SCHEME)%"
$host: "%env(REDIS_CLIENT_HOST)%"
$port: "%env(REDIS_CLIENT_PORT)%"
$password: "%env(REDIS_CLIENT_PASSWORD)%"
App\Service\GeofenceTracker:
arguments:
$geofence_flag: "%env(GEOFENCE_ENABLE)%"
App\Service\WarrantyHandler:
arguments:
$em: "@doctrine.orm.entity_manager"
App\Command\SetCustomerPrivacyPolicyCommand:
arguments:
$policy_promo: "%env(POLICY_PROMO)%"
$policy_third_party: "%env(POLICY_THIRD_PARTY)%"
$policy_mobile: "%env(POLICY_MOBILE)%"
App\Command\CreateCustomerFromWarrantyCommand:
arguments:
$cvu_mfg_id: "%env(CVU_MFG_ID)%"
$cvu_brand_id: "%env(CVU_BRAND_ID)%"
App\Command\LoadWarrantySerialCommand:
arguments:
$callback_url: "%env(WARRANTY_SERIAL_CALLBACK_URL)%"
App\Command\ProcessLatePaymongoTransactionsCommand:
arguments:
$em: "@doctrine.orm.entity_manager"
$paymongo: "@App\\Service\\PayMongoConnector"
$webhook_id: "%env(PAYMONGO_WEBHOOK_ID)%"
# rider tracker service
App\Service\RiderTracker:
arguments:
$redis_client: "@App\\Service\\RedisClientProvider"
# invoice generator
App\Service\InvoiceGenerator\ResqInvoiceGenerator: ~
# invoice generator interface
App\Service\InvoiceGeneratorInterface: "@App\\Service\\InvoiceManager"
# invoice manager
App\Service\InvoiceManager: ~
# job order generator
App\Service\JobOrderHandler\ResqJobOrderHandler:
arguments:
$country_code: "%env(COUNTRY_CODE)%"
$cust_distance_limit: "%env(CUST_DISTANCE_LIMIT_ADMIN_PANEL)%"
$hub_filter_enabled: "%env(HUB_FILTER_ENABLE)%"
#job order generator interface
App\Service\JobOrderHandlerInterface: "@App\\Service\\JobOrderHandler\\ResqJobOrderHandler"
# customer generator
App\Service\CustomerHandler\ResqCustomerHandler:
arguments:
$country_code: "%env(COUNTRY_CODE)%"
# customer generator interface
App\Service\CustomerHandlerInterface: "@App\\Service\\CustomerHandler\\ResqCustomerHandler"
# rider assignment
App\Service\RiderAssignmentHandler\ResqRiderAssignmentHandler: ~
# rider assignment interface
App\Service\RiderAssignmentHandlerInterface: "@App\\Service\\RiderAssignmentHandler\\ResqRiderAssignmentHandler"
# rider API service
App\Service\RiderAPIHandler\ResqRiderAPIHandler:
arguments:
$country_code: "%env(COUNTRY_CODE)%"
App\Service\RiderAPIHandlerInterface: "@App\\Service\\RiderAPIHandler\\ResqRiderAPIHandler"
# map manager
#App\Service\GISManager\Bing: ~
App\Service\GISManager\OpenStreet: ~
#App\Service\GISManager\Google: ~
#App\Service\GISManagerInterface: "@App\\Service\\GISManager\\Bing"
App\Service\GISManagerInterface: "@App\\Service\\GISManager\\OpenStreet"
#App\Service\GISManagerInterface: "@App\\Service\\GISManager\\Google"
App\EventListener\JobOrderActiveCacheListener:
arguments:
$jo_cache: "@App\\Service\\JobOrderCache"
$mqtt: "@App\\Service\\MQTTClient"
tags:
- name: 'doctrine.orm.entity_listener'
event: 'postUpdate'
entity: 'App\Entity\JobOrder'
- name: 'doctrine.orm.entity_listener'
event: 'postRemove'
entity: 'App\Entity\JobOrder'
- name: 'doctrine.orm.entity_listener'
event: 'postPersist'
entity: 'App\Entity\JobOrder'
App\Service\JobOrderCache:
arguments:
$redis_prov: "@App\\Service\\RedisClientProvider"
$active_jo_key: "%env(LOCATION_JO_ACTIVE_KEY)%"
$latest_jo_key: "%env(LATEST_ACTIVE_JO)%"
App\Service\RiderCache:
arguments:
$redis_prov: "@App\\Service\\RedisClientProvider"
$loc_key: "%env(LOCATION_RIDER_ACTIVE_KEY)%"
$status_key: "%env(STATUS_RIDER_KEY)%"
# inventory manager
App\Service\InventoryManager:
arguments:
$api_url: "%env(INVENTORY_API_URL)%"
$api_ocp_key: "%env(INVENTORY_API_OCP)%"
$api_auth_prefix: "%env(INVENTORY_API_AUTH_TOKEN_PREFIX)%"
$api_auth_token: "%env(INVENTORY_API_AUTH_TOKEN)%"
# API logging
App\EventSubscriber\LogSubscriber:
arguments:
$api_log_flag: "%env(API_LOGGING)%"
# motiv connector
App\Service\MotivConnector:
arguments:
$base_url: "%env(MOTIV_BASE_URL)%"
$sub_key: "%env(MOTIV_KEY)%"
$token: "%env(MOTIV_TOKEN)%"
# insurance connector
App\Service\InsuranceConnector:
arguments:
$base_url: "%env(INSURANCE_BASE_URL)%"
$username: "%env(INSURANCE_USERNAME)%"
$password: "%env(INSURANCE_PASSWORD)%"
# entity listener for gateway transactions
App\EntityListener\GatewayTransactionListener:
arguments:
$em: "@doctrine.orm.entity_manager"
$ic: "@App\\Service\\InsuranceConnector"
tags:
- name: doctrine.orm.entity_listener
event: 'postUpdate'
entity: 'App\Entity\GatewayTransaction'
# paymongo connector
App\Service\PayMongoConnector:
arguments:
$base_url: "%env(PAYMONGO_BASE_URL)%"
$public_key: "%env(PAYMONGO_PUBLIC_KEY)%"
$secret_key: "%env(PAYMONGO_SECRET_KEY)%"
# entity listener for customer vehicle warranty code history
App\EntityListener\CustomerVehicleSerialListener:
arguments:
$ts: "@security.token_storage"
tags:
- name: doctrine.orm.entity_listener
event: 'preUpdate'
entity: 'App\Entity\CustomerVehicle'
- name: doctrine.orm.entity_listener
event: 'postUpdate'
entity: 'App\Entity\CustomerVehicle'
- name: doctrine.orm.entity_listener
event: 'postPersist'
entity: 'App\Entity\CustomerVehicle'
# warranty api logger
App\Service\WarrantyAPILogger:
arguments:
$em: "@doctrine.orm.entity_manager"
# warranty logger for raffle
App\Service\WarrantyRaffleLogger:
arguments:
$em: "@doctrine.orm.entity_manager"
# warranty raffle filter
App\Service\WarrantyRaffleFilter: ~
# promo logger
App\Service\PromoLogger:
arguments:
$em: "@doctrine.orm.entity_manager"
# hub service
App\Service\HubSelector:
arguments:
$em: "@doctrine.orm.entity_manager"
$im: "@App\\Service\\InventoryManager"
$hub_distributor: "@App\\Service\\HubDistributor"
$hub_filter_logger: "@App\\Service\\HubFilterLogger"
# hub distributor
App\Service\HubDistributor:
arguments:
$redis: "@App\\Service\\RedisClientProvider"
$hub_jo_key: "%env(HUB_JO_KEY)%"
# hub filter logger
App\Service\HubFilterLogger:
arguments:
$em: "@doctrine.orm.entity_manager"
# hub filter geofence checking
App\Service\HubFilteringGeoChecker:
arguments:
$geofence_flag: "%env(HUB_GEOFENCE_ENABLE)%"
# bulk warranty uploader
App\Service\WarrantyBulkUploader:
arguments:
$em: "@doctrine.orm.entity_manager"
# warranty serial file logger
App\Service\WarrantySerialUploadLogger:
arguments:
$em: "@doctrine.orm.entity_manager"
# warranty serial load logger
App\Service\WarrantySerialLoadLogger:
arguments:
$em: "@doctrine.orm.entity_manager"
# FCM sender
App\Service\FCMSender:
arguments:
$server_key: "%env(FCM_SERVER_KEY)%"
$sender_id: "%env(FCM_SENDER_ID)%"
# price tier manager
App\Service\PriceTierManager:
arguments:
$em: "@doctrine.orm.entity_manager"
# hub filters
App\Service\HubFilter\BaseHubFilter:
arguments:
$hub_filter_logger: "@App\\Service\\HubFilterLogger"
$em: "@doctrine.orm.entity_manager"
$rt: "@App\\Service\\RisingTideGateway"
$trans: "@Symfony\\Contracts\\Translation\\TranslatorInterface"
App\Service\HubFilter\Filters\DateAndTimeHubFilter:
public: true
App\Service\HubFilter\Filters\JoTypeHubFilter:
public: true
App\Service\HubFilter\Filters\MaxResultsHubFilter:
public: true
App\Service\HubFilter\Filters\PaymentMethodHubFilter:
public: true
App\Service\HubFilter\Filters\RiderAvailabilityHubFilter:
public: true
App\Service\HubFilter\Filters\InventoryHubFilter:
public: true
arguments:
$im: "@App\\Service\\InventoryManager"
App\Service\HubFilter\Filters\RoundRobinHubFilter:
public: true
arguments:
$hub_distributor: "@App\\Service\\HubDistributor"

57
data/outlets.csv Normal file
View file

@ -0,0 +1,57 @@
Provincial,"ASIAN RING POINT MARKETING, INC.",Taytay,"Unit 11 & 12 Valley Fair Center Ortigas Avenue Ext., Barangay San Isidro, Taytay, Rizal",No ,No,14.58927855,121.1020012
Metro Manila,BATERYAHAN,Tanong,"140 A. Bonifacio Ave. Brgy., Tanong, Marikina City",No,No,14.6339791,121.0858438
Metro Manila,BATERYAHAN ,Batasan,"86 Constitutional San Mateo Road, Batasan Hills, Quezon City",No ,No,14.6874271,121.0999469
Metro Manila,BATPARTS SUPPLY CO.,E. Rodriguez Sr.,"278 E. Rodriguez Sr. Avenue, Don Manuel, Quezon City",No ,No,14.618124,121.00658
Metro Manila,BATPARTS SUPPLY CO.,Malate,"1035 Pedro Gil Street cor. Benitez ,Malate, Manila",No ,No,14.57736904,120.9907097
Metro Manila,BATPARTS SUPPLY CO.,Marcos Hwy,"Km. 16 Marcos Hi-way corner Mahogany Street, Santolan, Pasig",Yes,No,14.61838508,121.0917807
Metro Manila,BATPARTS SUPPLY CO.,Sangandaan,"375 MJ Building, Quirino Hi-way, Talipapa Sangandaan, Quezon City",No,No,14.67966904,121.0183096
Metro Manila,BATTERY MASTERS INC,Las Pinas,"Km. 17 Alabang Zapote Road Pamplona, Las Pinas",Yes,No,14.446687,120.987946
Metro Manila,BATTERY MASTERS INC,Marcelo,"South Superhighway Medical Center, Kilometer 17, West Service Road, San Antonio, Paranaque",Yes,No,14.477134,121.044388
Metro Manila,BATTERY MASTERS INC,Paranaque,"1186 Dr. A. Santos Avenue, San Dionisio, Paranaque",No,Yes,14.4838306,120.9949851
Metro Manila,BRAZA MARKETING,Katipunan,"285 Katipunan Avennue , Brgy. Loyola Heights, Quezon City",No,Yes,14.63492742,121.0741103
Metro Manila,BATTERYWORKZ,Pasig,"Auto Express 1800 Ortigas Ave, Ortigas, Pasig City",Yes,No,14.589344,121.067638
Metro Manila,BATTERYWORKZ,Cainta,"Lot 1 CBS Bldg., Felix Avenue, Sto. Domingo, Cainta",No,No,14.601484,121.1068
Metro Manila,BATTERYWORKZ,Pasay,"1858 Gil Puyat Avenue, cor Tramo St., Pasay",No,No,14.55454437,120.9998225
Metro Manila,BATTERY WORLD INC,Katipunan,"197 Katipunan Avenue , Blueridge, Brgy., Project 4.,",No,Yes,14.61665655,121.070779
Metro Manila,BATTERY WORLD INC,Makati,"2292 Chino Roces Ave., Bgy. Pio del Pilar, Makati",Yes,No,14.55255637,121.0134602
Metro Manila,BATTERY WORLD INC,Maceda,"846 Maceda cor. Espana, Sampaloc, Manila",Yes,No,14.61441541,120.9983124
Metro Manila,DSD TIRES AND BATTERY,Makati,"484 J. P. Rizal Street, Brgy Olympia, Makati",No,No,14.57120378,121.018889
Metro Manila,ECSD TRADING,Makati,"2118 Chino Roces Avenue Brgy Pio del Pilar, Makati",No,No,14.55867153,121.0123202
Metro Manila,FGR BATTERY INC. ,Binondo,"513 Madrid st. Binondo, Manila",No,No,14.59736927,120.9700754
Metro Manila,FGR BATTERY INC. ,Kapitolyo,"686 Shaw Blvd. Kapitolyo, Pasig",No,No,14.57366471,121.0622281
Metro Manila,G-SIX MARKETING INC.,Boni Serrano,"545 Boni Serrano Ave.,Brgy. Murphy, Quezon City",No,No,14.614248,121.068554
Metro Manila,G-SIX MARKETING INC.,Commonwealth,"Lot 18 Blk 5 RQD Bldg. Commonwealth Ave., Brgy, North Fairview, Quezon City",No,No,14.70734448,121.0639849
Metro Manila,G-SIX MARKETING INC.,Jose Abad Santos,"2551 Jose Abad Santos St, Tondo, Manila",No,No,14.623557,120.978403
Metro Manila,G-SIX MARKETING INC.,Makati,"23 Arnaiz Road Corner J.Victor Street, Brgy. Pio del Pilar, Makati",No,No,14.55157761,121.0124315
Metro Manila,G-SIX MARKETING INC.,Mindanao Ave,"No. 1 Science St. Victoria Subdivision, Mindanao Avenue, Quezon City",No,No,14.68611407,121.0324395
Metro Manila,G-SIX MARKETING INC.,Paranaque,"65 Dona Soledad Ave., BetterLiving Subd., Brgy Don Bosco, Paranaque",Yes,No,14.48266456,121.0366532
Metro Manila,G-SIX MARKETING INC.,Putatan,"23 B National Highway, Brgy., Putatan, Muntinlupa",No,No,14.39238308,121.0386193
Metro Manila,G-SIX MARKETING INC.,Regalado,"103 Regalado corner Mindanao Avenue, Greater Lagro, Fairview, Quezon City",Yes,No,14.730487,121.061337
Metro Manila,G-SIX MARKETING INC.,West Ave,"82b West Avenue, Brgy PhilAm Homes, Quezon City",No,No,14.64799119,121.0280943
Metro Manila,G-SIX MARKETING INC.,Aurora,"714 Aurora Blvd, near cor Balete Dr., Brgy Mariana, Quezon City",No,No,14.61759608,121.0407865
Metro Manila,JEREMY MARKETING ,Taguig,"Unit 10 GF 32th St., Carport Car Plaza, Bonifacio Global City, Taguig",No,No,14.55230714,121.0536504
Metro Manila,JEREMY MARKETING,Visayas,"340 F.E.Asia Comm'l Complex,Visayas Ave.,Brgy Pasong Tamo, Quezon City",No,No,14.67311744,121.0435948
Metro Manila,JESOLLY,Mandaluyong,"829 San Francisco St. corner Neptali Gonzales, Mandaluyong",No,No,14.573812,121.030006
Metro Manila,JESOLLY,Wilson,"213-E Wilson st. Brgy Greenhills, San Juan",No,No,14.59811941,121.0425568
Metro Manila,KINGSWAY BATTERY SALES INC,Bagong Ilog,"68 B Pasig Boulevard, Bagong Ilog, Pasig",No,No,14.56414012,121.0713664
Metro Manila,KINGSWAY BATTERY SALES INC,Antipolo City,"National Road, Barrio Purugan, Brgy. San Jose, Antipolo, Rizal",No,Yes,14.578564,121.185752
Metro Manila,KINGSWAY BATTERY SALES INC,Capitol Hills,"7 A Capitol Hills Drive, Matandang Balara, Quezon City",No,Yes,14.6636767,121.0747247
Metro Manila,KINGSWAY BATTERY SALES INC,Libis,"652 Boni Serrano Road Libis, Quezon City",No,No,14.61677853,121.0766825
Metro Manila,KINGSWAY BATTERY SALES INC,E Rodriguez,"1677 E.Rodriguez Sr. Avenue Brgy. Pinagkaisahan, Quezon City",No,Yes,14.62425316,121.0429779
Metro Manila,MAXEMEGA INC,Caloocan,"275 10th Avenue, Brgy. Grace Park, Caloocan",No,Yes,14.65162421,120.987078
Metro Manila,MAXEMEGA INC.,Las Pinas,"501 Real St.,BF Almanza, Las Pinas",No,No,14.42993186,121.0158581
Metro Manila,MGK3 BATTERY SALES INC.,Pasay,"2205 F. Castillo Bldg. Aurora Blvd., Pasay",No,No,14.53743583,121.0030586
Metro Manila,ONE STOP BATTERY SHOP INC. ,Novaliches,"214 Gen.Luis Street ,Novaliches , Quezon City",No,No,14.72173214,121.0357708
Metro Manila,ONE STOP BATTERY SHOP INC.,Valenzuela,"71 Unit 1,Keppelson Bldg.,McArthur Highway, Valenzuela",No,No,14.67427728,120.9814078
Metro Manila,ONE STOP SHOP BATTERY INC. ,Camarin,"613 Old Tenant Area A Camarin Novaliches, Caloocan",No,No,14.75785277,121.0435867
Metro Manila,PILI BATTERY SALES INC. ,Makati,"126 Jose P. Rizal Extension, East Rembo, Makati City",No,No,14.556868,121.065633
Metro Manila,RANISHA TRADING,Roosevelt,"281 Roosevelt Avenue,San Francisco Del Monte, Quezon City",No,No,14.65172282,121.0180146
Metro Manila,RODCAR MARKETING ,Commonwealth,"36a IBP Road Batasan Hills, Quezon City",No,No,14.68661223,121.0902786
Metro Manila,RODCAR MARKETING ,Kamias,"58-B Kamias Road, Brgy. Kamias, Quezon City",No,No,14.63237374,121.0519096
Metro Manila,SEARTON MARKETING CORP. ,Marcos Hwy,"Unit C5 Honeyland Commercial Townhouse, Vermount Royale Subd., Brgy. Mayamot Marcos Hi-way, Antipolo",No,No,14.62320205,121.1100626
Metro Manila,SEARTON MARKETING CORP.,Paranaque,"8290 Dr. A. Santos Ave. Sucat, Paranaque",No,No,14.4605398,121.029532
Metro Manila,SERIES AND PARALLEL,Pasay,"186 Aranaiz Avenue, Brgy 67, Pasay",No,No,14.54967981,121.0048422
Metro Manila,STARCHARGE MARKETING CORPORATION,Marcos Hwy,"Bay 1 Caltex Service Center, Marcos Highway , Barangay Dela Paz District 2, Pasig",No,No,14.62032447,121.0996322
Metro Manila,STARCHARGE MARKETING CORPORATION ,Sta Mesa,"Gaaz Gasoline Station, P Sanchez St., San Juan ",No,No,14.594244,121.025017
Metro Manila,TRINALICA MARKETING ,Santolan,"21-A Santolan Road, Bagong Lipunan ",No,No,14.60881959,121.0450485
Metro Manila,TRINALICA MARKETING ,Boni Serrano,"561 FCR Bldg Fr. Cat Royale, Boni Serrano Avenue, Brgy Bayanihan, Quezon City",No,No,14.61408709,121.0678768
1 Provincial ASIAN RING POINT MARKETING, INC. Taytay Unit 11 & 12 Valley Fair Center Ortigas Avenue Ext., Barangay San Isidro, Taytay, Rizal No No 14.58927855 121.1020012
2 Metro Manila BATERYAHAN Tanong 140 A. Bonifacio Ave. Brgy., Tanong, Marikina City No No 14.6339791 121.0858438
3 Metro Manila BATERYAHAN Batasan 86 Constitutional San Mateo Road, Batasan Hills, Quezon City No No 14.6874271 121.0999469
4 Metro Manila BATPARTS SUPPLY CO. E. Rodriguez Sr. 278 E. Rodriguez Sr. Avenue, Don Manuel, Quezon City No No 14.618124 121.00658
5 Metro Manila BATPARTS SUPPLY CO. Malate 1035 Pedro Gil Street cor. Benitez ,Malate, Manila No No 14.57736904 120.9907097
6 Metro Manila BATPARTS SUPPLY CO. Marcos Hwy Km. 16 Marcos Hi-way corner Mahogany Street, Santolan, Pasig Yes No 14.61838508 121.0917807
7 Metro Manila BATPARTS SUPPLY CO. Sangandaan 375 MJ Building, Quirino Hi-way, Talipapa Sangandaan, Quezon City No No 14.67966904 121.0183096
8 Metro Manila BATTERY MASTERS INC Las Pinas Km. 17 Alabang Zapote Road Pamplona, Las Pinas Yes No 14.446687 120.987946
9 Metro Manila BATTERY MASTERS INC Marcelo South Superhighway Medical Center, Kilometer 17, West Service Road, San Antonio, Paranaque Yes No 14.477134 121.044388
10 Metro Manila BATTERY MASTERS INC Paranaque 1186 Dr. A. Santos Avenue, San Dionisio, Paranaque No Yes 14.4838306 120.9949851
11 Metro Manila BRAZA MARKETING Katipunan 285 Katipunan Avennue , Brgy. Loyola Heights, Quezon City No Yes 14.63492742 121.0741103
12 Metro Manila BATTERYWORKZ Pasig Auto Express 1800 Ortigas Ave, Ortigas, Pasig City Yes No 14.589344 121.067638
13 Metro Manila BATTERYWORKZ Cainta Lot 1 CBS Bldg., Felix Avenue, Sto. Domingo, Cainta No No 14.601484 121.1068
14 Metro Manila BATTERYWORKZ Pasay 1858 Gil Puyat Avenue, cor Tramo St., Pasay No No 14.55454437 120.9998225
15 Metro Manila BATTERY WORLD INC Katipunan 197 Katipunan Avenue , Blueridge, Brgy., Project 4., No Yes 14.61665655 121.070779
16 Metro Manila BATTERY WORLD INC Makati 2292 Chino Roces Ave., Bgy. Pio del Pilar, Makati Yes No 14.55255637 121.0134602
17 Metro Manila BATTERY WORLD INC Maceda 846 Maceda cor. Espana, Sampaloc, Manila Yes No 14.61441541 120.9983124
18 Metro Manila DSD TIRES AND BATTERY Makati 484 J. P. Rizal Street, Brgy Olympia, Makati No No 14.57120378 121.018889
19 Metro Manila ECSD TRADING Makati 2118 Chino Roces Avenue Brgy Pio del Pilar, Makati No No 14.55867153 121.0123202
20 Metro Manila FGR BATTERY INC. Binondo 513 Madrid st. Binondo, Manila No No 14.59736927 120.9700754
21 Metro Manila FGR BATTERY INC. Kapitolyo 686 Shaw Blvd. Kapitolyo, Pasig No No 14.57366471 121.0622281
22 Metro Manila G-SIX MARKETING INC. Boni Serrano 545 Boni Serrano Ave.,Brgy. Murphy, Quezon City No No 14.614248 121.068554
23 Metro Manila G-SIX MARKETING INC. Commonwealth Lot 18 Blk 5 RQD Bldg. Commonwealth Ave., Brgy, North Fairview, Quezon City No No 14.70734448 121.0639849
24 Metro Manila G-SIX MARKETING INC. Jose Abad Santos 2551 Jose Abad Santos St, Tondo, Manila No No 14.623557 120.978403
25 Metro Manila G-SIX MARKETING INC. Makati 23 Arnaiz Road Corner J.Victor Street, Brgy. Pio del Pilar, Makati No No 14.55157761 121.0124315
26 Metro Manila G-SIX MARKETING INC. Mindanao Ave No. 1 Science St. Victoria Subdivision, Mindanao Avenue, Quezon City No No 14.68611407 121.0324395
27 Metro Manila G-SIX MARKETING INC. Paranaque 65 Dona Soledad Ave., BetterLiving Subd., Brgy Don Bosco, Paranaque Yes No 14.48266456 121.0366532
28 Metro Manila G-SIX MARKETING INC. Putatan 23 B National Highway, Brgy., Putatan, Muntinlupa No No 14.39238308 121.0386193
29 Metro Manila G-SIX MARKETING INC. Regalado 103 Regalado corner Mindanao Avenue, Greater Lagro, Fairview, Quezon City Yes No 14.730487 121.061337
30 Metro Manila G-SIX MARKETING INC. West Ave 82b West Avenue, Brgy PhilAm Homes, Quezon City No No 14.64799119 121.0280943
31 Metro Manila G-SIX MARKETING INC. Aurora 714 Aurora Blvd, near cor Balete Dr., Brgy Mariana, Quezon City No No 14.61759608 121.0407865
32 Metro Manila JEREMY MARKETING Taguig Unit 10 GF 32th St., Carport Car Plaza, Bonifacio Global City, Taguig No No 14.55230714 121.0536504
33 Metro Manila JEREMY MARKETING Visayas 340 F.E.Asia Comm'l Complex,Visayas Ave.,Brgy Pasong Tamo, Quezon City No No 14.67311744 121.0435948
34 Metro Manila JESOLLY Mandaluyong 829 San Francisco St. corner Neptali Gonzales, Mandaluyong No No 14.573812 121.030006
35 Metro Manila JESOLLY Wilson 213-E Wilson st. Brgy Greenhills, San Juan No No 14.59811941 121.0425568
36 Metro Manila KINGSWAY BATTERY SALES INC Bagong Ilog 68 B Pasig Boulevard, Bagong Ilog, Pasig No No 14.56414012 121.0713664
37 Metro Manila KINGSWAY BATTERY SALES INC Antipolo City National Road, Barrio Purugan, Brgy. San Jose, Antipolo, Rizal No Yes 14.578564 121.185752
38 Metro Manila KINGSWAY BATTERY SALES INC Capitol Hills 7 A Capitol Hills Drive, Matandang Balara, Quezon City No Yes 14.6636767 121.0747247
39 Metro Manila KINGSWAY BATTERY SALES INC Libis 652 Boni Serrano Road Libis, Quezon City No No 14.61677853 121.0766825
40 Metro Manila KINGSWAY BATTERY SALES INC E Rodriguez 1677 E.Rodriguez Sr. Avenue Brgy. Pinagkaisahan, Quezon City No Yes 14.62425316 121.0429779
41 Metro Manila MAXEMEGA INC Caloocan 275 10th Avenue, Brgy. Grace Park, Caloocan No Yes 14.65162421 120.987078
42 Metro Manila MAXEMEGA INC. Las Pinas 501 Real St.,BF Almanza, Las Pinas No No 14.42993186 121.0158581
43 Metro Manila MGK3 BATTERY SALES INC. Pasay 2205 F. Castillo Bldg. Aurora Blvd., Pasay No No 14.53743583 121.0030586
44 Metro Manila ONE STOP BATTERY SHOP INC. Novaliches 214 Gen.Luis Street ,Novaliches , Quezon City No No 14.72173214 121.0357708
45 Metro Manila ONE STOP BATTERY SHOP INC. Valenzuela 71 Unit 1,Keppelson Bldg.,McArthur Highway, Valenzuela No No 14.67427728 120.9814078
46 Metro Manila ONE STOP SHOP BATTERY INC. Camarin 613 Old Tenant Area A Camarin Novaliches, Caloocan No No 14.75785277 121.0435867
47 Metro Manila PILI BATTERY SALES INC. Makati 126 Jose P. Rizal Extension, East Rembo, Makati City No No 14.556868 121.065633
48 Metro Manila RANISHA TRADING Roosevelt 281 Roosevelt Avenue,San Francisco Del Monte, Quezon City No No 14.65172282 121.0180146
49 Metro Manila RODCAR MARKETING Commonwealth 36a IBP Road Batasan Hills, Quezon City No No 14.68661223 121.0902786
50 Metro Manila RODCAR MARKETING Kamias 58-B Kamias Road, Brgy. Kamias, Quezon City No No 14.63237374 121.0519096
51 Metro Manila SEARTON MARKETING CORP. Marcos Hwy Unit C5 Honeyland Commercial Townhouse, Vermount Royale Subd., Brgy. Mayamot Marcos Hi-way, Antipolo No No 14.62320205 121.1100626
52 Metro Manila SEARTON MARKETING CORP. Paranaque 8290 Dr. A. Santos Ave. Sucat, Paranaque No No 14.4605398 121.029532
53 Metro Manila SERIES AND PARALLEL Pasay 186 Aranaiz Avenue, Brgy 67, Pasay No No 14.54967981 121.0048422
54 Metro Manila STARCHARGE MARKETING CORPORATION Marcos Hwy Bay 1 Caltex Service Center, Marcos Highway , Barangay Dela Paz District 2, Pasig No No 14.62032447 121.0996322
55 Metro Manila STARCHARGE MARKETING CORPORATION Sta Mesa Gaaz Gasoline Station, P Sanchez St., San Juan No No 14.594244 121.025017
56 Metro Manila TRINALICA MARKETING Santolan 21-A Santolan Road, Bagong Lipunan No No 14.60881959 121.0450485
57 Metro Manila TRINALICA MARKETING Boni Serrano 561 FCR Bldg Fr. Cat Royale, Boni Serrano Avenue, Brgy Bayanihan, Quezon City No No 14.61408709 121.0678768

View file

@ -1 +0,0 @@
INSERT INTO `service_charge` VALUES(1,'Bangi',20),(2,'Banting',30),(3,'Bdr Saujana Utama',20),(4,'Bdr Seri Coalfields',30),(5,'Bdr Baru Bangi',20),(6,'Bdr Saujana Putra',20),(7,'Bukit Beruntung',30),(8,'Cyberjaya',20),(9,'Dengkil',30),(10,'Hulu Langat',20),(11,'Jenjarom',30),(12,'Klia',30),(13,'Meru',20),(14,'Port Klang',20),(15,'Pulau Indah',30),(16,'Puncak Alam',20),(17,'Putrajaya',20),(18,'Rawang',30),(19,'Salak Tinggi',30),(20,'Semenyih',20),(21,'Sepang',30),(22,'Serendah',30),(23,'Sungai Buloh',20),(24,'Teluk Panglima Garang',30),(25,'Uitm Puncak Alam',20),(26,'12am - 7am',10),(27,'Out of define Klg Valley',20),(28,'Airport',35),(29,'Jump start',50),(30,'Product warranty service charge - existing BA customer',20),(31,'Product warranty service charge - non BA customer',40);

View file

@ -1,2 +0,0 @@
UPDATE customer SET date_create=NOW() WHERE date_create="0000-00-00 00:00:00";

View file

@ -1 +0,0 @@
UPDATE job_order jo, customer c, customer_vehicle cv SET jo.first_name = c.first_name, jo.last_name = c.last_name, jo.phone_mobile = c.phone_mobile, jo.plate_number = cv.plate_number WHERE jo.customer_id = c.id AND jo.cvehicle_id = cv.id;

View file

@ -1,73 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<name>ResQ Supported Area</name>
<description/>
<Style id="poly-000000-1200-77-nodesc-normal">
<LineStyle>
<color>ff000000</color>
<width>1.2</width>
</LineStyle>
<PolyStyle>
<color>4d000000</color>
<fill>1</fill>
<outline>1</outline>
</PolyStyle>
<BalloonStyle>
<text><![CDATA[<h3>$[name]</h3>]]></text>
</BalloonStyle>
</Style>
<Style id="poly-000000-1200-77-nodesc-highlight">
<LineStyle>
<color>ff000000</color>
<width>1.8</width>
</LineStyle>
<PolyStyle>
<color>4d000000</color>
<fill>1</fill>
<outline>1</outline>
</PolyStyle>
<BalloonStyle>
<text><![CDATA[<h3>$[name]</h3>]]></text>
</BalloonStyle>
</Style>
<StyleMap id="poly-000000-1200-77-nodesc">
<Pair>
<key>normal</key>
<styleUrl>#poly-000000-1200-77-nodesc-normal</styleUrl>
</Pair>
<Pair>
<key>highlight</key>
<styleUrl>#poly-000000-1200-77-nodesc-highlight</styleUrl>
</Pair>
</StyleMap>
<Folder>
<name>ResQ Supported Area</name>
<Placemark>
<name>Supported Area</name>
<styleUrl>#poly-000000-1200-77-nodesc</styleUrl>
<Polygon>
<outerBoundaryIs>
<LinearRing>
<tessellate>1</tessellate>
<coordinates>
121.0717128,14.7868868,0
121.0222743,14.7895424,0
120.9302638,14.6793076,0
120.9494899,14.4427135,0
121.0250209,14.3735484,0
121.0744593,14.5171749,0
121.1513636,14.5357864,0
121.1884425,14.5809791,0
121.2021754,14.6248337,0
121.1321376,14.6540653,0
121.129391,14.7616569,0
121.0717128,14.7868868,0
</coordinates>
</LinearRing>
</outerBoundaryIs>
</Polygon>
</Placemark>
</Folder>
</Document>
</kml>

View file

@ -1,8 +0,0 @@
DELETE FROM battery;
DELETE FROM battery_manufacturer;
DELETE FROM battery_manufacturer;
DELETE FROM battery_model;
DELETE FROM battery_size;
DELETE FROM vehicle;
DELETE FROM vehicle_manufacturer;
DELETE FROM battery_vehicle;

View file

View file

@ -144,41 +144,6 @@ span.has-danger,
color: #fff !important;
}
.m-table__row--is_mobile td {
background-color: #0000ff !important;
color: #fff !important;
}
.m-table__row--is_mobile td > span,
.m-table__row--is_mobile td > span a,
.m-table__row--is_mobile td > span a i {
color: #fff !important;
}
.m-table__row--is_vip td {
background-color: #ffff00 !important;
color: #414a4c !important;
}
.m-table__row--is_vip td > span,
.m-table__row--is_vip td > span a,
.m-table__row--is_vip td > span a i {
color: #414a4c !important;
}
.m-table__row--is_emergency td {
background-color: #ffa500 !important;
color: #fff !important;
}
.m-table__row--is_emergency td > span,
.m-table__row--is_emergency td > span a,
.m-table__row--is_emergency td > span a i {
color: #fff !important;
}
.m-datatable.m-datatable--default > .m-datatable__table {
min-height: 0 !important;
}
@ -192,194 +157,8 @@ span.has-danger,
font-size: 14px !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered .select2-selection__clear {
margin-top: -0.95rem;
font-weight: 700;
}
.m-form__actions .btn + .btn {
margin-left: 4px;
}
.m-timeline-2 .m-timeline-2__items .m-timeline-2__item .m-timeline-2__item-cricle {
left: 10.1rem;
top: 0.3rem;
}
.m-timeline-2 .m-timeline-2__items .m-timeline-2__item .m-timeline-2__item-text {
padding-left: 12rem;
}
.m-timeline-2:before {
left: 11.95rem;
}
.m-timeline-2 .m-timeline-2__items .m-timeline-2__item .m-timeline-2__item-time {
line-height: 1rem;
padding-top: 0;
top: -0.45rem;
}
.input-group .form-control:first-child:not(:last-child):not(:focus):not(.focus) {
border-right: 0;
}
.input-group .input-group-append + .form-control:not(:focus):not(.focus) {
border-left: 0;
}
.input-group > .form-control:not(:first-child) {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
.input-group > .form-control:not(:last-child) {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
.input-group .input-group-append > .input-group-text {
border-color: #ebedf2;
background-color: #f4f5f8;
color: #575962;
}
.input-group > .input-group-append > .input-group-text {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
.input-group > .input-group-append:not(:last-child) > .input-group-text {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
.input-group-text {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
padding: .85rem 1.15rem;
margin-bottom: 0;
font-size: 1rem;
font-weight: 400;
line-height: 1.25;
color: #495057;
text-align: center;
white-space: nowrap;
background-color: #e9ecef;
border: 1px solid #ced4da;
border-radius: .25rem;
}
.input-daterange input:last-child {
border-radius: 0 3px 3px 0;
}
.input-group {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-align: stretch;
-ms-flex-align: stretch;
align-items: stretch;
width: 100%;
}
.input-daterange {
width: 100%;
}
@media (min-width: 995px) {
.modal-lg {
max-width: 1024px;
}
}
.input-group-append {
margin-left: -1px;
}
.input-group-prepend, .input-group-append {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}
.input-group>.input-group-append>.btn, .input-group>.input-group-append>.input-group-text, .input-group>.input-group-prepend:not(:first-child)>.btn, .input-group>.input-group-prepend:not(:first-child)>.input-group-text, .input-group>.input-group-prepend:first-child>.btn:not(:first-child), .input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child) {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
.btn-icon {
margin-right: .5em;
}
.marker-pin {
width: 30px;
height: 30px;
border-radius: 50% 50% 50% 0;
background: #c30b82;
position: absolute;
transform: rotate(-45deg);
left: 50%;
top: 50%;
margin: -15px 0 0 -15px;
}
.marker-pin::after {
content: '';
width: 24px;
height: 24px;
margin: 3px 0 0 3px;
background: #fff;
position: absolute;
border-radius: 50%;
}
.map-div-icon i {
position: absolute;
width: 22px;
font-size: 22px;
left: 0;
right: 0;
margin: 10px auto;
text-align: center;
}
.map-div-icon i.awesome {
margin: 12px auto;
font-size: 17px;
}
.map-info {
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
z-index: 9999;
padding: 1.5em;
width: 100%;
}
.map-info > .m-portlet {
margin-bottom: 0;
}
.map-info .m-portlet__body {
padding: 1.5rem;
}
.map-info .rider-image {
width: 4.8rem;
border-radius: 50%;
}
.map-info .m-badge {
border-radius: 0;
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

View file

@ -1,74 +0,0 @@
$(function() {
// export table to csv
$(document).on('click', '[data-export-csv]', async function(e) {
const el = e.target.closest('[data-export-csv]');
const oldLabel = el.innerHTML;
// set loading status
el.disabled = true;
el.innerHTML = 'Exporting...';
const formData = new FormData();
formData.append('datatable[pagination][page]', 1);
formData.append('datatable[pagination][perpage]', 10000000);
// get all rows
const response = await fetch(el.dataset.url, {
method: el.dataset.method,
body: formData,
});
const result = await response.json();
if (response.status === 200) {
// empty set returned
if (parseInt(result.meta.total) === 0) {
swal({
title: 'Whoops',
html: 'No data to export!',
type: 'warning',
});
}
// build csv data
const csvRows = [];
const fieldList = el.dataset.fields.split(',');
csvRows.push(el.dataset.headers);
result.data.forEach((row) => {
const fieldData = [];
fieldList.forEach((field) => {
fieldData.push('"' + row[field] + '"');
});
csvRows.push(fieldData.join(','));
});
const csvData = csvRows.join('\n');
// build the csv file
const csvFile = new Blob([csvData], {
type: 'text/csv',
});
// create a link to the file and download it
const url = window.URL.createObjectURL(csvFile);
const a = document.createElement('a');
a.href = url;
a.download = el.dataset.filename + '.csv';
a.click();
} else {
// something went wrong on the server
swal({
title: 'Whoops',
html: 'An error has occurred while retrieving data.',
type: 'error',
});
}
// remove loading status
el.disabled = false;
el.innerHTML = oldLabel;
});
});

View file

@ -1,269 +0,0 @@
class DashboardMap {
constructor(options, rider_markers, cust_markers) {
this.options = options;
this.rider_markers = rider_markers;
this.cust_markers = cust_markers;
this.rider_availability = {};
// layer groups
this.layer_groups = {
'rider_available': L.layerGroup(),
'rider_active_jo': L.layerGroup(),
'customer': L.layerGroup(),
'mobile_customer': L.layerGroup(),
};
}
initialize() {
// main map
this.map = L.map(this.options.div_id).setView(
[this.options.center_lat, this.options.center_lng],
this.options.zoom
);
// add tile layer
var streets = L.tileLayer('https://api.maptiler.com/maps/streets/{z}/{x}/{y}.png?key={accessToken}',{
tileSize: 512,
zoomOffset: -1,
minZoom: 1,
attribution: '<a href="https://www.maptiler.com/copyright/" target="_blank">© MapTiler</a> <a href="https://www.openstreetmap.org/copyright" target="_blank">© OpenStreetMap contributors</a>',
crossOrigin: true,
accessToken: this.options.access_token
}).addTo(this.map);
/*
// NOTE: this is for mapbox
var streets = L.tileLayer('https://api.mapbox.com/styles/v1/{id}/tiles/{z}/{x}/{y}?access_token={accessToken}', {
attribution: 'Map data &copy; <a href="https://www.openstreetmap.org/">OpenStreetMap</a> contributors, <a href="https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="https://www.mapbox.com/">Mapbox</a>',
maxZoom: 18,
id: 'mapbox/streets-v11',
accessToken: this.options.access_token
}).addTo(this.map);
*/
// layer groups
this.layer_groups.rider_available.addTo(this.map);
this.layer_groups.rider_active_jo.addTo(this.map);
this.layer_groups.customer.addTo(this.map);
this.layer_groups.mobile_customer.addTo(this.map);
// base layer
var baseMaps = {
'Streets': streets
};
if (this.options.display_overlay) {
// overlay layer
var overlayMaps = {
'Available Riders' : this.layer_groups.rider_available,
'JO Riders' : this.layer_groups.rider_active_jo,
'Customers' : this.layer_groups.customer,
'Mobile Customers': this.layer_groups.mobile_customer
}
L.control.layers(baseMaps, overlayMaps).addTo(this.map);
}
return this.map;
}
switchRiderStatus(rider_id, rider_status) {
console.log('switching rider ' + rider_id + ' to ' + rider_status);
// find the marker
console.log(this.rider_markers);
if (this.rider_markers.hasOwnProperty(rider_id)) {
var marker = this.rider_markers[rider_id];
} else {
// TODO: call ajax to get location and create marker
console.log('marker not found for rider');
return true;
}
// add it to proper layer group
console.log(rider_status);
if (rider_status == 'available') {
this.layer_groups.rider_active_jo.removeLayer(marker);
this.layer_groups.rider_available.addLayer(marker);
marker.setIcon(this.options.icons.rider_available);
} else if (rider_status == 'jo') {
this.layer_groups.rider_available.removeLayer(marker);
this.layer_groups.rider_active_jo.addLayer(marker);
marker.setIcon(this.options.icons.rider_active_jo);
}
}
switchJobOrderOrigin(jo_id, jo_origin) {
console.log('switching jo ' + jo_id + ' to ' + jo_origin);
// find the marker
if (this.cust_markers.hasOwnProperty(jo_id)) {
var marker = this.cust_markers[jo_id];
} else {
console.log('marker not found for customer');
return true;
}
// add marker to proper layer group
console.log(jo_origin);
if (jo_origin == 'mobile') {
this.layer_groups.customer.removeLayer(marker);
this.layer_groups.mobile_customer.addLayer(marker);
marker.setIcon(this.options.icons.mobile_customer);
} else {
this.layer_groups.mobile_customer.removeLayer(marker);
this.layer_groups.customer.addLayer(marker);
marker.setIcon(this.options.icons.customer);
}
}
putMarker(id, lat, lng, markers, icon, layer_group, popup_url) {
var my = this;
// existing marker
if (markers.hasOwnProperty(id)) {
markers[id].setLatLng(L.latLng(lat, lng));
return;
}
// new marker
markers[id] = L.marker(
[lat, lng],
{ icon: icon }
).addTo(layer_group);
if (my.options.enable_popup) {
markers[id].bindPopup('Loading...');
// bind ajax for popup
markers[id].on('click', function(e) {
var popup = e.target.getPopup();
var url = popup_url.replace('[id]', id);
console.log(url);
$.get(url).done(function(data) {
popup.setContent(data);
popup.update();
});
});
}
}
putCustomerMarker(id, lat, lng) {
this.putMarker(
id,
lat,
lng,
this.cust_markers,
this.options.icons.customer,
this.layer_groups.customer,
this.options.cust_popup_url
);
}
removeCustomerMarker(id) {
console.log('removing customer marker for ' + id);
var markers = this.cust_markers;
// no customer marker with that id
if (!markers.hasOwnProperty(id)) {
console.log('no such marker to remove');
return;
}
this.layer_groups.customer.removeLayer(markers[id]);
this.layer_groups.mobile_customer.removeLayer(markers[id]);
}
putMobileCustomerMarker(id, lat, lng) {
this.putMarker(
id,
lat,
lng,
this.cust_markers,
this.options.icons.mobile_customer,
this.layer_groups.mobile_customer,
this.options.cust_popup_url
);
}
putRiderAvailableMarker(id, lat, lng) {
this.putMarker(
id,
lat,
lng,
this.rider_markers,
this.options.icons.rider_available,
this.layer_groups.rider_available,
this.options.rider_popup_url
);
}
putRiderActiveJOMarker(id, lat, lng) {
this.putMarker(
id,
lat,
lng,
this.rider_markers,
this.options.icons.rider_active_jo,
this.layer_groups.rider_active_jo,
this.options.rider_popup_url
);
}
removeRiderMarker(id) {
console.log('removing rider marker for ' + id);
var markers = this.rider_markers;
if (!markers.hasOwnProperty(id)) {
console.log('no such marker to remove');
return;
}
this.layer_groups.rider_active_jo.removeLayer(markers[id]);
this.layer_groups.rider_available.removeLayer(markers[id]);
}
loadLocations(location_url) {
console.log(this.rider_markers);
var my = this;
$.ajax({
url: location_url,
}).done(function(response) {
// clear all markers
my.layer_groups.rider_available.clearLayers();
my.layer_groups.rider_active_jo.clearLayers();
my.layer_groups.customer.clearLayers();
my.layer_groups.mobile_customer.clearLayers();
// get riders and job orders
var riders = response.riders;
var jos = response.jos;
// job orders
$.each(jos, function(id, data) {
var lat = data.latitude;
var lng = data.longitude;
if (data.is_mobile)
my.putMobileCustomerMarker(id, lat, lng);
else
my.putCustomerMarker(id, lat, lng);
});
// riders
$.each(riders, function(id, data) {
var lat = data.latitude;
var lng = data.longitude;
if (data.has_jo) {
my.rider_availability[id] = false;
my.putRiderActiveJOMarker(id, lat, lng);
} else {
my.rider_availability[id] = true;
my.putRiderAvailableMarker(id, lat, lng);
}
});
// console.log(rider_markers);
});
}
}

View file

@ -1,194 +0,0 @@
class MapEventHandler {
constructor(options, dashmap, ssl) {
this.options = options;
this.dashmap = dashmap;
this.ssl = ssl;
}
connect(user_id, host, port) {
var d = new Date();
var client_id = "dash-" + user_id + "-" + d.getMonth() + "-" + d.getDate() + "-" + d.getHours() + "-" + d.getMinutes() + "-" + d.getSeconds() + "-" + d.getMilliseconds();
console.log(client_id);
this.mqtt = new Paho.MQTT.Client(host, port, client_id);
var options = {
useSSL: this.ssl,
timeout: 3,
invocationContext: this,
onSuccess: this.onConnect.bind(this),
};
this.mqtt.onMessageArrived = this.onMessage.bind(this);
console.log('connecting to mqtt server...');
this.mqtt.connect(options);
}
onConnect(icontext) {
console.log('mqtt connected!');
var my = icontext.invocationContext;
if (my.options.track_rider) {
// subscribe to rider locations
console.log('subscribing to ' + my.options.channels.rider_location);
my.mqtt.subscribe(my.options.channels.rider_location);
// subscribe to rider status
console.log('subscribing to ' + my.options.channels.rider_status);
my.mqtt.subscribe(my.options.channels.rider_status);
// subscribe to rider availability
console.log('subscribing to ' + my.options.channels.rider_availability);
my.mqtt.subscribe(my.options.channels.rider_availability);
}
if (my.options.track_jo) {
// subscribe to jo locations
console.log('subscribing to ' + my.options.channels.jo_location);
my.mqtt.subscribe(my.options.channels.jo_location);
// subscribe to jo status
console.log('subscribing to ' + my.options.channels.jo_status);
my.mqtt.subscribe(my.options.channels.jo_status);
// subscribe to jo origin
console.log('subscribing to ' + my.options.channels.jo_origin);
my.mqtt.subscribe(my.options.channels.jo_origin);
}
}
onMessage(msg) {
// console.log(msg);
console.log('received message');
var channel = msg.destinationName;
var chan_split = channel.split('/');
var payload = msg.payloadString;
// handle different channels
switch (chan_split[0]) {
case "rider":
this.handleRider(chan_split, payload);
break;
case "jo":
this.handleJobOrder(chan_split, payload);
break;
}
}
handleRider(chan_split, payload) {
//console.log("rider message");
switch (chan_split[2]) {
case "location":
console.log("got location for rider " + chan_split[1] + " - " + payload);
var pl_split = payload.split(':');
// console.log(pl_split);
// check for correct format
if (pl_split.length != 2)
break;
var lat = parseFloat(pl_split[0]);
var lng = parseFloat(pl_split[1]);
// TODO: check if available or not
this.dashmap.putRiderAvailableMarker(chan_split[1], lat, lng);
break;
case "status":
console.log("got status for rider " + chan_split[1] + " - " + payload);
switch (payload) {
case 'available':
this.dashmap.switchRiderStatus(chan_split[1], 'available');
break;
case 'jo':
console.log('jo status');
this.dashmap.switchRiderStatus(chan_split[1], 'jo');
break;
case 'logout':
this.dashmap.removeRiderMarker(chan_split[1]);
break;
}
break;
case "availability":
console.log("got availability for rider " + chan_split[1] + " - " + payload);
var obj = JSON.parse(payload);
var status = obj.status;
// console.log("status " + status);
switch (status) {
case 'rider_offline':
this.dashmap.rider_availability[chan_split[1]] = false;
this.dashmap.removeRiderMarker(chan_split[1]);
break;
case 'rider_online':
this.dashmap.rider_availability[chan_split[1]] = true;
var lat = parseFloat(obj.latitude);
var lng = parseFloat(obj.longitude);
// check if rider is available / unavailable
var dashmap = this.dashmap;
var url = dashmap.options.rider_availability_url;
var rider_availability_url = url.replace('[id]', chan_split[1]);
$.get(rider_availability_url).done(function(data) {
console.log('rider availability - ' + data);
switch (data) {
case 'available':
console.log('putting available marker ' + chan_split[1] + ' ' + lat + ':' + lng);
dashmap.switchRiderStatus(chan_split[1], 'available');
dashmap.putRiderAvailableMarker(chan_split[1], lat, lng);
break;
case 'unavailable':
console.log('putting active jo marker ' + chan_split[1] + ' ' + lat + ':' + lng);
dashmap.switchRiderStatus(chan_split[1], 'jo');
dashmap.putRiderActiveJOMarker(chan_split[1], lat, lng);
break;
}
});
break;
}
break;
}
}
handleJobOrder(chan_split, payload) {
console.log("jo message");
var id = chan_split[1];
switch (chan_split[2]) {
case "location":
// var my = this;
console.log("got location for jo " + id + " - " + payload);
var pl_split = payload.split(':');
// check for correct format
if (pl_split.length != 2)
break;
var lat = parseFloat(pl_split[0]);
var lng = parseFloat(pl_split[1]);
// move marker
console.log(lat + ' - ' + lng);
this.dashmap.putCustomerMarker(id, lat, lng);
break;
case "status":
console.log("got status for jo " + payload);
switch (payload) {
case 'cancel':
case 'fulfill':
case 'delete':
this.dashmap.removeCustomerMarker(id);
break;
}
break;
case "origin":
console.log("got origin for jo " + payload);
if (payload == 'mobile_app')
{
this.dashmap.switchJobOrderOrigin(chan_split[1], 'mobile');
}
break;
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Some files were not shown because too many files have changed in this diff Show more