This commit is contained in:
Rakcsle Supertramp
2020-06-24 10:16:20 -07:00
15 changed files with 1726 additions and 1383 deletions

View File

@@ -7,6 +7,7 @@ using System.Web.UI.WebControls;
using Extensiones;
using System.Data;
using System.Text;
using Microsoft.Reporting.WebForms;
public partial class General_PopUpPaqueteriasGuias : ClsPaginas
{
@@ -255,7 +256,7 @@ public partial class General_PopUpPaqueteriasGuias : ClsPaginas
protected void CargaPaqueterias()
{
DdlPaqueterias.Items.Clear();
DdlPaqueterias.DataSource = GlobalDTPaqueterias;
DdlPaqueterias.DataSource = get_GlobalDTPaqueterias(UsuarioActual.CveEmpresa);
DdlPaqueterias.DataBind();
DdlPaqueterias.Items.Insert(0, new ListItem("Seleccione ", "-1"));
UPGuiasPorVincular.Update();
@@ -729,6 +730,38 @@ public partial class General_PopUpPaqueteriasGuias : ClsPaginas
}
}
private byte[] DocumentoEntregaInterna()
{
ClsVentas ObjVentas = new ClsVentas();
if (ObjVentas.GetVenta(this.CveVenta, UsuarioActual.CveEmpresa))
{
string ClienteNombre = ObjVentas.DtResultados.Rows[0]["ClienteNombre"].ToString();
string FolioVenta = ObjVentas.DtResultados.Rows[0]["SerieFolio"].ToString();
string Pedido = ObjVentas.DtResultados.Rows[0]["PedidoContrato"].ToString();
string OrdenCompra = ObjVentas.DtResultados.Rows[0]["OrdenCompra"].ToString();
string Guia = TxtGuia.Text;
string Rastreo = TxtRastreo.Text;
string Paqueteria = DdlPaqueterias.SelectedItem.Text;
DataTable DtDetalle = new DataTable();
if (ObjVentas.GetVentaDetalle(CveVenta))
{
DtDetalle = ObjVentas.DtResultados;
}
List<ReportParameter> RepParams = new List<ReportParameter>();
RepParams.Add(new ReportParameter("Cliente", ClienteNombre));
RepParams.Add(new ReportParameter("FolioVenta", FolioVenta));
RepParams.Add(new ReportParameter("Pedido", Pedido));
RepParams.Add(new ReportParameter("OrdenCompra", OrdenCompra));
RepParams.Add(new ReportParameter("Guia", Guia));
RepParams.Add(new ReportParameter("Rastreo", Rastreo));
RepParams.Add(new ReportParameter("Paqueteria", Paqueteria));
return StreamPDF($"Empresas/{UsuarioActual.CveEmpresa}/Formatos/GuiaExternaAsignada.rdlc", DtDetalle, RepParams, "Notificacion de Envio", "PDF", RDSName: "DsInventarios");
}
ObjVentas.Dispose();
return null;
}
private string getCorreoString()
{
ClsVentas ObjVentas = new ClsVentas();
@@ -739,7 +772,13 @@ public partial class General_PopUpPaqueteriasGuias : ClsPaginas
DataRow Vendedor = get_GlobalDTVendedores(UsuarioActual.CveEmpresa).FiltroPrimero(string.Format("CveVendedor = {0}",CveVendedor));
DataRow Cliente = get_GlobalDTCliente(UsuarioActual.CveEmpresa).FiltroPrimero(string.Format("CveCliente = {0}",CveCliente));
string CorreosConcat = "{0};{1};{2};{3};{4}";
string CobranzaCorreo = Cliente["CobranzaCorreo"].ToString();
string CorreoEntregaAlmacen = Cliente["CorreoEntregaAlmacen"].ToString();
string CorreoEntregaCompras = Cliente["CorreoEntregaCompras"].ToString();
string CorreoVendedor = Vendedor["Correo"].ToString();
string CorreoAdicionalNotificacionesVendedor = Vendedor["CorreoAdicionalNotificaciones"].ToString();
string CorreosConcat = String.Format("{0};{1};{2};{3};{4}", CobranzaCorreo, CorreoEntregaAlmacen, CorreoEntregaCompras, CorreoVendedor, CorreoAdicionalNotificacionesVendedor);
return CorreosConcat;
}
ObjVentas.Dispose();
@@ -750,8 +789,19 @@ public partial class General_PopUpPaqueteriasGuias : ClsPaginas
{
Correos.GuardaLog();
byte[] ArchivoBinario = DocumentoEntregaInterna();
ClsSisMail MailCls = new ClsSisMail();
MailCls.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, "Se enviara la compra a su dirección", "Pendiente", Correos);
List<ClsSisMail.ArchivoMail> LSRutasMail = new List<ClsSisMail.ArchivoMail>();
ClsSisMail.ArchivoMail itemMail = new ClsSisMail.ArchivoMail();
{
var withBlock = itemMail;
itemMail.ArchivoBinario = ArchivoBinario;
itemMail.NombreArchivo = "Notificacion de Envio";
}
LSRutasMail.Add(itemMail);
MailCls.SendMail(ClsPaginas.EmpresaNotificaciones, Correos, "Se enviara la compra a su dirección", "Pendiente", Correos, LSRutasMail);
MailCls = null;
}
#endregion

