From 200ce83f5c9410ac6926584632ed117a2b7cd2de Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期五, 22 十二月 2023 16:14:49 +0800 Subject: [PATCH] 完成接口开发 --- JiangSu/index.html | 68 +++++++++++++++++++++++++++++++++ JiangSu/Controllers/OpController.cs | 18 ++++++++- JiangSu/cs/ModelDAL.cs | 20 +++++++++ JiangSu/App_Data/db.sql | 1 JiangSu/App_Data/js.db | 0 5 files changed, 103 insertions(+), 4 deletions(-) diff --git a/JiangSu/App_Data/db.sql b/JiangSu/App_Data/db.sql index 63249ec..964eb72 100644 --- a/JiangSu/App_Data/db.sql +++ b/JiangSu/App_Data/db.sql @@ -7,5 +7,6 @@ -- insert into model (name, json) values ('Test', '{"color": "#ffffff", "yaw": 0}'); select * from model; +select * from model where upper(name) like '%' order by id limit 10 offset 0; -------------------------------------------------------------------------------- diff --git a/JiangSu/App_Data/js.db b/JiangSu/App_Data/js.db index e08fa83..ddd015a 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 145f3a2..8a3f7b1 100644 --- a/JiangSu/Controllers/OpController.cs +++ b/JiangSu/Controllers/OpController.cs @@ -12,6 +12,20 @@ public class OpController : ApiController { [HttpGet] + public List<Model> SelectByPage(string name, int pageSize = 10, int pageIndex = 1) + { + try + { + return ModelDAL.SelectByPage(string.IsNullOrWhiteSpace(name) ? "" : name.ToString(), pageSize, pageIndex); + } + catch (Exception ex) + { + LogOut.Error(ex.StackTrace); + return null; + } + } + + [HttpGet] public Model SelectById(long id) { try @@ -42,13 +56,13 @@ } [HttpPost] - public int insert([FromBody] Model model) + public int Insert([FromBody] Model model) { try { if (null == model) return 0; - return ModelDAL.insert(model); + return ModelDAL.Insert(model); } catch (Exception ex) { diff --git a/JiangSu/cs/ModelDAL.cs b/JiangSu/cs/ModelDAL.cs index 45be61d..7ac5217 100644 --- a/JiangSu/cs/ModelDAL.cs +++ b/JiangSu/cs/ModelDAL.cs @@ -43,6 +43,24 @@ return list.ToArray(); } + 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)); + + SQLiteParameter param = new SQLiteParameter("@name"); + param.Value = "%" + name.ToUpper() + "%"; + + DataTable dt = SQLiteHelper.GetDataTable(sql, param); + if (null == dt || dt.Rows.Count == 0) + { + return null; + } + + List<Model> list = ModelHandler.FillModel<Model>(dt); + + return list; + } + public static Model SelectById(long id) { string sql = "select * from model where id = @id"; @@ -69,7 +87,7 @@ return SQLiteHelper.ExecuteNonQuery(sql); } - public static int insert(Model model) + public static int Insert(Model model) { string sql = "insert into model (name, json) values (@name, @json)"; SQLiteParameter[] sqlParams = GetParams<Model>(sql, model); diff --git a/JiangSu/index.html b/JiangSu/index.html index 497638a..ba890de 100644 --- a/JiangSu/index.html +++ b/JiangSu/index.html @@ -1,14 +1,80 @@ 锘�<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> + <title>姹熻嫃浜ゆ帶鏅烘収楂橀�熼」鐩�</title> + <meta http-equiv="Expires" content="0" /> + <meta http-equiv="Cache" content="no-cache" /> + <meta http-equiv="Pragma" content="no-cache" /> + <meta http-equiv="Cache-control" content="no-cache" /> + <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - <title></title> + <script src="Scripts/jquery-1.7.1.min.js"></script> + <script> + $(function () { + // + }); + + function Insert() { + var data = getModel(); + + ajax("Op/Insert", "POST", data, null, null, function (rs) { + console.log(rs); + alert(rs); + }); + } + + function UpdateById() { + var data = getModel(); + + ajax("Op/UpdateById", "POST", data, null, null, function (rs) { + console.log(rs); + alert(rs); + }); + } + + function getModel() { + var model = { + id: $("#id").val(), + name: $("#name").val(), + json: $("#json").val() + }; + + return JSON.stringify(model); + } + + function ajax(url, type, data, dataType, contentType, fn) { + $.ajax({ + url: url, + type: type, + data: data, + dataType: dataType || "json", // html銆乯son銆乯sonp銆乻cript銆乼ext + contentType: contentType || "application/json", // "application/x-www-form-urlencoded" + success: function (data) { + fn(data); + }, + error: function (e) { + console.error(e); + } + }); + } + </script> </head> <body> <a href="http://localhost/JiangSu/Values/Get">GetValues</a> <br /> + <a href="http://localhost/JiangSu/Op/SelectByPage?pageSize=10&pageIndex=1&name=">SelectByPage?pageSize=10&pageIndex=1&name=</a> <br /> + <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 /> + + <form> + <input id="id" name="id" value="3" /> <br /> + <input id="name" name="name" value="A" /> <br /> + <input id="json" name="json" value="{}" /> <br /> + + <input type="button" value="Insert" onclick="Insert();" /> + <input type="button" value="UpdateById" onclick="UpdateById();" /><br /> + </form> </body> </html> -- Gitblit v1.9.3