From eb5caa83a1d77815017136092cff06881966195d Mon Sep 17 00:00:00 2001 From: Le Viet Date: Wed, 30 Mar 2022 16:49:28 +0700 Subject: [PATCH] update profile and models --- Makefile | 12 + package-lock.json | 57 +++ package.json | 2 + src/server/models/ActionLogs.js | 41 ++ src/server/models/ActivityListcategory.js | 30 ++ src/server/models/AddressAlias.js | 32 ++ src/server/models/AddressDistanceCache.js | 45 ++ src/server/models/AddressTimezone.js | 20 + src/server/models/AppSettings.js | 51 ++ src/server/models/BackofficeSession.js | 43 ++ src/server/models/Banks.js | 20 + src/server/models/BkoAcl.js | 24 + src/server/models/BkoAclPermissionLevel.js | 24 + src/server/models/BkoAclWhitelist.js | 20 + src/server/models/BkoAclWhitelistExtra.js | 28 ++ src/server/models/BkoPermissionLevel.js | 35 ++ src/server/models/BkoUsers.js | 63 +++ src/server/models/BkoUsersMembersAccess.js | 29 ++ src/server/models/BlockIp.js | 29 ++ src/server/models/BlogAppArticles.js | 34 ++ src/server/models/Booking.js | 60 +++ src/server/models/BookingDetails.js | 41 ++ src/server/models/CardActionTarget.js | 39 ++ src/server/models/CardActions.js | 29 ++ src/server/models/CardBehavior.js | 38 ++ src/server/models/CardCategory.js | 39 ++ src/server/models/CardImageCategory.js | 24 + src/server/models/CardImages.js | 50 ++ src/server/models/CityServices.js | 37 ++ src/server/models/Country.js | 58 +++ src/server/models/CountryServices.js | 37 ++ src/server/models/CountryWeatherStations.js | 45 ++ src/server/models/CrashLog.js | 45 ++ src/server/models/CreditCardBenefits.js | 28 ++ src/server/models/CreditCards.js | 24 + src/server/models/DecisionCards.js | 34 ++ src/server/models/DecisionGroup.js | 48 ++ src/server/models/DecisionGroupAction.js | 34 ++ src/server/models/DecisionLogic.js | 70 +++ src/server/models/EmailCycleTypes.js | 29 ++ src/server/models/EmailDebug.js | 28 ++ src/server/models/EmailTrigger.js | 98 ++++ src/server/models/Emails.js | 46 ++ src/server/models/EmissionAvrgCommute.js | 47 ++ src/server/models/EmissionGasModel.js | 45 ++ src/server/models/EmissionModel.js | 49 ++ src/server/models/Estimates.js | 49 ++ src/server/models/GeocodingLogs.js | 48 ++ src/server/models/GeofenceAreaAnchor.js | 28 ++ .../models/GeofenceAreaAverageQuotes.js | 57 +++ src/server/models/GeofenceAreaCitySettings.js | 34 ++ src/server/models/GlobalSettings.js | 38 ++ .../models/GoogleDirectionsLegStepDetails.js | 72 +++ src/server/models/GoogleDirectionsLegSteps.js | 56 +++ src/server/models/GoogleDirectionsLegs.js | 56 +++ src/server/models/GpsTriggerLocation.js | 43 ++ src/server/models/GroupDecisionLogic.js | 44 ++ src/server/models/GtfsAgency.js | 53 ++ src/server/models/GtfsFareAttributes.js | 53 ++ src/server/models/GtfsFareRules.js | 45 ++ src/server/models/GtfsRoutes.js | 65 +++ src/server/models/GtfsStopTimes.js | 65 +++ src/server/models/GtfsTrips.js | 69 +++ src/server/models/Holidays.js | 33 ++ src/server/models/KibanaLogViewerUsers.js | 29 ++ src/server/models/LegStepQuote.js | 57 +++ src/server/models/LoginAttempts.js | 34 ++ src/server/models/MainCards.js | 196 ++++++++ src/server/models/MemberSavedCards.js | 34 ++ src/server/models/Members.js | 180 +++++++ src/server/models/MembersAnalysis.js | 55 +++ src/server/models/MembersBankAccounts.js | 74 +++ src/server/models/MembersBankimport.js | 68 +++ src/server/models/MembersCardAssign.js | 74 +++ src/server/models/MembersCardclicktrack.js | 29 ++ src/server/models/MembersCards.js | 50 ++ src/server/models/MembersCarpool.js | 48 ++ src/server/models/MembersCarpoolFriends.js | 73 +++ .../models/MembersDeviceManufacturers.js | 20 + src/server/models/MembersDeviceModels.js | 20 + src/server/models/MembersDevicePlatforms.js | 20 + src/server/models/MembersDevices.js | 79 +++ src/server/models/MembersLifecycleEmails.js | 42 ++ src/server/models/MembersNotification.js | 60 +++ src/server/models/MembersOnboardingSurvey.js | 38 ++ src/server/models/MembersPending.js | 54 ++ src/server/models/MembersPersonaltyLog.js | 29 ++ src/server/models/MembersPoints.js | 39 ++ src/server/models/MembersPointsRedeem.js | 39 ++ src/server/models/MembersProfile.js | 61 +++ src/server/models/MembersSession.js | 43 ++ src/server/models/MembersStatus.js | 47 ++ src/server/models/MembersSurvey.js | 38 ++ src/server/models/MembersTask.js | 34 ++ src/server/models/MembersTrackemail.js | 47 ++ src/server/models/MembersTracking.js | 49 ++ .../models/MembersTransactionsImportRaw.js | 88 ++++ src/server/models/MembersTrips.js | 50 ++ src/server/models/MockGpsLocation.js | 38 ++ src/server/models/MyfloatVersion.js | 45 ++ .../models/MytransportsgAdviceSchedule.js | 37 ++ src/server/models/NotificationTypes.js | 29 ++ src/server/models/Oauth2Providers.js | 53 ++ src/server/models/Oauth2PullJobThreads.js | 58 +++ src/server/models/Oauth2PullJobs.js | 37 ++ src/server/models/Oauth2Tokens.js | 66 +++ src/server/models/OnboardingSurvey.js | 38 ++ src/server/models/OnboardingSurveyCards.js | 34 ++ src/server/models/OnboardingSurveyGroup.js | 34 ++ src/server/models/OperationKeyValueStore.js | 19 + src/server/models/ParsedemailItem.js | 88 ++++ src/server/models/ParsedemailItemAdvice.js | 61 +++ .../models/ParsedemailItemAdviceGoogle.js | 39 ++ .../models/ParsedemailItemAdviceResult.js | 25 + .../models/ParsedemailItemAdviceSchedule.js | 29 ++ src/server/models/ParsedemailItemCancelled.js | 69 +++ src/server/models/ParsedemailItemExtra.js | 36 ++ src/server/models/ParsedemailItemPayment.js | 56 +++ src/server/models/ParsedemailItemRewards.js | 52 ++ src/server/models/PlatformUser.js | 34 ++ src/server/models/PointsRedeemAvialable.js | 51 ++ src/server/models/PointsSettings.js | 48 ++ src/server/models/QuoteGroup.js | 53 ++ src/server/models/Quotes.js | 71 +++ src/server/models/ResetPassword.js | 66 ++- src/server/models/ScreenCards.js | 29 ++ src/server/models/SingaporeBuildings.js | 56 +++ src/server/models/SingaporeBusStopFares.js | 32 ++ src/server/models/SingaporeBusStops.js | 41 ++ src/server/models/SingaporeBusStopsLta.js | 36 ++ src/server/models/SingaporeDistricts.js | 35 ++ src/server/models/SingaporeMrtlrtStopFares.js | 32 ++ src/server/models/SingaporeMrtlrtStopNames.js | 48 ++ .../models/SingaporeMrtlrtStopsMytransport.js | 32 ++ .../models/SingaporeRegionCoordinates.js | 28 ++ src/server/models/SingaporeRegions.js | 19 + src/server/models/SingaporeSectors.js | 19 + src/server/models/SubscriptionSummary.js | 64 +++ src/server/models/Subscriptions.js | 38 ++ src/server/models/SubscriptionsDetail.js | 48 ++ src/server/models/TestAccounts.js | 30 ++ src/server/models/ThrottleFunction.js | 29 ++ src/server/models/ThrottlingIp.js | 35 ++ src/server/models/TouristAttraction.js | 42 ++ src/server/models/TrackedEmailItem.js | 57 +++ src/server/models/TrackingDataJob.js | 30 ++ src/server/models/TransportProviderApps.js | 32 ++ src/server/models/TransportProviders.js | 59 +++ src/server/models/TriggerExpiration.js | 29 ++ src/server/models/TripHolidays.js | 37 ++ src/server/models/TripPriceComparison.js | 45 ++ src/server/models/TripSurgePrice.js | 29 ++ src/server/models/TripWeather.js | 33 ++ src/server/models/WeatherServices.js | 33 ++ src/server/models/init-models.js | 464 ++++++++++++++++++ src/server/models/member.js | 119 ----- src/server/routes/member.js | 2 - src/server/services/member/member.js | 32 +- 158 files changed, 7371 insertions(+), 156 deletions(-) create mode 100644 Makefile create mode 100644 src/server/models/ActionLogs.js create mode 100644 src/server/models/ActivityListcategory.js create mode 100644 src/server/models/AddressAlias.js create mode 100644 src/server/models/AddressDistanceCache.js create mode 100644 src/server/models/AddressTimezone.js create mode 100644 src/server/models/AppSettings.js create mode 100644 src/server/models/BackofficeSession.js create mode 100644 src/server/models/Banks.js create mode 100644 src/server/models/BkoAcl.js create mode 100644 src/server/models/BkoAclPermissionLevel.js create mode 100644 src/server/models/BkoAclWhitelist.js create mode 100644 src/server/models/BkoAclWhitelistExtra.js create mode 100644 src/server/models/BkoPermissionLevel.js create mode 100644 src/server/models/BkoUsers.js create mode 100644 src/server/models/BkoUsersMembersAccess.js create mode 100644 src/server/models/BlockIp.js create mode 100644 src/server/models/BlogAppArticles.js create mode 100644 src/server/models/Booking.js create mode 100644 src/server/models/BookingDetails.js create mode 100644 src/server/models/CardActionTarget.js create mode 100644 src/server/models/CardActions.js create mode 100644 src/server/models/CardBehavior.js create mode 100644 src/server/models/CardCategory.js create mode 100644 src/server/models/CardImageCategory.js create mode 100644 src/server/models/CardImages.js create mode 100644 src/server/models/CityServices.js create mode 100644 src/server/models/Country.js create mode 100644 src/server/models/CountryServices.js create mode 100644 src/server/models/CountryWeatherStations.js create mode 100644 src/server/models/CrashLog.js create mode 100644 src/server/models/CreditCardBenefits.js create mode 100644 src/server/models/CreditCards.js create mode 100644 src/server/models/DecisionCards.js create mode 100644 src/server/models/DecisionGroup.js create mode 100644 src/server/models/DecisionGroupAction.js create mode 100644 src/server/models/DecisionLogic.js create mode 100644 src/server/models/EmailCycleTypes.js create mode 100644 src/server/models/EmailDebug.js create mode 100644 src/server/models/EmailTrigger.js create mode 100644 src/server/models/Emails.js create mode 100644 src/server/models/EmissionAvrgCommute.js create mode 100644 src/server/models/EmissionGasModel.js create mode 100644 src/server/models/EmissionModel.js create mode 100644 src/server/models/Estimates.js create mode 100644 src/server/models/GeocodingLogs.js create mode 100644 src/server/models/GeofenceAreaAnchor.js create mode 100644 src/server/models/GeofenceAreaAverageQuotes.js create mode 100644 src/server/models/GeofenceAreaCitySettings.js create mode 100644 src/server/models/GlobalSettings.js create mode 100644 src/server/models/GoogleDirectionsLegStepDetails.js create mode 100644 src/server/models/GoogleDirectionsLegSteps.js create mode 100644 src/server/models/GoogleDirectionsLegs.js create mode 100644 src/server/models/GpsTriggerLocation.js create mode 100644 src/server/models/GroupDecisionLogic.js create mode 100644 src/server/models/GtfsAgency.js create mode 100644 src/server/models/GtfsFareAttributes.js create mode 100644 src/server/models/GtfsFareRules.js create mode 100644 src/server/models/GtfsRoutes.js create mode 100644 src/server/models/GtfsStopTimes.js create mode 100644 src/server/models/GtfsTrips.js create mode 100644 src/server/models/Holidays.js create mode 100644 src/server/models/KibanaLogViewerUsers.js create mode 100644 src/server/models/LegStepQuote.js create mode 100644 src/server/models/LoginAttempts.js create mode 100644 src/server/models/MainCards.js create mode 100644 src/server/models/MemberSavedCards.js create mode 100644 src/server/models/Members.js create mode 100644 src/server/models/MembersAnalysis.js create mode 100644 src/server/models/MembersBankAccounts.js create mode 100644 src/server/models/MembersBankimport.js create mode 100644 src/server/models/MembersCardAssign.js create mode 100644 src/server/models/MembersCardclicktrack.js create mode 100644 src/server/models/MembersCards.js create mode 100644 src/server/models/MembersCarpool.js create mode 100644 src/server/models/MembersCarpoolFriends.js create mode 100644 src/server/models/MembersDeviceManufacturers.js create mode 100644 src/server/models/MembersDeviceModels.js create mode 100644 src/server/models/MembersDevicePlatforms.js create mode 100644 src/server/models/MembersDevices.js create mode 100644 src/server/models/MembersLifecycleEmails.js create mode 100644 src/server/models/MembersNotification.js create mode 100644 src/server/models/MembersOnboardingSurvey.js create mode 100644 src/server/models/MembersPending.js create mode 100644 src/server/models/MembersPersonaltyLog.js create mode 100644 src/server/models/MembersPoints.js create mode 100644 src/server/models/MembersPointsRedeem.js create mode 100644 src/server/models/MembersProfile.js create mode 100644 src/server/models/MembersSession.js create mode 100644 src/server/models/MembersStatus.js create mode 100644 src/server/models/MembersSurvey.js create mode 100644 src/server/models/MembersTask.js create mode 100644 src/server/models/MembersTrackemail.js create mode 100644 src/server/models/MembersTracking.js create mode 100644 src/server/models/MembersTransactionsImportRaw.js create mode 100644 src/server/models/MembersTrips.js create mode 100644 src/server/models/MockGpsLocation.js create mode 100644 src/server/models/MyfloatVersion.js create mode 100644 src/server/models/MytransportsgAdviceSchedule.js create mode 100644 src/server/models/NotificationTypes.js create mode 100644 src/server/models/Oauth2Providers.js create mode 100644 src/server/models/Oauth2PullJobThreads.js create mode 100644 src/server/models/Oauth2PullJobs.js create mode 100644 src/server/models/Oauth2Tokens.js create mode 100644 src/server/models/OnboardingSurvey.js create mode 100644 src/server/models/OnboardingSurveyCards.js create mode 100644 src/server/models/OnboardingSurveyGroup.js create mode 100644 src/server/models/OperationKeyValueStore.js create mode 100644 src/server/models/ParsedemailItem.js create mode 100644 src/server/models/ParsedemailItemAdvice.js create mode 100644 src/server/models/ParsedemailItemAdviceGoogle.js create mode 100644 src/server/models/ParsedemailItemAdviceResult.js create mode 100644 src/server/models/ParsedemailItemAdviceSchedule.js create mode 100644 src/server/models/ParsedemailItemCancelled.js create mode 100644 src/server/models/ParsedemailItemExtra.js create mode 100644 src/server/models/ParsedemailItemPayment.js create mode 100644 src/server/models/ParsedemailItemRewards.js create mode 100644 src/server/models/PlatformUser.js create mode 100644 src/server/models/PointsRedeemAvialable.js create mode 100644 src/server/models/PointsSettings.js create mode 100644 src/server/models/QuoteGroup.js create mode 100644 src/server/models/Quotes.js create mode 100644 src/server/models/ScreenCards.js create mode 100644 src/server/models/SingaporeBuildings.js create mode 100644 src/server/models/SingaporeBusStopFares.js create mode 100644 src/server/models/SingaporeBusStops.js create mode 100644 src/server/models/SingaporeBusStopsLta.js create mode 100644 src/server/models/SingaporeDistricts.js create mode 100644 src/server/models/SingaporeMrtlrtStopFares.js create mode 100644 src/server/models/SingaporeMrtlrtStopNames.js create mode 100644 src/server/models/SingaporeMrtlrtStopsMytransport.js create mode 100644 src/server/models/SingaporeRegionCoordinates.js create mode 100644 src/server/models/SingaporeRegions.js create mode 100644 src/server/models/SingaporeSectors.js create mode 100644 src/server/models/SubscriptionSummary.js create mode 100644 src/server/models/Subscriptions.js create mode 100644 src/server/models/SubscriptionsDetail.js create mode 100644 src/server/models/TestAccounts.js create mode 100644 src/server/models/ThrottleFunction.js create mode 100644 src/server/models/ThrottlingIp.js create mode 100644 src/server/models/TouristAttraction.js create mode 100644 src/server/models/TrackedEmailItem.js create mode 100644 src/server/models/TrackingDataJob.js create mode 100644 src/server/models/TransportProviderApps.js create mode 100644 src/server/models/TransportProviders.js create mode 100644 src/server/models/TriggerExpiration.js create mode 100644 src/server/models/TripHolidays.js create mode 100644 src/server/models/TripPriceComparison.js create mode 100644 src/server/models/TripSurgePrice.js create mode 100644 src/server/models/TripWeather.js create mode 100644 src/server/models/WeatherServices.js create mode 100644 src/server/models/init-models.js delete mode 100755 src/server/models/member.js diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..3eb66ad --- /dev/null +++ b/Makefile @@ -0,0 +1,12 @@ +up: + docker-compose up --remove-orphans +build: + docker-compose build --no-cache --force-rm +provision: + docker-compose exec floatapp_node npm install +down: + docker-compose down +migrate: + docker-compose exec floatapp_node npx sequelize db:migrate +bash: + docker-compose exec floatapp_node bash diff --git a/package-lock.json b/package-lock.json index 954d9a0..25c0f02 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4111,6 +4111,11 @@ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", "dev": true }, + "reserved-words": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/reserved-words/-/reserved-words-0.1.2.tgz", + "integrity": "sha1-AKCUD5jNUBrqqsMWQR2a3FKzGrE=" + }, "resolve": { "version": "1.22.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", @@ -4266,6 +4271,58 @@ } } }, + "sequelize-auto": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/sequelize-auto/-/sequelize-auto-0.8.8.tgz", + "integrity": "sha512-9o0qi2yMA86oFqcA5Nh14PnQSHP0E9WPEB4hP/NgxqdFE44Nq2u8Di5O3xmvWwXMIV6W+Q0YI/2VTLvlMJAjnQ==", + "requires": { + "lodash": "^4.17.21", + "mkdirp": "^1.0.4", + "reserved-words": "^0.1.2", + "yargs": "^16.2.0" + }, + "dependencies": { + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + }, + "y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==" + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" + } + } + }, "sequelize-cli": { "version": "6.4.1", "resolved": "https://registry.npmjs.org/sequelize-cli/-/sequelize-cli-6.4.1.tgz", diff --git a/package.json b/package.json index 9f7a80b..95cc067 100755 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "express": "4.17.1", "express-validator": "^6.14.0", "jsonwebtoken": "^8.5.1", + "lodash": "^4.17.21", "morgan": "1.9.1", "node-gyp": "^9.0.0", "nodemailer": "^6.7.2", @@ -28,6 +29,7 @@ "pg-promise": "^10.11.1", "postgres": "^1.0.2", "sequelize": "^6.17.0", + "sequelize-auto": "^0.8.8", "sequelize-cli": "^6.4.1", "swagger-jsdoc": "^6.1.0", "swagger-ui-express": "^4.3.0" diff --git a/src/server/models/ActionLogs.js b/src/server/models/ActionLogs.js new file mode 100644 index 0000000..3352fe8 --- /dev/null +++ b/src/server/models/ActionLogs.js @@ -0,0 +1,41 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ActionLogs', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + table_name: { + type: DataTypes.STRING(100), + allowNull: true + }, + operation: { + type: DataTypes.STRING(150), + allowNull: true + }, + input_data: { + type: DataTypes.JSON, + allowNull: true + }, + response_data: { + type: DataTypes.JSON, + allowNull: true + }, + url: { + type: DataTypes.STRING(250), + allowNull: true + } + }, { + sequelize, + tableName: 'action_logs', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ActivityListcategory.js b/src/server/models/ActivityListcategory.js new file mode 100644 index 0000000..5ca0527 --- /dev/null +++ b/src/server/models/ActivityListcategory.js @@ -0,0 +1,30 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ActivityListcategory', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + category: { + type: DataTypes.STRING(30), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'activity_listcategory', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/AddressAlias.js b/src/server/models/AddressAlias.js new file mode 100644 index 0000000..8788ff0 --- /dev/null +++ b/src/server/models/AddressAlias.js @@ -0,0 +1,32 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('AddressAlias', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + address_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + name: { + type: DataTypes.STRING(200), + allowNull: true + }, + geocoding_date: { + type: DataTypes.DATE, + allowNull: true + }, + source: { + type: DataTypes.STRING(40), + allowNull: true + } + }, { + sequelize, + tableName: 'address_alias', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/AddressDistanceCache.js b/src/server/models/AddressDistanceCache.js new file mode 100644 index 0000000..3d96e13 --- /dev/null +++ b/src/server/models/AddressDistanceCache.js @@ -0,0 +1,45 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('AddressDistanceCache', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + start_lat: { + type: DataTypes.DECIMAL, + allowNull: true + }, + start_lng: { + type: DataTypes.DECIMAL, + allowNull: true + }, + end_lat: { + type: DataTypes.DECIMAL, + allowNull: true + }, + end_lng: { + type: DataTypes.DECIMAL, + allowNull: true + }, + distance: { + type: DataTypes.DECIMAL, + allowNull: true + }, + duration: { + type: DataTypes.DECIMAL, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'address_distance_cache', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/AddressTimezone.js b/src/server/models/AddressTimezone.js new file mode 100644 index 0000000..c3b3311 --- /dev/null +++ b/src/server/models/AddressTimezone.js @@ -0,0 +1,20 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('AddressTimezone', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + timezone: { + type: DataTypes.STRING(40), + allowNull: true + } + }, { + sequelize, + tableName: 'address_timezone', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/AppSettings.js b/src/server/models/AppSettings.js new file mode 100644 index 0000000..d81d4b8 --- /dev/null +++ b/src/server/models/AppSettings.js @@ -0,0 +1,51 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('AppSettings', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + lorder: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + setting_key: { + type: DataTypes.STRING(25), + allowNull: false + }, + description: { + type: DataTypes.STRING(160), + allowNull: true + }, + value: { + type: DataTypes.STRING(250), + allowNull: true + }, + value_type: { + type: DataTypes.STRING(2), + allowNull: false + }, + option_value: { + type: DataTypes.STRING(35), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'app_settings', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/BackofficeSession.js b/src/server/models/BackofficeSession.js new file mode 100644 index 0000000..f6a7f84 --- /dev/null +++ b/src/server/models/BackofficeSession.js @@ -0,0 +1,43 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('BackofficeSession', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + backoffice_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + sessionid: { + type: DataTypes.STRING(100), + allowNull: false + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + loc: { + type: DataTypes.INET, + allowNull: true + } + }, { + sequelize, + tableName: 'backoffice_session', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Banks.js b/src/server/models/Banks.js new file mode 100644 index 0000000..44388a4 --- /dev/null +++ b/src/server/models/Banks.js @@ -0,0 +1,20 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Banks', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + bank_name: { + type: DataTypes.STRING(50), + allowNull: true + } + }, { + sequelize, + tableName: 'banks', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/BkoAcl.js b/src/server/models/BkoAcl.js new file mode 100644 index 0000000..cf5f3ed --- /dev/null +++ b/src/server/models/BkoAcl.js @@ -0,0 +1,24 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('BkoAcl', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + class_name: { + type: DataTypes.STRING(50), + allowNull: true + }, + method_name: { + type: DataTypes.STRING(50), + allowNull: true + } + }, { + sequelize, + tableName: 'bko_acl', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/BkoAclPermissionLevel.js b/src/server/models/BkoAclPermissionLevel.js new file mode 100644 index 0000000..6eefc62 --- /dev/null +++ b/src/server/models/BkoAclPermissionLevel.js @@ -0,0 +1,24 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('BkoAclPermissionLevel', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + bko_acl_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + plevel: { + type: DataTypes.INTEGER, + allowNull: true + } + }, { + sequelize, + tableName: 'bko_acl_permission_level', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/BkoAclWhitelist.js b/src/server/models/BkoAclWhitelist.js new file mode 100644 index 0000000..d9cfc77 --- /dev/null +++ b/src/server/models/BkoAclWhitelist.js @@ -0,0 +1,20 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('BkoAclWhitelist', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + bko_acl_id: { + type: DataTypes.BIGINT, + allowNull: true + } + }, { + sequelize, + tableName: 'bko_acl_whitelist', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/BkoAclWhitelistExtra.js b/src/server/models/BkoAclWhitelistExtra.js new file mode 100644 index 0000000..fb05a21 --- /dev/null +++ b/src/server/models/BkoAclWhitelistExtra.js @@ -0,0 +1,28 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('BkoAclWhitelistExtra', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + bko_acl_whitelist_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + parameter_name: { + type: DataTypes.STRING(50), + allowNull: true + }, + parameter_value: { + type: DataTypes.STRING(50), + allowNull: true + } + }, { + sequelize, + tableName: 'bko_acl_whitelist_extra', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/BkoPermissionLevel.js b/src/server/models/BkoPermissionLevel.js new file mode 100644 index 0000000..2d96df1 --- /dev/null +++ b/src/server/models/BkoPermissionLevel.js @@ -0,0 +1,35 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('BkoPermissionLevel', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + name: { + type: DataTypes.STRING(50), + allowNull: false + }, + plevel: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'bko_permission_level', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/BkoUsers.js b/src/server/models/BkoUsers.js new file mode 100644 index 0000000..c6afcc1 --- /dev/null +++ b/src/server/models/BkoUsers.js @@ -0,0 +1,63 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('BkoUsers', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + pid: { + type: DataTypes.INTEGER, + allowNull: true + }, + firstname: { + type: DataTypes.STRING(50), + allowNull: false + }, + lastname: { + type: DataTypes.STRING(50), + allowNull: false + }, + email: { + type: DataTypes.STRING(150), + allowNull: false + }, + username: { + type: DataTypes.STRING(25), + allowNull: false + }, + password: { + type: DataTypes.STRING(125), + allowNull: false + }, + plevel: { + type: DataTypes.INTEGER, + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + last_login: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + loc: { + type: DataTypes.INET, + allowNull: true + } + }, { + sequelize, + tableName: 'bko_users', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/BkoUsersMembersAccess.js b/src/server/models/BkoUsersMembersAccess.js new file mode 100644 index 0000000..466b378 --- /dev/null +++ b/src/server/models/BkoUsersMembersAccess.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('BkoUsersMembersAccess', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + bko_user_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + flags: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + } + }, { + sequelize, + tableName: 'bko_users_members_access', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/BlockIp.js b/src/server/models/BlockIp.js new file mode 100644 index 0000000..f3add11 --- /dev/null +++ b/src/server/models/BlockIp.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('BlockIp', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + ip: { + type: DataTypes.INET, + allowNull: true + }, + reason: { + type: DataTypes.STRING(20), + allowNull: true + }, + blocked: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'block_ip', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/BlogAppArticles.js b/src/server/models/BlogAppArticles.js new file mode 100644 index 0000000..92eeaf6 --- /dev/null +++ b/src/server/models/BlogAppArticles.js @@ -0,0 +1,34 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('BlogAppArticles', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + blog_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + description: { + type: DataTypes.STRING(100), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'blog_app_articles', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Booking.js b/src/server/models/Booking.js new file mode 100644 index 0000000..74f9988 --- /dev/null +++ b/src/server/models/Booking.js @@ -0,0 +1,60 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Booking', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + quote_id: { + type: DataTypes.BIGINT, + allowNull: false + }, + provider_booking_ref: { + type: DataTypes.STRING(200), + allowNull: false + }, + details: { + type: DataTypes.JSON, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + updated: { + type: DataTypes.DATE, + allowNull: true + }, + completed: { + type: DataTypes.DATE, + allowNull: true + }, + status: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 0 + }, + message: { + type: DataTypes.TEXT, + allowNull: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + cost: { + type: DataTypes.DECIMAL, + allowNull: true, + defaultValue: 0 + } + }, { + sequelize, + tableName: 'booking', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/BookingDetails.js b/src/server/models/BookingDetails.js new file mode 100644 index 0000000..727b57c --- /dev/null +++ b/src/server/models/BookingDetails.js @@ -0,0 +1,41 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('BookingDetails', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + booking_id: { + type: DataTypes.BIGINT, + allowNull: false + }, + action: { + type: DataTypes.STRING(64), + allowNull: true + }, + details: { + type: DataTypes.JSON, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + message: { + type: DataTypes.TEXT, + allowNull: true + }, + request: { + type: DataTypes.JSON, + allowNull: true + } + }, { + sequelize, + tableName: 'booking_details', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/CardActionTarget.js b/src/server/models/CardActionTarget.js new file mode 100644 index 0000000..bc42709 --- /dev/null +++ b/src/server/models/CardActionTarget.js @@ -0,0 +1,39 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('CardActionTarget', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + lorder: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + description: { + type: DataTypes.STRING(25), + allowNull: false + }, + target_key: { + type: DataTypes.STRING(10), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'card_action_target', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/CardActions.js b/src/server/models/CardActions.js new file mode 100644 index 0000000..fd88529 --- /dev/null +++ b/src/server/models/CardActions.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('CardActions', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + name: { + type: DataTypes.STRING(100), + allowNull: false + }, + type: { + type: DataTypes.ENUM("alert","browser","deeplink","callback"), + allowNull: false, + defaultValue: "alert" + }, + data: { + type: DataTypes.TEXT, + allowNull: true + } + }, { + sequelize, + tableName: 'card_actions', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/CardBehavior.js b/src/server/models/CardBehavior.js new file mode 100644 index 0000000..0570238 --- /dev/null +++ b/src/server/models/CardBehavior.js @@ -0,0 +1,38 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('CardBehavior', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + key: { + type: DataTypes.STRING(10), + allowNull: false + }, + description: { + type: DataTypes.STRING(350), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + name: { + type: DataTypes.STRING(100), + allowNull: false + } + }, { + sequelize, + tableName: 'card_behavior', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/CardCategory.js b/src/server/models/CardCategory.js new file mode 100644 index 0000000..7c07a32 --- /dev/null +++ b/src/server/models/CardCategory.js @@ -0,0 +1,39 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('CardCategory', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + cat: { + type: DataTypes.STRING(15), + allowNull: false + }, + name: { + type: DataTypes.STRING(35), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + special: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + } + }, { + sequelize, + tableName: 'card_category', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/CardImageCategory.js b/src/server/models/CardImageCategory.js new file mode 100644 index 0000000..1d3fd20 --- /dev/null +++ b/src/server/models/CardImageCategory.js @@ -0,0 +1,24 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('CardImageCategory', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + name: { + type: DataTypes.STRING(80), + allowNull: false + }, + description: { + type: DataTypes.STRING(100), + allowNull: true + } + }, { + sequelize, + tableName: 'card_image_category', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/CardImages.js b/src/server/models/CardImages.js new file mode 100644 index 0000000..bd99304 --- /dev/null +++ b/src/server/models/CardImages.js @@ -0,0 +1,50 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('CardImages', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + catid: { + type: DataTypes.INTEGER, + allowNull: true + }, + uniqueid: { + type: DataTypes.STRING(20), + allowNull: false + }, + name: { + type: DataTypes.STRING(100), + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + file_size: { + type: DataTypes.INTEGER, + allowNull: true + }, + format: { + type: DataTypes.STRING(20), + allowNull: true + }, + dimensions: { + type: DataTypes.STRING(20), + allowNull: true + }, + t1: { + type: DataTypes.STRING(2), + allowNull: true, + defaultValue: "FF" + } + }, { + sequelize, + tableName: 'card_images', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/CityServices.js b/src/server/models/CityServices.js new file mode 100644 index 0000000..167a886 --- /dev/null +++ b/src/server/models/CityServices.js @@ -0,0 +1,37 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('CityServices', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + city_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + name: { + type: DataTypes.STRING(50), + allowNull: true + }, + transport_provider_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + custom: { + type: DataTypes.JSON, + allowNull: true + }, + status: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 1 + } + }, { + sequelize, + tableName: 'city_services', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Country.js b/src/server/models/Country.js new file mode 100644 index 0000000..078b16c --- /dev/null +++ b/src/server/models/Country.js @@ -0,0 +1,58 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Country', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + country: { + type: DataTypes.STRING(50), + allowNull: false + }, + code: { + type: DataTypes.STRING(2), + allowNull: false + }, + dial_code: { + type: DataTypes.STRING(5), + allowNull: false + }, + currency_name: { + type: DataTypes.STRING(40), + allowNull: false + }, + currency_symbol: { + type: DataTypes.STRING(20), + allowNull: false + }, + currency_code: { + type: DataTypes.STRING(10), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + top_image: { + type: DataTypes.INTEGER, + allowNull: true + }, + avrg_commute: { + type: DataTypes.DOUBLE, + allowNull: true, + defaultValue: 0 + }, + short_name: { + type: DataTypes.STRING(3), + allowNull: true + } + }, { + sequelize, + tableName: 'country', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/CountryServices.js b/src/server/models/CountryServices.js new file mode 100644 index 0000000..719c20f --- /dev/null +++ b/src/server/models/CountryServices.js @@ -0,0 +1,37 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('CountryServices', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + country_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + name: { + type: DataTypes.STRING(50), + allowNull: true + }, + transport_provider_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + custom: { + type: DataTypes.JSON, + allowNull: true + }, + status: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 1 + } + }, { + sequelize, + tableName: 'country_services', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/CountryWeatherStations.js b/src/server/models/CountryWeatherStations.js new file mode 100644 index 0000000..07d72d7 --- /dev/null +++ b/src/server/models/CountryWeatherStations.js @@ -0,0 +1,45 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('CountryWeatherStations', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + country_code: { + type: DataTypes.BIGINT, + allowNull: true + }, + station_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + station_name: { + type: DataTypes.STRING, + allowNull: true + }, + latitude: { + type: DataTypes.STRING, + allowNull: true + }, + longitude: { + type: DataTypes.STRING, + allowNull: true + }, + region: { + type: DataTypes.STRING, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'country_weather_stations', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/CrashLog.js b/src/server/models/CrashLog.js new file mode 100644 index 0000000..c1e2adf --- /dev/null +++ b/src/server/models/CrashLog.js @@ -0,0 +1,45 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('CrashLog', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + ip: { + type: DataTypes.INET, + allowNull: true + }, + callstack: { + type: DataTypes.TEXT, + allowNull: true + }, + data: { + type: DataTypes.TEXT, + allowNull: true + }, + notes: { + type: DataTypes.TEXT, + allowNull: true + }, + number: { + type: DataTypes.STRING(32), + allowNull: true + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'crash_log', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/CreditCardBenefits.js b/src/server/models/CreditCardBenefits.js new file mode 100644 index 0000000..ee494f1 --- /dev/null +++ b/src/server/models/CreditCardBenefits.js @@ -0,0 +1,28 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('CreditCardBenefits', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + credit_card_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + benefit: { + type: DataTypes.STRING(256), + allowNull: true + }, + expired_date: { + type: DataTypes.DATE, + allowNull: true + } + }, { + sequelize, + tableName: 'credit_card_benefits', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/CreditCards.js b/src/server/models/CreditCards.js new file mode 100644 index 0000000..192fd36 --- /dev/null +++ b/src/server/models/CreditCards.js @@ -0,0 +1,24 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('CreditCards', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + bank_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + card_name: { + type: DataTypes.STRING(50), + allowNull: true + } + }, { + sequelize, + tableName: 'credit_cards', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/DecisionCards.js b/src/server/models/DecisionCards.js new file mode 100644 index 0000000..5ee88f5 --- /dev/null +++ b/src/server/models/DecisionCards.js @@ -0,0 +1,34 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('DecisionCards', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + decision_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + card_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'decision_cards', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/DecisionGroup.js b/src/server/models/DecisionGroup.js new file mode 100644 index 0000000..3fd4597 --- /dev/null +++ b/src/server/models/DecisionGroup.js @@ -0,0 +1,48 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + const DecisionGroup = sequelize.define('DecisionGroup', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + lorder: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + description: { + type: DataTypes.STRING(150), + allowNull: false + }, + dkey: { + type: DataTypes.STRING(15), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + personality: { + type: DataTypes.STRING(50), + allowNull: true, + defaultValue: "" + }, + offers_count: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 5 + } + }, { + sequelize, + tableName: 'decision_group', + schema: 'public', + timestamps: false + }); + DecisionGroup.associate = models => { + DecisionGroup.hasMany(models.Members, {sourceKey:'dkey', foreignKey: 'decision_group' }); + }; + return DecisionGroup; +}; diff --git a/src/server/models/DecisionGroupAction.js b/src/server/models/DecisionGroupAction.js new file mode 100644 index 0000000..4d4ea00 --- /dev/null +++ b/src/server/models/DecisionGroupAction.js @@ -0,0 +1,34 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('DecisionGroupAction', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + dkey: { + type: DataTypes.STRING(15), + allowNull: true + }, + target_key: { + type: DataTypes.STRING(15), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'decision_group_action', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/DecisionLogic.js b/src/server/models/DecisionLogic.js new file mode 100644 index 0000000..1c47b5e --- /dev/null +++ b/src/server/models/DecisionLogic.js @@ -0,0 +1,70 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('DecisionLogic', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + lorder: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + description: { + type: DataTypes.STRING(100), + allowNull: false + }, + value: { + type: DataTypes.STRING(350), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + weight: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 10 + }, + logic: { + type: DataTypes.STRING(15), + allowNull: true + }, + survey: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + dkey_txt: { + type: DataTypes.STRING(15), + allowNull: true + }, + card_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + answer: { + type: DataTypes.STRING(15), + allowNull: true, + defaultValue: "" + }, + gps_trigger: { + type: DataTypes.INTEGER, + allowNull: true + } + }, { + sequelize, + tableName: 'decision_logic', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/EmailCycleTypes.js b/src/server/models/EmailCycleTypes.js new file mode 100644 index 0000000..52beb19 --- /dev/null +++ b/src/server/models/EmailCycleTypes.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('EmailCycleTypes', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + cycle_type: { + type: DataTypes.STRING(15), + allowNull: false + }, + description: { + type: DataTypes.STRING(100), + allowNull: true + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'email_cycle_types', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/EmailDebug.js b/src/server/models/EmailDebug.js new file mode 100644 index 0000000..8516b42 --- /dev/null +++ b/src/server/models/EmailDebug.js @@ -0,0 +1,28 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('EmailDebug', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + pid: { + type: DataTypes.BIGINT, + allowNull: true + }, + seq: { + type: DataTypes.SMALLINT, + allowNull: true + }, + body: { + type: DataTypes.TEXT, + allowNull: true + } + }, { + sequelize, + tableName: 'email_debug', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/EmailTrigger.js b/src/server/models/EmailTrigger.js new file mode 100644 index 0000000..6cdacc4 --- /dev/null +++ b/src/server/models/EmailTrigger.js @@ -0,0 +1,98 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('EmailTrigger', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + e_trigger: { + type: DataTypes.STRING(15), + allowNull: false + }, + category: { + type: DataTypes.STRING(15), + allowNull: true + }, + action_detail: { + type: DataTypes.TEXT, + allowNull: true + }, + template_name: { + type: DataTypes.STRING(15), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + dynamic_key: { + type: DataTypes.STRING(15), + allowNull: true + }, + message: { + type: DataTypes.STRING(250), + allowNull: true + }, + send_mail: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + send_notification: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + override_text: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + expiration: { + type: DataTypes.STRING(15), + allowNull: true + }, + last_run: { + type: DataTypes.DATE, + allowNull: true + }, + icon: { + type: DataTypes.STRING(100), + allowNull: true + }, + notify_title: { + type: DataTypes.STRING(100), + allowNull: true + }, + frequency: { + type: DataTypes.SMALLINT, + allowNull: true + }, + send_day: { + type: DataTypes.STRING(30), + allowNull: true + }, + send_time: { + type: DataTypes.TIME, + allowNull: true + } + }, { + sequelize, + tableName: 'email_trigger', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Emails.js b/src/server/models/Emails.js new file mode 100644 index 0000000..2cf6181 --- /dev/null +++ b/src/server/models/Emails.js @@ -0,0 +1,46 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Emails', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + to_emails: { + type: DataTypes.TEXT, + allowNull: true + }, + subject: { + type: DataTypes.STRING(200), + allowNull: true + }, + html_body: { + type: DataTypes.TEXT, + allowNull: true + }, + status: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 0 + }, + retries: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 0 + }, + message: { + type: DataTypes.STRING(200), + allowNull: true + } + }, { + sequelize, + tableName: 'emails', + schema: 'public', + timestamps: true + }); +}; diff --git a/src/server/models/EmissionAvrgCommute.js b/src/server/models/EmissionAvrgCommute.js new file mode 100644 index 0000000..a906a30 --- /dev/null +++ b/src/server/models/EmissionAvrgCommute.js @@ -0,0 +1,47 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('EmissionAvrgCommute', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + mkey: { + type: DataTypes.STRING(10), + allowNull: false + }, + country: { + type: DataTypes.STRING(2), + allowNull: true + }, + state: { + type: DataTypes.STRING(35), + allowNull: true + }, + city: { + type: DataTypes.STRING(35), + allowNull: true + }, + gramskm_perc: { + type: DataTypes.DOUBLE, + allowNull: true, + defaultValue: 0 + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'emission_avrg_commute', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/EmissionGasModel.js b/src/server/models/EmissionGasModel.js new file mode 100644 index 0000000..fab7c6f --- /dev/null +++ b/src/server/models/EmissionGasModel.js @@ -0,0 +1,45 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('EmissionGasModel', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + country: { + type: DataTypes.STRING(2), + allowNull: true + }, + avrg_car_co2_emissions: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + avrg_dist_travel_pre_litre: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + avrg_price_per_litre: { + type: DataTypes.DOUBLE, + allowNull: true, + defaultValue: 0 + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'emission_gas_model', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/EmissionModel.js b/src/server/models/EmissionModel.js new file mode 100644 index 0000000..abf751a --- /dev/null +++ b/src/server/models/EmissionModel.js @@ -0,0 +1,49 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('EmissionModel', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + mkey: { + type: DataTypes.STRING(10), + allowNull: false + }, + transport_mode: { + type: DataTypes.STRING(50), + allowNull: false + }, + grams_km: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + passengers: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + lorder: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'emission_model', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Estimates.js b/src/server/models/Estimates.js new file mode 100644 index 0000000..5446470 --- /dev/null +++ b/src/server/models/Estimates.js @@ -0,0 +1,49 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Estimates', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + price: { + type: DataTypes.DECIMAL, + allowNull: true + }, + surge_price: { + type: DataTypes.DECIMAL, + allowNull: true + }, + trip_time: { + type: DataTypes.STRING, + allowNull: true + }, + distance: { + type: DataTypes.INTEGER, + allowNull: true + }, + is_holiday: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: false + }, + day_of_week: { + type: DataTypes.INTEGER, + allowNull: true + }, + weather_conditions: { + type: DataTypes.TEXT, + allowNull: true + }, + parsedemail_item_id: { + type: DataTypes.BIGINT, + allowNull: true + } + }, { + sequelize, + tableName: 'estimates', + schema: 'public', + timestamps: true + }); +}; diff --git a/src/server/models/GeocodingLogs.js b/src/server/models/GeocodingLogs.js new file mode 100644 index 0000000..9943693 --- /dev/null +++ b/src/server/models/GeocodingLogs.js @@ -0,0 +1,48 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GeocodingLogs', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + address_input: { + type: DataTypes.STRING(200), + allowNull: true + }, + latitude: { + type: DataTypes.DECIMAL, + allowNull: true + }, + longitude: { + type: DataTypes.DECIMAL, + allowNull: true + }, + call_dated: { + type: DataTypes.DATE, + allowNull: true + }, + address_output: { + type: DataTypes.STRING(200), + allowNull: true + }, + duration: { + type: DataTypes.INTEGER, + allowNull: true + }, + client_ip: { + type: DataTypes.STRING(50), + allowNull: true + }, + client_id: { + type: DataTypes.STRING(50), + allowNull: true + } + }, { + sequelize, + tableName: 'geocoding_logs', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GeofenceAreaAnchor.js b/src/server/models/GeofenceAreaAnchor.js new file mode 100644 index 0000000..9af8d01 --- /dev/null +++ b/src/server/models/GeofenceAreaAnchor.js @@ -0,0 +1,28 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GeofenceAreaAnchor', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + geofence_area_id: { + type: DataTypes.BIGINT, + allowNull: false + }, + address_id: { + type: DataTypes.BIGINT, + allowNull: false + }, + title: { + type: DataTypes.STRING(100), + allowNull: true + } + }, { + sequelize, + tableName: 'geofence_area_anchor', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GeofenceAreaAverageQuotes.js b/src/server/models/GeofenceAreaAverageQuotes.js new file mode 100644 index 0000000..e56874f --- /dev/null +++ b/src/server/models/GeofenceAreaAverageQuotes.js @@ -0,0 +1,57 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GeofenceAreaAverageQuotes', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + area_start_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + area_end_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + transport_provider_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + average_cost: { + type: DataTypes.DECIMAL, + allowNull: true + }, + average_total: { + type: DataTypes.DECIMAL, + allowNull: true + }, + average_count: { + type: DataTypes.INTEGER, + allowNull: true + }, + hour: { + type: DataTypes.SMALLINT, + allowNull: false + }, + last_updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + last_quotes_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + last_parsedemail_item_id: { + type: DataTypes.BIGINT, + allowNull: true + } + }, { + sequelize, + tableName: 'geofence_area_average_quotes', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GeofenceAreaCitySettings.js b/src/server/models/GeofenceAreaCitySettings.js new file mode 100644 index 0000000..02c25a7 --- /dev/null +++ b/src/server/models/GeofenceAreaCitySettings.js @@ -0,0 +1,34 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GeofenceAreaCitySettings', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + status: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 0 + }, + geofence_area_city: { + type: DataTypes.INTEGER, + allowNull: false + }, + image_url: { + type: DataTypes.STRING(500), + allowNull: true + }, + is_fectched_data: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: false + } + }, { + sequelize, + tableName: 'geofence_area_city_settings', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GlobalSettings.js b/src/server/models/GlobalSettings.js new file mode 100644 index 0000000..9dc8cd3 --- /dev/null +++ b/src/server/models/GlobalSettings.js @@ -0,0 +1,38 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GlobalSettings', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + key: { + type: DataTypes.STRING(50), + allowNull: false + }, + description: { + type: DataTypes.STRING(350), + allowNull: false + }, + value: { + type: DataTypes.STRING(50), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'global_settings', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GoogleDirectionsLegStepDetails.js b/src/server/models/GoogleDirectionsLegStepDetails.js new file mode 100644 index 0000000..162df3b --- /dev/null +++ b/src/server/models/GoogleDirectionsLegStepDetails.js @@ -0,0 +1,72 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GoogleDirectionsLegStepDetails', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + google_directions_leg_step_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + num_stops: { + type: DataTypes.INTEGER, + allowNull: true + }, + line: { + type: DataTypes.STRING(100), + allowNull: true + }, + vehicle: { + type: DataTypes.STRING(40), + allowNull: true + }, + departure_stop: { + type: DataTypes.STRING(100), + allowNull: true + }, + departure_stop_lat: { + type: DataTypes.DECIMAL, + allowNull: true + }, + departure_stop_lng: { + type: DataTypes.DECIMAL, + allowNull: true + }, + arrival_stop: { + type: DataTypes.STRING(100), + allowNull: true + }, + arrival_stop_lat: { + type: DataTypes.DECIMAL, + allowNull: true + }, + arrival_stop_lng: { + type: DataTypes.DECIMAL, + allowNull: true + }, + headsign: { + type: DataTypes.STRING(100), + allowNull: true + }, + headway: { + type: DataTypes.INTEGER, + allowNull: true + }, + agency_name: { + type: DataTypes.STRING(50), + allowNull: true + }, + short_line: { + type: DataTypes.STRING, + allowNull: true + } + }, { + sequelize, + tableName: 'google_directions_leg_step_details', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GoogleDirectionsLegSteps.js b/src/server/models/GoogleDirectionsLegSteps.js new file mode 100644 index 0000000..ac76919 --- /dev/null +++ b/src/server/models/GoogleDirectionsLegSteps.js @@ -0,0 +1,56 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GoogleDirectionsLegSteps', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + google_directions_leg_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + distance: { + type: DataTypes.INTEGER, + allowNull: true + }, + duration: { + type: DataTypes.INTEGER, + allowNull: true + }, + travel_mode: { + type: DataTypes.STRING(40), + allowNull: true + }, + location_start_lat: { + type: DataTypes.DECIMAL, + allowNull: true + }, + location_start_lng: { + type: DataTypes.DECIMAL, + allowNull: true + }, + location_end_lat: { + type: DataTypes.DECIMAL, + allowNull: true + }, + location_end_lng: { + type: DataTypes.DECIMAL, + allowNull: true + }, + html_instructions: { + type: DataTypes.TEXT, + allowNull: true + }, + polyline: { + type: DataTypes.TEXT, + allowNull: true + } + }, { + sequelize, + tableName: 'google_directions_leg_steps', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GoogleDirectionsLegs.js b/src/server/models/GoogleDirectionsLegs.js new file mode 100644 index 0000000..87748ca --- /dev/null +++ b/src/server/models/GoogleDirectionsLegs.js @@ -0,0 +1,56 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GoogleDirectionsLegs', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + parsedemail_item_advice_google_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + arrival_time: { + type: DataTypes.BIGINT, + allowNull: true + }, + arrival_time_zone: { + type: DataTypes.STRING(40), + allowNull: true + }, + departure_time: { + type: DataTypes.BIGINT, + allowNull: true + }, + departure_time_zone: { + type: DataTypes.STRING(40), + allowNull: true + }, + distance: { + type: DataTypes.INTEGER, + allowNull: true + }, + duration: { + type: DataTypes.INTEGER, + allowNull: true + }, + steps: { + type: DataTypes.INTEGER, + allowNull: true + }, + fare_raw: { + type: DataTypes.INTEGER, + allowNull: true + }, + polyline: { + type: DataTypes.TEXT, + allowNull: true + } + }, { + sequelize, + tableName: 'google_directions_legs', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GpsTriggerLocation.js b/src/server/models/GpsTriggerLocation.js new file mode 100644 index 0000000..56275f5 --- /dev/null +++ b/src/server/models/GpsTriggerLocation.js @@ -0,0 +1,43 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GpsTriggerLocation', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + description: { + type: DataTypes.STRING(50), + allowNull: false + }, + address_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + country: { + type: DataTypes.STRING(2), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + lcount: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'gps_trigger_location', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GroupDecisionLogic.js b/src/server/models/GroupDecisionLogic.js new file mode 100644 index 0000000..e8da64e --- /dev/null +++ b/src/server/models/GroupDecisionLogic.js @@ -0,0 +1,44 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GroupDecisionLogic', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + lorder: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + group_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + decision_logic: { + type: DataTypes.INTEGER, + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + weight: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 10 + } + }, { + sequelize, + tableName: 'group_decision_logic', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GtfsAgency.js b/src/server/models/GtfsAgency.js new file mode 100644 index 0000000..732ba59 --- /dev/null +++ b/src/server/models/GtfsAgency.js @@ -0,0 +1,53 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GtfsAgency', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + agency_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + agency_name: { + type: DataTypes.STRING(50), + allowNull: true + }, + agency_url: { + type: DataTypes.STRING(50), + allowNull: true + }, + agency_timezone: { + type: DataTypes.STRING(30), + allowNull: true + }, + agency_lang: { + type: DataTypes.STRING(2), + allowNull: true + }, + agency_phone: { + type: DataTypes.STRING(20), + allowNull: true + }, + agency_fare_url: { + type: DataTypes.STRING(50), + allowNull: true + }, + agency_email: { + type: DataTypes.STRING(50), + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'gtfs_agency', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GtfsFareAttributes.js b/src/server/models/GtfsFareAttributes.js new file mode 100644 index 0000000..cf30c22 --- /dev/null +++ b/src/server/models/GtfsFareAttributes.js @@ -0,0 +1,53 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GtfsFareAttributes', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + fare_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + price: { + type: DataTypes.STRING(10), + allowNull: true + }, + currency_type: { + type: DataTypes.STRING(3), + allowNull: true + }, + payment_method: { + type: DataTypes.STRING(1), + allowNull: true + }, + transfers: { + type: DataTypes.STRING(1), + allowNull: true + }, + agency_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + transfer_duration: { + type: DataTypes.STRING(32), + allowNull: true + }, + additional_agency_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'gtfs_fare_attributes', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GtfsFareRules.js b/src/server/models/GtfsFareRules.js new file mode 100644 index 0000000..1bbebf1 --- /dev/null +++ b/src/server/models/GtfsFareRules.js @@ -0,0 +1,45 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GtfsFareRules', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + fare_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + route_id: { + type: DataTypes.STRING(20), + allowNull: true + }, + origin_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + destination_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + contains_id: { + type: DataTypes.STRING, + allowNull: true + }, + additional_agency_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'gtfs_fare_rules', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GtfsRoutes.js b/src/server/models/GtfsRoutes.js new file mode 100644 index 0000000..094d2e0 --- /dev/null +++ b/src/server/models/GtfsRoutes.js @@ -0,0 +1,65 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GtfsRoutes', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + route_id: { + type: DataTypes.STRING(20), + allowNull: true + }, + agency_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + route_short_name: { + type: DataTypes.STRING(20), + allowNull: true + }, + route_long_name: { + type: DataTypes.STRING(50), + allowNull: true + }, + route_desc: { + type: DataTypes.STRING(50), + allowNull: true + }, + route_type: { + type: DataTypes.STRING(1), + allowNull: true + }, + route_url: { + type: DataTypes.STRING(60), + allowNull: true + }, + route_color: { + type: DataTypes.STRING(6), + allowNull: true + }, + route_text_color: { + type: DataTypes.STRING(6), + allowNull: true + }, + route_sort_order: { + type: DataTypes.STRING(10), + allowNull: true + }, + additional_agency_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'gtfs_routes', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GtfsStopTimes.js b/src/server/models/GtfsStopTimes.js new file mode 100644 index 0000000..5d43b92 --- /dev/null +++ b/src/server/models/GtfsStopTimes.js @@ -0,0 +1,65 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GtfsStopTimes', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + trip_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + arrival_time: { + type: DataTypes.STRING(8), + allowNull: true + }, + departure_time: { + type: DataTypes.STRING(8), + allowNull: true + }, + stop_id: { + type: DataTypes.STRING(20), + allowNull: true + }, + stop_sequence: { + type: DataTypes.STRING(10), + allowNull: true + }, + stop_headsign: { + type: DataTypes.STRING(40), + allowNull: true + }, + pickup_type: { + type: DataTypes.STRING(1), + allowNull: true + }, + drop_off_type: { + type: DataTypes.STRING(1), + allowNull: true + }, + shape_dist_traveled: { + type: DataTypes.STRING, + allowNull: true + }, + timepoint: { + type: DataTypes.STRING(1), + allowNull: true + }, + additional_agency_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'gtfs_stop_times', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/GtfsTrips.js b/src/server/models/GtfsTrips.js new file mode 100644 index 0000000..dac5e55 --- /dev/null +++ b/src/server/models/GtfsTrips.js @@ -0,0 +1,69 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('GtfsTrips', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + route_id: { + type: DataTypes.STRING(20), + allowNull: true + }, + service_id: { + type: DataTypes.STRING(40), + allowNull: true + }, + trip_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + trip_headsign: { + type: DataTypes.STRING(50), + allowNull: true + }, + trip_short_name: { + type: DataTypes.STRING(20), + allowNull: true + }, + direction_id: { + type: DataTypes.STRING(1), + allowNull: true + }, + block_id: { + type: DataTypes.STRING(10), + allowNull: true + }, + shape_id: { + type: DataTypes.STRING(10), + allowNull: true + }, + wheelchair_accessible: { + type: DataTypes.STRING(1), + allowNull: true + }, + bikes_allowed: { + type: DataTypes.STRING(1), + allowNull: true + }, + additional_agency_id: { + type: DataTypes.STRING(32), + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + trip_load_information: { + type: DataTypes.STRING(10), + allowNull: true + } + }, { + sequelize, + tableName: 'gtfs_trips', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Holidays.js b/src/server/models/Holidays.js new file mode 100644 index 0000000..940a325 --- /dev/null +++ b/src/server/models/Holidays.js @@ -0,0 +1,33 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Holidays', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + date: { + type: DataTypes.DATEONLY, + allowNull: false + }, + note: { + type: DataTypes.TEXT, + allowNull: true + }, + active: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: true + }, + country: { + type: DataTypes.STRING(2), + allowNull: false + } + }, { + sequelize, + tableName: 'holidays', + schema: 'public', + timestamps: true + }); +}; diff --git a/src/server/models/KibanaLogViewerUsers.js b/src/server/models/KibanaLogViewerUsers.js new file mode 100644 index 0000000..a4dde6f --- /dev/null +++ b/src/server/models/KibanaLogViewerUsers.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('KibanaLogViewerUsers', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + username: { + type: DataTypes.STRING(50), + allowNull: false + }, + password: { + type: DataTypes.STRING(64), + allowNull: false + }, + status: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 1 + } + }, { + sequelize, + tableName: 'kibana_log_viewer_users', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/LegStepQuote.js b/src/server/models/LegStepQuote.js new file mode 100644 index 0000000..fdab6b2 --- /dev/null +++ b/src/server/models/LegStepQuote.js @@ -0,0 +1,57 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('LegStepQuote', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + google_directions_leg_step_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + name: { + type: DataTypes.STRING(100), + allowNull: true + }, + service: { + type: DataTypes.STRING(100), + allowNull: true + }, + board: { + type: DataTypes.STRING(100), + allowNull: true + }, + alight: { + type: DataTypes.STRING(100), + allowNull: true + }, + distance: { + type: DataTypes.STRING(20), + allowNull: true + }, + fare: { + type: DataTypes.STRING(20), + allowNull: true + }, + fare_raw: { + type: DataTypes.INTEGER, + allowNull: true + }, + distance_raw: { + type: DataTypes.INTEGER, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'leg_step_quote', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/LoginAttempts.js b/src/server/models/LoginAttempts.js new file mode 100644 index 0000000..5c61711 --- /dev/null +++ b/src/server/models/LoginAttempts.js @@ -0,0 +1,34 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('LoginAttempts', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + username: { + type: DataTypes.STRING(100), + allowNull: true + }, + loc: { + type: DataTypes.INET, + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'login_attempts', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MainCards.js b/src/server/models/MainCards.js new file mode 100644 index 0000000..c2edc43 --- /dev/null +++ b/src/server/models/MainCards.js @@ -0,0 +1,196 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MainCards', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + name: { + type: DataTypes.STRING(100), + allowNull: false + }, + title: { + type: DataTypes.STRING(100), + allowNull: false + }, + short_title: { + type: DataTypes.STRING(35), + allowNull: false + }, + description: { + type: DataTypes.STRING(250), + allowNull: false + }, + background_picture: { + type: DataTypes.STRING(150), + allowNull: false + }, + button1: { + type: DataTypes.STRING(35), + allowNull: false + }, + button1_text: { + type: DataTypes.STRING(35), + allowNull: false + }, + button1_action: { + type: DataTypes.STRING(15), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + can_save: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + template: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + card_canexpire: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + card_expiration: { + type: DataTypes.DATE, + allowNull: true + }, + notify: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + card_country: { + type: DataTypes.STRING(2), + allowNull: true + }, + card_action_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + titleshow: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + multiple_answer: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + use_short_title: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + deleted: { + type: DataTypes.DATE, + allowNull: true + }, + list_order: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + target_key: { + type: DataTypes.STRING(10), + allowNull: true + }, + target_text: { + type: DataTypes.STRING(250), + allowNull: true + }, + long_description: { + type: DataTypes.TEXT, + allowNull: true + }, + card_behavior: { + type: DataTypes.STRING(10), + allowNull: true + }, + card_type: { + type: DataTypes.STRING(2), + allowNull: true, + defaultValue: "" + }, + card_time: { + type: DataTypes.STRING(12), + allowNull: true, + defaultValue: "" + }, + card_location: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + members_cards: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + card_points: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + card_reciept: { + type: DataTypes.STRING(15), + allowNull: true + }, + card_logic: { + type: DataTypes.STRING(15), + allowNull: true, + defaultValue: "" + }, + card_order: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 100 + }, + background_color: { + type: DataTypes.STRING(8), + allowNull: true + }, + dynamic_key: { + type: DataTypes.STRING(25), + allowNull: true + }, + blog_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + show_area: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + activity_screen: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + expiration: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + } + }, { + sequelize, + tableName: 'main_cards', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MemberSavedCards.js b/src/server/models/MemberSavedCards.js new file mode 100644 index 0000000..d7b9f63 --- /dev/null +++ b/src/server/models/MemberSavedCards.js @@ -0,0 +1,34 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MemberSavedCards', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + card_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'member_saved_cards', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Members.js b/src/server/models/Members.js new file mode 100644 index 0000000..488dc85 --- /dev/null +++ b/src/server/models/Members.js @@ -0,0 +1,180 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + const Member = sequelize.define('Members', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + username: { + type: DataTypes.STRING(50), + allowNull: false + }, + firstname: { + type: DataTypes.STRING(50), + allowNull: true + }, + lastname: { + type: DataTypes.STRING(50), + allowNull: true + }, + email: { + type: DataTypes.STRING(50), + allowNull: true + }, + phone: { + type: DataTypes.STRING(32), + allowNull: true + }, + password: { + type: DataTypes.STRING(128), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + verify_link: { + type: DataTypes.STRING(100), + allowNull: true + }, + loc: { + type: DataTypes.INET, + allowNull: true + }, + news: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + last_login: { + type: DataTypes.DATE, + allowNull: true + }, + min_budget: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + max_budget: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + points: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + test: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + last_acct: { + type: DataTypes.DATE, + allowNull: true + }, + count_acct: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + last_email: { + type: DataTypes.DATE, + allowNull: true + }, + count_email: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + decision_updated: { + type: DataTypes.DATE, + allowNull: true + }, + decision_group: { + type: DataTypes.STRING(15), + allowNull: true + }, + profile_picture: { + type: DataTypes.INTEGER, + allowNull: true + }, + last_audit: { + type: DataTypes.DATE, + allowNull: true + }, + points_updated: { + type: DataTypes.DATE, + allowNull: true + }, + gps_enabled: { + type: DataTypes.DATE, + allowNull: true + }, + login_failures: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 0 + }, + country: { + type: DataTypes.STRING(2), + allowNull: true + }, + alert_notification: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + alert_email: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + state: { + type: DataTypes.STRING(10), + allowNull: true + }, + city: { + type: DataTypes.STRING(200), + allowNull: true + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + notification_test: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + email_connected: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + password2: { + type: DataTypes.STRING(128), + allowNull: true + } + }, { + sequelize, + tableName: 'members', + schema: 'public', + timestamps: false + }); + Member.associate = models => { + Member.hasOne(models.MembersProfile, { foreignKey: 'member_id' }); + Member.belongsTo(models.DecisionGroup, { targetKey: 'dkey', foreignKey: 'decision_group' }); + }; + return Member; +}; diff --git a/src/server/models/MembersAnalysis.js b/src/server/models/MembersAnalysis.js new file mode 100644 index 0000000..2dafd59 --- /dev/null +++ b/src/server/models/MembersAnalysis.js @@ -0,0 +1,55 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersAnalysis', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + spend_7: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + rideshare_30: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + spend_14: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + gas_7: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + gas_30: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + gas_14: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + } + }, { + sequelize, + tableName: 'members_analysis', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersBankAccounts.js b/src/server/models/MembersBankAccounts.js new file mode 100644 index 0000000..6d5349f --- /dev/null +++ b/src/server/models/MembersBankAccounts.js @@ -0,0 +1,74 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersBankAccounts', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + import_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + name: { + type: DataTypes.STRING(50), + allowNull: true + }, + description: { + type: DataTypes.STRING(100), + allowNull: true + }, + type: { + type: DataTypes.STRING(30), + allowNull: true + }, + currency: { + type: DataTypes.STRING(6), + allowNull: true + }, + card_type: { + type: DataTypes.STRING(20), + allowNull: true + }, + bank_name: { + type: DataTypes.STRING(50), + allowNull: true + }, + bank_login_provider: { + type: DataTypes.STRING(20), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + intel_imported: { + type: DataTypes.DATE, + allowNull: true + }, + bank_login_status: { + type: DataTypes.STRING(10), + allowNull: true + }, + last_bank_data_fetch: { + type: DataTypes.DATE, + allowNull: true + } + }, { + sequelize, + tableName: 'members_bank_accounts', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersBankimport.js b/src/server/models/MembersBankimport.js new file mode 100644 index 0000000..dfa14a7 --- /dev/null +++ b/src/server/models/MembersBankimport.js @@ -0,0 +1,68 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersBankimport', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + import_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + amount: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + currency: { + type: DataTypes.STRING(10), + allowNull: true + }, + description: { + type: DataTypes.STRING(150), + allowNull: true + }, + time: { + type: DataTypes.DATE, + allowNull: true + }, + category: { + type: DataTypes.STRING(50), + allowNull: true + }, + provider_category: { + type: DataTypes.STRING(150), + allowNull: true + }, + merchant_name: { + type: DataTypes.STRING(150), + allowNull: true + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + } + }, { + sequelize, + tableName: 'members_bankimport', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersCardAssign.js b/src/server/models/MembersCardAssign.js new file mode 100644 index 0000000..a01731f --- /dev/null +++ b/src/server/models/MembersCardAssign.js @@ -0,0 +1,74 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersCardAssign', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + card_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + list_order: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + subscribe: { + type: DataTypes.DATE, + allowNull: true + }, + how: { + type: DataTypes.STRING(15), + allowNull: true, + defaultValue: "" + }, + completed: { + type: DataTypes.DATE, + allowNull: true + }, + trigger_key: { + type: DataTypes.STRING(25), + allowNull: true + }, + message: { + type: DataTypes.STRING(250), + allowNull: true + }, + cat: { + type: DataTypes.STRING(15), + allowNull: true + }, + reciept_count: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_card_assign', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersCardclicktrack.js b/src/server/models/MembersCardclicktrack.js new file mode 100644 index 0000000..fc19b9c --- /dev/null +++ b/src/server/models/MembersCardclicktrack.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersCardclicktrack', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + card_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_cardclicktrack', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersCards.js b/src/server/models/MembersCards.js new file mode 100644 index 0000000..489659b --- /dev/null +++ b/src/server/models/MembersCards.js @@ -0,0 +1,50 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersCards', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + title: { + type: DataTypes.STRING(100), + allowNull: false + }, + description: { + type: DataTypes.STRING(250), + allowNull: true + }, + background_picture: { + type: DataTypes.STRING(150), + allowNull: true + }, + button1: { + type: DataTypes.STRING(50), + allowNull: true + }, + button1_action: { + type: DataTypes.STRING(50), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_cards', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersCarpool.js b/src/server/models/MembersCarpool.js new file mode 100644 index 0000000..e81abf8 --- /dev/null +++ b/src/server/models/MembersCarpool.js @@ -0,0 +1,48 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersCarpool', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + card_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + description: { + type: DataTypes.STRING(350), + allowNull: false + }, + pool: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_carpool', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersCarpoolFriends.js b/src/server/models/MembersCarpoolFriends.js new file mode 100644 index 0000000..49c36bd --- /dev/null +++ b/src/server/models/MembersCarpoolFriends.js @@ -0,0 +1,73 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersCarpoolFriends', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + carpool_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + firstname: { + type: DataTypes.STRING(25), + allowNull: true + }, + lastname: { + type: DataTypes.STRING(25), + allowNull: true + }, + email: { + type: DataTypes.STRING(100), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + accept_status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + pool_status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + level_a: { + type: DataTypes.STRING(2), + allowNull: false + }, + level_b: { + type: DataTypes.STRING(2), + allowNull: false + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + last_msg: { + type: DataTypes.DATE, + allowNull: true + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + link: { + type: DataTypes.STRING(100), + allowNull: true + } + }, { + sequelize, + tableName: 'members_carpool_friends', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersDeviceManufacturers.js b/src/server/models/MembersDeviceManufacturers.js new file mode 100644 index 0000000..f319871 --- /dev/null +++ b/src/server/models/MembersDeviceManufacturers.js @@ -0,0 +1,20 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersDeviceManufacturers', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + manufacturer: { + type: DataTypes.STRING(50), + allowNull: true + } + }, { + sequelize, + tableName: 'members_device_manufacturers', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersDeviceModels.js b/src/server/models/MembersDeviceModels.js new file mode 100644 index 0000000..9f8ad52 --- /dev/null +++ b/src/server/models/MembersDeviceModels.js @@ -0,0 +1,20 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersDeviceModels', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + model: { + type: DataTypes.STRING(100), + allowNull: true + } + }, { + sequelize, + tableName: 'members_device_models', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersDevicePlatforms.js b/src/server/models/MembersDevicePlatforms.js new file mode 100644 index 0000000..515f58f --- /dev/null +++ b/src/server/models/MembersDevicePlatforms.js @@ -0,0 +1,20 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersDevicePlatforms', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + platform: { + type: DataTypes.STRING(50), + allowNull: true + } + }, { + sequelize, + tableName: 'members_device_platforms', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersDevices.js b/src/server/models/MembersDevices.js new file mode 100644 index 0000000..f6bc4b2 --- /dev/null +++ b/src/server/models/MembersDevices.js @@ -0,0 +1,79 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersDevices', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.BIGINT, + allowNull: false + }, + player_id: { + type: DataTypes.STRING(36), + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + cordova: { + type: DataTypes.STRING(10), + allowNull: true + }, + model_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + platform_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + uuid: { + type: DataTypes.STRING(36), + allowNull: true + }, + version: { + type: DataTypes.STRING(10), + allowNull: true + }, + manufacturer_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + is_virtual: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: false + }, + refresh_token: { + type: DataTypes.STRING(36), + allowNull: true + }, + access_token: { + type: DataTypes.STRING(36), + allowNull: true + }, + updated: { + type: DataTypes.DATE, + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + country: { + type: DataTypes.STRING(2), + allowNull: true + } + }, { + sequelize, + tableName: 'members_devices', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersLifecycleEmails.js b/src/server/models/MembersLifecycleEmails.js new file mode 100644 index 0000000..51da425 --- /dev/null +++ b/src/server/models/MembersLifecycleEmails.js @@ -0,0 +1,42 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersLifecycleEmails', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + cycle_type: { + type: DataTypes.STRING(15), + allowNull: false + }, + subject: { + type: DataTypes.STRING(100), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + completed: { + type: DataTypes.DATE, + allowNull: true + } + }, { + sequelize, + tableName: 'members_lifecycle_emails', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersNotification.js b/src/server/models/MembersNotification.js new file mode 100644 index 0000000..84a179e --- /dev/null +++ b/src/server/models/MembersNotification.js @@ -0,0 +1,60 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersNotification', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + notice_type: { + type: DataTypes.STRING(10), + allowNull: true + }, + msg: { + type: DataTypes.TEXT, + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + mmode: { + type: DataTypes.STRING(20), + allowNull: false + }, + trigger_key: { + type: DataTypes.STRING(15), + allowNull: true + }, + expire: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.literal('(now() + 1 day') + }, + date_sent: { + type: DataTypes.DATE, + allowNull: true + }, + ic: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + } + }, { + sequelize, + tableName: 'members_notification', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersOnboardingSurvey.js b/src/server/models/MembersOnboardingSurvey.js new file mode 100644 index 0000000..3f7929a --- /dev/null +++ b/src/server/models/MembersOnboardingSurvey.js @@ -0,0 +1,38 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersOnboardingSurvey', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + answers_key: { + type: DataTypes.STRING(25), + allowNull: true + }, + answers: { + type: DataTypes.STRING(10), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_onboarding_survey', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersPending.js b/src/server/models/MembersPending.js new file mode 100644 index 0000000..ffad885 --- /dev/null +++ b/src/server/models/MembersPending.js @@ -0,0 +1,54 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersPending', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + username: { + type: DataTypes.STRING(50), + allowNull: false + }, + firstname: { + type: DataTypes.STRING(50), + allowNull: true + }, + lastname: { + type: DataTypes.STRING(50), + allowNull: true + }, + email: { + type: DataTypes.STRING(50), + allowNull: true + }, + phone: { + type: DataTypes.STRING(25), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + loc: { + type: DataTypes.INET, + allowNull: true + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + verify_link: { + type: DataTypes.STRING(10), + allowNull: false + } + }, { + sequelize, + tableName: 'members_pending', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersPersonaltyLog.js b/src/server/models/MembersPersonaltyLog.js new file mode 100644 index 0000000..58bc5eb --- /dev/null +++ b/src/server/models/MembersPersonaltyLog.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersPersonaltyLog', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + decision_group: { + type: DataTypes.STRING(15), + allowNull: false + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_personalty_log', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersPoints.js b/src/server/models/MembersPoints.js new file mode 100644 index 0000000..a4e9861 --- /dev/null +++ b/src/server/models/MembersPoints.js @@ -0,0 +1,39 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersPoints', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + point_key: { + type: DataTypes.STRING(25), + allowNull: true + }, + points: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_points', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersPointsRedeem.js b/src/server/models/MembersPointsRedeem.js new file mode 100644 index 0000000..bc53ba2 --- /dev/null +++ b/src/server/models/MembersPointsRedeem.js @@ -0,0 +1,39 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersPointsRedeem', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + redeem_key: { + type: DataTypes.STRING(10), + allowNull: true + }, + points: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_points_redeem', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersProfile.js b/src/server/models/MembersProfile.js new file mode 100644 index 0000000..e24aae4 --- /dev/null +++ b/src/server/models/MembersProfile.js @@ -0,0 +1,61 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + const MembersProfile = sequelize.define('MembersProfile', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + pid: { + type: DataTypes.INTEGER, + allowNull: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + street1: { + type: DataTypes.STRING(50), + allowNull: true + }, + street2: { + type: DataTypes.STRING(50), + allowNull: true + }, + city: { + type: DataTypes.STRING(50), + allowNull: true + }, + zipcode: { + type: DataTypes.STRING(12), + allowNull: true + }, + state: { + type: DataTypes.STRING(50), + allowNull: true + }, + country: { + type: DataTypes.STRING(2), + allowNull: true + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + loc: { + type: DataTypes.INET, + allowNull: true + } + }, { + sequelize, + tableName: 'members_profile', + schema: 'public', + timestamps: false + }); + MembersProfile.associate = models => { + MembersProfile.belongsTo(models.Members, { foreignKey: 'member_id' }); + }; + return MembersProfile; +}; diff --git a/src/server/models/MembersSession.js b/src/server/models/MembersSession.js new file mode 100644 index 0000000..9a3b17d --- /dev/null +++ b/src/server/models/MembersSession.js @@ -0,0 +1,43 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersSession', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + session: { + type: DataTypes.STRING(128), + allowNull: false + }, + loc: { + type: DataTypes.INET, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + shop: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + } + }, { + sequelize, + tableName: 'members_session', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersStatus.js b/src/server/models/MembersStatus.js new file mode 100644 index 0000000..7a21c0b --- /dev/null +++ b/src/server/models/MembersStatus.js @@ -0,0 +1,47 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersStatus', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + lorder: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + name: { + type: DataTypes.STRING(25), + allowNull: false + }, + value: { + type: DataTypes.STRING(35), + allowNull: false + }, + short_desc: { + type: DataTypes.STRING(50), + allowNull: false + }, + description: { + type: DataTypes.STRING(350), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_status', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersSurvey.js b/src/server/models/MembersSurvey.js new file mode 100644 index 0000000..97df2de --- /dev/null +++ b/src/server/models/MembersSurvey.js @@ -0,0 +1,38 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersSurvey', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + card_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + answer: { + type: DataTypes.STRING(500), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_survey', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersTask.js b/src/server/models/MembersTask.js new file mode 100644 index 0000000..22c81d2 --- /dev/null +++ b/src/server/models/MembersTask.js @@ -0,0 +1,34 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersTask', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + task_name: { + type: DataTypes.STRING(30), + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_task', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersTrackemail.js b/src/server/models/MembersTrackemail.js new file mode 100644 index 0000000..9b62bd9 --- /dev/null +++ b/src/server/models/MembersTrackemail.js @@ -0,0 +1,47 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersTrackemail', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + link_email: { + type: DataTypes.STRING(150), + allowNull: true + }, + link_password: { + type: DataTypes.STRING(30), + allowNull: true + }, + link_provider: { + type: DataTypes.STRING(15), + allowNull: true + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + active: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + } + }, { + sequelize, + tableName: 'members_trackemail', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersTracking.js b/src/server/models/MembersTracking.js new file mode 100644 index 0000000..c5cb513 --- /dev/null +++ b/src/server/models/MembersTracking.js @@ -0,0 +1,49 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersTracking', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + traked_group: { + type: DataTypes.STRING(150), + allowNull: true + }, + speed: { + type: DataTypes.STRING(10), + allowNull: true + }, + lat: { + type: DataTypes.DECIMAL, + allowNull: true + }, + lng: { + type: DataTypes.DECIMAL, + allowNull: true + }, + ttime: { + type: DataTypes.DATE, + allowNull: true + }, + loc: { + type: DataTypes.INET, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_tracking', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersTransactionsImportRaw.js b/src/server/models/MembersTransactionsImportRaw.js new file mode 100644 index 0000000..5cf049a --- /dev/null +++ b/src/server/models/MembersTransactionsImportRaw.js @@ -0,0 +1,88 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersTransactionsImportRaw', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + import_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + amount: { + type: DataTypes.DECIMAL, + allowNull: true, + defaultValue: 0 + }, + currency: { + type: DataTypes.STRING(10), + allowNull: true + }, + description: { + type: DataTypes.STRING(150), + allowNull: true + }, + time: { + type: DataTypes.DATE, + allowNull: true + }, + category: { + type: DataTypes.STRING(50), + allowNull: true + }, + provider_category: { + type: DataTypes.STRING(150), + allowNull: true + }, + merchant_name: { + type: DataTypes.STRING(150), + allowNull: true + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + tstatus: { + type: DataTypes.STRING(10), + allowNull: true + }, + intel_imported: { + type: DataTypes.INTEGER, + allowNull: true + }, + extra: { + type: DataTypes.STRING, + allowNull: true + }, + account: { + type: DataTypes.INTEGER, + allowNull: true + }, + merchant_provider_id: { + type: DataTypes.STRING(100), + allowNull: true + } + }, { + sequelize, + tableName: 'members_transactions_import_raw', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MembersTrips.js b/src/server/models/MembersTrips.js new file mode 100644 index 0000000..ab25c52 --- /dev/null +++ b/src/server/models/MembersTrips.js @@ -0,0 +1,50 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MembersTrips', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + trip_name: { + type: DataTypes.STRING(200), + allowNull: false + }, + trip_from: { + type: DataTypes.STRING(150), + allowNull: true + }, + trip_to: { + type: DataTypes.STRING(150), + allowNull: true + }, + country: { + type: DataTypes.STRING(2), + allowNull: true + }, + trip_date: { + type: DataTypes.DATE, + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'members_trips', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MockGpsLocation.js b/src/server/models/MockGpsLocation.js new file mode 100644 index 0000000..7de4297 --- /dev/null +++ b/src/server/models/MockGpsLocation.js @@ -0,0 +1,38 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MockGpsLocation', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + lat: { + type: DataTypes.DECIMAL, + allowNull: true + }, + lng: { + type: DataTypes.DECIMAL, + allowNull: true + }, + location: { + type: DataTypes.STRING(20), + allowNull: true, + defaultValue: "default" + }, + country: { + type: DataTypes.STRING(2), + allowNull: true, + defaultValue: "SG" + } + }, { + sequelize, + tableName: 'mock_gps_location', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MyfloatVersion.js b/src/server/models/MyfloatVersion.js new file mode 100644 index 0000000..22d0b75 --- /dev/null +++ b/src/server/models/MyfloatVersion.js @@ -0,0 +1,45 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MyfloatVersion', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + platform_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + name: { + type: DataTypes.STRING(20), + allowNull: false + }, + released: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + notes: { + type: DataTypes.TEXT, + allowNull: true + }, + rev_count: { + type: DataTypes.INTEGER, + allowNull: true + }, + short_hash: { + type: DataTypes.STRING(10), + allowNull: true + }, + url: { + type: DataTypes.STRING(200), + allowNull: true + } + }, { + sequelize, + tableName: 'myfloat_version', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/MytransportsgAdviceSchedule.js b/src/server/models/MytransportsgAdviceSchedule.js new file mode 100644 index 0000000..285e2d7 --- /dev/null +++ b/src/server/models/MytransportsgAdviceSchedule.js @@ -0,0 +1,37 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('MytransportsgAdviceSchedule', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + parsedemail_item_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + advice_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + executed: { + type: DataTypes.DATE, + allowNull: true + }, + scheduled: { + type: DataTypes.DATE, + allowNull: true + }, + locked: { + type: DataTypes.BOOLEAN, + allowNull: false, + defaultValue: false + } + }, { + sequelize, + tableName: 'mytransportsg_advice_schedule', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/NotificationTypes.js b/src/server/models/NotificationTypes.js new file mode 100644 index 0000000..ab73cb1 --- /dev/null +++ b/src/server/models/NotificationTypes.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('NotificationTypes', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + description: { + type: DataTypes.STRING(100), + allowNull: false + }, + notice_type: { + type: DataTypes.STRING(10), + allowNull: false + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'notification_types', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Oauth2Providers.js b/src/server/models/Oauth2Providers.js new file mode 100644 index 0000000..bd8bae8 --- /dev/null +++ b/src/server/models/Oauth2Providers.js @@ -0,0 +1,53 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Oauth2Providers', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + name: { + type: DataTypes.STRING(100), + allowNull: false + }, + client_id: { + type: DataTypes.STRING(255), + allowNull: false + }, + client_secret: { + type: DataTypes.TEXT, + allowNull: true + }, + redirect_uri: { + type: DataTypes.STRING(255), + allowNull: true + }, + access_type: { + type: DataTypes.STRING(255), + allowNull: true + }, + scope: { + type: DataTypes.STRING(255), + allowNull: true + }, + active: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 1 + }, + auth_uri: { + type: DataTypes.STRING(255), + allowNull: true + }, + token_uri: { + type: DataTypes.STRING(255), + allowNull: true + } + }, { + sequelize, + tableName: 'oauth2_providers', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Oauth2PullJobThreads.js b/src/server/models/Oauth2PullJobThreads.js new file mode 100644 index 0000000..84ee8c4 --- /dev/null +++ b/src/server/models/Oauth2PullJobThreads.js @@ -0,0 +1,58 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Oauth2PullJobThreads', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + oauth2_pull_job_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + oauth2_token_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + started: { + type: DataTypes.DATE, + allowNull: true + }, + completed: { + type: DataTypes.DATE, + allowNull: true + }, + start_index: { + type: DataTypes.INTEGER, + allowNull: false + }, + item_count: { + type: DataTypes.INTEGER, + allowNull: false + }, + search_term: { + type: DataTypes.STRING(100), + allowNull: true + }, + search_from: { + type: DataTypes.STRING(200), + allowNull: true + }, + failed: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: false + } + }, { + sequelize, + tableName: 'oauth2_pull_job_threads', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Oauth2PullJobs.js b/src/server/models/Oauth2PullJobs.js new file mode 100644 index 0000000..0a2accf --- /dev/null +++ b/src/server/models/Oauth2PullJobs.js @@ -0,0 +1,37 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Oauth2PullJobs', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + oauth2_token_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + started: { + type: DataTypes.DATE, + allowNull: true + }, + completed: { + type: DataTypes.DATE, + allowNull: true + } + }, { + sequelize, + tableName: 'oauth2_pull_jobs', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Oauth2Tokens.js b/src/server/models/Oauth2Tokens.js new file mode 100644 index 0000000..53e3368 --- /dev/null +++ b/src/server/models/Oauth2Tokens.js @@ -0,0 +1,66 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Oauth2Tokens', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + oauth2_provider_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + refresh_token: { + type: DataTypes.STRING(500), + allowNull: true + }, + access_token: { + type: DataTypes.STRING(500), + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + expires_in: { + type: DataTypes.DATE, + allowNull: true + }, + email: { + type: DataTypes.STRING(255), + allowNull: true + }, + name: { + type: DataTypes.STRING(255), + allowNull: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + refresh_token_encrypted: { + type: DataTypes.TEXT, + allowNull: true + }, + access_token_encrypted: { + type: DataTypes.TEXT, + allowNull: true + }, + user_id: { + type: DataTypes.STRING(64), + allowNull: true + } + }, { + sequelize, + tableName: 'oauth2_tokens', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/OnboardingSurvey.js b/src/server/models/OnboardingSurvey.js new file mode 100644 index 0000000..393c33c --- /dev/null +++ b/src/server/models/OnboardingSurvey.js @@ -0,0 +1,38 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('OnboardingSurvey', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + group_key: { + type: DataTypes.STRING(10), + allowNull: false + }, + answers_key: { + type: DataTypes.STRING(25), + allowNull: false + }, + answers: { + type: DataTypes.STRING(100), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'onboarding_survey', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/OnboardingSurveyCards.js b/src/server/models/OnboardingSurveyCards.js new file mode 100644 index 0000000..5bf4929 --- /dev/null +++ b/src/server/models/OnboardingSurveyCards.js @@ -0,0 +1,34 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('OnboardingSurveyCards', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + answers_key: { + type: DataTypes.STRING(25), + allowNull: false + }, + card_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'onboarding_survey_cards', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/OnboardingSurveyGroup.js b/src/server/models/OnboardingSurveyGroup.js new file mode 100644 index 0000000..77901e3 --- /dev/null +++ b/src/server/models/OnboardingSurveyGroup.js @@ -0,0 +1,34 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('OnboardingSurveyGroup', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + group_key: { + type: DataTypes.STRING(10), + allowNull: false + }, + question: { + type: DataTypes.STRING(100), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'onboarding_survey_group', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/OperationKeyValueStore.js b/src/server/models/OperationKeyValueStore.js new file mode 100644 index 0000000..620d26b --- /dev/null +++ b/src/server/models/OperationKeyValueStore.js @@ -0,0 +1,19 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('OperationKeyValueStore', { + key: { + type: DataTypes.STRING(64), + allowNull: false + }, + value: { + type: DataTypes.STRING(250), + allowNull: true, + defaultValue: "NULL" + } + }, { + sequelize, + tableName: 'operation_key_value_store', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ParsedemailItem.js b/src/server/models/ParsedemailItem.js new file mode 100644 index 0000000..3da2665 --- /dev/null +++ b/src/server/models/ParsedemailItem.js @@ -0,0 +1,88 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ParsedemailItem', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + travel_date: { + type: DataTypes.DATE, + allowNull: true + }, + duration: { + type: DataTypes.INTEGER, + allowNull: true + }, + cost_raw: { + type: DataTypes.STRING(20), + allowNull: true + }, + trackedemail_item_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + cost: { + type: DataTypes.DECIMAL, + allowNull: true + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + distance: { + type: DataTypes.DECIMAL, + allowNull: true + }, + transport_provider_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + scheduled: { + type: DataTypes.DATE, + allowNull: true + }, + travel_date_end: { + type: DataTypes.DATE, + allowNull: true + }, + dup_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + location_start_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + location_end_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + private: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: false + }, + advice_processed: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: false + }, + booking: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: false + }, + base_cost: { + type: DataTypes.DECIMAL, + allowNull: true + } + }, { + sequelize, + tableName: 'parsedemail_item', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ParsedemailItemAdvice.js b/src/server/models/ParsedemailItemAdvice.js new file mode 100644 index 0000000..a24ca75 --- /dev/null +++ b/src/server/models/ParsedemailItemAdvice.js @@ -0,0 +1,61 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ParsedemailItemAdvice', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + parsedemail_item_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + advice_time: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + currency: { + type: DataTypes.STRING(3), + allowNull: true + }, + transport_product: { + type: DataTypes.STRING(80), + allowNull: true + }, + transport_provider_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + display_name: { + type: DataTypes.STRING(100), + allowNull: true + }, + high_estimate: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + low_estimate: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + distance_estimate: { + type: DataTypes.DECIMAL, + allowNull: true, + defaultValue: 0 + }, + duration_estimate: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + } + }, { + sequelize, + tableName: 'parsedemail_item_advice', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ParsedemailItemAdviceGoogle.js b/src/server/models/ParsedemailItemAdviceGoogle.js new file mode 100644 index 0000000..67dc9ec --- /dev/null +++ b/src/server/models/ParsedemailItemAdviceGoogle.js @@ -0,0 +1,39 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ParsedemailItemAdviceGoogle', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + parsedemail_item_id: { + type: DataTypes.BIGINT, + allowNull: false + }, + routes: { + type: DataTypes.INTEGER, + allowNull: false + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + source: { + type: DataTypes.STRING(20), + allowNull: true, + defaultValue: "NULL" + } + }, { + sequelize, + tableName: 'parsedemail_item_advice_google', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ParsedemailItemAdviceResult.js b/src/server/models/ParsedemailItemAdviceResult.js new file mode 100644 index 0000000..4d999e4 --- /dev/null +++ b/src/server/models/ParsedemailItemAdviceResult.js @@ -0,0 +1,25 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ParsedemailItemAdviceResult', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + parsedemail_item_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + flag: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 0 + } + }, { + sequelize, + tableName: 'parsedemail_item_advice_result', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ParsedemailItemAdviceSchedule.js b/src/server/models/ParsedemailItemAdviceSchedule.js new file mode 100644 index 0000000..79c4675 --- /dev/null +++ b/src/server/models/ParsedemailItemAdviceSchedule.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ParsedemailItemAdviceSchedule', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + parsedemail_item_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + executed: { + type: DataTypes.DATE, + allowNull: true + }, + locked: { + type: DataTypes.BOOLEAN, + allowNull: false, + defaultValue: false + } + }, { + sequelize, + tableName: 'parsedemail_item_advice_schedule', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ParsedemailItemCancelled.js b/src/server/models/ParsedemailItemCancelled.js new file mode 100644 index 0000000..4444192 --- /dev/null +++ b/src/server/models/ParsedemailItemCancelled.js @@ -0,0 +1,69 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ParsedemailItemCancelled', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + trackedemail_item_id: { + type: DataTypes.BIGINT, + allowNull: false + }, + travel_date: { + type: DataTypes.DATE, + allowNull: true + }, + location_start: { + type: DataTypes.STRING(200), + allowNull: true + }, + cost_raw: { + type: DataTypes.STRING(20), + allowNull: true + }, + cost: { + type: DataTypes.DECIMAL, + allowNull: true + }, + cost_currency: { + type: DataTypes.STRING(20), + allowNull: true + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + transport_provider_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + location_start_lat: { + type: DataTypes.DECIMAL, + allowNull: true + }, + location_start_lng: { + type: DataTypes.DECIMAL, + allowNull: true + }, + location_start_tz: { + type: DataTypes.STRING(40), + allowNull: true + }, + location_geocoding_date: { + type: DataTypes.DATEONLY, + allowNull: true + }, + location_start_id: { + type: DataTypes.BIGINT, + allowNull: true + } + }, { + sequelize, + tableName: 'parsedemail_item_cancelled', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ParsedemailItemExtra.js b/src/server/models/ParsedemailItemExtra.js new file mode 100644 index 0000000..3b070ba --- /dev/null +++ b/src/server/models/ParsedemailItemExtra.js @@ -0,0 +1,36 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ParsedemailItemExtra', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + parsedemail_item_id: { + type: DataTypes.BIGINT, + allowNull: false + }, + fees: { + type: DataTypes.DECIMAL, + allowNull: true + }, + promotions_credits: { + type: DataTypes.DECIMAL, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true + }, + updated: { + type: DataTypes.DATE, + allowNull: true + } + }, { + sequelize, + tableName: 'parsedemail_item_extra', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ParsedemailItemPayment.js b/src/server/models/ParsedemailItemPayment.js new file mode 100644 index 0000000..8cd076c --- /dev/null +++ b/src/server/models/ParsedemailItemPayment.js @@ -0,0 +1,56 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ParsedemailItemPayment', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + trackedemail_item_id: { + type: DataTypes.BIGINT, + allowNull: false + }, + transaction_id: { + type: DataTypes.STRING(100), + allowNull: true + }, + receipt_datetime: { + type: DataTypes.DATE, + allowNull: true + }, + amount_raw: { + type: DataTypes.STRING(20), + allowNull: true + }, + amount: { + type: DataTypes.DECIMAL, + allowNull: true + }, + amount_currency: { + type: DataTypes.STRING(20), + allowNull: true + }, + transport_provider_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true + }, + updated: { + type: DataTypes.DATE, + allowNull: true + } + }, { + sequelize, + tableName: 'parsedemail_item_payment', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ParsedemailItemRewards.js b/src/server/models/ParsedemailItemRewards.js new file mode 100644 index 0000000..6ba1ba0 --- /dev/null +++ b/src/server/models/ParsedemailItemRewards.js @@ -0,0 +1,52 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ParsedemailItemRewards', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + receipt_datetime: { + type: DataTypes.DATE, + allowNull: true + }, + description: { + type: DataTypes.STRING(100), + allowNull: true + }, + points: { + type: DataTypes.INTEGER, + allowNull: true + }, + transport_provider_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + balance: { + type: DataTypes.INTEGER, + allowNull: true + }, + tier: { + type: DataTypes.STRING(20), + allowNull: true + }, + spent: { + type: DataTypes.INTEGER, + allowNull: true + }, + trackedemail_item_id: { + type: DataTypes.BIGINT, + allowNull: false + }, + info: { + type: DataTypes.JSON, + allowNull: true + } + }, { + sequelize, + tableName: 'parsedemail_item_rewards', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/PlatformUser.js b/src/server/models/PlatformUser.js new file mode 100644 index 0000000..85f4f75 --- /dev/null +++ b/src/server/models/PlatformUser.js @@ -0,0 +1,34 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('PlatformUser', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + name: { + type: DataTypes.STRING(50), + allowNull: false + }, + pid: { + type: DataTypes.INTEGER, + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'platform_user', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/PointsRedeemAvialable.js b/src/server/models/PointsRedeemAvialable.js new file mode 100644 index 0000000..7694f39 --- /dev/null +++ b/src/server/models/PointsRedeemAvialable.js @@ -0,0 +1,51 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('PointsRedeemAvialable', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + key: { + type: DataTypes.STRING(10), + allowNull: false + }, + description: { + type: DataTypes.STRING(350), + allowNull: false + }, + points: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + country: { + type: DataTypes.STRING(2), + allowNull: true + }, + icon: { + type: DataTypes.STRING(15), + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + long_description: { + type: DataTypes.STRING(350), + allowNull: true + } + }, { + sequelize, + tableName: 'points_redeem_avialable', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/PointsSettings.js b/src/server/models/PointsSettings.js new file mode 100644 index 0000000..a50ea88 --- /dev/null +++ b/src/server/models/PointsSettings.js @@ -0,0 +1,48 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('PointsSettings', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + lorder: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + point_key: { + type: DataTypes.STRING(25), + allowNull: false + }, + name: { + type: DataTypes.STRING(60), + allowNull: false + }, + value: { + type: DataTypes.INTEGER, + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + activated: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + } + }, { + sequelize, + tableName: 'points_settings', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/QuoteGroup.js b/src/server/models/QuoteGroup.js new file mode 100644 index 0000000..3f61c81 --- /dev/null +++ b/src/server/models/QuoteGroup.js @@ -0,0 +1,53 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('QuoteGroup', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + cost: { + type: DataTypes.DECIMAL, + allowNull: true + }, + transport_provider_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + quote_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + location_start_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + location_end_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + transport_providers: { + type: DataTypes.SMALLINT, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + completed: { + type: DataTypes.DATE, + allowNull: true + }, + processed: { + type: DataTypes.SMALLINT, + allowNull: true + } + }, { + sequelize, + tableName: 'quote_group', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Quotes.js b/src/server/models/Quotes.js new file mode 100644 index 0000000..1d74680 --- /dev/null +++ b/src/server/models/Quotes.js @@ -0,0 +1,71 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Quotes', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + transport_provider_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + automation_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + cost_raw: { + type: DataTypes.STRING(20), + allowNull: true + }, + cost: { + type: DataTypes.DECIMAL, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + completed: { + type: DataTypes.DATE, + allowNull: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + location_start_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + location_end_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + quote_group_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + prefill: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: false + }, + pool: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 1 + }, + travel_date: { + type: DataTypes.DATE, + allowNull: true + } + }, { + sequelize, + tableName: 'quotes', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ResetPassword.js b/src/server/models/ResetPassword.js index 439b316..2e6a642 100755 --- a/src/server/models/ResetPassword.js +++ b/src/server/models/ResetPassword.js @@ -1,44 +1,56 @@ -'use strict'; -module.exports = (sequelize, DataTypes) => { - const ResetPassword = sequelize.define('ResetPassword', { - username: { - type: DataTypes.STRING, +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Resetpassword', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, allowNull: false, + primaryKey: true + }, + username: { + type: DataTypes.STRING(50), + allowNull: false }, member_id: { - type: DataTypes.STRING, - allowNull: false, + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 }, reset_pin: { - type: DataTypes.STRING, - allowNull: false, + type: DataTypes.STRING(10), + allowNull: true }, reset_key: { - type: DataTypes.STRING, - allowNull: false, + type: DataTypes.STRING(100), + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') }, expired: { type: DataTypes.DATE, - allowNull: false + allowNull: true }, status: { type: DataTypes.INTEGER, - allowNull: false + allowNull: true, + defaultValue: 0 + }, + loc: { + type: DataTypes.INET, + allowNull: true + }, + trail_count: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 } }, { - + sequelize, tableName: 'resetpassword', - // don't forget to enable timestamps! - timestamps: true, - - // I don't want createdAt - createdAt: "created", - - // I want updatedAt to actually be called updateTimestamp - updatedAt: false + schema: 'public', + timestamps: false }); - ResetPassword.associate = function (models) { - // associations - }; - return ResetPassword; -}; \ No newline at end of file +}; diff --git a/src/server/models/ScreenCards.js b/src/server/models/ScreenCards.js new file mode 100644 index 0000000..59d9fcf --- /dev/null +++ b/src/server/models/ScreenCards.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ScreenCards', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + screen_name: { + type: DataTypes.STRING(200), + allowNull: false + }, + trigger_id: { + type: DataTypes.STRING(15), + allowNull: false + }, + status: { + type: DataTypes.SMALLINT, + allowNull: false, + defaultValue: 1 + } + }, { + sequelize, + tableName: 'screen_cards', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SingaporeBuildings.js b/src/server/models/SingaporeBuildings.js new file mode 100644 index 0000000..fe5143a --- /dev/null +++ b/src/server/models/SingaporeBuildings.js @@ -0,0 +1,56 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SingaporeBuildings', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + address: { + type: DataTypes.STRING(150), + allowNull: false + }, + blk_no: { + type: DataTypes.STRING(10), + allowNull: true + }, + building: { + type: DataTypes.STRING(100), + allowNull: true + }, + latitude: { + type: DataTypes.DECIMAL, + allowNull: true + }, + longitude: { + type: DataTypes.DECIMAL, + allowNull: true + }, + postal: { + type: DataTypes.STRING(6), + allowNull: false + }, + road_name: { + type: DataTypes.STRING(40), + allowNull: false + }, + searchval: { + type: DataTypes.STRING(100), + allowNull: false + }, + x: { + type: DataTypes.DECIMAL, + allowNull: true + }, + y: { + type: DataTypes.DECIMAL, + allowNull: true + } + }, { + sequelize, + tableName: 'singapore_buildings', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SingaporeBusStopFares.js b/src/server/models/SingaporeBusStopFares.js new file mode 100644 index 0000000..7650970 --- /dev/null +++ b/src/server/models/SingaporeBusStopFares.js @@ -0,0 +1,32 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SingaporeBusStopFares', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + boarding_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + alight_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + fare: { + type: DataTypes.INTEGER, + allowNull: true + }, + distance: { + type: DataTypes.INTEGER, + allowNull: true + } + }, { + sequelize, + tableName: 'singapore_bus_stop_fares', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SingaporeBusStops.js b/src/server/models/SingaporeBusStops.js new file mode 100644 index 0000000..2f2dfa6 --- /dev/null +++ b/src/server/models/SingaporeBusStops.js @@ -0,0 +1,41 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SingaporeBusStops', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + line: { + type: DataTypes.STRING(10), + allowNull: true + }, + direction: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 1 + }, + code: { + type: DataTypes.STRING(20), + allowNull: true + }, + stop_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + stop_code: { + type: DataTypes.STRING(10), + allowNull: true + }, + name: { + type: DataTypes.STRING(100), + allowNull: true + } + }, { + sequelize, + tableName: 'singapore_bus_stops', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SingaporeBusStopsLta.js b/src/server/models/SingaporeBusStopsLta.js new file mode 100644 index 0000000..9fe4413 --- /dev/null +++ b/src/server/models/SingaporeBusStopsLta.js @@ -0,0 +1,36 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SingaporeBusStopsLta', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + bus_stop_code: { + type: DataTypes.STRING(10), + allowNull: true + }, + road_name: { + type: DataTypes.STRING(40), + allowNull: true + }, + description: { + type: DataTypes.STRING(100), + allowNull: true + }, + lat: { + type: DataTypes.DECIMAL, + allowNull: true + }, + lng: { + type: DataTypes.DECIMAL, + allowNull: true + } + }, { + sequelize, + tableName: 'singapore_bus_stops_lta', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SingaporeDistricts.js b/src/server/models/SingaporeDistricts.js new file mode 100644 index 0000000..db3aa8e --- /dev/null +++ b/src/server/models/SingaporeDistricts.js @@ -0,0 +1,35 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SingaporeDistricts', { + id: { + type: DataTypes.SMALLINT, + allowNull: false, + primaryKey: true + }, + name: { + type: DataTypes.STRING(50), + allowNull: true + }, + area: { + type: DataTypes.STRING(200), + allowNull: true + }, + region_id: { + type: DataTypes.SMALLINT, + allowNull: true + }, + sector_id: { + type: DataTypes.SMALLINT, + allowNull: true + }, + postal_code: { + type: DataTypes.JSON, + allowNull: true + } + }, { + sequelize, + tableName: 'singapore_districts', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SingaporeMrtlrtStopFares.js b/src/server/models/SingaporeMrtlrtStopFares.js new file mode 100644 index 0000000..6ba066c --- /dev/null +++ b/src/server/models/SingaporeMrtlrtStopFares.js @@ -0,0 +1,32 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SingaporeMrtlrtStopFares', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + boarding_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + alight_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + fare: { + type: DataTypes.INTEGER, + allowNull: true + }, + distance: { + type: DataTypes.INTEGER, + allowNull: true + } + }, { + sequelize, + tableName: 'singapore_mrtlrt_stop_fares', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SingaporeMrtlrtStopNames.js b/src/server/models/SingaporeMrtlrtStopNames.js new file mode 100644 index 0000000..1c989fc --- /dev/null +++ b/src/server/models/SingaporeMrtlrtStopNames.js @@ -0,0 +1,48 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SingaporeMrtlrtStopNames', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + stn_code: { + type: DataTypes.STRING(10), + allowNull: false + }, + mrt_station_english: { + type: DataTypes.STRING(30), + allowNull: true + }, + mrt_station_chinese: { + type: DataTypes.STRING(20), + allowNull: true + }, + mrt_line_english: { + type: DataTypes.STRING(40), + allowNull: true + }, + mrt_line_chinese: { + type: DataTypes.STRING(40), + allowNull: true + }, + lat: { + type: DataTypes.DECIMAL, + allowNull: true + }, + lng: { + type: DataTypes.DECIMAL, + allowNull: true + }, + stn_code_connected: { + type: DataTypes.STRING(10), + allowNull: true + } + }, { + sequelize, + tableName: 'singapore_mrtlrt_stop_names', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SingaporeMrtlrtStopsMytransport.js b/src/server/models/SingaporeMrtlrtStopsMytransport.js new file mode 100644 index 0000000..e9fc669 --- /dev/null +++ b/src/server/models/SingaporeMrtlrtStopsMytransport.js @@ -0,0 +1,32 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SingaporeMrtlrtStopsMytransport', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + code1: { + type: DataTypes.INTEGER, + allowNull: true + }, + code2: { + type: DataTypes.INTEGER, + allowNull: true + }, + name: { + type: DataTypes.STRING(100), + allowNull: true + }, + stn_code: { + type: DataTypes.STRING(10), + allowNull: true + } + }, { + sequelize, + tableName: 'singapore_mrtlrt_stops_mytransport', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SingaporeRegionCoordinates.js b/src/server/models/SingaporeRegionCoordinates.js new file mode 100644 index 0000000..13f897f --- /dev/null +++ b/src/server/models/SingaporeRegionCoordinates.js @@ -0,0 +1,28 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SingaporeRegionCoordinates', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + region_id: { + type: DataTypes.SMALLINT, + allowNull: true + }, + lng: { + type: DataTypes.DECIMAL, + allowNull: true + }, + lat: { + type: DataTypes.DECIMAL, + allowNull: true + } + }, { + sequelize, + tableName: 'singapore_region_coordinates', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SingaporeRegions.js b/src/server/models/SingaporeRegions.js new file mode 100644 index 0000000..7dcca75 --- /dev/null +++ b/src/server/models/SingaporeRegions.js @@ -0,0 +1,19 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SingaporeRegions', { + id: { + type: DataTypes.SMALLINT, + allowNull: false, + primaryKey: true + }, + name: { + type: DataTypes.STRING(20), + allowNull: true + } + }, { + sequelize, + tableName: 'singapore_regions', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SingaporeSectors.js b/src/server/models/SingaporeSectors.js new file mode 100644 index 0000000..3b9e396 --- /dev/null +++ b/src/server/models/SingaporeSectors.js @@ -0,0 +1,19 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SingaporeSectors', { + id: { + type: DataTypes.SMALLINT, + allowNull: false, + primaryKey: true + }, + name: { + type: DataTypes.STRING(20), + allowNull: true + } + }, { + sequelize, + tableName: 'singapore_sectors', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SubscriptionSummary.js b/src/server/models/SubscriptionSummary.js new file mode 100644 index 0000000..48c3131 --- /dev/null +++ b/src/server/models/SubscriptionSummary.js @@ -0,0 +1,64 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SubscriptionSummary', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + country: { + type: DataTypes.STRING(20), + allowNull: true + }, + card_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + total_sub: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + last_7days: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + last_14days: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + last_30days: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + total_redeem: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + last_24hours: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + } + }, { + sequelize, + tableName: 'subscription_summary', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/Subscriptions.js b/src/server/models/Subscriptions.js new file mode 100644 index 0000000..3151ba4 --- /dev/null +++ b/src/server/models/Subscriptions.js @@ -0,0 +1,38 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('Subscriptions', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + country: { + type: DataTypes.STRING(2), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + title: { + type: DataTypes.STRING(25), + allowNull: true + }, + description: { + type: DataTypes.STRING(250), + allowNull: true + } + }, { + sequelize, + tableName: 'subscriptions', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/SubscriptionsDetail.js b/src/server/models/SubscriptionsDetail.js new file mode 100644 index 0000000..2ecc10b --- /dev/null +++ b/src/server/models/SubscriptionsDetail.js @@ -0,0 +1,48 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('SubscriptionsDetail', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + subscriptions: { + type: DataTypes.INTEGER, + allowNull: true + }, + title: { + type: DataTypes.STRING(25), + allowNull: false + }, + description: { + type: DataTypes.STRING(250), + allowNull: true + }, + price: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 0 + }, + renewal: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 30 + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'subscriptions_detail', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/TestAccounts.js b/src/server/models/TestAccounts.js new file mode 100644 index 0000000..7246315 --- /dev/null +++ b/src/server/models/TestAccounts.js @@ -0,0 +1,30 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('TestAccounts', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + }, + added: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'test_accounts', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ThrottleFunction.js b/src/server/models/ThrottleFunction.js new file mode 100644 index 0000000..8fa2938 --- /dev/null +++ b/src/server/models/ThrottleFunction.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ThrottleFunction', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + what: { + type: DataTypes.STRING(20), + allowNull: false + }, + ip: { + type: DataTypes.INET, + allowNull: true + }, + attempted: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'throttle_function', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/ThrottlingIp.js b/src/server/models/ThrottlingIp.js new file mode 100644 index 0000000..bdbb4f7 --- /dev/null +++ b/src/server/models/ThrottlingIp.js @@ -0,0 +1,35 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('ThrottlingIp', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + ip: { + type: DataTypes.INET, + allowNull: true + }, + time_first: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + time_last: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + total: { + type: DataTypes.BIGINT, + allowNull: true, + defaultValue: 1 + } + }, { + sequelize, + tableName: 'throttling_ip', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/TouristAttraction.js b/src/server/models/TouristAttraction.js new file mode 100644 index 0000000..dfbcff2 --- /dev/null +++ b/src/server/models/TouristAttraction.js @@ -0,0 +1,42 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('TouristAttraction', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + attraction: { + type: DataTypes.STRING(250), + allowNull: true + }, + active: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: true + }, + address_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + city_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + feature_image: { + type: DataTypes.STRING(350), + allowNull: true + }, + description: { + type: DataTypes.STRING(800), + allowNull: true, + defaultValue: "NULL" + } + }, { + sequelize, + tableName: 'tourist_attraction', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/TrackedEmailItem.js b/src/server/models/TrackedEmailItem.js new file mode 100644 index 0000000..d0d3d05 --- /dev/null +++ b/src/server/models/TrackedEmailItem.js @@ -0,0 +1,57 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('TrackedemailItem', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + member_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + subject: { + type: DataTypes.STRING(250), + allowNull: true + }, + message: { + type: DataTypes.TEXT, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + message_from: { + type: DataTypes.STRING(250), + allowNull: true + }, + hash: { + type: DataTypes.STRING(250), + allowNull: true + }, + date_parsed: { + type: DataTypes.DATE, + allowNull: true + }, + oauth2_pull_job_id: { + type: DataTypes.INTEGER, + allowNull: true + }, + message_date: { + type: DataTypes.DATE, + allowNull: true + }, + parsed_status: { + type: DataTypes.INTEGER, + allowNull: true + } + }, { + sequelize, + tableName: 'trackedemail_item', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/TrackingDataJob.js b/src/server/models/TrackingDataJob.js new file mode 100644 index 0000000..ccb6bd4 --- /dev/null +++ b/src/server/models/TrackingDataJob.js @@ -0,0 +1,30 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('TrackingDataJob', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + session: { + type: DataTypes.STRING(128), + allowNull: false + }, + updated: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + locked: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: false + } + }, { + sequelize, + tableName: 'tracking_data_job', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/TransportProviderApps.js b/src/server/models/TransportProviderApps.js new file mode 100644 index 0000000..3eab4dc --- /dev/null +++ b/src/server/models/TransportProviderApps.js @@ -0,0 +1,32 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('TransportProviderApps', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + transport_provider_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + country: { + type: DataTypes.STRING(2), + allowNull: false + }, + ios_app_id: { + type: DataTypes.STRING(100), + allowNull: true + }, + android_app_id: { + type: DataTypes.STRING(100), + allowNull: true + } + }, { + sequelize, + tableName: 'transport_provider_apps', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/TransportProviders.js b/src/server/models/TransportProviders.js new file mode 100644 index 0000000..2a0b3b2 --- /dev/null +++ b/src/server/models/TransportProviders.js @@ -0,0 +1,59 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('TransportProviders', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + name: { + type: DataTypes.STRING(50), + allowNull: false + }, + client: { + type: DataTypes.STRING(100), + allowNull: true + }, + token: { + type: DataTypes.STRING(200), + allowNull: true + }, + code: { + type: DataTypes.STRING(100), + allowNull: true + }, + access_token: { + type: DataTypes.STRING(200), + allowNull: true + }, + active: { + type: DataTypes.SMALLINT, + allowNull: true, + defaultValue: 1 + }, + timeout: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 3000 + }, + retries: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 5 + }, + category: { + type: DataTypes.STRING(30), + allowNull: true + }, + name_alias: { + type: DataTypes.STRING(100), + allowNull: true + } + }, { + sequelize, + tableName: 'transport_providers', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/TriggerExpiration.js b/src/server/models/TriggerExpiration.js new file mode 100644 index 0000000..a57691b --- /dev/null +++ b/src/server/models/TriggerExpiration.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('TriggerExpiration', { + id: { + autoIncrement: true, + type: DataTypes.INTEGER, + allowNull: false, + primaryKey: true + }, + description: { + type: DataTypes.STRING(150), + allowNull: false + }, + expiration: { + type: DataTypes.STRING(15), + allowNull: false + }, + status: { + type: DataTypes.INTEGER, + allowNull: true, + defaultValue: 1 + } + }, { + sequelize, + tableName: 'trigger_expiration', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/TripHolidays.js b/src/server/models/TripHolidays.js new file mode 100644 index 0000000..9adb888 --- /dev/null +++ b/src/server/models/TripHolidays.js @@ -0,0 +1,37 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('TripHolidays', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + data_source_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + data_source: { + type: DataTypes.SMALLINT, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: false, + defaultValue: Sequelize.Sequelize.fn('now') + }, + holiday_id: { + type: DataTypes.INTEGER, + allowNull: false + }, + normal_cost: { + type: DataTypes.DECIMAL, + allowNull: true + } + }, { + sequelize, + tableName: 'trip_holidays', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/TripPriceComparison.js b/src/server/models/TripPriceComparison.js new file mode 100644 index 0000000..5563596 --- /dev/null +++ b/src/server/models/TripPriceComparison.js @@ -0,0 +1,45 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('TripPriceComparison', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + data_source_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + root_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + cost: { + type: DataTypes.DECIMAL, + allowNull: true + }, + average: { + type: DataTypes.DECIMAL, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + data_source: { + type: DataTypes.SMALLINT, + allowNull: true + }, + root_type: { + type: DataTypes.SMALLINT, + allowNull: true + } + }, { + sequelize, + tableName: 'trip_price_comparison', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/TripSurgePrice.js b/src/server/models/TripSurgePrice.js new file mode 100644 index 0000000..1b0ae34 --- /dev/null +++ b/src/server/models/TripSurgePrice.js @@ -0,0 +1,29 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('TripSurgePrice', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + data_source_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + }, + data_source: { + type: DataTypes.SMALLINT, + allowNull: true + } + }, { + sequelize, + tableName: 'trip_surge_price', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/TripWeather.js b/src/server/models/TripWeather.js new file mode 100644 index 0000000..ee8c144 --- /dev/null +++ b/src/server/models/TripWeather.js @@ -0,0 +1,33 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('TripWeather', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + data_source_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + data_source: { + type: DataTypes.SMALLINT, + allowNull: true + }, + weather_id: { + type: DataTypes.BIGINT, + allowNull: true + }, + created: { + type: DataTypes.DATE, + allowNull: true, + defaultValue: Sequelize.Sequelize.fn('now') + } + }, { + sequelize, + tableName: 'trip_weather', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/WeatherServices.js b/src/server/models/WeatherServices.js new file mode 100644 index 0000000..6c3e22d --- /dev/null +++ b/src/server/models/WeatherServices.js @@ -0,0 +1,33 @@ +const Sequelize = require('sequelize'); +module.exports = function(sequelize, DataTypes) { + return sequelize.define('WeatherServices', { + id: { + autoIncrement: true, + type: DataTypes.BIGINT, + allowNull: false, + primaryKey: true + }, + service_name: { + type: DataTypes.STRING, + allowNull: true + }, + api_key: { + type: DataTypes.STRING, + allowNull: true + }, + url: { + type: DataTypes.STRING, + allowNull: true + }, + active: { + type: DataTypes.BOOLEAN, + allowNull: true, + defaultValue: true + } + }, { + sequelize, + tableName: 'weather_services', + schema: 'public', + timestamps: false + }); +}; diff --git a/src/server/models/init-models.js b/src/server/models/init-models.js new file mode 100644 index 0000000..c48e517 --- /dev/null +++ b/src/server/models/init-models.js @@ -0,0 +1,464 @@ +var DataTypes = require("sequelize").DataTypes; +var _ActionLogs = require("./ActionLogs"); +var _ActivityListcategory = require("./ActivityListcategory"); +var _AddressAlias = require("./AddressAlias"); +var _AddressDistanceCache = require("./AddressDistanceCache"); +var _AddressTimezone = require("./AddressTimezone"); +var _AppSettings = require("./AppSettings"); +var _BackofficeSession = require("./BackofficeSession"); +var _Banks = require("./Banks"); +var _BkoAcl = require("./BkoAcl"); +var _BkoAclPermissionLevel = require("./BkoAclPermissionLevel"); +var _BkoAclWhitelist = require("./BkoAclWhitelist"); +var _BkoAclWhitelistExtra = require("./BkoAclWhitelistExtra"); +var _BkoPermissionLevel = require("./BkoPermissionLevel"); +var _BkoUsers = require("./BkoUsers"); +var _BkoUsersMembersAccess = require("./BkoUsersMembersAccess"); +var _BlockIp = require("./BlockIp"); +var _BlogAppArticles = require("./BlogAppArticles"); +var _Booking = require("./Booking"); +var _BookingDetails = require("./BookingDetails"); +var _CardActionTarget = require("./CardActionTarget"); +var _CardActions = require("./CardActions"); +var _CardBehavior = require("./CardBehavior"); +var _CardCategory = require("./CardCategory"); +var _CardImageCategory = require("./CardImageCategory"); +var _CardImages = require("./CardImages"); +var _CityServices = require("./CityServices"); +var _Country = require("./Country"); +var _CountryServices = require("./CountryServices"); +var _CountryWeatherStations = require("./CountryWeatherStations"); +var _CrashLog = require("./CrashLog"); +var _CreditCardBenefits = require("./CreditCardBenefits"); +var _CreditCards = require("./CreditCards"); +var _DecisionCards = require("./DecisionCards"); +var _DecisionGroup = require("./DecisionGroup"); +var _DecisionGroupAction = require("./DecisionGroupAction"); +var _DecisionLogic = require("./DecisionLogic"); +var _EmailCycleTypes = require("./EmailCycleTypes"); +var _EmailDebug = require("./EmailDebug"); +var _EmailTrigger = require("./EmailTrigger"); +var _Emails = require("./Emails"); +var _EmissionAvrgCommute = require("./EmissionAvrgCommute"); +var _EmissionGasModel = require("./EmissionGasModel"); +var _EmissionModel = require("./EmissionModel"); +var _Estimates = require("./Estimates"); +var _GeocodingLogs = require("./GeocodingLogs"); +var _GeofenceAreaAnchor = require("./GeofenceAreaAnchor"); +var _GeofenceAreaAverageQuotes = require("./GeofenceAreaAverageQuotes"); +var _GeofenceAreaCitySettings = require("./GeofenceAreaCitySettings"); +var _GlobalSettings = require("./GlobalSettings"); +var _GoogleDirectionsLegStepDetails = require("./GoogleDirectionsLegStepDetails"); +var _GoogleDirectionsLegSteps = require("./GoogleDirectionsLegSteps"); +var _GoogleDirectionsLegs = require("./GoogleDirectionsLegs"); +var _GpsTriggerLocation = require("./GpsTriggerLocation"); +var _GroupDecisionLogic = require("./GroupDecisionLogic"); +var _GtfsAgency = require("./GtfsAgency"); +var _GtfsFareAttributes = require("./GtfsFareAttributes"); +var _GtfsFareRules = require("./GtfsFareRules"); +var _GtfsRoutes = require("./GtfsRoutes"); +var _GtfsStopTimes = require("./GtfsStopTimes"); +var _GtfsTrips = require("./GtfsTrips"); +var _Holidays = require("./Holidays"); +var _KibanaLogViewerUsers = require("./KibanaLogViewerUsers"); +var _LegStepQuote = require("./LegStepQuote"); +var _LoginAttempts = require("./LoginAttempts"); +var _MainCards = require("./MainCards"); +var _MemberSavedCards = require("./MemberSavedCards"); +var _Members = require("./Members"); +var _MembersAnalysis = require("./MembersAnalysis"); +var _MembersBankAccounts = require("./MembersBankAccounts"); +var _MembersBankimport = require("./MembersBankimport"); +var _MembersCardAssign = require("./MembersCardAssign"); +var _MembersCardclicktrack = require("./MembersCardclicktrack"); +var _MembersCards = require("./MembersCards"); +var _MembersCarpool = require("./MembersCarpool"); +var _MembersCarpoolFriends = require("./MembersCarpoolFriends"); +var _MembersDeviceManufacturers = require("./MembersDeviceManufacturers"); +var _MembersDeviceModels = require("./MembersDeviceModels"); +var _MembersDevicePlatforms = require("./MembersDevicePlatforms"); +var _MembersDevices = require("./MembersDevices"); +var _MembersLifecycleEmails = require("./MembersLifecycleEmails"); +var _MembersNotification = require("./MembersNotification"); +var _MembersOnboardingSurvey = require("./MembersOnboardingSurvey"); +var _MembersPending = require("./MembersPending"); +var _MembersPersonaltyLog = require("./MembersPersonaltyLog"); +var _MembersPoints = require("./MembersPoints"); +var _MembersPointsRedeem = require("./MembersPointsRedeem"); +var _MembersProfile = require("./MembersProfile"); +var _MembersSession = require("./MembersSession"); +var _MembersStatus = require("./MembersStatus"); +var _MembersSurvey = require("./MembersSurvey"); +var _MembersTask = require("./MembersTask"); +var _MembersTrackemail = require("./MembersTrackemail"); +var _MembersTracking = require("./MembersTracking"); +var _MembersTransactionsImportRaw = require("./MembersTransactionsImportRaw"); +var _MembersTrips = require("./MembersTrips"); +var _MockGpsLocation = require("./MockGpsLocation"); +var _MyfloatVersion = require("./MyfloatVersion"); +var _MytransportsgAdviceSchedule = require("./MytransportsgAdviceSchedule"); +var _NotificationTypes = require("./NotificationTypes"); +var _Oauth2Providers = require("./Oauth2Providers"); +var _Oauth2PullJobThreads = require("./Oauth2PullJobThreads"); +var _Oauth2PullJobs = require("./Oauth2PullJobs"); +var _Oauth2Tokens = require("./Oauth2Tokens"); +var _OnboardingSurvey = require("./OnboardingSurvey"); +var _OnboardingSurveyCards = require("./OnboardingSurveyCards"); +var _OnboardingSurveyGroup = require("./OnboardingSurveyGroup"); +var _OperationKeyValueStore = require("./OperationKeyValueStore"); +var _ParsedemailItem = require("./ParsedemailItem"); +var _ParsedemailItemAdvice = require("./ParsedemailItemAdvice"); +var _ParsedemailItemAdviceGoogle = require("./ParsedemailItemAdviceGoogle"); +var _ParsedemailItemAdviceResult = require("./ParsedemailItemAdviceResult"); +var _ParsedemailItemAdviceSchedule = require("./ParsedemailItemAdviceSchedule"); +var _ParsedemailItemCancelled = require("./ParsedemailItemCancelled"); +var _ParsedemailItemExtra = require("./ParsedemailItemExtra"); +var _ParsedemailItemPayment = require("./ParsedemailItemPayment"); +var _ParsedemailItemRewards = require("./ParsedemailItemRewards"); +var _PlatformUser = require("./PlatformUser"); +var _PointsRedeemAvialable = require("./PointsRedeemAvialable"); +var _PointsSettings = require("./PointsSettings"); +var _QuoteGroup = require("./QuoteGroup"); +var _Quotes = require("./Quotes"); +var _Resetpassword = require("./Resetpassword"); +var _ScreenCards = require("./ScreenCards"); +var _SingaporeBuildings = require("./SingaporeBuildings"); +var _SingaporeBusStopFares = require("./SingaporeBusStopFares"); +var _SingaporeBusStops = require("./SingaporeBusStops"); +var _SingaporeBusStopsLta = require("./SingaporeBusStopsLta"); +var _SingaporeDistricts = require("./SingaporeDistricts"); +var _SingaporeMrtlrtStopFares = require("./SingaporeMrtlrtStopFares"); +var _SingaporeMrtlrtStopNames = require("./SingaporeMrtlrtStopNames"); +var _SingaporeMrtlrtStopsMytransport = require("./SingaporeMrtlrtStopsMytransport"); +var _SingaporeRegionCoordinates = require("./SingaporeRegionCoordinates"); +var _SingaporeRegions = require("./SingaporeRegions"); +var _SingaporeSectors = require("./SingaporeSectors"); +var _SubscriptionSummary = require("./SubscriptionSummary"); +var _Subscriptions = require("./Subscriptions"); +var _SubscriptionsDetail = require("./SubscriptionsDetail"); +var _TestAccounts = require("./TestAccounts"); +var _ThrottleFunction = require("./ThrottleFunction"); +var _ThrottlingIp = require("./ThrottlingIp"); +var _TouristAttraction = require("./TouristAttraction"); +var _TrackedemailItem = require("./TrackedemailItem"); +var _TrackingDataJob = require("./TrackingDataJob"); +var _TransportProviderApps = require("./TransportProviderApps"); +var _TransportProviders = require("./TransportProviders"); +var _TriggerExpiration = require("./TriggerExpiration"); +var _TripHolidays = require("./TripHolidays"); +var _TripPriceComparison = require("./TripPriceComparison"); +var _TripSurgePrice = require("./TripSurgePrice"); +var _TripWeather = require("./TripWeather"); +var _WeatherServices = require("./WeatherServices"); + +function initModels(sequelize) { + var ActionLogs = _ActionLogs(sequelize, DataTypes); + var ActivityListcategory = _ActivityListcategory(sequelize, DataTypes); + var AddressAlias = _AddressAlias(sequelize, DataTypes); + var AddressDistanceCache = _AddressDistanceCache(sequelize, DataTypes); + var AddressTimezone = _AddressTimezone(sequelize, DataTypes); + var AppSettings = _AppSettings(sequelize, DataTypes); + var BackofficeSession = _BackofficeSession(sequelize, DataTypes); + var Banks = _Banks(sequelize, DataTypes); + var BkoAcl = _BkoAcl(sequelize, DataTypes); + var BkoAclPermissionLevel = _BkoAclPermissionLevel(sequelize, DataTypes); + var BkoAclWhitelist = _BkoAclWhitelist(sequelize, DataTypes); + var BkoAclWhitelistExtra = _BkoAclWhitelistExtra(sequelize, DataTypes); + var BkoPermissionLevel = _BkoPermissionLevel(sequelize, DataTypes); + var BkoUsers = _BkoUsers(sequelize, DataTypes); + var BkoUsersMembersAccess = _BkoUsersMembersAccess(sequelize, DataTypes); + var BlockIp = _BlockIp(sequelize, DataTypes); + var BlogAppArticles = _BlogAppArticles(sequelize, DataTypes); + var Booking = _Booking(sequelize, DataTypes); + var BookingDetails = _BookingDetails(sequelize, DataTypes); + var CardActionTarget = _CardActionTarget(sequelize, DataTypes); + var CardActions = _CardActions(sequelize, DataTypes); + var CardBehavior = _CardBehavior(sequelize, DataTypes); + var CardCategory = _CardCategory(sequelize, DataTypes); + var CardImageCategory = _CardImageCategory(sequelize, DataTypes); + var CardImages = _CardImages(sequelize, DataTypes); + var CityServices = _CityServices(sequelize, DataTypes); + var Country = _Country(sequelize, DataTypes); + var CountryServices = _CountryServices(sequelize, DataTypes); + var CountryWeatherStations = _CountryWeatherStations(sequelize, DataTypes); + var CrashLog = _CrashLog(sequelize, DataTypes); + var CreditCardBenefits = _CreditCardBenefits(sequelize, DataTypes); + var CreditCards = _CreditCards(sequelize, DataTypes); + var DecisionCards = _DecisionCards(sequelize, DataTypes); + var DecisionGroup = _DecisionGroup(sequelize, DataTypes); + var DecisionGroupAction = _DecisionGroupAction(sequelize, DataTypes); + var DecisionLogic = _DecisionLogic(sequelize, DataTypes); + var EmailCycleTypes = _EmailCycleTypes(sequelize, DataTypes); + var EmailDebug = _EmailDebug(sequelize, DataTypes); + var EmailTrigger = _EmailTrigger(sequelize, DataTypes); + var Emails = _Emails(sequelize, DataTypes); + var EmissionAvrgCommute = _EmissionAvrgCommute(sequelize, DataTypes); + var EmissionGasModel = _EmissionGasModel(sequelize, DataTypes); + var EmissionModel = _EmissionModel(sequelize, DataTypes); + var Estimates = _Estimates(sequelize, DataTypes); + var GeocodingLogs = _GeocodingLogs(sequelize, DataTypes); + var GeofenceAreaAnchor = _GeofenceAreaAnchor(sequelize, DataTypes); + var GeofenceAreaAverageQuotes = _GeofenceAreaAverageQuotes(sequelize, DataTypes); + var GeofenceAreaCitySettings = _GeofenceAreaCitySettings(sequelize, DataTypes); + var GlobalSettings = _GlobalSettings(sequelize, DataTypes); + var GoogleDirectionsLegStepDetails = _GoogleDirectionsLegStepDetails(sequelize, DataTypes); + var GoogleDirectionsLegSteps = _GoogleDirectionsLegSteps(sequelize, DataTypes); + var GoogleDirectionsLegs = _GoogleDirectionsLegs(sequelize, DataTypes); + var GpsTriggerLocation = _GpsTriggerLocation(sequelize, DataTypes); + var GroupDecisionLogic = _GroupDecisionLogic(sequelize, DataTypes); + var GtfsAgency = _GtfsAgency(sequelize, DataTypes); + var GtfsFareAttributes = _GtfsFareAttributes(sequelize, DataTypes); + var GtfsFareRules = _GtfsFareRules(sequelize, DataTypes); + var GtfsRoutes = _GtfsRoutes(sequelize, DataTypes); + var GtfsStopTimes = _GtfsStopTimes(sequelize, DataTypes); + var GtfsTrips = _GtfsTrips(sequelize, DataTypes); + var Holidays = _Holidays(sequelize, DataTypes); + var KibanaLogViewerUsers = _KibanaLogViewerUsers(sequelize, DataTypes); + var LegStepQuote = _LegStepQuote(sequelize, DataTypes); + var LoginAttempts = _LoginAttempts(sequelize, DataTypes); + var MainCards = _MainCards(sequelize, DataTypes); + var MemberSavedCards = _MemberSavedCards(sequelize, DataTypes); + var Members = _Members(sequelize, DataTypes); + var MembersAnalysis = _MembersAnalysis(sequelize, DataTypes); + var MembersBankAccounts = _MembersBankAccounts(sequelize, DataTypes); + var MembersBankimport = _MembersBankimport(sequelize, DataTypes); + var MembersCardAssign = _MembersCardAssign(sequelize, DataTypes); + var MembersCardclicktrack = _MembersCardclicktrack(sequelize, DataTypes); + var MembersCards = _MembersCards(sequelize, DataTypes); + var MembersCarpool = _MembersCarpool(sequelize, DataTypes); + var MembersCarpoolFriends = _MembersCarpoolFriends(sequelize, DataTypes); + var MembersDeviceManufacturers = _MembersDeviceManufacturers(sequelize, DataTypes); + var MembersDeviceModels = _MembersDeviceModels(sequelize, DataTypes); + var MembersDevicePlatforms = _MembersDevicePlatforms(sequelize, DataTypes); + var MembersDevices = _MembersDevices(sequelize, DataTypes); + var MembersLifecycleEmails = _MembersLifecycleEmails(sequelize, DataTypes); + var MembersNotification = _MembersNotification(sequelize, DataTypes); + var MembersOnboardingSurvey = _MembersOnboardingSurvey(sequelize, DataTypes); + var MembersPending = _MembersPending(sequelize, DataTypes); + var MembersPersonaltyLog = _MembersPersonaltyLog(sequelize, DataTypes); + var MembersPoints = _MembersPoints(sequelize, DataTypes); + var MembersPointsRedeem = _MembersPointsRedeem(sequelize, DataTypes); + var MembersProfile = _MembersProfile(sequelize, DataTypes); + var MembersSession = _MembersSession(sequelize, DataTypes); + var MembersStatus = _MembersStatus(sequelize, DataTypes); + var MembersSurvey = _MembersSurvey(sequelize, DataTypes); + var MembersTask = _MembersTask(sequelize, DataTypes); + var MembersTrackemail = _MembersTrackemail(sequelize, DataTypes); + var MembersTracking = _MembersTracking(sequelize, DataTypes); + var MembersTransactionsImportRaw = _MembersTransactionsImportRaw(sequelize, DataTypes); + var MembersTrips = _MembersTrips(sequelize, DataTypes); + var MockGpsLocation = _MockGpsLocation(sequelize, DataTypes); + var MyfloatVersion = _MyfloatVersion(sequelize, DataTypes); + var MytransportsgAdviceSchedule = _MytransportsgAdviceSchedule(sequelize, DataTypes); + var NotificationTypes = _NotificationTypes(sequelize, DataTypes); + var Oauth2Providers = _Oauth2Providers(sequelize, DataTypes); + var Oauth2PullJobThreads = _Oauth2PullJobThreads(sequelize, DataTypes); + var Oauth2PullJobs = _Oauth2PullJobs(sequelize, DataTypes); + var Oauth2Tokens = _Oauth2Tokens(sequelize, DataTypes); + var OnboardingSurvey = _OnboardingSurvey(sequelize, DataTypes); + var OnboardingSurveyCards = _OnboardingSurveyCards(sequelize, DataTypes); + var OnboardingSurveyGroup = _OnboardingSurveyGroup(sequelize, DataTypes); + var OperationKeyValueStore = _OperationKeyValueStore(sequelize, DataTypes); + var ParsedemailItem = _ParsedemailItem(sequelize, DataTypes); + var ParsedemailItemAdvice = _ParsedemailItemAdvice(sequelize, DataTypes); + var ParsedemailItemAdviceGoogle = _ParsedemailItemAdviceGoogle(sequelize, DataTypes); + var ParsedemailItemAdviceResult = _ParsedemailItemAdviceResult(sequelize, DataTypes); + var ParsedemailItemAdviceSchedule = _ParsedemailItemAdviceSchedule(sequelize, DataTypes); + var ParsedemailItemCancelled = _ParsedemailItemCancelled(sequelize, DataTypes); + var ParsedemailItemExtra = _ParsedemailItemExtra(sequelize, DataTypes); + var ParsedemailItemPayment = _ParsedemailItemPayment(sequelize, DataTypes); + var ParsedemailItemRewards = _ParsedemailItemRewards(sequelize, DataTypes); + var PlatformUser = _PlatformUser(sequelize, DataTypes); + var PointsRedeemAvialable = _PointsRedeemAvialable(sequelize, DataTypes); + var PointsSettings = _PointsSettings(sequelize, DataTypes); + var QuoteGroup = _QuoteGroup(sequelize, DataTypes); + var Quotes = _Quotes(sequelize, DataTypes); + var Resetpassword = _Resetpassword(sequelize, DataTypes); + var ScreenCards = _ScreenCards(sequelize, DataTypes); + var SingaporeBuildings = _SingaporeBuildings(sequelize, DataTypes); + var SingaporeBusStopFares = _SingaporeBusStopFares(sequelize, DataTypes); + var SingaporeBusStops = _SingaporeBusStops(sequelize, DataTypes); + var SingaporeBusStopsLta = _SingaporeBusStopsLta(sequelize, DataTypes); + var SingaporeDistricts = _SingaporeDistricts(sequelize, DataTypes); + var SingaporeMrtlrtStopFares = _SingaporeMrtlrtStopFares(sequelize, DataTypes); + var SingaporeMrtlrtStopNames = _SingaporeMrtlrtStopNames(sequelize, DataTypes); + var SingaporeMrtlrtStopsMytransport = _SingaporeMrtlrtStopsMytransport(sequelize, DataTypes); + var SingaporeRegionCoordinates = _SingaporeRegionCoordinates(sequelize, DataTypes); + var SingaporeRegions = _SingaporeRegions(sequelize, DataTypes); + var SingaporeSectors = _SingaporeSectors(sequelize, DataTypes); + var SubscriptionSummary = _SubscriptionSummary(sequelize, DataTypes); + var Subscriptions = _Subscriptions(sequelize, DataTypes); + var SubscriptionsDetail = _SubscriptionsDetail(sequelize, DataTypes); + var TestAccounts = _TestAccounts(sequelize, DataTypes); + var ThrottleFunction = _ThrottleFunction(sequelize, DataTypes); + var ThrottlingIp = _ThrottlingIp(sequelize, DataTypes); + var TouristAttraction = _TouristAttraction(sequelize, DataTypes); + var TrackedemailItem = _TrackedemailItem(sequelize, DataTypes); + var TrackingDataJob = _TrackingDataJob(sequelize, DataTypes); + var TransportProviderApps = _TransportProviderApps(sequelize, DataTypes); + var TransportProviders = _TransportProviders(sequelize, DataTypes); + var TriggerExpiration = _TriggerExpiration(sequelize, DataTypes); + var TripHolidays = _TripHolidays(sequelize, DataTypes); + var TripPriceComparison = _TripPriceComparison(sequelize, DataTypes); + var TripSurgePrice = _TripSurgePrice(sequelize, DataTypes); + var TripWeather = _TripWeather(sequelize, DataTypes); + var WeatherServices = _WeatherServices(sequelize, DataTypes); + + + return { + ActionLogs, + ActivityListcategory, + AddressAlias, + AddressDistanceCache, + AddressTimezone, + AppSettings, + BackofficeSession, + Banks, + BkoAcl, + BkoAclPermissionLevel, + BkoAclWhitelist, + BkoAclWhitelistExtra, + BkoPermissionLevel, + BkoUsers, + BkoUsersMembersAccess, + BlockIp, + BlogAppArticles, + Booking, + BookingDetails, + CardActionTarget, + CardActions, + CardBehavior, + CardCategory, + CardImageCategory, + CardImages, + CityServices, + Country, + CountryServices, + CountryWeatherStations, + CrashLog, + CreditCardBenefits, + CreditCards, + DecisionCards, + DecisionGroup, + DecisionGroupAction, + DecisionLogic, + EmailCycleTypes, + EmailDebug, + EmailTrigger, + Emails, + EmissionAvrgCommute, + EmissionGasModel, + EmissionModel, + Estimates, + GeocodingLogs, + GeofenceAreaAnchor, + GeofenceAreaAverageQuotes, + GeofenceAreaCitySettings, + GlobalSettings, + GoogleDirectionsLegStepDetails, + GoogleDirectionsLegSteps, + GoogleDirectionsLegs, + GpsTriggerLocation, + GroupDecisionLogic, + GtfsAgency, + GtfsFareAttributes, + GtfsFareRules, + GtfsRoutes, + GtfsStopTimes, + GtfsTrips, + Holidays, + KibanaLogViewerUsers, + LegStepQuote, + LoginAttempts, + MainCards, + MemberSavedCards, + Members, + MembersAnalysis, + MembersBankAccounts, + MembersBankimport, + MembersCardAssign, + MembersCardclicktrack, + MembersCards, + MembersCarpool, + MembersCarpoolFriends, + MembersDeviceManufacturers, + MembersDeviceModels, + MembersDevicePlatforms, + MembersDevices, + MembersLifecycleEmails, + MembersNotification, + MembersOnboardingSurvey, + MembersPending, + MembersPersonaltyLog, + MembersPoints, + MembersPointsRedeem, + MembersProfile, + MembersSession, + MembersStatus, + MembersSurvey, + MembersTask, + MembersTrackemail, + MembersTracking, + MembersTransactionsImportRaw, + MembersTrips, + MockGpsLocation, + MyfloatVersion, + MytransportsgAdviceSchedule, + NotificationTypes, + Oauth2Providers, + Oauth2PullJobThreads, + Oauth2PullJobs, + Oauth2Tokens, + OnboardingSurvey, + OnboardingSurveyCards, + OnboardingSurveyGroup, + OperationKeyValueStore, + ParsedemailItem, + ParsedemailItemAdvice, + ParsedemailItemAdviceGoogle, + ParsedemailItemAdviceResult, + ParsedemailItemAdviceSchedule, + ParsedemailItemCancelled, + ParsedemailItemExtra, + ParsedemailItemPayment, + ParsedemailItemRewards, + PlatformUser, + PointsRedeemAvialable, + PointsSettings, + QuoteGroup, + Quotes, + Resetpassword, + ScreenCards, + SingaporeBuildings, + SingaporeBusStopFares, + SingaporeBusStops, + SingaporeBusStopsLta, + SingaporeDistricts, + SingaporeMrtlrtStopFares, + SingaporeMrtlrtStopNames, + SingaporeMrtlrtStopsMytransport, + SingaporeRegionCoordinates, + SingaporeRegions, + SingaporeSectors, + SubscriptionSummary, + Subscriptions, + SubscriptionsDetail, + TestAccounts, + ThrottleFunction, + ThrottlingIp, + TouristAttraction, + TrackedemailItem, + TrackingDataJob, + TransportProviderApps, + TransportProviders, + TriggerExpiration, + TripHolidays, + TripPriceComparison, + TripSurgePrice, + TripWeather, + WeatherServices, + }; +} +module.exports = initModels; +module.exports.initModels = initModels; +module.exports.default = initModels; diff --git a/src/server/models/member.js b/src/server/models/member.js deleted file mode 100755 index 36132a4..0000000 --- a/src/server/models/member.js +++ /dev/null @@ -1,119 +0,0 @@ -'use strict'; -/** - * @swagger - * components: - * schemas: - * Member: - * type: object - * properties: - * username: - * type: string - * description: username - * example: float - * email: - * type: string - * description: The user's email. - * example: support@float.sg - * firstname: - * type: string - * description: The user's firstname. - * example: Float - * lastname: - * type: string - * description: The user's lastname. - * example: Mobility - * phone: - * type: string - * description: The user's phone. - * example: 0123456789 - */ -module.exports = (sequelize, DataTypes) => { - const Member = sequelize.define('Member', { - username: { - type: DataTypes.STRING, - allowNull: false, - unique:{ - args: true, msg: "username already exists" - }, - validate: { - len: { - args: [3, 50], - msg: 'Your username may be 5 to 50 characters only.' - } - } - }, - email: { - type: DataTypes.STRING, - allowNull: false, - unique:{ - args: true, msg: "email already exists" - }, - validate: { - isEmail: { - msg: 'Email address must be valid.' - } - } - }, - password: { - type: DataTypes.STRING, - allowNull: false, - validate: { - len: { - args: [6, 72], - msg: 'Your password may be 5 to 72 characters only.' - } - } - }, - firstname: { - type: DataTypes.STRING, - allowNull: false, - validate: { - len: { - args: [2, 50], - msg: 'Your first name may be 5 to 50 characters only.' - } - } - }, - lastname: { - type: DataTypes.STRING, - allowNull: false, - validate: { - len: { - args: [2, 50], - msg: 'Your last name may be 5 to 50 characters only.' - } - } - }, - phone: { - type: DataTypes.STRING, - allowNull: false, - validate: { - len: { - args: [2, 50], - msg: 'Your last name may be 5 to 50 characters only.' - } - } - } - }, { - - tableName: 'members', - // don't forget to enable timestamps! - timestamps: true, - - // I don't want createdAt - createdAt: "added", - - // I want updatedAt to actually be called updateTimestamp - updatedAt: 'updated', - indexes: [ - { - unique: true, - fields: ["username","email"] // Whatever other field you need to make unique - } - ] - }); - Member.associate = function (models) { - // associations - }; - return Member; -}; \ No newline at end of file diff --git a/src/server/routes/member.js b/src/server/routes/member.js index e59bd5c..b0b9a9f 100644 --- a/src/server/routes/member.js +++ b/src/server/routes/member.js @@ -292,7 +292,6 @@ module.exports = (app, url) => { * app.post("usertransportprofile"); * app.post("getdashcarddata"); * app.post("loadsavedcards"); - * app.post("loadsavedcards"); * app.post("savedashcard"); * app.post("saveuserbudget"); * app.post("resetpass"); @@ -310,7 +309,6 @@ module.exports = (app, url) => { * app.post("managefeature"); * app.post("carpool"); * app.post("logout"); - * app.post("logout"); * app.post("carpoolstatus"); * app.post("getsavedtrips"); * app.post("savedtrip"); diff --git a/src/server/services/member/member.js b/src/server/services/member/member.js index 5e2431b..f5ad47a 100755 --- a/src/server/services/member/member.js +++ b/src/server/services/member/member.js @@ -1,8 +1,14 @@ const jwt = require('jsonwebtoken'); +const { omit } = require('lodash'); const bcrypt = require('bcrypt'); const crypto = require('crypto'); -const Member = require("../../models").Member; +const { Sequelize, QueryTypes } = require('sequelize'); +const Member = require("../../models").Members; +const MemberProfile = require("../../models").MembersProfile; +const sequelize = require("../../models").sequelize; +const DecisionGroup = require("../../models").DecisionGroup; const resetPasswordService = require("./resetPassword"); +const MembersProfile = require('../../models/MembersProfile'); module.exports = { RESET_START: 100, @@ -39,7 +45,8 @@ module.exports = { user.last_login = Date.now() user.save() const token = jwt.sign({ - username: user.username + username: user.username, + id: user.id }, process.env.TOKEN_SECRET, { expiresIn: process.env.TOKEN_EXPIRES } ); @@ -206,11 +213,20 @@ module.exports = { }, async getProfile(req) { - const username = req.user.username; - return await Member.findOne({ - where: { username: username }, - attributes: ['username', 'email', 'phone', 'firstname', 'lastname'] - }); + const member_id = req.user.id; + var result = {}; + let sql = `SELECT dg.personality AS personality_name,m.id AS member_id,m.*,p.* + FROM members m LEFT JOIN members_profile p ON p.member_id=m.id LEFT JOIN decision_group dg ON dg.dkey = m.decision_group + WHERE m.id=:member_id LIMIT 1`; + const results = await sequelize.query(sql, + { + replacements: { member_id: member_id } + }); + if (results[0][0]) { + result = results[0][0]; + return omit(result, ['password', 'password2']) + } + return result; }, updateProfile(username, data) { @@ -234,7 +250,7 @@ module.exports = { async updatePassword(req) { const username = req.user.username; const user = await Member.findOne({ - where: { username: username}, + where: { username: username }, attributes: ['password', 'username'] }); const cmp = await bcrypt.compare(req.body.oldPassword, user.password);