From 124102d5db2a2ace2f2d8484ceda658829657552 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期六, 06 一月 2024 14:14:52 +0800 Subject: [PATCH] 图片表的sql操作 --- JiangSu/cs/ImgDAL.cs | 66 ++++++++++++++++++++++++++++++++ 1 files changed, 65 insertions(+), 1 deletions(-) diff --git a/JiangSu/cs/ImgDAL.cs b/JiangSu/cs/ImgDAL.cs index ea345d8..62d3ebf 100644 --- a/JiangSu/cs/ImgDAL.cs +++ b/JiangSu/cs/ImgDAL.cs @@ -1,5 +1,9 @@ -锘縰sing System; +锘縰sing JiangSu.Models; +using Npgsql; +using System; using System.Collections.Generic; +using System.Data; +using System.Data.Common; using System.Linq; using System.Web; @@ -7,5 +11,65 @@ { public class ImgDAL { + 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)); + + DataTable dt = flag ? Tools.PGHelper.GetDataTable(sql) : Tools.PGHelper.GetDataTable(sql, new NpgsqlParameter("@name", "%" + name.Trim().ToUpper() + "%")); + if (null == dt || dt.Rows.Count == 0) + { + return null; + } + + List<Img> list = ModelHandler.FillModel<Img>(dt); + + return list; + } + + public static Img SelectById(long id) + { + string sql = "select id, name, path, json, st_astext(geom) geom from sd.img where id = @id"; + + DbParameter param = new NpgsqlParameter("@id", id); + + DataTable dt = Tools.PGHelper.GetDataTable(sql, param); + if (null == dt || dt.Rows.Count == 0) + { + return null; + } + + List<Img> list = ModelHandler.FillModel<Img>(dt); + + return null == list || list.Count == 0 ? null : list[0]; + } + + 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); + + return Tools.PGHelper.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); + + object obj = Tools.PGHelper.GetScalar(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); + + return Tools.PGHelper.ExecuteNonQuery(sql, sqlParams); + } } } -- Gitblit v1.9.3