tabletcommand-location 2.2.0 → 2.2.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/build/index.js CHANGED
@@ -12,8 +12,8 @@ const types_1 = require("./types");
12
12
  Object.defineProperty(exports, "LocationKindType", { enumerable: true, get: function () { return types_1.LocationKindType; } });
13
13
  Object.defineProperty(exports, "LocationSource", { enumerable: true, get: function () { return types_1.LocationSource; } });
14
14
  Object.defineProperty(exports, "LocationVisibility", { enumerable: true, get: function () { return types_1.LocationVisibility; } });
15
- function lib(departmentModel, locationModel, cadVehicleModel) {
16
- const store = (0, store_1.default)(departmentModel, locationModel, cadVehicleModel);
15
+ function lib(departmentModel, locationModel, cadVehicleModel, deviceMappingModel) {
16
+ const store = (0, store_1.default)(departmentModel, locationModel, cadVehicleModel, deviceMappingModel);
17
17
  const location = (0, location_1.default)(store);
18
18
  // async function processVehicle(department: Partial<Department>, item: Partial<CADVehicle>) {
19
19
  // // await location.processVehicle()
@@ -35,6 +35,23 @@ function lib(departmentModel, locationModel, cadVehicleModel) {
35
35
  throw err;
36
36
  }
37
37
  }
38
+ async function processLocationsDeviceMapping(department, items) {
39
+ const atDate = new Date();
40
+ try {
41
+ if (lodash_1.default.isUndefined(items) || lodash_1.default.isNull(items)) {
42
+ return [];
43
+ }
44
+ if (lodash_1.default.isObject(items) && !lodash_1.default.isArray(items)) {
45
+ items = [items];
46
+ }
47
+ const result = await location.processItemsDeviceMappingGeotab(department, items, atDate);
48
+ return result;
49
+ }
50
+ catch (err) {
51
+ console.log("err processLocations: ", err);
52
+ throw err;
53
+ }
54
+ }
38
55
  // async function processLocationsOnly(department: Partial<Department>, items: Partial<Location>[] | null | undefined, agency: Partial<Agency>) {
39
56
  // try {
40
57
  // if (_.isUndefined(items) || _.isNull(items)) {
@@ -52,6 +69,7 @@ function lib(departmentModel, locationModel, cadVehicleModel) {
52
69
  return {
53
70
  // processVehicle,
54
71
  processLocations,
72
+ processLocationsDeviceMapping,
55
73
  // processLocationsOnly,
56
74
  };
57
75
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAwBA,kBAgDC;AAxED,0DAAwC;AACxC,oDAAkC;AAOlC,oDAAuB;AACvB,mCAKiB;AAIf,iGARA,wBAAgB,OAQA;AAEhB,+FARA,sBAAc,OAQA;AACd,mGARA,0BAAkB,OAQA;AAGpB,SAAgB,GAAG,CACjB,eAAgC,EAChC,aAA4B,EAC5B,eAAgC;IAEhC,MAAM,KAAK,GAAG,IAAA,eAAW,EAAC,eAAe,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC;IAC3E,MAAM,QAAQ,GAAG,IAAA,kBAAc,EAAC,KAAK,CAAC,CAAC;IACvC,8FAA8F;IAC9F,uCAAuC;IACvC,IAAI;IAEJ,KAAK,UAAU,gBAAgB,CAAC,UAA+B,EAAE,KAA2C;QAC1G,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,IAAI,gBAAC,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,gBAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5C,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,IAAI,gBAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3C,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YACtE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;YAC3C,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED,iJAAiJ;IACjJ,UAAU;IACV,qDAAqD;IACrD,mBAAmB;IACnB,QAAQ;IACR,oDAAoD;IACpD,yBAAyB;IACzB,QAAQ;IACR,sFAAsF;IACtF,qBAAqB;IACrB,oBAAoB;IACpB,iBAAiB;IACjB,MAAM;IACN,IAAI;IAEJ,OAAO;QACL,kBAAkB;QAClB,gBAAgB;QAChB,wBAAwB;KACzB,CAAC;AACJ,CAAC;AAED,kBAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAyBA,kBAmEC;AA5FD,0DAAwC;AACxC,oDAAkC;AAQlC,oDAAuB;AACvB,mCAKiB;AAIf,iGARA,wBAAgB,OAQA;AAEhB,+FARA,sBAAc,OAQA;AACd,mGARA,0BAAkB,OAQA;AAGpB,SAAgB,GAAG,CACjB,eAAgC,EAChC,aAA4B,EAC5B,eAAgC,EAChC,kBAAsC;IAEtC,MAAM,KAAK,GAAG,IAAA,eAAW,EAAC,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC;IAC/F,MAAM,QAAQ,GAAG,IAAA,kBAAc,EAAC,KAAK,CAAC,CAAC;IACvC,8FAA8F;IAC9F,uCAAuC;IACvC,IAAI;IAEJ,KAAK,UAAU,gBAAgB,CAAC,UAA+B,EAAE,KAA2C;QAC1G,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,IAAI,gBAAC,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,gBAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5C,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,IAAI,gBAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3C,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YACtE,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;YAC3C,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,UAAU,6BAA6B,CAAC,UAA+B,EAAE,KAA2C;QACvH,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,IAAI,gBAAC,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,gBAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5C,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,IAAI,gBAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3C,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,+BAA+B,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YACzF,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;YAC3C,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED,iJAAiJ;IACjJ,UAAU;IACV,qDAAqD;IACrD,mBAAmB;IACnB,QAAQ;IACR,oDAAoD;IACpD,yBAAyB;IACzB,QAAQ;IACR,sFAAsF;IACtF,qBAAqB;IACrB,oBAAoB;IACpB,iBAAiB;IACjB,MAAM;IACN,IAAI;IAEJ,OAAO;QACL,kBAAkB;QAClB,gBAAgB;QAChB,6BAA6B;QAC7B,wBAAwB;KACzB,CAAC;AACJ,CAAC;AAED,kBAAe,GAAG,CAAC"}
package/build/location.js CHANGED
@@ -9,7 +9,7 @@ const tabletcommand_backend_models_1 = require("tabletcommand-backend-models");
9
9
  const debug_1 = __importDefault(require("debug"));
10
10
  function location(store) {
11
11
  const debug = (0, debug_1.default)("tabletcommand-location:location");
12
- function decodeCADVehicleStatusToLocation(item, department, atDate) {
12
+ function decodeLocation(item, department, atDate) {
13
13
  let latitude = 0;
14
14
  let longitude = 0;
15
15
  if (lodash_1.default.isFinite(parseFloat(item.latitude.toString()))) {
@@ -74,6 +74,7 @@ function location(store) {
74
74
  session: userId,
75
75
  version: 2,
76
76
  shared: sharingEnabled,
77
+ sendToCAD: false,
77
78
  opAreaName,
78
79
  opAreaCode,
79
80
  state: deptState,
@@ -123,7 +124,7 @@ function location(store) {
123
124
  }
124
125
  async function processItems(department, items, atDate) {
125
126
  for (const item of items) {
126
- const decoded = decodeCADVehicleStatusToLocation(item, department, atDate);
127
+ const decoded = decodeLocation(item, department, atDate);
127
128
  debug(`processCADVehicleLocation item: ${JSON.stringify(item)} d:${JSON.stringify(department)} at: ${atDate.toISOString()}.`);
128
129
  if (!decoded.isValid) {
129
130
  return;
@@ -133,8 +134,10 @@ function location(store) {
133
134
  "627d718b8d6145748b30282b" // HMT (2 way comments, 1 way vehicles)
134
135
  ];
135
136
  const cadItem = await processVehicle(cadBidirectionalExceptions, item, department, atDate);
136
- if (lodash_1.default.isObject(cadItem) && lodash_1.default.isBoolean(cadItem.mapHidden)) {
137
- active = !cadItem.mapHidden;
137
+ if (lodash_1.default.isObject(cadItem)) {
138
+ if (lodash_1.default.isBoolean(cadItem.mapHidden)) {
139
+ active = !cadItem.mapHidden;
140
+ }
138
141
  }
139
142
  // TODO: add support for location .kindType
140
143
  decoded.cadAVL.active = active;
@@ -148,9 +151,53 @@ function location(store) {
148
151
  await store.updateLocation(decoded.cadAVL, atDate);
149
152
  }
150
153
  }
154
+ async function processItemsDeviceMappingGeotab(department, items, atDate) {
155
+ const departmentId = String(department._id);
156
+ for (const item of items) {
157
+ // TODO: may need to break decodeLocation out separately for device mapping, but works right now
158
+ const decoded = decodeLocation(item, department, atDate);
159
+ debug(`processItemsDeviceMappingGeotab item: ${JSON.stringify(item)} d:${JSON.stringify(department)} at: ${atDate.toISOString()}.`);
160
+ if (!decoded.isValid) {
161
+ return;
162
+ }
163
+ let active = true;
164
+ let locationToCAD = false;
165
+ const deviceMapping = await store.getDeviceMappingGeotab(item, departmentId);
166
+ if (lodash_1.default.isObject(deviceMapping)) {
167
+ if (lodash_1.default.isBoolean(deviceMapping.mapHidden)) {
168
+ active = !deviceMapping.mapHidden;
169
+ }
170
+ if (lodash_1.default.isBoolean(deviceMapping.locationToCAD)) {
171
+ locationToCAD = true;
172
+ }
173
+ if (lodash_1.default.isString(deviceMapping.mapId) && deviceMapping.mapId.trim() !== "") {
174
+ const radioName = deviceMapping.mapId;
175
+ const userId = `${radioName}-${item.vehicleId}`; // Fake user id radioName - vehicleId
176
+ decoded.cadAVL.username = radioName;
177
+ decoded.cadAVL.userId = userId;
178
+ }
179
+ }
180
+ // TODO: add support for location .kindType
181
+ decoded.cadAVL.active = active;
182
+ // Calculate .visibility after .active is set
183
+ const visibility = [
184
+ active ? tabletcommand_backend_models_1.LocationVisibility.Visible : tabletcommand_backend_models_1.LocationVisibility.Hidden,
185
+ ];
186
+ if (decoded.cadAVL.shared) {
187
+ visibility.push(tabletcommand_backend_models_1.LocationVisibility.Shared);
188
+ }
189
+ if (locationToCAD) {
190
+ decoded.cadAVL.sendToCAD = true;
191
+ visibility.push(tabletcommand_backend_models_1.LocationVisibility.CAD);
192
+ }
193
+ decoded.cadAVL.visibility = visibility;
194
+ await store.updateLocation(decoded.cadAVL, atDate);
195
+ }
196
+ }
151
197
  return {
152
198
  processVehicle,
153
199
  processItems,
200
+ processItemsDeviceMappingGeotab,
154
201
  };
155
202
  }
156
203
  exports.default = location;
@@ -1 +1 @@
1
- {"version":3,"file":"location.js","sourceRoot":"","sources":["../src/location.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"location.js","sourceRoot":"","sources":["../src/location.ts"],"names":[],"mappings":"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"}
package/build/store.js CHANGED
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.store = store;
7
7
  const debug_1 = __importDefault(require("debug"));
8
8
  const lodash_1 = __importDefault(require("lodash"));
9
- function store(departmentModel, locationModel, cadVehicleModel) {
9
+ function store(departmentModel, locationModel, cadVehicleModel, deviceMappingModel) {
10
10
  const debug = (0, debug_1.default)("tabletcommand-location:location:store");
11
11
  async function getVehicle(item, departmentId) {
12
12
  const query = {
@@ -15,6 +15,14 @@ function store(departmentModel, locationModel, cadVehicleModel) {
15
15
  };
16
16
  return cadVehicleModel.findOne(query).lean();
17
17
  }
18
+ async function getDeviceMappingGeotab(item, departmentId) {
19
+ const query = {
20
+ deviceId: item.vehicleId,
21
+ departmentId,
22
+ deviceType: "geotab",
23
+ };
24
+ return deviceMappingModel.findOne(query).lean();
25
+ }
18
26
  async function updateVehicle(item, departmentId) {
19
27
  const query = {
20
28
  departmentId,
@@ -31,7 +39,7 @@ function store(departmentModel, locationModel, cadVehicleModel) {
31
39
  // eslint-disable-next-line new-cap
32
40
  const modelItem = new locationModel(item);
33
41
  const query = {
34
- device_type: modelItem.device_type,
42
+ source: modelItem.source,
35
43
  departmentId: modelItem.departmentId,
36
44
  username: modelItem.username
37
45
  };
@@ -115,6 +123,7 @@ function store(departmentModel, locationModel, cadVehicleModel) {
115
123
  }
116
124
  return {
117
125
  getVehicle,
126
+ getDeviceMappingGeotab,
118
127
  updateVehicle,
119
128
  updateLocation,
120
129
  };
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":";;;;;AAYA,sBA0IC;AAtJD,kDAAgC;AAShC,oDAAuB;AAGvB,SAAgB,KAAK,CACnB,eAAgC,EAChC,aAA4B,EAC5B,eAAgC,EAChC,kBAAsC;IAEtC,MAAM,KAAK,GAAG,IAAA,eAAW,EAAC,uCAAuC,CAAC,CAAC;IAEnE,KAAK,UAAU,UAAU,CAAC,IAAqB,EAAE,YAAoB;QACnE,MAAM,KAAK,GAAG;YACZ,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,YAAY;SACb,CAAC;QACF,OAAO,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/C,CAAC;IAED,KAAK,UAAU,sBAAsB,CAAC,IAAqB,EAAE,YAAoB;QAC/E,MAAM,KAAK,GAAG;YACZ,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,YAAY;YACZ,UAAU,EAAE,QAAQ;SACrB,CAAC;QACF,OAAO,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;IAClD,CAAC;IAED,KAAK,UAAU,aAAa,CAAC,IAAyB,EAAE,YAAoB;QAC1E,MAAM,KAAK,GAAG;YACZ,YAAY;YACZ,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;QACF,MAAM,OAAO,GAAG;YACd,MAAM,EAAE,IAAI;YACZ,mBAAmB,EAAE,IAAI;YACzB,GAAG,EAAE,IAAI;SACV,CAAC;QACF,OAAO,MAAM,eAAe,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IAED,KAAK,UAAU,cAAc,CAAC,IAAuB,EAAE,MAAY;QACjE,mCAAmC;QACnC,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG;YACZ,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,YAAY,EAAE,SAAS,CAAC,YAAY;YACpC,QAAQ,EAAE,SAAS,CAAC,QAAQ;SAC7B,CAAC;QACF,KAAK,CAAC,qBAAqB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,EAA6B,CAAC;QAC3F,MAAM,SAAS,qBAAQ,MAAM,CAAE,CAAC;QAChC,IAAI,WAAW,GAAG,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACvD,KAAK,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACvD,IAAI,SAAS,CAAC,GAAG,EAAE,CAAC;YAClB,MAAM,aAAa,GAAG,qBAAqB,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;YAC5E,WAAW,GAAG,aAAa,CAAC;YAC5B,KAAK,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,kFAAkF;YAClF,mEAAmE;QACrE,CAAC;QACD,MAAM,aAAa,CAAC,SAAS,CAAC,KAAK,EAAE;YACnC,IAAI,EAAE,WAAW;SAClB,EAAE;YACD,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;IACL,CAAC;IAED,SAAS,iBAAiB,CAAC,SAAmB,EAAE,MAA+B;QAC7E,IAAI,CAAC,gBAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACxB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,qDAAqD;QACrD,MAAM,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;QACrC,MAAM,CAAC,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;QAC3C,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QACnC,MAAM,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;QACrC,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QACnC,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QACnC,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;QAC/B,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QACjC,MAAM,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;QACrC,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QACnC,MAAM,CAAC,eAAe,GAAG,SAAS,CAAC,eAAe,CAAC;QACnD,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QACjC,MAAM,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;QAErC,4BAA4B;QAC5B,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;QACzC,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;QACzC,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;QAE/B,SAAS;QACT,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QACjC,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QACjC,EAAE;QACF,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;QAEzC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,SAAS,qBAAqB,CAAC,cAAuC,EAAE,YAAqC,EAAE,MAAY;QACzH,IAAI,CAAC,gBAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YAChC,OAAO,YAAY,CAAC;QACtB,CAAC;QACD,MAAM,aAAa,GAA4B,EAAE,CAAC;QAClD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YACxD,4DAA4D;YAC5D,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAClE,4DAA4D;gBAC5D,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG;YAChB,QAAQ;YACR,YAAY;YACZ,YAAY;YACZ,aAAa;YACb,YAAY;YACZ,YAAY;YACZ,QAAQ;YACR,OAAO;YACP,UAAU;SACX,CAAC;QACF,IAAI,gBAAC,CAAC,YAAY,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,aAAa,CAAC,cAAc,GAAG,MAAM,CAAC;QACxC,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,OAAO;QACL,UAAU;QACV,sBAAsB;QACtB,aAAa;QACb,cAAc;KACf,CAAC;AACJ,CAAC;AACD,kBAAe,KAAK,CAAC"}
@@ -55,7 +55,7 @@ describe("location", () => {
55
55
  beforeEach(async () => {
56
56
  await mock.beforeEach();
57
57
  models = mock.getModels();
58
- store = (0, store_1.default)(models.Department, models.Location, models.CADVehicle);
58
+ store = (0, store_1.default)(models.Department, models.Location, models.CADVehicle, models.DeviceMapping);
59
59
  location = (0, location_1.default)(store);
60
60
  });
61
61
  afterEach(async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"location.js","sourceRoot":"","sources":["../../src/test/location.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AACxB,iBAAe;AACf,2EAA6D;AAC7D,qDAAoD;AACpD,kDAAgC;AAChC,2DAA6D;AAI7D,MAAM,MAAM,GAAG,cAAI,CAAC,MAAM,CAAC;AAC3B,IAAI,QAAwB,CAAC;AAC7B,IAAI,KAAkB,CAAC;AAEvB,MAAM,IAAI,GAAG,IAAA,cAAU,EAAC,YAAY,CAAC,CAAC;AACtC,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC;AACvC,IAAI,MAAqB,CAAC;AAE1B,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,MAAM,CAAC,KAAK,IAAI,EAAE;QAChB,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxB,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC1B,KAAK,GAAG,IAAA,eAAW,EACjB,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,UAAU,CAClB,CAAC;QACF,QAAQ,GAAG,IAAA,kBAAc,EAAC,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACtC,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;YACpF,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YAC1B,MAAM,UAAU,GAAG,cAAc,CAAC;YAClC,oBAAoB;YACpB,MAAM,KAAK,GAAG;gBACZ;oBACE,SAAS,EAAE,gBAAgB;oBAC3B,SAAS,EAAE,SAAS;oBACpB,SAAS,EAAE,SAAS;oBACpB,UAAU,EAAE,KAAK;oBACjB,QAAQ,EAAE,UAAU;oBACpB,SAAS,EAAE,WAAW;oBACtB,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE,CAAC;oBACR,eAAe,EAAE,WAAW;oBAC5B,mBAAmB,EAAE,aAAa;oBAClC,OAAO,EAAE,YAAY;iBACtB;gBACD;oBACE,SAAS,EAAE,gBAAgB;oBAC3B,SAAS,EAAE,SAAS;oBACpB,SAAS,EAAE,SAAS;oBACpB,UAAU,EAAE,MAAM;oBAClB,QAAQ,EAAE,UAAU;oBACpB,SAAS,EAAE,WAAW;oBACtB,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE,EAAE;oBACT,eAAe,EAAE,WAAW;oBAC5B,mBAAmB,EAAE,cAAc;oBACnC,OAAO,EAAE,YAAY;iBACtB;aAAiC,CAAC;YACrC,MAAM,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YACvD,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvD,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;YAC3D,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;YAC1E,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YACrD,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;YAC3E,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC1E,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACxC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC/C,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC/C,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC3C,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;;YACpF,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YAC1B,MAAM,UAAU,GAAG,cAAc,CAAC;YAClC,MAAM,KAAK,GAAG,CAAC;oBACb,SAAS,EAAE,gBAAgB;oBAC3B,SAAS,EAAE,SAAS;oBACpB,SAAS,EAAE,SAAS;oBACpB,UAAU,EAAE,KAAK;oBACjB,QAAQ,EAAE,QAAQ;oBAClB,SAAS,EAAE,CAAC,QAAQ;oBACpB,OAAO,EAAE,EAAE;oBACX,eAAe,EAAE,WAAW;oBAC5B,mBAAmB,EAAE,aAAa;oBAClC,OAAO,EAAE,YAAY;iBACtB,CAAiC,CAAC;YACnC,MAAM,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YACvD,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtD,MAAM,CAAC,KAAK,CAAC,MAAA,cAAc,CAAC,CAAC,CAAC,0CAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;YAC3D,MAAM,CAAC,KAAK,CAAC,MAAA,cAAc,CAAC,CAAC,CAAC,0CAAE,YAAY,EAAE,0BAA0B,CAAC,CAAC;YAC1E,MAAM,CAAC,KAAK,CAAC,MAAA,cAAc,CAAC,CAAC,CAAC,0CAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YACrD,MAAM,CAAC,KAAK,CAAC,MAAA,cAAc,CAAC,CAAC,CAAC,0CAAE,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;YAC3E,MAAM,CAAC,KAAK,CAAC,MAAA,cAAc,CAAC,CAAC,CAAC,0CAAE,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC1E,MAAM,CAAC,KAAK,CAAC,MAAA,cAAc,CAAC,CAAC,CAAC,0CAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjD,MAAM,CAAC,KAAK,CAAC,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,SAAS,EAAE,SAAS,CAAC,CAAC;YAC/C,MAAM,CAAC,KAAK,CAAC,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,SAAS,EAAE,SAAS,CAAC,CAAC;YAC/C,MAAM,CAAC,KAAK,CAAC,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YAC3C,mBAAmB;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"location.js","sourceRoot":"","sources":["../../src/test/location.ts"],"names":[],"mappings":"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"}
package/cspell.json CHANGED
@@ -17,6 +17,7 @@
17
17
  "expireat",
18
18
  "fdid",
19
19
  "flushall",
20
+ "geotab",
20
21
  "helloworld",
21
22
  "hgetall",
22
23
  "hincrby",
@@ -1,8 +1,9 @@
1
- import { DepartmentModel, LocationModel, CADVehicleModel, Department } from "tabletcommand-backend-models";
1
+ import { DepartmentModel, LocationModel, CADVehicleModel, DeviceMappingModel, Department } from "tabletcommand-backend-models";
2
2
  import { LocationKindType, LocationPayload, LocationSource, LocationVisibility } from "./types";
3
3
  export { LocationKindType, LocationPayload, LocationSource, LocationVisibility, };
4
- export declare function lib(departmentModel: DepartmentModel, locationModel: LocationModel, cadVehicleModel: CADVehicleModel): {
4
+ export declare function lib(departmentModel: DepartmentModel, locationModel: LocationModel, cadVehicleModel: CADVehicleModel, deviceMappingModel: DeviceMappingModel): {
5
5
  processLocations: (department: Partial<Department>, items: LocationPayload[] | null | undefined) => Promise<void | never[]>;
6
+ processLocationsDeviceMapping: (department: Partial<Department>, items: LocationPayload[] | null | undefined) => Promise<void | never[]>;
6
7
  };
7
8
  export default lib;
8
9
  export type LibModule = ReturnType<typeof lib>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,aAAa,EACb,eAAe,EACf,UAAU,EACX,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,kBAAkB,GACnB,CAAC;AAEF,wBAAgB,GAAG,CACjB,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe;mCAQY,OAAO,CAAC,UAAU,CAAC,SAAS,eAAe,EAAE,GAAG,IAAI,GAAG,SAAS;EAqC7G;AAED,eAAe,GAAG,CAAC;AACnB,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,eAAe,EACf,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,UAAU,EACX,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,kBAAkB,GACnB,CAAC;AAEF,wBAAgB,GAAG,CACjB,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,EAChC,kBAAkB,EAAE,kBAAkB;mCAQM,OAAO,CAAC,UAAU,CAAC,SAAS,eAAe,EAAE,GAAG,IAAI,GAAG,SAAS;gDAiBnD,OAAO,CAAC,UAAU,CAAC,SAAS,eAAe,EAAE,GAAG,IAAI,GAAG,SAAS;EAsC1H;AAED,eAAe,GAAG,CAAC;AACnB,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC"}
@@ -23,6 +23,7 @@ export declare function location(store: StoreModule): {
23
23
  __v: number;
24
24
  }) | null>;
25
25
  processItems: (department: Partial<Department>, items: LocationPayload[], atDate: Date) => Promise<void>;
26
+ processItemsDeviceMappingGeotab: (department: Partial<Department>, items: LocationPayload[], atDate: Date) => Promise<void>;
26
27
  };
27
28
  export default location;
28
29
  export type LocationModule = ReturnType<typeof location>;
@@ -1 +1 @@
1
- {"version":3,"file":"location.d.ts","sourceRoot":"","sources":["../src/location.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EAIX,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,eAAe,EAEhB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,wBAAgB,QAAQ,CAAC,KAAK,EAAE,WAAW;2CAgHW,MAAM,EAAE,QAAQ,eAAe,cAAc,OAAO,CAAC,UAAU,CAAC,UAAU,IAAI;;;;;;;;;;;;;;;;;;;;+BAqB1F,OAAO,CAAC,UAAU,CAAC,SAAS,eAAe,EAAE,UAAU,IAAI;EAoCpG;AAED,eAAe,QAAQ,CAAC;AACxB,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC"}
1
+ {"version":3,"file":"location.d.ts","sourceRoot":"","sources":["../src/location.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EAIX,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,eAAe,EAEhB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,wBAAgB,QAAQ,CAAC,KAAK,EAAE,WAAW;2CAiHW,MAAM,EAAE,QAAQ,eAAe,cAAc,OAAO,CAAC,UAAU,CAAC,UAAU,IAAI;;;;;;;;;;;;;;;;;;;;+BAqB1F,OAAO,CAAC,UAAU,CAAC,SAAS,eAAe,EAAE,UAAU,IAAI;kDAkCxC,OAAO,CAAC,UAAU,CAAC,SAAS,eAAe,EAAE,UAAU,IAAI;EAmDvH;AAED,eAAe,QAAQ,CAAC;AACxB,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
- import { DepartmentModel, Location, LocationModel, CADVehicleModel, CADVehicle } from "tabletcommand-backend-models";
1
+ import { DepartmentModel, Location, LocationModel, CADVehicleModel, CADVehicle, DeviceMappingModel } from "tabletcommand-backend-models";
2
2
  import { LocationPayload } from "./types";
3
- export declare function store(departmentModel: DepartmentModel, locationModel: LocationModel, cadVehicleModel: CADVehicleModel): {
3
+ export declare function store(departmentModel: DepartmentModel, locationModel: LocationModel, cadVehicleModel: CADVehicleModel, deviceMappingModel: DeviceMappingModel): {
4
4
  getVehicle: (item: LocationPayload, departmentId: string) => Promise<(import("mongoose").FlattenMaps<{
5
5
  uuid: string;
6
6
  departmentId: string;
@@ -21,6 +21,30 @@ export declare function store(departmentModel: DepartmentModel, locationModel: L
21
21
  } & {
22
22
  __v: number;
23
23
  }) | null>;
24
+ getDeviceMappingGeotab: (item: LocationPayload, departmentId: string) => Promise<(import("mongoose").FlattenMaps<{
25
+ _id: import("mongoose").Types.ObjectId;
26
+ departmentId: string;
27
+ userId: string;
28
+ deviceType: string;
29
+ mapId: string;
30
+ deviceId: string;
31
+ location: {
32
+ longitude: number;
33
+ latitude: number;
34
+ };
35
+ modified_unix_date: number;
36
+ modified: Date;
37
+ active: boolean;
38
+ remoteAddress: string;
39
+ uuid: string;
40
+ note: string;
41
+ mapHidden: boolean;
42
+ locationToCAD: boolean;
43
+ }> & Required<{
44
+ _id: import("mongoose").Types.ObjectId;
45
+ }> & {
46
+ __v: number;
47
+ }) | null>;
24
48
  updateVehicle: (item: Partial<CADVehicle>, departmentId: string) => Promise<(import("mongoose").Document<unknown, {}, CADVehicle, {}, {}> & CADVehicle & {
25
49
  _id: import("mongoose").Types.ObjectId;
26
50
  } & {
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,QAAQ,EACR,aAAa,EACb,eAAe,EACf,UAAU,EACX,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAkB,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1D,wBAAgB,KAAK,CACnB,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe;uBAIA,eAAe,gBAAgB,MAAM;;;;;;;;;;;;;;;;;;;;0BAQlC,OAAO,CAAC,UAAU,CAAC,gBAAgB,MAAM;;;;;2BAaxC,OAAO,CAAC,QAAQ,CAAC,UAAU,IAAI;EAmGpE;AACD,eAAe,KAAK,CAAC;AACrB,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AACA,OAAO,EACL,eAAe,EACf,QAAQ,EACR,aAAa,EACb,eAAe,EACf,UAAU,EACV,kBAAkB,EACnB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAkB,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1D,wBAAgB,KAAK,CACnB,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,EAChC,kBAAkB,EAAE,kBAAkB;uBAIN,eAAe,gBAAgB,MAAM;;;;;;;;;;;;;;;;;;;;mCAQzB,eAAe,gBAAgB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;0BAS9C,OAAO,CAAC,UAAU,CAAC,gBAAgB,MAAM;;;;;2BAaxC,OAAO,CAAC,QAAQ,CAAC,UAAU,IAAI;EAoGpE;AACD,eAAe,KAAK,CAAC;AACrB,MAAM,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tabletcommand-location",
3
- "version": "2.2.0",
3
+ "version": "2.2.1",
4
4
  "description": "Tablet Command Location",
5
5
  "main": "build/index.js",
6
6
  "scripts": {
package/src/index.ts CHANGED
@@ -4,6 +4,7 @@ import {
4
4
  DepartmentModel,
5
5
  LocationModel,
6
6
  CADVehicleModel,
7
+ DeviceMappingModel,
7
8
  Department,
8
9
  } from "tabletcommand-backend-models";
9
10
  import _ from "lodash";
@@ -25,9 +26,10 @@ export {
25
26
  export function lib(
26
27
  departmentModel: DepartmentModel,
27
28
  locationModel: LocationModel,
28
- cadVehicleModel: CADVehicleModel
29
+ cadVehicleModel: CADVehicleModel,
30
+ deviceMappingModel: DeviceMappingModel
29
31
  ) {
30
- const store = storeModule(departmentModel, locationModel, cadVehicleModel);
32
+ const store = storeModule(departmentModel, locationModel, cadVehicleModel, deviceMappingModel);
31
33
  const location = locationModule(store);
32
34
  // async function processVehicle(department: Partial<Department>, item: Partial<CADVehicle>) {
33
35
  // // await location.processVehicle()
@@ -50,6 +52,23 @@ export function lib(
50
52
  }
51
53
  }
52
54
 
55
+ async function processLocationsDeviceMapping(department: Partial<Department>, items: LocationPayload[] | null | undefined) {
56
+ const atDate = new Date();
57
+ try {
58
+ if (_.isUndefined(items) || _.isNull(items)) {
59
+ return [];
60
+ }
61
+ if (_.isObject(items) && !_.isArray(items)) {
62
+ items = [items];
63
+ }
64
+ const result = await location.processItemsDeviceMappingGeotab(department, items, atDate);
65
+ return result;
66
+ } catch (err) {
67
+ console.log("err processLocations: ", err);
68
+ throw err;
69
+ }
70
+ }
71
+
53
72
  // async function processLocationsOnly(department: Partial<Department>, items: Partial<Location>[] | null | undefined, agency: Partial<Agency>) {
54
73
  // try {
55
74
  // if (_.isUndefined(items) || _.isNull(items)) {
@@ -68,6 +87,7 @@ export function lib(
68
87
  return {
69
88
  // processVehicle,
70
89
  processLocations,
90
+ processLocationsDeviceMapping,
71
91
  // processLocationsOnly,
72
92
  };
73
93
  }
package/src/location.ts CHANGED
@@ -15,7 +15,7 @@ import { StoreModule } from "./store";
15
15
  export function location(store: StoreModule) {
16
16
  const debug = debugModule("tabletcommand-location:location");
17
17
 
18
- function decodeCADVehicleStatusToLocation(item: LocationPayload, department: Partial<Department>, atDate: Date): DecodedLocation {
18
+ function decodeLocation(item: LocationPayload, department: Partial<Department>, atDate: Date): DecodedLocation {
19
19
  let latitude = 0;
20
20
  let longitude = 0;
21
21
 
@@ -91,6 +91,7 @@ export function location(store: StoreModule) {
91
91
  session: userId,
92
92
  version: 2,
93
93
  shared: sharingEnabled,
94
+ sendToCAD: false,
94
95
  opAreaName,
95
96
  opAreaCode,
96
97
  state: deptState,
@@ -147,7 +148,7 @@ export function location(store: StoreModule) {
147
148
 
148
149
  async function processItems(department: Partial<Department>, items: LocationPayload[], atDate: Date) {
149
150
  for (const item of items) {
150
- const decoded = decodeCADVehicleStatusToLocation(item, department, atDate);
151
+ const decoded = decodeLocation(item, department, atDate);
151
152
  debug(`processCADVehicleLocation item: ${JSON.stringify(item)} d:${JSON.stringify(department)} at: ${atDate.toISOString()}.`);
152
153
  if (!decoded.isValid) {
153
154
  return;
@@ -160,8 +161,10 @@ export function location(store: StoreModule) {
160
161
 
161
162
  const cadItem = await processVehicle(cadBidirectionalExceptions, item, department, atDate);
162
163
 
163
- if (_.isObject(cadItem) && _.isBoolean(cadItem.mapHidden)) {
164
- active = !cadItem.mapHidden;
164
+ if (_.isObject(cadItem)) {
165
+ if (_.isBoolean(cadItem.mapHidden)) {
166
+ active = !cadItem.mapHidden;
167
+ }
165
168
  }
166
169
  // TODO: add support for location .kindType
167
170
 
@@ -177,9 +180,56 @@ export function location(store: StoreModule) {
177
180
  }
178
181
  }
179
182
 
183
+ async function processItemsDeviceMappingGeotab(department: Partial<Department>, items: LocationPayload[], atDate: Date) {
184
+ const departmentId = String(department._id);
185
+ for (const item of items) {
186
+ // TODO: may need to break decodeLocation out separately for device mapping, but works right now
187
+ const decoded = decodeLocation(item, department, atDate);
188
+ debug(`processItemsDeviceMappingGeotab item: ${JSON.stringify(item)} d:${JSON.stringify(department)} at: ${atDate.toISOString()}.`);
189
+ if (!decoded.isValid) {
190
+ return;
191
+ }
192
+
193
+ let active = true;
194
+ let locationToCAD = false;
195
+ const deviceMapping = await store.getDeviceMappingGeotab(item, departmentId);
196
+
197
+ if (_.isObject(deviceMapping)) {
198
+ if (_.isBoolean(deviceMapping.mapHidden)) {
199
+ active = !deviceMapping.mapHidden;
200
+ }
201
+ if (_.isBoolean(deviceMapping.locationToCAD)) {
202
+ locationToCAD = true;
203
+ }
204
+ if (_.isString(deviceMapping.mapId) && deviceMapping.mapId.trim() !== "") {
205
+ const radioName = deviceMapping.mapId;
206
+ const userId = `${radioName}-${item.vehicleId}`; // Fake user id radioName - vehicleId
207
+ decoded.cadAVL.username = radioName;
208
+ decoded.cadAVL.userId = userId;
209
+ }
210
+ }
211
+ // TODO: add support for location .kindType
212
+ decoded.cadAVL.active = active;
213
+ // Calculate .visibility after .active is set
214
+ const visibility: LocationVisibility[] = [
215
+ active ? LocationVisibility.Visible : LocationVisibility.Hidden,
216
+ ];
217
+ if (decoded.cadAVL.shared) {
218
+ visibility.push(LocationVisibility.Shared);
219
+ }
220
+ if (locationToCAD) {
221
+ decoded.cadAVL.sendToCAD = true;
222
+ visibility.push(LocationVisibility.CAD);
223
+ }
224
+ decoded.cadAVL.visibility = visibility;
225
+ await store.updateLocation(decoded.cadAVL, atDate);
226
+ }
227
+ }
228
+
180
229
  return {
181
230
  processVehicle,
182
231
  processItems,
232
+ processItemsDeviceMappingGeotab,
183
233
  };
184
234
  }
185
235
 
package/src/store.ts CHANGED
@@ -5,6 +5,7 @@ import {
5
5
  LocationModel,
6
6
  CADVehicleModel,
7
7
  CADVehicle,
8
+ DeviceMappingModel,
8
9
  } from "tabletcommand-backend-models";
9
10
  import _ from "lodash";
10
11
  import { LocationObject, LocationPayload } from "./types";
@@ -12,7 +13,8 @@ import { LocationObject, LocationPayload } from "./types";
12
13
  export function store(
13
14
  departmentModel: DepartmentModel,
14
15
  locationModel: LocationModel,
15
- cadVehicleModel: CADVehicleModel
16
+ cadVehicleModel: CADVehicleModel,
17
+ deviceMappingModel: DeviceMappingModel
16
18
  ) {
17
19
  const debug = debugModule("tabletcommand-location:location:store");
18
20
 
@@ -24,6 +26,15 @@ export function store(
24
26
  return cadVehicleModel.findOne(query).lean();
25
27
  }
26
28
 
29
+ async function getDeviceMappingGeotab(item: LocationPayload, departmentId: string) {
30
+ const query = {
31
+ deviceId: item.vehicleId,
32
+ departmentId,
33
+ deviceType: "geotab",
34
+ };
35
+ return deviceMappingModel.findOne(query).lean();
36
+ }
37
+
27
38
  async function updateVehicle(item: Partial<CADVehicle>, departmentId: string) {
28
39
  const query = {
29
40
  departmentId,
@@ -41,7 +52,7 @@ export function store(
41
52
  // eslint-disable-next-line new-cap
42
53
  const modelItem = new locationModel(item);
43
54
  const query = {
44
- device_type: modelItem.device_type,
55
+ source: modelItem.source,
45
56
  departmentId: modelItem.departmentId,
46
57
  username: modelItem.username
47
58
  };
@@ -133,6 +144,7 @@ export function store(
133
144
 
134
145
  return {
135
146
  getVehicle,
147
+ getDeviceMappingGeotab,
136
148
  updateVehicle,
137
149
  updateLocation,
138
150
  };
@@ -26,7 +26,8 @@ describe("location", () => {
26
26
  store = storeModule(
27
27
  models.Department,
28
28
  models.Location,
29
- models.CADVehicle
29
+ models.CADVehicle,
30
+ models.DeviceMapping
30
31
  );
31
32
  location = locationModule(store);
32
33
  });