mobioffice-cli 0.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.
Files changed (156) hide show
  1. package/.prettierrc +4 -0
  2. package/README.md +1 -0
  3. package/a.js +3 -0
  4. package/lib/index.js +87 -0
  5. package/package.json +50 -0
  6. package/scripts/1.ts +1300 -0
  7. package/scripts/GCloudPubSub/pub-sub-config.json +12 -0
  8. package/scripts/GCloudPubSub/visitorAutoRejection.ts +86 -0
  9. package/scripts/actions/assignUsersFromOneActionToOther.ts +64 -0
  10. package/scripts/actions/assignUsersListToAction.ts +81 -0
  11. package/scripts/actions/getActionsListOfUser.ts +42 -0
  12. package/scripts/actions/getCompanyUserDetails.ts +49 -0
  13. package/scripts/actions/giveActionToUser.ts +41 -0
  14. package/scripts/actions/giveUsersToActivitySelector.ts +56 -0
  15. package/scripts/actions/groupActionsInActivitySelector.ts +101 -0
  16. package/scripts/actions/modifySummaryReportDB.ts +42 -0
  17. package/scripts/actions/setUrlToActionStep.ts +18 -0
  18. package/scripts/actions/syncMySqlAttendanceDBWithFirebase.ts +93 -0
  19. package/scripts/actions/syncMySqlMeetingsDBWithFirebase.ts +103 -0
  20. package/scripts/actions/test.ts +29 -0
  21. package/scripts/actions/transferFeedsOldIdToNew.ts +40 -0
  22. package/scripts/actions/transformUserIntoManager.ts +89 -0
  23. package/scripts/argvConfig.js +9 -0
  24. package/scripts/backUpData/testCode.ts +131 -0
  25. package/scripts/benaraScripts/addWorkAreaMap.ts +46 -0
  26. package/scripts/benaraScripts/add_customers.ts +26 -0
  27. package/scripts/benaraScripts/add_customers_contact.ts +27 -0
  28. package/scripts/benaraScripts/add_empty_work_area.ts +17 -0
  29. package/scripts/benaraScripts/assignManagers.ts +35 -0
  30. package/scripts/benaraScripts/changeCheckInFlag.ts +45 -0
  31. package/scripts/benaraScripts/createCustomerContactsList.ts +170 -0
  32. package/scripts/benaraScripts/createUserByDeletingOldUser.ts +70 -0
  33. package/scripts/benaraScripts/createUsersAreaMapCollection.ts +23 -0
  34. package/scripts/benaraScripts/createWorkAreaMap.ts +24 -0
  35. package/scripts/benaraScripts/mapWorkAreasToUsers.ts +112 -0
  36. package/scripts/companies_data.json +2496 -0
  37. package/scripts/create_or_update_users.ts +31 -0
  38. package/scripts/csvToJson/csvToJson.ts +90 -0
  39. package/scripts/csvToJson/users.json +3896 -0
  40. package/scripts/db.js +27 -0
  41. package/scripts/db.json +13 -0
  42. package/scripts/dbMySql.ts +63 -0
  43. package/scripts/delete_action_steps.ts +11 -0
  44. package/scripts/delete_user.ts +71 -0
  45. package/scripts/dev_companies_data.json +613 -0
  46. package/scripts/enroll.xlsx +0 -0
  47. package/scripts/export_users.ts +72 -0
  48. package/scripts/files/visitorManagementFiles/displayScreen.json +70 -0
  49. package/scripts/files/visitorManagementFiles/init_report_visibility.ts +79 -0
  50. package/scripts/firebaseConfig.js +12 -0
  51. package/scripts/firebaseDocs/deleteIncommingCollection.ts +47 -0
  52. package/scripts/firebaseDocs/updateDoc.ts +43 -0
  53. package/scripts/getActionDataIntoJSON/getActionData.ts +68 -0
  54. package/scripts/get_attendance_by_any_date.ts +14 -0
  55. package/scripts/get_attendance_by_month.ts +12 -0
  56. package/scripts/get_attendance_monthly_by_team.ts +11 -0
  57. package/scripts/get_daily_report.ts +10 -0
  58. package/scripts/get_mangers.ts +13 -0
  59. package/scripts/grant_user_license.ts +18 -0
  60. package/scripts/init_CustomCollection.ts +16 -0
  61. package/scripts/init_action_steps.ts +28 -0
  62. package/scripts/init_actions.ts +31 -0
  63. package/scripts/init_company.ts +18 -0
  64. package/scripts/init_customer_mysql.ts +12 -0
  65. package/scripts/init_feed.ts +4 -0
  66. package/scripts/init_feed_details_screen.ts +14 -0
  67. package/scripts/init_geofence.ts +26 -0
  68. package/scripts/init_print_details_screen.ts +14 -0
  69. package/scripts/init_report_actions.ts +24 -0
  70. package/scripts/init_report_definition_detail.ts +26 -0
  71. package/scripts/init_report_definition_summary.ts +16 -0
  72. package/scripts/init_report_visibility.ts +46 -0
  73. package/scripts/init_user_customcollection.ts +16 -0
  74. package/scripts/json/action.json +21 -0
  75. package/scripts/json/company.json +24 -0
  76. package/scripts/json/report-action.json +13 -0
  77. package/scripts/json/report-def-deet.json +43 -0
  78. package/scripts/json/resp.json +784 -0
  79. package/scripts/json/steps.json +24 -0
  80. package/scripts/json/test.ts +49 -0
  81. package/scripts/mysqlConfig.ts +9 -0
  82. package/scripts/revoke_or_extend_license.ts +14 -0
  83. package/scripts/stream.js +4 -0
  84. package/scripts/testing1.ts +35 -0
  85. package/scripts/update/doc.json +20 -0
  86. package/scripts/update/getDocByPath.ts +34 -0
  87. package/scripts/update/updateDocByPath.ts +47 -0
  88. package/scripts/update/updateUsersOfCompanies.ts +58 -0
  89. package/scripts/update_actions.ts +19 -0
  90. package/scripts/update_actions_steps.ts +19 -0
  91. package/scripts/update_company.ts +19 -0
  92. package/scripts/update_geofence.ts +20 -0
  93. package/scripts/update_managers.ts +16 -0
  94. package/scripts/visitorMgmt/createArea.ts +68 -0
  95. package/scripts/visitorMgmt/createArea.txt +3 -0
  96. package/scripts/visitorMgmt/createVisitorPathInstructionDocs.ts +130 -0
  97. package/scripts/visitorMgmt/createVisitorPathInstructionDocs.txt +18 -0
  98. package/scripts/visitorMgmt/encryptDateString.ts +71 -0
  99. package/scripts/visitorMgmt/makeHostsManagersOfEachOther.ts +117 -0
  100. package/scripts/whatsapp_gupshup/sendMessage.ts +97 -0
  101. package/src/index.ts +87 -0
  102. package/src/models/Feed-Details-Screen.model.ts +29 -0
  103. package/src/models/action.model.ts +355 -0
  104. package/src/models/actions/doffing.ts +71 -0
  105. package/src/models/actions/folding.ts +39 -0
  106. package/src/models/attendance.model.ts +615 -0
  107. package/src/models/cicoPost.model.ts +20 -0
  108. package/src/models/company.model.ts +975 -0
  109. package/src/models/contact-us/resquest.model.ts +87 -0
  110. package/src/models/crud/crud.ts +30 -0
  111. package/src/models/customCollection.model.ts +47 -0
  112. package/src/models/customer/customer.model.ts +85 -0
  113. package/src/models/deviceChangeReq.ts +150 -0
  114. package/src/models/dispatch.model.ts +99 -0
  115. package/src/models/feed.models.ts +104 -0
  116. package/src/models/geofence.model.ts +61 -0
  117. package/src/models/leaveApplicationPost.model.ts +79 -0
  118. package/src/models/license.model.ts +215 -0
  119. package/src/models/log.model.ts +25 -0
  120. package/src/models/meeting.model.ts +80 -0
  121. package/src/models/meter.model.ts +62 -0
  122. package/src/models/missingPunchPost.model.ts +84 -0
  123. package/src/models/offline.model.ts +1133 -0
  124. package/src/models/post.model.ts +105 -0
  125. package/src/models/printDetailsScreen.model.ts +30 -0
  126. package/src/models/pushNotifications/pushNotification.model.ts +17 -0
  127. package/src/models/report-actions.model.ts +57 -0
  128. package/src/models/report-definition-details.model.ts +89 -0
  129. package/src/models/report-definition.model.ts +26 -0
  130. package/src/models/report-definitions-summary.model.ts +59 -0
  131. package/src/models/report-detail-data.model.ts +49 -0
  132. package/src/models/report-visibility.model.ts +44 -0
  133. package/src/models/report.model.ts +179 -0
  134. package/src/models/reportGenerator.model.ts +883 -0
  135. package/src/models/response.model.ts +31 -0
  136. package/src/models/steps.factory.model.ts +195 -0
  137. package/src/models/storeGupShupLog.model.ts +49 -0
  138. package/src/models/summary.model.ts +63 -0
  139. package/src/models/tasks/sub-task-group.model.ts +173 -0
  140. package/src/models/tasks/tags.model.ts +113 -0
  141. package/src/models/tasks/task-group.model.ts +172 -0
  142. package/src/models/tasks/task.model.ts +681 -0
  143. package/src/models/tempCollection.model.ts +398 -0
  144. package/src/models/user.model.ts +319 -0
  145. package/src/models/utility.model.ts +100 -0
  146. package/src/models/visitorManagement/acknowledgement.model.ts +71 -0
  147. package/src/models/visitorManagement/invite.model.ts +406 -0
  148. package/src/models/visitorManagement/newIn.model.ts +82 -0
  149. package/src/models/visitorManagement/selfServe.model.ts +58 -0
  150. package/src/models/worklogPost.model.ts +8 -0
  151. package/src/services/customer.ts +382 -0
  152. package/src/services/meeting.ts +123 -0
  153. package/test/1.ts +13 -0
  154. package/test/db.js +19 -0
  155. package/test/firebaseConfig.js +1 -0
  156. package/tsconfig.json +16 -0
