Add model for datasync changes queue table
just in case it's there, for use w/ datasync watcher
This commit is contained in:
parent
2d61903cf7
commit
a0efa1a967
|
@ -21,12 +21,9 @@
|
||||||
#
|
#
|
||||||
################################################################################
|
################################################################################
|
||||||
"""
|
"""
|
||||||
CORE POS Data Model
|
Data model for CORE POS "office_op" DB
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from __future__ import unicode_literals, absolute_import
|
|
||||||
|
|
||||||
import six
|
|
||||||
import sqlalchemy as sa
|
import sqlalchemy as sa
|
||||||
from sqlalchemy import orm
|
from sqlalchemy import orm
|
||||||
from sqlalchemy.ext.declarative import declarative_base
|
from sqlalchemy.ext.declarative import declarative_base
|
||||||
|
@ -36,7 +33,23 @@ from sqlalchemy.ext.associationproxy import association_proxy
|
||||||
Base = declarative_base()
|
Base = declarative_base()
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
class Change(Base):
|
||||||
|
"""
|
||||||
|
Represents a changed (or deleted) record, which is pending synchronization
|
||||||
|
to another system(s).
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
This table may or may not be installed to a given CORE Office Op DB. Its
|
||||||
|
presence is required if Rattail datasync needs to "watch" the DB.
|
||||||
|
"""
|
||||||
|
__tablename__ = 'datasync_changes'
|
||||||
|
|
||||||
|
id = sa.Column(sa.Integer(), nullable=False, primary_key=True)
|
||||||
|
object_type = sa.Column(sa.String(length=255), nullable=False)
|
||||||
|
object_key = sa.Column(sa.String(length=255), nullable=False)
|
||||||
|
deleted = sa.Column(sa.Boolean(), nullable=False, default=False)
|
||||||
|
|
||||||
|
|
||||||
class Parameter(Base):
|
class Parameter(Base):
|
||||||
"""
|
"""
|
||||||
Represents a "parameter" value.
|
Represents a "parameter" value.
|
||||||
|
@ -57,7 +70,6 @@ class Parameter(Base):
|
||||||
return "{}-{} {}".format(self.store_id, self.lane_id, self.param_key)
|
return "{}-{} {}".format(self.store_id, self.lane_id, self.param_key)
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
|
||||||
class Department(Base):
|
class Department(Base):
|
||||||
"""
|
"""
|
||||||
Represents a department within the organization.
|
Represents a department within the organization.
|
||||||
|
@ -95,7 +107,6 @@ class Department(Base):
|
||||||
return self.name or ''
|
return self.name or ''
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
|
||||||
class Subdepartment(Base):
|
class Subdepartment(Base):
|
||||||
"""
|
"""
|
||||||
Represents a subdepartment within the organization.
|
Represents a subdepartment within the organization.
|
||||||
|
@ -120,7 +131,6 @@ class Subdepartment(Base):
|
||||||
return self.name or ''
|
return self.name or ''
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
|
||||||
class Vendor(Base):
|
class Vendor(Base):
|
||||||
"""
|
"""
|
||||||
Represents a vendor from which product may be purchased.
|
Represents a vendor from which product may be purchased.
|
||||||
|
@ -184,7 +194,6 @@ class VendorContact(Base):
|
||||||
notes = sa.Column(sa.Text(), nullable=True)
|
notes = sa.Column(sa.Text(), nullable=True)
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
|
||||||
class Product(Base):
|
class Product(Base):
|
||||||
"""
|
"""
|
||||||
Represents a product, purchased and/or sold by the organization.
|
Represents a product, purchased and/or sold by the organization.
|
||||||
|
@ -303,7 +312,6 @@ class Product(Base):
|
||||||
return self.description or ''
|
return self.description or ''
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
|
||||||
class ProductFlag(Base):
|
class ProductFlag(Base):
|
||||||
"""
|
"""
|
||||||
Represents a product flag attribute.
|
Represents a product flag attribute.
|
||||||
|
@ -320,7 +328,6 @@ class ProductFlag(Base):
|
||||||
return self.description or ''
|
return self.description or ''
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
|
||||||
class Employee(Base):
|
class Employee(Base):
|
||||||
"""
|
"""
|
||||||
Represents an employee within the organization.
|
Represents an employee within the organization.
|
||||||
|
@ -351,7 +358,6 @@ class Employee(Base):
|
||||||
return ' '.join([self.first_name or '', self.last_name or '']).strip()
|
return ' '.join([self.first_name or '', self.last_name or '']).strip()
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
|
||||||
class MemberType(Base):
|
class MemberType(Base):
|
||||||
"""
|
"""
|
||||||
Represents a type of membership within the organization.
|
Represents a type of membership within the organization.
|
||||||
|
@ -378,7 +384,6 @@ class MemberType(Base):
|
||||||
return self.description or ""
|
return self.description or ""
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
|
||||||
class Customer(Base):
|
class Customer(Base):
|
||||||
"""
|
"""
|
||||||
Represents a customer of the organization.
|
Represents a customer of the organization.
|
||||||
|
@ -452,7 +457,6 @@ class Customer(Base):
|
||||||
return "{} {}".format(self.first_name or '', self.last_name or '').strip()
|
return "{} {}".format(self.first_name or '', self.last_name or '').strip()
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
|
||||||
class MemberInfo(Base):
|
class MemberInfo(Base):
|
||||||
"""
|
"""
|
||||||
Contact info regarding a member of the organization.
|
Contact info regarding a member of the organization.
|
||||||
|
@ -517,7 +521,6 @@ class MemberInfo(Base):
|
||||||
return self.full_name
|
return self.full_name
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
|
||||||
class MemberDate(Base):
|
class MemberDate(Base):
|
||||||
"""
|
"""
|
||||||
Join/exit dates for members
|
Join/exit dates for members
|
||||||
|
@ -536,7 +539,6 @@ class MemberDate(Base):
|
||||||
self.end_date.date() if self.end_date else "??")
|
self.end_date.date() if self.end_date else "??")
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
|
||||||
class MemberContact(Base):
|
class MemberContact(Base):
|
||||||
"""
|
"""
|
||||||
Contact preferences for members
|
Contact preferences for members
|
||||||
|
@ -566,7 +568,6 @@ class MemberContact(Base):
|
||||||
return str(self.preference)
|
return str(self.preference)
|
||||||
|
|
||||||
|
|
||||||
@six.python_2_unicode_compatible
|
|
||||||
class HouseCoupon(Base):
|
class HouseCoupon(Base):
|
||||||
"""
|
"""
|
||||||
Represents a "house" (store) coupon.
|
Represents a "house" (store) coupon.
|
||||||
|
|
Loading…
Reference in a new issue