Ejemplo n.º 1
0
    def update_nomapel(self, id_user, nomapel, user_name, roles):
        """
        Actualiza el nombre del usuario
        :param id_user:
        :param us_nomapel:
        :return:
        """

        if not cadenas.es_nonulo_novacio(nomapel):
            raise ErrorValidacionExc(
                "Debe ingresar los apellidos y nombres del usuario")

        if not cadenas.es_nonulo_novacio(user_name):
            raise ErrorValidacionExc("Debe ingresar el nombre de usuario")

        tuser = self.dbsession.query(TUser).filter(
            TUser.us_id == id_user).first()

        if tuser is not None:

            if cadenas.strip(user_name) != cadenas.strip(tuser.us_name):
                if self.existe(user_name):
                    raise ErrorValidacionExc(
                        "Ya existe una cuenta de usuario con el nombre:{0}, elija otro"
                        .format(user_name))

            tuser.us_nomapel = nomapel.upper()
            tuser.us_name = user_name

        # Registro de la matriz de roles
        tuserroldao = TUserRolDao(self.dbsession)
        tuserroldao.asociar(us_id=id_user, roles_list=roles)
Ejemplo n.º 2
0
    def cambiar_clave(self, user_name, password, rpassword):
        """
        Actualiza  la clave de un usuario en el sistema
        :param user_name:
        :param password:
        :param rpassword:
        :return:
        """
        tuser = self.find_by_username(username=user_name.strip())
        if tuser is not None:
            #Verificar que las claves ingresadas coincida
            if password != rpassword:
                raise ErrorValidacionExc("Las claves ingresadas no coinciden")

            if password is None or len(password.strip()) < 4:
                raise ErrorValidacionExc(
                    "Por favor ingrese la clave, debe ser mínimo de 4 caracteres"
                )

            if password == tuser.us_pass:
                raise ErrorValidacionExc(
                    "La clave ingresada no puede ser la misma que se le asignó"
                )

            tuser.us_pass = password
            tuser.us_statusclave = 1
Ejemplo n.º 3
0
    def crear(self, form, user_crea):

        # Validaciones
        job_id = form['job_id']
        jobrp_secini = form['jobrp_secini']
        jobrp_secfin = form['jobrp_secfin']
        jobrp_obs = form['jobrp_obs']

        if job_id is None or job_id == 0:
            raise ErrorValidacionExc(
                'Debe especificar el trabajo de impresion que desea reimprimir'
            )

        if jobrp_secini is None or jobrp_secini == 0:
            raise ErrorValidacionExc(
                'Favor especifique el secuencial inicial que desea reimprimir')

        if jobrp_secfin is None or jobrp_secfin == 0:
            raise ErrorValidacionExc(
                'Favor especifique el secuencial final que desea reimprimir')

        tJobReprint = TJobReprint()
        tJobReprint.job_id = job_id
        tJobReprint.jobrp_secini = jobrp_secini
        tJobReprint.jobrp_secfin = jobrp_secfin
        tJobReprint.jobrp_obs = jobrp_obs
        tJobReprint.user_crea = user_crea
        tJobReprint.jobrp_fechacrea = datetime.datetime.now()

        self.dbsession.add(tJobReprint)
Ejemplo n.º 4
0
    def resetPassword(self, id_user, password, rpassword, user_edit):
        """
        Resetea un clave de un usuario y lo pone en estado como clave temporal
        :param id_user:
        :param password:
        :param rpassword:
        :return:
        """
        tuser = self.dbsession.query(TUser).filter(
            TUser.us_id == id_user).first()

        tauditdao = TAuditDao(self.dbsession)

        if tuser is not None:
            if not cadenas.es_nonulo_novacio(password):
                raise ErrorValidacionExc("Debe ingresar la clave inicial")
            if not cadenas.es_nonulo_novacio(rpassword):
                raise ErrorValidacionExc("Ingrese la confirmación de la clave")

            tuser.us_pass = password
            tuser.us_statusclave = 0

            tauditdao.crea_accion_update(enums.TBL_USUARIOS,
                                         'us_pass',
                                         user_edit,
                                         '***',
                                         '***',
                                         tuser.us_id,
                                         aud_obs='RESETEO DE CLAVE')
