public IHttpActionResult GetRegistroControlPorConciliar([FromUri] PagingRegistroControlModel pagingparametermodel)
        {
            var estatusList      = catalagoService.GetAll(c => c.CA_TABLA == "sax_estatus_carga", null, c => c.SAX_CATALOGO_DETALLE).FirstOrDefault();
            var ltsTipoOperacion = catalagoService.GetAll(c => c.CA_TABLA == "sax_tipo_operacion", null, c => c.SAX_CATALOGO_DETALLE).FirstOrDefault();
            int porConciliar     = Convert.ToInt16(BusinessEnumerations.EstatusCarga.POR_CONCILIAR);
            int manual           = Convert.ToInt16(BusinessEnumerations.TipoOperacion.CAPTURA_MANUAL);
            var userId           = User.Identity.GetUserId();
            var userArea         = usuarioAreaService.GetSingle(d => d.US_ID_USUARIO == userId);
            var userAreacod      = areaOperativaService.GetSingle(d => d.CA_ID_AREA == userArea.CA_ID_AREA);
            var source           = service.Query(c => c.RC_ESTATUS_LOTE == porConciliar &&
                                                 (pagingparametermodel.lote == null? c.RC_COD_PARTIDA == c.RC_COD_PARTIDA: c.RC_COD_PARTIDA == (pagingparametermodel.lote.Trim())) &&
                                                 (pagingparametermodel.idCapturador == null ? c.RC_USUARIO_CREACION == c.RC_USUARIO_CREACION : c.RC_USUARIO_CREACION == pagingparametermodel.idCapturador)).OrderBy(c => c.RC_REGISTRO_CONTROL);
            int count        = source.Count();
            int CurrentPage  = pagingparametermodel.pageNumber;
            int PageSize     = pagingparametermodel.pageSize;
            int TotalCount   = count;
            int TotalPages   = (int)Math.Ceiling(count / (double)PageSize);
            var items        = source.Skip((CurrentPage - 1) * PageSize).Take(PageSize).ToList();
            var previousPage = CurrentPage > 1 ? "Yes" : "No";
            var nextPage     = CurrentPage < TotalPages ? "Yes" : "No";
            var listItem     = items.Select(x => new
            {
                RC_REGISTRO_CONTROL = x.RC_REGISTRO_CONTROL,
                RC_COD_OPERACION    = GetNameTipoOperacion(x.RC_COD_OPERACION, ref ltsTipoOperacion),
                RC_COD_PARTIDA      = x.RC_COD_PARTIDA,
                RC_ARCHIVO          = x.RC_ARCHIVO,
                RC_TOTAL_REGISTRO   = x.RC_TOTAL_REGISTRO,
                RC_TOTAL_DEBITO     = x.RC_TOTAL_DEBITO,
                RC_TOTAL_CREDITO    = x.RC_TOTAL_CREDITO,
                RC_TOTAL            = x.RC_TOTAL,
                COD_ESTATUS_LOTE    = x.RC_ESTATUS_LOTE,
                RC_ESTATUS_LOTE     = GetStatusRegistroControl(x.RC_ESTATUS_LOTE, estatusList),
                RC_FECHA_CREACION   = x.RC_FECHA_CREACION != null ? x.RC_FECHA_CREACION.ToString("d/M/yyyy") : string.Empty,
                RC_HORA_CREACION    = x.RC_FECHA_CREACION != null ? x.RC_FECHA_CREACION.ToString("hh:mm:tt") : string.Empty,
                RC_COD_USUARIO      = UserName(x.RC_USUARIO_MOD)
            });
            var paginationMetadata = new
            {
                totalCount  = TotalCount,
                pageSize    = PageSize,
                currentPage = CurrentPage,
                totalPages  = TotalPages,
                previousPage,
                nextPage,
                data = listItem
            };

            return(Ok(paginationMetadata));
        }
        public async Task <IHttpActionResult> listarComprobante()
        {
            try
            {
                IdentityUser user = await UserManager.FindByIdAsync(User.Identity.GetUserId());

                var userArea = usuarioAreaService.GetSingle(d => d.US_ID_USUARIO == user.Id);
                //Cuando se agregue el campo de area en la tabal de comprobante se cambiará el campo TC_ID_COMPROBANTE
                //por el nuevo campos de área en el comprobante.
                var model = service.GetAll(c => c.SAX_AREA_OPERATIVA.CA_ID_AREA == userArea.SAX_AREA_OPERATIVA.CA_ID_AREA);

                if (model.Count > 0)
                {
                    var result = model.Select(c => new
                    {
                        idComprobante  = c.TC_ID_COMPROBANTE,
                        codComprobante = c.TC_COD_OPERACION
                    });
                    return(Ok(result));
                }
                else
                {
                    return(NotFound());
                }
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
Пример #3
0
        public IHttpActionResult Put([FromBody] AreaOperativaModel model)
        {
            try
            {
                if (model.CA_ESTATUS == 2)
                {
                    UsuarioAreaModel listUsuarioArea = usuarioAreaService.GetSingle(u => u.CA_ID_AREA == model.CA_ID_AREA && u.UA_ESTATUS == 1);
                    if (listUsuarioArea != null)
                    {
                        return(BadRequest("No se puede eliminar un area operativa con supervisores asociados"));
                    }

                    model.CA_FECHA_MOD   = DateTime.Now;
                    model.CA_USUARIO_MOD = User.Identity.GetUserId();
                    areaOperativaService.Update(model);
                    return(Ok());
                }
                else
                {
                    AreaOperativaModel existAreaOperativa = null;
                    var isChangeCodeArea = areaOperativaService.GetSingle(a => a.CA_COD_AREA == model.CA_COD_AREA && a.CA_ID_AREA == model.CA_ID_AREA);
                    if (isChangeCodeArea == null)
                    {
                        existAreaOperativa = areaOperativaService.GetSingle(a => a.CA_COD_AREA == model.CA_COD_AREA);
                    }
                    if (existAreaOperativa == null)
                    {
                        var areaOperativaUpdate = areaOperativaService.GetSingle(a => a.CA_ID_AREA == model.CA_ID_AREA);
                        areaOperativaUpdate.CA_FECHA_MOD   = DateTime.Now;
                        areaOperativaUpdate.CA_USUARIO_MOD = User.Identity.GetUserId();
                        areaOperativaUpdate.CA_COD_AREA    = model.CA_COD_AREA;
                        areaOperativaUpdate.CA_NOMBRE      = model.CA_NOMBRE;
                        areaOperativaUpdate.CA_ESTATUS     = model.CA_ESTATUS;
                        areaOperativaService.Update(areaOperativaUpdate);
                        return(Ok());
                    }
                    else
                    {
                        return(BadRequest("El código ingresado ya está siendo utilizado por otra área operativa."));
                    }
                }
            }catch (Exception ex) {
                return(BadRequest("Error al actualizar el registro " + ex.Message));
            }
        }