Git Product home page Git Product logo

xbuilder-server's Introduction

CI FOSSA Status

xbuilder-server

Microservice for creating and signing XML files based on Universal Bussiness Language (UBL)

Getting started

Docker

The easiest way of starting XBuilder Server is using Docker.

docker run -p 8080:8080 docker.io/projectopenubl/xbuilder-server

Then open http://localhost:8080 and verify that the server is running.

Create XML

Open a terminal or the tool of your preference and execute:

curl -X POST \
-H "Content-Type: application/json" \
-d '{
    "serie": "F001",
    "numero": 1,
    "proveedor": {
        "ruc": "12345678912",
        "razonSocial": "Project OpenUBL"
    },
    "cliente": {
        "tipoDocumentoIdentidad": "RUC",
        "numeroDocumentoIdentidad": "12312312312",
        "nombre": "Nombre de mi cliente"
    },
    "detalle": [
        {
        "descripcion": "Nombre de producto o servicio",
        "precioUnitario": 1,
        "cantidad": 1,
        "tipoIgv": "GRAVADO_OPERACION_ONEROSA"
        }
    ]
}' \
http://localhost:8080/api/documents/invoice/create

Resources

Mailing list

You can ask questions and get news through our mailing list:

License

FOSSA Status

xbuilder-server's People

Contributors

carlosthe19916 avatar dependabot-preview[bot] avatar fossabot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

xbuilder-server's Issues

Test: Cliente Input model

  • Dependiendo del tipo de documento se debe de validar la longitud del numero de documento
  • Poner limite al nombre del cliente

Test: Detalle Input model

  • limitar descripcion longitud
  • validar unidad medida usando catalogo (permitir valores nulos)
  • cantidad debe de tener valores mayores a cero y tres decimales
  • Precio unitario acepta dos decimales y mayores a cero
  • Tipo de igv acepta valores nulos
  • icb acepta valores nulos

Rule: no tomar en cuenta cadenas vacias

Evaluar cual debe de ser el comportamiento cuando se envian cadenas vacias en campos que no pueden tener Hibernate Validator Constraints por ejemplo:

https://github.com/project-openubl/xml-builder/blob/fa5289ecbe6383a064f18fa696d585579bfae8ce/core/src/main/java/org/openublpe/xmlbuilder/core/models/input/standard/DetalleInputModel.java#L34

Si en el ejemplo anterior envio "" entonces ese será el valor puesto en el XML pero tenemos que evaluar y seria mejor reemplazarlos por NIU

Eliminar organization

Una organización debe de poder ser eliminada. Cuando una organización es eliminada, todos los certificados y componentes asociados a éste deben de también ser eliminados

UI: Crear pagina de error

Is your feature request related to a problem? Please describe.
Cuando hay un error Reactjs no existe pagina para mostrar el error

Compilacion en Windows erronea

Describe the bug
Los comandos descritos en el manual no pueden ser ejecutados en Windows debido a un error durante la compilacion.

Es necesario tambien introducir tests en windows

UI: Error al actualizar la lista de certificados activos

Describe the bug
La lista de certificados activos no es actualizada despues de eliminar o crear un nuevo proveedor

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'Certificados digitales' => Proveedores de certificados
  2. Ir al Tab "Certificados activos"
  3. El nuevo certificado deberia de aparecer en la lista pero no aparecerá
  4. Se puede ir y volver entre los tabs y funcionará

Security or RBAC control

Is your feature request related to a problem? Please describe.
We need to add security or roles, groups, etc.

Describe the solution you'd like
I'd like a hybrid approach so every single deployment can choose what kind of security control they will follow

Describe alternatives you've considered
Keycloak is one possibility

Additional context
Not all the companies use Keycloak so we need to be as generic as possible

UI: Interfaz para crear comprobantes electrónicos

Is your feature request related to a problem? Please describe.
Necesitamos una forma en el usuario vea Vizualmente la forma de crear un comprobante electrónico.

Describe the solution you'd like
Crear una interfaz UI donde se pueda crear uno o más comprobantes electrónicos.

Test: Firmante Input model

  • validar ruc contiene solo numeros
  • validar ruc tiene 11 caracteres
  • Limitar la longitud de razon social

Test: Proveedor input model

  • validar ruc tiene 11 caracteres
  • validar ruc tiene caracteres validos (solo numeros)
  • Limitar longitud de nombre comercial y razon social
  • Validar valido codigo postal (solo numero y 6 caracteres)

Test: NoteInputModel

  • Validar serie y numero referencia son validos. se aceptan solo mayusculas?
  • Limitar los valores string

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.