예제 #1
0
        //Salidas

        /// <summary>
        /// Convertir clase SalidaViewModel a Salida.
        /// </summary>
        /// <param name="salidaViewModel"></param>
        /// <param name="isNew"></param>
        /// <returns></returns>
        public async Task <Salida> ToSalidaAsync(SalidaViewModel salidaViewModel, bool isNew)
        {
            DateTime _fecha         = DateTime.Now;
            DateTime _fechaCreacion = _fecha;

            if (!isNew)
            {
                var fechaCreacion = await _context.Salidas
                                    .Where(s => s.SalidaID == salidaViewModel.SalidaID)
                                    .Select(s => s.FechaCreacion).FirstOrDefaultAsync();

                if (fechaCreacion == null)
                {
                    fechaCreacion = _fecha;
                }
            }

            return(new Salida()
            {
                Aplicado = salidaViewModel.Aplicado,
                SalidaID = isNew ? Guid.NewGuid() : salidaViewModel.SalidaID,
                Fecha = salidaViewModel.Fecha,
                FechaActualizacion = _fecha,
                FechaCreacion = _fechaCreacion,
                Folio = salidaViewModel.Folio.Trim().ToUpper(),
                Observaciones = salidaViewModel.Observaciones == null ? "" : salidaViewModel.Observaciones.Trim().ToUpper(),
                SalidaTipoID = salidaViewModel.SalidaTipoID,
                SalidaTipo = await _getHelper.GetSalidaTipoByIdAsync((Guid)salidaViewModel.SalidaTipoID),
                UsuarioID = salidaViewModel.UsuarioID
            });
        }