pub struct SqliteWorkOrderRepository { /* private fields */ }Available on crate feature
sqlite only.Expand description
SQLite implementation of WorkOrderRepository
Implementations§
Source§impl SqliteWorkOrderRepository
impl SqliteWorkOrderRepository
pub const fn new(pool: Pool<SqliteConnectionManager>) -> Self
Trait Implementations§
Source§impl Debug for SqliteWorkOrderRepository
impl Debug for SqliteWorkOrderRepository
Source§impl WorkOrderRepository for SqliteWorkOrderRepository
impl WorkOrderRepository for SqliteWorkOrderRepository
Source§fn get_by_number(&self, work_order_number: &str) -> Result<Option<WorkOrder>>
fn get_by_number(&self, work_order_number: &str) -> Result<Option<WorkOrder>>
Get work order by work order number
Source§fn list(&self, filter: WorkOrderFilter) -> Result<Vec<WorkOrder>>
fn list(&self, filter: WorkOrderFilter) -> Result<Vec<WorkOrder>>
List work orders with filter
Source§fn start(&self, id: Uuid) -> Result<WorkOrder>
fn start(&self, id: Uuid) -> Result<WorkOrder>
Start a work order (transitions from planned to
in_progress)Source§fn complete(&self, id: Uuid, quantity_completed: Decimal) -> Result<WorkOrder>
fn complete(&self, id: Uuid, quantity_completed: Decimal) -> Result<WorkOrder>
Complete a work order
Source§fn add_task(
&self,
work_order_id: Uuid,
task: CreateWorkOrderTask,
) -> Result<WorkOrderTask>
fn add_task( &self, work_order_id: Uuid, task: CreateWorkOrderTask, ) -> Result<WorkOrderTask>
Add task to work order
Source§fn update_task(
&self,
task_id: Uuid,
task: UpdateWorkOrderTask,
) -> Result<WorkOrderTask>
fn update_task( &self, task_id: Uuid, task: UpdateWorkOrderTask, ) -> Result<WorkOrderTask>
Update a task
Source§fn get_tasks(&self, work_order_id: Uuid) -> Result<Vec<WorkOrderTask>>
fn get_tasks(&self, work_order_id: Uuid) -> Result<Vec<WorkOrderTask>>
Get tasks for work order
Source§fn start_task(&self, task_id: Uuid) -> Result<WorkOrderTask>
fn start_task(&self, task_id: Uuid) -> Result<WorkOrderTask>
Start a task
Source§fn complete_task(
&self,
task_id: Uuid,
actual_hours: Option<Decimal>,
) -> Result<WorkOrderTask>
fn complete_task( &self, task_id: Uuid, actual_hours: Option<Decimal>, ) -> Result<WorkOrderTask>
Complete a task
Source§fn add_material(
&self,
work_order_id: Uuid,
material: AddWorkOrderMaterial,
) -> Result<WorkOrderMaterial>
fn add_material( &self, work_order_id: Uuid, material: AddWorkOrderMaterial, ) -> Result<WorkOrderMaterial>
Add material to work order
Source§fn consume_material(
&self,
material_id: Uuid,
quantity: Decimal,
) -> Result<WorkOrderMaterial>
fn consume_material( &self, material_id: Uuid, quantity: Decimal, ) -> Result<WorkOrderMaterial>
Consume material
Source§fn get_materials(&self, work_order_id: Uuid) -> Result<Vec<WorkOrderMaterial>>
fn get_materials(&self, work_order_id: Uuid) -> Result<Vec<WorkOrderMaterial>>
Get materials for work order
Source§fn create_batch(
&self,
inputs: Vec<CreateWorkOrder>,
) -> Result<BatchResult<WorkOrder>>
fn create_batch( &self, inputs: Vec<CreateWorkOrder>, ) -> Result<BatchResult<WorkOrder>>
Create multiple work orders - partial success allowed
Source§fn create_batch_atomic(
&self,
inputs: Vec<CreateWorkOrder>,
) -> Result<Vec<WorkOrder>>
fn create_batch_atomic( &self, inputs: Vec<CreateWorkOrder>, ) -> Result<Vec<WorkOrder>>
Create multiple work orders - atomic (all-or-nothing)
Source§fn update_batch(
&self,
updates: Vec<(Uuid, UpdateWorkOrder)>,
) -> Result<BatchResult<WorkOrder>>
fn update_batch( &self, updates: Vec<(Uuid, UpdateWorkOrder)>, ) -> Result<BatchResult<WorkOrder>>
Update multiple work orders - partial success allowed
Source§fn update_batch_atomic(
&self,
updates: Vec<(Uuid, UpdateWorkOrder)>,
) -> Result<Vec<WorkOrder>>
fn update_batch_atomic( &self, updates: Vec<(Uuid, UpdateWorkOrder)>, ) -> Result<Vec<WorkOrder>>
Update multiple work orders - atomic (all-or-nothing)
Source§fn delete_batch(&self, ids: Vec<Uuid>) -> Result<BatchResult<Uuid>>
fn delete_batch(&self, ids: Vec<Uuid>) -> Result<BatchResult<Uuid>>
Delete multiple work orders - partial success allowed
Auto Trait Implementations§
impl !RefUnwindSafe for SqliteWorkOrderRepository
impl !UnwindSafe for SqliteWorkOrderRepository
impl Freeze for SqliteWorkOrderRepository
impl Send for SqliteWorkOrderRepository
impl Sync for SqliteWorkOrderRepository
impl Unpin for SqliteWorkOrderRepository
impl UnsafeUnpin for SqliteWorkOrderRepository
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more