예제 #1
0
        public ActionResult <IEnumerable <TodoItemResponse> > PostTodoItems()
        {
            List <TodoItemResponse> response = new List <TodoItemResponse>();

            _context.TodoItems.ToList().ForEach(
                m => {
                ScaleParams scalParam             = _context.ScaleParams.FirstOrDefault(s => s.TaskId == m.TaskId);
                ScaleParamsResponse rspScaleParam = new ScaleParamsResponse {
                    TaskId       = scalParam.TaskId,
                    ScaleParamId = scalParam.ScaleParamId,
                    ScaleBitrate = scalParam.ScaleBitrate,
                    ScaleName    = scalParam.ScaleName,
                    ScalePort    = scalParam.ScalePort
                };
                List <ScaleValueResponse> rspScaleValues = new List <ScaleValueResponse>();
                _context.ScaleValues.Where(v => v.TaskId == m.TaskId).ToList().ForEach(v => rspScaleValues.Add(
                                                                                           new ScaleValueResponse()
                {
                    TaskId       = v.TaskId,
                    Name         = v.Name,
                    DateTime     = v.DateTime,
                    ScaleValueId = v.ScaleValueId,
                    Value        = v.Value
                }
                                                                                           ));
                response.Add(new TodoItemResponse
                {
                    TokenId        = m.TokenId,
                    TaskId         = m.TaskId,
                    ScaleType      = m.ScaleType,
                    ScaleName      = m.ScaleName,
                    ScaleCount     = m.ScaleCount,
                    IsComplete     = m.IsComplete,
                    ScaleFrequency = m.ScaleFrequency,
                    ScaleParams    = rspScaleParam,
                    ScaleValues    = rspScaleValues
                });
            }
                );

            return(response);
        }
예제 #2
0
        public ActionResult <TodoItemResponse> PostTodoItem(TodoItemRequest request)
        {
            ScaleParams         scaleParams         = _context.ScaleParams.FirstOrDefault(p => p.TaskId == request.TaskId);
            ScaleParamsResponse scaleParamsResponse = new ScaleParamsResponse();

            scaleParamsResponse.TaskId       = scaleParams.TaskId;
            scaleParamsResponse.ScalePort    = scaleParams.ScalePort;
            scaleParamsResponse.ScaleParamId = scaleParams.ScaleParamId;
            scaleParamsResponse.ScaleName    = scaleParams.ScaleName;
            scaleParamsResponse.ScaleBitrate = scaleParams.ScaleBitrate;

            List <ScaleValue>         scaleValues         = _context.ScaleValues.Where(v => v.TaskId == request.TaskId).ToList();
            List <ScaleValueResponse> scaleValueResponses = new List <ScaleValueResponse>();

            scaleValues.ForEach(v => {
                scaleValueResponses.Add(
                    new ScaleValueResponse()
                {
                    DateTime     = v.DateTime,
                    Name         = v.Name,
                    ScaleValueId = v.ScaleValueId,
                    TaskId       = v.TaskId,
                    Value        = v.Value
                }
                    );
            });

            TodoItem         todoitem = _context.TodoItems.Find(request.TaskId);
            TodoItemResponse response = new TodoItemResponse();

            response.TokenId        = todoitem.TokenId;
            response.TaskId         = todoitem.TaskId;
            response.IsComplete     = todoitem.IsComplete;
            response.ScaleCount     = todoitem.ScaleCount;
            response.ScaleFrequency = todoitem.ScaleFrequency;
            response.ScaleName      = todoitem.ScaleName;
            response.ScaleType      = todoitem.ScaleType;
            response.ScaleParams    = scaleParamsResponse;
            response.ScaleValues    = scaleValueResponses;
            return(response);
        }