Example #1
0
        /// <summary>
        /// EGRESOS VARIOS INTRANET
        /// </summary>

        public int EgresosVarios_RegistrarInt(int idEmpresa, int codigoUsuario, gsEgresosVariosInt_BuscarCabeceraResult objEVCabecera, List <gsEgresosVariosDInt_BuscarDetalleResult> lstEVDetalles, DateTime fechaInicio)
        {
            //using (dmIntranetDataContext dci = new dmIntranetDataContext(ConfigurationManager.ConnectionStrings["genesys"].ConnectionString))
            using (dmIntranetDataContext dci = new dmIntranetDataContext(GS.configuration.Init.GetValue(Constant.sistema, Constant.key, "genesys")))
            {
                decimal?id = null;
                //dmGenesysDataContext dcg = new dmGenesysDataContext(string.Format(ConfigurationManager.ConnectionStrings[dci.Empresa.SingleOrDefault(x => x.idEmpresa == idEmpresa).baseDatos].ConnectionString, "usrGEN" + (10000 + codigoUsuario).ToString().Substring(1, 4)));
                dmGenesysDataContext dcg = new dmGenesysDataContext(string.Format(GS.configuration.Init.GetValue(Constant.sistema, Constant.key, dci.Empresa.SingleOrDefault(x => x.idEmpresa == idEmpresa).baseDatos), "usrGEN" + (10000 + codigoUsuario).ToString().Substring(1, 4)));
                try
                {
                    using (TransactionScope scope = new TransactionScope())
                    {
                        if (objEVCabecera.Id > 0)
                        {
                            id = objEVCabecera.Id;
                        }


                        dcg.gsRegistrarEgresosVarios(ref id, objEVCabecera.ID_Agenda, null, objEVCabecera.Concepto, objEVCabecera.ID_Moneda,
                                                     objEVCabecera.Importe, dci.Empresa.Single(x => x.idEmpresa == idEmpresa).idDocCajaChica,
                                                     objEVCabecera.ID_CCosto, objEVCabecera.ID_UnidadGestion, objEVCabecera.ID_UnidadProyecto, 479,
                                                     objEVCabecera.Fecha, objEVCabecera.Vcmto, 0, objEVCabecera.ID_NaturalezaGastoIngreso, null);

                        dcg.gsEgresosVariosInicioInt_Registrar(int.Parse(id.ToString()), fechaInicio);

                        foreach (gsEgresosVariosDInt_BuscarDetalleResult objEVDetalle in lstEVDetalles)
                        {
                            decimal?idAmarre = null;
                            if (objEVDetalle.ID_Amarre > 0)
                            {
                                idAmarre = objEVDetalle.ID_Amarre;
                            }

                            if (objEVDetalle.Estado == 1)
                            {
                                dcg.gsRegistrarEgresosVariosDetalle_Int(ref idAmarre, id, objEVDetalle.ID_Agenda, null, objEVDetalle.ID_Item, null, objEVCabecera.ID_CCosto,
                                                                        objEVCabecera.ID_UnidadGestion, objEVCabecera.ID_UnidadProyecto, objEVDetalle.Importe, objEVDetalle.ID_Documento,
                                                                        objEVDetalle.Serie, objEVDetalle.Numero, objEVDetalle.FechaEmision, objEVDetalle.Observaciones,
                                                                        objEVDetalle.ImporteBaseIGV, objEVDetalle.ImporteIGV, objEVDetalle.ImporteInafecto);
                            }
                            else
                            {
                                dcg.gsEliminarEgresosVariosDetalle_Int(objEVDetalle.ID_Amarre);
                            }
                        }
                        dcg.SubmitChanges();
                        scope.Complete();

                        return(int.Parse(id.ToString()));
                    }
                }
                catch (Exception ex)
                {
                    dci.Excepcion_Registrar(ex.Message, ex.TargetSite.Name);
                    dci.SubmitChanges();
                    throw new ArgumentException("No se pudo registrar los Egresos Varios en Genesys.");
                }
            }
        }
Example #2
0
        public int RegistrarEgresosVarios(int idEmpresa, int codigoUsuario, gsEgresosVariosInt_BuscarCabeceraResult objEVCabecera, List <gsEgresosVariosDInt_BuscarDetalleResult> lstEVDetalles, DateTime fechaInicio)
        {
            EgresosBL objEgresosBL = new EgresosBL();;

            try
            {
                objEVCabecera.Importe = lstEVDetalles.ToList().FindAll(x => x.Estado == 1).AsEnumerable().Sum(x => x.Importe);
                return(objEgresosBL.EgresosVarios_RegistrarInt(idEmpresa, codigoUsuario, objEVCabecera, lstEVDetalles, fechaInicio));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }