using OTSCLRINTERFACE; using OTSDataType; using OTSModelSharp.DTLBase; using System; using System.Collections.Generic; using System.Data; using System.Data.SQLite; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; namespace OTSModelSharp { public class CSmallParticleInfoDB : CSQLiteDB { public CSmallParticleInfoDB(IDBStoreBase _conStr, IDBTableBase _table) : base(_conStr, _table) { } public KeyValuePair SaveAKindOfSmallParticle( CSmallParticleInfo a_pParticleInfo, CPosXrayClr a_pXray, System.Drawing.Point fldPos) { var tableInfoPtr = GetTableInfo(); var datastorePtr = GetDatastore(); var sInsertFormat = tableInfoPtr.GetInsertCommand(); var parasTem = sInsertFormat.Value; var paras = new SQLiteParameter[7]; for (int j = 0; j < 7; j++) { paras[j] = new SQLiteParameter(parasTem[j].ParameterName); } //string sSQLCommand=string.Format(sInsertFormat, paras[0].Value = a_pParticleInfo.FieldId; paras[1].Value = a_pParticleInfo.AveGray; paras[2].Value = a_pParticleInfo.Area; paras[3].Value = a_pParticleInfo.TypeId; paras[4].Value = a_pParticleInfo.TypeName; paras[5].Value = a_pParticleInfo.TypeColor; paras[6].Value = a_pParticleInfo.Quantity; return new KeyValuePair(sInsertFormat.Key,paras); } public bool UpdataAKindOfSamllParticle( CSmallParticleInfo a_pParticleInfo) { var tableInfoPtr = GetTableInfo(); var datastorePtr = GetDatastore(); //String sSQLCommand = "Update \'{0}\' WHERE {1} = {2} AND {3} ={4} AND {5} ={6} AND {7} = {8}; "; string sSQLCommand = "Update SmallParticleInfo set AveGray = {0},Area = {1},IncAId={2} where FieldID = {3} and IncAId = {2}"; sSQLCommand=string.Format(sSQLCommand, a_pParticleInfo.AveGray, a_pParticleInfo.Area, a_pParticleInfo.TypeId, a_pParticleInfo.FieldId ); //var helper = new SQLiteHelper(datastorePtr); if(datastorePtr.RunCommand( sSQLCommand)!=true) { return false; } return true; } public DataTable GetQueryById( long a_nFieldId) { DataTable query; var datastorePtr = GetDatastore(); var tableInfoPtr = GetTableInfo(); var sFieldIdColumnName = tableInfoPtr.GetColumnName((int)CSmallParticleInfoTable.ColumnID.N_FIELD_ID - (int)CSmallParticleInfoTable.ColumnID.MIN); String sSQLCommand = ""; String.Format("SELECT * FROM \'{0}\' WHERE {1} = {2} AND {3} ={4} AND {5} ={6} AND {7} = {8}; ", (String) tableInfoPtr.GetTableName(), sFieldIdColumnName,a_nFieldId); //var helper = new SQLiteHelper(datastorePtr); query = datastorePtr.QueryByCmdForDataTable(sSQLCommand); return query; } public DataTable GetQueryOfAllRecord() { DataTable query; var datastorePtr = GetDatastore(); var tableInfoPtr = GetTableInfo(); String sSQLCommand = ""; String.Format("SELECT * FROM \'{0}\' WHERE {1} = {2} AND {3} ={4} AND {5} ={6} AND {7} = {8};", (String)tableInfoPtr.GetTableName()); //var helper = new SQLiteHelper(datastorePtr); query = datastorePtr.QueryByCmdForDataTable(sSQLCommand); return query; } } }