mobioffice-cli 1.0.0 → 1.0.2

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.
Files changed (253) hide show
  1. package/{src/index.ts → lib/index.d.ts} +1 -45
  2. package/lib/models/Feed-Details-Screen.model.d.ts +6 -0
  3. package/lib/models/Feed-Details-Screen.model.js +27 -0
  4. package/lib/models/action.model.d.ts +58 -0
  5. package/lib/models/action.model.js +315 -0
  6. package/lib/models/actions/doffing.d.ts +6 -0
  7. package/lib/models/actions/doffing.js +64 -0
  8. package/lib/models/actions/folding.d.ts +7 -0
  9. package/lib/models/actions/folding.js +37 -0
  10. package/lib/models/attendance.model.d.ts +44 -0
  11. package/lib/models/attendance.model.js +446 -0
  12. package/lib/models/cicoPost.model.d.ts +9 -0
  13. package/lib/models/cicoPost.model.js +19 -0
  14. package/lib/models/company.model.d.ts +67 -0
  15. package/lib/models/company.model.js +725 -0
  16. package/lib/models/contact-us/resquest.model.d.ts +30 -0
  17. package/lib/models/contact-us/resquest.model.js +73 -0
  18. package/lib/models/crud/crud.d.ts +7 -0
  19. package/lib/models/crud/crud.js +27 -0
  20. package/lib/models/customCollection.model.d.ts +9 -0
  21. package/lib/models/customCollection.model.js +40 -0
  22. package/lib/models/customer/customer.model.d.ts +32 -0
  23. package/lib/models/customer/customer.model.js +62 -0
  24. package/lib/models/deviceChangeReq.d.ts +10 -0
  25. package/lib/models/deviceChangeReq.js +138 -0
  26. package/lib/models/dispatch.model.d.ts +14 -0
  27. package/lib/models/dispatch.model.js +93 -0
  28. package/lib/models/feed.models.d.ts +8 -0
  29. package/lib/models/feed.models.js +97 -0
  30. package/lib/models/geofence.model.d.ts +7 -0
  31. package/lib/models/geofence.model.js +61 -0
  32. package/lib/models/leaveApplicationPost.model.d.ts +12 -0
  33. package/lib/models/leaveApplicationPost.model.js +72 -0
  34. package/lib/models/license.model.d.ts +25 -0
  35. package/lib/models/license.model.js +198 -0
  36. package/lib/models/log.model.d.ts +6 -0
  37. package/{src/models/log.model.ts → lib/models/log.model.js} +11 -11
  38. package/lib/models/meeting.model.d.ts +11 -0
  39. package/lib/models/meeting.model.js +79 -0
  40. package/lib/models/meter.model.d.ts +18 -0
  41. package/lib/models/meter.model.js +54 -0
  42. package/lib/models/missingPunchPost.model.d.ts +15 -0
  43. package/lib/models/missingPunchPost.model.js +69 -0
  44. package/lib/models/offline.model.d.ts +70 -0
  45. package/lib/models/offline.model.js +831 -0
  46. package/lib/models/post.model.d.ts +38 -0
  47. package/lib/models/post.model.js +94 -0
  48. package/lib/models/printDetailsScreen.model.d.ts +6 -0
  49. package/lib/models/printDetailsScreen.model.js +27 -0
  50. package/lib/models/pushNotifications/pushNotification.model.d.ts +4 -0
  51. package/lib/models/pushNotifications/pushNotification.model.js +17 -0
  52. package/lib/models/report-actions.model.d.ts +26 -0
  53. package/lib/models/report-actions.model.js +56 -0
  54. package/lib/models/report-definition-details.model.d.ts +13 -0
  55. package/lib/models/report-definition-details.model.js +85 -0
  56. package/lib/models/report-definition.model.d.ts +23 -0
  57. package/lib/models/report-definition.model.js +26 -0
  58. package/lib/models/report-definitions-summary.model.d.ts +8 -0
  59. package/lib/models/report-definitions-summary.model.js +59 -0
  60. package/lib/models/report-detail-data.model.d.ts +46 -0
  61. package/lib/models/report-detail-data.model.js +49 -0
  62. package/lib/models/report-visibility.model.d.ts +7 -0
  63. package/lib/models/report-visibility.model.js +42 -0
  64. package/lib/models/report.model.d.ts +19 -0
  65. package/lib/models/report.model.js +138 -0
  66. package/lib/models/reportGenerator.model.d.ts +164 -0
  67. package/lib/models/reportGenerator.model.js +642 -0
  68. package/lib/models/response.model.d.ts +18 -0
  69. package/lib/models/response.model.js +30 -0
  70. package/lib/models/steps.factory.model.d.ts +172 -0
  71. package/lib/models/steps.factory.model.js +187 -0
  72. package/lib/models/storeGupShupLog.model.d.ts +6 -0
  73. package/lib/models/storeGupShupLog.model.js +51 -0
  74. package/lib/models/summary.model.d.ts +10 -0
  75. package/{src/models/summary.model.ts → lib/models/summary.model.js} +28 -27
  76. package/lib/models/tasks/sub-task-group.model.d.ts +42 -0
  77. package/lib/models/tasks/sub-task-group.model.js +154 -0
  78. package/lib/models/tasks/tags.model.d.ts +29 -0
  79. package/lib/models/tasks/tags.model.js +70 -0
  80. package/lib/models/tasks/task-group.model.d.ts +53 -0
  81. package/lib/models/tasks/task-group.model.js +156 -0
  82. package/lib/models/tasks/task.model.d.ts +163 -0
  83. package/lib/models/tasks/task.model.js +603 -0
  84. package/lib/models/tempCollection.model.d.ts +40 -0
  85. package/{src/models/tempCollection.model.ts → lib/models/tempCollection.model.js} +114 -130
  86. package/lib/models/user.model.d.ts +42 -0
  87. package/lib/models/user.model.js +272 -0
  88. package/lib/models/utility.model.d.ts +13 -0
  89. package/lib/models/utility.model.js +93 -0
  90. package/lib/models/visitorManagement/acknowledgement.model.d.ts +9 -0
  91. package/lib/models/visitorManagement/acknowledgement.model.js +55 -0
  92. package/lib/models/visitorManagement/invite.model.d.ts +32 -0
  93. package/lib/models/visitorManagement/invite.model.js +326 -0
  94. package/lib/models/visitorManagement/newIn.model.d.ts +19 -0
  95. package/lib/models/visitorManagement/newIn.model.js +67 -0
  96. package/lib/models/visitorManagement/selfServe.model.d.ts +13 -0
  97. package/lib/models/visitorManagement/selfServe.model.js +46 -0
  98. package/lib/models/worklogPost.model.d.ts +6 -0
  99. package/lib/models/worklogPost.model.js +9 -0
  100. package/lib/services/customer.d.ts +30 -0
  101. package/lib/services/customer.js +354 -0
  102. package/lib/services/meeting.d.ts +19 -0
  103. package/lib/services/meeting.js +109 -0
  104. package/package.json +4 -1
  105. package/.prettierrc +0 -4
  106. package/a.js +0 -3
  107. package/scripts/1.ts +0 -1300
  108. package/scripts/GCloudPubSub/pub-sub-config.json +0 -12
  109. package/scripts/GCloudPubSub/visitorAutoRejection.ts +0 -86
  110. package/scripts/actions/assignUsersFromOneActionToOther.ts +0 -64
  111. package/scripts/actions/assignUsersListToAction.ts +0 -81
  112. package/scripts/actions/getActionsListOfUser.ts +0 -42
  113. package/scripts/actions/getCompanyUserDetails.ts +0 -49
  114. package/scripts/actions/giveActionToUser.ts +0 -41
  115. package/scripts/actions/giveUsersToActivitySelector.ts +0 -56
  116. package/scripts/actions/groupActionsInActivitySelector.ts +0 -101
  117. package/scripts/actions/modifySummaryReportDB.ts +0 -42
  118. package/scripts/actions/setUrlToActionStep.ts +0 -18
  119. package/scripts/actions/syncMySqlAttendanceDBWithFirebase.ts +0 -93
  120. package/scripts/actions/syncMySqlMeetingsDBWithFirebase.ts +0 -103
  121. package/scripts/actions/test.ts +0 -29
  122. package/scripts/actions/transferFeedsOldIdToNew.ts +0 -40
  123. package/scripts/actions/transformUserIntoManager.ts +0 -89
  124. package/scripts/argvConfig.js +0 -9
  125. package/scripts/backUpData/testCode.ts +0 -131
  126. package/scripts/benaraScripts/addWorkAreaMap.ts +0 -46
  127. package/scripts/benaraScripts/add_customers.ts +0 -26
  128. package/scripts/benaraScripts/add_customers_contact.ts +0 -27
  129. package/scripts/benaraScripts/add_empty_work_area.ts +0 -17
  130. package/scripts/benaraScripts/assignManagers.ts +0 -35
  131. package/scripts/benaraScripts/changeCheckInFlag.ts +0 -45
  132. package/scripts/benaraScripts/createCustomerContactsList.ts +0 -170
  133. package/scripts/benaraScripts/createUserByDeletingOldUser.ts +0 -70
  134. package/scripts/benaraScripts/createUsersAreaMapCollection.ts +0 -23
  135. package/scripts/benaraScripts/createWorkAreaMap.ts +0 -24
  136. package/scripts/benaraScripts/mapWorkAreasToUsers.ts +0 -112
  137. package/scripts/companies_data.json +0 -2496
  138. package/scripts/create_or_update_users.ts +0 -31
  139. package/scripts/csvToJson/csvToJson.ts +0 -90
  140. package/scripts/csvToJson/users.json +0 -3896
  141. package/scripts/db.js +0 -27
  142. package/scripts/db.json +0 -13
  143. package/scripts/dbMySql.ts +0 -63
  144. package/scripts/delete_action_steps.ts +0 -11
  145. package/scripts/delete_user.ts +0 -71
  146. package/scripts/dev_companies_data.json +0 -613
  147. package/scripts/enroll.xlsx +0 -0
  148. package/scripts/export_users.ts +0 -72
  149. package/scripts/files/visitorManagementFiles/displayScreen.json +0 -70
  150. package/scripts/files/visitorManagementFiles/init_report_visibility.ts +0 -79
  151. package/scripts/firebaseConfig.js +0 -12
  152. package/scripts/firebaseDocs/deleteIncommingCollection.ts +0 -47
  153. package/scripts/firebaseDocs/updateDoc.ts +0 -43
  154. package/scripts/getActionDataIntoJSON/getActionData.ts +0 -68
  155. package/scripts/get_attendance_by_any_date.ts +0 -14
  156. package/scripts/get_attendance_by_month.ts +0 -12
  157. package/scripts/get_attendance_monthly_by_team.ts +0 -11
  158. package/scripts/get_daily_report.ts +0 -10
  159. package/scripts/get_mangers.ts +0 -13
  160. package/scripts/grant_user_license.ts +0 -18
  161. package/scripts/init_CustomCollection.ts +0 -16
  162. package/scripts/init_action_steps.ts +0 -28
  163. package/scripts/init_actions.ts +0 -31
  164. package/scripts/init_company.ts +0 -18
  165. package/scripts/init_customer_mysql.ts +0 -12
  166. package/scripts/init_feed.ts +0 -4
  167. package/scripts/init_feed_details_screen.ts +0 -14
  168. package/scripts/init_geofence.ts +0 -26
  169. package/scripts/init_print_details_screen.ts +0 -14
  170. package/scripts/init_report_actions.ts +0 -24
  171. package/scripts/init_report_definition_detail.ts +0 -26
  172. package/scripts/init_report_definition_summary.ts +0 -16
  173. package/scripts/init_report_visibility.ts +0 -46
  174. package/scripts/init_user_customcollection.ts +0 -16
  175. package/scripts/json/action.json +0 -21
  176. package/scripts/json/company.json +0 -24
  177. package/scripts/json/report-action.json +0 -13
  178. package/scripts/json/report-def-deet.json +0 -43
  179. package/scripts/json/resp.json +0 -784
  180. package/scripts/json/steps.json +0 -24
  181. package/scripts/json/test.ts +0 -49
  182. package/scripts/mysqlConfig.ts +0 -9
  183. package/scripts/revoke_or_extend_license.ts +0 -14
  184. package/scripts/stream.js +0 -4
  185. package/scripts/testing1.ts +0 -35
  186. package/scripts/update/doc.json +0 -20
  187. package/scripts/update/getDocByPath.ts +0 -34
  188. package/scripts/update/updateDocByPath.ts +0 -47
  189. package/scripts/update/updateUsersOfCompanies.ts +0 -58
  190. package/scripts/update_actions.ts +0 -19
  191. package/scripts/update_actions_steps.ts +0 -19
  192. package/scripts/update_company.ts +0 -19
  193. package/scripts/update_geofence.ts +0 -20
  194. package/scripts/update_managers.ts +0 -16
  195. package/scripts/visitorMgmt/createArea.ts +0 -68
  196. package/scripts/visitorMgmt/createArea.txt +0 -3
  197. package/scripts/visitorMgmt/createVisitorPathInstructionDocs.ts +0 -130
  198. package/scripts/visitorMgmt/createVisitorPathInstructionDocs.txt +0 -18
  199. package/scripts/visitorMgmt/encryptDateString.ts +0 -71
  200. package/scripts/visitorMgmt/makeHostsManagersOfEachOther.ts +0 -117
  201. package/scripts/whatsapp_gupshup/sendMessage.ts +0 -97
  202. package/src/models/Feed-Details-Screen.model.ts +0 -29
  203. package/src/models/action.model.ts +0 -355
  204. package/src/models/actions/doffing.ts +0 -71
  205. package/src/models/actions/folding.ts +0 -39
  206. package/src/models/attendance.model.ts +0 -615
  207. package/src/models/cicoPost.model.ts +0 -20
  208. package/src/models/company.model.ts +0 -975
  209. package/src/models/contact-us/resquest.model.ts +0 -87
  210. package/src/models/crud/crud.ts +0 -30
  211. package/src/models/customCollection.model.ts +0 -47
  212. package/src/models/customer/customer.model.ts +0 -85
  213. package/src/models/deviceChangeReq.ts +0 -150
  214. package/src/models/dispatch.model.ts +0 -99
  215. package/src/models/feed.models.ts +0 -104
  216. package/src/models/geofence.model.ts +0 -61
  217. package/src/models/leaveApplicationPost.model.ts +0 -79
  218. package/src/models/license.model.ts +0 -215
  219. package/src/models/meeting.model.ts +0 -80
  220. package/src/models/meter.model.ts +0 -62
  221. package/src/models/missingPunchPost.model.ts +0 -84
  222. package/src/models/offline.model.ts +0 -1133
  223. package/src/models/post.model.ts +0 -105
  224. package/src/models/printDetailsScreen.model.ts +0 -30
  225. package/src/models/pushNotifications/pushNotification.model.ts +0 -17
  226. package/src/models/report-actions.model.ts +0 -57
  227. package/src/models/report-definition-details.model.ts +0 -89
  228. package/src/models/report-definition.model.ts +0 -26
  229. package/src/models/report-definitions-summary.model.ts +0 -59
  230. package/src/models/report-detail-data.model.ts +0 -49
  231. package/src/models/report-visibility.model.ts +0 -44
  232. package/src/models/report.model.ts +0 -179
  233. package/src/models/reportGenerator.model.ts +0 -883
  234. package/src/models/response.model.ts +0 -31
  235. package/src/models/steps.factory.model.ts +0 -195
  236. package/src/models/storeGupShupLog.model.ts +0 -49
  237. package/src/models/tasks/sub-task-group.model.ts +0 -173
  238. package/src/models/tasks/tags.model.ts +0 -113
  239. package/src/models/tasks/task-group.model.ts +0 -172
  240. package/src/models/tasks/task.model.ts +0 -681
  241. package/src/models/user.model.ts +0 -319
  242. package/src/models/utility.model.ts +0 -100
  243. package/src/models/visitorManagement/acknowledgement.model.ts +0 -71
  244. package/src/models/visitorManagement/invite.model.ts +0 -406
  245. package/src/models/visitorManagement/newIn.model.ts +0 -82
  246. package/src/models/visitorManagement/selfServe.model.ts +0 -58
  247. package/src/models/worklogPost.model.ts +0 -8
  248. package/src/services/customer.ts +0 -382
  249. package/src/services/meeting.ts +0 -123
  250. package/test/1.ts +0 -13
  251. package/test/db.js +0 -19
  252. package/test/firebaseConfig.js +0 -1
  253. 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
- }