Exemplo n.º 1
0
        public void onbaseinbox(addODTRequest odt)
        {
            BD_ONBASE_INBOX inbox = new BD_ONBASE_INBOX();

            inbox.AFILAMEX         = odt.AfilAmex;
            inbox.AFILIACION       = odt.Afiliacion;
            inbox.ARODT            = odt.ArOdt;
            inbox.CANAL            = odt.Canal;
            inbox.CARGA            = odt.Carga;
            inbox.CODIGOPRODUCTO   = odt.CodigoProducto;
            inbox.COLONIA          = odt.Colonia;
            inbox.COMERCIO         = odt.Comercio;
            inbox.CONECTIVIDAD     = odt.Conectividad;
            inbox.CONTACTO1        = odt.Contacto1;
            inbox.CONTACTO2        = odt.Contacto2;
            inbox.CONTACTOCOMERCIO = odt.ContactoComercio;
            inbox.CP                  = odt.Cp;
            inbox.DESCRIPCION         = odt.Descripcion;
            inbox.DIASATENCION        = odt.DiasAtencion;
            inbox.DOMICILIO           = odt.Domicilio;
            inbox.EJECUTIVOKA         = odt.EjecutivoKA;
            inbox.EJECUTIVOSUCURSAL   = odt.EjecutivoSucursal;
            inbox.EMAILEJECUTIVO      = odt.EmailEjecutivo;
            inbox.EMAILEJECUTIVOKA    = odt.EmailEjecutivoKA;
            inbox.EMAILRESPUESTA      = odt.EmailRespuesta;
            inbox.EMAILSERV           = odt.EmailServ;
            inbox.ESTADO              = odt.Estado;
            inbox.FECHAENVIO          = odt.FechaEnvio;
            inbox.FOLIOTELECARGA      = odt.FolioTelecarga;
            inbox.HORARIOATENCION     = odt.HorarioAtencion;
            inbox.IDAMEX              = odt.IdAmex;
            inbox.IDCAJA              = odt.IdCaja;
            inbox.MCC                 = odt.Mcc;
            inbox.MODELOTPV           = odt.ModeloTPV;
            inbox.NUMROLLOS           = odt.NumRollos;
            inbox.OBSERVACION         = odt.Observacion;
            inbox.POBLACION           = odt.Poblacion;
            inbox.PREODT              = odt.PreOdt;
            inbox.PRODUCTO            = odt.Producto;
            inbox.PROVEEDOR           = odt.Proveedor;
            inbox.PROYECTO            = odt.Proyecto;
            inbox.RAZONSOCIAL         = odt.RazonSocial;
            inbox.REFERENCIAUBICACION = odt.ReferenciaUbicacion;
            inbox.RFC                 = odt.Rfc;
            inbox.SUBTIPOSERVICIO     = odt.SubtipoServicio;
            inbox.SUCURSAL            = odt.Sucursal;
            inbox.TELEFONO            = odt.Telefono;
            inbox.TELEJECUTIVO        = odt.TelEjecutivo;
            inbox.TELSUCURSAL         = odt.TelSucursal;
            inbox.TIPOSERVICIO        = odt.TipoServicio;
            inbox.TIPOAB              = odt.TipoAB;
            contex_.BD_ONBASE_INBOX.InsertOnSubmit(inbox);
            contex_.SubmitChanges();
        }
Exemplo n.º 2
0
        public int carga(addODTRequest odt)
        {
            DateTime  dateTimeServer  = contex_.ExecuteQuery <DateTime>("SELECT GETDATE() Fecha").SingleOrDefault();
            string    dateTime2String = dateTimeServer.ToString("yyyy-MM-ddTHH:mm:ss.fffffff");
            BD_CARGAS carga           = new BD_CARGAS();

            carga.ID_CLIENTE         = 4;
            carga.FECHA              = dateTimeServer;
            carga.ID_ATTACH_ARCHIVO1 = null;
            carga.ID_STATUS_CARGA    = 1;
            carga.ID_USUARIO_ALTA    = 67;
            carga.STATUS             = "ACTIVO";
            carga.FEC_ALTA           = dateTimeServer;
            contex_.BD_CARGAS.InsertOnSubmit(carga);
            contex_.SubmitChanges();
            return(carga.ID_CARGA);
        }
