public ActionResult PointCalculate(int langlryExpTableId) { LangleyExperimentTable langlryExpTable = dbDrive.GetLangleyExperimentTable(langlryExpTableId); List <LangleyDataTable> ldts = dbDrive.GetAllLangleyDataTable(langlryExpTable.let_Id); ldts.RemoveRange(ldts.Count - 1, 1); var xOrVArray = LangleyPublic.XAndVArrays(ldts); var lr = LangleyPublic.SelectState(langlryExpTable); LangleyDataTable langleyDataTable = LangleyPublic.UpdateLangleyDataTable(langlryExpTable, lr, xOrVArray.xArray, xOrVArray.vArray, ldts[ldts.Count - 1]); langleyDataTable.ldt_Mean = double.Parse(langleyDataTable.ldt_Mean.ToString("f13")); string[] value = { lr.Precs(langleyDataTable.ldt_Mean, langleyDataTable.ldt_StandardDeviation)[0].ToString("f6"), lr.Precs(langleyDataTable.ldt_Mean, langleyDataTable.ldt_StandardDeviation)[1].ToString("f6"), langleyDataTable.ldt_Mean.ToString("f6"), langleyDataTable.ldt_StandardDeviation.ToString("f6"), lr.GetConversionNumber(xOrVArray.vArray), (xOrVArray.xArray.Length).ToString(), lr.GetNM(xOrVArray.xArray, xOrVArray.vArray) }; dbDrive.Update(langleyDataTable); return(Json(value)); }
public ActionResult InsertData(string response, string sq, int langlryExpTableId) { LangleyExperimentTable langlryExpTable = dbDrive.GetLangleyExperimentTable(langlryExpTableId); List <LangleyDataTable> langleyDataTables = dbDrive.GetAllLangleyDataTable(langlryExpTable.let_Id); var xOrVArray = LangleyPublic.XAndVArrays(langleyDataTables); if (sq != null && sq != "") { xOrVArray.xArray[langleyDataTables.Count - 1] = double.Parse(sq); } if (response != null && response != "") { xOrVArray.vArray[langleyDataTables.Count - 1] = int.Parse(response); } else { xOrVArray.vArray[langleyDataTables.Count - 1] = 0; } var lr = LangleyPublic.SelectState(langlryExpTable); dbDrive.Update(LangleyPublic.UpdateLangleyDataTable(langlryExpTable, lr, xOrVArray.xArray, xOrVArray.vArray, langleyDataTables[langleyDataTables.Count - 1])); //增加一条新数据 double StimulusQuantity = lr.CalculateStimulusQuantity(xOrVArray.xArray, xOrVArray.vArray, langlryExpTable.let_StimulusQuantityCeiling, langlryExpTable.let_StimulusQuantityFloor, langlryExpTable.let_PrecisionInstruments); var isTrue = dbDrive.Insert(LangleyPublic.LangleyDataTables(langlryExpTableId, dbDrive, double.Parse(StimulusQuantity.ToString("f6")))); var xOrVArray2 = LangleyPublic.XAndVArrays(dbDrive.GetAllLangleyDataTable(langlryExpTable.let_Id)); xOrVArray2.vArray = LangleyPublic.IsFlipTheResponse(langlryExpTable, xOrVArray2.vArray); if (langlryExpTable.let_FlipTheResponse == 1) { for (int i = 0; i < xOrVArray2.vArray.Length - 1; i++) { if (xOrVArray2.vArray[i] == 0) { xOrVArray2.vArray[i] = 1; } else { xOrVArray2.vArray[i] = 0; } } } string[] value = { isTrue.ToString(), (xOrVArray2.xArray.Length - 1).ToString(), lr.GetNM(xOrVArray2.xArray, xOrVArray2.vArray), StimulusQuantity.ToString() }; return(Json(value)); }
//修改分析参数 public JsonResult UpdateParameter() { var str = new StreamReader(Request.InputStream); var stream = str.ReadToEnd(); JavaScriptSerializer js = new JavaScriptSerializer(); LangleyExperimentTable let = dbDrive.GetLangleyExperimentTable(js.Deserialize <LangleyExperimentTable>(stream).let_Id); let.let_DistributionState = js.Deserialize <LangleyExperimentTable>(stream).let_DistributionState; let.let_Correction = js.Deserialize <LangleyExperimentTable>(stream).let_Correction; dbDrive.Update(let); List <LangleyDataTable> ldts = dbDrive.GetAllLangleyDataTable(let.let_Id); ldts.RemoveRange(ldts.Count - 1, 1); var xOrVArray = LangleyPublic.XAndVArrays(ldts); var lr = LangleyPublic.SelectState(let); LangleyDataTable langleyDataTable = new LangleyDataTable(); bool isTure = false; for (int i = 1; i <= ldts.Count; i++) { double[] xArray = new double[i]; int[] vArray = new int[i]; for (int j = 0; j < i; j++) { xArray[j] = xOrVArray.xArray[j]; vArray[j] = xOrVArray.vArray[j]; } langleyDataTable = LangleyPublic.UpdateLangleyDataTable(let, lr, xArray, vArray, ldts[i - 1]); isTure = dbDrive.Update(langleyDataTable); if (isTure == false) { break; } } string[] value = { isTure.ToString(), lr.Precs(langleyDataTable.ldt_Mean, langleyDataTable.ldt_StandardDeviation)[0].ToString("f6"), lr.Precs(langleyDataTable.ldt_Mean, langleyDataTable.ldt_StandardDeviation)[1].ToString("f6"), langleyDataTable.ldt_Mean.ToString("f6"), langleyDataTable.ldt_StandardDeviation.ToString("f6") }; return(Json(value)); }