def crear(self, form, form_persona, user_crea, sec_id): tticket = TTicket() persona_dao = TPersonaDao(self.dbsession) tticket.tk_nro = form['tk_nro'] tticket.tk_fechahora = datetime.now() per_id = form_persona['per_id'] if per_id is None or per_id == 0: per_id = persona_dao.crear(form_persona, permit_ciruc_null=True) else: persona_dao.actualizar(per_id, form_persona) tticket.tk_perid = per_id tticket.tk_observacion = form['tk_obs'] tticket.tk_usercrea = user_crea tticket.tk_costo = form['tk_costo'] tticket.tk_dia = fechas.parse_cadena(form['tk_dia']) tticket.tk_estado = 1 tticket.tk_servicios = form['tk_servicios'] tticket.sec_id = sec_id self.dbsession.add(tticket) self.dbsession.flush() return tticket.tk_id
def post(self): # per_id = self.get_request_matchdict('per_id') tpersonadao = TPersonaDao(self.dbsession) form = self.get_json_body() per_id_gen = tpersonadao.crear(form=form) return { 'status': 200, 'msg': u'Registrado exitosamente', 'per_id': per_id_gen }
def create_withpersonform(self, ev_id, person_form): tpersonadao = TPersonaDao(self.dbsession) tperson = tpersonadao.buscar_porciruc( per_ciruc=person_form['per_ciruc']) if tperson is not None: per_id = tperson['per_id'] else: per_id = tpersonadao.crear(person_form) self.crear(ev_id=ev_id, per_id=per_id)
def collection_get(self): accion = self.get_request_param('accion') if accion == 'buscaperevent': ev_id = self.get_request_param('ev_id') per_ciruc = self.get_request_param('ciruc') personadao = TPersonaDao(self.dbsession) person = personadao.buscar_porciruc(per_ciruc=per_ciruc) if person is not None: personaeventdao = TPersonaEventDao(self.dbsession) isregistered = personaeventdao.ya_esta_registrado(ev_id=ev_id, per_id=person['per_id']) return {'status': 200, 'registrado': isregistered} else: return {'status': 404}
def collection_get(self): accion = self.get_request_param('accion') ticket_dao = TTicketDao(self.dbsession) if 'form' == accion: persona_dao = TPersonaDao(self.dbsession) tk_dia = fechas.parse_fecha(datetime.now()) form = ticket_dao.get_form(tk_dia, self.get_sec_id()) formcli = persona_dao.getform() return {'status': 200, 'form': form, 'formcli': formcli} if 'servticktes' == accion: itemconfigdao = TItemConfigDao(self.dbsession) prods = itemconfigdao.get_prods_for_tickets() return {'status': 200, 'items': prods} if 'forml' == accion: return {'dia': fechas.parse_fecha(datetime.now())} if 'listar' == accion: res = ticket_dao.listar(dia=self.get_request_param('dia'), sec_id=self.get_sec_id()) return {'status': 200, 'res': res}
def put(self): per_id = self.get_request_matchdict('per_id') tpersonadao = TPersonaDao(self.dbsession) form = self.get_json_body() res = tpersonadao.actualizar(per_id=per_id, form=form) return {'status': 200, 'msg': u'Actualizado exitosamente'}
def collection_get(self): accion = self.get_request_param('accion') if 'form' == accion: tpersonadao = TPersonaDao(self.dbsession) form = tpersonadao.getform() return {'status': 200, 'form': form} elif 'buscaci' == accion: tpersonadao = TPersonaDao(self.dbsession) res = tpersonadao.buscar_porciruc( per_ciruc=self.get_request_param('ciruc')) if res is not None: return {'status': 200, 'persona': res} else: return {'status': 404} elif 'buscaemail' == accion: tpersonadao = TPersonaDao(self.dbsession) res = tpersonadao.buscar_poremail( per_ciruc=self.get_request_param('email')) if res is not None: return {'status': 200, 'persona': res} else: return {'status': 404} elif 'buscatipo' == accion: tpersonadao = TPersonaDao(self.dbsession) per_tipo = self.get_request_param('per_tipo') res = tpersonadao.listar_por_tipo(per_tipo) return {'status': 200, 'items': res} elif 'filtronomapel' == accion: filtro = self.get_request_param('filtro') tpersonadao = TPersonaDao(self.dbsession) res = tpersonadao.buscar_pornomapelci(filtro) return {'status': 200, 'items': res} elif 'filtropag' == accion: filtro = self.get_request_param('filtro') lastpage = self.get_request_param('pag') intlastpage = 0 try: intlastpage = int(lastpage) except Exception as ex: log.error('Error al parsear a int la pagina', ex) tpersonadao = TPersonaDao(self.dbsession) limit = 10 offset = intlastpage * limit items = tpersonadao.buscar_pornomapelci(filtro, solo_cedulas=True, limit=limit, offsset=offset) hasMore = items is not None and len(items) == limit return { 'status': 200, 'items': items, 'hasMore': hasMore, 'nextp': intlastpage + 1 }
def registrar(self, form, usercrea): # 1 regstro de datos del paciente form_paciente = form['paciente'] tpersonadao = TPersonaDao(self.dbsession) # Verificar si el paciente ya esta registrado: if tpersonadao.existe_ciruc(per_ciruc=form_paciente['per_ciruc']): per_id = form_paciente['per_id'] tpersonadao.actualizar(per_id=per_id, form=form_paciente) else: per_id = tpersonadao.crear(form=form_paciente) # 2 registro de la cita medica datosconsulta = form['datosconsulta'] #Verificar que se ingrese el motivo de la consulta if not cadenas.es_nonulo_novacio(datosconsulta['cosm_motivo']): raise ErrorValidacionExc(u"Debe ingresar el motivo de la consulta") tconsultamedica = TConsultaMedica() tconsultamedica.pac_id = per_id tconsultamedica.med_id = 0 # TODO: Se debe registrar tambien el codigo del medico al que se le va asignar la cita medica tconsultamedica.cosm_fechacita = datetime.now() tconsultamedica.cosm_fechacrea = datetime.now() tconsultamedica.cosm_motivo = datosconsulta['cosm_motivo'] tconsultamedica.cosm_enfermactual = datosconsulta['cosm_enfermactual'] tconsultamedica.cosm_hallazgoexamfis = datosconsulta[ 'cosm_hallazgoexamfis'] tconsultamedica.cosm_exmscompl = datosconsulta['cosm_exmscompl'] tconsultamedica.cosm_tratamiento = datosconsulta['cosm_tratamiento'] tconsultamedica.cosm_receta = datosconsulta['cosm_receta'] tconsultamedica.cosm_indicsreceta = datosconsulta['cosm_indicsreceta'] tconsultamedica.cosm_recomendaciones = datosconsulta[ 'cosm_recomendaciones'] if type(datosconsulta['cosm_diagnostico']) is dict: tconsultamedica.cosm_diagnostico = datosconsulta[ 'cosm_diagnostico']['cie_id'] else: tconsultamedica.cosm_diagnostico = datosconsulta[ 'cosm_diagnostico'] tconsultamedica.cosm_diagnosticoal = datosconsulta[ 'cosm_diagnosticoal'] if 'cosm_fechaproxcita' in datosconsulta: cosm_fechaproxcita = datosconsulta['cosm_fechaproxcita'] if cadenas.es_nonulo_novacio(cosm_fechaproxcita): cosm_fechaproxcita_parsed = fechas.parse_cadena( cosm_fechaproxcita) tconsultamedica.cosm_fechaproxcita = cosm_fechaproxcita_parsed tconsultamedica.user_crea = usercrea self.dbsession.add(tconsultamedica) self.dbsession.flush() cosm_id = tconsultamedica.cosm_id # 3 Registro de antecendentes: # Esto se registra como lista de valores antecedentes = form['antecedentes'] examsfisicos = form['examsfisicos'] revxsistemas = form['revxsistemas'] #diagnostico = form['diagnostico'] self.registra_datosadc_consmedica(cosm_id, antecedentes) self.registra_datosadc_consmedica(cosm_id, examsfisicos) self.registra_datosadc_consmedica(cosm_id, revxsistemas) #self.registra_datosadc_consmedica(cosm_id, diagnostico) return u"Registrado exitósamente", cosm_id