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.
- 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
@@ -0,0 +1,38 @@
|
|
1
|
+
import * as admin from "firebase-admin";
|
2
|
+
declare class Post {
|
3
|
+
actionEvent: string;
|
4
|
+
actionId: string;
|
5
|
+
actionName: string;
|
6
|
+
actionType: string;
|
7
|
+
companyId: string;
|
8
|
+
createdAt: string;
|
9
|
+
refId: string;
|
10
|
+
description: string;
|
11
|
+
eventId: string;
|
12
|
+
isGeofence: boolean;
|
13
|
+
userId: string;
|
14
|
+
id: string;
|
15
|
+
forApproval: boolean;
|
16
|
+
forApprovalText: string;
|
17
|
+
object: any;
|
18
|
+
origin: any;
|
19
|
+
seen: boolean;
|
20
|
+
startAt: string;
|
21
|
+
startLat: string;
|
22
|
+
startLong: string;
|
23
|
+
endAt: string;
|
24
|
+
endLat: string;
|
25
|
+
endLong: string;
|
26
|
+
stepValues: any[];
|
27
|
+
target: string;
|
28
|
+
time: string;
|
29
|
+
extraData: any;
|
30
|
+
checkInternet: boolean;
|
31
|
+
image: string;
|
32
|
+
eventDetails: string;
|
33
|
+
isProcessed: boolean;
|
34
|
+
missedEvent: string;
|
35
|
+
static createNewPost(firestore: admin.firestore.Firestore, postInfo: any): Promise<unknown>;
|
36
|
+
static sendDCRPost(firestore: admin.firestore.Firestore, postToSave: any): Promise<void>;
|
37
|
+
}
|
38
|
+
export { Post };
|
@@ -0,0 +1,94 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.Post = void 0;
|
4
|
+
const offline_model_1 = require("./offline.model");
|
5
|
+
const company_model_1 = require("./company.model");
|
6
|
+
const action_model_1 = require("./action.model");
|
7
|
+
class Post {
|
8
|
+
actionEvent = "";
|
9
|
+
actionId = "";
|
10
|
+
actionName = "";
|
11
|
+
actionType = "";
|
12
|
+
companyId = "";
|
13
|
+
createdAt = "";
|
14
|
+
refId = "";
|
15
|
+
description = "";
|
16
|
+
eventId = "";
|
17
|
+
isGeofence = false;
|
18
|
+
userId = "";
|
19
|
+
id = "";
|
20
|
+
forApproval = false;
|
21
|
+
forApprovalText = "";
|
22
|
+
object = null;
|
23
|
+
origin = null;
|
24
|
+
seen = false;
|
25
|
+
startAt = "";
|
26
|
+
startLat = "";
|
27
|
+
startLong = "";
|
28
|
+
endAt = "";
|
29
|
+
endLat = "";
|
30
|
+
endLong = "";
|
31
|
+
stepValues = [];
|
32
|
+
target = "";
|
33
|
+
time = "";
|
34
|
+
extraData = {};
|
35
|
+
checkInternet = false;
|
36
|
+
image = "";
|
37
|
+
eventDetails = "";
|
38
|
+
isProcessed = false;
|
39
|
+
missedEvent = "";
|
40
|
+
static async createNewPost(firestore, postInfo) {
|
41
|
+
let incomingDocId = postInfo.id;
|
42
|
+
try {
|
43
|
+
let userRef = await offline_model_1.Offline.createRefForUser(firestore, postInfo.companyId, postInfo.userId);
|
44
|
+
postInfo.id = userRef.id;
|
45
|
+
const postToSave = JSON.parse(JSON.stringify(postInfo));
|
46
|
+
console.log("------before saving in company");
|
47
|
+
let postEventId = await offline_model_1.Offline.addDetailsToCompanyActions(firestore, postInfo.companyId, postInfo.actionId, postToSave, postInfo.actionName);
|
48
|
+
postToSave.eventId = postEventId;
|
49
|
+
await userRef.set(postToSave);
|
50
|
+
console.log("post sent to user feed");
|
51
|
+
await offline_model_1.Offline.sendFeedToManagers(firestore, postInfo.companyId, postInfo.userId, postToSave);
|
52
|
+
console.log("post sent to managers' feed", postToSave.startAt);
|
53
|
+
await offline_model_1.Offline.deleteInfoFromIncoming(firestore, incomingDocId);
|
54
|
+
console.log("document deleted from incoming");
|
55
|
+
return postEventId;
|
56
|
+
}
|
57
|
+
catch (error) {
|
58
|
+
await firestore.collection("Incoming").doc(incomingDocId).update({
|
59
|
+
message: "Error",
|
60
|
+
errorDetail: error,
|
61
|
+
errorId: "err101",
|
62
|
+
});
|
63
|
+
console.log(error);
|
64
|
+
return error;
|
65
|
+
}
|
66
|
+
}
|
67
|
+
static async sendDCRPost(firestore, postToSave) {
|
68
|
+
const nickName = "mobiOffice";
|
69
|
+
const companyId = await company_model_1.Company.getCompanyIdByNickName(firestore, nickName);
|
70
|
+
const actionId = await action_model_1.Action.getActionId(firestore, companyId, postToSave.actionName);
|
71
|
+
const supportUsers = await company_model_1.Company.getUsersListbyCompany(firestore, nickName);
|
72
|
+
console.log(actionId, companyId);
|
73
|
+
const postEventDocRef = firestore.collection("Companies")
|
74
|
+
.doc(companyId)
|
75
|
+
.collection("Actions")
|
76
|
+
.doc(actionId)
|
77
|
+
.collection(postToSave.actionName)
|
78
|
+
.doc(postToSave.id);
|
79
|
+
postToSave.eventId = postToSave.id;
|
80
|
+
await postEventDocRef.set(postToSave);
|
81
|
+
const feedIdObj = {};
|
82
|
+
for (let user of supportUsers) {
|
83
|
+
let userRef = firestore.collection("Feeds")
|
84
|
+
.doc(user.id)
|
85
|
+
.collection(companyId)
|
86
|
+
.doc(postToSave.id);
|
87
|
+
// postToSave.id = userRef.id;
|
88
|
+
await userRef.set(postToSave);
|
89
|
+
// feedIdObj[user.id] = userRef.id;
|
90
|
+
}
|
91
|
+
// return feedIdObj;
|
92
|
+
}
|
93
|
+
}
|
94
|
+
exports.Post = Post;
|
@@ -0,0 +1,6 @@
|
|
1
|
+
import * as admin from 'firebase-admin';
|
2
|
+
declare class PrintDetailsScreen {
|
3
|
+
static createPrintDetailsScreen(firestore: admin.firestore.Firestore, nickName: string, data: any): Promise<any>;
|
4
|
+
static updatePrintDetailsScreen(firestore: admin.firestore.Firestore, nickName: string, data: any): Promise<void>;
|
5
|
+
}
|
6
|
+
export { PrintDetailsScreen };
|
@@ -0,0 +1,27 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.PrintDetailsScreen = void 0;
|
4
|
+
const company_model_1 = require("./company.model");
|
5
|
+
class PrintDetailsScreen {
|
6
|
+
static async createPrintDetailsScreen(firestore, nickName, data) {
|
7
|
+
let companyId = await company_model_1.Company.getCompanyIdbyNickname(firestore, nickName);
|
8
|
+
let snapshot = firestore
|
9
|
+
.collection("Companies")
|
10
|
+
.doc(companyId)
|
11
|
+
.collection("Print-Details-Screen").doc();
|
12
|
+
data.id = snapshot.id;
|
13
|
+
await snapshot.set(data);
|
14
|
+
return data;
|
15
|
+
}
|
16
|
+
static async updatePrintDetailsScreen(firestore, nickName, data) {
|
17
|
+
let companyId = await company_model_1.Company.getCompanyIdbyNickname(firestore, nickName);
|
18
|
+
let snapshot = await firestore
|
19
|
+
.collection("Companies")
|
20
|
+
.doc(companyId)
|
21
|
+
.collection("Print-Details-Screen").where("actionName", "==", data.actionName).get();
|
22
|
+
snapshot.forEach((doc) => {
|
23
|
+
doc.ref.update(data);
|
24
|
+
});
|
25
|
+
}
|
26
|
+
}
|
27
|
+
exports.PrintDetailsScreen = PrintDetailsScreen;
|
@@ -0,0 +1,17 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.PushNotifications = void 0;
|
4
|
+
class PushNotifications {
|
5
|
+
static async sendPushNotification(admin, fcmTokens, message) {
|
6
|
+
try {
|
7
|
+
const response = await admin.messaging().sendToDevice(fcmTokens, message);
|
8
|
+
console.log(response.results);
|
9
|
+
// console.log(response[0].error)
|
10
|
+
return "Notification Sent Successfully";
|
11
|
+
}
|
12
|
+
catch (error) {
|
13
|
+
throw new Error(error.message);
|
14
|
+
}
|
15
|
+
}
|
16
|
+
}
|
17
|
+
exports.PushNotifications = PushNotifications;
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import * as admin from 'firebase-admin';
|
2
|
+
declare class ReportActions {
|
3
|
+
darkColor: string;
|
4
|
+
lightColor: string;
|
5
|
+
description: string;
|
6
|
+
icon: string;
|
7
|
+
title: string;
|
8
|
+
url: string;
|
9
|
+
id: string;
|
10
|
+
order: string;
|
11
|
+
keys: string;
|
12
|
+
static getOrCreateReportActions(firestore: admin.firestore.Firestore, nickName: string, reportAction: any): Promise<admin.firestore.DocumentData | "Please provide title" | undefined>;
|
13
|
+
static convertReportActionsDataType(data: any): Promise<any>;
|
14
|
+
static reportActionsTemplate: {
|
15
|
+
darkColor: null;
|
16
|
+
lightColor: null;
|
17
|
+
description: null;
|
18
|
+
icon: null;
|
19
|
+
title: null;
|
20
|
+
url: null;
|
21
|
+
id: null;
|
22
|
+
order: null;
|
23
|
+
keys: null;
|
24
|
+
};
|
25
|
+
}
|
26
|
+
export { ReportActions };
|
@@ -0,0 +1,56 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.ReportActions = void 0;
|
4
|
+
const action_model_1 = require("./action.model");
|
5
|
+
const company_model_1 = require("./company.model");
|
6
|
+
class ReportActions {
|
7
|
+
darkColor = "";
|
8
|
+
lightColor = "";
|
9
|
+
description = "";
|
10
|
+
icon = "";
|
11
|
+
title = "";
|
12
|
+
url = "";
|
13
|
+
id = "";
|
14
|
+
order = "";
|
15
|
+
keys = "";
|
16
|
+
static async getOrCreateReportActions(firestore, nickName, reportAction) {
|
17
|
+
if (!reportAction.title) {
|
18
|
+
return "Please provide title";
|
19
|
+
}
|
20
|
+
let companyId = await company_model_1.Company.getCompanyIdbyNickname(firestore, nickName);
|
21
|
+
let snapshot = firestore.collection('Companies').doc(companyId).collection('Report-Actions');
|
22
|
+
let reportAction_data = await snapshot.where('title', '==', reportAction.title).get();
|
23
|
+
if (reportAction_data.empty) {
|
24
|
+
let actionId = await action_model_1.Action.getActionIdByDisplayName(firestore, companyId, reportAction.title);
|
25
|
+
//reportAction = await ReportActions.convertReportActionsDataType(reportAction)
|
26
|
+
reportAction.id = actionId;
|
27
|
+
let reportaction_snapshot_newData = snapshot.doc(actionId);
|
28
|
+
await reportaction_snapshot_newData.set(reportAction);
|
29
|
+
return (await reportaction_snapshot_newData.get()).data();
|
30
|
+
}
|
31
|
+
else {
|
32
|
+
return reportAction_data.docs[0].data();
|
33
|
+
}
|
34
|
+
}
|
35
|
+
static async convertReportActionsDataType(data) {
|
36
|
+
if (data.keys) {
|
37
|
+
data.keys = data.keys.split('&');
|
38
|
+
}
|
39
|
+
if (data.order) {
|
40
|
+
data.order = Number(data.order);
|
41
|
+
}
|
42
|
+
return data;
|
43
|
+
}
|
44
|
+
static reportActionsTemplate = {
|
45
|
+
darkColor: null,
|
46
|
+
lightColor: null,
|
47
|
+
description: null,
|
48
|
+
icon: null,
|
49
|
+
title: null,
|
50
|
+
url: null,
|
51
|
+
id: null,
|
52
|
+
order: null,
|
53
|
+
keys: null,
|
54
|
+
};
|
55
|
+
}
|
56
|
+
exports.ReportActions = ReportActions;
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import * as admin from 'firebase-admin';
|
2
|
+
declare class ReportDefinitionDetail {
|
3
|
+
color: string;
|
4
|
+
data: any[];
|
5
|
+
detailOf: string;
|
6
|
+
name: string;
|
7
|
+
toHome: boolean;
|
8
|
+
id: string;
|
9
|
+
nickname?: string;
|
10
|
+
static getOrCreateReportDefinitionDetail(firestore: admin.firestore.Firestore, nickName: string, reportDefinitionDetail: ReportDefinitionDetail): Promise<admin.firestore.DocumentData | undefined>;
|
11
|
+
static convertReportDefinitionDetail(data: any): Promise<any>;
|
12
|
+
}
|
13
|
+
export { ReportDefinitionDetail };
|
@@ -0,0 +1,85 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.ReportDefinitionDetail = void 0;
|
4
|
+
const action_model_1 = require("./action.model");
|
5
|
+
const company_model_1 = require("./company.model");
|
6
|
+
const report_definitions_summary_model_1 = require("./report-definitions-summary.model");
|
7
|
+
class ReportDefinitionDetail {
|
8
|
+
color = "";
|
9
|
+
data = [];
|
10
|
+
detailOf = "";
|
11
|
+
name = "";
|
12
|
+
toHome = false;
|
13
|
+
id = "";
|
14
|
+
nickname = "";
|
15
|
+
static async getOrCreateReportDefinitionDetail(firestore, nickName, reportDefinitionDetail) {
|
16
|
+
let companyId = await company_model_1.Company.getCompanyIdbyNickname(firestore, nickName);
|
17
|
+
let snapshot = firestore
|
18
|
+
.collection("Companies")
|
19
|
+
.doc(companyId)
|
20
|
+
.collection("Report-Definition-Detail");
|
21
|
+
let reportDefinitionDetials_snapshot = await snapshot.where('name', '==', reportDefinitionDetail.name).get();
|
22
|
+
if (reportDefinitionDetials_snapshot.empty) {
|
23
|
+
//reportDefinitionDetail = await ReportDefinitionDetail.convertReportDefinitionDetail(reportDefinitionDetail)
|
24
|
+
let docRef = snapshot.doc();
|
25
|
+
let id = await report_definitions_summary_model_1.ReportDefinitionSummary.getReportDefinitionSummaryId(firestore, nickName, reportDefinitionDetail.name);
|
26
|
+
if (!id.length) {
|
27
|
+
id = await action_model_1.Action.getActionIdByDisplayName(firestore, companyId, reportDefinitionDetail.name);
|
28
|
+
}
|
29
|
+
reportDefinitionDetail.detailOf = id;
|
30
|
+
reportDefinitionDetail.id = docRef.id;
|
31
|
+
await docRef.set(reportDefinitionDetail);
|
32
|
+
return (await docRef.get()).data();
|
33
|
+
}
|
34
|
+
else {
|
35
|
+
return reportDefinitionDetials_snapshot.docs[0].data();
|
36
|
+
}
|
37
|
+
}
|
38
|
+
static async convertReportDefinitionDetail(data) {
|
39
|
+
if (data.toHome) {
|
40
|
+
data.toHome = await action_model_1.Action.booleanConvertion(data.toHome.toLowerCase());
|
41
|
+
}
|
42
|
+
if (data.share) {
|
43
|
+
data.share = await action_model_1.Action.booleanConvertion(data.share.toLowerCase());
|
44
|
+
}
|
45
|
+
if (data.keys) {
|
46
|
+
data.keys = await data.keys.split("&");
|
47
|
+
}
|
48
|
+
if (data.data) {
|
49
|
+
for (let subData of data.data) {
|
50
|
+
if (subData.autoAPICalled) {
|
51
|
+
subData.autoAPICalled = await action_model_1.Action.booleanConvertion(subData.autoAPICalled);
|
52
|
+
}
|
53
|
+
if (subData.isSSL) {
|
54
|
+
subData.isSSL = await action_model_1.Action.booleanConvertion(subData.isSSL);
|
55
|
+
}
|
56
|
+
if (subData.halfPage) {
|
57
|
+
subData.halfPage = await action_model_1.Action.booleanConvertion(subData.halfPage);
|
58
|
+
}
|
59
|
+
if (subData.fullPage) {
|
60
|
+
subData.fullPage = await action_model_1.Action.booleanConvertion(subData.fullPage);
|
61
|
+
}
|
62
|
+
if (subData.keys) {
|
63
|
+
subData.keys = subData.keys.split('&');
|
64
|
+
}
|
65
|
+
if (subData.nextPage) {
|
66
|
+
subData.nextPage = Number(subData.nextPage);
|
67
|
+
}
|
68
|
+
if (subData.pageSize) {
|
69
|
+
subData.pageSize = Number(subData.pageSize);
|
70
|
+
}
|
71
|
+
if (subData.rowHeight) {
|
72
|
+
subData.rowHeight = Number(subData.rowHeight);
|
73
|
+
}
|
74
|
+
if (subData.order) {
|
75
|
+
subData.order = Number(subData.order);
|
76
|
+
}
|
77
|
+
if (subData.totalItems) {
|
78
|
+
subData.totalItems = Number(subData.totalItems);
|
79
|
+
}
|
80
|
+
}
|
81
|
+
}
|
82
|
+
return data;
|
83
|
+
}
|
84
|
+
}
|
85
|
+
exports.ReportDefinitionDetail = ReportDefinitionDetail;
|
@@ -0,0 +1,23 @@
|
|
1
|
+
declare class ReportDefinition {
|
2
|
+
id: string;
|
3
|
+
name: string;
|
4
|
+
detailOf: string;
|
5
|
+
toHome: boolean;
|
6
|
+
share: boolean;
|
7
|
+
keys: [];
|
8
|
+
color: string;
|
9
|
+
downloadUrl: string;
|
10
|
+
data: [];
|
11
|
+
static reportDefTemplate: {
|
12
|
+
id: string;
|
13
|
+
name: string;
|
14
|
+
detailOf: string;
|
15
|
+
toHome: boolean;
|
16
|
+
share: boolean;
|
17
|
+
keys: never[];
|
18
|
+
color: string;
|
19
|
+
downloadUrl: string;
|
20
|
+
data: never[];
|
21
|
+
};
|
22
|
+
}
|
23
|
+
export { ReportDefinition };
|
@@ -0,0 +1,26 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.ReportDefinition = void 0;
|
4
|
+
class ReportDefinition {
|
5
|
+
id = "";
|
6
|
+
name = "";
|
7
|
+
detailOf = "";
|
8
|
+
toHome = true;
|
9
|
+
share = false;
|
10
|
+
keys = [];
|
11
|
+
color = "";
|
12
|
+
downloadUrl = "";
|
13
|
+
data = [];
|
14
|
+
static reportDefTemplate = {
|
15
|
+
id: "",
|
16
|
+
name: "",
|
17
|
+
detailOf: "",
|
18
|
+
toHome: true,
|
19
|
+
share: false,
|
20
|
+
keys: [],
|
21
|
+
color: "",
|
22
|
+
downloadUrl: "",
|
23
|
+
data: [],
|
24
|
+
};
|
25
|
+
}
|
26
|
+
exports.ReportDefinition = ReportDefinition;
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import * as admin from 'firebase-admin';
|
2
|
+
declare class ReportDefinitionSummary {
|
3
|
+
static getOrCreateReportDefinitionSummary(firestore: admin.firestore.Firestore, nickName: string, reportSummary: any): Promise<admin.firestore.DocumentData | undefined>;
|
4
|
+
static convertReportDefinitionSummary(data: any): Promise<any>;
|
5
|
+
static getReportDefinitionSummaryId(firestore: admin.firestore.Firestore, nickName: string, reportDefinitionSummaryName: string): Promise<string>;
|
6
|
+
static getReportDefinitionSummaryDocById(firestore: admin.firestore.Firestore, companyId: string, docId: string): Promise<admin.firestore.DocumentData | undefined>;
|
7
|
+
}
|
8
|
+
export { ReportDefinitionSummary };
|
@@ -0,0 +1,59 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.ReportDefinitionSummary = void 0;
|
4
|
+
const action_model_1 = require("./action.model");
|
5
|
+
const company_model_1 = require("./company.model");
|
6
|
+
class ReportDefinitionSummary {
|
7
|
+
static async getOrCreateReportDefinitionSummary(firestore, nickName, reportSummary) {
|
8
|
+
let companyId = await company_model_1.Company.getCompanyIdbyNickname(firestore, nickName);
|
9
|
+
let snapshot = await firestore
|
10
|
+
.collection("Companies")
|
11
|
+
.doc(companyId)
|
12
|
+
.collection("Report-Definition-Summary");
|
13
|
+
let ReportDefinitionSummary_data = await snapshot.where("name", "==", reportSummary.name).get();
|
14
|
+
if (ReportDefinitionSummary_data.empty) {
|
15
|
+
reportSummary = await ReportDefinitionSummary.convertReportDefinitionSummary(reportSummary);
|
16
|
+
let docRef = snapshot.doc();
|
17
|
+
reportSummary.id = docRef.id;
|
18
|
+
await docRef.set(reportSummary);
|
19
|
+
return (await docRef.get()).data();
|
20
|
+
}
|
21
|
+
else {
|
22
|
+
return ReportDefinitionSummary_data.docs[0].data();
|
23
|
+
}
|
24
|
+
}
|
25
|
+
static async convertReportDefinitionSummary(data) {
|
26
|
+
if (data.autoAPICall) {
|
27
|
+
data.autoAPICall = await action_model_1.Action.booleanConvertion(data.autoAPICall.toLowerCase());
|
28
|
+
}
|
29
|
+
return data;
|
30
|
+
}
|
31
|
+
static async getReportDefinitionSummaryId(firestore, nickName, reportDefinitionSummaryName) {
|
32
|
+
let companyId = await company_model_1.Company.getCompanyIdbyNickname(firestore, nickName);
|
33
|
+
let docRef = await firestore
|
34
|
+
.collection("Companies")
|
35
|
+
.doc(companyId)
|
36
|
+
.collection("Report-Definition-Summary")
|
37
|
+
.where('name', '==', reportDefinitionSummaryName)
|
38
|
+
.get();
|
39
|
+
let id = "";
|
40
|
+
docRef.forEach((doc) => {
|
41
|
+
id = doc.data().id;
|
42
|
+
});
|
43
|
+
return id;
|
44
|
+
}
|
45
|
+
static async getReportDefinitionSummaryDocById(firestore, companyId, docId) {
|
46
|
+
try {
|
47
|
+
let snapshot = await firestore.collection("Companies")
|
48
|
+
.doc(companyId)
|
49
|
+
.collection("Report-Definition-Summary")
|
50
|
+
.doc(docId)
|
51
|
+
.get();
|
52
|
+
return snapshot.data();
|
53
|
+
}
|
54
|
+
catch (error) {
|
55
|
+
throw new Error(error.message);
|
56
|
+
}
|
57
|
+
}
|
58
|
+
}
|
59
|
+
exports.ReportDefinitionSummary = ReportDefinitionSummary;
|
@@ -0,0 +1,46 @@
|
|
1
|
+
declare class ReportDetailData {
|
2
|
+
id: string;
|
3
|
+
url: string;
|
4
|
+
reportType: string;
|
5
|
+
halfPage: boolean;
|
6
|
+
fullPage: boolean;
|
7
|
+
pageSize: number;
|
8
|
+
nextPage: number;
|
9
|
+
totalItems: number;
|
10
|
+
data: [];
|
11
|
+
autoAPICalled: boolean;
|
12
|
+
showPrint: boolean;
|
13
|
+
showBarcode: boolean;
|
14
|
+
isSSL: boolean;
|
15
|
+
saveInPublicStorage: boolean;
|
16
|
+
keys: [];
|
17
|
+
order: number;
|
18
|
+
type: string;
|
19
|
+
static reportDataType: {
|
20
|
+
TILE: string;
|
21
|
+
TABLE: string;
|
22
|
+
PDF: string;
|
23
|
+
TEXT: string;
|
24
|
+
};
|
25
|
+
static reportDetailDataTemplate: {
|
26
|
+
id: string;
|
27
|
+
url: string;
|
28
|
+
loadingText: string;
|
29
|
+
reportType: string;
|
30
|
+
halfPage: boolean;
|
31
|
+
fullPage: boolean;
|
32
|
+
pageSize: number;
|
33
|
+
nextPage: number;
|
34
|
+
totalItems: number;
|
35
|
+
data: never[];
|
36
|
+
type: string;
|
37
|
+
autoAPICalled: boolean;
|
38
|
+
showPrint: boolean;
|
39
|
+
showBarcode: boolean;
|
40
|
+
isSSL: boolean;
|
41
|
+
saveInPublicStorage: boolean;
|
42
|
+
keys: never[];
|
43
|
+
order: number;
|
44
|
+
};
|
45
|
+
}
|
46
|
+
export { ReportDetailData };
|
@@ -0,0 +1,49 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.ReportDetailData = void 0;
|
4
|
+
class ReportDetailData {
|
5
|
+
id = "";
|
6
|
+
url = "";
|
7
|
+
reportType = "";
|
8
|
+
halfPage = true;
|
9
|
+
fullPage = false;
|
10
|
+
pageSize = 10;
|
11
|
+
nextPage = 1;
|
12
|
+
totalItems = 30;
|
13
|
+
data = [];
|
14
|
+
autoAPICalled = false;
|
15
|
+
showPrint = false;
|
16
|
+
showBarcode = false;
|
17
|
+
isSSL = true;
|
18
|
+
saveInPublicStorage = true;
|
19
|
+
keys = [];
|
20
|
+
order = 0;
|
21
|
+
type = "";
|
22
|
+
static reportDataType = {
|
23
|
+
TILE: "tile",
|
24
|
+
TABLE: "table",
|
25
|
+
PDF: "pdf",
|
26
|
+
TEXT: "text",
|
27
|
+
};
|
28
|
+
static reportDetailDataTemplate = {
|
29
|
+
id: "",
|
30
|
+
url: "",
|
31
|
+
loadingText: "",
|
32
|
+
reportType: "",
|
33
|
+
halfPage: true,
|
34
|
+
fullPage: false,
|
35
|
+
pageSize: 10,
|
36
|
+
nextPage: 1,
|
37
|
+
totalItems: 30,
|
38
|
+
data: [],
|
39
|
+
type: "tile",
|
40
|
+
autoAPICalled: false,
|
41
|
+
showPrint: false,
|
42
|
+
showBarcode: false,
|
43
|
+
isSSL: true,
|
44
|
+
saveInPublicStorage: true,
|
45
|
+
keys: [],
|
46
|
+
order: 0,
|
47
|
+
};
|
48
|
+
}
|
49
|
+
exports.ReportDetailData = ReportDetailData;
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import * as admin from 'firebase-admin';
|
2
|
+
declare class ReportVisibility {
|
3
|
+
static setReportVisibility(firestore: admin.firestore.Firestore, nickName: string, reportVisibilityData: any): Promise<string>;
|
4
|
+
static updateReportVisibility(firestore: admin.firestore.Firestore, arrayUnion: any, nickName: string, userId: string, reportVisibilityData: any): Promise<any>;
|
5
|
+
static getUserReportList(firestore: admin.firestore.Firestore, companyId: string, userId: string): Promise<admin.firestore.DocumentData | undefined>;
|
6
|
+
}
|
7
|
+
export { ReportVisibility };
|
@@ -0,0 +1,42 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.ReportVisibility = void 0;
|
4
|
+
const company_model_1 = require("./company.model");
|
5
|
+
class ReportVisibility {
|
6
|
+
static async setReportVisibility(firestore, nickName, reportVisibilityData) {
|
7
|
+
let companyId = await company_model_1.Company.getCompanyIdbyNickname(firestore, nickName);
|
8
|
+
let docRef = firestore
|
9
|
+
.collection("Companies")
|
10
|
+
.doc(companyId)
|
11
|
+
.collection("Report-Visibility")
|
12
|
+
.doc(reportVisibilityData.id);
|
13
|
+
docRef.set(reportVisibilityData);
|
14
|
+
return docRef.id;
|
15
|
+
}
|
16
|
+
static async updateReportVisibility(firestore, arrayUnion, nickName, userId, reportVisibilityData) {
|
17
|
+
let companyId = await company_model_1.Company.getCompanyIdbyNickname(firestore, nickName);
|
18
|
+
let docRef = await firestore.collection("Companies")
|
19
|
+
.doc(companyId)
|
20
|
+
.collection("Report-Visibility")
|
21
|
+
.doc(userId).get();
|
22
|
+
await docRef.ref.update({
|
23
|
+
"report-sections": arrayUnion(reportVisibilityData)
|
24
|
+
});
|
25
|
+
return docRef.data()?.id;
|
26
|
+
}
|
27
|
+
static async getUserReportList(firestore, companyId, userId) {
|
28
|
+
try {
|
29
|
+
let userReportSnapshot = await firestore.collection("Companies")
|
30
|
+
.doc(companyId)
|
31
|
+
.collection("Report-Visibility")
|
32
|
+
.doc(userId)
|
33
|
+
.get();
|
34
|
+
let userReportsList = userReportSnapshot.data();
|
35
|
+
return userReportsList;
|
36
|
+
}
|
37
|
+
catch (error) {
|
38
|
+
throw new Error(error.message);
|
39
|
+
}
|
40
|
+
}
|
41
|
+
}
|
42
|
+
exports.ReportVisibility = ReportVisibility;
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import { ReportDefinition } from "./report-definition.model";
|
2
|
+
import * as admin from "firebase-admin";
|
3
|
+
import { ReportActions } from "./report-actions.model";
|
4
|
+
import { Pool } from "mysql2";
|
5
|
+
declare class Report {
|
6
|
+
static addReport(firebase: admin.firestore.Firestore, companyId: string, report: ReportDefinition): Promise<ReportDefinition>;
|
7
|
+
static addReportAction(firestore: admin.firestore.Firestore, companyId: string, reportActionMap: ReportActions): Promise<ReportActions>;
|
8
|
+
static getReport(firestore: admin.firestore.Firestore, actionDBMap: Record<string, {
|
9
|
+
connection: Pool;
|
10
|
+
tableName: string;
|
11
|
+
}>, nickName: string, action: string, timeStamps: any, phone: string): Promise<any>;
|
12
|
+
static getCicoInfoForDay(firestore: admin.firestore.Firestore, userId: string, companyId: string, startTime: number): Promise<{
|
13
|
+
checkIn: string;
|
14
|
+
checkOut: string;
|
15
|
+
}>;
|
16
|
+
static getReportObjForUser(firestore: admin.firestore.Firestore, userId: any, companyId: string, action: string, timeStamps: any): Promise<any>;
|
17
|
+
static getReportObjForDay(reportObjects: any, startTime: number): Promise<any>;
|
18
|
+
}
|
19
|
+
export { Report };
|