Commit inicial Ventas Productivo
This commit is contained in:
406
Contabilidad/ContabilizacionVentas.aspx.cs
Normal file
406
Contabilidad/ContabilizacionVentas.aspx.cs
Normal file
@@ -0,0 +1,406 @@
|
||||
using System;
|
||||
using System.Web.UI.WebControls;
|
||||
using Extensiones;
|
||||
using System.Data;
|
||||
|
||||
public partial class Contabilidad_ContabilizacionVentas : ClsPaginas
|
||||
{
|
||||
private DataTable DTmpC
|
||||
{
|
||||
get
|
||||
{
|
||||
return (DataTable)ViewState["DTmpC"];
|
||||
}
|
||||
set
|
||||
{
|
||||
ViewState["DTmpC"] = value;
|
||||
}
|
||||
}
|
||||
public bool TienePermisoEditar
|
||||
{
|
||||
get { return (bool)ViewState["TienePermisoEditar"]; }
|
||||
set { ViewState["TienePermisoEditar"] = value; }
|
||||
}
|
||||
|
||||
public bool TienePermisoVerPoliza
|
||||
{
|
||||
get { return (bool)ViewState["TienePermisoVerPoliza"]; }
|
||||
set { ViewState["TienePermisoVerPoliza"] = value; }
|
||||
}
|
||||
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
TienePermisoVerPoliza = false;
|
||||
TienePermisoEditar = false;
|
||||
if (UsuarioActual.Empresa.UsaContabilidad)
|
||||
{
|
||||
TienePermisoEditar = UsuarioActual.TienePermisoProceso(221);
|
||||
|
||||
ClsContPAQi ObjCont = new ClsContPAQi(UsuarioActual.Empresa);
|
||||
ObjCont.GetCuentas(-1, "-1", -1);
|
||||
string[] columnas = new string[3] { "Id", "CuentaFormato", "Nombre" };
|
||||
DTmpC = ObjCont.DtResultados.FiltraParametros("", "", columnas);
|
||||
ObjCont.Dispose();
|
||||
|
||||
if (UsuarioActual.CveRol == 1 || UsuarioActual.CveUsuario == 17 || UsuarioActual.CveUsuario == 171 || UsuarioActual.TienePermisoProceso(221))
|
||||
{
|
||||
TienePermisoEditar = true;
|
||||
TienePermisoVerPoliza = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert("Este módulo requiere el uso de Contabilidad.", ModExtensiones.TipoMensaje.MsgAdvertencia);
|
||||
BtnConsultar.Enabled = false;
|
||||
BtnContabilizarVentas.Enabled = false;
|
||||
BtnContabilizarPagos.Enabled = false;
|
||||
BtnContabilizarAnticipos.Enabled = false;
|
||||
BtnContabilizarAmortizaciones.Enabled = false;
|
||||
ImgExcel2.Visible = false;
|
||||
}
|
||||
|
||||
DdlClientes.setEsWebService(true);
|
||||
DdlClientes.Attributes.Add("data-metodo", "getcliente");
|
||||
|
||||
DdlSubProyecto.DataSource = get_GlobalDTSubProyectos(-1, CveEmpresa: UsuarioActual.CveEmpresa);
|
||||
DdlSubProyecto.Items.Insert(0, new ListItem("Todos", "-1"));
|
||||
DdlSubProyecto.DataBind();
|
||||
|
||||
txtFechaI.Text = DateTime.Now.AddMonths(-1).FirstDayOfMonth().ToShortDateString();
|
||||
txtFechaF.Text = DateTime.Now.ToShortDateString();
|
||||
|
||||
//cargaPolizas();
|
||||
}
|
||||
|
||||
BtnContabilizarVentas.Click += new EventHandler(this.BtnGuardarVentas_Click);
|
||||
BtnContabilizarPagos.Click += new EventHandler(this.BtnGuardarPagos_Click);
|
||||
BtnContabilizarAnticipos.Click += new EventHandler(this.BtnGuardarAnticipos_Click);
|
||||
BtnContabilizarAmortizaciones.Click += new EventHandler(this.BtnGuardarAmortizaciones_Click);
|
||||
//BtnConsultar.Click += new EventHandler(this.BtnConsultar_Click);
|
||||
}
|
||||
|
||||
protected void OnRowDataBound(object sender, GridViewRowEventArgs e)
|
||||
{
|
||||
if (e.Row.RowType == DataControlRowType.DataRow)
|
||||
{
|
||||
GridView GvD = e.Row.FCGridView("GvD");
|
||||
int CvePrePoliza = e.Row.DataKey("CvePrePoliza").ToEntero();
|
||||
|
||||
ClsContabilidad contP = new ClsContabilidad();
|
||||
|
||||
if (contP.GetContabilizacionDiarioDetalle(CvePrePoliza))
|
||||
{
|
||||
if (contP.DtResultados.Rows.Count > 0)
|
||||
{
|
||||
Double Abonos = 0;
|
||||
Double Cargos = 0;
|
||||
|
||||
Abonos = contP.DtResultados.SUM("Abono");
|
||||
Cargos = contP.DtResultados.SUM("Cargo");
|
||||
|
||||
if (Cargos != Abonos)
|
||||
{
|
||||
e.Row.FCCheckBox("Chk").Enabled = false;
|
||||
e.Row.FCCheckBox("Chk").ToolTip = $"La suma de cargos y abonos son diferentes ({Cargos}-{Abonos})";
|
||||
}
|
||||
|
||||
if (e.Row.DBCampo("IdPoliza").ToEntero() > 0)
|
||||
{
|
||||
e.Row.FCCheckBox("Chk").Enabled = false;
|
||||
e.Row.FCCheckBox("Chk").ToolTip = "Póliza ya contabilizada";
|
||||
}
|
||||
|
||||
GvD.DataSource = contP.DtResultados;
|
||||
}
|
||||
else
|
||||
{
|
||||
e.Row.Visible = false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (UsuarioActual.CveRol == 1 || UsuarioActual.CveUsuario == 17 || UsuarioActual.CveUsuario == 1446 || UsuarioActual.CveUsuario == 1641 || TienePermisoEditar)
|
||||
{
|
||||
e.Row.FCHyperLink("HplEdicion").Visible = true;
|
||||
}
|
||||
|
||||
e.Row.FCHyperLink("HLPoliza").Visible = TienePermisoVerPoliza & e.Row.DBCampo("IdPoliza").ToEntero() > 0;
|
||||
|
||||
contP.Dispose();
|
||||
GvD.DataBind();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void Contabilizar(int CvePrepoliza, DateTime Fecha, string Concepto, ClsContabilidad Obj)
|
||||
{
|
||||
if (Obj.ContabilizarPrePoliza(CvePrepoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa, Fecha, Concepto))
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void BtnGuardarVentas_Click(object sender, EventArgs e)
|
||||
{
|
||||
ClsContabilidad ObjMov = new ClsContabilidad();
|
||||
|
||||
foreach (GridViewRow row in GvV.Rows)
|
||||
{
|
||||
CheckBox chk = row.FCCheckBox("Chk");
|
||||
TextBox txtFecha = row.FCTextBox("TxtFechaVentas");
|
||||
TextBox txtConcepto = row.FCTextBox("TxtConceptoVentas");
|
||||
|
||||
if (chk != null && chk.Checked)
|
||||
{
|
||||
DateTime Fecha = txtFecha.Text.ToDate();
|
||||
int CvePrepoliza = GvV.DataKeys[row.RowIndex]["CvePrePoliza"].ToString().ToEntero();
|
||||
string Concepto = txtConcepto.Text;
|
||||
|
||||
Contabilizar(CvePrepoliza, Fecha, Concepto, ObjMov);
|
||||
}
|
||||
}
|
||||
ObjMov.Dispose();
|
||||
|
||||
Alert("Se Contabilizaron Correctamente los Siguientes Folios: <br>" + ObjMov.AlertaMensaje.ToString(), ModExtensiones.TipoMensaje.MsgInformacion);
|
||||
cargaPolizas();
|
||||
|
||||
}
|
||||
|
||||
private void BtnGuardarPagos_Click(object sender, EventArgs e)
|
||||
{
|
||||
ClsContabilidad ObjMov = new ClsContabilidad();
|
||||
|
||||
foreach (GridViewRow row in GvP.Rows)
|
||||
{
|
||||
CheckBox chk = row.FCCheckBox("Chk");
|
||||
TextBox txtFecha = row.FCTextBox("TxtFechaPagos");
|
||||
TextBox txtConcepto = row.FCTextBox("TxtConceptoPagos");
|
||||
|
||||
if (chk != null && chk.Checked)
|
||||
{
|
||||
DateTime Fecha = txtFecha.Text.ToDate();
|
||||
int CvePrepoliza = GvP.DataKeys[row.RowIndex]["CvePrePoliza"].ToString().ToEntero();
|
||||
string Concepto = txtConcepto.Text;
|
||||
|
||||
Contabilizar(CvePrepoliza, Fecha, Concepto, ObjMov);
|
||||
}
|
||||
}
|
||||
ObjMov.Dispose();
|
||||
|
||||
Alert("Se Contabilizaron Correctamente los Siguientes Folios: <br>" + ObjMov.AlertaMensaje.ToString(), ModExtensiones.TipoMensaje.MsgInformacion);
|
||||
cargaPolizas();
|
||||
|
||||
}
|
||||
|
||||
private void BtnGuardarAnticipos_Click(object sender, EventArgs e)
|
||||
{
|
||||
ClsContabilidad ObjMov = new ClsContabilidad();
|
||||
|
||||
foreach (GridViewRow row in GvA.Rows)
|
||||
{
|
||||
CheckBox chk = row.FCCheckBox("Chk");
|
||||
TextBox txtFecha = row.FCTextBox("TxtFechaAnticipos");
|
||||
TextBox txtConcepto = row.FCTextBox("TxtConceptoAnticipos");
|
||||
|
||||
if (chk != null && chk.Checked)
|
||||
{
|
||||
DateTime Fecha = txtFecha.Text.ToDate();
|
||||
int CvePrepoliza = GvA.DataKeys[row.RowIndex]["CvePrePoliza"].ToString().ToEntero();
|
||||
string Concepto = txtConcepto.Text;
|
||||
|
||||
Contabilizar(CvePrepoliza, Fecha, Concepto, ObjMov);
|
||||
}
|
||||
}
|
||||
ObjMov.Dispose();
|
||||
|
||||
Alert("Se Contabilizaron Correctamente los Siguientes Folios: <br>" + ObjMov.AlertaMensaje.ToString(), ModExtensiones.TipoMensaje.MsgInformacion);
|
||||
cargaPolizas();
|
||||
|
||||
}
|
||||
|
||||
private void BtnGuardarAmortizaciones_Click(object sender, EventArgs e)
|
||||
{
|
||||
ClsContabilidad ObjMov = new ClsContabilidad();
|
||||
|
||||
foreach (GridViewRow row in GvPrePolizaAmortizaciones.Rows)
|
||||
{
|
||||
CheckBox chk = row.FCCheckBox("Chk");
|
||||
TextBox txtFecha = row.FCTextBox("TxtFechaAmortizaciones");
|
||||
TextBox txtConcepto = row.FCTextBox("TxtConceptoAmortizaciones");
|
||||
|
||||
if (chk != null && chk.Checked)
|
||||
{
|
||||
DateTime Fecha = txtFecha.Text.ToDate();
|
||||
int CvePrepoliza = GvPrePolizaAmortizaciones.DataKeys[row.RowIndex]["CvePrePoliza"].ToString().ToEntero();
|
||||
string Concepto = txtConcepto.Text;
|
||||
|
||||
Contabilizar(CvePrepoliza, Fecha, Concepto, ObjMov);
|
||||
}
|
||||
}
|
||||
ObjMov.Dispose();
|
||||
|
||||
Alert("Se Contabilizaron Correctamente los Siguientes Folios: <br>" + ObjMov.AlertaMensaje.ToString(), ModExtensiones.TipoMensaje.MsgInformacion);
|
||||
cargaPolizas();
|
||||
|
||||
}
|
||||
|
||||
private void cargaPolizas()
|
||||
{
|
||||
|
||||
DateTime FechaI = txtFechaI.Text.ToDate();
|
||||
DateTime FechaF = txtFechaF.Text.ToDate();
|
||||
|
||||
ClsContabilidad cont = new ClsContabilidad();
|
||||
|
||||
// Cargamos las ventas
|
||||
if (cont.GetContabilizacionDiario(UsuarioActual.CveEmpresa, 4, FechaI, FechaF, CveMoneda: DdlMoneda.SelectedValue.ToEntero(),EstatusContabilizacion:DdlEstatusContabilizacion.SelectedValue.ToEntero(),CveSubProyecto:DdlSubProyecto.SelectedValue.ToEntero()))
|
||||
{
|
||||
if (DdlClientes.SelectedValue.ToEntero() > 0)
|
||||
{
|
||||
GvV.DataSource = cont.DtResultados.FiltraParametros($"CveCliente = {DdlClientes.SelectedValue}");
|
||||
}
|
||||
else
|
||||
{
|
||||
GvV.DataSource = cont.DtResultados;
|
||||
}
|
||||
GvV.DataBind();
|
||||
}
|
||||
|
||||
// Cargamos los pagos
|
||||
if (cont.GetContabilizacionDiario(UsuarioActual.CveEmpresa, 11, FechaI, FechaF, CveMoneda: DdlMoneda.SelectedValue.ToEntero(), EstatusContabilizacion: DdlEstatusContabilizacion.SelectedValue.ToEntero(), CveSubProyecto: DdlSubProyecto.SelectedValue.ToEntero()))
|
||||
{
|
||||
if (DdlClientes.SelectedValue.ToEntero() > 0)
|
||||
{
|
||||
GvP.DataSource = cont.DtResultados.FiltraParametros($"CveCliente = {DdlClientes.SelectedValue}");
|
||||
}
|
||||
else
|
||||
{
|
||||
GvP.DataSource = cont.DtResultados;
|
||||
}
|
||||
GvP.DataBind();
|
||||
}
|
||||
|
||||
// Cargamos los anticipos
|
||||
if (cont.GetContabilizacionDiario(UsuarioActual.CveEmpresa, 12, FechaI, FechaF))
|
||||
{
|
||||
if (DdlClientes.SelectedValue.ToEntero() > 0)
|
||||
{
|
||||
GvA.DataSource = cont.DtResultados.FiltraParametros($"CveCliente = {DdlClientes.SelectedValue}");
|
||||
}
|
||||
else
|
||||
{
|
||||
GvA.DataSource = cont.DtResultados;
|
||||
}
|
||||
GvA.DataBind();
|
||||
}
|
||||
|
||||
// Cargamos las amortizaciones
|
||||
if (cont.GetContabilizacionDiario(UsuarioActual.CveEmpresa, 10, FechaI, FechaF))
|
||||
{
|
||||
if (DdlClientes.SelectedValue.ToEntero() > 0)
|
||||
{
|
||||
GvPrePolizaAmortizaciones.DataSource = cont.DtResultados.FiltraParametros($"CveCliente = {DdlClientes.SelectedValue}");
|
||||
}
|
||||
else
|
||||
{
|
||||
GvPrePolizaAmortizaciones.DataSource = cont.DtResultados;
|
||||
}
|
||||
GvPrePolizaAmortizaciones.DataBind();
|
||||
}
|
||||
|
||||
cont.Dispose();
|
||||
|
||||
UpGvVentas.Update();
|
||||
UpGvPagos.Update();
|
||||
UpGvAnticipos.Update();
|
||||
UpGvAmortizaciones.Update();
|
||||
UPPTabs.Update();
|
||||
}
|
||||
|
||||
protected void BtnConsultar_Click(object sender, EventArgs e)
|
||||
{
|
||||
cargaPolizas();
|
||||
}
|
||||
|
||||
|
||||
protected void GvD_RowDataBound(object sender, GridViewRowEventArgs e)
|
||||
{
|
||||
if (e.Row.RowType == DataControlRowType.DataRow)
|
||||
{
|
||||
int cuenta = e.Row.DataKey("IdCtaContable").ToString().ToEntero();
|
||||
int CveConcepto = e.Row.DBCampo("CveConceptoContable").ToEntero();
|
||||
|
||||
if (CveConcepto.Contiene(5, 6, 14, 19, 17, 206, 25, 26))
|
||||
{
|
||||
e.Row.FCHyperLink("HplC").NavigateUrl = string.Format("/Compras/Compras.aspx?CveCompra={0}", e.Row.DBCampo("CveCompra"));
|
||||
}
|
||||
if (CveConcepto.Contiene(30, 204))
|
||||
{
|
||||
e.Row.FCHyperLink("HplC").NavigateUrl = string.Format("/Bancos/IE.aspx?CveIE={0}", e.Row.DBCampo("CveIE"));
|
||||
}
|
||||
if (CveConcepto.Contiene(2, 4, 13, 61, 38, 39, 1, 203, 207, 251))
|
||||
{
|
||||
e.Row.FCHyperLink("HplC").NavigateUrl = string.Format("/Ventas/Ventas.aspx?CveVenta={0}", e.Row.DBCampo("CveVenta"));
|
||||
}
|
||||
if (CveConcepto.Contiene(68))
|
||||
{
|
||||
e.Row.FCHyperLink("HplC").NavigateUrl = string.Format("/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}", e.Row.DBCampo("CveMovimientoAlmacen"));
|
||||
}
|
||||
if (CveConcepto.Contiene(28,29))
|
||||
{
|
||||
e.Row.FCHyperLink("HplC").NavigateUrl = string.Format("/RH/Personal.aspx?CvePersonal={0}", e.Row.DBCampo("CvePersonal"));
|
||||
}
|
||||
|
||||
if (cuenta > 0)
|
||||
{
|
||||
DataRow dr = DTmpC.FiltroPrimero(String.Format("Id = {0}", cuenta));
|
||||
|
||||
if (dr != null) e.Row.Cells[3].Text = string.Format("{0}<br/>{1}", dr["CuentaFormato"], dr["Nombre"]);
|
||||
}
|
||||
else
|
||||
{
|
||||
e.Row.Cells[0].ForeColor = System.Drawing.Color.Red;
|
||||
|
||||
((GridViewRow)((GridView)e.Row.NamingContainer).BindingContainer).FCCheckBox("Chk").Visible = false;
|
||||
}
|
||||
|
||||
if (Convert.ToDecimal(e.Row.DataKey("Cargo").ToString()) == 0) e.Row.Cells[4].Text = "";
|
||||
|
||||
if (Convert.ToDecimal(e.Row.DataKey("Abono").ToString()) == 0) e.Row.Cells[5].Text = "";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
protected void ImgExcel2_Click(object sender, EventArgs e)
|
||||
{
|
||||
GvV.ExportToExcel("DiarioVentas_" + DateTime.Now.ToShortDateString());
|
||||
}
|
||||
|
||||
protected void LnkSimplificarCompra_Click(object sender, EventArgs e)
|
||||
{
|
||||
ClsContabilidad ObjMov = new ClsContabilidad();
|
||||
|
||||
LinkButton btn = (LinkButton)sender;
|
||||
GridViewRow row = (GridViewRow)btn.NamingContainer;
|
||||
int index = Convert.ToInt32(row.RowIndex);
|
||||
|
||||
int CvePrePoliza = GvV.DataKeys[row.RowIndex]["CvePrePoliza"].ToString().ToEntero();
|
||||
|
||||
if (ObjMov.PrePolizaSimplificacion(CvePrePoliza, UsuarioActual.CveEmpresa))
|
||||
{
|
||||
Alert("Se ha simplificado la poliza correctamente", ModExtensiones.TipoMensaje.MsgInformacion);
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert("Ocurrió un error al simplificar la póliza", ModExtensiones.TipoMensaje.MsgError);
|
||||
}
|
||||
|
||||
ObjMov.Dispose();
|
||||
cargaPolizas();
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user