123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192 |
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.Drawing;
- using System.IO;
- namespace OTSIncAReportApp.DataOperation.DataAccess
- {
- public class FieldData
- {
- private SqlHelper dbHelper;
- private frmReportApp m_Report=new frmReportApp();
- //测量文件地址
- private string filePath;
- public FieldData(string path)
- {
- dbHelper = new SqlHelper("data source='" + path + "\\FIELD_FILES\\Inclusion.db'");
- filePath = path + "\\FIELD_FILES\\";
- }
-
- public FieldData(string path, frmReportApp a_ReportApp)
- {
-
- dbHelper = new SqlHelper("data source='" + path + "\\FIELD_FILES\\Inclusion.db'");
- filePath = path + "\\FIELD_FILES\\";
- m_Report = a_ReportApp;
- }
- /// <summary>
- /// 获取SegmentList
- /// </summary>
- /// <param name="model">Feature</param>
- /// <returns></returns>
- public List<Model.Field> GetFieldList()
- {
- //获取field信息
- string sql = "select fieldid,fieldposx,fieldposy,SEMPosX,SEMPosY from IncAData group by fieldid,fieldposx,fieldposy";
- DataTable DT = dbHelper.ExecuteDataTable(sql, null);
- //获取Particle信息
- string sqlp = "select a.*,b.XrayData from IncAData a left join XRayData b on a.FieldId =b.FieldId and a.XrayId= b.XrayIndex";
- DataTable DTP = dbHelper.ExecuteDataTable(sqlp, null);
- //获取Segment信息
- string strs = @"select * from Segment ";
- DataTable DTS = dbHelper.ExecuteDataTable(strs, null);
- //获取Element信息
- string sqle = @"select * from ElementChemistry ";
- DataTable DTE = dbHelper.ExecuteDataTable(sqle, null);
- List<Model.Field> Fields = new List<Model.Field>();
- DirectoryInfo info = new DirectoryInfo(filePath);
- int count = info.GetFiles("*.bmp").Length;
-
- for (int i=0;i< count; i++)
- {
-
- string imagePath = filePath + "Field" + m_Report.OriginalPoint.Rows[i]["ID"].ToString() + ".bmp";
- Model.Field modelf = new Model.Field() { FieldID = Convert.ToInt32(m_Report.OriginalPoint.Rows[i]["ID"].ToString()), FieldPosX = Convert.ToInt32(m_Report.OriginalPoint.Rows[i]["FieldX"].ToString()), FieldPosY = Convert.ToInt32(m_Report.OriginalPoint.Rows[i]["FieldY"].ToString()), FieldImage = imagePath };
- DataRow[] drp = DTP.Select("fieldid=" + m_Report.OriginalPoint.Rows[i]["ID"].ToString());
- List<Model.Particle> listp = dbHelper.RowsToList<Model.Particle>(drp);
- foreach (Model.Particle modelp in listp)
- {
- //添加FeatureList信息
- DataRow[] drs = DTS.Select("fieldid=" + m_Report.OriginalPoint.Rows[i]["ID"].ToString() + " and particleid=" + modelp.ParticleId.ToString());
- List<Model.Feature> flist = dbHelper.RowsToList<Model.Feature>(drs);
- modelp.FeatureList = flist;
- //添加ElementList信息
- DataRow[] dre = DTE.Select("fieldid=" + m_Report.OriginalPoint.Rows[i]["ID"].ToString() + " and XRayId=" + modelp.XrayId.ToString());
- List<Model.Element> elist = dbHelper.RowsToList<Model.Element>(dre);
- modelp.ElementList = elist;
- }
- modelf.ParticleList = listp;
- Fields.Add(modelf);
- }
-
- //foreach (DataRow dr in DT.Rows)
- //{
- // string imagePath = filePath + "Field" + dr["fieldid"].ToString() + ".bmp";
-
- // Model.Field modelf = new Model.Field() { FieldID = Convert.ToInt32(dr["fieldid"]), FieldPosX = Convert.ToInt32(dr["fieldposx"]), FieldPosY = Convert.ToInt32(dr["fieldposy"]), FieldImage = imagePath };
- // DataRow[] drp = DTP.Select("fieldid=" + dr["fieldid"].ToString());
- // List<Model.Particle> listp = dbHelper.RowsToList<Model.Particle>(drp);
- // foreach (Model.Particle modelp in listp)
- // {
- // //添加FeatureList信息
- // DataRow[] drs = DTS.Select("fieldid=" + dr["fieldid"].ToString() + " and particleid=" + modelp.ParticleId.ToString());
- // List<Model.Feature> flist = dbHelper.RowsToList<Model.Feature>(drs);
- // modelp.FeatureList = flist;
- // //添加ElementList信息
- // DataRow[] dre = DTE.Select("fieldid=" + dr["fieldid"].ToString() + " and XRayId=" + modelp.XrayId.ToString());
- // List<Model.Element> elist = dbHelper.RowsToList<Model.Element>(dre);
- // modelp.ElementList = elist;
- // }
- // modelf.ParticleList = listp;
- // Fields.Add(modelf);
- //}
- return Fields;
- }
- /// <summary>
- /// 获取SegmentDataTable
- /// </summary>
- /// <param name="model">Feature</param>
- /// <returns></returns>
- public DataTable GetGeneralInfo()
- {
- //存放查询数据的数据表
- DataTable DT = null;
- string sql = "select * from GeneralInfo";
- DT = dbHelper.ExecuteDataTable(sql, null);
- return DT;
- }
- /// <summary>
- /// 获取filed数量
- /// </summary>
- /// <param name="model">Feature</param>
- /// <returns></returns>
- public int GetFiledCount()
- {
- //存放查询数据的数据表
- DataTable DT = null;
- string sql = "select FieldId from IncAData group by FieldId";
- DT = dbHelper.ExecuteDataTable(sql, null);
- return DT.Rows.Count;
- }
- /// <summary>
- /// 获取颗粒数量
- /// </summary>
- /// <param name="model">Feature</param>
- /// <returns></returns>
- public int GetparticleCount()
- {
- //存放查询数据的数据表
- DataTable DT = null;
- string sql = "select 1 from IncAData";
- DT = dbHelper.ExecuteDataTable(sql, null);
- return DT.Rows.Count;
- }
- /// <summary>
- /// 获取所有的颗粒信息
- /// </summary>
- /// <returns></returns>
- public DataTable GetAllParticle_DataTable()
- {
- DataTable DT = null;
- string sql = "select * from IncAData where typeid > 9";
- DT = dbHelper.ExecuteDataTable(sql, null);
- return DT;
- }
- /// <summary>
- /// 获取颗粒总面积
- /// </summary>
- /// <param name="model">Feature</param>
- /// <returns></returns>
- public int GetparticleArea()
- {
- //存放查询数据的数据表
- DataTable DT = null;
- string sql = "select sum(Area) from IncAData";
- DT = dbHelper.ExecuteDataTable(sql, null);
- return DT.Rows.Count > 0 ? Convert.ToInt32(DT.Rows[0][0]) : 0;
- }
-
- }
- }
|