View File

@@ -10,7 +10,7 @@
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Reporte de Paqueterías Guías
Reporte de Envíos
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
@@ -174,7 +174,7 @@
</div>
<div runat="server" id="DivEstatusEntrega" visible="false">
<div class="col-md-2">
<label>Entregas Directas</label>&nbsp;&nbsp;&nbsp;<asp:CheckBox ID="ChkLote" data-size="small" runat="server"/>
<label>Entregas Directas</label>&nbsp;&nbsp;&nbsp;<asp:CheckBox ID="ChkLote" data-size="small" runat="server" />
</div>
</div>
</div>
@@ -195,7 +195,7 @@
EmptyDataRowStyle-HorizontalAlign="Center" OnRowDataBound="GVDatos_RowDataBound">
<Columns>
<asp:BoundField DataField="SubProyecto" HeaderText="Sucursal" ItemStyle-Width="15%" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="PaqueteriaGuiaTipo" HeaderText="Guía Tipo" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="PaqueteriaGuiaTipo" HeaderText="Documento" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Left" />
<asp:TemplateField HeaderText="Folio" ItemStyle-HorizontalAlign="Left" ItemStyle-Width="4%">
<ItemTemplate>
<asp:HyperLink runat="server" ID="HLFolio" Text='<%# Eval("Folio")%>' ToolTip='<%# "Ir a " + Eval("TipoAgrupador")%>' Target="_blank" />
@@ -217,7 +217,7 @@
<asp:LinkButton ID="imgEditar" runat="server" OnClick="imgEditar_Click" AlternateText="Editar" ToolTip="Actualizar" CommandArgument='<%# Eval("CvePaqueteriaGuia")%>' CausesValidation="False" CssClass="btn btn-circle btn-sm green" Text="<i class='fa fa-pencil'></i>" />
<asp:HyperLink ID="BtnLiga" runat="server" CssClass="btn btn-circle btn-sm blue" Text="<i class='fa fa-external-link' aria-hidden='true'></i>" ToolTip="Ir a Paquetería" Target="_blank"></asp:HyperLink>
<asp:LinkButton ID="SubirArchivo" runat="server" OnClick="SubirArchivo_Click" Visible="true" AlternateText="Subir" CausesValidation="False" CssClass="btn btn-circle btn-sm green" Text="<i title='Subir Documento' class='fa fa-upload' title='Subir Documento' ></i>" />
<asp:LinkButton ID="LnkReasignar" runat="server" OnClick="Reasignar_Click" Visible="true" AlternateText="Reasignar" CausesValidation="False" CssClass="btn btn-circle btn-sm blue" Text="<i title='Reasignar' class='fa fa-user' title='Reasignar' ></i>" data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si"/>
<asp:LinkButton ID="LnkReasignar" runat="server" OnClick="Reasignar_Click" Visible="true" AlternateText="Reasignar" CausesValidation="False" CssClass="btn btn-circle btn-sm blue" Text="<i title='Reasignar' class='fa fa-user' title='Reasignar' ></i>" />
</ItemTemplate>
</asp:TemplateField>
@@ -463,6 +463,45 @@
</div>
</div>
</div>
<div id="ModalMotivoReasignacion" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title">
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Literal ID="Literal1" runat="server">Motivo de Rechazo de Guía </asp:Literal>
</ContentTemplate>
</asp:UpdatePanel>
</h4>
</div>
<div class="modal-body">
<asp:UpdatePanel runat="server" ID="UpdatePanel2" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-md-12">
<asp:DropDownList ID="DdlMotivoRechazoGuia" runat="server" Width="100%" DataTextField="Descripcion" DataValueField="CveMotivoRechazoPaqueteria" AppendDataBoundItems="true" Class="table-group-action-input form-control input-inline input-sm select2me">
</asp:DropDownList>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div class="modal-footer">
<asp:UpdatePanel runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="BtnReasignar" runat="server" ClientIDMode="Static" Text="Reasignar" CssClass="btn btn-primary" OnClick="BtnReasignar_Click" />
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">

