From 58e15f932aff94db5c1c6f4854ce7c9c4305240b Mon Sep 17 00:00:00 2001 From: Felix Morales Date: Tue, 20 Feb 2024 17:37:47 -0600 Subject: [PATCH 1/4] reestructuracion del modal de solicitudes, se agrega el boton para eliminar la referencia --- .../SolicitudReapertura.tsx | 15 +++---- .../Corresponsales/TraficoCorresponsales.tsx | 39 +++++++++++-------- .../Reportes/RptCorresponsalesTraficos.tsx | 29 +++++++++++++- .../Corresponsales.Trafico.Services.ts | 4 +- 4 files changed, 59 insertions(+), 28 deletions(-) diff --git a/src/Components/Corresponsales/SolicitudReapertura/SolicitudReapertura.tsx b/src/Components/Corresponsales/SolicitudReapertura/SolicitudReapertura.tsx index c2eb99e..b667585 100644 --- a/src/Components/Corresponsales/SolicitudReapertura/SolicitudReapertura.tsx +++ b/src/Components/Corresponsales/SolicitudReapertura/SolicitudReapertura.tsx @@ -7,9 +7,10 @@ import { ICorresponsalTraficoSolicitudReapertura } from "../../../Interfaces/Cor interface IProps{ idTrafico: number, idUsuario: number, - close: () => void + close: () => void, + title: string, } -export const SolicitudReapertura:React.FC = (props) => { +export const CrearSolicitud:React.FC = (props) => { const [Motivo, setMotivo] = useState('') const [showMsg, setShowMsg] = useState(false) const [msg, setMsg] = useState('') @@ -19,14 +20,14 @@ export const SolicitudReapertura:React.FC = (props) => { return stickyValue !== null ? JSON.parse(stickyValue) : '' }) - const SolicitarReapertura = (motivo: string) => { - if(!motivo){ + const AppendSolicitud = () => { + if(!Motivo){ setHeader('Error'); setMsg('Favor de capturar una razon válida.') setShowMsg(true) return; } - if(motivo.length < 30){ + if(Motivo.length < 30){ setHeader('Error'); setMsg('La razón de su solicitud debe contener al menos 30 caracteres') setShowMsg(true) @@ -56,7 +57,7 @@ export const SolicitudReapertura:React.FC = (props) => { } return( <> -

Solicitud de Reapertura de Cuenta

+

{props.title}


