pub struct SqlitePurchaseOrderRepository { /* private fields */ }Available on crate feature
sqlite only.Implementations§
Source§impl SqlitePurchaseOrderRepository
impl SqlitePurchaseOrderRepository
pub const fn new(pool: Pool<SqliteConnectionManager>) -> Self
Trait Implementations§
Source§impl PurchaseOrderRepository for SqlitePurchaseOrderRepository
impl PurchaseOrderRepository for SqlitePurchaseOrderRepository
Source§fn create_supplier(&self, input: CreateSupplier) -> Result<Supplier>
fn create_supplier(&self, input: CreateSupplier) -> Result<Supplier>
Create a new supplier
Source§fn update_supplier(&self, id: Uuid, input: UpdateSupplier) -> Result<Supplier>
fn update_supplier(&self, id: Uuid, input: UpdateSupplier) -> Result<Supplier>
Update a supplier
Source§fn list_suppliers(&self, filter: SupplierFilter) -> Result<Vec<Supplier>>
fn list_suppliers(&self, filter: SupplierFilter) -> Result<Vec<Supplier>>
List suppliers with filter
Source§fn create(&self, input: CreatePurchaseOrder) -> Result<PurchaseOrder>
fn create(&self, input: CreatePurchaseOrder) -> Result<PurchaseOrder>
Create a new purchase order
Source§fn get(&self, id: PurchaseOrderId) -> Result<Option<PurchaseOrder>>
fn get(&self, id: PurchaseOrderId) -> Result<Option<PurchaseOrder>>
Get purchase order by ID
Source§fn get_by_number(&self, po_number: &str) -> Result<Option<PurchaseOrder>>
fn get_by_number(&self, po_number: &str) -> Result<Option<PurchaseOrder>>
Get purchase order by PO number
Source§fn update(
&self,
id: PurchaseOrderId,
input: UpdatePurchaseOrder,
) -> Result<PurchaseOrder>
fn update( &self, id: PurchaseOrderId, input: UpdatePurchaseOrder, ) -> Result<PurchaseOrder>
Update a purchase order
Source§fn list(&self, filter: PurchaseOrderFilter) -> Result<Vec<PurchaseOrder>>
fn list(&self, filter: PurchaseOrderFilter) -> Result<Vec<PurchaseOrder>>
List purchase orders with filter
Source§fn for_supplier(&self, supplier_id: Uuid) -> Result<Vec<PurchaseOrder>>
fn for_supplier(&self, supplier_id: Uuid) -> Result<Vec<PurchaseOrder>>
Get purchase orders for a supplier
Source§fn submit_for_approval(&self, id: PurchaseOrderId) -> Result<PurchaseOrder>
fn submit_for_approval(&self, id: PurchaseOrderId) -> Result<PurchaseOrder>
Submit for approval
Source§fn approve(
&self,
id: PurchaseOrderId,
approved_by: &str,
) -> Result<PurchaseOrder>
fn approve( &self, id: PurchaseOrderId, approved_by: &str, ) -> Result<PurchaseOrder>
Approve purchase order
Source§fn send(&self, id: PurchaseOrderId) -> Result<PurchaseOrder>
fn send(&self, id: PurchaseOrderId) -> Result<PurchaseOrder>
Send to supplier
Source§fn acknowledge(
&self,
id: PurchaseOrderId,
supplier_reference: Option<&str>,
) -> Result<PurchaseOrder>
fn acknowledge( &self, id: PurchaseOrderId, supplier_reference: Option<&str>, ) -> Result<PurchaseOrder>
Mark as acknowledged by supplier
Source§fn hold(&self, id: PurchaseOrderId) -> Result<PurchaseOrder>
fn hold(&self, id: PurchaseOrderId) -> Result<PurchaseOrder>
Put on hold
Source§fn cancel(&self, id: PurchaseOrderId) -> Result<PurchaseOrder>
fn cancel(&self, id: PurchaseOrderId) -> Result<PurchaseOrder>
Cancel purchase order
Source§fn receive(
&self,
id: PurchaseOrderId,
items: ReceivePurchaseOrderItems,
) -> Result<PurchaseOrder>
fn receive( &self, id: PurchaseOrderId, items: ReceivePurchaseOrderItems, ) -> Result<PurchaseOrder>
Receive items on a purchase order
Source§fn complete(&self, id: PurchaseOrderId) -> Result<PurchaseOrder>
fn complete(&self, id: PurchaseOrderId) -> Result<PurchaseOrder>
Complete/close purchase order
Source§fn add_item(
&self,
po_id: PurchaseOrderId,
item: CreatePurchaseOrderItem,
) -> Result<PurchaseOrderItem>
fn add_item( &self, po_id: PurchaseOrderId, item: CreatePurchaseOrderItem, ) -> Result<PurchaseOrderItem>
Add item to purchase order
Source§fn update_item(
&self,
item_id: Uuid,
item: CreatePurchaseOrderItem,
) -> Result<PurchaseOrderItem>
fn update_item( &self, item_id: Uuid, item: CreatePurchaseOrderItem, ) -> Result<PurchaseOrderItem>
Update a PO item
Source§fn get_items(&self, po_id: PurchaseOrderId) -> Result<Vec<PurchaseOrderItem>>
fn get_items(&self, po_id: PurchaseOrderId) -> Result<Vec<PurchaseOrderItem>>
Get items for purchase order
Source§fn count(&self, filter: PurchaseOrderFilter) -> Result<u64>
fn count(&self, filter: PurchaseOrderFilter) -> Result<u64>
Count purchase orders matching filter
Source§fn count_suppliers(&self, filter: SupplierFilter) -> Result<u64>
fn count_suppliers(&self, filter: SupplierFilter) -> Result<u64>
Count suppliers matching filter
Source§fn create_batch(
&self,
inputs: Vec<CreatePurchaseOrder>,
) -> Result<BatchResult<PurchaseOrder>>
fn create_batch( &self, inputs: Vec<CreatePurchaseOrder>, ) -> Result<BatchResult<PurchaseOrder>>
Create multiple purchase orders - partial success allowed
Source§fn create_batch_atomic(
&self,
inputs: Vec<CreatePurchaseOrder>,
) -> Result<Vec<PurchaseOrder>>
fn create_batch_atomic( &self, inputs: Vec<CreatePurchaseOrder>, ) -> Result<Vec<PurchaseOrder>>
Create multiple purchase orders - atomic (all-or-nothing)
Source§fn update_batch(
&self,
updates: Vec<(PurchaseOrderId, UpdatePurchaseOrder)>,
) -> Result<BatchResult<PurchaseOrder>>
fn update_batch( &self, updates: Vec<(PurchaseOrderId, UpdatePurchaseOrder)>, ) -> Result<BatchResult<PurchaseOrder>>
Update multiple purchase orders - partial success allowed
Source§fn update_batch_atomic(
&self,
updates: Vec<(PurchaseOrderId, UpdatePurchaseOrder)>,
) -> Result<Vec<PurchaseOrder>>
fn update_batch_atomic( &self, updates: Vec<(PurchaseOrderId, UpdatePurchaseOrder)>, ) -> Result<Vec<PurchaseOrder>>
Update multiple purchase orders - atomic (all-or-nothing)
Source§fn delete_batch(
&self,
ids: Vec<PurchaseOrderId>,
) -> Result<BatchResult<PurchaseOrderId>>
fn delete_batch( &self, ids: Vec<PurchaseOrderId>, ) -> Result<BatchResult<PurchaseOrderId>>
Delete multiple purchase orders - partial success allowed
Source§fn delete_batch_atomic(&self, ids: Vec<PurchaseOrderId>) -> Result<()>
fn delete_batch_atomic(&self, ids: Vec<PurchaseOrderId>) -> Result<()>
Delete multiple purchase orders - atomic (all-or-nothing)
Source§fn get_batch(&self, ids: Vec<PurchaseOrderId>) -> Result<Vec<PurchaseOrder>>
fn get_batch(&self, ids: Vec<PurchaseOrderId>) -> Result<Vec<PurchaseOrder>>
Get multiple purchase orders by ID
Auto Trait Implementations§
impl !RefUnwindSafe for SqlitePurchaseOrderRepository
impl !UnwindSafe for SqlitePurchaseOrderRepository
impl Freeze for SqlitePurchaseOrderRepository
impl Send for SqlitePurchaseOrderRepository
impl Sync for SqlitePurchaseOrderRepository
impl Unpin for SqlitePurchaseOrderRepository
impl UnsafeUnpin for SqlitePurchaseOrderRepository
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