-- se quitó código de cancelaciones "especiales..."

-- corrección de cancelación por refacturación
This commit is contained in:
2023-09-22 16:48:48 -07:00
parent a467b6b54c
commit 2f0d3775ec
2 changed files with 112 additions and 124 deletions

View File

@@ -127,12 +127,7 @@
<div class="col-md-12"> <div class="col-md-12">
<asp:LinkButton ID="LnkCancelar" Visible="false" runat="server" OnClick="BtnCancelarDocumento_Click" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-ban'> </i>" ToolTip="Esta seguro que desea cancelar la factura pendiente?" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea cancelar el documento?" data-btn-ok-label="si"></asp:LinkButton> <asp:LinkButton ID="LnkCancelar" Visible="false" runat="server" OnClick="BtnCancelarDocumento_Click" CssClass="btn btn-circle btn-sm red" Text="<i class='fa fa-ban'> </i>" ToolTip="Esta seguro que desea cancelar la factura pendiente?" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea cancelar el documento?" data-btn-ok-label="si"></asp:LinkButton>
</div> </div>
</div> </div>
<div class="row">
<div class="col-md-12">
<asp:LinkButton ID="LnkCancelarFolioSustitucion" Visible="false" runat="server" OnClick="LnkCancelarFolioSustitucion_Click" CssClass="btn btn-circle btn-sm blue" Text="<i class='fa fa-ban'> 02</i>" ToolTip="Cancelar refacturación con método 02" data-toggle="confirmation" data-popout="true" data-original-title="¿Está seguro que desea cancelar el documento?" data-btn-ok-label="si"></asp:LinkButton>
</div>
</div>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField ItemStyle-Width="40px" HeaderText="Refact"> <asp:TemplateField ItemStyle-Width="40px" HeaderText="Refact">

View File

