| | |
| | | using System.Collections.Generic; |
| | | using System.Data; |
| | | using System.Data.Common; |
| | | using System.Data.SQLite; |
| | | using System.Linq; |
| | | using System.Web; |
| | | |
| | |
| | | public static List<Img> SelectByPage(string name, int pageSize = 10, int pageIndex = 1) |
| | | { |
| | | bool flag = string.IsNullOrWhiteSpace(name); |
| | | string sql = string.Format("select id, name, path, json, st_astext(geom) geom from sd.img {0} order by id limit {1} offset {2}", flag ? "" : "where upper(name) like @name", pageSize, pageSize * (pageIndex - 1)); |
| | | string sql = string.Format("select * from img {0} order by id limit {1} offset {2}", flag ? "" : "where upper(name) like @name", pageSize, pageSize * (pageIndex - 1)); |
| | | |
| | | DataTable dt = flag ? Tools.PGHelper.GetDataTable(sql) : Tools.PGHelper.GetDataTable(sql, new NpgsqlParameter("@name", "%" + name.Trim().ToUpper() + "%")); |
| | | DataTable dt = flag ? SQLiteHelper.GetDataTable(sql) : |
| | | SQLiteHelper.GetDataTable(sql, new SQLiteParameter("@name", "%" + name.Trim().ToUpper() + "%")); |
| | | if (null == dt || dt.Rows.Count == 0) |
| | | { |
| | | return null; |
| | |
| | | |
| | | public static Img SelectById(long id) |
| | | { |
| | | string sql = "select id, name, path, json, st_astext(geom) geom from sd.img where id = @id"; |
| | | string sql = "select * from img where id = @id"; |
| | | |
| | | DbParameter param = new NpgsqlParameter("@id", id); |
| | | SQLiteParameter param = new SQLiteParameter("@id", id); |
| | | |
| | | DataTable dt = Tools.PGHelper.GetDataTable(sql, param); |
| | | DataTable dt = SQLiteHelper.GetDataTable(sql, param); |
| | | if (null == dt || dt.Rows.Count == 0) |
| | | { |
| | | return null; |
| | |
| | | public static int DeleteByIds(List<int> ids) |
| | | { |
| | | string str = string.Join(",", ids.ToArray()); |
| | | string sql = string.Format("delete from sd.img where id in ({0})", str); |
| | | string sql = string.Format("delete from img where id in ({0})", str); |
| | | |
| | | return Tools.PGHelper.ExecuteNonQuery(sql); |
| | | return SQLiteHelper.ExecuteNonQuery(sql); |
| | | } |
| | | |
| | | public static int Insert(Img img) |
| | | { |
| | | string geom = string.IsNullOrWhiteSpace(img.geom) ? "null" : string.Format("ST_GeomFromText('{0}')", img.geom); |
| | | string sql = string.Format("insert into sd.img (name, path, json, geom) values (@name, @path, @json, {0}) returning id", geom); |
| | | DbParameter[] sqlParams = Tools.GetPGParams<Img>(sql, img); |
| | | string sql = "insert into img (name, path, json, x, y, z) values (@name, @path, @json, @x, @y, @z); select last_insert_rowid();"; |
| | | SQLiteParameter[] sqlParams = Tools.GetSQLiteParams<Img>(sql, img); |
| | | |
| | | object obj = Tools.PGHelper.GetScalar(sql, sqlParams); |
| | | object obj = SQLiteHelper.ExecuteScalar(sql, sqlParams); |
| | | |
| | | return null == obj ? 0 : Convert.ToInt32(obj); |
| | | } |
| | | |
| | | public static int UpdateById(Img img) |
| | | { |
| | | string geom = string.IsNullOrWhiteSpace(img.geom) ? "" : string.Format(", geom = ST_GeomFromText('{0}')", img.geom); |
| | | string sql = string.Format("update sd.img set name = @name, path = @path, json = @json{0} where id = @id", geom); |
| | | DbParameter[] sqlParams = Tools.GetPGParams<Img>(sql, img); |
| | | string sql = "update img set name = @name, path = @path, json = @json, x = @x, y = @y, z = @z where id = @id"; |
| | | SQLiteParameter[] sqlParams = Tools.GetSQLiteParams<Img>(sql, img); |
| | | |
| | | return Tools.PGHelper.ExecuteNonQuery(sql, sqlParams); |
| | | return SQLiteHelper.ExecuteNonQuery(sql, sqlParams); |
| | | } |
| | | } |
| | | } |