@@ -72,7 +73,7 @@ export const SolicitudReapertura:React.FC = (props) => { - diff --git a/src/Components/Corresponsales/TraficoCorresponsales.tsx b/src/Components/Corresponsales/TraficoCorresponsales.tsx index 9141b6e..b30e76a 100644 --- a/src/Components/Corresponsales/TraficoCorresponsales.tsx +++ b/src/Components/Corresponsales/TraficoCorresponsales.tsx @@ -129,7 +129,7 @@ import { populatePedimentos } from '../../store/features/Corresponsales/Correspo import { populateRectificaciones } from '../../store/features/Corresponsales/CorresponsalesPedimentosRectificacionesSlice' import { NuevaRectificacion } from './Rectificaciones/NuevaRectificacion' import DTORectificacionHistorico from '../../DTO/Corresponsales/DTORectificacionHistorico' -import { SolicitudReapertura } from './SolicitudReapertura/SolicitudReapertura' +import { CrearSolicitud } from './SolicitudReapertura/SolicitudReapertura' import { AutorizarReapertura } from './SolicitudReapertura/AutorizarReapertura' import { DTOTraficoSolicitudReapertura } from '../../DTO/Corresponsales/DTOTraficoSolicitudReapertura' @@ -4324,23 +4324,28 @@ export default function TraficoCorresponsales (props:IProps) { ) : null} {LoadComponent===15 ? (
- { - setShowModal(false) - if(Perfil === 'Sup. Facturacion'){ - setHeader('Informativo'); - setMsg('Cuenta habilitada correctamente.') - setShowMsg(true) - setProceso(3) - return; - } - else{ - btnCuenta.current!.disabled = true; - setHeader('Informativo'); - setMsg('Solicitud creada correctamente.') - setShowMsg(true) - return; + { + setShowModal(false) + if(Perfil === 'Sup. Facturacion'){ + setHeader('Informativo'); + setMsg('Cuenta habilitada correctamente.') + setShowMsg(true) + setProceso(3) + return; + } + else{ + btnCuenta.current!.disabled = true; + setHeader('Informativo'); + setMsg('Solicitud creada correctamente.') + setShowMsg(true) + return; + } } - }}/> + }/>
) : null} {LoadComponent===16 ? ( diff --git a/src/Components/Reportes/RptCorresponsalesTraficos.tsx b/src/Components/Reportes/RptCorresponsalesTraficos.tsx index e500c87..0732fab 100644 --- a/src/Components/Reportes/RptCorresponsalesTraficos.tsx +++ b/src/Components/Reportes/RptCorresponsalesTraficos.tsx @@ -41,7 +41,7 @@ import { InitCorresponsalesContenedores, addCorresponsalesContenedores } from '. import ICorresponsalContenedores from '../../Interfaces/Corresponsales/ICorresponsalContenedores' import ICorresponsalFacturas from '../../Interfaces/Corresponsales/ICorresponsalFacturas' import ICatProveedores from '../../Interfaces/Catalogos/ICatProveedores' -import { FaCrow } from 'react-icons/fa' +import { FaCrow, FaTrash } from 'react-icons/fa' /* import '../../css/generic01.css' */ interface IProps {} @@ -93,7 +93,21 @@ export default function RptCorresponsalesTraficos(props: IProps) { ICatCorresponsales[] >([]) const hiddenFileInputRef = useRef(null); + const [Deleting, setDeleting] = useState(false); const [columnDefs] = useState([ + { + + field: 'acciones', + headerName: '', + width: 50, + cellRenderer: (params: any) => { + return ( + + {setDeleting(true)}}/> + + ) + }, + }, { field: 'id', headerName: 'id', width: 70, sortable: true, filter: true }, { field: 'proceso', @@ -275,7 +289,18 @@ export default function RptCorresponsalesTraficos(props: IProps) { }, []) function getParams(e: RowClickedEvent) { - AbreTrafico(e.data.id) + if(Deleting){ + if(e.data.pedimento > 0){ + setHeader('Error') + setMsg('Favor de borrar el pedimento para poder eliminar la referencia.') + setShowMsg(true) + setDeleting(false) + return; + } + console.log('borrando trafico') + }else{ + AbreTrafico(e.data.id) + } } function AbreTrafico(id: number) { diff --git a/src/Services/Corresponsalias/Corresponsales.Trafico.Services.ts b/src/Services/Corresponsalias/Corresponsales.Trafico.Services.ts index a21d80e..6872d25 100644 --- a/src/Services/Corresponsalias/Corresponsales.Trafico.Services.ts +++ b/src/Services/Corresponsalias/Corresponsales.Trafico.Services.ts @@ -48,10 +48,10 @@ class Corresponsales_Trafico_DataService { return http.post(`/Corresponsalias/Traficos/Append/LayoutAlen?idTrafico=${idTrafico}&fileId=${fileId}`); } AppendSolicitudReapertura(solicitud: ICorresponsalTraficoSolicitudReapertura){ - return http.post(`/Corresponsalias/Traficos/Solicitud/Append`, solicitud) + return http.post(`/Corresponsalias/Solicitudes/Reapertura/Append`, solicitud) } GetSolicitudReapertura(idTrafico: number){ - return http.get(`/Corresponsalias/Traficos/Solicitud?idTrafico=${idTrafico}`) + return http.get(`/Corresponsalias/Solicitudes/Reapertura/Get?idTrafico=${idTrafico}`) } } export default new Corresponsales_Trafico_DataService(); \ No newline at end of file From 636cac25d03aa5cbeeed99384dd1bdaa4d712837 Mon Sep 17 00:00:00 2001 From: Felix Morales Date: Thu, 22 Feb 2024 11:24:43 -0600 Subject: [PATCH 2/4] Cambiar nombre a los archivos para crear y autorizar solicitudes --- ...{AutorizarReapertura.tsx => AutorizarSolicitud.tsx} | 10 +++++----- .../{SolicitudReapertura.tsx => CrearSolicitud.tsx} | 4 ++-- .../Corresponsales/TraficoCorresponsales.tsx | 10 +++++----- ...coSolicitudReapertura.ts => DTOTraficoSolicitud.ts} | 2 +- ...dReapertura.ts => ICorresponsalTraficoSolicitud.ts} | 2 +- .../Corresponsalias/Corresponsales.Trafico.Services.ts | 10 +++++----- 6 files changed, 19 insertions(+), 19 deletions(-) rename src/Components/Corresponsales/SolicitudReapertura/{AutorizarReapertura.tsx => AutorizarSolicitud.tsx} (91%) rename src/Components/Corresponsales/SolicitudReapertura/{SolicitudReapertura.tsx => CrearSolicitud.tsx} (93%) rename src/DTO/Corresponsales/{DTOTraficoSolicitudReapertura.ts => DTOTraficoSolicitud.ts} (78%) rename src/Interfaces/Corresponsales/{ICorresponsalTraficoSolicitudReapertura.ts => ICorresponsalTraficoSolicitud.ts} (80%) diff --git a/src/Components/Corresponsales/SolicitudReapertura/AutorizarReapertura.tsx b/src/Components/Corresponsales/SolicitudReapertura/AutorizarSolicitud.tsx similarity index 91% rename from src/Components/Corresponsales/SolicitudReapertura/AutorizarReapertura.tsx rename to src/Components/Corresponsales/SolicitudReapertura/AutorizarSolicitud.tsx index cd26367..1ddee74 100644 --- a/src/Components/Corresponsales/SolicitudReapertura/AutorizarReapertura.tsx +++ b/src/Components/Corresponsales/SolicitudReapertura/AutorizarSolicitud.tsx @@ -2,17 +2,17 @@ import { Button, Col, Form, FormLabel, Row } from "react-bootstrap"; import { CiWarning } from "react-icons/ci"; import { MsgInformativo } from "../../Utils/Toast/msgInformativo"; import '../../../css/generic01.css' -import { ICorresponsalTraficoSolicitudReapertura } from "../../../Interfaces/Corresponsales/ICorresponsalTraficoSolicitudReapertura"; -import { DTOTraficoSolicitudReapertura } from "../../../DTO/Corresponsales/DTOTraficoSolicitudReapertura"; +import { ICorresponsalTraficoSolicitud } from "../../../Interfaces/Corresponsales/ICorresponsalTraficoSolicitud"; +import { DTOTraficoSolicitud } from "../../../DTO/Corresponsales/DTOTraficoSolicitud"; import CTrafDataService from "../../../Services/Corresponsalias/Corresponsales.Trafico.Services" import { useState } from "react"; interface IProps { - solicitud: DTOTraficoSolicitudReapertura; + solicitud: DTOTraficoSolicitud; userId: number; close: (estado: number) => void } -export const AutorizarReapertura:React.FC = (props) => { +export const AutorizarSolicitud:React.FC = (props) => { const [Motivo, setMotivo] = useState('') const [showMsg, setShowMsg] = useState(false) const [msg, setMsg] = useState('') @@ -32,7 +32,7 @@ export const AutorizarReapertura:React.FC = (props) => { setShowMsg(true) return; } - var solicitud: ICorresponsalTraficoSolicitudReapertura = { + var solicitud: ICorresponsalTraficoSolicitud = { id: props.solicitud.id, idTrafico: props.solicitud.idTrafico, idUsuarioSolicita: props.solicitud.idUsuarioSolicita, diff --git a/src/Components/Corresponsales/SolicitudReapertura/SolicitudReapertura.tsx b/src/Components/Corresponsales/SolicitudReapertura/CrearSolicitud.tsx similarity index 93% rename from src/Components/Corresponsales/SolicitudReapertura/SolicitudReapertura.tsx rename to src/Components/Corresponsales/SolicitudReapertura/CrearSolicitud.tsx index b667585..ea734a1 100644 --- a/src/Components/Corresponsales/SolicitudReapertura/SolicitudReapertura.tsx +++ b/src/Components/Corresponsales/SolicitudReapertura/CrearSolicitud.tsx @@ -2,7 +2,7 @@ import React, { useState } from "react" import { Button, Col, Form, FormLabel, Row } from "react-bootstrap" import CTrafDataService from "../../../Services/Corresponsalias/Corresponsales.Trafico.Services" import { MsgInformativo } from "../../Utils/Toast/msgInformativo" -import { ICorresponsalTraficoSolicitudReapertura } from "../../../Interfaces/Corresponsales/ICorresponsalTraficoSolicitudReapertura" +import { ICorresponsalTraficoSolicitud } from "../../../Interfaces/Corresponsales/ICorresponsalTraficoSolicitud" interface IProps{ idTrafico: number, @@ -33,7 +33,7 @@ export const CrearSolicitud:React.FC = (props) => { setShowMsg(true) return; } - var solicitud: ICorresponsalTraficoSolicitudReapertura = { + var solicitud: ICorresponsalTraficoSolicitud = { id: 0, idTrafico: props.idTrafico, idUsuarioSolicita: props.idUsuario, diff --git a/src/Components/Corresponsales/TraficoCorresponsales.tsx b/src/Components/Corresponsales/TraficoCorresponsales.tsx index b30e76a..7f4a661 100644 --- a/src/Components/Corresponsales/TraficoCorresponsales.tsx +++ b/src/Components/Corresponsales/TraficoCorresponsales.tsx @@ -129,9 +129,9 @@ import { populatePedimentos } from '../../store/features/Corresponsales/Correspo import { populateRectificaciones } from '../../store/features/Corresponsales/CorresponsalesPedimentosRectificacionesSlice' import { NuevaRectificacion } from './Rectificaciones/NuevaRectificacion' import DTORectificacionHistorico from '../../DTO/Corresponsales/DTORectificacionHistorico' -import { CrearSolicitud } from './SolicitudReapertura/SolicitudReapertura' -import { AutorizarReapertura } from './SolicitudReapertura/AutorizarReapertura' -import { DTOTraficoSolicitudReapertura } from '../../DTO/Corresponsales/DTOTraficoSolicitudReapertura' +import { CrearSolicitud } from './SolicitudReapertura/CrearSolicitud' +import { AutorizarSolicitud } from './SolicitudReapertura/AutorizarSolicitud' +import { DTOTraficoSolicitud } from '../../DTO/Corresponsales/DTOTraficoSolicitud' interface IProps { IDTrafico: number @@ -356,7 +356,7 @@ export default function TraficoCorresponsales (props:IProps) { const [IsDisabled, setIsDisabled] = useState(false); const hiddenFileInputRef = useRef(null); const btnCuenta = useRef(null); - const [solicitudReapertura, setSolicitudReapertura] = useState({ + const [solicitudReapertura, setSolicitudReapertura] = useState({ id: 0, idTrafico: 0, idUsuarioSolicita: 0, @@ -4350,7 +4350,7 @@ export default function TraficoCorresponsales (props:IProps) { ) : null} {LoadComponent===16 ? (
- { let texto = estado === 0 ? 'rechazada' : 'autorizada' setProceso(estado === 2 ? 3 : 4) diff --git a/src/DTO/Corresponsales/DTOTraficoSolicitudReapertura.ts b/src/DTO/Corresponsales/DTOTraficoSolicitud.ts similarity index 78% rename from src/DTO/Corresponsales/DTOTraficoSolicitudReapertura.ts rename to src/DTO/Corresponsales/DTOTraficoSolicitud.ts index ecb30cf..89b39d2 100644 --- a/src/DTO/Corresponsales/DTOTraficoSolicitudReapertura.ts +++ b/src/DTO/Corresponsales/DTOTraficoSolicitud.ts @@ -1,4 +1,4 @@ -export interface DTOTraficoSolicitudReapertura{ +export interface DTOTraficoSolicitud{ id: number, idTrafico: number, idUsuarioSolicita: number, diff --git a/src/Interfaces/Corresponsales/ICorresponsalTraficoSolicitudReapertura.ts b/src/Interfaces/Corresponsales/ICorresponsalTraficoSolicitud.ts similarity index 80% rename from src/Interfaces/Corresponsales/ICorresponsalTraficoSolicitudReapertura.ts rename to src/Interfaces/Corresponsales/ICorresponsalTraficoSolicitud.ts index 8e674ef..613b436 100644 --- a/src/Interfaces/Corresponsales/ICorresponsalTraficoSolicitudReapertura.ts +++ b/src/Interfaces/Corresponsales/ICorresponsalTraficoSolicitud.ts @@ -1,4 +1,4 @@ -export interface ICorresponsalTraficoSolicitudReapertura{ +export interface ICorresponsalTraficoSolicitud{ id:number, idTrafico: number, idUsuarioSolicita: number, diff --git a/src/Services/Corresponsalias/Corresponsales.Trafico.Services.ts b/src/Services/Corresponsalias/Corresponsales.Trafico.Services.ts index 6872d25..3b3409f 100644 --- a/src/Services/Corresponsalias/Corresponsales.Trafico.Services.ts +++ b/src/Services/Corresponsalias/Corresponsales.Trafico.Services.ts @@ -7,8 +7,8 @@ import IRespuesta from "../../Interfaces/IRespuesta"; import ICorresponsalRectificacionHistorico from "../../Interfaces/Corresponsales/ICorresponsalRectificacionHistorico"; import DTORectificacionHistorico from "../../DTO/Corresponsales/DTORectificacionHistorico"; import IReporteOperacionesNewell from "../../Interfaces/ReportesClientes/IReporteOperacionesNewell"; -import { ICorresponsalTraficoSolicitudReapertura } from "../../Interfaces/Corresponsales/ICorresponsalTraficoSolicitudReapertura"; -import { DTOTraficoSolicitudReapertura } from "../../DTO/Corresponsales/DTOTraficoSolicitudReapertura"; +import { ICorresponsalTraficoSolicitud } from "../../Interfaces/Corresponsales/ICorresponsalTraficoSolicitud"; +import { DTOTraficoSolicitud } from "../../DTO/Corresponsales/DTOTraficoSolicitud"; class Corresponsales_Trafico_DataService { GetAll(id: number) { @@ -47,11 +47,11 @@ class Corresponsales_Trafico_DataService { AppendFacturasContenedoresAlen(idTrafico:number, fileId:number){ return http.post(`/Corresponsalias/Traficos/Append/LayoutAlen?idTrafico=${idTrafico}&fileId=${fileId}`); } - AppendSolicitudReapertura(solicitud: ICorresponsalTraficoSolicitudReapertura){ - return http.post(`/Corresponsalias/Solicitudes/Reapertura/Append`, solicitud) + AppendSolicitudReapertura(solicitud: ICorresponsalTraficoSolicitud){ + return http.post(`/Corresponsalias/Solicitudes/Reapertura/Append`, solicitud) } GetSolicitudReapertura(idTrafico: number){ - return http.get(`/Corresponsalias/Solicitudes/Reapertura/Get?idTrafico=${idTrafico}`) + return http.get(`/Corresponsalias/Solicitudes/Reapertura/Get?idTrafico=${idTrafico}`) } } export default new Corresponsales_Trafico_DataService(); \ No newline at end of file From 9b3b75bd0a1f32df77ffd11e5c250380a543648f Mon Sep 17 00:00:00 2001 From: Felix Morales Date: Fri, 23 Feb 2024 16:47:06 -0600 Subject: [PATCH 3/4] Crear y autorizar solicitudes para eliminar traficos --- .../AutorizarSolicitud.tsx | 13 ++- .../SolicitudReapertura/CrearSolicitud.tsx | 7 +- .../Corresponsales/TraficoCorresponsales.tsx | 103 +++++++++++------- .../Reportes/RptCorresponsalesTraficos.tsx | 43 +++++++- .../Corresponsales.Trafico.Services.ts | 8 -- ...orresponsales.Trafico.Solicitud.Service.ts | 16 +++ 6 files changed, 137 insertions(+), 53 deletions(-) create mode 100644 src/Services/Corresponsalias/Corresponsales.Trafico.Solicitud.Service.ts diff --git a/src/Components/Corresponsales/SolicitudReapertura/AutorizarSolicitud.tsx b/src/Components/Corresponsales/SolicitudReapertura/AutorizarSolicitud.tsx index 1ddee74..2327e8f 100644 --- a/src/Components/Corresponsales/SolicitudReapertura/AutorizarSolicitud.tsx +++ b/src/Components/Corresponsales/SolicitudReapertura/AutorizarSolicitud.tsx @@ -6,11 +6,14 @@ import { ICorresponsalTraficoSolicitud } from "../../../Interfaces/Corresponsale import { DTOTraficoSolicitud } from "../../../DTO/Corresponsales/DTOTraficoSolicitud"; import CTrafDataService from "../../../Services/Corresponsalias/Corresponsales.Trafico.Services" import { useState } from "react"; +import CorresponsalesTraficoSolicitudService from "../../../Services/Corresponsalias/Corresponsales.Trafico.Solicitud.Service"; interface IProps { solicitud: DTOTraficoSolicitud; userId: number; close: (estado: number) => void + title: string; + mensaje: string; } export const AutorizarSolicitud:React.FC = (props) => { const [Motivo, setMotivo] = useState('') @@ -18,6 +21,10 @@ export const AutorizarSolicitud:React.FC = (props) => { const [msg, setMsg] = useState('') const [header, setHeader] = useState('') const [SelectedOption, setSelectedOption] = useState(2) + const [Perfil, setPerfil] = useState(() => { + const stickyValue = window.localStorage.getItem('Perfil') + return stickyValue !== null ? JSON.parse(stickyValue) : '' + }) const AppendSolicitud = () =>{ if(SelectedOption === 0 && !Motivo){ @@ -43,7 +50,7 @@ export const AutorizarSolicitud:React.FC = (props) => { motivoRechazo: Motivo, estado: SelectedOption } - CTrafDataService.AppendSolicitudReapertura(solicitud) + CorresponsalesTraficoSolicitudService.AppendSolicitud(solicitud, Perfil)! .then((resp) => { if(resp.data.id > 0){ props.close(SelectedOption) @@ -59,7 +66,7 @@ export const AutorizarSolicitud:React.FC = (props) => { return( <> -

Solicitud de Reapertura de Cuenta

+

{props.title}


@@ -67,7 +74,7 @@ export const AutorizarSolicitud:React.FC = (props) => {

- {props.solicitud.usuarioSolicita} solicita la reapertura de esta cuenta por el motivo: + {props.solicitud.usuarioSolicita} {props.mensaje}

{props.solicitud.motivoSolicita}

diff --git a/src/Components/Corresponsales/SolicitudReapertura/CrearSolicitud.tsx b/src/Components/Corresponsales/SolicitudReapertura/CrearSolicitud.tsx index ea734a1..850023c 100644 --- a/src/Components/Corresponsales/SolicitudReapertura/CrearSolicitud.tsx +++ b/src/Components/Corresponsales/SolicitudReapertura/CrearSolicitud.tsx @@ -3,6 +3,7 @@ import { Button, Col, Form, FormLabel, Row } from "react-bootstrap" import CTrafDataService from "../../../Services/Corresponsalias/Corresponsales.Trafico.Services" import { MsgInformativo } from "../../Utils/Toast/msgInformativo" import { ICorresponsalTraficoSolicitud } from "../../../Interfaces/Corresponsales/ICorresponsalTraficoSolicitud" +import CorresponsalesTraficoSolicitudService from "../../../Services/Corresponsalias/Corresponsales.Trafico.Solicitud.Service" interface IProps{ idTrafico: number, @@ -39,12 +40,12 @@ export const CrearSolicitud:React.FC = (props) => { idUsuarioSolicita: props.idUsuario, fechaSolicita: undefined, motivoSolicita: Motivo, - idUsuarioAutoriza: Perfil === 'Sup. Facturacion' ? props.idUsuario : 0, + idUsuarioAutoriza: Perfil.includes('Sup') ? props.idUsuario : 0, //Si es un supervisor se asigna su id al usuario que autoriza ya que la solicitud no requiere ser autorizada por otro usuario fechaAutoriza: undefined, motivoRechazo: "", - estado: Perfil === 'Sup. Facturacion' ? 2 : 1 + estado: Perfil.includes('Sup') ? 2 : 1 //Si es un supervisor se asigna el estado de la solicitud como autorizada desde que se crea } - CTrafDataService.AppendSolicitudReapertura(solicitud) + CorresponsalesTraficoSolicitudService.AppendSolicitud(solicitud, Perfil)! .then((resp) => { props.close() }) diff --git a/src/Components/Corresponsales/TraficoCorresponsales.tsx b/src/Components/Corresponsales/TraficoCorresponsales.tsx index 7f4a661..b6d4477 100644 --- a/src/Components/Corresponsales/TraficoCorresponsales.tsx +++ b/src/Components/Corresponsales/TraficoCorresponsales.tsx @@ -132,6 +132,7 @@ import DTORectificacionHistorico from '../../DTO/Corresponsales/DTORectificacion import { CrearSolicitud } from './SolicitudReapertura/CrearSolicitud' import { AutorizarSolicitud } from './SolicitudReapertura/AutorizarSolicitud' import { DTOTraficoSolicitud } from '../../DTO/Corresponsales/DTOTraficoSolicitud' +import CorresponsalesTraficoSolicitudService from '../../Services/Corresponsalias/Corresponsales.Trafico.Solicitud.Service' interface IProps { IDTrafico: number @@ -356,7 +357,7 @@ export default function TraficoCorresponsales (props:IProps) { const [IsDisabled, setIsDisabled] = useState(false); const hiddenFileInputRef = useRef(null); const btnCuenta = useRef(null); - const [solicitudReapertura, setSolicitudReapertura] = useState({ + const [solicitud, setSolicitud] = useState({ id: 0, idTrafico: 0, idUsuarioSolicita: 0, @@ -581,25 +582,35 @@ export default function TraficoCorresponsales (props:IProps) { return today.getFullYear().toString() } - const LoadEverything = () => { - let clientes: IClientes[] = []; - //Primero se valida si el tráfico tiene solicitud de reapertura de cuenta - CTrafDataService.GetSolicitudReapertura(props.IDTrafico) - .then(resp => { - if(resp.data.id > 0){ - setSolicitudReapertura(solicitud => ({ - ...solicitud, - ...resp.data - })) - if(Perfil === 'Sup. Facturacion'){//Validar si el usuario puede autorizar la petición - showModalBox(16, 'modal-30w', true)//Si puede se muestra el modal para autorizar la petición + const GetSolicitudes = async () => { + await CorresponsalesTraficoSolicitudService.GetSolicitud(props.IDTrafico, Perfil)! + .then(resp => { + if(resp.data.id > 0){ + setSolicitud(solicitud => ({ + ...solicitud, + ...resp.data + })) + if(Perfil === 'Sup. Corresponsalias'){//Si el usuario es supervisor de corresponsalias + showModalBox(17, 'modal-30w', true)//Se muestra el modal para autorizar la petición + } + if(Perfil.includes('Facturacion')){//Valida si es un usuario de facturacion + //Se cambian las propiedades del botón con el que se hace la solicitud + btnCuenta.current!.innerText = 'Pediente de Autorizar'; + btnCuenta.current!.disabled = true; + if(Perfil === 'Sup. Facturacion'){//Si el usuario es supervisor + showModalBox(16, 'modal-30w', true)//Se muestra el modal para autorizar la petición + } + + } + } - //Se cambia el texto del botón con el que se hace la solicitud - btnCuenta.current!.innerText = 'Pediente de Autorizar'; - btnCuenta.current!.disabled = true; - } - }) - ClavesPedimentosService.getAllClavesPedimentos() + }) + } + + const LoadEverything = async () => { + let clientes: IClientes[] = []; + await GetSolicitudes(); + await ClavesPedimentosService.getAllClavesPedimentos() .then(response => setClavesPedimentos(response.data)) .catch((e: Error) => { setHeader('Error') @@ -607,7 +618,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - CorresponsalesDataService.getAll() + await CorresponsalesDataService.getAll() .then((response) => { dispatch(populateCatCorresponsales(response.data)) }) @@ -617,7 +628,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - CTrafDataService.GetCorresponsalesTraficoEstatus() + await CTrafDataService.GetCorresponsalesTraficoEstatus() .then((response) => { setDataCatEstatus(response.data) }) @@ -628,7 +639,7 @@ export default function TraficoCorresponsales (props:IProps) { return }) - TiposMercanciaService.GetAll() + await TiposMercanciaService.GetAll() .then((response) => { setTiposMercancia(response.data); }) @@ -639,7 +650,7 @@ export default function TraficoCorresponsales (props:IProps) { return }); - CFacDataService.getAll(IDTrafico) + await CFacDataService.getAll(IDTrafico) .then((response) => { dispatch(InitCorresponsalesFacturas(IDTrafico)) response.data.forEach((element) => { @@ -652,7 +663,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - CFac3erDataService.getAll(IDTrafico) + await CFac3erDataService.getAll(IDTrafico) .then((response) => { dispatch(InitCorresponsalesFacturasTerceros(IDTrafico)) response.data.forEach((element) => { @@ -665,7 +676,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - CContDataService.getAll(IDTrafico) + await CContDataService.getAll(IDTrafico) .then((response) => { dispatch(InitCorresponsalesContenedores(IDTrafico)) response.data.forEach((element) => { @@ -678,7 +689,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - ClientesDataService.getAllClientes(0) + await ClientesDataService.getAllClientes(0) .then((response) => { clientes = response.data; setClientes(response.data) @@ -689,7 +700,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - CAntDataService.getAll(IDTrafico) + await CAntDataService.getAll(IDTrafico) .then((response) => { dispatch(populateCorresponsalesAnticipos(response.data)) }) @@ -699,7 +710,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - CGuiasDataService.getAll(IDTrafico) + await CGuiasDataService.getAll(IDTrafico) .then((response) => { dispatch(populateCorresponsalesGuias(response.data)) }) @@ -709,7 +720,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - ProvDataService.getAll(0) + await ProvDataService.getAll(0) .then((response) => { dispatch(populateCatProveedores(response.data)) }) @@ -719,7 +730,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - CCatTiposDocumentos.getAll(2206, 1) + await CCatTiposDocumentos.getAll(2206, 1) .then((response) => { setCatTiposDocumentos(response.data) }) @@ -729,7 +740,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - CCatTiposDocumentos.getAll(2206, 2) + await CCatTiposDocumentos.getAll(2206, 2) .then((response) => { setCatTiposDocumentosInfoCorresponsal(response.data) }) @@ -739,7 +750,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - CCueCompService.GetAllEstatus() + await CCueCompService.GetAllEstatus() .then((response) => { dispatch( populateCorresponsalesCuentasComplementariasEstatus(response.data) @@ -751,7 +762,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - CTrafDataService.GetAll(IDTrafico) + await CTrafDataService.GetAll(IDTrafico) .then((response) => { setFolioTrafico(response.data.folioGemco) setProceso(response.data.proceso) @@ -797,7 +808,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - CContaDataService.Get(IDTrafico, 2, 1) + await CContaDataService.Get(IDTrafico, 2, 1) .then((response) => { setRechazosTrafico(response.data) }) @@ -807,7 +818,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - CContaDataService.GetHistorial(IDTrafico) + await CContaDataService.GetHistorial(IDTrafico) .then((response) => { setRechazosContabilidad(response.data) }) @@ -817,7 +828,7 @@ export default function TraficoCorresponsales (props:IProps) { setShowMsg(true) return }) - PedimentosConsolidadosService.GetAll(IDTrafico) + await PedimentosConsolidadosService.GetAll(IDTrafico) .then((resp) => { dispatch(populatePedimentos(resp.data)) }) @@ -4350,7 +4361,9 @@ export default function TraficoCorresponsales (props:IProps) { ) : null} {LoadComponent===16 ? (
- { let texto = estado === 0 ? 'rechazada' : 'autorizada' setProceso(estado === 2 ? 3 : 4) @@ -4362,6 +4375,22 @@ export default function TraficoCorresponsales (props:IProps) { }}/>
) : null} + {LoadComponent===17 ? ( +
+ { + let texto = estado === 0 ? 'rechazada' : 'autorizada' + props.onClose(true); + setShowModal(false) + setHeader('Informativo'); + setMsg(`Solicitud ${texto} correctamente.`) + setShowMsg(true) + return; + }}/> +
+ ) : null} ([]) const [show, setShowMsg] = useState(false) const [ShowModal, setShowModal] = useState(false) + const [ShowModalSolicitud, setShowModalSolicitud] = useState(false) const [header, setHeader] = useState('') const [msg, setMsg] = useState('') const [Inicio, setInicio] = useState(currentDate(-365)) @@ -100,6 +102,7 @@ export default function RptCorresponsalesTraficos(props: IProps) { field: 'acciones', headerName: '', width: 50, + hide: !Perfil.includes('Corresponsalias'), cellRenderer: (params: any) => { return ( @@ -297,7 +300,7 @@ export default function RptCorresponsalesTraficos(props: IProps) { setDeleting(false) return; } - console.log('borrando trafico') + setShowModalSolicitud(true) }else{ AbreTrafico(e.data.id) } @@ -560,6 +563,10 @@ export default function RptCorresponsalesTraficos(props: IProps) { }) } + const handleClose = () => { + setShowModalSolicitud(false) + setDeleting(false) + } return (
@@ -798,6 +805,38 @@ export default function RptCorresponsalesTraficos(props: IProps) {
+ + +
+ { + setShowModalSolicitud(false) + if(Perfil === 'Sup. Corresponsalias'){ + setHeader('Informativo'); + setMsg('Referencia eliminada correctamente.') + setShowMsg(true) + return; + } + else{ + setHeader('Informativo'); + setMsg('Solicitud creada correctamente.') + setShowMsg(true) + return; + } + } + }/> +
+
+
) } diff --git a/src/Services/Corresponsalias/Corresponsales.Trafico.Services.ts b/src/Services/Corresponsalias/Corresponsales.Trafico.Services.ts index 3b3409f..13cc374 100644 --- a/src/Services/Corresponsalias/Corresponsales.Trafico.Services.ts +++ b/src/Services/Corresponsalias/Corresponsales.Trafico.Services.ts @@ -7,8 +7,6 @@ import IRespuesta from "../../Interfaces/IRespuesta"; import ICorresponsalRectificacionHistorico from "../../Interfaces/Corresponsales/ICorresponsalRectificacionHistorico"; import DTORectificacionHistorico from "../../DTO/Corresponsales/DTORectificacionHistorico"; import IReporteOperacionesNewell from "../../Interfaces/ReportesClientes/IReporteOperacionesNewell"; -import { ICorresponsalTraficoSolicitud } from "../../Interfaces/Corresponsales/ICorresponsalTraficoSolicitud"; -import { DTOTraficoSolicitud } from "../../DTO/Corresponsales/DTOTraficoSolicitud"; class Corresponsales_Trafico_DataService { GetAll(id: number) { @@ -47,11 +45,5 @@ class Corresponsales_Trafico_DataService { AppendFacturasContenedoresAlen(idTrafico:number, fileId:number){ return http.post(`/Corresponsalias/Traficos/Append/LayoutAlen?idTrafico=${idTrafico}&fileId=${fileId}`); } - AppendSolicitudReapertura(solicitud: ICorresponsalTraficoSolicitud){ - return http.post(`/Corresponsalias/Solicitudes/Reapertura/Append`, solicitud) - } - GetSolicitudReapertura(idTrafico: number){ - return http.get(`/Corresponsalias/Solicitudes/Reapertura/Get?idTrafico=${idTrafico}`) - } } export default new Corresponsales_Trafico_DataService(); \ No newline at end of file diff --git a/src/Services/Corresponsalias/Corresponsales.Trafico.Solicitud.Service.ts b/src/Services/Corresponsalias/Corresponsales.Trafico.Solicitud.Service.ts new file mode 100644 index 0000000..1a4a116 --- /dev/null +++ b/src/Services/Corresponsalias/Corresponsales.Trafico.Solicitud.Service.ts @@ -0,0 +1,16 @@ +import { DTOTraficoSolicitud } from "../../DTO/Corresponsales/DTOTraficoSolicitud" +import { ICorresponsalTraficoSolicitud } from "../../Interfaces/Corresponsales/ICorresponsalTraficoSolicitud" +import http from "../common/http-common"; +class TraficoSolicitudServices { + AppendSolicitud(solicitud: ICorresponsalTraficoSolicitud, Perfil: string){ + if(Perfil.includes('Corresponsalias')){return http.post(`/Corresponsalias/Solicitudes/EliminarCuenta/Append`, solicitud)} + if(Perfil.includes('Facturacion')){return http.post(`/Corresponsalias/Solicitudes/Reapertura/Append`, solicitud)} + } + + GetSolicitud(idTrafico: number, Perfil: string){ + if(Perfil.includes('Corresponsalias')){return http.get(`/Corresponsalias/Solicitudes/EliminarCuenta/Get?idTrafico=${idTrafico}`)} + if(Perfil.includes('Facturacion')){return http.get(`/Corresponsalias/Solicitudes/Reapertura/Get?idTrafico=${idTrafico}`)} + } +} + +export default new TraficoSolicitudServices() \ No newline at end of file From 2871512547c568148d9956507227e95aacaa8336 Mon Sep 17 00:00:00 2001 From: Felix Morales Date: Tue, 27 Feb 2024 09:43:00 -0600 Subject: [PATCH 4/4] Ocultar el boton para crear solicitudes cuando la referencia ya tiene una creada, creacion del indicador de solicitudes para el supervisor de corresponsalias --- .../Corresponsales/CCorresponsalesTrafico.ts | 8 +++- .../AutorizarSolicitud.tsx | 30 ++++++++++++- .../SolicitudReapertura/CrearSolicitud.tsx | 30 ++++++++++++- .../Corresponsales/TraficoCorresponsales.tsx | 44 ++++++++++++++----- src/Components/Dashboard/Dashboard.tsx | 4 +- .../Dashboard/DashboardContabilidad.tsx | 3 +- .../Dashboard/DashboardCorresponsales.tsx | 36 ++++++++++++++- .../Dashboard/DashboardFacturacion.tsx | 2 +- .../Reportes/RptCorresponsalesTraficos.tsx | 8 +++- .../Corresponsales/ICorresponsalTrafico.ts | 1 + ...orresponsales.Trafico.Solicitud.Service.ts | 17 ++++--- .../Dashboard.Corresponsales.Services.ts | 3 ++ src/index.tsx | 4 +- .../CorresponsalesTraficoSlice.ts | 3 +- 14 files changed, 159 insertions(+), 34 deletions(-) diff --git a/src/Classes/Corresponsales/CCorresponsalesTrafico.ts b/src/Classes/Corresponsales/CCorresponsalesTrafico.ts index 6445e46..cec6c8f 100644 --- a/src/Classes/Corresponsales/CCorresponsalesTrafico.ts +++ b/src/Classes/Corresponsales/CCorresponsalesTrafico.ts @@ -47,6 +47,7 @@ export default class CCorresponsalesTrafico implements ICorresponsalTrafico { causaRectificacion: string; totalHonorariosAA: number; totalGastosTerceros: number; + tieneSolicitud: number; constructor() { this.id=0 @@ -95,6 +96,7 @@ export default class CCorresponsalesTrafico implements ICorresponsalTrafico { this.causaRectificacion = '' this.totalHonorariosAA = 0 this.totalGastosTerceros = 0 + this.tieneSolicitud = 0 } public getEmptyObject(): ICorresponsalTrafico { @@ -144,7 +146,8 @@ export default class CCorresponsalesTrafico implements ICorresponsalTrafico { cargoA: 0, causaRectificacion: '', totalHonorariosAA: 0, - totalGastosTerceros: 0 + totalGastosTerceros: 0, + tieneSolicitud: 0 } } @@ -195,7 +198,8 @@ export default class CCorresponsalesTrafico implements ICorresponsalTrafico { cargoA: data.cargoA, causaRectificacion: data.causaRectificacion, totalHonorariosAA: data.totalHonorariosAA, - totalGastosTerceros: data.totalGastosTerceros + totalGastosTerceros: data.totalGastosTerceros, + tieneSolicitud: data.tieneSolicitud } } } \ No newline at end of file diff --git a/src/Components/Corresponsales/SolicitudReapertura/AutorizarSolicitud.tsx b/src/Components/Corresponsales/SolicitudReapertura/AutorizarSolicitud.tsx index 2327e8f..ef31060 100644 --- a/src/Components/Corresponsales/SolicitudReapertura/AutorizarSolicitud.tsx +++ b/src/Components/Corresponsales/SolicitudReapertura/AutorizarSolicitud.tsx @@ -21,6 +21,10 @@ export const AutorizarSolicitud:React.FC = (props) => { const [msg, setMsg] = useState('') const [header, setHeader] = useState('') const [SelectedOption, setSelectedOption] = useState(2) + const [Depto, setDepto] = useState(() => { + const stickyValue = window.localStorage.getItem('Departamento') + return stickyValue !== null ? JSON.parse(stickyValue) : '' + }) const [Perfil, setPerfil] = useState(() => { const stickyValue = window.localStorage.getItem('Perfil') return stickyValue !== null ? JSON.parse(stickyValue) : '' @@ -50,7 +54,31 @@ export const AutorizarSolicitud:React.FC = (props) => { motivoRechazo: Motivo, estado: SelectedOption } - CorresponsalesTraficoSolicitudService.AppendSolicitud(solicitud, Perfil)! + if(Depto === 'Facturacion'){ + AppendSolicitudReapertura(solicitud) + } + if(Depto === 'Corresponsalias'){ + AppendSolicitudEliminarReferencia(solicitud) + } + } + + const AppendSolicitudReapertura = (solicitud: ICorresponsalTraficoSolicitud) => { + CorresponsalesTraficoSolicitudService.AppendSolicitudReapertura(solicitud) + .then((resp) => { + if(resp.data.id > 0){ + props.close(SelectedOption) + } + }) + .catch(() => { + setHeader('Error'); + setMsg('Ocurrió un error. Favor de intentar nuevamente') + setShowMsg(true) + return; + }) + } + + const AppendSolicitudEliminarReferencia = (solicitud: ICorresponsalTraficoSolicitud) => { + CorresponsalesTraficoSolicitudService.AppendSolicitudEliminarReferencia(solicitud) .then((resp) => { if(resp.data.id > 0){ props.close(SelectedOption) diff --git a/src/Components/Corresponsales/SolicitudReapertura/CrearSolicitud.tsx b/src/Components/Corresponsales/SolicitudReapertura/CrearSolicitud.tsx index 850023c..6aa0073 100644 --- a/src/Components/Corresponsales/SolicitudReapertura/CrearSolicitud.tsx +++ b/src/Components/Corresponsales/SolicitudReapertura/CrearSolicitud.tsx @@ -16,8 +16,12 @@ export const CrearSolicitud:React.FC = (props) => { const [showMsg, setShowMsg] = useState(false) const [msg, setMsg] = useState('') const [header, setHeader] = useState('') + const [Depto, setDepto] = useState(() => { + const stickyValue = window.localStorage.getItem('Departamento') + return stickyValue !== null ? JSON.parse(stickyValue) : '' + }) const [Perfil, setPerfil] = useState(() => { - const stickyValue = window.localStorage.getItem('Perfil') + const stickyValue = window.localStorage.getItem('Perfil') return stickyValue !== null ? JSON.parse(stickyValue) : '' }) @@ -45,7 +49,29 @@ export const CrearSolicitud:React.FC = (props) => { motivoRechazo: "", estado: Perfil.includes('Sup') ? 2 : 1 //Si es un supervisor se asigna el estado de la solicitud como autorizada desde que se crea } - CorresponsalesTraficoSolicitudService.AppendSolicitud(solicitud, Perfil)! + if(Depto === 'Facturacion'){ + AppendSolicitudReapertura(solicitud) + } + if(Depto === 'Corresponsalias'){ + AppendSolicitudEliminarReferencia(solicitud) + } + } + + const AppendSolicitudReapertura = (solicitud: ICorresponsalTraficoSolicitud) => { + CorresponsalesTraficoSolicitudService.AppendSolicitudReapertura(solicitud) + .then((resp) => { + props.close() + }) + .catch(() => { + setHeader('Error'); + setMsg('Ocurrió un error. Favor de intentar nuevamente') + setShowMsg(true) + return; + }) + } + + const AppendSolicitudEliminarReferencia = (solicitud: ICorresponsalTraficoSolicitud) => { + CorresponsalesTraficoSolicitudService.AppendSolicitudEliminarReferencia(solicitud) .then((resp) => { props.close() }) diff --git a/src/Components/Corresponsales/TraficoCorresponsales.tsx b/src/Components/Corresponsales/TraficoCorresponsales.tsx index b6d4477..b9f88c4 100644 --- a/src/Components/Corresponsales/TraficoCorresponsales.tsx +++ b/src/Components/Corresponsales/TraficoCorresponsales.tsx @@ -583,28 +583,45 @@ export default function TraficoCorresponsales (props:IProps) { } const GetSolicitudes = async () => { - await CorresponsalesTraficoSolicitudService.GetSolicitud(props.IDTrafico, Perfil)! + if(Perfil === 'Sup. Corresponsalias'){ + await CorresponsalesTraficoSolicitudService.GetSolicitudEliminarReferencia(props.IDTrafico) .then(resp => { if(resp.data.id > 0){ setSolicitud(solicitud => ({ ...solicitud, ...resp.data })) - if(Perfil === 'Sup. Corresponsalias'){//Si el usuario es supervisor de corresponsalias - showModalBox(17, 'modal-30w', true)//Se muestra el modal para autorizar la petición - } - if(Perfil.includes('Facturacion')){//Valida si es un usuario de facturacion - //Se cambian las propiedades del botón con el que se hace la solicitud - btnCuenta.current!.innerText = 'Pediente de Autorizar'; - btnCuenta.current!.disabled = true; - if(Perfil === 'Sup. Facturacion'){//Si el usuario es supervisor - showModalBox(16, 'modal-30w', true)//Se muestra el modal para autorizar la petición - } - + showModalBox(17, 'modal-30w', true) + } + }).catch((e) => { + setHeader('Error') + setMsg('Ocurrio un error: ' + e) + setShowMsg(true) + return + }) + } + if(Depto === 'Facturacion'){ + await CorresponsalesTraficoSolicitudService.GetSolicitudReapertura(props.IDTrafico) + .then(resp => { + if(resp.data.id > 0){ + setSolicitud(solicitud => ({ + ...solicitud, + ...resp.data + })) + btnCuenta.current!.innerText = 'Pediente de Autorizar'; + btnCuenta.current!.disabled = true; + if(Perfil === 'Sup. Facturacion'){//Si el usuario es supervisor + showModalBox(16, 'modal-30w', true)//Se muestra el modal para autorizar la petición } } + }).catch((e) => { + setHeader('Error') + setMsg('Ocurrio un error: ' + e) + setShowMsg(true) + return }) + } } const LoadEverything = async () => { @@ -2073,6 +2090,9 @@ export default function TraficoCorresponsales (props:IProps) { mask="_" onValueChange={(values: any) => { const { value } = values + if(value.length === 0 || value === 0){ + setPedimento(0) + } if(value.length === 7 ){ CTrafDataService.ValidaTraficoDuplicado(Aduana, Patente, value, IDTrafico).then( response => { if(response.data !== ""){ diff --git a/src/Components/Dashboard/Dashboard.tsx b/src/Components/Dashboard/Dashboard.tsx index de5edbf..28bff0d 100644 --- a/src/Components/Dashboard/Dashboard.tsx +++ b/src/Components/Dashboard/Dashboard.tsx @@ -24,12 +24,12 @@ export default function Dashboard(props: IProps) {
- {[['Direccion', 'Sistemas', 'Corresponsalias'].includes(Depto) ? : ''].map( + {[['Direccion', 'Sistemas', 'Corresponsalias'].includes(Depto) ? : ''].map( (item) => { return {item} } )} - {[['Direccion', 'Sistemas', 'Contabilidad'].includes(Depto) ? : ''].map((item) => { + {[['Direccion', 'Sistemas', 'Contabilidad'].includes(Depto) ? : ''].map((item) => { return {item} })} {[['Direccion', 'Sistemas', 'Facturacion'].includes(Depto) ? : ''].map((item) => { diff --git a/src/Components/Dashboard/DashboardContabilidad.tsx b/src/Components/Dashboard/DashboardContabilidad.tsx index a2c6fcb..42e93cb 100644 --- a/src/Components/Dashboard/DashboardContabilidad.tsx +++ b/src/Components/Dashboard/DashboardContabilidad.tsx @@ -8,6 +8,7 @@ import DashboardDataService from '../../Services/Dashboard/Dashboard.Contabilida import DashboardCorresponsales from './DashboardCorresponsales' interface IProps { Depto: string; + Perfil:string; } export const DashboardContabilidad: FC = (props) => { @@ -55,7 +56,7 @@ export const DashboardContabilidad: FC = (props) => { return ( <> { - props.Depto === 'Contabilidad' ? : "" + props.Depto === 'Contabilidad' ? : "" } diff --git a/src/Components/Dashboard/DashboardCorresponsales.tsx b/src/Components/Dashboard/DashboardCorresponsales.tsx index b69ae03..a82910e 100644 --- a/src/Components/Dashboard/DashboardCorresponsales.tsx +++ b/src/Components/Dashboard/DashboardCorresponsales.tsx @@ -5,14 +5,20 @@ import DashboardDataService from '../../Services/Dashboard/Dashboard.Corresponsa import { useNavigate } from 'react-router-dom'; import ReactApexChart from 'react-apexcharts'; import { ApexOptions } from 'apexcharts'; +import { IconContext } from 'react-icons'; +import { FcSurvey } from 'react-icons/fc'; +import { MdTimer } from 'react-icons/md'; -interface IProps {} +interface IProps { + Perfil:string +} export default function DashboardCorresponsales(props: IProps) { let navigate = useNavigate(); const [TotalCorresponsales, setTotalCorresponsales] = useState(0); const [labels, setlabels] = useState([]); const [series, setseries] = useState([]); + const [Solicitudes, setSolicitudes] = useState(0); //const [TipoCambio, setTipoCambio] = useState(0) const [CircleOptions, setCirleOpcions] = useState({ labels: [ @@ -32,6 +38,9 @@ export default function DashboardCorresponsales(props: IProps) { }); useEffect(() => { + DashboardDataService.getSolicitudesEliminarCuenta().then((response) => { + setSolicitudes(response.data.total) + }).catch((e: Error) => {return;}) DashboardDataService.getCorresponsales() .then((response) => { console.log(response.data); @@ -144,6 +153,31 @@ export default function DashboardCorresponsales(props: IProps) { + {props.Perfil === 'Sup. Corresponsalias' ? + + + Facturación + + Solicitudes para eliminar cuenta

+
+ + + + + {Solicitudes} +
+
+ + + Ver mas... + + +
+ : "" + } ); }; diff --git a/src/Components/Dashboard/DashboardFacturacion.tsx b/src/Components/Dashboard/DashboardFacturacion.tsx index 29bcb3e..5603d1a 100644 --- a/src/Components/Dashboard/DashboardFacturacion.tsx +++ b/src/Components/Dashboard/DashboardFacturacion.tsx @@ -111,7 +111,7 @@ export const DashboardFacturacion: FC = (props) => { return ( <> { - props.Depto === 'Facturacion' ? : "" + props.Depto === 'Facturacion' ? : "" } diff --git a/src/Components/Reportes/RptCorresponsalesTraficos.tsx b/src/Components/Reportes/RptCorresponsalesTraficos.tsx index 7bd78fb..e99a25e 100644 --- a/src/Components/Reportes/RptCorresponsalesTraficos.tsx +++ b/src/Components/Reportes/RptCorresponsalesTraficos.tsx @@ -105,7 +105,7 @@ export default function RptCorresponsalesTraficos(props: IProps) { hide: !Perfil.includes('Corresponsalias'), cellRenderer: (params: any) => { return ( - + {setDeleting(true)}}/> ) @@ -300,6 +300,7 @@ export default function RptCorresponsalesTraficos(props: IProps) { setDeleting(false) return; } + setIDTrafico(e.data.id) setShowModalSolicitud(true) }else{ AbreTrafico(e.data.id) @@ -800,6 +801,7 @@ export default function RptCorresponsalesTraficos(props: IProps) { IDTrafico={IDTrafico} onClose={function (val: boolean): void { setShowModal(false) + generaReporte() }} /> @@ -817,9 +819,11 @@ export default function RptCorresponsalesTraficos(props: IProps) { { setShowModalSolicitud(false) + setDeleting(false) + generaReporte() if(Perfil === 'Sup. Corresponsalias'){ setHeader('Informativo'); setMsg('Referencia eliminada correctamente.') diff --git a/src/Interfaces/Corresponsales/ICorresponsalTrafico.ts b/src/Interfaces/Corresponsales/ICorresponsalTrafico.ts index d8b8ad1..2d9517f 100644 --- a/src/Interfaces/Corresponsales/ICorresponsalTrafico.ts +++ b/src/Interfaces/Corresponsales/ICorresponsalTrafico.ts @@ -45,4 +45,5 @@ export default interface ICorresponsalTrafico { causaRectificacion: string, totalHonorariosAA: number; totalGastosTerceros: number; + tieneSolicitud: number; } diff --git a/src/Services/Corresponsalias/Corresponsales.Trafico.Solicitud.Service.ts b/src/Services/Corresponsalias/Corresponsales.Trafico.Solicitud.Service.ts index 1a4a116..ece231a 100644 --- a/src/Services/Corresponsalias/Corresponsales.Trafico.Solicitud.Service.ts +++ b/src/Services/Corresponsalias/Corresponsales.Trafico.Solicitud.Service.ts @@ -2,14 +2,17 @@ import { DTOTraficoSolicitud } from "../../DTO/Corresponsales/DTOTraficoSolicitu import { ICorresponsalTraficoSolicitud } from "../../Interfaces/Corresponsales/ICorresponsalTraficoSolicitud" import http from "../common/http-common"; class TraficoSolicitudServices { - AppendSolicitud(solicitud: ICorresponsalTraficoSolicitud, Perfil: string){ - if(Perfil.includes('Corresponsalias')){return http.post(`/Corresponsalias/Solicitudes/EliminarCuenta/Append`, solicitud)} - if(Perfil.includes('Facturacion')){return http.post(`/Corresponsalias/Solicitudes/Reapertura/Append`, solicitud)} + AppendSolicitudReapertura(solicitud: ICorresponsalTraficoSolicitud){ + return http.post(`/Corresponsalias/Solicitudes/Reapertura/Append`, solicitud) } - - GetSolicitud(idTrafico: number, Perfil: string){ - if(Perfil.includes('Corresponsalias')){return http.get(`/Corresponsalias/Solicitudes/EliminarCuenta/Get?idTrafico=${idTrafico}`)} - if(Perfil.includes('Facturacion')){return http.get(`/Corresponsalias/Solicitudes/Reapertura/Get?idTrafico=${idTrafico}`)} + AppendSolicitudEliminarReferencia(solicitud: ICorresponsalTraficoSolicitud){ + return http.post(`/Corresponsalias/Solicitudes/EliminarCuenta/Append`, solicitud) + } + GetSolicitudReapertura(idTrafico: number){ + return http.get(`/Corresponsalias/Solicitudes/Reapertura/Get?idTrafico=${idTrafico}`) + } + GetSolicitudEliminarReferencia(idTrafico: number){ + return http.get(`/Corresponsalias/Solicitudes/EliminarCuenta/Get?idTrafico=${idTrafico}`) } } diff --git a/src/Services/Dashboard/Dashboard.Corresponsales.Services.ts b/src/Services/Dashboard/Dashboard.Corresponsales.Services.ts index 41235da..9827e41 100644 --- a/src/Services/Dashboard/Dashboard.Corresponsales.Services.ts +++ b/src/Services/Dashboard/Dashboard.Corresponsales.Services.ts @@ -8,5 +8,8 @@ class Dashboard_Corresponsales_DataService { getTipoCambio(Fecha: string) { return http.get(`/Dashboard/Corresponsales/GetTipoCambio?Fecha=${Fecha}`); } + getSolicitudesEliminarCuenta(){ + return http.get(`/Dashboard/Corresponsales/SolicitudesEliminarCuenta`); + } } export default new Dashboard_Corresponsales_DataService(); \ No newline at end of file diff --git a/src/index.tsx b/src/index.tsx index 656d3ad..0907c4f 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -65,10 +65,10 @@ root.render( /> } /> - } - /> + /> */} } />