# Pedidos



# Añadir pedidos

Esta función permite añadir un pedido en el sistema.
### URL
`/CTNEAT/ORDER/ADD/{tkn}`
### Método HTTP

<span style="background-color: RGB(22,216,80); color: white; font-weight: bold; padding: 8px;">POST</span>


### Parámetros de la solicitud

| Nombre del parámetro | Tipo de dato | Descripción del parámetro | Obligatorio | Formato del valor |
| -------------------- | ------------ | ------------------------ | ----------- | ----------- |
|   ORDERNUM               |  cadena      |    Número de pedido  |       Sí      | - |
|   LINE               |  numérico      |    Línea del pedido |       No      | - |
|   ITEMCODE               |  cadena      |    Código interno del artículo |       Sí      | -  | 
|   QTY               |  numérico      |    Cantidad pedida del artículo |       Sí      | - |
|   RECQTY               |  numérico      |    Cantidad ya recibida del artículo |       No      | - |
|   RECDATE               |  fecha      |    Descripción del artículo |       Sí      | YYYYMMDD |
|   CONF               |  booleano      |    Especifica si la línea del pedido está confirmada |       No      | 0 o 1 |
|   SUPPLIER               |  cadena      |    Proveedor del pedido  |       Sí      | - |
|   ORDERCREATIONDATE               |  fecha      |    Fecha de la creación del pedido |       Sí      | YYYYMMDD |
|   CANCELED               |  booleano      |    Especifica si la línea del pedido se ha cancelado |       No      |  0 o 1 |


### Encabezados de la solicitud

| Nombre del encabezado | Descripción del encabezado | Obligatorio |
| --------------------- | -------------------------- | ----------- |
|     Content-Type                  |        Tipo de contenido de la solicitud                    |    Sí         |

### Cuerpo de la solicitud

Formato del cuerpo de la solicitud: application/json

Descripción del cuerpo de la solicitud:
```json
{
    "ORDERNUM": "ORDER_NUMBER",
    "LINE": LINE_NUMBER,
    "ITEMCODE": "CODIGO_PN_INTERNO",
    "QTY": CANTIDAD_PEDIDA,
    "RECQTY": CANTIDAD_YA_RECIBIDA,
    "RECDATE": "FECHA_DE_RECEPCION",
    "CONF": CONFIRMADO,
    "SUPPLIER": "PROVEEDOR",
    "ORDERCREATIONDATE": "FECHA_DE_CREACION_DEL_PEDIDO",
    "CANCELED": CANCELADO
}

```

### Parámetros de la respuesta