Ejemplo n.º 5
0
    def editar(self, form, user_edit):
        """
        Editar la informacion de un contribuyente
        :param cnt_codigo:
        :param form:
        :return:
        """
        cnt_id = form['cnt_id']
        tcontribuyente = self.dbsession.query(TContribuyente).filter(
            TContribuyente.cnt_id == cnt_id).first()
        if tcontribuyente is not None:

            cnt_ruc = cadenas.strip(form.get('cnt_ruc'))
            if not cadenas.es_nonulo_novacio(cnt_ruc):
                raise ErrorValidacionExc("Debe ingresar el ruc")

            current_ruc = form['cnt_ruc']
            if current_ruc != tcontribuyente.cnt_ruc:
                if self.ya_existe(cnt_ruc=cnt_ruc):
                    raise ErrorValidacionExc(
                        "El contribuyente con número de ruc: {0} ya ha sido registrado"
                        .format(cnt_ruc))

            if not cadenas.es_nonulo_novacio(form['cnt_razonsocial']):
                raise ErrorValidacionExc("Ingrese la razón social")

            if not cadenas.es_nonulo_novacio(form['cnt_dirmatriz']):
                raise ErrorValidacionExc("Ingrese la dirección matriz")

            if not cadenas.es_nonulo_novacio(form['cnt_nombrecomercial']):
                raise ErrorValidacionExc("Ingrese el nombre comercial")

            #Clonamos el objeto para auditoria
            tcontribuyente_cloned = copy.copy(tcontribuyente)

            tcontribuyente.cnt_ruc = cnt_ruc
            tcontribuyente.cnt_razonsocial = form.get(
                'cnt_razonsocial').upper()
            tcontribuyente.cnt_telf = form.get('cnt_telf')
            tcontribuyente.cnt_email = form.get('cnt_email')
            tcontribuyente.cnt_dirmatriz = form.get('cnt_dirmatriz')
            tcontribuyente.cnt_clase = form.get('cnt_clase')
            tcontribuyente.cnt_nrocntespecial = form.get('cnt_nrocntespecial')
            tcontribuyente.cnt_oblcontab = form.get('cnt_oblcontab')
            tcontribuyente.cnt_nombrecomercial = form.get(
                'cnt_nombrecomercial')

        # Agregamos informacion de auditoria
        tauditdao = TAuditDao(self.dbsession)
        list_cambios = checkcambioutil.valor_cambiado(
            tcontribuyente_cloned.__json__(), form)
        if list_cambios is not None and len(list_cambios) > 0:
            for row in list_cambios:
                col = row['col']
                valorant = row['valorant']
                valordesp = row['valordesp']
                tauditdao.crea_accion_update(enums.TBL_CONTRIBUYENTE, col,
                                             user_edit, valorant, valordesp,
                                             tcontribuyente.cnt_id)
Ejemplo n.º 6
0
    def crear(self, lug_nombre, lug_parent=None):
        if not cadenas.es_nonulo_novacio(lug_nombre):
            raise ErrorValidacionExc('Debe ingresar el nombre de la ubicación')
        if self.existe(lug_nombre):
            raise ErrorValidacionExc(
                'La ubicación {0} ya esta registrado'.format(lug_nombre))

        tlugar = TLugar()
        tlugar.lug_nombre = cadenas.strip_upper(lug_nombre)
        tlugar.lug_parent = lug_parent

        self.dbsession.add(tlugar)
Ejemplo n.º 7
0
    def update_nomapel(self, id_user, nomapel, user_name, roles, user_edit):
        """
        Actualiza el nombre del usuario
        :param id_user:
        :param us_nomapel:
        :return:
        """

        if not cadenas.es_nonulo_novacio(nomapel):
            raise ErrorValidacionExc(
                "Debe ingresar los apellidos y nombres del usuario")

        if not cadenas.es_nonulo_novacio(user_name):
            raise ErrorValidacionExc("Debe ingresar el nombre de usuario")

        tuser = self.dbsession.query(TUser).filter(
            TUser.us_id == id_user).first()

        form = {}
        form['us_nomapel'] = nomapel
        form['user_name'] = user_name

        if tuser is not None:

            tuser_cloned = copy.copy(tuser)

            if cadenas.strip(user_name) != cadenas.strip(tuser.us_name):
                if self.existe(user_name):
                    raise ErrorValidacionExc(
                        "Ya existe una cuenta de usuario con el nombre:{0}, elija otro"
                        .format(user_name))

            tuser.us_nomapel = nomapel.upper()
            tuser.us_name = user_name

            tauditdao = TAuditDao(self.dbsession)
            list_cambios = checkcambioutil.valor_cambiado(
                tuser_cloned.__json__(), form)
            if list_cambios is not None and len(list_cambios) > 0:
                for row in list_cambios:
                    col = row['col']
                    valorant = row['valorant']
                    valordesp = row['valordesp']
                    tauditdao.crea_accion_update(enums.TBL_USUARIOS, col,
                                                 user_edit, valorant,
                                                 valordesp, tuser.us_id)

        # Registro de la matriz de roles
        tuserroldao = TUserRolDao(self.dbsession)
        tuserroldao.asociar(us_id=id_user,
                            roles_list=roles,
                            user_crea=user_edit)
