Source code for pos

# Part of NHClinical. See LICENSE file for full copyright and licensing details
# -*- coding: utf-8 -*-
"""
Defines POS class and extends Odoo's res_company.
"""
import logging

from openerp.osv import orm, fields


_logger = logging.getLogger(__name__)


[docs]class nh_clinical_pos(orm.Model): """ Represents clinical point of service. """ _name = 'nh.clinical.pos' _columns = { 'name': fields.char('Point of Service', size=100, required=True, select=True), 'code': fields.char('Code', size=256), 'location_id': fields.many2one('nh.clinical.location', 'POS Location', required=True), 'company_id': fields.many2one('res.company', 'Company'), 'lot_admission_id': fields.many2one('nh.clinical.location', 'Admission Location'), 'lot_discharge_id': fields.many2one('nh.clinical.location', 'Discharge Location'), } _sql_constraints = [ ('pos_code_uniq', 'unique(code)', 'The code for a location must be unique!') ]
[docs]class res_company(orm.Model): """ Extends Odoo's :class:`res_company<openerp.addons.base.res.res_company.res_company>` to include one-to-many point of service (pos) field. See :class:`nh_clinical_pos`. """ _name = 'res.company' _inherit = 'res.company' _columns = { 'pos_ids': fields.one2many('nh.clinical.pos', 'company_id', 'Points of Service'), }