/// <summary> /// 数据绑定方法 /// </summary> /// <returns></returns> private void setDataListValue(DataLineA.UserControl1 ctl, Maticsoft.Model.evidence evi) //封装数据绑定(绑定一条)方法 { //初始化文本数据 ctl.Controls["label1"].Text = evi.addTime; ctl.Controls["label2"].Text = evi.evAdmin; ctl.Controls["label3"].Text = evi.evSize + "KB"; switch (evi.evType) { case 1: ctl.Controls["label4"].Text = "电子邮件"; break; case 2: ctl.Controls["label4"].Text = "综合文档"; break; case 3: ctl.Controls["label4"].Text = "电子话单"; break; case 4: ctl.Controls["label4"].Text = "手机取证"; break; case 5: ctl.Controls["label4"].Text = "黑客数据"; break; case 6: ctl.Controls["label4"].Text = "图片资料"; break; default: ctl.Controls["label4"].Text = "未知类型"; break; } if (evi.evName.Length > 14) { evi.evName = evi.evName.Substring(0, 14) + ".."; } ctl.Controls["label5"].Text = evi.evName; ctl.Controls["label6"].Text = evi.uploadNum; ctl.Controls["label_localpath"].Text = evi.localPath; ctl.Controls["label_id"].Text = evi.id.ToString(); aaaa.Add(evi.id.ToString()); bbbb.Add(ctl); //控件可见 ctl.Visible = true; ctl.resetDeleteButton(); }
/// <summary> /// 更新数据库finished字段 /// </summary> /// <returns></returns> public void uploadDatabaseFinished() { string serchQuery = "finished = '' or finished IS NULL"; Maticsoft.BLL.evidence evidence_old = new Maticsoft.BLL.evidence(); DataSet ds = evidence_old.GetList(serchQuery); Maticsoft.Model.evidence evidence_new = new Maticsoft.Model.evidence(); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { evidence_new.id = Convert.ToInt32(ds.Tables[0].Rows[i]["id"].ToString()); evidence_new.evName = ds.Tables[0].Rows[i]["evName"].ToString(); evidence_new.caseID = Convert.ToInt32(ds.Tables[0].Rows[i]["caseID"].ToString()); evidence_new.evType = Convert.ToInt32(ds.Tables[0].Rows[i]["evType"].ToString()); evidence_new.comment = ds.Tables[0].Rows[i]["comment"].ToString(); evidence_new.evAdmin = ds.Tables[0].Rows[i]["evAdmin"].ToString(); evidence_new.dataTypes = Convert.ToInt32(ds.Tables[0].Rows[i]["dataTypes"].ToString()); evidence_new.finished = "-1"; evidence_new.localPath = ds.Tables[0].Rows[0]["localPath"].ToString(); evidence_old.Update(evidence_new); } }
/// <summary> /// 得到一个对象实体 /// </summary> public Maticsoft.Model.evidence GetModel(int id) { StringBuilder strSql = new StringBuilder(); strSql.Append("select id,caseID,spersonID,sunitID,evName,comment,evAdmin,dirPath,evSize,emlCount,docCount,pdfCount,zipCount,rarCount,percent,finished,status,mailBox,dealinfo,addTime,currFlag,finishTime,uptype,isdel,startSolrTime,evType,indexFlag,UUID,dataTypes,uploadNum,successNum,errorNum,localPath from evidence "); strSql.Append(" where id=@id"); MySqlParameter[] parameters = { new MySqlParameter("@id", MySqlDbType.Int32) }; parameters[0].Value = id; Maticsoft.Model.evidence model = new Maticsoft.Model.evidence(); DataSet ds = DbHelperMySQL.Query(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { return(DataRowToModel(ds.Tables[0].Rows[0])); } else { return(null); } }
/// <summary> /// 根据页数设置数据(翻页按钮专用) /// </summary> /// <returns></returns> private void setDataListByPage(int page) { //清空控件list aaaa.Clear(); bbbb.Clear(); if (!initDataList && null != UIthread)//如果不是首次加载页面,则杀死ui线程 { UIthread.Abort(); Console.WriteLine("-------[UI更新进度线程杀死] UIthread Alive:{0}--------"); } else { initDataList = false; } string startP = ((page - 1) * numPerPage).ToString();//开始条数 string id = ClueInfo.caseId.ToString(); string type = ""; if (typeList_d1.Text != "处理状态") { switch (typeList_d1.Text) { case ("上传中"): type = " and finished = ''"; break; case ("上传完成"): type = " and finished = true"; break; case ("解析中"): type = " and (finished = 1 or finished = 2 or finished = 3 or finished = 4)"; break; case ("解析完成"): type = " and finished = 5"; break; case ("解析失败"): type = " and finished = 0"; break; case ("上传失败"): type = " and finished = -1"; break; } } string serchQuery = "caseID=" + id + type; if (isSearch_d1 && search_d1.Text != null && !"".Equals(search_d1.Text) && !"请输入要搜索的内容".Equals(search_d1.Text))//如果有搜索条件 { serchQuery = serchQuery + " and (evName LIKE '%" + search_d1.Text + "%' or evAdmin LIKE '%" + search_d1.Text + "%') order by id desc" + " limit " + startP + "," + numPerPage; } else { serchQuery = serchQuery + " order by id desc" + " limit " + startP + "," + numPerPage; } Maticsoft.BLL.evidence evidence1 = new Maticsoft.BLL.evidence(); DataSet ds = evidence1.GetList(serchQuery); //由于下foreach遍历获取到的Control控件是逆序的,采用栈的方式重新反向排序 Stack <Control> Cons = new Stack <Control>(); foreach (Control ctl in this.Controls["tabPages"].Controls["tabDataList"].Controls) //遍历相应容器中的所有控件 { if (ctl as DataLineA.UserControl1 != null) //如果是数据列 { ctl.Visible = false; Cons.Push(ctl); } } //遍历栈 int i = 0; foreach (DataLineA.UserControl1 c in Cons) { Maticsoft.Model.evidence resEvi = new Maticsoft.Model.evidence(); if (i < ds.Tables[0].Rows.Count) { resEvi.addTime = ds.Tables[0].Rows[i]["addTime"].ToString().Split(' ')[0]; resEvi.evAdmin = ds.Tables[0].Rows[i]["evAdmin"].ToString(); resEvi.evSize = ds.Tables[0].Rows[i]["evSize"].ToString(); resEvi.evType = Convert.ToInt32(ds.Tables[0].Rows[i]["evType"].ToString()); resEvi.evName = ds.Tables[0].Rows[i]["evName"].ToString(); resEvi.uploadNum = ds.Tables[0].Rows[i]["uploadNum"].ToString(); resEvi.finished = ds.Tables[0].Rows[i]["finished"].ToString(); resEvi.id = Convert.ToInt32(ds.Tables[0].Rows[i]["id"].ToString()); resEvi.localPath = ds.Tables[0].Rows[i]["localpath"].ToString(); setDataListValue(c, resEvi); } else { Cons.Clear(); break; } if (i < DataList.Count()) { DataList[i] = resEvi; } else { DataList.Add(resEvi); } i++; } //重新开启新的线程 UIthread = new Thread(new ThreadStart(UIthreadRefresh)); UIthread.Start(); //设置文本内容 string pageTextNew = "总共" + totalDataNum + "条,当前" + nowDataPage + "/" + totalPage + "页"; pageinformation_d2.Text = pageTextNew; }
/// <summary> /// 增加一条数据 /// </summary> public bool Add(Maticsoft.Model.evidence model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into evidence("); strSql.Append("caseID,spersonID,sunitID,evName,comment,evAdmin,dirPath,evSize,emlCount,docCount,pdfCount,zipCount,rarCount,percent,finished,status,mailBox,dealinfo,addTime,currFlag,finishTime,uptype,isdel,startSolrTime,evType,indexFlag,UUID,dataTypes,uploadNum,successNum,errorNum,localPath)"); strSql.Append(" values ("); strSql.Append("@caseID,@spersonID,@sunitID,@evName,@comment,@evAdmin,@dirPath,@evSize,@emlCount,@docCount,@pdfCount,@zipCount,@rarCount,@percent,@finished,@status,@mailBox,@dealinfo,@addTime,@currFlag,@finishTime,@uptype,@isdel,@startSolrTime,@evType,@indexFlag,@UUID,@dataTypes,@uploadNum,@successNum,@errorNum,@localPath)"); MySqlParameter[] parameters = { new MySqlParameter("@caseID", MySqlDbType.Int32, 11), new MySqlParameter("@spersonID", MySqlDbType.Int32, 11), new MySqlParameter("@sunitID", MySqlDbType.Int32, 11), new MySqlParameter("@evName", MySqlDbType.VarChar, 100), new MySqlParameter("@comment", MySqlDbType.VarChar, 500), new MySqlParameter("@evAdmin", MySqlDbType.VarChar, 100), new MySqlParameter("@dirPath", MySqlDbType.VarChar, 500), new MySqlParameter("@evSize", MySqlDbType.VarChar, 100), new MySqlParameter("@emlCount", MySqlDbType.Int32, 11), new MySqlParameter("@docCount", MySqlDbType.Int32, 11), new MySqlParameter("@pdfCount", MySqlDbType.Int32, 11), new MySqlParameter("@zipCount", MySqlDbType.Int32, 11), new MySqlParameter("@rarCount", MySqlDbType.Int32, 11), new MySqlParameter("@percent", MySqlDbType.VarChar, 100), new MySqlParameter("@finished", MySqlDbType.VarChar, 100), new MySqlParameter("@status", MySqlDbType.VarChar, 100), new MySqlParameter("@mailBox", MySqlDbType.VarChar, 1000), new MySqlParameter("@dealinfo", MySqlDbType.VarChar, 255), new MySqlParameter("@addTime", MySqlDbType.VarChar, 255), new MySqlParameter("@currFlag", MySqlDbType.VarChar, 5), new MySqlParameter("@finishTime", MySqlDbType.VarChar, 255), new MySqlParameter("@uptype", MySqlDbType.Int32, 1), new MySqlParameter("@isdel", MySqlDbType.Int32, 1), new MySqlParameter("@startSolrTime", MySqlDbType.VarChar, 255), new MySqlParameter("@evType", MySqlDbType.Int32, 11), new MySqlParameter("@indexFlag", MySqlDbType.Int32, 11), new MySqlParameter("@UUID", MySqlDbType.VarChar, 255), new MySqlParameter("@dataTypes", MySqlDbType.Int32, 11), new MySqlParameter("@uploadNum", MySqlDbType.VarChar, 255), new MySqlParameter("@successNum", MySqlDbType.VarChar, 255), new MySqlParameter("@errorNum", MySqlDbType.VarChar, 255), new MySqlParameter("@localPath", MySqlDbType.VarChar, 500) }; parameters[0].Value = model.caseID; parameters[1].Value = model.spersonID; parameters[2].Value = model.sunitID; parameters[3].Value = model.evName; parameters[4].Value = model.comment; parameters[5].Value = model.evAdmin; parameters[6].Value = model.dirPath; parameters[7].Value = model.evSize; parameters[8].Value = model.emlCount; parameters[9].Value = model.docCount; parameters[10].Value = model.pdfCount; parameters[11].Value = model.zipCount; parameters[12].Value = model.rarCount; parameters[13].Value = model.percent; parameters[14].Value = model.finished; parameters[15].Value = model.status; parameters[16].Value = model.mailBox; parameters[17].Value = model.dealinfo; parameters[18].Value = model.addTime; parameters[19].Value = model.currFlag; parameters[20].Value = model.finishTime; parameters[21].Value = model.uptype; parameters[22].Value = model.isdel; parameters[23].Value = model.startSolrTime; parameters[24].Value = model.evType; parameters[25].Value = model.indexFlag; parameters[26].Value = model.UUID; parameters[27].Value = model.dataTypes; parameters[28].Value = model.uploadNum; parameters[29].Value = model.successNum; parameters[30].Value = model.errorNum; parameters[31].Value = model.localPath; int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters); if (rows > 0) { return(true); } else { return(false); } }
/// <summary> /// 得到一个对象实体 /// </summary> public Maticsoft.Model.evidence DataRowToModel(DataRow row) { Maticsoft.Model.evidence model = new Maticsoft.Model.evidence(); if (row != null) { if (row["id"] != null && row["id"].ToString() != "") { model.id = int.Parse(row["id"].ToString()); } if (row["caseID"] != null && row["caseID"].ToString() != "") { model.caseID = int.Parse(row["caseID"].ToString()); } if (row["spersonID"] != null && row["spersonID"].ToString() != "") { model.spersonID = int.Parse(row["spersonID"].ToString()); } if (row["sunitID"] != null && row["sunitID"].ToString() != "") { model.sunitID = int.Parse(row["sunitID"].ToString()); } if (row["evName"] != null) { model.evName = row["evName"].ToString(); } if (row["comment"] != null) { model.comment = row["comment"].ToString(); } if (row["evAdmin"] != null) { model.evAdmin = row["evAdmin"].ToString(); } if (row["dirPath"] != null) { model.dirPath = row["dirPath"].ToString(); } if (row["evSize"] != null) { model.evSize = row["evSize"].ToString(); } if (row["emlCount"] != null && row["emlCount"].ToString() != "") { model.emlCount = int.Parse(row["emlCount"].ToString()); } if (row["docCount"] != null && row["docCount"].ToString() != "") { model.docCount = int.Parse(row["docCount"].ToString()); } if (row["pdfCount"] != null && row["pdfCount"].ToString() != "") { model.pdfCount = int.Parse(row["pdfCount"].ToString()); } if (row["zipCount"] != null && row["zipCount"].ToString() != "") { model.zipCount = int.Parse(row["zipCount"].ToString()); } if (row["rarCount"] != null && row["rarCount"].ToString() != "") { model.rarCount = int.Parse(row["rarCount"].ToString()); } if (row["percent"] != null) { model.percent = row["percent"].ToString(); } if (row["finished"] != null) { model.finished = row["finished"].ToString(); } if (row["status"] != null) { model.status = row["status"].ToString(); } if (row["mailBox"] != null) { model.mailBox = row["mailBox"].ToString(); } if (row["dealinfo"] != null) { model.dealinfo = row["dealinfo"].ToString(); } if (row["addTime"] != null) { model.addTime = row["addTime"].ToString(); } if (row["currFlag"] != null) { model.currFlag = row["currFlag"].ToString(); } if (row["finishTime"] != null) { model.finishTime = row["finishTime"].ToString(); } if (row["uptype"] != null && row["uptype"].ToString() != "") { model.uptype = int.Parse(row["uptype"].ToString()); } if (row["isdel"] != null && row["isdel"].ToString() != "") { model.isdel = int.Parse(row["isdel"].ToString()); } if (row["startSolrTime"] != null) { model.startSolrTime = row["startSolrTime"].ToString(); } if (row["evType"] != null && row["evType"].ToString() != "") { model.evType = int.Parse(row["evType"].ToString()); } if (row["indexFlag"] != null && row["indexFlag"].ToString() != "") { model.indexFlag = int.Parse(row["indexFlag"].ToString()); } if (row["UUID"] != null) { model.UUID = row["UUID"].ToString(); } if (row["dataTypes"] != null && row["dataTypes"].ToString() != "") { model.dataTypes = int.Parse(row["dataTypes"].ToString()); } if (row["uploadNum"] != null) { model.uploadNum = row["uploadNum"].ToString(); } if (row["successNum"] != null) { model.successNum = row["successNum"].ToString(); } if (row["errorNum"] != null) { model.errorNum = row["errorNum"].ToString(); } if (row["localPath"] != null) { model.localPath = row["localPath"].ToString(); } } return(model); }
/// <summary> /// 更新一条数据 /// </summary> public bool Update(Maticsoft.Model.evidence model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update evidence set "); strSql.Append("caseID=@caseID,"); strSql.Append("spersonID=@spersonID,"); strSql.Append("sunitID=@sunitID,"); strSql.Append("evName=@evName,"); strSql.Append("comment=@comment,"); strSql.Append("evAdmin=@evAdmin,"); strSql.Append("dirPath=@dirPath,"); strSql.Append("evSize=@evSize,"); strSql.Append("emlCount=@emlCount,"); strSql.Append("docCount=@docCount,"); strSql.Append("pdfCount=@pdfCount,"); strSql.Append("zipCount=@zipCount,"); strSql.Append("rarCount=@rarCount,"); strSql.Append("percent=@percent,"); strSql.Append("finished=@finished,"); strSql.Append("status=@status,"); strSql.Append("mailBox=@mailBox,"); strSql.Append("dealinfo=@dealinfo,"); strSql.Append("addTime=@addTime,"); strSql.Append("currFlag=@currFlag,"); strSql.Append("finishTime=@finishTime,"); strSql.Append("uptype=@uptype,"); strSql.Append("isdel=@isdel,"); strSql.Append("startSolrTime=@startSolrTime,"); strSql.Append("evType=@evType,"); strSql.Append("indexFlag=@indexFlag,"); strSql.Append("UUID=@UUID,"); strSql.Append("dataTypes=@dataTypes,"); strSql.Append("uploadNum=@uploadNum,"); strSql.Append("successNum=@successNum,"); strSql.Append("errorNum=@errorNum,"); strSql.Append("localPath=@localPath"); strSql.Append(" where id=@id"); MySqlParameter[] parameters = { new MySqlParameter("@caseID", MySqlDbType.Int32, 11), new MySqlParameter("@spersonID", MySqlDbType.Int32, 11), new MySqlParameter("@sunitID", MySqlDbType.Int32, 11), new MySqlParameter("@evName", MySqlDbType.VarChar, 100), new MySqlParameter("@comment", MySqlDbType.VarChar, 500), new MySqlParameter("@evAdmin", MySqlDbType.VarChar, 100), new MySqlParameter("@dirPath", MySqlDbType.VarChar, 500), new MySqlParameter("@evSize", MySqlDbType.VarChar, 100), new MySqlParameter("@emlCount", MySqlDbType.Int32, 11), new MySqlParameter("@docCount", MySqlDbType.Int32, 11), new MySqlParameter("@pdfCount", MySqlDbType.Int32, 11), new MySqlParameter("@zipCount", MySqlDbType.Int32, 11), new MySqlParameter("@rarCount", MySqlDbType.Int32, 11), new MySqlParameter("@percent", MySqlDbType.VarChar, 100), new MySqlParameter("@finished", MySqlDbType.VarChar, 100), new MySqlParameter("@status", MySqlDbType.VarChar, 100), new MySqlParameter("@mailBox", MySqlDbType.VarChar, 1000), new MySqlParameter("@dealinfo", MySqlDbType.VarChar, 255), new MySqlParameter("@addTime", MySqlDbType.VarChar, 255), new MySqlParameter("@currFlag", MySqlDbType.VarChar, 5), new MySqlParameter("@finishTime", MySqlDbType.VarChar, 255), new MySqlParameter("@uptype", MySqlDbType.Int32, 1), new MySqlParameter("@isdel", MySqlDbType.Int32, 1), new MySqlParameter("@startSolrTime", MySqlDbType.VarChar, 255), new MySqlParameter("@evType", MySqlDbType.Int32, 11), new MySqlParameter("@indexFlag", MySqlDbType.Int32, 11), new MySqlParameter("@UUID", MySqlDbType.VarChar, 255), new MySqlParameter("@dataTypes", MySqlDbType.Int32, 11), new MySqlParameter("@uploadNum", MySqlDbType.VarChar, 255), new MySqlParameter("@successNum", MySqlDbType.VarChar, 255), new MySqlParameter("@errorNum", MySqlDbType.VarChar, 255), new MySqlParameter("@localPath", MySqlDbType.VarChar, 500), new MySqlParameter("@id", MySqlDbType.Int32, 11) }; parameters[0].Value = model.caseID; parameters[1].Value = model.spersonID; parameters[2].Value = model.sunitID; parameters[3].Value = model.evName; parameters[4].Value = model.comment; parameters[5].Value = model.evAdmin; parameters[6].Value = model.dirPath; parameters[7].Value = model.evSize; parameters[8].Value = model.emlCount; parameters[9].Value = model.docCount; parameters[10].Value = model.pdfCount; parameters[11].Value = model.zipCount; parameters[12].Value = model.rarCount; parameters[13].Value = model.percent; parameters[14].Value = model.finished; parameters[15].Value = model.status; parameters[16].Value = model.mailBox; parameters[17].Value = model.dealinfo; parameters[18].Value = model.addTime; parameters[19].Value = model.currFlag; parameters[20].Value = model.finishTime; parameters[21].Value = model.uptype; parameters[22].Value = model.isdel; parameters[23].Value = model.startSolrTime; parameters[24].Value = model.evType; parameters[25].Value = model.indexFlag; parameters[26].Value = model.UUID; parameters[27].Value = model.dataTypes; parameters[28].Value = model.uploadNum; parameters[29].Value = model.successNum; parameters[30].Value = model.errorNum; parameters[31].Value = model.localPath; parameters[32].Value = model.id; int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters); if (rows > 0) { return(true); } else { return(false); } }