public RegisterResponse Post(RegisterRequest request) { var response = new RegisterResponse(); var _InfraDb = base.ResolveService <ITenantDbFactory>() as TenantDbFactory; DbParameter[] parameters = { _InfraDb.DataDB.GetNewParameter("email", System.Data.DbType.String, request.Email) // _InfraDb.DataDB.GetNewParameter("pwd", System.Data.DbType.String, (request.Password + request.Email).ToMD5Hash()) }; EbDataTable dt = _InfraDb.DataDB.DoQuery("INSERT INTO eb_users (email, u_token) VALUES ( @email, md5( @email || now())) RETURNING id, u_token;", parameters); if (dt.Rows.Count > 0) { try { var myService = base.ResolveService <EmailServiceInternal>(); myService.Post(new EmailServicesMqRequest() { refid = "expressbase-expressbase-15-5-5", TenantAccountId = request.TenantAccountId, Subject = "EXPRESSbase Signup Confirmation", To = request.Email, UserId = Convert.ToInt32(dt.Rows[0][0]) }); // base.MessageProducer3.Publish(new EmailServicesMqRequest { refid = "eb_roby_dev-eb_roby_dev-15-894-1611", TenantAccountId = request.TenantAccountId, Subject = "EXPRESSbase Signup Confirmation", To = request.Email, UserId =Convert.ToInt32(dt.Rows[0][0]) }); response.UserName = dt.Rows[0][1].ToString(); response.UserId = dt.Rows[0][0].ToString(); } catch (Exception e) { } } return(response); }
private void UpdateErrorDraftIds(List <int> DraftIds) { try { List <string> depT = new List <string>(); int i; List <EbMobileForm> FormCollection = EbPageHelper.GetOfflineForms(); foreach (EbMobileForm Form in FormCollection) { if (depT.Contains(Form.TableName)) { continue; } EbDataTable dt = Form.GetDraftIds(); foreach (EbDataRow dr in dt.Rows) { i = Convert.ToInt32(dr[0]); if (!DraftIds.Contains(i)) { Form.UpdateDraftAsSynced(Convert.ToInt32(dr[1]), i); } } } } catch (Exception ex) { EbLog.Error("UpdateErrorDraftIds: " + ex.Message); } }
public EbDataTable DoQuery(string query, params DbParameter[] parameters) { EbDataTable dt = new EbDataTable(); using (var con = GetNewConnection() as NpgsqlConnection) { try { con.Open(); using (NpgsqlCommand cmd = new NpgsqlCommand(query, con)) { if (parameters != null && parameters.Length > 0) { cmd.Parameters.AddRange(parameters); } using (var reader = cmd.ExecuteReader()) { this.AddColumns(dt, reader.GetColumnSchema()); PrepareDataTable(reader, dt); } } } catch (Npgsql.NpgsqlException npgse) { } catch (SocketException scket) { } } return(dt); }
//Signup_tok public static User GetInfraVerifiedUser(IDatabase db, string uname, string u_token) { User _user = null; string sql = "UPDATE eb_tenants SET is_verified = 'T' WHERE cname = @cname AND u_token = @u_token;"; sql += "SELECT id, firstname,profileimg FROM eb_tenants WHERE cname = @cname AND u_token = @u_token"; DbParameter[] parameters = { db.GetNewParameter("cname", EbDbTypes.String, uname), db.GetNewParameter("u_token", EbDbTypes.String, u_token) }; EbDataTable dt = db.DoQuery(sql, parameters); if (dt.Rows.Count != 0) { _user = new User { UserId = Convert.ToInt32(dt.Rows[0][0]), Email = uname, FirstName = dt.Rows[0][1].ToString() }; } return(_user); }
public EbDataTable DoQuery(string query, params DbParameter[] parameters) { EbDataTable dt = new EbDataTable(); try { using (SqliteConnection con = new SqliteConnection("Data Source=" + this.DbPath)) { con.Open(); using (SqliteCommand cmd = con.CreateCommand()) { cmd.CommandText = query; if (parameters != null && parameters.Length > 0) { cmd.Parameters.AddRange(this.DbParamToSqlParam(parameters)); } using (var reader = cmd.ExecuteReader()) { PrepareDataTable(reader, dt); } } con.Close(); } } catch (Exception e) { Console.WriteLine(e.Message); } return(dt); }
public GetBotForm4UserResponse Get(GetBotForm4UserRequest request) { var Query1 = @" SELECT EOV.obj_json FROM eb_objects EO, eb_objects_ver EOV, eb_objects_status EOS WHERE EO.id = EOV.eb_objects_id AND EOS.eb_obj_ver_id = EOV.id AND EO.id = ANY('@Ids') AND EOS.status = 3 AND EO.obj_type = 18;;"; EbDataTable table = this.TenantDbFactory.ObjectsDB.DoQuery(Query1.Replace("@Ids", request.BotFormIds)); GetBotForm4UserResponse resp = new GetBotForm4UserResponse(); foreach (EbDataRow row in table.Rows) { var form = EbSerializers.Json_Deserialize(row[0].ToString()); resp.BotForms.Add(form); } //int _id = Convert.ToInt32(request.BotFormIds); //var myService = base.ResolveService<EbObjectService>(); //var res = (EbObjectFetchLiveVersionResponse)myService.Get(new EbObjectFetchLiveVersionRequest() { Id = _id }); return(resp); }
private void SetControlValues(EbDataRow masterRow) { foreach (var pair in this.Form.ControlDictionary) { EbMobileControl ctrl = pair.Value; object data = masterRow[ctrl.Name]; try { if (ctrl is IFileUploadControl) { this.SetFileData(ctrl, data); } else if (ctrl is ILinesEnabled line) { EbDataTable lines = this.formData.Tables.Find(table => table.TableName == line.TableName); ctrl.SetValue(lines); } else { ctrl.SetValue(data); } if (this.IsEditButtonVisible) { ctrl.SetAsReadOnly(true); } } catch (Exception ex) { EbLog.Error("Error when setting value to controls on edit"); EbLog.Error(ex.Message); } } }
public EbDataSet DoQueries(string query, params DbParameter[] parameters) { EbDataSet ds = new EbDataSet(); try { using SqliteConnection con = new SqliteConnection("Data Source=" + this.DbPath); con.Open(); using (SqliteCommand cmd = con.CreateCommand()) { cmd.CommandText = query; if (parameters != null && parameters.Length > 0) { cmd.Parameters.AddRange(this.DbParamToSqlParam(parameters)); } using var reader = cmd.ExecuteReader(); do { EbDataTable dt = new EbDataTable(); PrepareDataTable(reader, dt); ds.Tables.Add(dt); ds.RowNumbers += dt.Rows.Count.ToString() + ","; }while (reader.NextResult()); } con.Close(); } catch (Exception ex) { EbLog.Error("DataBaseAndroid.DoQueries---" + ex.Message); } return(ds); }
protected void PrepareDataTable(SqliteDataReader reader, EbDataTable dt) { try { int _fieldCount = reader.FieldCount; for (int i = 0; i < _fieldCount; i++) { dt.Columns.Add(new EbDataColumn { ColumnName = reader.GetName(i), ColumnIndex = i, Type = DbTypeConverter.ConvertToDbType(reader.GetFieldType(i)) }); } while (reader.Read()) { EbDataRow dr = dt.NewDataRow(); object[] oArray = new object[_fieldCount]; reader.GetValues(oArray); dr.AddRange(oArray); dt.Rows.Add(dr); } } catch (Exception ex) { EbLog.Error(ex.Message); } }
private async void SetPowerSelect(string value) { EbDataTable dt = null; if (this.NetworkType == NetworkMode.Offline) { dt = GetDataFromLocal(value); } else if (this.NetworkType == NetworkMode.Online) { Param param = new Param { Name = this.ValueMember.ColumnName, Type = ((int)this.ValueMember.Type).ToString(), Value = value }; dt = await GetDataFromCloud(new List <Param> { param }); } if (dt != null && dt.Rows.Any()) { SetPowerSelectValue(dt.Rows[0]); } }
public EbConstraints(EbDataTable dt) { this.Constraints = new Dictionary <int, EbConstraint>(); for (int i = 0; i < dt.Rows.Count; i++) { int id = Convert.ToInt32(dt.Rows[i]["id"]); if (!this.Constraints.ContainsKey(id)) { this.Constraints.Add(id, new EbConstraint() { KeyId = Convert.ToInt32(dt.Rows[i]["key_id"]), KeyType = (EbConstraintKeyTypes)Convert.ToInt32(dt.Rows[i]["key_type"]), Description = Convert.ToString(dt.Rows[i]["description"]) }); } this.Constraints[id].Values.Add(Convert.ToInt32(dt.Rows[i]["lid"]), new EbConstraintOTV() { Type = (EbConstraintTypes)Convert.ToInt32(dt.Rows[i]["c_type"]), Operation = (EbConstraintOperators)Convert.ToInt32(dt.Rows[i]["c_operation"]), Value = Convert.ToString(dt.Rows[i]["c_value"]) }); } }
private void Render(EbDataTable Data) { int c = 1; ResultList.Children.Clear(); try { foreach (EbDataRow row in Data.Rows) { ComboBoxLabel lbl = new ComboBoxLabel(c) { Padding = new Thickness(10), Text = row[this.powerSelect.DisplayMember.ColumnName]?.ToString(), Value = row[this.powerSelect.ValueMember.ColumnName], Row = row }; lbl.GestureRecognizers.Add(recognizer); ResultList.Children.Add(lbl); c++; } } catch (Exception ex) { EbLog.Error("Failed to Render select ::" + ex.Message); } EmptyMessage.IsVisible = ResultList.Children.Count <= 0; }
public FileDownloadObject GetDownloadFile(IDatabase Datadb, int Id) { FileDownloadObject FileDownloadObject = null; try { string s = @"SELECT filename, bytea, eb_created_by, eb_created_at FROM eb_downloads WHERE id=:id AND eb_del = 'F' "; DbParameter[] parameters = new DbParameter[] { Datadb.GetNewParameter(":id", EbDbTypes.Int32, Id), }; EbDataTable dt = Datadb.DoQuery(s, parameters); if (dt.Rows.Count > 0) { FileDownloadObject = new FileDownloadObject { Id = Id, Filename = dt.Rows[0][0].ToString(), FileBytea = (byte[])dt.Rows[0][1], CreatedBy = Convert.ToInt32(dt.Rows[0][2]), //CreatedAt = Convert.ToDateTime(dt.Rows[0][3]), }; } } catch (Exception e) { Console.WriteLine(e.Message + e.StackTrace); } return(FileDownloadObject); }
private int GetFileRefIdInfra(int userId, string filename, string filetype, string tags, EbFileCategory ebFileCategory, string context) { int refId = 0; EbDataTable table = null; //logging connection Console.WriteLine("FileClient Connection at GetFileRefIdInfra"); Console.WriteLine(this.InfraConnectionFactory.DataDB.DBName); try { DbParameter[] parameters = { this.InfraConnectionFactory.DataDB.GetNewParameter("userid", EbDbTypes.Int32, userId), this.InfraConnectionFactory.DataDB.GetNewParameter("filename", EbDbTypes.String, filename), this.InfraConnectionFactory.DataDB.GetNewParameter("filetype", EbDbTypes.String, filetype), this.InfraConnectionFactory.DataDB.GetNewParameter("tags", EbDbTypes.String, string.IsNullOrEmpty(tags)? string.Empty: tags), this.InfraConnectionFactory.DataDB.GetNewParameter("filecategory", EbDbTypes.Int16, (int)ebFileCategory), this.InfraConnectionFactory.DataDB.GetNewParameter("context", EbDbTypes.String, context) }; table = this.InfraConnectionFactory.DataDB.DoQuery(this.InfraConnectionFactory.DataDB.EB_UPLOAD_IDFETCHQUERY, parameters); string s = table.Rows[0][0].ToString(); refId = int.Parse(s); } catch (Exception e) { Console.WriteLine("ERROR: POSGRE: " + e.Message); } return(refId); }
public ApplicationCollection(EbDataTable dtApp, EbDataTable dtObjects) { _acol = new List <Application>(); foreach (var dr in dtApp.Rows) { int appid = Convert.ToInt32(dr[0]); _acol.Add(new Application { Id = appid, Name = dr[1].ToString() }); } foreach (EbDataRow dr in dtObjects.Rows) { var app_id = Convert.ToInt32(dr[3]); var ob_type = Convert.ToInt32(dr[2]); if (app_id != 0) { if (!this.GetApplication(app_id).ObjectTypes.ContainsKey(ob_type)) { this.GetApplication(app_id).ObjectTypes.Add(ob_type); } this.GetApplication(app_id).ObjectTypes[ob_type].Add(new Eb_Object { Obj_Id = Convert.ToInt32(dr[0]), Obj_Name = dr[1].ToString() }); } } }
public static List <EbObjectWrapper> GetParticularVersion(IDatabase objectsDb, string RefId) { List <EbObjectWrapper> wrap = new List <EbObjectWrapper>(); DbParameter[] parameters = { objectsDb.GetNewParameter("refid", EbDbTypes.String, RefId) }; EbDataTable dt = objectsDb.DoQuery(objectsDb.EB_PARTICULAR_VERSION_OF_AN_OBJ, parameters); foreach (EbDataRow dr in dt.Rows) { EbObjectWrapper _ebObject = (new EbObjectWrapper { Json = dr[0].ToString(), VersionNumber = dr[1].ToString(), EbObjectType = (dr[4] != DBNull.Value) ? Convert.ToInt32(dr[4]) : 0, Status = Enum.GetName(typeof(ObjectLifeCycleStatus), Convert.ToInt32(dr[2])), Tags = dr[3].ToString(), DisplayName = dr[5].ToString(), RefId = RefId }); wrap.Add(_ebObject); } return(wrap); }
public async Task <EbDataSet> GetFormLocalDataAsync(EbMobileForm form, int rowid) { EbDataSet ds = new EbDataSet(); try { //only to remove the warning await Task.Delay(1); EbDataTable masterData = App.DataDB.DoQuery($"SELECT * FROM {form.TableName} WHERE id = {rowid};"); masterData.TableName = form.TableName; ds.Tables.Add(masterData); foreach (var pair in form.ControlDictionary) { if (pair.Value is ILinesEnabled) { string linesQuery = $"SELECT * FROM {(pair.Value as ILinesEnabled).TableName} WHERE {form.TableName}_id = {rowid};"; EbDataTable linesData = App.DataDB.DoQuery(linesQuery); linesData.TableName = (pair.Value as ILinesEnabled).TableName; ds.Tables.Add(linesData); } } } catch (Exception ex) { EbLog.Error(ex.Message); } return(ds); }
private async Task PushDependencyData(WebformData webdata, EbMobileForm sourceForm, EbMobileForm dependencyForm, int liveId, int localId) { try { string RefColumn = $"{sourceForm.TableName}_id"; string query = string.Format(StaticQueries.STARFROM_TABLE_WDEP, dependencyForm.GetQuery(), dependencyForm.TableName, RefColumn, localId); EbDataTable dt = App.DataDB.DoQuery(query); if (dt.Rows.Any()) { SingleTable SingleTable = new SingleTable(); for (int i = 0; i < dt.Rows.Count; i++) { FillLiveId(dt, dt.Rows[i], liveId, RefColumn); PushResponse resp = await SendRecord(webdata, dependencyForm, dt, dt.Rows[i], i); if (resp.RowAffected <= 0) { continue; } dependencyForm.FlagLocalRow(resp); } } } catch (Exception ex) { EbLog.Error("SyncServices.PushDependencyData---" + ex.Message); } }
private EbDataTable GetLocalData(string search, bool preload) { EbDataTable dt; string sql = HelperFunctions.B64ToString(powerSelect.OfflineQuery.Code).TrimEnd(';'); string WrpdQuery; if (preload) { WrpdQuery = $"SELECT * FROM ({sql}) AS WR LIMIT 100;"; } else { WrpdQuery = $"SELECT * FROM ({sql}) AS WR WHERE WR.{powerSelect.DisplayMember.ColumnName} LIKE '%{search}%' LIMIT 100;"; } try { dt = App.DataDB.DoQuery(WrpdQuery); } catch (Exception ex) { EbLog.Error(ex.Message); dt = new EbDataTable(); } return(dt); }
private void GetLinesEnabledData(int localid, EbMobileForm form, WebformData formData) { try { Dictionary <string, EbMobileControl> controls = form.ChildControls.ToControlDictionary(); foreach (var ctrl in controls.Values) { if (ctrl is ILinesEnabled Ilines) { SingleTable st = new SingleTable(); formData.MultipleTables.Add(Ilines.TableName, st); EbDataTable data = Ilines.GetLocalData(form.TableName, localid); foreach (var dr in data.Rows) { SingleRow row = new SingleRow { LocId = Convert.ToInt32(dr["eb_loc_id"]) }; row.Columns.AddRange(Ilines.GetColumnValues(data.Columns, dr)); st.Add(row); } } } } catch (Exception ex) { EbLog.Error(ex.Message); } }
public EbDataRow GetAsDataRow() { EbDataRow row = null; EbDataTable dt = new EbDataTable(); if (Parameters != null && Parameters.Any()) { row = dt.NewDataRow(); dt.Rows.Add(row); List <object> dataArray = new List <object>(); for (int i = 0; i < Parameters.Count; i++) { EbMobileStaticParameter pm = Parameters[i]; dt.Columns.Add(new EbDataColumn { ColumnName = pm.Name, ColumnIndex = i }); dataArray.Add(pm.Value); } row.AddRange(dataArray.ToArray()); } return(row ?? dt.NewDataRow()); }
public object Get(SearchForms request) { var e = LoadTestConfiguration(); DatabaseFactory df = new DatabaseFactory(e); EbDataTable dt = null; using (var con = df.ObjectsDatabase.GetNewConnection()) { con.Open(); dt = df.ObjectsDatabase.DoQuery("SELECT * FROM eb_objects;"); }; List <Form> lf = new List <Form>(); foreach (EbDataRow dr in dt.Rows) { var _id = Convert.ToInt32(dr[0]); bool bAddMe = (request.Id == 0) ? true : (request.Id > 0 && request.Id == _id); if (bAddMe) { lf.Add(new Form { Id = Convert.ToInt32(dr[0]), Name = dr[1].ToString(), Bytea = dr[2] as byte[] }); } } return(new FormResponse { Forms = lf }); }
public static EbApi GetApiByName(string name, string version, IDatabase ObjectsDB) { EbApi api_o = null; string sql = ObjectsDB.EB_API_BY_NAME; DbParameter[] parameter = { ObjectsDB.GetNewParameter("objname", EbDbTypes.String, name), ObjectsDB.GetNewParameter("version", EbDbTypes.String, version) }; EbDataTable dt = ObjectsDB.DoQuery(sql, parameter); if (dt.Rows.Count > 0) { EbDataRow dr = dt.Rows[0]; EbObjectWrapper _ebObject = (new EbObjectWrapper { Json = dr[0].ToString(), VersionNumber = dr[1].ToString(), EbObjectType = (dr[4] != DBNull.Value) ? Convert.ToInt32(dr[4]) : 0, Status = Enum.GetName(typeof(ObjectLifeCycleStatus), Convert.ToInt32(dr[2])), Tags = dr[3].ToString(), RefId = null, }); api_o = EbSerializers.Json_Deserialize <EbApi>(_ebObject.Json); } return(api_o); }
public void CreateTables(SQLiteTableSchemaList SQLSchemaList) { try { foreach (SQLiteTableSchema SQLSchema in SQLSchemaList) { var tableExist = App.DataDB.DoScalar(string.Format(StaticQueries.TABLE_EXIST, SQLSchema.TableName)); if (Convert.ToInt32(tableExist) > 0) { EbDataTable dt = App.DataDB.DoQuery(string.Format(StaticQueries.COL_SCHEMA, SQLSchema.TableName)); List <SQLiteColumSchema> unCreated = this.GetNewControls(SQLSchema.Columns, dt.Columns); if (unCreated.Count > 0) { AlterTable(SQLSchema.TableName, unCreated); } } else { CreateTable(SQLSchema.TableName, SQLSchema.Columns); } } } catch (Exception e) { EbLog.Error($"Failed to create tables" + e.Message); } }
public RegisterResponse Post(RegisterRequest request) { RegisterResponse response = new RegisterResponse(); // var _InfraDb = base.ResolveService<IEbConnectionFactory>() as EbConnectionFactory; DbParameter[] parameters = { this.InfraConnectionFactory.DataDB.GetNewParameter("email", EbDbTypes.String, request.Email) // _InfraDb.DataDB.GetNewParameter("pwd", System.Data.DbType.String, (request.Password + request.Email).ToMD5Hash()) }; EbDataTable dt = this.InfraConnectionFactory.DataDB.DoQuery("INSERT INTO eb_tenants (email) VALUES ( @email) RETURNING id;", parameters); if (dt.Rows.Count > 0) { try { response.UserId = dt.Rows[0][0].ToString(); } catch (Exception e) { Console.WriteLine("Exception: " + e.ToString()); } } return(response); }
public void InitAutoId(string Table) { string query = PrefixExpr?.GetCode(); if (!string.IsNullOrWhiteSpace(query) && NetworkType == NetworkMode.Offline) { string prefix = null, idSyncd = null, idMax = null, idNxt = null; EbDataTable dt = App.DataDB.DoQuery(query); if (dt.Rows.Count > 0) { prefix = dt.Rows[0][0]?.ToString(); } dt = App.DataDB.DoQuery($"SELECT val FROM eb_latest_autoid WHERE key = '{Table}_{Name}'"); if (dt.Rows.Count > 0) { idSyncd = dt.Rows[0][0]?.ToString(); } dt = App.DataDB.DoQuery($"SELECT MAX({Name}) FROM {Table} WHERE {Name} LIKE '{prefix}%' LIMIT 1"); if (dt.Rows.Count > 0) { idMax = dt.Rows[0][0]?.ToString(); } if (!string.IsNullOrWhiteSpace(idSyncd) && !string.IsNullOrWhiteSpace(idMax)) { if (string.Compare(idSyncd, idMax, true) > 0) { idNxt = idSyncd; } else { idNxt = idMax; } } else if (string.IsNullOrWhiteSpace(idSyncd) && !string.IsNullOrWhiteSpace(idMax)) { idNxt = idMax; } else if (!string.IsNullOrWhiteSpace(idSyncd) && string.IsNullOrWhiteSpace(idMax)) { idNxt = idSyncd; } else if (string.IsNullOrWhiteSpace(idSyncd) && string.IsNullOrWhiteSpace(idMax)) { idNxt = prefix + "0".PadLeft(SerialLength, '0'); } int serialval; int.TryParse(idNxt.Substring(prefix.Length), out serialval); serialval++; idNxt = prefix + serialval.ToString().PadLeft(SerialLength, '0'); SetValue(idNxt); } }
public void SetValue(EbDataTable dataTable) { foreach (EbDataRow row in dataTable.Rows) { MobileTableRow tableRow = DR2TableRow(row); var rowView = GetRow(tableRow); Body.Children.Add(rowView); } }
private void FillLiveId(EbDataTable dt, EbDataRow dr, int liveId, string columName) { EbDataColumn col = dt.Columns[columName]; if (col != null) { dr[col.ColumnIndex] = liveId; } }
public static string GetRefIdByVerId(IDatabase ObjectsDB, int ObjVerId) { string sql = "SELECT refid FROM eb_objects_ver WHERE id = @id"; DbParameter[] p = { ObjectsDB.GetNewParameter("id", EbDbTypes.Int32, ObjVerId) }; EbDataTable _tbl = ObjectsDB.DoQuery(sql, p); return(_tbl.Rows.Count > 0 ? Convert.ToString(_tbl.Rows[0][0]) : null); }
private async Task SetData() { Device.BeginInvokeOnMainThread(() => Loader.IsVisible = true); EbDataTable Data = await this.GetData(SelectSearchBox.Text); this.Render(Data); Device.BeginInvokeOnMainThread(() => Loader.IsVisible = false); }