View File

@@ -150,6 +150,31 @@ public partial class General_RepPaqueteriasGuias : ClsPaginas
ViewState["DTMovimientos"] = value;
}
}
private int CvePaqueteriaGuiaReasignar
{
get
{
return ViewState["CvePaqueteriaGuiaReasignar"].ToString().ToEntero();
}
set
{
ViewState["CvePaqueteriaGuiaReasignar"] = value;
}
}
private String Folio
{
get
{
return ViewState["Folio"].ToString();
}
set
{
ViewState["Folio"] = value;
}
}
#endregion
@@ -163,6 +188,7 @@ public partial class General_RepPaqueteriasGuias : ClsPaginas
CargaPaqueteriasGuiasTipo();
InicializaFechas();
CargaUsuarios();
CargaMotivosRechazo();
UPFiltros.Update();
if (!UsuarioActual.TienePermisoProceso(219))
@@ -196,15 +222,18 @@ public partial class General_RepPaqueteriasGuias : ClsPaginas
{
if (UsuarioActual.CveRol == 1339)
{
DdlPaqueterias.DataSource = GlobalDTPaqueterias.FiltraParametros("TipoPaqueteria = 0");
}else
{
DdlPaqueterias.DataSource = GlobalDTPaqueterias;
DdlPaqueterias.DataSource = get_GlobalDTPaqueterias(UsuarioActual.CveEmpresa, 0);
DdlPaqueterias.DataBind();
}
DdlPaqueterias.DataBind();
DdlPaqueterias.Items.Insert(0, new ListItem("Todos ", "-1"));
else
{
DdlPaqueterias.DataSource = get_GlobalDTPaqueterias(UsuarioActual.CveEmpresa);
DdlPaqueterias.DataBind();
DdlPaqueterias.Items.Insert(0, new ListItem("Todos ", "-1"));
}
DdlPaqueteriaEditar.DataSource = GlobalDTPaqueterias;
DdlPaqueteriaEditar.DataSource = get_GlobalDTPaqueterias(UsuarioActual.CveEmpresa);
DdlPaqueteriaEditar.DataBind();
DdlPaqueteriaEditar.Items.Insert(0, new ListItem("Seleccione ", "-1"));
}
@@ -264,6 +293,17 @@ public partial class General_RepPaqueteriasGuias : ClsPaginas
}
}
private void CargaMotivosRechazo()
{
ClsGenerales ObjGeneral = new ClsGenerales();
if (ObjGeneral.GetMotivoRechazoPaqueteria(-1, UsuarioActual.CveEmpresa))
{
DdlMotivoRechazoGuia.DataSource = ObjGeneral.DtResultados;
DdlMotivoRechazoGuia.DataBind();
}
ObjGeneral.Dispose();
}
protected void InicializaFechas()
{
DateTime FI = new DateTime(DateTime.Now.Year, 1, 1);
@@ -887,6 +927,7 @@ public partial class General_RepPaqueteriasGuias : ClsPaginas
//Adjunta Archivo al Correo
ClsSisMail.ArchivoMail ArchivoAdjunto = new ClsSisMail.ArchivoMail();
ClsSisMail.ArchivoMail ArchivoAdjunto2 = new ClsSisMail.ArchivoMail();
List<ClsSisMail.ArchivoMail> ListaAdjuntos = new List<ClsSisMail.ArchivoMail>();
@@ -895,7 +936,12 @@ public partial class General_RepPaqueteriasGuias : ClsPaginas
ArchivoAdjunto.ArchivoBinario = File.ReadAllBytes(RutaArchivoAdjunto);
ArchivoAdjunto.Ruta = RutaArchivoAdjunto;
ArchivoAdjunto.NombreArchivo = new FileInfo(RutaArchivoAdjunto).Name;
ArchivoAdjunto2.ArchivoBinario = DocumentoEntregaInterna(this.CveVenta);
ArchivoAdjunto2.NombreArchivo = "Entrega Realizada";
ListaAdjuntos.Add(ArchivoAdjunto);
ListaAdjuntos.Add(ArchivoAdjunto2);
}
if ((ListaAdjuntos.Count > 0))
@@ -931,6 +977,15 @@ public partial class General_RepPaqueteriasGuias : ClsPaginas
MensajeEnviado = true;
}
break;
case 3:
//Tipo 3 Guia reasignada
Cuerpo.AppendLine(String.Format("Motivo:{0}. Tu envío fue reprogramado para el siguiente día hábil.", DdlMotivoRechazoGuia.SelectedItem.Text));
CargaDatosCorreo(this.CveVenta);
if (Correo.SendMail(UsuarioActual.Empresa, this.Destinatario, Asunto, Cuerpo.ToString()))
{
MensajeEnviado = true;
}
break;
}
return MensajeEnviado;
@@ -968,11 +1023,11 @@ public partial class General_RepPaqueteriasGuias : ClsPaginas
Destinatario = DbRowVenta["Mail"].ToString();
}
// Destinatario = "sig.buzon02@gmail.com"; // CORREO PRUEBA
//if (UsuarioActual.Empresa.Funcionalidad(280) == "1" && CveCliente > 0 && CveVendedor > 0)
//{
// Destinatario = getCorreoNotificacion(CveCliente,CveVendedor);
//}
Destinatario = "sig.buzon02@gmail.com"; // CORREO PRUEBA
if (UsuarioActual.Empresa.Funcionalidad(280) == "1" && CveCliente > 0 && CveVendedor > 0)
{
Destinatario = getCorreoNotificacion(CveCliente, CveVendedor);
}
if (ObjVentas.GetVentaDetalle(CveVenta))
{
@@ -1003,17 +1058,54 @@ public partial class General_RepPaqueteriasGuias : ClsPaginas
protected void Reasignar_Click(object sender, EventArgs e)
{
this.RegistraScript("$('#ModalMotivoReasignacion').modal('show')", "hidemodal3");
GridViewRow GvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
int CvePaqueteriaGuia = GvRow.DataKey("CvePaqueteriaGuia").ToEntero();
CvePaqueteriaGuiaReasignar = GvRow.DataKey("CvePaqueteriaGuia").ToEntero();
CveVenta = GvRow.DataKey("CveAgrupador").ToString().ToEntero();
Folio = GvRow.DataKey("Folio").ToString();
}
protected void BtnReasignar_Click(object sender, EventArgs e)
{
ClsGenerales ObjGeneral = new ClsGenerales();
if (ObjGeneral.AsignarEntregasPorRealizar(CvePaqueteriaGuia, -1))
if (ObjGeneral.AsignarEntregasPorRealizar(CvePaqueteriaGuiaReasignar, -1, CveMotivoRechazoPaqueteria:DdlMotivoRechazoGuia.SelectedValue.ToEntero()))
{
Alert("La guía está lista para volver a ser asignada, disponible en el reporte <a style='color:#23527c' href='/Inventarios/EntregasPorRealizar.aspx'>Entregas Por Realizar</a>");
}
ObjGeneral.Dispose();
CargaDatos();
UPDatos.Update();
CvePaqueteriaGuiaReasignar = -1;
EnviarCorreoNotificacionEntrega(3, SerieFolio, "","","","","",-1,null);
this.RegistraScript("$('#ModalMotivoReasignacion').modal('hide')", "hidemodal3");
}
private byte[] DocumentoEntregaInterna(int CveVenta)
{
ClsVentas ObjVentas = new ClsVentas();
if (ObjVentas.GetVenta(CveVenta,UsuarioActual.CveEmpresa))
{
DataRow row = ObjVentas.DtResultados.Rows[0];
string ClienteNombre = row["ClienteNombre"].ToString();
string FolioVenta = row["SerieFolio"].ToString();
string Pedido = row["PedidoContrato"].ToString();
string OrdenCompra = row["OrdenCompra"].ToString();
DataTable DtDetalle = new DataTable();
if (ObjVentas.GetVentaDetalle(CveVenta))
{
DtDetalle = ObjVentas.DtResultados;
}
List<ReportParameter> RepParams = new List<ReportParameter>();
RepParams.Add(new ReportParameter("Cliente", ClienteNombre));
RepParams.Add(new ReportParameter("FolioVenta", FolioVenta));
RepParams.Add(new ReportParameter("Pedido", Pedido));
RepParams.Add(new ReportParameter("OrdenCompra", OrdenCompra));
return StreamPDF($"Empresas/{UsuarioActual.CveEmpresa}/Formatos/GuiaEntregaTerminada.rdlc", DtDetalle, RepParams, "Notificacion de Envio", "PDF", RDSName: "DsInventarios");
}
ObjVentas.Dispose();
return null;
}
}