@spytecgps/nova-orm 0.0.194 → 0.0.195

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.
@@ -0,0 +1,5 @@
1
+ import { Task } from '../../entities';
2
+ import { NovaDataSource } from '../../novaDataSource';
3
+ import { Logger } from '../../types/logger';
4
+ import { CreateTaskParams } from '../../types/tasks';
5
+ export declare const createTask: (novaDataSource: NovaDataSource, params: CreateTaskParams, logger: Logger) => Promise<Task>;
@@ -1,5 +1,5 @@
1
- import { DeviceTask, TaskSchedule } from '../../entities';
2
- import { AddTaskScheduleDevicesParams, CreateTaskScheduleParams, DeleteTaskScheduleDevicesParams, DeleteTaskScheduleParams, GetDeviceTasksParams, GetTaskScheduleParams, GetTaskSchedulesParams, SetTaskScheduleDevicesParams, UpdateTaskScheduleParams } from '../../types/tasks';
1
+ import { DeviceTask, Task, TaskSchedule } from '../../entities';
2
+ import { AddTaskScheduleDevicesParams, CreateTaskParams, CreateTaskScheduleParams, DeleteTaskScheduleDevicesParams, DeleteTaskScheduleParams, GetDeviceTasksParams, GetTaskScheduleParams, GetTaskSchedulesParams, SetTaskScheduleDevicesParams, UpdateTaskScheduleParams } from '../../types/tasks';
3
3
  import { BaseRepository } from '../baseRepository';
4
4
  export declare class TasksRepository extends BaseRepository {
5
5
  /**
@@ -141,4 +141,21 @@ export declare class TasksRepository extends BaseRepository {
141
141
  * @returns Promise<boolean> whether the task schedule devices were deleted
142
142
  */
143
143
  deleteTaskScheduleDevices(params: DeleteTaskScheduleDevicesParams): Promise<boolean>;
144
+ /**
145
+ * Create a new task
146
+ * @param params params containing information to create task
147
+ * params.id: the ID, optional. If not provided, a new ID will be generated
148
+ * params.taskScheduleId: the task schedule ID, required
149
+ * params.imei: the IMEI, required
150
+ * params.clientId: the client ID, required
151
+ * params.startDate: the starting date, optional
152
+ * params.startingOdometer: the starting odometer, optional
153
+ * params.startingActiveHours: the starting active hours, optional
154
+ * One of the following is required:
155
+ * params.dueDate: the due date, required
156
+ * params.dueOdometer: the due odometer, required
157
+ * params.dueActiveHours: the due active hours, required
158
+ * @returns Promise<Task> the created task
159
+ */
160
+ createTask(params: CreateTaskParams): Promise<Task>;
144
161
  }
@@ -97,3 +97,15 @@ export interface DeleteTaskScheduleDevicesParams {
97
97
  taskScheduleId: number;
98
98
  imeis: string[];
99
99
  }
100
+ export interface CreateTaskParams {
101
+ id?: number;
102
+ taskScheduleId: number;
103
+ imei: string;
104
+ clientId: number;
105
+ dueDate?: Date;
106
+ dueOdometer?: number;
107
+ dueActiveHours?: number;
108
+ startDate?: Date;
109
+ startingOdometer?: number;
110
+ startingActiveHours?: number;
111
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spytecgps/nova-orm",
3
- "version": "0.0.194",
3
+ "version": "0.0.195",
4
4
  "description": "ORM with PlanetScale",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",