@@ -189,22 +189,15 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
int CveEstatusRefacturacion = GvRow.DataKey("CveEstatusRefacturacion").ToEntero(); int CveEstatusRefacturacion = GvRow.DataKey("CveEstatusRefacturacion").ToEntero();
int CveEstatusFacturaSustitucion = GvRow.DataKey("CveEstatusFacturaSustitucion").ToEntero(); int CveEstatusFacturaSustitucion = GvRow.DataKey("CveEstatusFacturaSustitucion").ToEntero();
//SI NO SE PUDO CANCELAR O LA FACTURA NUEVA FUE CANCELADA, CANCELAR CON EL 02 if (CveEstatusRefacturacion > 0)
if (CveEstatusRefacturacion == 4 || CveEstatusFacturaSustitucion == 5)
{ {
//CUANDO LAS REFACTURACIONES NO SE PUEDEN CANCELAR, DEBE SER CANCELADO CON EL MOTIVO 02 CveMotivoCancelacion = get_GlobalDTMotivosCancelacionEmpresa(UsuarioActual.CveEmpresa, CveSATMotivoCancelacion: 1).FiltroPrimeroValor("CveMotivoCancelacion").ToEntero();
FolioSustitucion = "";
CveMotivoCancelacion = get_GlobalDTMotivosCancelacionEmpresa(UsuarioActual.CveEmpresa, CveSATMotivoCancelacion: 2).FiltroPrimeroValor("CveMotivoCancelacion").ToEntero();
} }
else //CveEstatusRefacturacion = 2;
{
CveEstatusRefacturacion = 2;
}
if (CveVenta > 0) if (CveVenta > 0)
{ {
var respCancelacion = CancelarDocumento(CveVenta, -1, CveCliente, Folio, Uuid, "", DateTime.Now, TipoDocto, Total.ToDouble(), UsuarioActual.Empresa.CvePAC, EsRefacturacion: true, FolioSustitucion: FolioSustitucion, CveEstatusRefacturacion: CveEstatusRefacturacion); var respCancelacion = CancelarDocumento(CveVenta, -1, CveCliente, Folio, Uuid, "", DateTime.Now, TipoDocto, Total.ToDouble(), UsuarioActual.Empresa.CvePAC, EsRefacturacion: true, FolioSustitucion: FolioSustitucion, CveEstatusRefacturacion: CveEstatusRefacturacion, CveMotivoCancelacion: CveMotivoCancelacion);
if (!respCancelacion.HuboError) if (!respCancelacion.HuboError)
{ {
@@ -811,127 +804,127 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
} }
protected void LnkCancelarFolioSustitucion_Click(object sender, EventArgs e) //protected void LnkCancelarFolioSustitucion_Click(object sender, EventArgs e)
{ //{
//this.HdnLigaRefacturar.Value = ""; // //this.HdnLigaRefacturar.Value = "";
this.CveVenta = -1; // this.CveVenta = -1;
GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer); // GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
this.CveVenta = GvRow.DataKey("CveVentaSustitucion").ToEntero(); // this.CveVenta = GvRow.DataKey("CveVentaSustitucion").ToEntero();
int CveCliente = GvRow.DataKey("CveClienteSustitucion").ToEntero(); // int CveCliente = GvRow.DataKey("CveClienteSustitucion").ToEntero();
string Total = GvRow.DataKey("TotalSustitucion"); // string Total = GvRow.DataKey("TotalSustitucion");
string RFCReceptor = GvRow.DataKey("RFCReceptorSustitucion"); // string RFCReceptor = GvRow.DataKey("RFCReceptorSustitucion");
string TipoDocto = GvRow.DataKey("TipoDocto"); // string TipoDocto = GvRow.DataKey("TipoDocto");
string Nombre = GvRow.DataKey("Nombre"); // string Nombre = GvRow.DataKey("Nombre");
string FolioSustitucion = GvRow.DataKey("FolioFiscalSustitucion"); // string FolioSustitucion = GvRow.DataKey("FolioFiscalSustitucion");
string SerieFolioSustitucion = GvRow.DataKey("SerieFolioSustitucion"); // string SerieFolioSustitucion = GvRow.DataKey("SerieFolioSustitucion");
int CveVentaOriginal = GvRow.DataKey("CveVenta").ToEntero(); // int CveVentaOriginal = GvRow.DataKey("CveVenta").ToEntero();
string SerieFolioOriginal = GvRow.DataKey("SerieFolio"); // string SerieFolioOriginal = GvRow.DataKey("SerieFolio");
//CUANDO LAS REFACTURACIONES NO SE PUEDEN CANCELAR, DEBE SER CANCELADO CON EL MOTIVO 02 // //CUANDO LAS REFACTURACIONES NO SE PUEDEN CANCELAR, DEBE SER CANCELADO CON EL MOTIVO 02
int CveMotivoCancelacion = get_GlobalDTMotivosCancelacionEmpresa(UsuarioActual.CveEmpresa, CveSATMotivoCancelacion: 2).FiltroPrimeroValor("CveMotivoCancelacion").ToEntero(); // int CveMotivoCancelacion = get_GlobalDTMotivosCancelacionEmpresa(UsuarioActual.CveEmpresa, CveSATMotivoCancelacion: 2).FiltroPrimeroValor("CveMotivoCancelacion").ToEntero();
if (CveVenta > 0 && FolioSustitucion != "") // if (CveVenta > 0 && FolioSustitucion != "")
{ // {
var respCancelacion = CancelarDocumento(CveVenta, -2, CveCliente, "", FolioSustitucion, "", DateTime.Now, TipoDocto, Total.ToDouble(), UsuarioActual.Empresa.CvePAC, EsRefacturacion: true, FolioSustitucion: "", CveEstatusRefacturacion: 4, CveMotivoCancelacion: CveMotivoCancelacion); // var respCancelacion = CancelarDocumento(CveVenta, -2, CveCliente, "", FolioSustitucion, "", DateTime.Now, TipoDocto, Total.ToDouble(), UsuarioActual.Empresa.CvePAC, EsRefacturacion: true, FolioSustitucion: "", CveEstatusRefacturacion: 4, CveMotivoCancelacion: CveMotivoCancelacion);
if (!respCancelacion.HuboError) // if (!respCancelacion.HuboError)
{ // {
var sb = new StringBuilder(); // var sb = new StringBuilder();
var EnviarAcuse = false; // var EnviarAcuse = false;
if (respCancelacion.CveEstatus > 0) // if (respCancelacion.CveEstatus > 0)
{ // {
if (respCancelacion.CveEstatus.Contiene(5, 20)) // if (respCancelacion.CveEstatus.Contiene(5, 20))
{ // {
EnviarAcuse = true; // EnviarAcuse = true;
} // }
var CveEstatus = respCancelacion.CveEstatus; // var CveEstatus = respCancelacion.CveEstatus;
var ObjVentas = new ClsVentas(); // var ObjVentas = new ClsVentas();
if (ObjVentas.UpdateEstatusVenta(CveVenta, CveEstatus, UsuarioActual.CveEmpresa)) // if (ObjVentas.UpdateEstatusVenta(CveVenta, CveEstatus, UsuarioActual.CveEmpresa))
{ // {
if (respCancelacion.CveEstatus == 20) // if (respCancelacion.CveEstatus == 20)
{ // {
sb.Append($"El estatus de la factura <b>{SerieFolioSustitucion}</b> fue cambiado a <b>'Cancelación en proceso'</b>."); // sb.Append($"El estatus de la factura <b>{SerieFolioSustitucion}</b> fue cambiado a <b>'Cancelación en proceso'</b>.");
sb.Append($"</br> <a href='/Compras/PopUpVerFactura.aspx?P={Encripta($"OP=CAN&CVEVTA={CveVenta}")}' class='Texto' target='_blank'>Imprimir Acuse</a>"); // sb.Append($"</br> <a href='/Compras/PopUpVerFactura.aspx?P={Encripta($"OP=CAN&CVEVTA={CveVenta}")}' class='Texto' target='_blank'>Imprimir Acuse</a>");
} // }
else if (respCancelacion.CveEstatus == 23) // else if (respCancelacion.CveEstatus == 23)
{ // {
sb.Append("La solicitud de cancelación no la aplicó el SAT, intente cancelar de nuevo."); // sb.Append("La solicitud de cancelación no la aplicó el SAT, intente cancelar de nuevo.");
} // }
else if (respCancelacion.CveEstatus == 5) // else if (respCancelacion.CveEstatus == 5)
{ // {
sb.Append($"El estatus de la factura <b>{SerieFolioSustitucion}</b> fue cambiado a <b>'Cancelada'</b>."); // sb.Append($"El estatus de la factura <b>{SerieFolioSustitucion}</b> fue cambiado a <b>'Cancelada'</b>.");
sb.Append("El documento se canceló correctamente."); // sb.Append("El documento se canceló correctamente.");
sb.Append($"</br> <a href='/Compras/PopUpVerFactura.aspx?P={Encripta($"OP=CAN&CVEVTA={CveVenta}")}' class='Texto' target='_blank'>Imprimir Acuse</a>"); // sb.Append($"</br> <a href='/Compras/PopUpVerFactura.aspx?P={Encripta($"OP=CAN&CVEVTA={CveVenta}")}' class='Texto' target='_blank'>Imprimir Acuse</a>");
} // }
if (respCancelacion.CveEstatus.Contiene(5, 20)) // if (respCancelacion.CveEstatus.Contiene(5, 20))
{ // {
if (ObjVentas.UpdateEstatusVenta(CveVentaOriginal, 23, UsuarioActual.CveEmpresa, CveEstatusRefacturacion: 4, CveMotivoCancelacion: CveMotivoCancelacion)) // if (ObjVentas.UpdateEstatusVenta(CveVentaOriginal, 23, UsuarioActual.CveEmpresa, CveEstatusRefacturacion: 4, CveMotivoCancelacion: CveMotivoCancelacion))
{ // {
sb.Append($"</br>La Factura <b>{SerieFolioOriginal}</b> fue desligada."); // sb.Append($"</br>La Factura <b>{SerieFolioOriginal}</b> fue desligada.");
} // }
} // }
} // }
else // else
{ // {
sb.Append("Ocurrió un error al cambiar el estatus de la factura."); // sb.Append("Ocurrió un error al cambiar el estatus de la factura.");
} // }
ObjVentas.Dispose(); // ObjVentas.Dispose();
if (respCancelacion.CveEstatus == 23) // if (respCancelacion.CveEstatus == 23)
{ // {
var resp = Timbrado.VerificarVigenciaSAT(FolioSustitucion, UsuarioActual.Empresa.RFC, RFCReceptor, Total, true); // var resp = Timbrado.VerificarVigenciaSAT(FolioSustitucion, UsuarioActual.Empresa.RFC, RFCReceptor, Total, true);
if (resp != null) // if (resp != null)
{ // {
sb.AppendFormat("<br/> Folio Fiscal: {0} <br/>", FolioSustitucion); // sb.AppendFormat("<br/> Folio Fiscal: {0} <br/>", FolioSustitucion);
sb.AppendFormat("Código Estado: {0} <br/>", resp.CodigoEstatus); // sb.AppendFormat("Código Estado: {0} <br/>", resp.CodigoEstatus);
sb.AppendFormat("Estado: {0} <br/>", resp.Estado); // sb.AppendFormat("Estado: {0} <br/>", resp.Estado);
sb.AppendFormat("Es Cancelable: {0} <br/>", string.IsNullOrEmpty(resp.EsCancelable) ? "Desconocido" : resp.EsCancelable); // sb.AppendFormat("Es Cancelable: {0} <br/>", string.IsNullOrEmpty(resp.EsCancelable) ? "Desconocido" : resp.EsCancelable);
sb.AppendFormat("Estatus de Cancelación: {0} <br/><br/>", string.IsNullOrEmpty(resp.EsCancelable) ? "Desconocido" : resp.EstatusCancelacion); // sb.AppendFormat("Estatus de Cancelación: {0} <br/><br/>", string.IsNullOrEmpty(resp.EsCancelable) ? "Desconocido" : resp.EstatusCancelacion);
} // }
} // }
} // }
else // else
{ // {
var resp = Timbrado.VerificarVigenciaSAT(FolioSustitucion, UsuarioActual.Empresa.RFC, RFCReceptor, Total, true); // var resp = Timbrado.VerificarVigenciaSAT(FolioSustitucion, UsuarioActual.Empresa.RFC, RFCReceptor, Total, true);
if (resp != null) // if (resp != null)
{ // {
sb.AppendFormat("Folio Fiscal: {0} <br/>", FolioSustitucion); // sb.AppendFormat("Folio Fiscal: {0} <br/>", FolioSustitucion);
sb.AppendFormat("Código Estado: {0} <br/>", resp.CodigoEstatus); // sb.AppendFormat("Código Estado: {0} <br/>", resp.CodigoEstatus);
sb.AppendFormat("Estado: {0} <br/>", resp.Estado); // sb.AppendFormat("Estado: {0} <br/>", resp.Estado);
sb.AppendFormat("Es Cancelable: {0} <br/>", string.IsNullOrEmpty(resp.EsCancelable) ? "Desconocido" : resp.EsCancelable); // sb.AppendFormat("Es Cancelable: {0} <br/>", string.IsNullOrEmpty(resp.EsCancelable) ? "Desconocido" : resp.EsCancelable);
sb.AppendFormat("Estatus de Cancelación: {0} <br/><br/>", string.IsNullOrEmpty(resp.EsCancelable) ? "Desconocido" : resp.EstatusCancelacion); // sb.AppendFormat("Estatus de Cancelación: {0} <br/><br/>", string.IsNullOrEmpty(resp.EsCancelable) ? "Desconocido" : resp.EstatusCancelacion);
} // }
sb.Append(respCancelacion.Mensaje); // sb.Append(respCancelacion.Mensaje);
} // }
if (EnviarAcuse) // if (EnviarAcuse)
{ // {
sb.Append("</br></br> ¿Desea enviar el Acuse de Cancelación al Cliente?"); // sb.Append("</br></br> ¿Desea enviar el Acuse de Cancelación al Cliente?");
Alert(sb.ToString(), TipoMensaje.MsgConfirmacion, "BtnEnviarMailCancelacion();", TextoConfirmacion: "Enviar", TextoSegundoBoton: "Cancelar"); // Alert(sb.ToString(), TipoMensaje.MsgConfirmacion, "BtnEnviarMailCancelacion();", TextoConfirmacion: "Enviar", TextoSegundoBoton: "Cancelar");
} // }
else // else
{ // {
Alert(sb.ToString()); // Alert(sb.ToString());
} // }
} // }
else // else
{ // {
Alert(respCancelacion.Mensaje, TipoMensaje.MsgError); // Alert(respCancelacion.Mensaje, TipoMensaje.MsgError);
} // }
CargaDatos(); // CargaDatos();
} // }
UPDatos.Update(); // UPDatos.Update();
} //}
} }
public class MRespuestaSAT public class MRespuestaSAT
{ {