feat: work shifts planning

This commit is contained in:
2025-01-22 18:01:16 +04:00
parent 71332e4ebd
commit f62d2662d6
18 changed files with 575 additions and 49 deletions

View File

@@ -220,6 +220,7 @@ export type { GetDepartmentSectionsResponse } from './models/GetDepartmentSectio
export type { GetDepartmentsResponse } from './models/GetDepartmentsResponse';
export type { GetManagersResponse } from './models/GetManagersResponse';
export type { GetPaymentRecordsResponse } from './models/GetPaymentRecordsResponse';
export type { GetPlannedWorkShiftsResponse } from './models/GetPlannedWorkShiftsResponse';
export type { GetProductBarcodePdfRequest } from './models/GetProductBarcodePdfRequest';
export type { GetProductBarcodePdfResponse } from './models/GetProductBarcodePdfResponse';
export type { GetProductBarcodeRequest } from './models/GetProductBarcodeRequest';
@@ -234,6 +235,7 @@ export type { GetServiceKitSchema } from './models/GetServiceKitSchema';
export type { GetTimeTrackingRecordsRequest } from './models/GetTimeTrackingRecordsRequest';
export type { GetTimeTrackingRecordsResponse } from './models/GetTimeTrackingRecordsResponse';
export type { GetTransactionTagsResponse } from './models/GetTransactionTagsResponse';
export type { GetWorkShiftsPlanningDataRequest } from './models/GetWorkShiftsPlanningDataRequest';
export type { GetWorkShiftsResponse } from './models/GetWorkShiftsResponse';
export type { GroupBillRequestSchema } from './models/GroupBillRequestSchema';
export type { HTTPValidationError } from './models/HTTPValidationError';
@@ -257,6 +259,8 @@ export type { PayRateSchema } from './models/PayRateSchema';
export type { PayRateSchemaBase } from './models/PayRateSchemaBase';
export type { PayrollSchemeSchema } from './models/PayrollSchemeSchema';
export type { PermissionSchema } from './models/PermissionSchema';
export type { PlannedWorkShiftSchema } from './models/PlannedWorkShiftSchema';
export type { PlanningTableRow } from './models/PlanningTableRow';
export type { PositionSchema } from './models/PositionSchema';
export type { ProductAddBarcodeRequest } from './models/ProductAddBarcodeRequest';
export type { ProductAddBarcodeResponse } from './models/ProductAddBarcodeResponse';
@@ -332,6 +336,8 @@ export type { UpdateMarketplaceRequest } from './models/UpdateMarketplaceRequest
export type { UpdateMarketplaceResponse } from './models/UpdateMarketplaceResponse';
export type { UpdatePayRateRequest } from './models/UpdatePayRateRequest';
export type { UpdatePayRateResponse } from './models/UpdatePayRateResponse';
export type { UpdatePlanningWorkShiftRequest } from './models/UpdatePlanningWorkShiftRequest';
export type { UpdatePlanningWorkShiftResponse } from './models/UpdatePlanningWorkShiftResponse';
export type { UpdatePriceCategoryRequest } from './models/UpdatePriceCategoryRequest';
export type { UpdatePriceCategoryResponse } from './models/UpdatePriceCategoryResponse';
export type { UpdateResidualProductRequest } from './models/UpdateResidualProductRequest';
@@ -387,3 +393,4 @@ export { TimeTrackingService } from './services/TimeTrackingService';
export { TransactionService } from './services/TransactionService';
export { UserService } from './services/UserService';
export { WorkShiftsService } from './services/WorkShiftsService';
export { WorkShiftsPlanningService } from './services/WorkShiftsPlanningService';

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { PlanningTableRow } from './PlanningTableRow';
export type GetPlannedWorkShiftsResponse = {
shifts: Array<PlanningTableRow>;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type GetWorkShiftsPlanningDataRequest = {
dateFrom: string;
dateTo: string;
};

View File

@@ -0,0 +1,11 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { PositionSchema } from './PositionSchema';
export type PlannedWorkShiftSchema = {
id: number;
shiftDate: string;
positions: Array<PositionSchema>;
};

View File

@@ -0,0 +1,11 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { PlannedWorkShiftSchema } from './PlannedWorkShiftSchema';
import type { UserSchema } from './UserSchema';
export type PlanningTableRow = {
user: UserSchema;
shifts: Array<PlannedWorkShiftSchema>;
};

View File

@@ -0,0 +1,10 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type UpdatePlanningWorkShiftRequest = {
shiftDate: string;
positionKeys: Array<string>;
userId: number;
};

View File

@@ -0,0 +1,9 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type UpdatePlanningWorkShiftResponse = {
ok: boolean;
message: string;
};

View File

@@ -0,0 +1,53 @@
/* generated using openapi-typescript-codegen -- do not edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { GetPlannedWorkShiftsResponse } from '../models/GetPlannedWorkShiftsResponse';
import type { GetWorkShiftsPlanningDataRequest } from '../models/GetWorkShiftsPlanningDataRequest';
import type { UpdatePlanningWorkShiftRequest } from '../models/UpdatePlanningWorkShiftRequest';
import type { UpdatePlanningWorkShiftResponse } from '../models/UpdatePlanningWorkShiftResponse';
import type { CancelablePromise } from '../core/CancelablePromise';
import { OpenAPI } from '../core/OpenAPI';
import { request as __request } from '../core/request';
export class WorkShiftsPlanningService {
/**
* Get Work Shifts
* @returns GetPlannedWorkShiftsResponse Successful Response
* @throws ApiError
*/
public static getWorkShifts({
requestBody,
}: {
requestBody: GetWorkShiftsPlanningDataRequest,
}): CancelablePromise<GetPlannedWorkShiftsResponse> {
return __request(OpenAPI, {
method: 'POST',
url: '/work-shifts-planning/',
body: requestBody,
mediaType: 'application/json',
errors: {
422: `Validation Error`,
},
});
}
/**
* Update Work Shift
* @returns UpdatePlanningWorkShiftResponse Successful Response
* @throws ApiError
*/
public static updateWorkShift({
requestBody,
}: {
requestBody: UpdatePlanningWorkShiftRequest,
}): CancelablePromise<UpdatePlanningWorkShiftResponse> {
return __request(OpenAPI, {
method: 'POST',
url: '/work-shifts-planning/update',
body: requestBody,
mediaType: 'application/json',
errors: {
422: `Validation Error`,
},
});
}
}