コード例 #1
0
        public JsonResult UpdateTextQuestion(int id, string testDetail)
        {
            dynamic data        = JsonConvert.DeserializeObject(testDetail);
            var     testDetails = new TestDetail();

            try
            {
                foreach (var item in data)
                {
                    testDetails.Id                 = id;
                    testDetails.Question           = item.Question;
                    testDetails.AnswerA            = item.AnswerA;
                    testDetails.AnswerB            = item.AnswerB;
                    testDetails.AnswerC            = item.AnswerC;
                    testDetails.AnswerD            = item.AnswerD;
                    testDetails.CorrectAnswer      = string.Join(",", item.CorrectAnswer);
                    testDetails.TestChildSubjectId = item.TestChildSubjectId;
                    testDetails.Point              = 0.25;
                    testDetails.TypeOfQuestion     = Convert.ToInt32(item.TypeOfQuestion);
                    _db.Entry(testDetails).State   = System.Data.Entity.EntityState.Modified;
                    _db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                return(new JsonResult {
                    Data = false
                });
            }

            return(new JsonResult {
                Data = true
            });
        }
コード例 #2
0
        public async Task <IActionResult> EditTestDetail([FromRoute] int id, [FromBody] TestDetail testDetail)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != testDetail.AthleteId)
            {
                return(BadRequest());
            }

            _unitOfWork.testDetailsRepo.UpdateTest(testDetail);

            try
            {
                await _unitOfWork.Save();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!TestDetailExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
コード例 #3
0
        // GET: Test/Create
        public IActionResult Create(int Id)
        {
            TestDetail td = new TestDetail();

            td.TestId = Id;
            return(View(td));
        }
コード例 #4
0
        public JsonResult ImportTextQuestion(string testDetail)
        {
            dynamic data        = JsonConvert.DeserializeObject(testDetail);
            var     testDetails = new TestDetail();

            try
            {
                foreach (var item in data)
                {
                    testDetails.Question           = item.Question;
                    testDetails.AnswerA            = item.AnswerA;
                    testDetails.AnswerB            = item.AnswerB;
                    testDetails.AnswerC            = item.AnswerC;
                    testDetails.AnswerD            = item.AnswerD;
                    testDetails.CorrectAnswer      = string.Join(",", item.CorrectAnswer);
                    testDetails.TestChildSubjectId = item.TestChildSubjectId;
                    testDetails.Point          = 0.25;
                    testDetails.TypeOfQuestion = Convert.ToInt32(item.TypeOfQuestion);
                    _db.TestDetails.Add(testDetails);
                    _db.SaveChanges();
                }
            }
            catch (Exception)
            {
                return(new JsonResult {
                    Data = false
                });
            }

            return(new JsonResult {
                Data = true
            });
        }
コード例 #5
0
        void AddMaster(Session session)
        {
            for (var i = 1; i <= MaxRecordCount; ++i)
            {
                var tmpTestMaster = new TestMaster(session);
                tmpTestMaster.Val = $"Master# {i}";
                for (var j = 1; j <= MaxRecordCount; ++j)
                {
                    var tmpTestDetail = new TestDetail(session);
                    tmpTestDetail.Val    = $"Detail# [{i}.{j}]";
                    tmpTestDetail.Master = tmpTestMaster;
                    tmpTestDetail.Save();
                }
                tmpTestMaster.Save();
            }

            XPBaseCollection dataSource;

            if ((dataSource = gridControlMaster.DataSource as XPBaseCollection) != null)
            {
                dataSource.Reload();
            }
            if ((dataSource = gridControlDetail.DataSource as XPBaseCollection) != null)
            {
                dataSource.Reload();
            }
        }
コード例 #6
0
        public IHttpActionResult PutTestDetail(int id, TestDetail testDetail)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != testDetail.ID)
            {
                return(BadRequest());
            }

            db.Entry(testDetail).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!TestDetailExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