@@ -0,0 +1,31 @@
1
+ import admin from "./db.js";
2
+ import { Company } from "../src/models/company.model";
3
+ import * as csvToJson from "convert-csv-to-json";
4
+ import { options } from "./argvConfig.js";
5
+
6
+ async function main() {
7
+ let argv = options.args[0].split(",");
8
+ let firestore;
9
+ try {
10
+ firestore = admin.firestore();
11
+ } catch (e) {
12
+ console.log(e);
13
+ }
14
+ let arrayUnion = admin.firestore.FieldValue.arrayUnion;
15
+ let usersList = csvToJson.fieldDelimiter(",").getJsonFromCsv(argv[0]);
16
+
17
+ for (let user of usersList) {
18
+ let nickName: string = user.nickname;
19
+ delete user.nickname;
20
+ let status: any = await Company.createOrUpdateUser(
21
+ firestore,
22
+ admin.auth(),
23
+ arrayUnion,
24
+ nickName,
25
+ user
26
+ );
27
+ console.log(status);
28
+ }
29
+ }
30
+
31
+ main();
@@ -0,0 +1,90 @@
1
+ import { options } from "../argvConfig";
2
+ import * as csvToJson from "convert-csv-to-json";
3
+ import { User } from "../../src/models/user.model";
4
+ import fs from "fs";
5
+
6
+ const filePath = options.args[0];
7
+ console.log("-----------------------------");
8
+ const jsonInfo = await getJsonFromCsv(filePath);
9
+ const usersArray = jsonInfo.map((user) => {
10
+ user.nickName = "benara";
11
+ return user;
12
+ })
13
+ const infoToStore = JSON.stringify(usersArray);
14
+ fs.writeFileSync("./users.json", infoToStore, { flag: "w"});
15
+
16
+
17
+ async function getJsonFromCsv(filePath: string) {
18
+ try {
19
+ if (filePath) {
20
+ const jsonInfo = csvToJson.fieldDelimiter(",").getJsonFromCsv(filePath);
21
+ let filteredInfo = await Promise.all(jsonInfo.map(async (userInfo: any) => {
22
+ const filteredObj = new User([], [], "", "", userInfo.Email,
23
+ "", "", userInfo.id, userInfo.Designation,
24
+ "", "", 0, userInfo.Name, false,
25
+ "", "", userInfo.user);
26
+ const user = await sortIntoLevels(JSON.parse(JSON.stringify(filteredObj)));
27
+ return user;
28
+ }))
29
+ const levelWisePhoneInfo = await getLevelWisePhoneNo(filteredInfo);
30
+ console.log(levelWisePhoneInfo);
31
+ const usersWithReportingInfo = await addReportingInfo(filteredInfo, levelWisePhoneInfo);
32
+ return usersWithReportingInfo;
33
+ } else {
34
+ throw new Error("Please provide file path.");
35
+ }
36
+ } catch (error) {
37
+ console.log(error.message);
38
+ }
39
+ }
40
+
41
+ async function addReportingInfo(filteredInfo: any, levelWisePhoneInfo: any) {
42
+ let usersWithReportingInfo = filteredInfo.map((user: any) => {
43
+ if (Number(user.level) - 1 > 0) {
44
+ user.reportingTo.push(...levelWisePhoneInfo[`${Number(user.level) - 1}`]);
45
+ return user;
46
+ } else {
47
+ user.reportingTo = [];
48
+ }
49
+ console.log(user);
50
+ return user;
51
+ })
52
+ return usersWithReportingInfo;
53
+ }
54
+
55
+ async function getLevelWisePhoneNo(filteredInfo: any) {
56
+ const levelWisePhoneInfo = filteredInfo.reduce((accumulator: any, user: any) => {
57
+ if (accumulator[user.level]) {
58
+ accumulator[user.level].push(user.phone);
59
+ } else {
60
+ accumulator[user.level] = [];
61
+ }
62
+ return accumulator;
63
+ }, {})
64
+ return levelWisePhoneInfo;
65
+ }
66
+
67
+ async function sortIntoLevels(user: any) {
68
+ let levels = {
69
+ level1: ["MD"],
70
+ level2: ["VP", "ZM", "PM", "DM"],
71
+ level3: ["ASM"],
72
+ level4: ["SO"]
73
+ }
74
+ if (levels.level1.includes(user.designation)) {
75
+ user.level = "1";
76
+ user.actions = ["meeting","mp","check_in_out","add_customer_contact","add_customer"]
77
+ } else if (levels.level2.includes(user.designation)) {
78
+ user.level = "2";
79
+ user.actions = ["meeting","mp","check_in_out","add_customer","add_customer_contact"]
80
+ } else if (levels.level3.includes(user.designation)) {
81
+ user.level = "3";
82
+ user.actions = ["meeting","mp","check_in_out","add_customer","add_customer_contact"]
83
+ } else if (levels.level4.includes(user.designation)) {
84
+ user.level = "4";
85
+ user.actions = ["meeting","mp","check_in_out","add_customer_contact"]
86
+ } else {
87
+ user.level = null;
88
+ }
89
+ return user;
90
+ }