mobioffice-cli 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{src/index.ts → lib/index.d.ts} +1 -45
- package/lib/models/Feed-Details-Screen.model.d.ts +6 -0
- package/lib/models/Feed-Details-Screen.model.js +27 -0
- package/lib/models/action.model.d.ts +58 -0
- package/lib/models/action.model.js +315 -0
- package/lib/models/actions/doffing.d.ts +6 -0
- package/lib/models/actions/doffing.js +64 -0
- package/lib/models/actions/folding.d.ts +7 -0
- package/lib/models/actions/folding.js +37 -0
- package/lib/models/attendance.model.d.ts +44 -0
- package/lib/models/attendance.model.js +446 -0
- package/lib/models/cicoPost.model.d.ts +9 -0
- package/lib/models/cicoPost.model.js +19 -0
- package/lib/models/company.model.d.ts +67 -0
- package/lib/models/company.model.js +725 -0
- package/lib/models/contact-us/resquest.model.d.ts +30 -0
- package/lib/models/contact-us/resquest.model.js +73 -0
- package/lib/models/crud/crud.d.ts +7 -0
- package/lib/models/crud/crud.js +27 -0
- package/lib/models/customCollection.model.d.ts +9 -0
- package/lib/models/customCollection.model.js +40 -0
- package/lib/models/customer/customer.model.d.ts +32 -0
- package/lib/models/customer/customer.model.js +62 -0
- package/lib/models/deviceChangeReq.d.ts +10 -0
- package/lib/models/deviceChangeReq.js +138 -0
- package/lib/models/dispatch.model.d.ts +14 -0
- package/lib/models/dispatch.model.js +93 -0
- package/lib/models/feed.models.d.ts +8 -0
- package/lib/models/feed.models.js +97 -0
- package/lib/models/geofence.model.d.ts +7 -0
- package/lib/models/geofence.model.js +61 -0
- package/lib/models/leaveApplicationPost.model.d.ts +12 -0
- package/lib/models/leaveApplicationPost.model.js +72 -0
- package/lib/models/license.model.d.ts +25 -0
- package/lib/models/license.model.js +198 -0
- package/lib/models/log.model.d.ts +6 -0
- package/{src/models/log.model.ts → lib/models/log.model.js} +11 -11
- package/lib/models/meeting.model.d.ts +11 -0
- package/lib/models/meeting.model.js +79 -0
- package/lib/models/meter.model.d.ts +18 -0
- package/lib/models/meter.model.js +54 -0
- package/lib/models/missingPunchPost.model.d.ts +15 -0
- package/lib/models/missingPunchPost.model.js +69 -0
- package/lib/models/offline.model.d.ts +70 -0
- package/lib/models/offline.model.js +831 -0
- package/lib/models/post.model.d.ts +38 -0
- package/lib/models/post.model.js +94 -0
- package/lib/models/printDetailsScreen.model.d.ts +6 -0
- package/lib/models/printDetailsScreen.model.js +27 -0
- package/lib/models/pushNotifications/pushNotification.model.d.ts +4 -0
- package/lib/models/pushNotifications/pushNotification.model.js +17 -0
- package/lib/models/report-actions.model.d.ts +26 -0
- package/lib/models/report-actions.model.js +56 -0
- package/lib/models/report-definition-details.model.d.ts +13 -0
- package/lib/models/report-definition-details.model.js +85 -0
- package/lib/models/report-definition.model.d.ts +23 -0
- package/lib/models/report-definition.model.js +26 -0
- package/lib/models/report-definitions-summary.model.d.ts +8 -0
- package/lib/models/report-definitions-summary.model.js +59 -0
- package/lib/models/report-detail-data.model.d.ts +46 -0
- package/lib/models/report-detail-data.model.js +49 -0
- package/lib/models/report-visibility.model.d.ts +7 -0
- package/lib/models/report-visibility.model.js +42 -0
- package/lib/models/report.model.d.ts +19 -0
- package/lib/models/report.model.js +138 -0
- package/lib/models/reportGenerator.model.d.ts +164 -0
- package/lib/models/reportGenerator.model.js +642 -0
- package/lib/models/response.model.d.ts +18 -0
- package/lib/models/response.model.js +30 -0
- package/lib/models/steps.factory.model.d.ts +172 -0
- package/lib/models/steps.factory.model.js +187 -0
- package/lib/models/storeGupShupLog.model.d.ts +6 -0
- package/lib/models/storeGupShupLog.model.js +51 -0
- package/lib/models/summary.model.d.ts +10 -0
- package/{src/models/summary.model.ts → lib/models/summary.model.js} +28 -27
- package/lib/models/tasks/sub-task-group.model.d.ts +42 -0
- package/lib/models/tasks/sub-task-group.model.js +154 -0
- package/lib/models/tasks/tags.model.d.ts +29 -0
- package/lib/models/tasks/tags.model.js +70 -0
- package/lib/models/tasks/task-group.model.d.ts +53 -0
- package/lib/models/tasks/task-group.model.js +156 -0
- package/lib/models/tasks/task.model.d.ts +163 -0
- package/lib/models/tasks/task.model.js +603 -0
- package/lib/models/tempCollection.model.d.ts +40 -0
- package/{src/models/tempCollection.model.ts → lib/models/tempCollection.model.js} +114 -130
- package/lib/models/user.model.d.ts +42 -0
- package/lib/models/user.model.js +272 -0
- package/lib/models/utility.model.d.ts +13 -0
- package/lib/models/utility.model.js +93 -0
- package/lib/models/visitorManagement/acknowledgement.model.d.ts +9 -0
- package/lib/models/visitorManagement/acknowledgement.model.js +55 -0
- package/lib/models/visitorManagement/invite.model.d.ts +32 -0
- package/lib/models/visitorManagement/invite.model.js +326 -0
- package/lib/models/visitorManagement/newIn.model.d.ts +19 -0
- package/lib/models/visitorManagement/newIn.model.js +67 -0
- package/lib/models/visitorManagement/selfServe.model.d.ts +13 -0
- package/lib/models/visitorManagement/selfServe.model.js +46 -0
- package/lib/models/worklogPost.model.d.ts +6 -0
- package/lib/models/worklogPost.model.js +9 -0
- package/lib/services/customer.d.ts +30 -0
- package/lib/services/customer.js +354 -0
- package/lib/services/meeting.d.ts +19 -0
- package/lib/services/meeting.js +109 -0
- package/package.json +4 -1
- package/.prettierrc +0 -4
- package/a.js +0 -3
- package/scripts/1.ts +0 -1300
- package/scripts/GCloudPubSub/pub-sub-config.json +0 -12
- package/scripts/GCloudPubSub/visitorAutoRejection.ts +0 -86
- package/scripts/actions/assignUsersFromOneActionToOther.ts +0 -64
- package/scripts/actions/assignUsersListToAction.ts +0 -81
- package/scripts/actions/getActionsListOfUser.ts +0 -42
- package/scripts/actions/getCompanyUserDetails.ts +0 -49
- package/scripts/actions/giveActionToUser.ts +0 -41
- package/scripts/actions/giveUsersToActivitySelector.ts +0 -56
- package/scripts/actions/groupActionsInActivitySelector.ts +0 -101
- package/scripts/actions/modifySummaryReportDB.ts +0 -42
- package/scripts/actions/setUrlToActionStep.ts +0 -18
- package/scripts/actions/syncMySqlAttendanceDBWithFirebase.ts +0 -93
- package/scripts/actions/syncMySqlMeetingsDBWithFirebase.ts +0 -103
- package/scripts/actions/test.ts +0 -29
- package/scripts/actions/transferFeedsOldIdToNew.ts +0 -40
- package/scripts/actions/transformUserIntoManager.ts +0 -89
- package/scripts/argvConfig.js +0 -9
- package/scripts/backUpData/testCode.ts +0 -131
- package/scripts/benaraScripts/addWorkAreaMap.ts +0 -46
- package/scripts/benaraScripts/add_customers.ts +0 -26
- package/scripts/benaraScripts/add_customers_contact.ts +0 -27
- package/scripts/benaraScripts/add_empty_work_area.ts +0 -17
- package/scripts/benaraScripts/assignManagers.ts +0 -35
- package/scripts/benaraScripts/changeCheckInFlag.ts +0 -45
- package/scripts/benaraScripts/createCustomerContactsList.ts +0 -170
- package/scripts/benaraScripts/createUserByDeletingOldUser.ts +0 -70
- package/scripts/benaraScripts/createUsersAreaMapCollection.ts +0 -23
- package/scripts/benaraScripts/createWorkAreaMap.ts +0 -24
- package/scripts/benaraScripts/mapWorkAreasToUsers.ts +0 -112
- package/scripts/companies_data.json +0 -2496
- package/scripts/create_or_update_users.ts +0 -31
- package/scripts/csvToJson/csvToJson.ts +0 -90
- package/scripts/csvToJson/users.json +0 -3896
- package/scripts/db.js +0 -27
- package/scripts/db.json +0 -13
- package/scripts/dbMySql.ts +0 -63
- package/scripts/delete_action_steps.ts +0 -11
- package/scripts/delete_user.ts +0 -71
- package/scripts/dev_companies_data.json +0 -613
- package/scripts/enroll.xlsx +0 -0
- package/scripts/export_users.ts +0 -72
- package/scripts/files/visitorManagementFiles/displayScreen.json +0 -70
- package/scripts/files/visitorManagementFiles/init_report_visibility.ts +0 -79
- package/scripts/firebaseConfig.js +0 -12
- package/scripts/firebaseDocs/deleteIncommingCollection.ts +0 -47
- package/scripts/firebaseDocs/updateDoc.ts +0 -43
- package/scripts/getActionDataIntoJSON/getActionData.ts +0 -68
- package/scripts/get_attendance_by_any_date.ts +0 -14
- package/scripts/get_attendance_by_month.ts +0 -12
- package/scripts/get_attendance_monthly_by_team.ts +0 -11
- package/scripts/get_daily_report.ts +0 -10
- package/scripts/get_mangers.ts +0 -13
- package/scripts/grant_user_license.ts +0 -18
- package/scripts/init_CustomCollection.ts +0 -16
- package/scripts/init_action_steps.ts +0 -28
- package/scripts/init_actions.ts +0 -31
- package/scripts/init_company.ts +0 -18
- package/scripts/init_customer_mysql.ts +0 -12
- package/scripts/init_feed.ts +0 -4
- package/scripts/init_feed_details_screen.ts +0 -14
- package/scripts/init_geofence.ts +0 -26
- package/scripts/init_print_details_screen.ts +0 -14
- package/scripts/init_report_actions.ts +0 -24
- package/scripts/init_report_definition_detail.ts +0 -26
- package/scripts/init_report_definition_summary.ts +0 -16
- package/scripts/init_report_visibility.ts +0 -46
- package/scripts/init_user_customcollection.ts +0 -16
- package/scripts/json/action.json +0 -21
- package/scripts/json/company.json +0 -24
- package/scripts/json/report-action.json +0 -13
- package/scripts/json/report-def-deet.json +0 -43
- package/scripts/json/resp.json +0 -784
- package/scripts/json/steps.json +0 -24
- package/scripts/json/test.ts +0 -49
- package/scripts/mysqlConfig.ts +0 -9
- package/scripts/revoke_or_extend_license.ts +0 -14
- package/scripts/stream.js +0 -4
- package/scripts/testing1.ts +0 -35
- package/scripts/update/doc.json +0 -20
- package/scripts/update/getDocByPath.ts +0 -34
- package/scripts/update/updateDocByPath.ts +0 -47
- package/scripts/update/updateUsersOfCompanies.ts +0 -58
- package/scripts/update_actions.ts +0 -19
- package/scripts/update_actions_steps.ts +0 -19
- package/scripts/update_company.ts +0 -19
- package/scripts/update_geofence.ts +0 -20
- package/scripts/update_managers.ts +0 -16
- package/scripts/visitorMgmt/createArea.ts +0 -68
- package/scripts/visitorMgmt/createArea.txt +0 -3
- package/scripts/visitorMgmt/createVisitorPathInstructionDocs.ts +0 -130
- package/scripts/visitorMgmt/createVisitorPathInstructionDocs.txt +0 -18
- package/scripts/visitorMgmt/encryptDateString.ts +0 -71
- package/scripts/visitorMgmt/makeHostsManagersOfEachOther.ts +0 -117
- package/scripts/whatsapp_gupshup/sendMessage.ts +0 -97
- package/src/models/Feed-Details-Screen.model.ts +0 -29
- package/src/models/action.model.ts +0 -355
- package/src/models/actions/doffing.ts +0 -71
- package/src/models/actions/folding.ts +0 -39
- package/src/models/attendance.model.ts +0 -615
- package/src/models/cicoPost.model.ts +0 -20
- package/src/models/company.model.ts +0 -975
- package/src/models/contact-us/resquest.model.ts +0 -87
- package/src/models/crud/crud.ts +0 -30
- package/src/models/customCollection.model.ts +0 -47
- package/src/models/customer/customer.model.ts +0 -85
- package/src/models/deviceChangeReq.ts +0 -150
- package/src/models/dispatch.model.ts +0 -99
- package/src/models/feed.models.ts +0 -104
- package/src/models/geofence.model.ts +0 -61
- package/src/models/leaveApplicationPost.model.ts +0 -79
- package/src/models/license.model.ts +0 -215
- package/src/models/meeting.model.ts +0 -80
- package/src/models/meter.model.ts +0 -62
- package/src/models/missingPunchPost.model.ts +0 -84
- package/src/models/offline.model.ts +0 -1133
- package/src/models/post.model.ts +0 -105
- package/src/models/printDetailsScreen.model.ts +0 -30
- package/src/models/pushNotifications/pushNotification.model.ts +0 -17
- package/src/models/report-actions.model.ts +0 -57
- package/src/models/report-definition-details.model.ts +0 -89
- package/src/models/report-definition.model.ts +0 -26
- package/src/models/report-definitions-summary.model.ts +0 -59
- package/src/models/report-detail-data.model.ts +0 -49
- package/src/models/report-visibility.model.ts +0 -44
- package/src/models/report.model.ts +0 -179
- package/src/models/reportGenerator.model.ts +0 -883
- package/src/models/response.model.ts +0 -31
- package/src/models/steps.factory.model.ts +0 -195
- package/src/models/storeGupShupLog.model.ts +0 -49
- package/src/models/tasks/sub-task-group.model.ts +0 -173
- package/src/models/tasks/tags.model.ts +0 -113
- package/src/models/tasks/task-group.model.ts +0 -172
- package/src/models/tasks/task.model.ts +0 -681
- package/src/models/user.model.ts +0 -319
- package/src/models/utility.model.ts +0 -100
- package/src/models/visitorManagement/acknowledgement.model.ts +0 -71
- package/src/models/visitorManagement/invite.model.ts +0 -406
- package/src/models/visitorManagement/newIn.model.ts +0 -82
- package/src/models/visitorManagement/selfServe.model.ts +0 -58
- package/src/models/worklogPost.model.ts +0 -8
- package/src/services/customer.ts +0 -382
- package/src/services/meeting.ts +0 -123
- package/test/1.ts +0 -13
- package/test/db.js +0 -19
- package/test/firebaseConfig.js +0 -1
- package/tsconfig.json +0 -16
@@ -1,12 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"type": "service_account",
|
3
|
-
"project_id": "mobioffice-dev",
|
4
|
-
"private_key_id": "79c2b3a6c408f76171d66da0f3a3cee80d936df9",
|
5
|
-
"private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDCiOw7XTnctRBR\nlG5nosKFzs4DYT3MogNxsZJLCOOxgaFCjVAwLRQTX/e5dJNMw1YxMlpC5/mC+cjd\ntQOpdbqwyMhVi5q4iCisatDb6Rhol/IVL6GEAxzC3FPwBgjxSuj7yftDHbPc8SEa\nXboCbBgNEGiTgr3pJyc2kiqYWriHSvnWmBBYV1zh0S1LMhdNcK40VgbwRvHoPm6N\n/WdCizQ4P9iWL/YEeOBDfxEJ7ytEFmtEutSMVOVOBovfbEyqKSUrjtmUvOOIyfRA\nPBOZlnKSlxbGYXjg0dBGY5al7D+rmCvcGZHUwyJgHRhXce/CY/bqN+B9p86li5c1\nEanLuc9RAgMBAAECggEAGDtdDcH9mKf3Oeo+3GryRx+tGs+sloZh3nIrkmwvjKdk\nknku0Wl0FDvCjFfgl1HHtUYb5zSlKHL72d4X8C5pjGbeSYWjxrOzOVLu5E3DTBgN\nQCVYPazzkrRGQmJGD+RwZBjTUxdqla11naaqKm4TiuEN3b4N8PJ/GHWZl7PJQ5TU\nJg9DYglIPKTKfnsrFzE1FqYVWgDoXyZelqgf86lA/LtRZgiWPtsOxU/TZflRrr3w\n+uDUUb7DJ2Dzlpno+8wYnaZK5yscK/5bUYowGk1SKysQUPMbxGP9wV61QDdx0D5k\nsb6amYOPXety3jl8gb4SKv58RGa9+tHTQia4mt6BNwKBgQDpdkVS8kjWBFBYaFkh\nAb7FoUZtMEsn5EBDU3qGTj6PUUejl7Z01bqo7yuE+eaLoopHPVzYeZwjpCUlGBSn\nqZCV71ofOoYjkwibxUAkwnQ0vSsJMTvkyi+T5VtWqTQmbCVpeVvYE+Bd9lYUcGLB\nRxOVZxzEiCjx4JSjsJNp0lgfAwKBgQDVUJ10ZqW7WNZ0Cmrns9BBW0iMd3UfE0nc\nvGTZVzscGT6Kl+ZD0IvlgH4cShaW0TWZLSUn4SPx777INbHwvmT1+b5EbX/SUUag\nsB81Hc3K2xtBv3/mzE34KWL71J7Sfu2kUt0zB/TJamUKV2hoGMwEV5sj5XiEEXim\naAEKaPQuGwKBgDZ07xC9ET5SvUcR+BBZ7tz8lIftpupENLU/qKnhYHhftj0zq0yv\neh3jxBv9ishxfp3Fc33PSBuMM1nmtxKw29gNf9Ee/qEXr/9d0GuCrEaNBZfcUyM4\nAkcWTer2BwMbYNKsiz7ozAI+7q9P08lPwgKsjapONHbPMvzHuGsLtKBvAoGAer6j\ni8pRDWfGJwmjkGYwrJrpOSK3+0SvGNwzL7j5I2cHTNqxPk5vYYU5i++55djGfbiz\ni6oKc/nfjvcOyBfWoo+tw1Q62/u2p1oQ6xCWTWcc3Q1jfJwNNYIjGgOzzC4LcqXX\n8LhgS9H0CCpZwqSaKNl8RQCTA3PGOALarnHMKAcCgYEA2jNwd9KuAnnbpmOHhbVP\n8Q92NnBU3jrnivo2Mbh3lpVeHs38mPToTjZo7B1NNw84GdSnNHzoQyYmC9mqe1YF\nxDxarCoRYDOgckhRDxABR/gFvRqeMN/tEsP7CMZId6BAN0kypiyfaFQcjFs1wUBr\ndqRqWB2Ik5tQM0oYJsQotyc=\n-----END PRIVATE KEY-----\n",
|
6
|
-
"client_email": "firebase-adminsdk-lzsmv@mobioffice-dev.iam.gserviceaccount.com",
|
7
|
-
"client_id": "114290518855712527331",
|
8
|
-
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
|
9
|
-
"token_uri": "https://oauth2.googleapis.com/token",
|
10
|
-
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
|
11
|
-
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-lzsmv%40mobioffice-dev.iam.gserviceaccount.com"
|
12
|
-
}
|
@@ -1,86 +0,0 @@
|
|
1
|
-
import { PubSub } from "@google-cloud/pubsub";
|
2
|
-
import { differenceInMinutes, differenceInSeconds } from "date-fns";
|
3
|
-
import fetch from "isomorphic-fetch";
|
4
|
-
|
5
|
-
async function main() {
|
6
|
-
const TOSECONDS = 30;
|
7
|
-
const BASEURL =
|
8
|
-
"https://dev-server.mobioffice.io/api/visitorManagement/newIn";
|
9
|
-
const pubSubClient = new PubSub({ keyFile: "./pub-sub-config.json" });
|
10
|
-
console.log(
|
11
|
-
"----------------------------------------------------------------------------"
|
12
|
-
);
|
13
|
-
console.log("Pub/Sub Client Initialised");
|
14
|
-
console.log(
|
15
|
-
"----------------------------------------------------------------------------"
|
16
|
-
);
|
17
|
-
const subscription = pubSubClient.subscription("fetchVisitor");
|
18
|
-
|
19
|
-
let messageHandler = async (message) => {
|
20
|
-
console.log(`Received message ${message.id}`);
|
21
|
-
console.log(`\tData: ${message.data}`);
|
22
|
-
|
23
|
-
const obj = JSON.parse(`${message.data}`);
|
24
|
-
const toBeRejected =
|
25
|
-
Math.abs(differenceInMinutes(new Date(obj["postTime"]), Date.now())) > 10;
|
26
|
-
|
27
|
-
console.log(`\tToBeRejected: ${toBeRejected}`);
|
28
|
-
console.log(
|
29
|
-
`Seconds Elapsed ${differenceInSeconds(
|
30
|
-
Date.now(),
|
31
|
-
new Date(obj["postTime"])
|
32
|
-
)}`
|
33
|
-
);
|
34
|
-
console.log(
|
35
|
-
"--------------------------------------------------------------------------------------------------------------"
|
36
|
-
);
|
37
|
-
|
38
|
-
if (toBeRejected) {
|
39
|
-
let isApprovedResp = await fetch(
|
40
|
-
`${BASEURL}/getVisitorApprovalStatus?visitId=${obj["visitId"]}`
|
41
|
-
);
|
42
|
-
let isApprovedJSON = await isApprovedResp.json();
|
43
|
-
let isApproved = isApprovedJSON["isApproved"];
|
44
|
-
|
45
|
-
// Check For Any Errors While Calling the API
|
46
|
-
if (isApprovedJSON.status == 200) {
|
47
|
-
// Check If Visitor is Approved
|
48
|
-
console.log(`To Be Processed Further: ${!isApproved}`);
|
49
|
-
if (isApproved == false) {
|
50
|
-
try {
|
51
|
-
let updateResp = await fetch(
|
52
|
-
`${BASEURL}/subHandler?visitId=${obj["visitId"]}`
|
53
|
-
);
|
54
|
-
let updateJSON = await updateResp.json();
|
55
|
-
console.log(updateJSON);
|
56
|
-
if (updateJSON.status == 200) {
|
57
|
-
message.ack();
|
58
|
-
console.log("Message Acknowledged");
|
59
|
-
}
|
60
|
-
} catch (e) {
|
61
|
-
console.log("Error => ", e);
|
62
|
-
}
|
63
|
-
} else {
|
64
|
-
message.ack();
|
65
|
-
console.log("Message Acknowledged");
|
66
|
-
}
|
67
|
-
}
|
68
|
-
} else {
|
69
|
-
message.nack();
|
70
|
-
}
|
71
|
-
};
|
72
|
-
|
73
|
-
subscription.on("message", messageHandler);
|
74
|
-
|
75
|
-
subscription.on("error", (error) => {
|
76
|
-
console.error(`Received error: ${error.message}`);
|
77
|
-
});
|
78
|
-
|
79
|
-
// Remember to close your subscription when it's no longer needed
|
80
|
-
setTimeout(async () => {
|
81
|
-
await subscription.close();
|
82
|
-
}, TOSECONDS * 1000);
|
83
|
-
// Uncomment when needed
|
84
|
-
}
|
85
|
-
|
86
|
-
main();
|
@@ -1,64 +0,0 @@
|
|
1
|
-
import { createInterface } from "readline";
|
2
|
-
import { Utilities } from "../../src/models/utility.model";
|
3
|
-
import admin from "../db";
|
4
|
-
import { Company } from "../../src/models/company.model";
|
5
|
-
import { Action } from "../../src/models/action.model";
|
6
|
-
|
7
|
-
const readLine = Utilities.readLineAsync;
|
8
|
-
const readLineClose = Utilities.readLineClose;
|
9
|
-
const readLineInterface = createInterface({
|
10
|
-
input: process.stdin,
|
11
|
-
output: process.stdout
|
12
|
-
})
|
13
|
-
|
14
|
-
async function assignUsersFromOneActionToOther() {
|
15
|
-
try{
|
16
|
-
const firestore = admin.firestore();
|
17
|
-
const nickName: any = await readLine("Enter Company Nickname: ", readLineInterface);
|
18
|
-
const companyId = await Company.getCompanyIdByNickName(firestore, nickName);
|
19
|
-
if (!companyId) {
|
20
|
-
throw {
|
21
|
-
message: "Invalid company Nickname"
|
22
|
-
}
|
23
|
-
}
|
24
|
-
console.log("Company Id:", companyId);
|
25
|
-
const fromActionName: any = await readLine("Enter the name of action from which you want to take users: ", readLineInterface);
|
26
|
-
const fromActionId = await Action.getActionId(firestore, companyId, fromActionName);
|
27
|
-
console.log("Action Id:", fromActionId);
|
28
|
-
if (!fromActionId) {
|
29
|
-
throw {
|
30
|
-
message: "Invalid Action name"
|
31
|
-
}
|
32
|
-
}
|
33
|
-
const fromActionDoc = await firestore.collection("Companies").doc(companyId).collection("Actions")
|
34
|
-
.doc(fromActionId).get();
|
35
|
-
const fromActionData: any = fromActionDoc.data();
|
36
|
-
console.log("Number of users in choosen action:", fromActionData.users.length);
|
37
|
-
const toActionName: any = await readLine("Enter the name of action to which you want to assign users: ", readLineInterface);
|
38
|
-
const toActionId = await Action.getActionId(firestore, companyId, toActionName);
|
39
|
-
console.log("Action Id:", toActionId);
|
40
|
-
if (!toActionId) {
|
41
|
-
throw {
|
42
|
-
message: "Invalid Action name"
|
43
|
-
}
|
44
|
-
}
|
45
|
-
const toActionDoc = await firestore.collection("Companies").doc(companyId).collection("Actions")
|
46
|
-
.doc(toActionId).get();
|
47
|
-
const toActionData: any = toActionDoc.data();
|
48
|
-
console.log("Numbers of users initially:", toActionData.users.length);
|
49
|
-
const updatedUsersList = Array.from(new Set([...toActionData.users, ...fromActionData.users]));
|
50
|
-
console.log("Numbers of users finally:", updatedUsersList.length);
|
51
|
-
const updationResult = await toActionDoc.ref.update({users: updatedUsersList});
|
52
|
-
console.log(updationResult);
|
53
|
-
readLineClose(readLineInterface);
|
54
|
-
} catch(error) {
|
55
|
-
console.log(error.message);
|
56
|
-
readLineClose(readLineInterface);
|
57
|
-
}
|
58
|
-
}
|
59
|
-
|
60
|
-
async function main() {
|
61
|
-
await assignUsersFromOneActionToOther();
|
62
|
-
}
|
63
|
-
|
64
|
-
main();
|
@@ -1,81 +0,0 @@
|
|
1
|
-
import { getCompanyUsersDetails } from "./getCompanyUserDetails";
|
2
|
-
import { Utilities } from "../../src/models/utility.model";
|
3
|
-
import { createInterface } from "readline";
|
4
|
-
import { Company } from "../../src/models/company.model";
|
5
|
-
import admin from "../db";
|
6
|
-
import { Action } from "../../src/models/action.model";
|
7
|
-
|
8
|
-
const readLine = Utilities.readLineAsync;
|
9
|
-
const readLineClose = Utilities.readLineClose;
|
10
|
-
|
11
|
-
const readLineInterface = createInterface({
|
12
|
-
input: process.stdin,
|
13
|
-
output: process.stdout
|
14
|
-
})
|
15
|
-
|
16
|
-
async function assignUsersListToAction() {
|
17
|
-
try {
|
18
|
-
const firestore = admin.firestore();
|
19
|
-
|
20
|
-
const companyNickName : any = await readLine("Provide company nickname: ", readLineInterface);
|
21
|
-
const companyId = await Company.getCompanyIdByNickName(firestore, companyNickName);
|
22
|
-
if (companyId) {
|
23
|
-
console.log("Company Id:", companyId);
|
24
|
-
} else {
|
25
|
-
throw {
|
26
|
-
message: "Invalid company nickName"
|
27
|
-
}
|
28
|
-
}
|
29
|
-
|
30
|
-
const companyUsersDetail = await getCompanyUsersDetails(companyNickName);
|
31
|
-
// console.log(companyUsersDetail);
|
32
|
-
let managersList = companyUsersDetail.managers;
|
33
|
-
managersList = managersList.map(managerInfo => managerInfo.id);
|
34
|
-
console.log("managersList", managersList);
|
35
|
-
if (managersList.length === 0) {
|
36
|
-
throw {
|
37
|
-
message: "There are no managers"
|
38
|
-
}
|
39
|
-
}
|
40
|
-
const actionName: any = await readLine("Provide action name: ", readLineInterface);
|
41
|
-
const actionId = await Action.getActionId(firestore, companyId, actionName);
|
42
|
-
if (actionId) {
|
43
|
-
console.log("Action Id:", actionId);
|
44
|
-
} else {
|
45
|
-
throw {
|
46
|
-
message: "Invalid action name"
|
47
|
-
}
|
48
|
-
}
|
49
|
-
|
50
|
-
const actionDoc = await firestore.collection("Companies").doc(companyId)
|
51
|
-
.collection("Actions").doc(actionId).get();
|
52
|
-
const prevUsersList = actionDoc.data()?.users;
|
53
|
-
console.log("Previous users list:", prevUsersList);
|
54
|
-
const newUsersList = Array.from(new Set([
|
55
|
-
...prevUsersList,
|
56
|
-
...managersList
|
57
|
-
]));
|
58
|
-
console.log("Updated users list:", newUsersList);
|
59
|
-
console.log("this list contains all the previous users and all the managers of company, it will be the updated user list of this action");
|
60
|
-
const confirmation: any = await readLine("Do you want to proceed(Yes/No) ?: ", readLineInterface);
|
61
|
-
if (confirmation.toLowerCase() === 'yes') {
|
62
|
-
await actionDoc.ref.update({
|
63
|
-
users: newUsersList
|
64
|
-
})
|
65
|
-
} else {
|
66
|
-
console.log("Stopping");
|
67
|
-
return;
|
68
|
-
}
|
69
|
-
console.log("Users list for the action has been updated.");
|
70
|
-
readLineClose(readLineInterface);
|
71
|
-
} catch (error) {
|
72
|
-
console.log(error.message);
|
73
|
-
readLineClose(readLineInterface);
|
74
|
-
}
|
75
|
-
}
|
76
|
-
|
77
|
-
async function main() {
|
78
|
-
await assignUsersListToAction();
|
79
|
-
}
|
80
|
-
|
81
|
-
main();
|
@@ -1,42 +0,0 @@
|
|
1
|
-
import { Utilities } from "../../src/models/utility.model";
|
2
|
-
import { createInterface } from "readline";
|
3
|
-
import { getCompanyUsersDetails } from "./getCompanyUserDetails";
|
4
|
-
import { Company } from "../../src/models/company.model";
|
5
|
-
import admin from "../db";
|
6
|
-
import { User } from "../../src/models/user.model";
|
7
|
-
|
8
|
-
const readLine = Utilities.readLineAsync;
|
9
|
-
const readLineClose = Utilities.readLineClose;
|
10
|
-
|
11
|
-
const readLineInterface = createInterface({
|
12
|
-
input: process.stdin,
|
13
|
-
output: process.stdout
|
14
|
-
})
|
15
|
-
|
16
|
-
async function fetchCompanyUserDetails() {
|
17
|
-
const firestore = admin.firestore();
|
18
|
-
try {
|
19
|
-
const nickname: any = await readLine("Provide company nickname: ", readLineInterface);
|
20
|
-
const companyId = await Company.getCompanyIdByNickName(firestore, nickname);
|
21
|
-
console.log("companyId", companyId);
|
22
|
-
const userPhone: any = await readLine("Provide user's phone(10 digits): ", readLineInterface);
|
23
|
-
const userId = await User.getUserIdByPhone(firestore, `+91${userPhone}`);
|
24
|
-
console.log("userId", userId);
|
25
|
-
const actionsList = await firestore.collection("Companies").doc(companyId).collection("Actions")
|
26
|
-
.where("users", "array-contains", userId)
|
27
|
-
.get();
|
28
|
-
actionsList.docs.forEach((actionDoc: any) => {
|
29
|
-
console.log(actionDoc.data().name);
|
30
|
-
})
|
31
|
-
readLineClose(readLineInterface);
|
32
|
-
}catch(error) {
|
33
|
-
console.log(error.message);
|
34
|
-
readLineClose(readLineInterface);
|
35
|
-
}
|
36
|
-
}
|
37
|
-
|
38
|
-
async function main() {
|
39
|
-
await fetchCompanyUserDetails();
|
40
|
-
}
|
41
|
-
|
42
|
-
main();
|
@@ -1,49 +0,0 @@
|
|
1
|
-
import { Company } from "../../src/models/company.model";
|
2
|
-
import admin from "../db";
|
3
|
-
|
4
|
-
export async function getCompanyUsersDetails(nickName) {
|
5
|
-
try {
|
6
|
-
const firestore = admin.firestore();
|
7
|
-
const companyId = await Company.getCompanyIdbyNickname(firestore, nickName);
|
8
|
-
const usersList_snapshot = await firestore.collection("Companies")
|
9
|
-
.doc(companyId)
|
10
|
-
.collection("Users")
|
11
|
-
.select("name", "id", "phone")
|
12
|
-
.get();
|
13
|
-
let usersList: any[] = [];
|
14
|
-
usersList_snapshot.forEach((doc) => {
|
15
|
-
usersList.push(doc.data());
|
16
|
-
})
|
17
|
-
let managers = await Company.getMangersList(firestore, nickName);
|
18
|
-
let info: any = {
|
19
|
-
managers: [],
|
20
|
-
notManagers: []
|
21
|
-
}
|
22
|
-
usersList.forEach(user => {
|
23
|
-
let found = false;
|
24
|
-
for (let id of managers) {
|
25
|
-
if (id === user.id) {
|
26
|
-
found = true;
|
27
|
-
info.managers.push({
|
28
|
-
name: user.name,
|
29
|
-
phone: user.phone,
|
30
|
-
id: user.id
|
31
|
-
})
|
32
|
-
}
|
33
|
-
}
|
34
|
-
if (!found) {
|
35
|
-
info.notManagers.push({
|
36
|
-
name: user.name,
|
37
|
-
phone: user.phone,
|
38
|
-
id: user.id
|
39
|
-
})
|
40
|
-
}
|
41
|
-
})
|
42
|
-
return info;
|
43
|
-
} catch(error) {
|
44
|
-
console.log(error.message);
|
45
|
-
return {
|
46
|
-
message: error.message
|
47
|
-
}
|
48
|
-
}
|
49
|
-
}
|
@@ -1,41 +0,0 @@
|
|
1
|
-
import fs from "fs";
|
2
|
-
import admin from "../db.js";
|
3
|
-
import { options } from "../argvConfig.js";
|
4
|
-
import { Action } from "../../src/models/action.model";
|
5
|
-
import { User } from "../../src/models/user.model.js";
|
6
|
-
import { Company } from "../../src/models/company.model";
|
7
|
-
|
8
|
-
let firestore = admin.firestore();
|
9
|
-
let arrayUnion = admin.firestore.FieldValue.arrayUnion;
|
10
|
-
let actionsNUserInfo = fs.readFileSync(options.args[0], "utf-8");
|
11
|
-
const actionsNUserInfoObj = await JSON.parse(actionsNUserInfo);
|
12
|
-
try {
|
13
|
-
const phones = actionsNUserInfoObj.phones;
|
14
|
-
const actionName = actionsNUserInfoObj.actionName;
|
15
|
-
const companyNickName = actionsNUserInfoObj.companyNickName;
|
16
|
-
for (let phone of phones) {
|
17
|
-
console.log(actionName, phone, companyNickName);
|
18
|
-
const userId = await User.getUserIdByPhone(firestore, phone);
|
19
|
-
const companyId = await Company.getCompanyIdByNickName(firestore, companyNickName)
|
20
|
-
console.log(userId, companyId);
|
21
|
-
// const actions = await firestore.collection("Companies")
|
22
|
-
// .doc(companyId)
|
23
|
-
// .collection("Actions")
|
24
|
-
// .get();
|
25
|
-
// const allottedActions = actions.docs.map((doc: any) => {
|
26
|
-
// const users: string[] = doc.users;
|
27
|
-
// if (users.includes(userId)) {
|
28
|
-
// return doc.name;
|
29
|
-
// }
|
30
|
-
// })
|
31
|
-
// console.log(allottedActions);
|
32
|
-
const updateResult = await Action.addUserIdInAction(firestore,
|
33
|
-
arrayUnion,
|
34
|
-
actionName,
|
35
|
-
companyId,
|
36
|
-
userId);
|
37
|
-
console.log(updateResult);
|
38
|
-
}
|
39
|
-
} catch (error) {
|
40
|
-
console.log(error);
|
41
|
-
}
|
@@ -1,56 +0,0 @@
|
|
1
|
-
import { Action } from "../../src/models/action.model";
|
2
|
-
import { Company } from "../../src/models/company.model";
|
3
|
-
import { Utilities } from "../../src/models/utility.model";
|
4
|
-
import admin from "../db";
|
5
|
-
import { createInterface } from "readline";
|
6
|
-
const readLine = Utilities.readLineAsync;
|
7
|
-
const readLineClose = Utilities.readLineClose;
|
8
|
-
const readLineInterface = createInterface({
|
9
|
-
input: process.stdin,
|
10
|
-
output: process.stdout
|
11
|
-
})
|
12
|
-
|
13
|
-
async function giveUsersToActivitySelector() {
|
14
|
-
try {
|
15
|
-
const firestore = admin.firestore();
|
16
|
-
const nickName: any = await readLine("Enter company NickName: ", readLineInterface);
|
17
|
-
const companyId = await Company.getCompanyIdByNickName(firestore, nickName);
|
18
|
-
console.log("companyId", companyId);
|
19
|
-
const activitySelectorName: any = await readLine("Enter activitySelectorName: ", readLineInterface);
|
20
|
-
const activitySelectorId = await Action.getActionId(firestore, companyId, activitySelectorName);
|
21
|
-
console.log("ActivitySelectorId", activitySelectorId);
|
22
|
-
let selectorActions: any = await readLine("Provide csvs of action display names in selector: ", readLineInterface)
|
23
|
-
selectorActions = selectorActions.split(",").map((str: string) => str.trim());
|
24
|
-
let actionIds: string[] = await Promise.all(selectorActions.map(async (actionName: string) => {
|
25
|
-
const actionId = await Action.getActionIdByDisplayName(firestore, companyId, actionName);
|
26
|
-
return actionId;
|
27
|
-
}))
|
28
|
-
let users: string[] = [];
|
29
|
-
await Promise.all(actionIds.map(async (actionId) => {
|
30
|
-
const actionDoc: any = await firestore.collection("Companies")
|
31
|
-
.doc(companyId)
|
32
|
-
.collection("Actions")
|
33
|
-
.doc(actionId)
|
34
|
-
.get();
|
35
|
-
const userSubArr = actionDoc.data().users;
|
36
|
-
users = Array.from(new Set([...users, ...userSubArr]))
|
37
|
-
}))
|
38
|
-
console.log(users);
|
39
|
-
await firestore.collection("Companies")
|
40
|
-
.doc(companyId)
|
41
|
-
.collection("Actions")
|
42
|
-
.doc(activitySelectorId)
|
43
|
-
.update({users: users});
|
44
|
-
console.log("You just created set of all users from ", selectorActions, "and Added to activitySelector: ", activitySelectorName);
|
45
|
-
readLineClose(readLineInterface);
|
46
|
-
} catch(error) {
|
47
|
-
readLineClose(readLineInterface);
|
48
|
-
console.log(error.message);
|
49
|
-
}
|
50
|
-
}
|
51
|
-
|
52
|
-
async function main() {
|
53
|
-
await giveUsersToActivitySelector();
|
54
|
-
}
|
55
|
-
|
56
|
-
main();
|
@@ -1,101 +0,0 @@
|
|
1
|
-
import { createInterface } from "readline";
|
2
|
-
import { Company } from "../../src/models/company.model";
|
3
|
-
import admin from "../db";
|
4
|
-
import { Action } from "../../src/models/action.model";
|
5
|
-
import { ReportActions } from "../../src/models/report-actions.model";
|
6
|
-
|
7
|
-
const readline = createInterface({
|
8
|
-
input: process.stdin,
|
9
|
-
output: process.stdout,
|
10
|
-
});
|
11
|
-
|
12
|
-
const readLineAsync: any = (msg: string) => {
|
13
|
-
return new Promise((resolve) => {
|
14
|
-
readline.question(msg, (userRes: string) => {
|
15
|
-
resolve(userRes);
|
16
|
-
});
|
17
|
-
});
|
18
|
-
};
|
19
|
-
|
20
|
-
async function groupActionsInActivitySelector() {
|
21
|
-
try {
|
22
|
-
const firestore = admin.firestore();
|
23
|
-
const nickName: string = await readLineAsync("Enter company nickName: ");
|
24
|
-
const companyId = await Company.getCompanyIdByNickName(firestore, nickName);
|
25
|
-
if (!companyId) {
|
26
|
-
throw {
|
27
|
-
message: "invalid company nickname."
|
28
|
-
}
|
29
|
-
}
|
30
|
-
console.log("companyId =>", companyId)
|
31
|
-
const activitySelectorName = await readLineAsync(
|
32
|
-
"Enter activitySelectorName: "
|
33
|
-
);
|
34
|
-
const actionDoc = await Action.getActionByName(firestore, activitySelectorName, nickName);
|
35
|
-
let activitySelector;
|
36
|
-
if (actionDoc) {
|
37
|
-
console.log("There is an action present with this name.");
|
38
|
-
console.log(actionDoc);
|
39
|
-
activitySelector = actionDoc;
|
40
|
-
} else {
|
41
|
-
const displayNameOfActivitySelector = await readLineAsync(
|
42
|
-
"Enter activitySelector Display Name: "
|
43
|
-
);
|
44
|
-
const iconUrl = await readLineAsync("Provide activitySelector Icon url: ");
|
45
|
-
activitySelector = {
|
46
|
-
actionType: "activitySelector",
|
47
|
-
companyId: nickName,
|
48
|
-
displayName: displayNameOfActivitySelector,
|
49
|
-
end_label: displayNameOfActivitySelector,
|
50
|
-
icon: iconUrl,
|
51
|
-
id: "",
|
52
|
-
isHidden: false,
|
53
|
-
name: activitySelectorName,
|
54
|
-
order: 1,
|
55
|
-
require_location: false,
|
56
|
-
require_selfie: false,
|
57
|
-
startCollectionName: displayNameOfActivitySelector,
|
58
|
-
start_label: displayNameOfActivitySelector,
|
59
|
-
users: [],
|
60
|
-
};
|
61
|
-
activitySelector = await Action.getOrCreateAction(firestore, activitySelector)
|
62
|
-
}
|
63
|
-
const activitySelectorId = activitySelector.id;
|
64
|
-
console.log("activitySelector id:", activitySelectorId);
|
65
|
-
let actionsToGroup = await readLineAsync("Enter csvs of Display names of actions to group: ");
|
66
|
-
actionsToGroup = actionsToGroup.split(",");
|
67
|
-
for (let i = 1; i <= actionsToGroup.length; i++) {
|
68
|
-
console.log(`============Collecting Details for ${actionsToGroup[i - 1]}===============`)
|
69
|
-
const iconURL = await readLineAsync("Provide actionIcon URL: ");
|
70
|
-
const actionDescription = await readLineAsync("Provide description for action: ")
|
71
|
-
const darkColor = await readLineAsync("Dark Color for action Card: ");
|
72
|
-
const lightColor = await readLineAsync("Light Color for action Card: ");
|
73
|
-
const groupElement = {
|
74
|
-
icon: iconURL,
|
75
|
-
activityFor: activitySelectorId,
|
76
|
-
description: actionDescription,
|
77
|
-
id: "",
|
78
|
-
title: actionsToGroup[i - 1],
|
79
|
-
url: "GO",
|
80
|
-
order: i,
|
81
|
-
lightColor: lightColor,
|
82
|
-
darkColor: darkColor
|
83
|
-
}
|
84
|
-
const reportAction = await ReportActions.getOrCreateReportActions(firestore, nickName, groupElement);
|
85
|
-
console.log(reportAction, "successfully grouped", actionsToGroup[i - 1], "in", activitySelectorName);
|
86
|
-
const actionId = await Action.getActionIdByDisplayName(firestore, companyId, actionsToGroup[i - 1]);
|
87
|
-
await firestore.collection("Companies").doc(companyId).collection("Actions")
|
88
|
-
.doc(actionId).update({isHidden: true});
|
89
|
-
console.log("Successfully grouped the given action under the activity Selector");
|
90
|
-
}
|
91
|
-
readline.close();
|
92
|
-
} catch (error) {
|
93
|
-
console.log(error.message);
|
94
|
-
}
|
95
|
-
}
|
96
|
-
|
97
|
-
async function main() {
|
98
|
-
await groupActionsInActivitySelector();
|
99
|
-
}
|
100
|
-
|
101
|
-
main();
|
@@ -1,42 +0,0 @@
|
|
1
|
-
import { createInterface } from "readline";
|
2
|
-
import { Utilities } from "../../src/models/utility.model";
|
3
|
-
import CurdService from "../../src/models/crud/crud";
|
4
|
-
import { SummaryReportsPool } from "../dbMySql";
|
5
|
-
|
6
|
-
const readLineInterface = createInterface({
|
7
|
-
input: process.stdin,
|
8
|
-
output: process.stdout
|
9
|
-
})
|
10
|
-
|
11
|
-
const readLineAsync = Utilities.readLineAsync;
|
12
|
-
const readLineClose = Utilities.readLineClose;
|
13
|
-
|
14
|
-
async function modifySummaryReportDB() {
|
15
|
-
const curdService = new CurdService(SummaryReportsPool)
|
16
|
-
const qryString = `select * from summaryReports;`
|
17
|
-
const result: any = await curdService.query(qryString);
|
18
|
-
for (let i = 0; i < result.length; i++) {
|
19
|
-
// for (let i = 0; i < 10; i++) {
|
20
|
-
console.log(result[i].id, result[i].eventDetails.date);
|
21
|
-
let eventDate: any = new Date(result[i].eventDetails.date.split("/").reverse().join("-")).getTime()
|
22
|
-
eventDate = await Utilities.epochToMySqlDateTime(eventDate);
|
23
|
-
const updateQryStr = `update summaryReports
|
24
|
-
set eventDate = '${eventDate}'
|
25
|
-
where id = ${result[i].id}`;
|
26
|
-
console.log(updateQryStr);
|
27
|
-
await curdService.query(updateQryStr)
|
28
|
-
console.log(`updated row with id = ${result[i].id} and set eventDate to ${eventDate}`)
|
29
|
-
}
|
30
|
-
}
|
31
|
-
|
32
|
-
async function main() {
|
33
|
-
try {
|
34
|
-
await modifySummaryReportDB();
|
35
|
-
} catch (error) {
|
36
|
-
console.log(error);
|
37
|
-
} finally {
|
38
|
-
readLineClose(readLineInterface);
|
39
|
-
}
|
40
|
-
}
|
41
|
-
|
42
|
-
main();
|
@@ -1,18 +0,0 @@
|
|
1
|
-
import admin from "../db.js";
|
2
|
-
import { options } from "../argvConfig.js";
|
3
|
-
import * as csvToJson from "convert-csv-to-json";
|
4
|
-
import fs from "fs";
|
5
|
-
|
6
|
-
let firestore = admin.firestore();
|
7
|
-
let argv = options.args[0].split(",");
|
8
|
-
let urlActionCompanyInfo = csvToJson.fieldDelimiter(",").getJsonFromCsv(argv[0]);
|
9
|
-
try {
|
10
|
-
let file = fs.readFileSync(options.args[0], 'utf-8');
|
11
|
-
const jsonObj = JSON.parse(file);
|
12
|
-
console.log(jsonObj.nickName);
|
13
|
-
// for (let info of urlActionCompanyInfo) {
|
14
|
-
// console.log(info);
|
15
|
-
// }
|
16
|
-
} catch(error) {
|
17
|
-
console.log(error);
|
18
|
-
}
|