| Nombre del parámetro | Tipo de dato | Descripción del parámetro |Formato|
| -------------------- | ------------ | ------------------------ | ------------------------ |
|        ErrorContent              |      JSON        |       Json con la descripción del resultado de la operación                   | <span style="color:blue">[Formato ErrorContent](https://docs.ctneat.com/link/64#bkmrk-page-title)</span> |

### Códigos de estado de la respuesta

| Código de estado | Descripción del código de estado | Posibles razones |
| ---------------- | -------------------------------- | ---------------- |
|     200             |            OK                      |     La solicitud fue exitosa             |
|     400             |            Petición errónea                      |     	Alguno de los parámetros pasados no es correcto             |
|     500             |            Error interno                      |     	Error en el servidor             |
|     401             |            Unauthorized                      |     	El usuario no está autenticado             |

###  Ejemplo de consulta
`http://ctincoming/CTNEAT/ORDER/ADD/6A201F1F5147079FF9CA80DCDBB032AB386905091BC973B53F50E6493EC53868`
```json
{
    "ORDERNUM": "ORDER_1_API",
    "LINE": 1,
    "ITEMCODE": "CODIGO_PN",
    "QTY": 1000,
    "RECQTY": 0,
    "RECDATE": "20230610",
    "CONF": 1,
    "SUPPLIER": "CTNEAT",
    "ORDERCREATIONDATE": "20230509",
    "CANCELED": 0
}
```
### Ejemplo de respuesta
```json
{ "Success":true, "fault":{ "faultcode":"none", "faultstring":"Order added", "detail":"Order: CODIGO_PN-1 successfully added" } }
```

# Modificar pedidos

Con esta función, es posible llevar a cabo la modificación de los pedidos ya existentes en el sistema.
### URL
`/CTNEAT/ORDER/MODIF/{tkn}`
### Método HTTP

<span style="background-color: RGB(247,140,58); color: white; font-weight: bold; padding: 8px;">PUT</span>


### Parámetros de la solicitud

| Nombre del parámetro | Tipo de dato | Descripción del parámetro | Obligatorio | Formato del valor |
| -------------------- | ------------ | ------------------------ | ----------- | ----------- |
|   ORDERNUM               |  cadena      |    Número de pedido  |       Sí      | - |
|   LINE               |  numérico      |    Línea del pedido |       No      | - |
|   ITEMCODE               |  cadena      |    Código interno del artículo |       No      | -  | 
|   QTY               |  numérico      |    Cantidad pedida del artículo |       No      | - |
|   RECQTY               |  numérico      |    Cantidad ya recibida del artículo |       No      | - |
|   RECDATE               |  fecha      |    Descripción del artículo |       No      | YYYYMMDD |
|   CONF               |  booleano      |    Especifica si la línea del pedido está confirmada |       No      | 0 o 1 |
|   SUPPLIER               |  cadena      |    Proveedor del pedido  |       No      | - |
|   ORDERCREATIONDATE               |  fecha      |    Fecha de la creación del pedido |       No      | YYYYMMDD |
|   CANCELED               |  booleano      |    Especifica si la línea del pedido se ha cancelado |       No      |  0 o 1 |


### Encabezados de la solicitud

| Nombre del encabezado | Descripción del encabezado | Obligatorio |
| --------------------- | -------------------------- | ----------- |
|     Content-Type                  |        Tipo de contenido de la solicitud                    |    Sí         |

### Cuerpo de la solicitud

Formato del cuerpo de la solicitud: application/json

Descripción del cuerpo de la solicitud:
```json
{
    "ORDERNUM": "ORDER_NUMBER",
    "LINE": LINE_NUMBER,
    "ITEMCODE": "CODIGO_PN_INTERNO",
    "QTY": CANTIDAD_PEDIDA,
    "RECQTY": CANTIDAD_YA_RECIBIDA,
    "RECDATE": "FECHA_DE_RECEPCION",
    "CONF": CONFIRMADO,
    "SUPPLIER": "PROVEEDOR",
    "ORDERCREATIONDATE": "FECHA_DE_CREACION_DEL_PEDIDO",
    "CANCELED": CANCELADO
}

```

### Parámetros de la respuesta

| Nombre del parámetro | Tipo de dato | Descripción del parámetro |Formato|
| -------------------- | ------------ | ------------------------ | ------------------------ |
|        ErrorContent              |      JSON        |       Json con la descripción del resultado de la operación                   | <span style="color:blue">[Formato ErrorContent](https://docs.ctneat.com/link/64#bkmrk-page-title)</span> |

### Códigos de estado de la respuesta

| Código de estado | Descripción del código de estado | Posibles razones |
| ---------------- | -------------------------------- | ---------------- |
|     200             |            OK                      |     La solicitud fue exitosa             |
|     400             |            Petición errónea                      |     	Alguno de los parámetros pasados no es correcto             |
|     500             |            Error interno                      |     	Error en el servidor             |
|     401             |            Unauthorized                      |     	El usuario no está autenticado             |

###  Ejemplo de consulta
`http://ctincoming/CTNEAT/ORDER/MODIF/6A201F1F5147079FF9CA80DCDBB032AB386905091BC973B53F50E6493EC53868`
```json
{
    "ORDERNUM": "ORDER_1_API",
    "LINE": 1,
    "ITEMCODE": "CODIGO_PN",
    "QTY": 2000,
}
```
### Ejemplo de respuesta
```json
{ "Success":true, "fault":{ "faultcode":"none", "faultstring":"Order modified", "detail":"Order: CODIGO_PN-1 successfully modified" } }
```