示例#1
0
def documentos_add(request, codigo=None):
    obj = None
    if codigo:
        obj = get_object_or_404(Documento, pk=codigo)
        if not obj.fecha:
            obj.fecha = datetime.today()
    if request.method == 'POST':
        profile = request.user.get_profile()
        if 'archivo' in request.FILES:
            ini = profile.get_dependencia()
            archivo = request.FILES['archivo']
            extension = archivo.name[archivo.name.rfind('.') + 1:].upper()
            cat = get_categoria(extension)
            filename = "%s%s.%s" % (ini.iniciales,
                                    datetime.today().strftime("%d%m%Y%S"),
                                    extension)
            if not obj:
                obj = Documento(
                    organismo=profile.organismo,
                    dependencia=profile.dependencia,
                    tipo=cat == 'OTROS' and 'OTRO' or extension,
                    categoria=cat,
                    idusuario_creac=profile)
            else:
                obj.tipo = (cat == 'OTROS') and 'OTRO' or extension
                obj.categoria = cat
            request.FILES['archivo'].name = filename
        filename = obj.archivo
        formulario = DocumentoForm(
            request.POST, request.FILES,
            instance=obj)  # A form bound to the POST data
        if formulario.is_valid():
            if codigo and 'archivo' in request.FILES:
                FileSystemStorage().delete(filename)
            formulario.save()
            obj.url_archivo = obj.archivo.url
            if profile.nivel.codigo == 1:
                obj.idusuario_mod = profile
                obj.fec_mod = datetime.today()
            else:
                obj.idadministrador_mod = profile
                obj.fec_modadm = datetime.today()
            messages.add_message(request, messages.SUCCESS,
                                 'Documento grabado exitosamente!!!')
            #print "AQUI"
            return redirect('ogcs-mantenimiento-doc-query')
    else:
        formulario = DocumentoForm(instance=obj)
    return render_to_response(
        'extras/documento.html',
        {
            'doc': obj,
            'formulario': formulario,
        },
        context_instance=RequestContext(request),
    )
示例#2
0
 def getDocument(self, documentName):
     filePath = join(self.path, documentName)
     with codecs.open(filePath,
                      mode='rt',
                      encoding='utf-8',
                      errors='ignore') as fp:
         return Documento(documentName, fp.read())
     return None
示例#3
0
def create_documento():
    request_json = request.get_json()
    field_validation_error = validate_json_request_and_required_fields(
        request, Documento.required_fields)
    if field_validation_error is not None:
        return field_validation_error
    documento = Documento(id_externo=request_json['id_externo'],
                          descricao=request_json['descricao'])
    db.session.add(documento)
    db.session.commit()
    return jsonify({'documento': documento.serialize}), 201
示例#4
0
def documentos_add(request):
    mensaje = ''
    if request.method == 'POST':
        if 'archivo' in request.FILES:
            profile = request.user.get_profile()
            ini=profile.get_dependencia()            
            archivo = request.FILES['archivo']
            extension = archivo.name[archivo.name.rfind('.')+1:].upper()
            cat = get_categoria(extension)
            filename= "%s%s.%s" % (ini.iniciales,datetime.today().strftime("%d%m%Y%S"),extension)
            request.FILES['archivo'].name = filename
            obj = Documento(organismo=profile.organismo, dependencia=profile.dependencia,tipo= cat == 'OTROS' and 'OTRO' or extension,categoria=cat,idusuario_creac=profile)
            formulario = DocumentoForm(request.POST,request.FILES,instance=obj ) # A form bound to the POST data
            if formulario.is_valid():
                formulario.save()             
                obj.url_archivo=obj.archivo.url 
                obj.save()
                mensaje="Registro grabado satisfactoriamente."
        formulario = DocumentoForm()
    else:        
        formulario = DocumentoForm()
    return render_to_response('extras/documento.html', {'formulario': formulario,'mensaje':mensaje,}, context_instance=RequestContext(request),)