Ejemplo n.º 8
0
    def crear(self, nombre):
        if not cadenas.es_nonulo_novacio(nombre):
            raise ErrorValidacionExc(
                u'Debe ingresar el nombre de la categoría')

        if self.existe(nombre):
            raise ErrorValidacionExc(
                u'Ya existe una categoría con el nombre {0}, ingrese otra'.
                format(nombre))

        tcategoria = TCatItemConfig()
        tcategoria.catic_nombre = cadenas.strip_upper(nombre)
        tcategoria.catic_estado = 1

        self.dbsession.add(tcategoria)
Ejemplo n.º 9
0
    def crear(self, lug_nombre):
        if not cadenas.es_nonulo_novacio(lug_nombre) or len(
                cadenas.strip(lug_nombre)) <= 2:
            raise ErrorValidacionExc(
                u"Se debe ingresar el nombre del lugar que desea crear")

        if self.existe_lug_nombre(lug_nombre):
            raise ErrorValidacionExc(
                u"El lugar {0} ya esta registrado, no es posible registrar nuevamente"
                .format(lug_nombre))
        else:
            tlugar = TLugar()
            tlugar.lug_nombre = cadenas.strip_upper(lug_nombre)
            tlugar.lug_status = 1
            self.dbsession.add(tlugar)
Ejemplo n.º 10
0
    def get_dbsession_acad(self):
        acf_esquema_acad = self.get_esquema_acad()
        if acf_esquema_acad is None:
            raise ErrorValidacionExc(
                u"No esta definido acf_esquema_acad en tappconfig")

        return self.get_dbsession_by_esquema(acf_esquema_acad)
Ejemplo n.º 11
0
    def find_by_ruc(self, ruc):

        if not ruc.isdigit():
            raise ErrorValidacionExc("El ruc ingresado es incorrecto")

        sql = """
                            select cnt_id,
                                   cnt_ruc,
                                   cnt_razonsocial,
                                   cnt_nombrecomercial,
                                   cnt_telf,
                                   cnt_email,
                                   cnt_dirmatriz,
                                   cnt_direstab,
                                   cnt_clase,
                                   cls.cls_nombre,
                                   cnt_nrocntespecial,
                                   cnt_oblcontab,
                                   case cnt_oblcontab when 1 then 'SI' else 'NO' end as ocontab  from tcontribuyente a
                              join tclasecontrib cls on a.cnt_clase = cls.cls_id
                              where a.cnt_ruc = '{0}'
                            ORDER BY  cnt_razonsocial
                        """.format(ruc)

        tupla_desc = ('cnt_id', 'cnt_ruc', 'cnt_razonsocial',
                      'cnt_nombrecomercial', 'cnt_telf', 'cnt_email',
                      'cnt_dirmatriz', 'cnt_direstab', 'cnt_clase',
                      'cls_nombre', 'cnt_nrocntespecial', 'cnt_oblcontab',
                      'ocontab')

        return self.first(sql=sql, tupla_desc=tupla_desc)
Ejemplo n.º 12
0
 def get_ruta_savejobs(self):
     val = self.get_param_value('pathSaveJobs')
     if val is None:
         raise ErrorValidacionExc(
             u'El parametro pathSaveJobs no está registrado en la base de datos, favor verificar'
         )
     return val
Ejemplo n.º 13
0
    def actualizar(self, form, user_actualiza):
        # Datos para actualizar:

        ic_id = form['ic_id']
        titemconfig = self.dbsession.query(TItemConfig).filter(
            TItemConfig.ic_id == ic_id).first()
        if titemconfig is not None:
            # Cosas que se pueden actualizar:
            # Nombre, categoria, proveedro, precio de compra, precio de venta, fecha de caducidad, observacion
            icdp_preciocompra = form['icdp_preciocompra']
            icdp_precioventa = form['icdp_precioventa']
            icdp_precioventamin = form['icdp_precioventamin']

            icdp_grabaiva = form['icdp_grabaiva']
            if icdp_grabaiva:
                # El precio de compra y de venta se le debe quitar el iva
                # icdp_preciocompra = ivautil.redondear_precio_db(ivautil.quitar_iva(icdp_preciocompra))
                icdp_precioventa = ivautil.redondear_precio_db(
                    ivautil.quitar_iva(icdp_precioventa))
                icdp_precioventamin = ivautil.redondear_precio_db(
                    ivautil.quitar_iva(icdp_precioventamin))

            old_ic_nombre = cadenas.strip(titemconfig.ic_nombre)
            ic_nombre = cadenas.strip_upper(form['ic_nombre'])
            if ic_nombre != old_ic_nombre:
                if self.existe_artbynombre(ic_nombre):
                    raise ErrorValidacionExc(
                        u"Ya existe registrado un producto o servicio con el nombre: '{0}'"
                        .format(ic_nombre))

            titemconfig.ic_nombre = ic_nombre
            titemconfig.ic_nota = form['ic_nota']
            titemconfig.catic_id = form['catic_id']
            titemconfig.ic_useractualiza = user_actualiza
            titemconfig.ic_fechaactualiza = datetime.now()

            self.dbsession.add(titemconfig)

            titemconfigdp = self.dbsession.query(TItemConfigDatosProd).filter(
                TItemConfigDatosProd.ic_id == ic_id).first()
            if titemconfigdp is not None:
                titemconfigdp.icdp_proveedor = form['icdp_proveedor']

                icdp_fechacaducidad = form['icdp_fechacaducidad']
                if cadenas.es_nonulo_novacio(icdp_fechacaducidad):
                    titemconfigdp.icdp_fechacaducidad = fechas.parse_cadena(
                        icdp_fechacaducidad)
                else:
                    titemconfigdp.icdp_fechacaducidad = None

                titemconfigdp.icdp_grabaiva = icdp_grabaiva
                titemconfigdp.icdp_preciocompra = icdp_preciocompra
                titemconfigdp.icdp_precioventa = icdp_precioventa
                titemconfigdp.icdp_precioventamin = icdp_precioventamin
                # TODO: Agregar logica para registrar kardek del articulo
                self.dbsession.add(titemconfigdp)

            self.dbsession.flush()
            return ic_id
