From e4dc2e28f5a6490a7b8f93143388dd33918b9748 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期二, 26 十二月 2023 10:21:50 +0800
Subject: [PATCH] 解决查询、删除、插入问题

---
 JiangSu/index.html                  |    2 +-
 JiangSu/Controllers/OpController.cs |    4 ++--
 JiangSu/cs/ModelDAL.cs              |   21 +++++++++++----------
 JiangSu/App_Data/js.db              |    0 
 4 files changed, 14 insertions(+), 13 deletions(-)

diff --git a/JiangSu/App_Data/js.db b/JiangSu/App_Data/js.db
index ddd015a..2590bb8 100644
--- a/JiangSu/App_Data/js.db
+++ b/JiangSu/App_Data/js.db
Binary files differ
diff --git a/JiangSu/Controllers/OpController.cs b/JiangSu/Controllers/OpController.cs
index ec79de7..e0d8473 100644
--- a/JiangSu/Controllers/OpController.cs
+++ b/JiangSu/Controllers/OpController.cs
@@ -16,7 +16,7 @@
         {
             try
             {
-                return ModelDAL.SelectByPage(string.IsNullOrWhiteSpace(name) ? "" : name.ToString(), pageSize, pageIndex);
+                return ModelDAL.SelectByPage(name, pageSize, pageIndex);
             }
             catch (Exception ex)
             {
@@ -40,7 +40,7 @@
         }
 
         [HttpGet]
-        public int DeleteByIds([FromUri] List<long> ids)
+        public int DeleteByIds([FromUri] List<int> ids)
         {
             try
             {
diff --git a/JiangSu/cs/ModelDAL.cs b/JiangSu/cs/ModelDAL.cs
index 7ac5217..e21ad70 100644
--- a/JiangSu/cs/ModelDAL.cs
+++ b/JiangSu/cs/ModelDAL.cs
@@ -45,12 +45,10 @@
 
         public static List<Model> SelectByPage(string name, int pageSize = 10, int pageIndex = 1)
         {
-            string sql = string.Format("select * from model where upper(name) like @name order by id limit {0} offset {1}", pageSize, pageSize * (pageIndex - 1));
+            bool flag = string.IsNullOrWhiteSpace(name);
+            string sql = string.Format("select * from model {0} order by id limit {1} offset {2}", flag ? "" : "where upper(name) like @name", pageSize, pageSize * (pageIndex - 1));
 
-            SQLiteParameter param = new SQLiteParameter("@name");
-            param.Value = "%" + name.ToUpper() + "%";
-
-            DataTable dt = SQLiteHelper.GetDataTable(sql, param);
+            DataTable dt = flag ? SQLiteHelper.GetDataTable(sql) : SQLiteHelper.GetDataTable(sql, new SQLiteParameter("@name", "%" + name.Trim().ToUpper() + "%"));
             if (null == dt || dt.Rows.Count == 0)
             {
                 return null;
@@ -79,20 +77,23 @@
             return null == list || list.Count == 0 ? null : list[0];
         }
 
-        public static int DeleteByIds(List<long> list)
+        public static int DeleteByIds(List<int> ids)
         {
-            string ids = string.Join(",", list.ToArray());
-            string sql = string.Format("delete from model where id in ({0})", ids);
+            string str = string.Join(",", ids.ToArray());
+            string sql = string.Format("delete from model where id in ({0})", str);
 
             return SQLiteHelper.ExecuteNonQuery(sql);
         }
 
         public static int Insert(Model model)
         {
-            string sql = "insert into model (name, json) values (@name, @json)";
+            string sql = "insert into model (name, json) values (@name, @json);select last_insert_rowid();";
             SQLiteParameter[] sqlParams = GetParams<Model>(sql, model);
 
-            return SQLiteHelper.ExecuteNonQuery(sql, sqlParams);
+            //return SQLiteHelper.ExecuteNonQuery(sql, sqlParams);
+
+            object obj = SQLiteHelper.ExecuteScalar(sql, sqlParams);
+            return null == obj ? 0 : Convert.ToInt32(obj);
         }
 
         public static int UpdateById(Model model)
diff --git a/JiangSu/index.html b/JiangSu/index.html
index f720ca3..775e60f 100644
--- a/JiangSu/index.html
+++ b/JiangSu/index.html
@@ -66,7 +66,7 @@
 
   <a href="http://localhost/JiangSu/Op/SelectById?id=1">SelectById?id=1</a> <br />
 
-  <a href="http://localhost/JiangSu/Op/DeleteByIds?ids=2,3">DeleteByIds?ids=2,3</a> <br />
+  <a href="http://localhost/JiangSu/Op/DeleteByIds?ids=13&ids=14">DeleteByIds?ids=13&ids=14</a> <br />
 
   <form>
     id: <input id="id" name="id" value="3" /> <br />

--
Gitblit v1.9.3