NAME
App::Dochazka::REST::Model::Lock - lock data model
SYNOPSIS
use App::Dochazka::REST::Model::Lock;
...
DESCRIPTION
A description of the lock data model follows.
Locks in the database
CREATE TABLE locks (
lid serial PRIMARY KEY,
eid integer REFERENCES Employees (EID),
intvl tsrange NOT NULL,
remark text
)
There is also a stored procedure, fully_locked
, that takes an EID and a tsrange, and returns a boolean value indicating whether or not that period is fully locked for the given employee.
Locks in the Perl API
# FIXME: MISSING VERBIAGE
EXPORTS
This module provides the following exports:
METHODS
load_by_lid
Instance method. Given an LID, loads a single lock into the object, rewriting whatever was there before. Returns a status object.
insert
Instance method. Attempts to INSERT a record. Field values are taken from the object. Returns a status object.
update
Instance method. Attempts to UPDATE a record. Field values are taken from the object. Returns a status object.
delete
Instance method. Attempts to DELETE a record. Field values are taken from the object. Returns a status object.
FUNCTIONS
lid_exists
Boolean
fetch_locks_by_eid_and_tsrange
Given a DBIx::Connector object, an EID, and a tsrange, returns a status object. Upon successfully finding one or more locks, the payload will be an ARRAYREF of lock records.
count_locks_in_tsrange
Given a DBIx::Connector object, an EID, and a tsrange, returns a status object. If the level is OK, the payload can be expected to contain an integer representing the number of locks that overlap (contain points in common) with this tsrange.
AUTHOR
Nathan Cutler, <presnypreklad@gmail.com>