Ejemplo n.º 14
0
 def actualizar(self, lug_id, lug_nombre):
     if not cadenas.es_nonulo_novacio(lug_nombre) or len(
             cadenas.strip(lug_nombre)) <= 2:
         raise ErrorValidacionExc(
             u"Se debe ingresar el nombre del lugar que desea actualizar")
     tlugar = self.dbsession.query(TLugar).filter(
         TLugar.lug_id == lug_id).first()
     if tlugar is not None:
         lug_nombre_upper = cadenas.strip_upper(lug_nombre)
         if tlugar.lug_nombre != lug_nombre_upper:
             if self.existe_lug_nombre(lug_nombre_upper):
                 raise ErrorValidacionExc(
                     u"El lugar {0} ya esta registrado, no es actualizar este registro"
                     .format(lug_nombre_upper))
             else:
                 tlugar.lug_nombre = lug_nombre_upper
                 self.dbsession.add(tlugar)
Ejemplo n.º 15
0
    def crear(self, temp_name, temp_jrxml):
        if self.ya_existe(temp_name):
            raise ErrorValidacionExc('La plantilla con el nombre {0} ya ha sido registrada ingrese otro nombre'.format(temp_name.upper()))

        tplantilla = TPlantilla()
        tplantilla.temp_name = temp_name.upper()
        tplantilla.temp_jrxml = temp_jrxml
        self.dbsession.add(tplantilla)
Ejemplo n.º 16
0
    def crear(self, form, user_crea):
        """
        Crea un nuevo contribuyente
        :param form:
        :return:
        """
        cnt_ruc = cadenas.strip(form.get('cnt_ruc'))
        if not cadenas.es_nonulo_novacio(cnt_ruc):
            raise ErrorValidacionExc("Debe ingresar el ruc")

        if self.ya_existe(cnt_ruc=cnt_ruc):
            raise ErrorValidacionExc(
                "El contribuyente con número de ruc: {0} ya ha sido registrado"
                .format(cnt_ruc))

        if not cadenas.es_nonulo_novacio(form['cnt_razonsocial']):
            raise ErrorValidacionExc("Ingrese la razón social")

        if not cadenas.es_nonulo_novacio(form['cnt_dirmatriz']):
            raise ErrorValidacionExc("Ingrese la dirección matriz")

        if not cadenas.es_nonulo_novacio(form['cnt_nombrecomercial']):
            raise ErrorValidacionExc("Ingrese el nombre comercial")

        tcontribuyente = TContribuyente()
        tcontribuyente.cnt_ruc = cnt_ruc
        tcontribuyente.cnt_razonsocial = form.get('cnt_razonsocial').upper()
        tcontribuyente.cnt_telf = form.get('cnt_telf')
        tcontribuyente.cnt_email = form.get('cnt_email')
        tcontribuyente.cnt_dirmatriz = form.get('cnt_dirmatriz')
        tcontribuyente.cnt_clase = form.get('cnt_clase')
        tcontribuyente.cnt_nrocntespecial = form.get('cnt_nrocntespecial')
        # tcontribuyente.cnt_oblcontab = 1 if form.get('cnt_oblcontab') else 0
        tcontribuyente.cnt_oblcontab = form.get('cnt_oblcontab')
        tcontribuyente.cnt_nombrecomercial = form.get('cnt_nombrecomercial')

        self.dbsession.add(tcontribuyente)
        self.dbsession.flush()

        # Agregar informacion de auditoria
        tautditdao = TAuditDao(self.dbsession)
        tautditdao.crea_accion_insert(enums.TBL_CONTRIBUYENTE, user_crea,
                                      tcontribuyente.cnt_id)