コード例 #7
0
        public async Task <int> EditTestDetail()
        {
            if (ModelState.IsValid)
            {
                string test = Request.Form.Where(x => x.Key == "tests").FirstOrDefault().Value;

                var root = JsonConvert.DeserializeObject <Models.Test>(test);

                TestDetail newTestDetail = await _TeacherTestRepository.GetQuestionById(Convert.ToInt32(TempData["Question_Id"] ?? 1));

                int result = 0;

                if (root.TestTypeId == "3")
                {
                    dynamic file;

                    string uniqueFileName = string.Empty;

                    if (Request.Form.Files.Count > 0)
                    {
                        file = Request.Form.Files[0];
                        if (newTestDetail.Option_1 != null)
                        {
                            string filePath = Path.Combine(_hostingEnvironment.WebRootPath, "Tests", newTestDetail.Option_1);
                            System.IO.File.Delete(filePath);
                        }
                        uniqueFileName         = Utility.ProcessUploadedFile(file, _hostingEnvironment, "Tests");
                        newTestDetail.Option_1 = uniqueFileName;
                    }
                }
                else
                {
                    newTestDetail.Option_1 = root.Option1;
                }

                newTestDetail.Question_Name  = root.Question;
                newTestDetail.Option_2       = root.Option2;
                newTestDetail.Option_3       = root.Option3;
                newTestDetail.Option_4       = root.Option4;
                newTestDetail.Correct_Answer = root.CorrectAns;
                newTestDetail.Test_Type_Id   = Convert.ToInt32(root.TestTypeId);
                newTestDetail.Question_Marks = root.Marks;

                result = await _TeacherTestRepository.UpdateTeacherTestDetail(newTestDetail);

                if (result > 0)
                {
                    TempData["Success"] = "Question Updated Successfully";
                }
                else
                {
                    TempData["Error"] = "Updating Question Failed";
                }

                return(1);
            }

            return(-1);
            //return View();
        }
コード例 #8
0
        public ActionResult Save(TestDetail test)
        {
            bool status = false;

            if (ModelState.IsValid)
            {
                using (CovidDbEntities dc = new CovidDbEntities())
                {
                    if (test.TestDetailsId > 0)
                    {
                        //Edit
                        var v = dc.TestDetails.Where(a => a.TestDetailsId == test.TestDetailsId).FirstOrDefault();
                        if (v != null)
                        {
                            v.TestName     = test.TestName;
                            v.TestDate     = test.TestDate;
                            v.TestResult   = test.TestResult;
                            v.TotalPrice   = test.TotalPrice;
                            v.DoctorRemark = test.DoctorRemark;
                        }
                    }
                    else
                    {
                        //Save
                        dc.TestDetails.Add(test);
                    }
                    dc.SaveChanges();
                    status = true;
                }
            }
            return(new JsonResult {
                Data = new { Status = status }
            });
        }
コード例 #9
0
        private TestDetail CreateTestDetail(TestMaster master, int val)
        {
            var detail = new TestDetail(unitOfWork);

            detail.Master = master;
            detail.Val    = val.ToString();
            return(detail);
        }
コード例 #10
0
        // GET: Test/Details/5
        public IActionResult Details(int Id)
        {
            TestDetail td = new TestDetail();

            td.TestId = Id;
            var testDetail = _TestListRpository.GetTestDetails(Id);

            return(View(testDetail));
        }
コード例 #11
0
        public async Task EditAtheleteInTestAsync(TestDetail testDetail)
        {
            var testDetailToEdit = await _dbContext.TestDetails.Where(x => x.Id == testDetail.Id).SingleAsync();

            testDetailToEdit.AtheleteId = testDetail.AtheleteId;
            testDetailToEdit.Distance   = testDetail.Distance;

            await _dbContext.SaveChangesAsync();
        }
コード例 #12
0
        private void dataViewTC_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (dataViewTC.SelectedRows.Count > 0)
            {
                int       testID = Convert.ToInt32(dataViewTC.SelectedRows[0].Cells[0].Value);
                DataTable dtTD   = TestDetail.GetListTestDetail(testID);

                dataViewTCDetail.DataSource = dtTD.DefaultView;
            }
        }
コード例 #13
0
 public void PutDetail <TDetail>(string testKey, TestDetail type, TDetail detail)
 {
     using (var fs = File.Create(baseDir + "/results/" + type.ToString() + ".result"))
     {
         using (var writer = new StreamWriter(fs))
         {
             writer.Write(new JsonSerializer <TDetail>().SerializeToString(detail));
         }
     }
 }
コード例 #14
0
        public IHttpActionResult GetTestDetail(int id)
        {
            TestDetail testDetail = db.TestDetails.Find(id);

            if (testDetail == null)
            {
                return(NotFound());
            }

            return(Ok(testDetail));
        }
コード例 #15
0
        public IHttpActionResult PostTestDetail(TestDetail testDetail)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.TestDetails.Add(testDetail);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = testDetail.ID }, testDetail));
        }
コード例 #16
0
        public async Task <IActionResult> Create([Bind("AthleteName,Distance,Rating,TestId")] TestDetail testDetail)
        {
            if (ModelState.IsValid)
            {
                await _TestListRpository.Add(testDetail);

                await _UnitOfWork.Commit();

                return(Redirect("https://localhost:44340/TestLists/Details/" + testDetail.TestId));
            }
            return(View(testDetail));
        }
