Professional Documents
Culture Documents
Cabecera
Cabecera
using System.Collections.Generic;
using System.Linq;
using DhigzaDAO.Entity;
using System.Data.SqlClient;
using System.Data;
using DhigzaDAO.ViewModel;
using System.Windows.Forms;
namespace DhigzaDAO.Repositorios
{
public class CabeceraDAO : IDisposable
{
BD_DHIGZAEntities db = new BD_DHIGZAEntities();
try
{
using (SqlCommand cmd = new SqlCommand(cadena, cnx, trans))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@id", id);
cmd.Parameters.AddWithValue("@serie", serie);
cmd.Parameters.AddWithValue("@numero", numero);
cmd.Parameters.AddWithValue("@fecha", fecha);
cmd.ExecuteNonQuery();
}
using (SqlCommand cmd = new SqlCommand(cadena2, cnx,
trans))
{
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@tc", tc);
cmd.Parameters.AddWithValue("@serie", serie);
cmd.Parameters.AddWithValue("@numero", numero);
cmd.Parameters.AddWithValue("@fecha", fecha);
cmd.ExecuteNonQuery();
}
trans.Commit();
return 1;
}
catch (Exception ex)
{
trans.Rollback();
throw new Exception(ex.Message);
}
}
}
}
//Abrir la conexion
cnx.Open();
cmd.ExecuteNonQuery();
//Abrir la conexion
if (cnx.State == ConnectionState.Open) cnx.Close();
cnx.Open();
cmd.ExecuteNonQuery();
return 1;
}
}
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
return
Convert.ToString(db.USP_CABECERAInsert(cab.Cab_Fac_TipoDocumento,
cab.Cab_Fac_Serie,
cab.Cab_Fac_Numero, cab.Cab_Fac_Fecha, cab.Cab_Fac_Cliente,
cab.Cab_Fac_Moneda, cab.Cab_Fac_Igv,
cab.Cab_Clte_TipoDocumento,
cab.Cab_Clte_TipoDeCliente, cab.Cab_Clte_NumeroDocumento,
cab.Cab_Clte_RazonSocial, cab.Cab_Fac_TipoDePago,
cab.Cab_Fac_FechaDeVencimiento, cab.Cab_Fac_FechaDePago,
cab.Cab_Ref_Fecha, cab.Cab_Ref_TipoDeDocumento,
cab.Cab_Ref_Serie,
cab.Cab_Ref_Numero, cab.Cab_Fac_TipoDeCalculo,
cab.Cab_Fac_TipoDePrecio,
cab.Cab_Fac_OrdenCompra, cab.Cab_Fac_NumeroGuia,
cab.Cab_Fac_Cheque,
cab.Cab_Fac_Banco, cab.Anulado, cab.Cab_Ref_TipoNotaCredito,
cab.Cab_Ref_TipoNotaDebito,
cab.Cab_Fac_SubTotal, cab.Cab_Fac_Descuentos,
cab.Cab_Fac_ValorVenta,
cab.Cab_Fac_ISC, cab.Cab_Fac_TIGV, cab.Cab_Fac_OtrosCargos,
cab.Cab_Fac_Tributos,
cab.Cab_Fac_ImporteTotal, cab.Cab_Ref_Motivo, cab.Activada,
cab.DeBaja,
cab.Cab_Fac_TVVOE, cab.Cab_Fac_TVVOI,
cab.Cab_Fac_Contingencia, cab.firma,
cab.codBarras, cab.TipoCambio, cab.NumPlaca,
cab.GuiaInterna, cab.NumGuiaRem, cab.NumSalida,
cab.Observaciones, cab.DatosVehiculo,
cab.ConDescuento, cab.TipoOperacion, cab.CodDomicilio,
cab.DG_PorcDsctoGlobal,
cab.DG_BaseImponible, cab.SumatoriaOTrosTrib,
cab.TotalValorVenta, cab.TotalPrecioVenta, cab.TotalDsctos,
cab.SumatoriaOtrosCargos,
cab.TotalAnticipos, cab.ImporteTotalVenta,
cab.DG_MontoDsctos, cab.npedido, cab.idAlm, cab.Tipo,
cab.EsServicio,
cab.Contingencia,cab.Cab_Clte_Direccion).FirstOrDefault());
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
return Convert.ToString(db.usp_CABECERAUpdate(cab.Cab_NumeroDeRegistro,
cab.Cab_Fac_TipoDocumento, cab.Cab_Fac_Serie,
cab.Cab_Fac_Numero, cab.Cab_Fac_Fecha, cab.Cab_Fac_Cliente,
cab.Cab_Fac_Moneda, cab.Cab_Fac_Igv,
cab.Cab_Clte_TipoDocumento,
cab.Cab_Clte_TipoDeCliente, cab.Cab_Clte_NumeroDocumento,
cab.Cab_Clte_RazonSocial, cab.Cab_Fac_TipoDePago,
cab.Cab_Fac_FechaDeVencimiento, cab.Cab_Fac_FechaDePago,
cab.Cab_Ref_Fecha, cab.Cab_Ref_TipoDeDocumento,
cab.Cab_Ref_Serie,
cab.Cab_Ref_Numero, cab.Cab_Fac_TipoDeCalculo,
cab.Cab_Fac_TipoDePrecio,
cab.Cab_Fac_OrdenCompra, cab.Cab_Fac_NumeroGuia,
cab.Cab_Fac_Cheque,
cab.Cab_Fac_Banco, cab.Anulado, cab.Cab_Ref_TipoNotaCredito,
cab.Cab_Ref_TipoNotaDebito,
cab.Cab_Fac_SubTotal, cab.Cab_Fac_Descuentos,
cab.Cab_Fac_ValorVenta,
cab.Cab_Fac_ISC, cab.Cab_Fac_TIGV, cab.Cab_Fac_OtrosCargos,
cab.Cab_Fac_Tributos,
cab.Cab_Fac_ImporteTotal, cab.Cab_Ref_Motivo, cab.Activada,
cab.DeBaja,
cab.Cab_Fac_TVVOE, cab.Cab_Fac_TVVOI,
cab.Cab_Fac_Contingencia, cab.firma,
cab.codBarras, cab.TipoCambio, cab.NumPlaca,
cab.GuiaInterna, cab.NumGuiaRem, cab.NumSalida,
cab.Observaciones, cab.DatosVehiculo, cab.ConDescuento,
cab.TipoOperacion, cab.CodDomicilio, cab.DG_PorcDsctoGlobal,
cab.DG_BaseImponible, cab.SumatoriaOTrosTrib,
cab.TotalValorVenta, cab.TotalPrecioVenta, cab.TotalDsctos,
cab.SumatoriaOtrosCargos,
cab.TotalAnticipos, cab.ImporteTotalVenta,
cab.DG_MontoDsctos, cab.idAlm, cab.npedido,
cab.Tipo, cab.EsServicio));
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
foreach (DETALLE det in detalles)
{
db.usp_DETALLEInsert(Cab_NumeroDeRegistro, det.Det_CodigoArticulo,
det.ctdUnidadItem, det.codUnidadMedida,
det.DesUnidadDeMedida, det.desItem, det.det_TipoComprobante,
det.Peso, det.Activada, det.debaja,
det.mtoPrecioVentaUnitario, det.mtoValorVentaItem, det.codTriIGV,
det.mtoIgvItem, det.nomTributoIgvItem,
det.codTipTributoIgvItem, det.codCatTributoIgvItem, det.tipAfeIGV,
det.porIgvItem, det.codTriISC, det.mtoIscItem,
det.nomTributoIscItem, det.codTipTributoIscItem, det.codCatTributoIscItem,
det.tipSisISC, det.porIscItem,
det.mtoPrecioVentaUnitario, det.mtoValorVentaItem,
det.mtoValorReferencialUnitario,
det.codTipDescuentoItem, det.porDescuentoItem, det.mtoDescuentoItem,
det.mtoBasImpDescuentoItem,
det.codTipCargoItem, det.porCargoItem, det.mtoCargoItem, det.mtoBasImpCargoItem
);
}
}
//public string[] RegistrarVenta(CABECERA cab, List<DETALLE> detalles)
//{
// using (TransactionScope trans = new TransactionScope())
// {
// try
// {
// string id = InsertarCabecera(cab);
// string[] datos = id.Split('-');
// InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
// trans.Complete();
// return datos;
// }
// catch (Exception ex)
// {
// throw new Exception(ex.Message);
// }
// finally
// {
// trans.Dispose();
// }
// }
//}
//public string[] RegistrarVentaGrupo(CABECERA cab, List<DETALLE> detalles,
CueVM det, List<VMIngresosV2> ingres, string numero, string almacen, string cnnx,
string cue, string sal, string qlmo, string karo)
//{
// using (TransactionScope trans = new TransactionScope())
// {
// try
// {
// string id = InsertarCabecera(cab);
// string[] datos = id.Split('-');
// InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
// SalidaDAO db = new SalidaDAO();
// db.AgregarSalidaGrupo(det, ingres, numero, almacen,
cnnx,datos[1], cue, sal,qlmo, karo);
// trans.Complete();
// return datos;
// }
// catch (Exception ex)
// {
// throw new Exception(ex.Message);
// }
// finally
// {
// trans.Dispose();
// }
// }
//}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
return db.USP_ACTUALIZAR_DATOS_CABECERA(IDALM, NPEDIDO, NUMPARTESALIDA,
idcomprobante);
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
return db.usp_CabeceraUpdateCodbarras(id, codbarras);
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
return Convert.ToDecimal(db.USP_GUIA_REMISIONInsert(guia.SERIE,
guia.NumeroGuiaRemision, guia.NumeroSalida,
guia.FechaEmision, guia.FechaInicio,
guia.IdCliente, guia.Partida, guia.Llegada, guia.Placa,
guia.Brevete, guia.idTransportista, guia.LicenciaConducir,
guia.Comentario1, guia.Comentario2,
guia.Despachador, guia.GuiaPorte, guia.Telefono,
guia.NumDocRelacionado, guia.UsuarioCreacion, guia.FechaCreacion,
guia.UsuarioModificacion,
guia.FechaModificacion, guia.Activo, guia.TipoDocRelacionado,
guia.Observaciones, guia.NumGuiaRemisionBaja,
guia.TipoDocGuiaRemBaja, guia.NumDocRemite, guia.TipoDocRemite,
guia.RazonSocialRemite,
guia.NumDocDestinatario, guia.TipoDocDestinatario,
guia.RazonSocialDestinatario, guia.NumDocProveedor,
guia.TipoDocProveedor, guia.RazonSocialProveedor,
guia.MotivoTraslado, guia.DescMotivo, guia.IndicaMotivoTraslado,
guia.Peso, guia.UniMedPesoBruto, guia.NumBultosPallets,
guia.MovilTraslado, guia.FechaInicioTraslado,
guia.NumRucTransportista, guia.TipoDocTransportista,
guia.RazonSocialTransportista, guia.TipoDocConductor,
guia.NumDocConductor, guia.UbigeoPuntoLlegada, guia.NumContenedor,
guia.UbigeoPuntoPartida,
guia.CodPuertoEmbDes, guia.RazonSocialConductor,guia.IDCOMPROBANTE,
guia.tipoTransporte ).FirstOrDefault().Value);
}
/***********************KARDEX**********************/
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@FECHAEMISION",
det.FECHAEMISION);
cmd.Parameters.AddWithValue("@IDTMOV", det.IDTMOV);
cmd.Parameters.AddWithValue("@IDMONEDA", det.IDMONEDA);
cmd.Parameters.AddWithValue("@GUIAINTERNA",
det.GUIAINTERNA);
cmd.Parameters.AddWithValue("@OBSERVACIONES",
det.OBSERVACIONES);
cmd.Parameters.AddWithValue("@IDTIPOCOMP", det.IDTIPOCOMP);
cmd.Parameters.AddWithValue("@SERIE", det.SERIE);
cmd.Parameters.AddWithValue("@NUMERO", numerodoc);
cmd.Parameters.AddWithValue("@FACTOR", det.FACTOR);
cmd.Parameters.AddWithValue("@INCLIGV", det.INCLIGV);
cmd.Parameters.AddWithValue("@DSCTO", det.DSCTO);
cmd.Parameters.AddWithValue("@SUBTOTAL", det.SUBTOTAL);
cmd.Parameters.AddWithValue("@IGV", det.IGV);
cmd.Parameters.AddWithValue("@TOTAL", det.TOTAL);
cmd.Parameters.AddWithValue("@IDALMACENMOV", qlmo);
/*************************MAS**********************************/
cmd.Parameters.AddWithValue("@NUMDOC", det.NUMDOC);
cmd.Parameters.AddWithValue("@CLIENTE", det.CLIENTE);
cmd.Parameters.AddWithValue("@DIRECCION", det.DIRECCION);
cmd.Parameters.AddWithValue("@USUARIO", det.USUARIO);
cmd.Parameters.AddWithValue("@IDFPAGO", det.IDFPAGO);
/****************MAS***********************************/
cmd.Parameters.AddWithValue("@PAGOCON", det.PAGOCON);
cmd.Parameters.AddWithValue("@SALDO", det.SALDO);
cmd.Parameters.AddWithValue("@ABONO", det.ABONO);
cmd.Parameters.AddWithValue("@FECHACAN", det.FECHACAN ==
null ? DBNull.Value : (object)det.FECHACAN);
cmd.Parameters.AddWithValue("@TOTALA", det.TOTALA);
/*****************************************************/
cmd.Parameters.AddWithValue("@CUENTA", det.CUENTA);
cmd.Parameters.AddWithValue("@CHSER", det.CHSER);
cmd.Parameters.AddWithValue("@T_COMPRA", det.T_COMPRA);
cmd.Parameters.AddWithValue("@T_VENTA", det.T_VENTA);
cmd.Parameters.AddWithValue("@PLACA", det.PLACA);
cmd.Parameters.AddWithValue("@ESTADO", det.ESTADO);
cmd.Parameters.AddWithValue("@FECHAVENCIMIENTO",
det.FECHAVENCIMIENTO);
cmd.Parameters.AddWithValue("@COMEN", det.COMEN);
//Ejecutar el store procedure
ident = Convert.ToInt32(cmd.ExecuteScalar()); //return
ident;
}
cmd4.CommandType = CommandType.Text;
cmd4.Parameters.AddWithValue("@CODCOM", u.CODCOM);
cmd4.Parameters.AddWithValue("@CANTIDAD", u.CANTIDAD);
cmd4.Parameters.AddWithValue("@PRECIO", u.PRECIO);
cmd4.Parameters.AddWithValue("@TOTAL", u.TOTAL);
cmd4.Parameters.AddWithValue("@IDCUE", ident);
cmd4.ExecuteNonQuery();
/*************UPDATEARTICULOS***********************/
SqlCommand cmd5 = new SqlCommand(proc3, cnx, trans);
cmd5.CommandType = CommandType.Text;
cmd5.Parameters.AddWithValue("@codcom", u.CODCOM);
cmd5.Parameters.AddWithValue("@cantidad", u.CANTIDAD);
cmd5.Parameters.AddWithValue("@precio", u.PRECIO);
cmd5.ExecuteNonQuery();
cmd6.Parameters.AddWithValue("@CODCOM", u.CODCOM);
cmd6.Parameters.AddWithValue("@FECHA", det.FECHAEMISION);
cmd6.Parameters.AddWithValue("@IDTMOV", 5);
cmd6.Parameters.AddWithValue("@SERIE", det.SERIE);
cmd6.Parameters.AddWithValue("@NUMERO", det.NUMERO);
cmd6.Parameters.AddWithValue("@RUC_CLIENTE", det.NUMDOC);
cmd6.Parameters.AddWithValue("@RAZON", det.CLIENTE);
cmd6.Parameters.AddWithValue("@ALMACEN", qlmo);
cmd6.Parameters.AddWithValue("@MONEDA", det.IDMONEDA);
cmd6.Parameters.AddWithValue("@PRECIO", u.PRECIO);
cmd6.Parameters.AddWithValue("@PS", ident);
cmd6.Parameters.AddWithValue("@PE", "");
cmd6.Parameters.AddWithValue("@SALE", u.CANTIDAD);
cmd6.Parameters.AddWithValue("@SALDO", u.STOCKUPDATE);
cmd6.Parameters.AddWithValue("@RUC_PROVEEDOR", "");
cmd6.Parameters.AddWithValue("@ENTRA", "");
cmd6.ExecuteNonQuery();
}
trans.Commit();
}
catch (Exception ex)
{
trans.Rollback();
throw new Exception(ex.Message);
}
finally
{
trans.Dispose();
}
}
return ident;
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
using (var dbContextTransaction = db.Database.BeginTransaction())
{
try
{
VentaDAO Vdb = new VentaDAO();
string id = InsertarCabecera(cab);
string[] datos = id.Split('-');
InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
pago.NSAL = Convert.ToString(datos[0]);
Vdb.RegistrarVenta_Pago(pago);
doc.id = cab.Cab_Fac_TipoDocumento;
doc.codigo = docRes.CODIGO;
doc.nombre = docRes.NOMBRE;
doc.mov = "G";
doc.serie = cab.Cab_Fac_Serie;
doc.numero = cab.Cab_Fac_Numero;
DBD.RegistrarDocumentoMovimiento(doc);
}
}
ActualizarDatosCabecera(almacen, NumNotaPedido,Convert.ToInt32(
pago.NSAL), Convert.ToInt32(datos[0]));
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
using (var dbContextTransaction = db.Database.BeginTransaction())
{
try
{
VentaDAO Vdb = new VentaDAO();
string id = InsertarCabecera(cab);
string[] datos = id.Split('-');
InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
// pago.NumeroSalida = Convert.ToInt32(datos[0]);
// Vdb.RegistrarVenta_Pago(pago);
string almacen = detalles[0].idAlm;
using (DocumentoDAO DBD = new DocumentoDAO())
{
USP_OBTENER_DOCUMENTO_ID_Result docRes =
DBD.OBTENER_DOCUMENTO_ID(cab.Cab_Fac_TipoDocumento);
if (docRes != null)
{
Entity.DOCUMENTOS doc = new Entity.DOCUMENTOS();
doc.id = cab.Cab_Fac_TipoDocumento;
doc.codigo = docRes.CODIGO;
doc.nombre = docRes.NOMBRE;
doc.mov = "G";
doc.serie = cab.Cab_Fac_Serie;
doc.numero = cab.Cab_Fac_Numero;
DBD.RegistrarDocumentoMovimiento(doc);
}
}
ActualizarDatosCabecera(almacen, 0,Convert.ToInt32( pago.NSAL),
Convert.ToInt32(datos[0]));
string nomBarras = cab.Cab_Fac_TipoDocumento + "-" +
cab.Cab_Fac_Serie + "-" + cab.Cab_Fac_Numero + ".png";
ActualizaCabeceraUpdateCodbarras(Convert.ToInt32(datos[0]),
nomBarras);
foreach (DETALLE detalle in detalles)
{
EstablecerPedidoAtendidoEF(detalle.idAlm,
detalle.Det_CodigoArticulo, 0);
}
dbContextTransaction.Commit();
return datos;
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception(ex.InnerException.Message);
}
finally
{
dbContextTransaction.Dispose();
}
}
}
GUIA_REMISION guia)
{
//using (TransactionScope trans = new TransactionScope())
//{
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
using (var dbContextTransaction = db.Database.BeginTransaction())
{
string[] datos = null;
try
{
VentaDAO Vdb = new VentaDAO();
string id = InsertarCabecera(cab);
//GrabarNumeroDoc(cab.Cab_Fac_TipoDocumento,
cab.Cab_Fac_Serie);
datos = id.Split('-');
InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
// pago.NumeroSalida = Convert.ToInt32(datos[0]);
// Vdb.RegistrarVenta_Pago(pago);
string almacen = detalles[0].idAlm;
using (DocumentoDAO DBD = new DocumentoDAO())
{
USP_OBTENER_DOCUMENTO_ID_Result docRes =
DBD.OBTENER_DOCUMENTO_ID(cab.Cab_Fac_TipoDocumento);
if (docRes != null)
{
Entity.DOCUMENTOS doc = new Entity.DOCUMENTOS();
doc.id = cab.Cab_Fac_TipoDocumento;
doc.codigo = docRes.CODIGO;
doc.nombre = docRes.NOMBRE;
doc.mov = "G";
doc.serie = cab.Cab_Fac_Serie;
doc.numero = cab.Cab_Fac_Numero;
DBD.RegistrarDocumentoMovimiento(doc);
}
}
//ActualizarDatosCabecera(almacen, 0,
Convert.ToInt32(pago.NumeroSalida), Convert.ToInt32(datos[0]));
string nomBarras = cab.Cab_Fac_TipoDocumento + "-" +
cab.Cab_Fac_Serie + "-" + cab.Cab_Fac_Numero + ".png";
ActualizaCabeceraUpdateCodbarras(Convert.ToInt32(datos[0]),
nomBarras);
foreach (DETALLE detalle in detalles)
{
EstablecerPedidoAtendidoEF(detalle.idAlm,
detalle.Det_CodigoArticulo, 0);
}
if (guia!=null)
{
using (GuiaRemisionDAO dbg = new GuiaRemisionDAO())
{
guia.NumDocRelacionado
=guia.NumDocRelacionado.Substring(0,4)+"-" +datos[1].ToString();
guia.IDCOMPROBANTE = Convert.ToInt32(datos[0]);
decimal idguia= dbg.GrabareGuiaRemision(guia);
Array.Resize(ref datos, 3);
datos[2] = idguia.ToString();
}
}
dbContextTransaction.Commit();
return datos;
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception(ex.InnerException.Message);
}
finally
{
dbContextTransaction.Dispose();
}
}
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
//using (TransactionScope trans = new TransactionScope())
//{
using (var dbContextTransaction = db.Database.BeginTransaction())
{
try
{
VentaDAO Vdb = new VentaDAO();
string id = InsertarCabecera(cab);
string[] datos = id.Split('-');
InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
//pago.NumeroSalida = Convert.ToInt32(datos[0]);
//Vdb.RegistrarVenta_Pago(pago);
doc.id = cab.Cab_Fac_TipoDocumento;
doc.codigo = docRes.CODIGO;
doc.nombre = docRes.NOMBRE;
doc.mov = "G";
doc.serie = cab.Cab_Fac_Serie;
doc.numero = cab.Cab_Fac_Numero;
DBD.RegistrarDocumentoMovimiento(doc);
}
}
ActualizarDatosCabecera(almacen, 0,
Convert.ToInt32( pago.NSAL), Convert.ToInt32(datos[0]));
string nomBarras = cab.Cab_Fac_TipoDocumento + "-" +
cab.Cab_Fac_Serie + "-" + cab.Cab_Fac_Numero
+ ".png";
ActualizaCabeceraUpdateCodbarras(Convert.ToInt32(datos[0]),
nomBarras);
foreach (DETALLE detalle in detalles)
{
EstablecerPedidoAtendidoEF(detalle.idAlm,
detalle.Det_CodigoArticulo, 0);
}
dbContextTransaction.Commit();
return datos;
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception(ex.InnerException.Message);
}
finally
{
dbContextTransaction.Dispose();
}
}
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
using (var dbContextTransaction = db.Database.BeginTransaction())
{
try
{
VentaDAO Vdb = new VentaDAO();
string id = InsertarCabecera(cab);
string[] datos = id.Split('-');
InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
//pago.NumeroSalida = Convert.ToInt32(datos[0]);
//Vdb.RegistrarVenta_Pago(pago);
doc.id = cab.Cab_Fac_TipoDocumento;
doc.codigo = docRes.CODIGO;
doc.nombre = docRes.NOMBRE;
doc.mov = "G";
doc.serie = cab.Cab_Fac_Serie;
doc.numero = cab.Cab_Fac_Numero;
DBD.RegistrarDocumentoMovimiento(doc);
}
}
ActualizarDatosCabecera(almacen, NumNotaPedido,
Convert.ToInt32(pago.NSAL), Convert.ToInt32(datos[0]));
dbContextTransaction.Commit();
return datos;
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception(ex.Message);
}
finally
{
dbContextTransaction.Dispose();
}
}
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
using (var dbContextTransaction = db.Database.BeginTransaction())
{
try
{
VentaDAO Vdb = new VentaDAO();
string id = InsertarCabecera(cab);
string[] datos = id.Split('-');
InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
//pago.NumeroSalida = Convert.ToInt32(datos[0]);
//Vdb.RegistrarVenta_Pago(pago);
doc.id = cab.Cab_Fac_TipoDocumento;
doc.codigo = docRes.CODIGO;
doc.nombre = docRes.NOMBRE;
doc.mov = "G";
doc.serie = cab.Cab_Fac_Serie;
doc.numero = cab.Cab_Fac_Numero;
DBD.RegistrarDocumentoMovimiento(doc);
}
}
ActualizarDatosCabecera(almacen, 0, 0,
Convert.ToInt32(datos[0]));
string nomBarras = cab.Cab_Fac_TipoDocumento + "-" +
cab.Cab_Fac_Serie + "-" + cab.Cab_Fac_Numero + ".png";
ActualizaCabeceraUpdateCodbarras(Convert.ToInt32(datos[0]),
nomBarras);
dbContextTransaction.Commit();
return datos;
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception(ex.Message);
}
finally
{
dbContextTransaction.Dispose();
}
}
}
doc.id = cab.Cab_Fac_TipoDocumento;
doc.codigo = docRes.CODIGO;
doc.nombre = docRes.NOMBRE;
doc.mov = "G";
doc.serie = cab.Cab_Fac_Serie;
doc.numero = cab.Cab_Fac_Numero;
DBD.RegistrarDocumentoMovimiento(doc);
}
}
ActualizarDatosCabecera(almacen, 0, 0,
Convert.ToInt32(datos[0]));
string nomBarras = cab.Cab_Fac_TipoDocumento + "-" +
cab.Cab_Fac_Serie + "-" + cab.Cab_Fac_Numero + ".png";
ActualizaCabeceraUpdateCodbarras(Convert.ToInt32(datos[0]),
nomBarras);
dbContextTransaction.Commit();
return datos;
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception(ex.Message);
}
finally
{
dbContextTransaction.Dispose();
}
}
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
}
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
}
}
public int IncrementarStockArticulo(string CodalmSerie, int cantidad,
string CODCOM)
{
try
{
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
string sql = "UPDATE QLM00" + CodalmSerie + " SET STOCK=STOCK +" +
cantidad + " WHERE CODCOM='" + CODCOM + "'";
db.Database.ExecuteSqlCommand(sql);
return 1;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
}
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
string sql = "UPDATE " + Codalm + " SET STOCK=STOCK -" + cantidad
+ " WHERE CODCOM='" + CODCOM + "'";
db.Database.ExecuteSqlCommand(sql);
return 1;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
}
}
public int IncrementarStockArticulo_FE(string CodalmSerie, int cantidad,
string CODCOM)
{
try
{
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
string serie = CodalmSerie.Substring(3, 1);
CodalmSerie = serie.PadLeft(3, '0');
string sql = "UPDATE QLM00" + CodalmSerie + " SET STOCK=STOCK +" +
cantidad + " WHERE CODCOM='" + CODCOM + "'";
db.Database.ExecuteSqlCommand(sql);
return 1;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
}
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
string sql = "DELETE FROM KAR00" + CodalmSerie +
" WHERE TIPOCOMPROBANTE='" + TC + "' AND SERIE='" +
CodalmSerie +
"'AND CODCOM='" + CODCOM + "'";
db.Database.ExecuteSqlCommand(sql);
return 1;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
}
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
string serie = CodalmSerie.Substring(3, 1);
serie = serie.PadLeft(3, '0');
db.Database.ExecuteSqlCommand(sql);
return 1;
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
}
}
// }
//}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
using (var dbContextTransaction = db.Database.BeginTransaction())
{
try
{
//VentaDAO Vdb = new VentaDAO();
string id = InsertarCabecera(cab);
string[] datos = id.Split('-');
InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
cab.Cab_Ref_TipoNotaCredito == "02" ||
cab.Cab_Ref_TipoNotaCredito == "06"))
{
AnularComprobante(cab.Cab_Fac_TipoDocumento,
cab.Cab_Fac_Serie, cab.Cab_Fac_Numero, cue, sal);
//Confirmar la transaccion
dbContextTransaction.Commit();
return datos;
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception(ex.Message);
}
finally
{
dbContextTransaction.Dispose();
// trans.Dispose();
}
}
}
/// ///////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////
public int RegistrarKardex_Anulacion(CUE00001 det, List<VMIngresosV2>
ingres, ING00001 ING,
string
KAR, string qlmo, int salida, string usuariocrea, DateTime fechacrea)
{
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
using (var dbContextTransaction = db.Database.BeginTransaction())
{
try
{
string id = InsertarCabecera(cab);
string[] datos = id.Split('-');
InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
string s_serie = cab.Cab_Fac_Serie;
string numNC = cab.Cab_Fac_Serie + "-" + cab.Cab_Fac_Numero;
// s_serie = s_serie.PadLeft(3, '0');
if (cab.Cab_Fac_TipoDocumento == "07" &&
(cab.Cab_Ref_TipoNotaCredito == "01" ||
cab.Cab_Ref_TipoNotaCredito == "02" ||
cab.Cab_Ref_TipoNotaCredito == "06"))
{
AnularComprobanteNC(cab.Cab_Ref_TipoDeDocumento,
cab.Cab_Ref_Serie, cab.Cab_Ref_Numero, cue, sal,
Convert.ToDateTime( cab.Cab_Fac_Fecha));
NumeroSalida = cab.NumSalida;
AnularRegistroPagoVenta(NumeroSalida, "ABONO_C");
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
using (var dbContextTransaction = db.Database.BeginTransaction())
{
try
{
VentaDAO Vdb = new VentaDAO();
string id = InsertarCabecera(cab);
string[] datos = id.Split('-');
InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
//pago.NumeroSalida = Convert.ToInt32(datos[0]);
//Vdb.RegistrarVenta_Pago(pago);
string almacen = detalles[0].idAlm;
using (DocumentoDAO DBD = new DocumentoDAO())
{
USP_OBTENER_DOCUMENTO_ID_Result docRes =
DBD.OBTENER_DOCUMENTO_ID(cab.Cab_Fac_TipoDocumento);
if (docRes != null)
{
Entity.DOCUMENTOS doc = new Entity.DOCUMENTOS();
doc.id = cab.Cab_Fac_TipoDocumento;
doc.codigo = docRes.CODIGO;
doc.nombre = docRes.NOMBRE;
doc.mov = "G";
doc.serie = cab.Cab_Fac_Serie;
doc.numero = cab.Cab_Fac_Numero;
DBD.RegistrarDocumentoMovimiento(doc);
}
}
ActualizarDatosCabecera(almacen, NumNotaPedido,
Convert.ToInt32(pago.NSAL), Convert.ToInt32(cab.Cab_NumeroDeRegistro));
dbContextTransaction.Commit();
return datos;
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception(ex.Message);
}
finally
{
dbContextTransaction.Dispose();
}
}
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
using (var dbContextTransaction = db.Database.BeginTransaction())
{
try
{
string id = InsertarCabecera(cab);
string[] datos = id.Split('-');
InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
cab.Cab_Ref_TipoNotaCredito == "05"))
{
}
//Bonificacion
else if (cab.Cab_Fac_TipoDocumento == "07" &&
(cab.Cab_Ref_TipoNotaCredito == "08"))
{
}
//Disminucion en el valor
else if (cab.Cab_Fac_TipoDocumento == "07" &&
(cab.Cab_Ref_TipoNotaCredito == "09"))
}
//correccion por error en la descripcion
else if (cab.Cab_Fac_TipoDocumento == "07" &&
(cab.Cab_Ref_TipoNotaCredito == "03"))
{
cab.Cab_Ref_TipoNotaCredito == "02" ||
cab.Cab_Ref_TipoNotaCredito == "06" ||
cab.Cab_Ref_TipoNotaCredito == "07"))
{
foreach (DETALLE det in detalles)
{
//Anulacion de operacion,Anulacion por el RUC,
devolucion total
if (cab.Cab_Ref_TipoNotaCredito == "01" ||
cab.Cab_Ref_TipoNotaCredito == "02" ||
cab.Cab_Ref_TipoNotaCredito == "06")
{
//Por devolucion de productos
IncrementarStockArticulo(cab.Cab_Fac_Serie,
Convert.ToInt32(det.ctdUnidadItem),
det.Det_CodigoArticulo);
//Por Anulacion por error o Devolucion Total
Kardex_devo_Total(Convert.ToInt32(det.ctdUnidadItem),
det.Det_CodigoArticulo,
cab.Cab_Fac_TipoDocumento,
cab.Cab_Fac_Serie,
cab.Cab_Fac_Numero);
AnularComprobante(cab.Cab_Fac_TipoDocumento,
cab.Cab_Fac_Serie, cab.Cab_Fac_Numero, cue, sal);
}
//Por Devolucion de Item
else if (cab.Cab_Ref_TipoNotaCredito == "07")
{
Kardex_devo_Parcial(Convert.ToInt32(det.ctdUnidadItem),
det.Det_CodigoArticulo,
cab.Cab_Fac_TipoDocumento,
cab.Cab_Fac_Serie,
cab.Cab_Fac_Numero);
}
}
}
//Confirmar la transaccion
dbContextTransaction.Commit();
return datos;
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception(ex.Message);
}
finally
{
dbContextTransaction.Dispose();
// trans.Dispose();
}
}
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
using (var dbContextTransaction = db.Database.BeginTransaction())
{
try
{
string id = InsertarCabecera(cab);
string[] datos = id.Split('-');
InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
cab.Cab_Ref_TipoNotaCredito == "05"))
{
}
//Bonificacion
else if (cab.Cab_Fac_TipoDocumento == "07" &&
(cab.Cab_Ref_TipoNotaCredito == "08"))
}
//Disminucion en el valor
else if (cab.Cab_Fac_TipoDocumento == "07" &&
(cab.Cab_Ref_TipoNotaCredito == "09"))
}
//correccion por error en la descripcion
else if (cab.Cab_Fac_TipoDocumento == "07" &&
(cab.Cab_Ref_TipoNotaCredito == "03"))
{
}
else if (cab.Cab_Fac_TipoDocumento == "07" &&
(cab.Cab_Ref_TipoNotaCredito == "01" ||
cab.Cab_Ref_TipoNotaCredito == "02" ||
cab.Cab_Ref_TipoNotaCredito == "06" ||
cab.Cab_Ref_TipoNotaCredito == "07"))
{
foreach (DETALLE det in detalles)
{
//Anulacion de operacion,Anulacion por el RUC,
devolucion total
if (cab.Cab_Ref_TipoNotaCredito == "01" ||
cab.Cab_Ref_TipoNotaCredito == "02" ||
cab.Cab_Ref_TipoNotaCredito == "06")
{
//Por devolucion de productos
IncrementarStockArticulo_FE(cab.Cab_Fac_Serie,
Convert.ToInt32(det.ctdUnidadItem),
det.Det_CodigoArticulo);
//Por Anulacion por error o Devolucion Total
Kardex_devo_Total_FE(Convert.ToInt32(det.ctdUnidadItem),
det.Det_CodigoArticulo,
cab.Cab_Fac_TipoDocumento,
cab.Cab_Fac_Serie,
cab.Cab_Fac_Numero);
AnularComprobante(cab.Cab_Fac_TipoDocumento,
cab.Cab_Fac_Serie, cab.Cab_Fac_Numero, cue, sal);
}
//Por Devolucion de Item
else if (cab.Cab_Ref_TipoNotaCredito == "07")
{
Kardex_devo_Parcial_FE(Convert.ToInt32(det.ctdUnidadItem),
det.Det_CodigoArticulo,
cab.Cab_Fac_TipoDocumento,
cab.Cab_Fac_Serie,
cab.Cab_Fac_Numero);
}
}
}
//Confirmar la transaccion
dbContextTransaction.Commit();
return datos;
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception(ex.Message);
}
finally
{
dbContextTransaction.Dispose();
// trans.Dispose();
}
}
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
using (var dbContextTransaction = db.Database.BeginTransaction())
{
try
{
if (cab.Cab_Fac_TipoDocumento == "01" &&
(cab.Cab_Ref_TipoNotaCredito == "03"))
{
Kardex_devo_Total_FE(Convert.ToInt32(det.ctdUnidadItem),
det.Det_CodigoArticulo,
cab.Cab_Fac_TipoDocumento,
cab.Cab_Fac_Serie,
cab.Cab_Fac_Numero);
AnularComprobante(cab.Cab_Fac_TipoDocumento,
cab.Cab_Fac_Serie, cab.Cab_Fac_Numero, cue, sal);
}
}
//Confirmar la transaccion
dbContextTransaction.Commit();
return 1;
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception(ex.Message);
}
finally
{
dbContextTransaction.Dispose();
// trans.Dispose();
}
}
}
string id = InsertarCabecera(cab);
string[] datos = id.Split('-');
InsertarDetalles(detalles, Convert.ToInt32(datos[0]));
db.USP_GRABAR_NUMERODOC_CAB(cab.Cab_Fac_TipoDocumento,
cab.Cab_Fac_Serie);
dbContextTransaction.Commit();
return datos;
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception(ex.Message);
}
finally
{
dbContextTransaction.Dispose();
}
}
}
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
db.USP_ANULAR_COMPROBANTE_CUE(tipo, serie, numero, codalm, sal);
}
public void AnularComprobanteNC(string tipo, string serie, string numero,
String codalm, string sal ,DateTime fechacan)
{
string cn = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cn;
db.USP_ANULAR_COMPROBANTE_CUE_NC(tipo, serie, numero, codalm, sal,
fechacan);
}
cmd.CommandType = System.Data.CommandType.StoredProcedure;
using (SqlDataAdapter da = new SqlDataAdapter(cmd))
{
da.Fill(ds);
}
return ds;
}
}
}
cmd.CommandType = System.Data.CommandType.StoredProcedure;
using (SqlDataAdapter da = new SqlDataAdapter(cmd))
{
da.Fill(ds);
}
return ds;
}
}
}
cmd.CommandType = System.Data.CommandType.StoredProcedure;
using (SqlDataAdapter da = new SqlDataAdapter(cmd))
{
da.Fill(ds);
}
if (ds.Tables[0].Rows.Count > 0)
{
return ds.Tables[0].Rows[0]["numsalida"].ToString();
}
else
return "0";
}
}
}
det["CODCOM"].ToString());
//Por Anulacion por error o Devolucion Total
Kardex_devo_Total_FE(Convert.ToInt32(det["CANTIDAD"]),
det["CODCOM"].ToString(),
tipo,
serie,
numero);
}
db.USP_ANULAR_COMPROBANTE_CUE( tipo, serie, numero, cue,
sal);
dbContextTransaction.Commit();
}
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception();
}
finally
{
dbContextTransaction.Dispose();
}
}
} //Por devolucion de productos
Kardex_devo_Total_Compras(Convert.ToInt32(det["CANTIDAD"]),
det["CODCOM"].ToString(), idcom, kar);
}
db.USP_ANULAR_COMPROBANTE_COM( tipo, serie, numero, COM,
ing);
dbContextTransaction.Commit();
}
}
catch (Exception ex)
{
dbContextTransaction.Rollback();
throw new Exception();
}
finally
{
dbContextTransaction.Dispose();
}
}
} //Por devolucion de productos
{
string cnx = ConexionDAO.SELECTOS;
db.Database.Connection.ConnectionString = cnx;
db.USP_ACT_KARDEX_DEV_TOTAL(cantidad, codcom, tipoComprob, serie,
numero);
}
cmd.CommandType = System.Data.CommandType.StoredProcedure;
using (SqlDataAdapter da = new SqlDataAdapter(cmd))
{
da.Fill(ds);
}
return ds;
}
}
}
return valor;
}
return valor;
}
}
catch (Exception ex)
{
trans.Rollback();
res=-1;
}
finally
{
trans.Dispose();
}
return res;
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
}
cmd.ExecuteNonQuery().ToString();
}
}
disposedValue = true;
}
}