Ejemplo n.º 17
0
    def resetPassword(self, id_user, password, rpassword):
        """
        Resetea un clave de un usuario y lo pone en estado como clave temporal
        :param id_user:
        :param password:
        :param rpassword:
        :return:
        """
        tuser = self.dbsession.query(TUser).filter(
            TUser.us_id == id_user).first()

        if tuser is not None:
            if not cadenas.es_nonulo_novacio(password):
                raise ErrorValidacionExc("Debe ingresar la clave inicial")
            if not cadenas.es_nonulo_novacio(rpassword):
                raise ErrorValidacionExc("Ingrese la confirmación de la clave")

            tuser.us_pass = password
            tuser.us_statusclave = 0
Ejemplo n.º 18
0
 def collection_post(self):
     accion = self.get_request_param('accion')
     if 'registra' == accion:
         tconsultam_dao = TConsultaMedicaDao(self.dbsession)
         formdata = self.get_request_json_body()
         msg, cosm_id = tconsultam_dao.registrar(
             form=formdata, usercrea=self.get_user_id())
         return {'status': 200, 'msg': msg, 'ccm': cosm_id}
     else:
         raise ErrorValidacionExc(u'Ninguna acción especificada')
Ejemplo n.º 19
0
    def crear(self, form, user_crea):

        if not cadenas.es_nonulo_novacio(form['emp_ruc']):
            raise ErrorValidacionExc(u"Debe ingresar el ruc")

        # Validar que el ruc ingresado este correcto
        resvalid = TContribuyenteDao.verificar(form['emp_ruc'])
        if not resvalid:
            raise ErrorValidacionExc(u"El número de ruc ingresado es incorrecto")

        if not cadenas.es_nonulo_novacio(form['emp_razonsocial']):
            raise ErrorValidacionExc(u"Debe ingresar la razon social")

        if not cadenas.es_nonulo_novacio(form['emp_nroautorizacion']):
            raise ErrorValidacionExc(u"Debe ingresar el número de autorización")

        # Validar que el numero de autorizacion sea distinto de cero
        emp_nroautorizacion = form['emp_nroautorizacion']
        if not emp_nroautorizacion.isdigit():
            raise ErrorValidacionExc(u"El número de autorización es incorrecto debe ser solo números")
        elif int(emp_nroautorizacion) == 0:
            raise ErrorValidacionExc(u"El número de autorización debe ser distinto de cero")

        if not cadenas.es_nonulo_novacio(form['emp_fechaautorizacion']):
            raise ErrorValidacionExc(u"Debe ingresar la fecha de autorización")
        else:
            # Validar que no sean fechas posteriores a la fecha actual
            if not fechas.isvalid(form['emp_fechaautorizacion']):
                raise ErrorValidacionExc(
                    "La fecha de autorización ingresada es incorrecta verifique que se encuentre en el formato dd/mm/aaaa")

            fecha_actual = fechas.get_str_fecha_actual()

            if not fechas.es_fecha_a_mayor_fecha_b(form['emp_fechaautorizacion'], fecha_actual):
                raise ErrorValidacionExc(u"La fecha de autorización no puede estar despues de la fecha de actual")

        tempresa = TEmpresa()
        tempresa.emp_ruc = form.get("emp_ruc")
        tempresa.emp_razonsocial = form.get("emp_razonsocial")
        tempresa.emp_nombrecomercial = form.get("emp_nombrecomercial")
        tempresa.emp_fechaautorizacion = fechas.parse_cadena(form.get("emp_fechaautorizacion"))
        tempresa.emp_nroautorizacion = form.get("emp_nroautorizacion")
        self.dbsession.add(tempresa)
        self.dbsession.flush()

        tautditdao = TAuditDao(self.dbsession)
        tautditdao.crea_accion_insert(enums.TBL_EMPRESA, user_crea, tempresa.emp_id)
Ejemplo n.º 20
0
    def actualizar(self, temp_id, new_temp_name, new_temp_jrxml):
        tplantilla = self.dbsession.query(TPlantilla).filter(TPlantilla.temp_id==temp_id).first()
        if tplantilla is not None:
            temp_name = tplantilla.temp_name

            if new_temp_name !=temp_name:
                if self.ya_existe(new_temp_name):
                    raise ErrorValidacionExc('La plantilla con el nombre {0} ya ha sido registrada ingrese otro nombre'.format(temp_name.upper()))

            tplantilla.temp_name = new_temp_name.upper()
            tplantilla.temp_jrxml = new_temp_jrxml