コード例 #17
0
        public async Task <IActionResult> Create([Bind("SlNo,DistanceOrTime,TestHeaderId,Athlete")] TestDetail testDetail)
        {
            if (ModelState.IsValid)
            {
                _context.Add(testDetail);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["TestHeaderId"] = new SelectList(_context.TestHeaders.Select(x => new { x.TestHeaderId, TestName = $"{x.TestType} - {x.TestDate.ToString("yyyy-MMM-dd")}" }), "TestHeaderId", "TestName", testDetail.TestHeaderId);
            ViewData["userID"]       = new SelectList(_context.Users, "Id", "UserName", testDetail.Athlete);
            return(View(testDetail));
        }
コード例 #18
0
        public async Task <IActionResult> CreateTestDetail([FromBody] TestDetail testDetail, int id)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            testDetail.TestId = id;
            await _unitOfWork.testDetailsRepo.InsertTest(testDetail);

            await _unitOfWork.Save();

            return(Ok(testDetail));
            //return CreatedAtAction("GetAllTestDetail", new { id = testDetail.TestId });
        }
コード例 #19
0
        public IHttpActionResult DeleteTestDetail(int id)
        {
            TestDetail testDetail = db.TestDetails.Find(id);

            if (testDetail == null)
            {
                return(NotFound());
            }

            db.TestDetails.Remove(testDetail);
            db.SaveChanges();

            return(Ok(testDetail));
        }
コード例 #20
0
        public JsonResult UploadWordFile(string file)
        {
            var    app        = new Application();
            var    testDetail = new TestDetail();
            object readOnly   = false;
            object isVisible  = true;
            object filename   = file;
            object missing    = System.Reflection.Missing.Value;

            try

            {
                var doc = app.Documents.Open(ref filename, ref missing, ref readOnly, ref missing, ref missing,
                                             ref missing,
                                             ref missing, ref missing, ref missing, ref missing, ref missing, ref isVisible);
                var stringData = doc.Content.Text;
                var arrayData  = stringData.Split('\r');
                for (var i = 0; i < arrayData.Length; i++)
                {
                    if (arrayData[i] == string.Empty)
                    {
                        continue;
                    }
                    testDetail.Question = arrayData[i];
                    i++;
                    testDetail.AnswerA = arrayData[i];
                    i++;
                    testDetail.AnswerB = arrayData[i];
                    i++;
                    testDetail.AnswerC = arrayData[i];
                    i++;
                    testDetail.AnswerD = arrayData[i];
                    i++;
                    testDetail.CorrectAnswer = arrayData[i];
                    testDetail.Point         = 0.25;
                    _db.TestDetails.Add(testDetail);
                    _db.SaveChanges();
                    i++;
                }
            }
            catch (Exception ex)
            {
                return(new JsonResult {
                    Data = false
                });
            }
            return(new JsonResult {
                Data = true
            });
        }
コード例 #21
0
 public ActionResult SaveTest(TestDetail model)
 {
     try
     {
         if (!ModelState.IsValid)
         {
             return(View("Test"));
         }
     }
     catch (Exception)
     {
         throw;
     }
     return(View("Test"));
 }
コード例 #22
0
        public async Task <int> AddTeacherTestDetail(TestDetail objTestDetail)
        {
            try
            {
                await _lmsDbContext.TestDetail.AddAsync(objTestDetail);

                await _lmsDbContext.SaveChangesAsync();

                return(1);
            }
            catch (Exception ex)
            {
                return(-1);
            }
        }
コード例 #23
0
        public async Task <IActionResult> EditAtheleteToTest([FromBody] TestDetail testDetail)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            if (!await _testRepository.IsTestDetailExistAsync(testDetail.Id))
            {
                return(NotFound());
            }

            await _testRepository.EditAtheleteInTestAsync(testDetail);

            return(Ok(testDetail));
        }
コード例 #24
0
        public async Task Add_Valid_TestDetail_Id()
        {
            TestDetail testDetail = new TestDetail()
            {
                AthleteName = "Randy Rondon",
                Distance    = 4000,
                Rating      = "Very Good",
                TestId      = 2
            };

            TestDetail savedTestDetail = await repository.Add(testDetail);

            await unitOfWork.Commit();

            Assert.Equal(true, IsValidId(savedTestDetail.Id));
            Assert.NotNull(savedTestDetail.Id);
        }