Exemplo n.º 3
0
        public string addServicio(addODTRequest odt)
        {
            var mensaje = "";
            var val     = "";

            if (odt == null)
            {
                throw new ArgumentNullException("ODT");
            }
            try
            {
                Inserts insert = new Inserts();
                insert.onbaseinbox(odt);
                if (odt.FolioTelecarga == "0" || odt.FolioTelecarga == "")
                {
                    Regex    reg         = new Regex("[^a-zA-Z0-9 ]");
                    string[] desc        = odt.Producto.Split('-');
                    var      idsegmento  = (from aa in contex_.BD_NEGOCIOS where aa.NO_AFILIACION == odt.Afiliacion && aa.ID_CLIENTE == 4 select aa.ID_SEGMENTO).FirstOrDefault();
                    var      idservicio  = (from a in contex_.C_SERVICIOS where a.DESC_SERVICIO == reg.Replace(odt.TipoServicio.Normalize(NormalizationForm.FormD), "") && a.ID_CLIENTE == 4 && a.STATUS == "ACTIVO" select a.ID_SERVICIO).FirstOrDefault();
                    var      idfalla     = (from b in contex_.C_FALLAS where b.DESC_FALLA == reg.Replace(odt.SubtipoServicio.Normalize(NormalizationForm.FormD), "") && b.ID_CLIENTE == 4 && b.STATUS == "ACTIVO" select b.ID_FALLA).FirstOrDefault();
                    var      idproveedor = (from c in contex_.C_PROVEEDORES_USUARIOS where c.DESC_PROVEEDOR_USUARIO == odt.Proveedor select c.ID_PROVEEDOR_USUARIO).FirstOrDefault();
                    var      idarunico   = (from d in contex_.BD_CARGAS join e in contex_.C_CLIENTES on d.ID_CLIENTE equals e.ID_CLIENTE where e.ID_CLIENTE == 4 select new { isarunico = e.IS_AR_UNICO == null ? 0 : e.IS_AR_UNICO }).FirstOrDefault();
                    var      idproducto  = (from e in contex_.C_PRODUCTOS_NEGOCIOS where e.DESC_PRODUCTO_NEGOCIO == odt.Producto select e.ID_PRODUCTO_NEGOCIO).SingleOrDefault();

                    if (idsegmento == null)
                    {
                        idsegmento = 0;
                    }

                    if (odt.ArOdt == "")
                    {
                        mensaje = "El campo de ODT no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Descripcion == "")
                    {
                        mensaje = "El campo descripcion no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Observacion == "")
                    {
                        mensaje = "El campo observacion no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Comercio == "")
                    {
                        mensaje = "El campo comercio no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Domicilio == "")
                    {
                        mensaje = "El campo domicilio no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Colonia == "")
                    {
                        mensaje = "El campo colonia no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Poblacion == "")
                    {
                        mensaje = "El campo poblacion no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Estado == "")
                    {
                        mensaje = "El campo estado no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Cp == "")
                    {
                        mensaje = "El campo CP no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.RazonSocial == "")
                    {
                        mensaje = "El campo Razon Social no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Rfc == "")
                    {
                        mensaje = "El campo RFC no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Proveedor == "")
                    {
                        mensaje = "El campo proveedor no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.FechaEnvio == "")
                    {
                        mensaje = "El campo Fecha Envio no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    //se descomentan lineas para uso de idamex y afiliacion

                    /* if(odt.AfilAmex.Length < 10 || odt.AfilAmex.Length > 10)
                     * {
                     *   mensaje = "El campo Afiliacion Amex debe contener 10 numeros con opcion de completar con 7 caracteres de texto";
                     *   insert.logws(odt.ArOdt, "ERROR", mensaje);
                     *   return mensaje;
                     * }
                     * if (odt.IdAmex.Length < 8 || odt.IdAmex.Length > 8)
                     * {
                     *   mensaje = "El campo Afiliacion Amex debe contener 10 numeros con opcion de completar con 7 caracteres de texto";
                     *   insert.logws(odt.ArOdt, "ERROR", mensaje);
                     *   return mensaje;
                     * }
                     */
                    //
                    if (odt.Producto == "")
                    {
                        mensaje = "El campo Producto no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Proyecto == "")
                    {
                        mensaje = "El campo proyecto no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.EjecutivoKA == "")
                    {
                        mensaje = "El campo EjecutivoKA no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.EmailEjecutivoKA == "")
                    {
                        mensaje = "El campo EmailEjecutivoKA no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.EjecutivoSucursal == "")
                    {
                        mensaje = "El campo EjecutivoSucursal no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Sucursal == "")
                    {
                        mensaje = "El campo Sucursal no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.EmailEjecutivo == "")
                    {
                        mensaje = "El campo EmailEjecutivo no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.TelEjecutivo == "")
                    {
                        mensaje = "El campo TelEjecutivo no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.TelSucursal == "")
                    {
                        mensaje = "El campo TelSucursal no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.ContactoComercio == "")
                    {
                        mensaje = "El campo ContactoComercio no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Contacto1 == "")
                    {
                        mensaje = "El campo Contacto1 no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (odt.Contacto2 == "")
                    {
                        mensaje = "El campo Contacto2 no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    /*Se agrega campo 27/02/2020*/
                    if (odt.TipoServicio.Normalize(NormalizationForm.FormD) == "BOARDING DIGITAL" && (odt.SubtipoServicio.Normalize(NormalizationForm.FormD) == "CONTRATO DE RECUPERACION DE FIRMA"))
                    {
                        if (odt.Canal == "")
                        {
                            mensaje = "El campo Canal no puede estar vacio";
                            insert.logws(odt.ArOdt, "ERROR", mensaje);
                            return(mensaje);
                        }
                        //Se agrega nueva validacion 03/03/2020
                        C_CANALES canal = contex_.C_CANALES.Where(x => x.DESC_CANAL == odt.Canal.TrimEnd()).FirstOrDefault();
                        if (canal == null)
                        {
                            mensaje = "El campo Canal no es valido";
                            insert.logws(odt.ArOdt, "ERROR", mensaje);
                            return(mensaje);
                        }
                        //Fin
                    }

                    if (odt.TipoServicio.Normalize(NormalizationForm.FormD) == "INSTALACION DE BOARDING DIGITAL" && (odt.SubtipoServicio.Normalize(NormalizationForm.FormD) == "INSTALACION BD"))
                    {
                        if (odt.Canal == "")
                        {
                            mensaje = "El campo Canal no puede estar vacio";
                            insert.logws(odt.ArOdt, "ERROR", mensaje);
                            return(mensaje);
                        }
                        //Se agrega nueva validacion 03/03/2020
                        C_CANALES canal = contex_.C_CANALES.Where(x => x.DESC_CANAL == odt.Canal.TrimEnd()).FirstOrDefault();
                        if (canal == null)
                        {
                            mensaje = "El campo Canal no es valido";
                            insert.logws(odt.ArOdt, "ERROR", mensaje);
                            return(mensaje);
                        }
                        //Fin
                    }

                    /*Fin*/

                    /*                if (odt.ModeloTPV == "")
                     *              {
                     *                  mensaje = "El campo ModeloTPV no puede estar vacio";
                     *                  insert.logws(odt.ArOdt, "ERROR", mensaje);
                     *                  return mensaje;
                     *              }
                     */
                    if (odt.Carga == "")
                    {
                        mensaje = "El campo Carga no puede estar vacio";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (idservicio == 0)
                    {
                        mensaje = "El servicio ingresado no existe";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (idfalla == 0)
                    {
                        mensaje = "El subtipo de servicio ingresado no existe";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (idproveedor == 0)
                    {
                        mensaje = "El proveedor ingresado no existe";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }
                    if (idproducto == 0)
                    {
                        mensaje = "El producto ingresado no existe";
                        insert.logws(odt.ArOdt, "ERROR", mensaje);
                        return(mensaje);
                    }

                    if (idarunico.isarunico == 1)
                    {
                        var totalar = (from f in contex_.BD_AR where f.NO_AR == odt.ArOdt select f.ID_AR).Count();
                        if (totalar >= 1)
                        {
                            mensaje = "ODT Repetido";
                            insert.logws(odt.ArOdt, "ERROR", mensaje);
                            return(mensaje);
                        }
                        else
                        {
                            Updates    updates    = new Updates();
                            Procedures procedures = new Procedures();


                            var idcarga = insert.carga(odt);
                            int idar    = insert.ar(odt, idcarga, idservicio, idfalla, idproveedor, idsegmento, idproducto);
                            updates.carga(idcarga);
                            procedures.ingresarServicio(idcarga);
                            updates.arStatus(idar, 32);
                            updates.arStatusText(idar, "Interfaz");
                            insert.bitacoraAr(idar, 1, 32, "Solicitud de servicio esperando confirmacion.");

                            mensaje = "PREODT ASIGNADA " + odt.ArOdt;
                            val     = "EXITO";
                        }
                    }
                }
                else
                {
                    mensaje = "El campo FolioTelecarga no puede contener datos.";
                    insert.logws(odt.ArOdt, "ERROR", mensaje);
                    return(mensaje);
                }
            }
            catch (Exception ex)
            {
                mensaje = ex.StackTrace;
                val     = "ERROR";
            }
            Inserts inserts = new Inserts();

            inserts.logws(odt.ArOdt, val, mensaje);
            return(mensaje);
        }
Exemplo n.º 4
0
        public int ar(addODTRequest odt, int idcarga, int idservicio, int idfalla, int idproveedor, int?idsegmento, int idproducto)
        {
            var descProveedor  = (from a in contex_.C_PROVEEDORES_USUARIOS where a.ID_PROVEEDOR_USUARIO == idproveedor select a.DESC_PROVEEDOR_USUARIO).FirstOrDefault();
            var idconectividad = (from b in contex_.C_CONECTIVIDAD where b.DESC_CONECTIVIDAD == odt.Conectividad select b.ID_CONECTIVIDAD).FirstOrDefault();

            string[] tipoabArray  = { "A", "b", "a", "B" };
            int?     idtipoEquipo = null;

            //DateTime FECHA_INICIO = new DateTime();
            if (tipoabArray.Any(odt.TipoAB.Contains))
            {
                idtipoEquipo = (from c in contex_.C_TIPO_A_B where c.DESC_TIPO_A_B == odt.TipoAB.ToUpper() || c.DESC_TIPO_A_B == odt.TipoAB.ToLower() select c.ID_TIPO_A_B).FirstOrDefault();
            }

            string[] list       = { "A. M.", "a. m.", "A.M.", "P. M.", "p. m.", "P.M." };
            var      fechaenvio = odt.FechaEnvio;

            foreach (string x in list)
            {
                if (fechaenvio.Contains(x))
                {
                    fechaenvio = fechaenvio.Replace(x, x.Replace(".", "").Replace(" ", ""));
                }
            }

            /*
             * try
             * {
             *  FECHA_INICIO = DateTime.ParseExact(fechaenvio, "dd/M/yyyy h:mm:ss tt", CultureInfo.InvariantCulture);
             * }
             * catch (Exception e)
             * {
             *  try
             *  {
             *      FECHA_INICIO = DateTime.ParseExact(fechaenvio, "M/dd/yyyy h:mm:ss tt", CultureInfo.InvariantCulture);
             *  }
             *  catch (Exception es)
             *  {
             *      FECHA_INICIO = DateTime.ParseExact(fechaenvio, "d/M/yyyy h:mm:ss tt", CultureInfo.InvariantCulture);
             *  }
             * }*/

            BD_AR newODT = new BD_AR();

            //newODT.FEC_INICIO = DateTime.Now;
            //newODT.ID_PROYECTO = odt.Proyecto;
            newODT.BITACORA            = odt.Descripcion;
            newODT.CAJA                = odt.IdCaja;
            newODT.CODIGO_INTERVENCION = odt.Sucursal;
            newODT.COLONIA             = odt.Colonia;
            newODT.ID_CONECTIVIDAD     = idconectividad;
            newODT.CORREO_EJECUTIVO    = odt.EmailEjecutivo;
            newODT.CP               = odt.Cp;
            newODT.DESC_EQUIPO      = odt.ModeloTPV;
            newODT.DESC_NEGOCIO     = odt.Comercio;
            newODT.DIRECCION        = odt.Domicilio;
            newODT.MOTIVO_COBRO     = odt.ReferenciaUbicacion;
            newODT.ESTADO           = odt.Estado;
            newODT.FALLA_ENCONTRADA = odt.Rfc;
            newODT.FEC_ALTA         = DateTime.Now;
            newODT.FEC_CONVENIO     = DateTime.Now;
            //newODT.FEC_INICIO = Convert.ToDateTime(fechaenvio);
            newODT.FEC_INICIO          = DateTime.Now;
            newODT.FOLIO_TELECARGA     = odt.FolioTelecarga;
            newODT.EQUIPO              = odt.FolioTelecarga == "" ? null : odt.FolioTelecarga;
            newODT.ID_CARGA            = idcarga;
            newODT.ID_CLIENTE          = 4;
            newODT.ID_FALLA            = idfalla;
            newODT.ID_PRODUCTO         = idproducto;
            newODT.ID_PROVEEDOR        = idproveedor;
            newODT.ID_SEGMENTO         = 476;
            newODT.ID_SERVICIO         = idservicio;
            newODT.ID_STATUS_AR        = 1;
            newODT.ID_TECNICO          = 67;
            newODT.ID_TIPO_EQUIPO      = 2;
            newODT.INSUMOS             = Convert.ToInt32(odt.NumRollos);
            newODT.IS_ACTUALIZACION    = 0;
            newODT.IS_FOLLOW_DISPATCH  = 0;
            newODT.IS_INGRESO_MANUAL   = 0;
            newODT.IS_INSTALACION      = 0;
            newODT.IS_PROGRAMADO       = 0;
            newODT.IS_RETIRO           = 0;
            newODT.IS_SUSTITUCION      = 0;
            newODT.MOTIVO_RETIPIFICADO = odt.EmailServ;
            newODT.NO_AFILIACION       = odt.Afiliacion;
            newODT.NO_AR = odt.ArOdt;
            newODT.NO_DIAS_LIBERACION        = 0;
            newODT.NOTAS_REMEDY              = odt.RazonSocial;
            newODT.OTORGANTE_SOPORTE_CLIENTE = odt.EjecutivoSucursal;
            newODT.OTORGANTE_VOBO_TERCEROS   = odt.EmailServ;
            newODT.POBLACION         = odt.Poblacion;
            newODT.SEGMENTO          = 476;
            newODT.SINTOMA           = odt.Observacion;
            newODT.STATUS            = "PENDIENTE";
            newODT.TELEFONO          = odt.Telefono;
            newODT.OTORGANTE_TAS     = odt.Contacto1;
            newODT.TELEFONO_COMERCIO = odt.Contacto2;
            newODT.TIPO_FALLA        = idfalla;
            newODT.TIPO_SERVICIO     = idservicio;
            if (odt.Canal != "")
            {
                newODT.FOLIO_TAS = odt.Canal;
            }
            if (odt.Proyecto.ToUpper().Equals("SI") || odt.Proyecto.ToUpper().Equals("SÍ"))
            {
                newODT.ID_PROYECTO = 1;
            }
            else
            {
                newODT.ID_PROYECTO = 0;
            }
            //se descomenta por uso

            /*
             * if (!odt.AfilAmex.Equals("") && !odt.IdAmex.Equals(""))
             * {
             *  newODT.TERMINAL_AMEX = 1;
             * }
             */
            //
            newODT.ID_TIPO_EQUIPO = idtipoEquipo;
            contex_.BD_AR.InsertOnSubmit(newODT);
            contex_.SubmitChanges();

            return(newODT.ID_AR);
        }