Ejemplo n.º 21
0
 def actualizar(self, catic_id, nombre):
     tcatitem = self.dbsession.find(TCatItemConfig).filter(
         TCatItemConfig.catic_id == catic_id).first()
     if tcatitem is not None:
         catic_nombre = cadenas.strip_upper(tcatitem.catic_nombre)
         nombre_upper = cadenas.strip_upper(nombre)
         if catic_nombre != nombre_upper:
             if self.existe(nombre):
                 raise ErrorValidacionExc(
                     u'Ya existe una categoría con el nombre {0}, ingrese otra'
                     .format(nombre))
             else:
                 tcatitem.catic_nombre = nombre_upper
                 self.dbsession.add(tcatitem)
Ejemplo n.º 22
0
    def crear(self, form):

        if not cadenas.es_nonulo_novacio(form['emp_ruc']):
            raise ErrorValidacionExc(u"Debe ingresar el ruc")

        if not cadenas.es_nonulo_novacio(form['emp_razonsocial']):
            raise ErrorValidacionExc(u"Debe ingresar la razon social")

        if not cadenas.es_nonulo_novacio(form['emp_nroautorizacion']):
            raise ErrorValidacionExc(
                u"Debe ingresar el número de autorización")

        if not cadenas.es_nonulo_novacio(form['emp_fechaautorizacion']):
            raise ErrorValidacionExc(u"Debe ingresar la fecha de autorización")

        tempresa = TEmpresa()
        tempresa.emp_ruc = form.get("emp_ruc")
        tempresa.emp_razonsocial = form.get("emp_razonsocial")
        tempresa.emp_nombrecomercial = form.get("emp_nombrecomercial")
        tempresa.emp_fechaautorizacion = fechas.parse_cadena(
            form.get("emp_fechaautorizacion"))
        tempresa.emp_nroautorizacion = form.get("emp_nroautorizacion")
        self.dbsession.add(tempresa)
Ejemplo n.º 23
0
 def update_barcode(self, ic_id, newbarcode):
     titemconfig = self.dbsession.query(TItemConfig).filter(
         TItemConfig.ic_id == ic_id).first()
     newbarcode_strip = cadenas.strip(unicode(newbarcode))
     if titemconfig is not None:
         current_ic_code = titemconfig.ic_code
         if newbarcode_strip != current_ic_code:
             if self.existe_codbar(newbarcode_strip):
                 raise ErrorValidacionExc(
                     u'No se puede cambiar el código de barra, el código {0} ya esta siendo usado por otro producto o servicio'
                     .format(newbarcode))
             else:
                 titemconfig.ic_code = newbarcode_strip
                 self.dbsession.add(titemconfig)
Ejemplo n.º 24
0
    def update(self, emp_codigo, form, user_edit):
        tempresa = self.dbsession.query(TEmpresa).filter(TEmpresa.emp_id == emp_codigo).first()

        if not cadenas.es_nonulo_novacio(form['emp_ruc']):
            raise ErrorValidacionExc(u"Debe ingresar el ruc")

        resvalid = TContribuyenteDao.verificar(form['emp_ruc'])
        if not resvalid:
            raise ErrorValidacionExc(u"El número de ruc ingresado es incorrecto")

        if not cadenas.es_nonulo_novacio(form['emp_razonsocial']):
            raise ErrorValidacionExc(u"Debe ingresar la razon social")

        # if not cadenas.es_nonulo_novacio(form['emp_nroautorizacion']):
        #     raise ErrorValidacionExc(u"Debe ingresar el número de autorización")

        if not cadenas.es_nonulo_novacio(form['emp_fechaautorizacion']):
            raise ErrorValidacionExc(u"Debe ingresar la fecha de autorización")

        tempresa_cloned = copy.copy(tempresa)

        if tempresa is not None:
            tempresa.emp_ruc = form.get("emp_ruc")
            tempresa.emp_razonsocial = form.get("emp_razonsocial")
            tempresa.emp_nombrecomercial = form.get("emp_nombrecomercial")
            tempresa.emp_fechaautorizacion = fechas.parse_cadena(form.get("emp_fechaautorizacion"))
            # tempresa.emp_nroautorizacion = form.get("emp_nroautorizacion")

            tauditdao = TAuditDao(self.dbsession)
            list_cambios = checkcambioutil.valor_cambiado(tempresa_cloned.__json__(), form)
            if list_cambios is not None and len(list_cambios) > 0:
                for row in list_cambios:
                    col = row['col']
                    valorant = row['valorant']
                    valordesp = row['valordesp']
                    tauditdao.crea_accion_update(enums.TBL_EMPRESA, col, user_edit, valorant, valordesp,
                                                 tempresa.emp_id)
