private void btnQuery_Click(object sender, RoutedEventArgs e) //btnQuery的Click事件,查询结果按钮 { if (lstPeople.SelectedItems.Count == 0) { MessageBox.Show("您未选中任何一人进行追踪!", "提示信息"); return; } string s = "<p>风险等级标准:低风险地区(绿色),密切接触者小于等于2人;中风险地区(黄色),密切接触者在3人到10人之间;高风险地区(红色),密切接触者大于10人。</p>"; Vector <Person> personArr = new Vector <Person>(); Global.personArr = personArr; Vector <Vector <Vector <TimeSpan> > > timeSpanArr = new Vector <Vector <Vector <TimeSpan> > >(); Global.timeSpanArr = timeSpanArr; for (int k = 0; k < lstPeople.SelectedItems.Count; k++) { Person p = (Person)(((ListBoxItem)lstPeople.SelectedItems[k]).DataContext); personArr.append(p); Vector <Vector <Strcture.TimeSpan> > arr = Global.processedStorage.query(p); /*DEBUG BEGIN * Vector<Vector<Strcture.TimeSpan>> arrBF = Global.processedStorage.queryBruteForce(p); * Debug.Assert(arr.size() == arrBF.size()); * for(int i = 0; i < arr.size(); i++) * { * Algorithm.quickSort(arr[i], new TimeSpanComparerByContent()); * Algorithm.quickSort(arrBF[i], new TimeSpanComparerByContent()); * for(int j = 0; j < arr[i].size(); j++) * { * if (!object.ReferenceEquals(arr[i][j], arrBF[i][j])) * Debug.Assert(false); * } * } * DEBUG END*/ timeSpanArr.append(arr); s += "<h1>查询“" + p.name + "”的密切接触者信息</h1><br>"; int totalNumber = 0; for (int i = 0; i < arr.size(); i++) { if (arr[i].size() == 0) { continue; } s += "在地点“<strong style=\"color: " + Site.getRiskLevel(arr[i].size()) + "\">" + Global.storage.Sites[arr[i][0].siteID].name + "</strong>”:<br>"; s += "本人停留时间:" + Global.storage.TimeSpans[p.timeSpanCollection[i]].startHour.ToString() + "小时至" + Global.storage.TimeSpans[p.timeSpanCollection[i]].endHour.ToString() + "小时<br>"; s += "密切接触者信息:<br>"; s += "<table class=\"table\"><thead><tr><th>姓名</th><th>停留时间</th><th>公司</th><th>地址</th><th>手机号</th></tr></thead><tbody>"; for (int j = 0; j < arr[i].size(); j++) { totalNumber++; s += "<tr>"; s += "<th>" + Global.storage.Persons[arr[i][j].personID].name + "</th>"; s += "<th>" + arr[i][j].startHour.ToString() + "小时至" + arr[i][j].endHour.ToString() + "小时</th>"; s += "<th>" + Global.storage.Persons[arr[i][j].personID].company + "</th>"; s += "<th>" + Global.storage.Persons[arr[i][j].personID].address + "</th>"; s += "<th>" + Global.storage.Persons[arr[i][j].personID].telephone + "</th>"; s += "</tr>"; } s += "</tbody></table>"; } if (totalNumber == 0) { s += "<strong>没有任何密切接触者!</strong>"; } } showDebugInformationInWeb(s); DisplayResultFrm = new frmDisplayResult(); DisplayResultFrm.Show(); }
private void btnViewResult_Click(object sender, RoutedEventArgs e) //btnViewResult的Click事件,展示查看结果窗体 { DisplayResultFrm = new frmDisplayResult(); DisplayResultFrm.Show(); }