コード例 #25
0
 private void refreshDataViewTestDetail()
 {
     if (dataViewTC.SelectedRows.Count > 0)
     {
         try
         {
             // Get Test's datatable
             int       testID          = Convert.ToInt32(dataViewTC.Rows[0].Cells[0].Value);
             DataTable testDetailTable = TestDetail.GetListTestDetail(testID);
             // Set data source to dataview for searching
             dataViewTCDetail.DataSource = testDetailTable.DefaultView;
         }
         catch
         {
             MessageBox.Show("Lỗi dữ liệu", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
 }
コード例 #26
0
        public void When_Test_Is_Ignored_Then_Parser_Can_Parse_To_TestDetail()
        {
            var testResultMessage = "! Test_That_Ignore [< 1ms]";

            var parser = new TestDetailParser();

            var list = parser.CreateTestDetails(testResultMessage);

            var expectedResult = new TestDetail
            {
                TestName      = "Test_That_Ignore",
                TestStatus    = TestStatus.Ignored,
                TimeTakenInMs = 1
            };

            list.Should().NotBeNullOrEmpty();
            list[0].Should().BeEquivalentTo(expectedResult);
        }
コード例 #27
0
        public void When_Test_Passed_And_Took_Seconds_To_Execute_Then_Parser_Can_Parse_To_TestDetail()
        {
            var testResultMessage = "V Test_That_Passes_3 [2s 38ms]";

            var parser = new TestDetailParser();

            var list = parser.CreateTestDetails(testResultMessage);

            var expectedResult = new TestDetail
            {
                TestName      = "Test_That_Passes_3",
                TestStatus    = TestStatus.Passed,
                TimeTakenInMs = 2038
            };

            list.Should().NotBeNullOrEmpty();
            list[0].Should().BeEquivalentTo(expectedResult);
        }
コード例 #28
0
        private void buttonInsert_Click(object sender, EventArgs e)
        {
            int selectedIndex = comboBoxTestType.SelectedIndex;

            if (CheckTestType(listTestType[selectedIndex].TestTypeID))
            {
                MessageBox.Show("Loại xét nghiệm này đã có trong phiếu", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                TestDetail newTestDetail = new TestDetail();
                newTestDetail.TCID       = 0;
                newTestDetail.TestTypeID = listTestType[selectedIndex].TestTypeID;
                newTestDetail.Result     = "Chưa xét nghiệm";
                listTD.Add(newTestDetail);
                listSelectedTestType.Items.Add(listTestType[selectedIndex].TestName);
                listSelectedTestType.SelectedIndex = listSelectedTestType.Items.Count - 1;
            }
        }
コード例 #29
0
        //Add test
        public async Task <Test> Add(TestRequest testRequest)
        {
            var test = new Test
            {
                TestName      = testRequest.TestName,
                DateCreated   = DateTime.Now,
                State         = true,
                CourseId      = testRequest.CourseId,
                Createsby     = testRequest.Createsby,
                DateTest      = testRequest.DateTest,
                Time          = testRequest.Time,
                TotalQuestion = testRequest.TotalQuestion
            };

            var newTest = await _baseRepository.Add(test);

            var list = new List <TestDetail>();

            var    listIdQuestion = (await _questionService.GetAll()).Select(x => x.QuestionId).ToList();
            var    listTestId     = new List <int>();
            Random r = new Random();

            for (int i = 0; i < testRequest.TotalQuestion; i++)
            {
                int idTemp = listIdQuestion[r.Next(0, listIdQuestion.Count() - 1)];
                listTestId.Add(idTemp);
                listIdQuestion.Remove(idTemp);
            }
            for (int i = 0; i < listTestId.Count(); i++)
            {
                var testDetail = new TestDetail
                {
                    TestId     = newTest.TestId,
                    QuestionId = listTestId[i]
                };
                list.Add(testDetail);
            }

            await _testDetailService.AddRange(list);

            return(newTest);
        }
コード例 #30
0
        public JsonResult UploadTextFile(string file)
        {
            var testDetail = new TestDetail();

            try
            {
                var data = File.ReadAllLines(file);
                for (var i = 0; i < data.Length; i++)
                {
                    if (data[i].Trim() == string.Empty)
                    {
                        continue;
                    }
                    testDetail.Question = data[i];
                    i++;
                    testDetail.AnswerA = data[i];
                    i++;
                    testDetail.AnswerB = data[i];
                    i++;
                    testDetail.AnswerC = data[i];
                    i++;
                    testDetail.AnswerD = data[i];
                    i++;
                    testDetail.CorrectAnswer = data[i];
                    testDetail.Point         = 0.25;
                    _db.TestDetails.Add(testDetail);
                    _db.SaveChanges();
                    i++;
                }
            }
            catch (Exception exception)
            {
                return(new JsonResult {
                    Data = false
                });
            }

            return(new JsonResult {
                Data = true
            });
        }