Ejemplo n.º 25
0
    def crear_usuario(self,
                      user_name,
                      nomapel,
                      password,
                      rpassword,
                      roles=None):
        """
        Registra un nuevo usuario en el sistema
        :param user_name:
        :param password:
        :param rpassword:
        :param roles:
        :return:
        """

        if not cadenas.es_nonulo_novacio(user_name):
            raise ErrorValidacionExc("Debe ingresar el nombre de usuario")
        if not cadenas.es_nonulo_novacio(nomapel):
            raise ErrorValidacionExc(
                "Debe ingresar los apellidos y nombres del usuario")
        if not cadenas.es_nonulo_novacio(password):
            raise ErrorValidacionExc("Debe ingresar la clave inicial")
        if not cadenas.es_nonulo_novacio(rpassword):
            raise ErrorValidacionExc("Ingrese la confirmación del clave")

        if self.existe(user_name):
            raise ErrorValidacionExc(
                "Ya existe una cuenta de usuario con el nombre:{0}, elija otro"
                .format(user_name))

        if password is None or len(password.strip()) < 4:
            raise ErrorValidacionExc(
                "Por favor ingrese la clave, debe ser mínimo de 4 caracteres")

        if (password != rpassword):
            raise ErrorValidacionExc(
                "Las claves ingresadas no coinciden, favor verificar")

        tuser = TUser()
        tuser.us_name = user_name
        tuser.us_pass = password
        tuser.us_datecreated = datetime.now()
        tuser.us_status = 0  #
        tuser.us_statusclave = 0
        tuser.us_nomapel = nomapel.upper()

        self.dbsession.add(tuser)
        self.dbsession.flush()

        #Registro de la matriz de roles
        tuserroldao = TUserRolDao(self.dbsession)
        tuserroldao.asociar(us_id=tuser.us_id, roles_list=roles)
Ejemplo n.º 26
0
    def update(self, emp_codigo, form):
        tempresa = self.dbsession.query(TEmpresa).filter(
            TEmpresa.emp_id == emp_codigo).first()

        if not cadenas.es_nonulo_novacio(form['emp_ruc']):
            raise ErrorValidacionExc(u"Debe ingresar el ruc")

        if not cadenas.es_nonulo_novacio(form['emp_razonsocial']):
            raise ErrorValidacionExc(u"Debe ingresar la razon social")

        if not cadenas.es_nonulo_novacio(form['emp_nroautorizacion']):
            raise ErrorValidacionExc(
                u"Debe ingresar el número de autorización")

        if not cadenas.es_nonulo_novacio(form['emp_fechaautorizacion']):
            raise ErrorValidacionExc(u"Debe ingresar la fecha de autorización")

        if tempresa is not None:
            tempresa.emp_ruc = form.get("emp_ruc")
            tempresa.emp_razonsocial = form.get("emp_razonsocial")
            tempresa.emp_nombrecomercial = form.get("emp_nombrecomercial")
            tempresa.emp_fechaautorizacion = fechas.parse_cadena(
                form.get("emp_fechaautorizacion"))
            tempresa.emp_nroautorizacion = form.get("emp_nroautorizacion")
Ejemplo n.º 27
0
    def crear(self, form, user_crea):
        tjob = TJob()

        if form['cnt_id'] == 0:
            raise ErrorValidacionExc(u'Debe especificar el contribuyente')
        if form['aut_id'] == 0:
            raise ErrorValidacionExc(u'Debe seleccionar  la autorización')

        if not cadenas.es_nonulo_novacio(form['job_ptoemi']):
            raise ErrorValidacionExc(u"Ingrese el punto de emisión")
        if not cadenas.es_nonulo_novacio(form['job_secuencia_ini']):
            raise ErrorValidacionExc(u"Ingrese la secuencia inicial")
        if not cadenas.es_nonulo_novacio(form['job_secuencia_fin']):
            raise ErrorValidacionExc(u"Ingrese la secuencia final")

        secuencia_ini = int(form['job_secuencia_ini'])
        secuencia_fin = int(form['job_secuencia_fin'])

        if secuencia_fin <= secuencia_ini:
            raise ErrorValidacionExc(u"Valor para secuencia final incorrecto, favor verifique")

        int_job_secuencia_ini = int(form['job_secuencia_ini'])
        if int_job_secuencia_ini == 0:
            raise ErrorValidacionExc(u"El valor de la secuencia inicial debe ser distinto de cero")

        #Verificar que el punto de emision sea distinto de cero
        int_job_ptoemi = int(form['job_ptoemi'])
        if int_job_ptoemi == 0:
            raise ErrorValidacionExc(u"El punto de emisión debe ser distinto de cero")

        tjob.cnt_id = form['cnt_id']
        tjob.aut_id = form['aut_id']
        tjob.job_nrocopias = form['job_nrocopias']
        tjob.job_fechacreacion = datetime.now()
        tjob.user_crea = user_crea
        tjob.job_estado = 1  # Estado Nuevo
        tjob.job_ptoemi = form['job_ptoemi']
        tjob.job_tipodoc = form['job_tipodoc']
        tjob.job_secuencia_ini = secuencia_ini
        tjob.job_secuencia_fin = secuencia_fin

        self.dbsession.add(tjob)

        self.dbsession.flush()

        return tjob.job_id
