def do_work(): context = zmq.Context() receiver = context.socket(zmq.SUB) receiver.connect('tcp://localhost:{}'.format(ZEROMQ_PORT)) receiver.setsockopt(zmq.SUBSCRIBE, '') externalapi = ExternalApi('http://45.55.88.99:99/api/', 'nota', 'yu', 'yu') print 'worker ready' while True: s = receiver.recv_pyobj() if s.command == Command.SAVE: with open(s.path) as f: data = json_loads(f.read()) options = InvoiceOptions() options.incrementar_codigo = False options.revisar_producto = False options.crear_cliente = True data['options'] = options del data.timestamp serialized = json_dumps(data.serialize()) codigo = externalapi.save(serialized).json()['codigo'] with sessionmanager as session: session.query(NPedidoTemporal).filter_by( id=s.uid).update({ NPedidoTemporal.status: 'uploaded', NPedidoTemporal.external_id: codigo}) session.flush() elif s.command == Command.COMMIT: t = Invoice(InvMetadata, []) with sessionmanager as session: temp = session.query(NPedidoTemporal).filter_by(id=s.uid).first() if temp.external_id is not None: t.meta.uid = temp.external_id externalapi.commit(t)
def write_inv_json(inv): options = InvoiceOptions() options.no_alm_id = True options.usar_decimal = True inv_data = inv.serialize() inv_data['options'] = options inv_str = json_dumps(inv_data) fname = os.path.join(JSON_DIR, inv.meta.codigo + '.json') with open(fname, 'w') as f: f.write(inv_str) print >> sys.stderr, ('escrito en el disco')
def write_inv_json(inv): options = InvoiceOptions() options.no_alm_id = True options.usar_decimal = True inv_data = inv.serialize() inv_data['options'] = options inv_str = json_dumps(inv_data) fname = os.path.join(JSON_DIR, inv.meta.codigo + '.json') with open(fname, 'w') as f: f.write(inv_str) print >>sys.stderr, ('escrito en el disco')
def do_work(): context = zmq.Context() receiver = context.socket(zmq.SUB) receiver.connect('tcp://localhost:{}'.format(ZEROMQ_PORT)) receiver.setsockopt(zmq.SUBSCRIBE, '') externalapi = ExternalApi('http://45.55.88.99:99/api/', 'nota', 'yu', 'yu') print 'worker ready' while True: s = receiver.recv_pyobj() if s.command == Command.SAVE: with open(s.path) as f: data = json_loads(f.read()) options = InvoiceOptions() options.incrementar_codigo = False options.revisar_producto = False options.crear_cliente = True data['options'] = options del data.timestamp serialized = json_dumps(data.serialize()) codigo = externalapi.save(serialized).json()['codigo'] with sessionmanager as session: session.query(NPedidoTemporal).filter_by(id=s.uid).update({ NPedidoTemporal.status: 'uploaded', NPedidoTemporal.external_id: codigo }) session.flush() elif s.command == Command.COMMIT: t = Invoice(InvMetadata, []) with sessionmanager as session: temp = session.query(NPedidoTemporal).filter_by( id=s.uid).first() if temp.external_id is not None: t.meta.uid = temp.external_id externalapi.commit(t)