| Funcion | Parámetros | Modifica | Regresa | cambia a estado | Descripción |
|---|---|---|---|---|---|
| solicitar/insert | cliente, ~fecha_envio, carrito | parametros + fecha_solicitud, client | _id | solicitando | insert |
| calculaTotal | codigo_descuento | carrito.subtotal, subtotal, total, descuentos, monto_descuento | subtotal,total | solicitando -> cotizado | |
| pagar | tipo_de_pago, datos_de_pago | tipo_de_pago, datos_de_pago | info de pago | cotizado -> pagado | |
| enviar | - | fecha_envio | ok | pagado -> enviado | |
| entregar | - | fecha_entrega | ok | enviado -> recibido | |
| Estado | Funciones proveedor | Funciones cliente | Modificables proveedor | Modificables cliente |
|---|---|---|---|---|
| solicitando | calculaTotal | calculaTotal | [carrito] | carrito, ~fecha_envio, codigo_descuento |
| cotizado | - | pagar | [carrito]->calculaTotal | [carrito]->calculaTotal |
| pagado | enviar | - | - | - |
| enviado | entregar | - | - | - |
| recibido | - | solicitar_devolucion | - | calificacion |
| Estado | Proveedor | Cliente |
|---|---|---|
| esperando_cotizacion | comentarios al cliente con notificacion | no paso nada |
| cotizado | comentarios al cliente con notificacion | no paso nada |
| pagado (o en tiempo) | solo superadmin | se cancela el pago |
| enviado | solo superadmin | cargo por cancelacion |
| recibido | Devolucion->se cancela el pago | debe solicitar devolucion |