Ejemplo n.º 28
0
    def crear(self, form):

        if self.cuota_registrada(cuo_socio=form['cuo_socio'],
                                 cuo_anio=form['cuo_anio'],
                                 cuo_mes=form['cuo_mes']):
            raise ErrorValidacionExc('Ya está registrada esta cuota, no es posible registrar la cuota nuevamente')

        tcuota = TCuota()
        tcuota.tipc_id = form['tipc_id']
        tcuota.cuo_fecreg = datetime.now()
        tcuota.cuo_anio = form['cuo_anio']
        tcuota.cuo_mes = form['cuo_mes']
        tcuota.cuo_monto = form['cuo_monto']
        tcuota.cuo_socio = form['cuo_socio']
        tcuota.cuo_usercrea = form['cuo_usercrea']
        tcuota.cuo_obs = form['cuo_obs']
        tcuota.cuo_estado = 0

        self.dbsession.add(tcuota)
Ejemplo n.º 29
0
    def crear_cuenta(self, form):
        provider = form['provider']
        nombres = form['nombres']
        email = form['email']
        celular = form['celular']
        photo_url = form['photoUrl']
        clave = cadenas.strip(form['clave'])
        clave_md5 = hashlib.md5(clave.encode()).hexdigest()

        up_email = cadenas.strip(email)
        up_nombres = cadenas.strip_upper(nombres)
        up_celular = cadenas.strip_upper(celular)

        aux_paciente = self.buscar_por_email(up_email)
        if aux_paciente is None:
            up_tipo = 0
            if provider == 'google':
                up_tipo = 2
            elif provider == 'facebook':
                up_tipo = 1

            tuserpaciente = TUserPaciente()
            tuserpaciente.up_email = cadenas.strip(up_email)
            tuserpaciente.up_tipo = up_tipo
            tuserpaciente.up_estado = 0
            tuserpaciente.up_fechacrea = datetime.now()
            tuserpaciente.up_nombres = up_nombres
            tuserpaciente.up_celular = up_celular
            tuserpaciente.up_tipo = up_tipo
            tuserpaciente.up_photourl = photo_url
            tuserpaciente.up_pasword = clave_md5

            self.dbsession.add(tuserpaciente)
            self.dbsession.flush()
        else:
            raise ErrorValidacionExc(
                u'Ya existe una cuenta registrada con el correo: {0} no se puede crear nuevamente'
                .format(up_email))
Ejemplo n.º 30
0
    def crear(self, form):
        # provider = form['provider']
        # nombres = form['nombres']
        # email = form['email']
        celular = form['celular']
        serv_id = form['serv_id']
        med_id = form['med_id']
        dia = form['dia']
        hora_ini = form['hora_ini']
        # photo_url = form['photoUrl']
        # clave = form['clave']
        # clave_md5 = hashlib.md5(clave)

        # up_email = cadenas.strip(email)
        # up_pasword = ''
        # up_nombres = cadenas.strip_upper(nombres)
        up_celular = cadenas.strip_upper(celular)
        up_email = form['up_email']
        aux_paciente = self.buscar_por_email(up_email)
        if aux_paciente is None:
            raise ErrorValidacionExc(
                u'No esta registrado la dirección de correo')
            """
            up_tipo = 0
            if provider == 'GOOGLE':
                up_tipo = 2
            else:
                up_tipo = 1

            tuserpaciente = TUserPaciente()
            tuserpaciente.up_email = cadenas.strip(up_email)
            tuserpaciente.up_tipo = up_tipo
            tuserpaciente.up_estado = 0
            tuserpaciente.up_fechacrea = datetime.now()
            tuserpaciente.up_nombres = up_nombres
            tuserpaciente.up_celular = up_celular
            tuserpaciente.up_photourl = photo_url
            tuserpaciente.up_pasword = clave_md5

            self.dbsession.add(tuserpaciente)
            self.dbsession.flush()
            paciente_id = tuserpaciente.up_id
            """
        else:
            paciente_id = aux_paciente.up_id
            # aux_paciente.up_nombres = up_nombres
            if cadenas.es_nonulo_novacio(up_celular):
                aux_paciente.up_celular = up_celular
            # aux_paciente.up_photourl = photo_url
            self.dbsession.add(aux_paciente)

        # Se procede a crear la cita
        tcita = TCita()

        hora_ini_num = fechas.hora_to_num(hora_ini)
        tcita.cita_hora = hora_ini_num
        tcita.cita_fecha = fechas.parse_cadena(dia)
        tcita.cita_hora_fin = hora_ini_num + 1
        tcita.cita_serv = serv_id
        tcita.medico_id = med_id
        tcita.paciente_id = paciente_id
        tcita.cita_estado = 0

        self.dbsession.add(tcita)