diff --git a/abbott_2024_event.csproj b/abbott_2024_event.csproj
index 6123a8b..ae1503c 100644
--- a/abbott_2024_event.csproj
+++ b/abbott_2024_event.csproj
@@ -13213,6 +13213,12 @@
babyData.ashx
+
+ babyList.ashx
+
+
+ lineLogin.ashx
+
@@ -17688,6 +17694,8 @@
Web.config
+
+
10.0
diff --git a/webapi/babyList.ashx b/webapi/babyList.ashx
new file mode 100644
index 0000000..ecc1eb8
--- /dev/null
+++ b/webapi/babyList.ashx
@@ -0,0 +1 @@
+<%@ WebHandler Language="C#" CodeBehind="babyList.ashx.cs" Class="abbott_2024_event.webapi.babyList" %>
diff --git a/webapi/babyList.ashx.cs b/webapi/babyList.ashx.cs
new file mode 100644
index 0000000..3451fbf
--- /dev/null
+++ b/webapi/babyList.ashx.cs
@@ -0,0 +1,83 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Runtime.Serialization.Json;
+using System.Web.SessionState;
+using Dapper;
+using Dapper.Contrib.Extensions;
+using System.Data.SqlClient;
+
+namespace abbott_2024_event.webapi
+{
+ ///
+ /// babyList 的摘要描述
+ ///
+ public class babyList : IHttpHandler
+ {
+
+ SqlConnection conn = new SqlConnection(globalClass.appsettings("DBConnectionString"));
+ public void ProcessRequest(HttpContext context)
+ {
+ result objRet = new result();
+ DataContractJsonSerializer json = new DataContractJsonSerializer(objRet.GetType());
+ context.Response.ContentType = "application/json;charset=utf-8";
+
+ string line_uid = (context.Request["line_uid"] == null) ? "" : context.Request["line_uid"].ToString();
+
+ if (line_uid == "") {
+ objRet.ret = "no";
+ objRet.err_code = "2001";
+ objRet.message = "line_uid為空字串!";
+ json.WriteObject(context.Response.OutputStream, objRet);
+ }
+
+ lineUser lineUser = conn.QueryFirstOrDefault("select * from lineUser where line_uid = @line_uid", new { line_uid = line_uid });
+
+ if (lineUser == null) {
+ objRet.ret = "no";
+ objRet.err_code = "2002";
+ objRet.message = "無此line_uid的資料!";
+ json.WriteObject(context.Response.OutputStream, objRet);
+ }
+
+ List babyDatas = conn.Query("select * from babyData where line_uid = @line_uid", new { line_uid = line_uid }).ToList();
+
+ foreach (babyData data in babyDatas) {
+ baby baby = new baby();
+ baby.babyData_name = data.babyData_name;
+ baby.babyData_gender = data.babyData_sexual;
+ baby.babyData_birthday = data.babyData_birthday.ToString("yyyy/MM/dd");
+ objRet.babyList.Add(baby);
+ }
+
+ objRet.ret = "yes";
+
+ json.WriteObject(context.Response.OutputStream, objRet);
+ }
+
+ public class result
+ {
+ public string ret = "no";
+ public string err_code = "0000";
+ public string message = "";
+ public List babyList = new List();
+ }
+
+ public class baby
+ {
+ public string babyData_birthday { get; set; } = "";
+ public string babyData_name { get; set; } = "";
+ public string babyData_gender { get; set; } = "M";
+
+ }
+
+ public bool IsReusable
+ {
+ get
+ {
+ return false;
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/webapi/lineLogin.ashx b/webapi/lineLogin.ashx
new file mode 100644
index 0000000..14288ae
--- /dev/null
+++ b/webapi/lineLogin.ashx
@@ -0,0 +1 @@
+<%@ WebHandler Language="C#" CodeBehind="lineLogin.ashx.cs" Class="abbott_2024_event.webapi.lineLogin" %>
diff --git a/webapi/lineLogin.ashx.cs b/webapi/lineLogin.ashx.cs
new file mode 100644
index 0000000..073c952
--- /dev/null
+++ b/webapi/lineLogin.ashx.cs
@@ -0,0 +1,111 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Runtime.Serialization.Json;
+using System.Web.SessionState;
+using Dapper;
+using Dapper.Contrib.Extensions;
+using System.Data.SqlClient;
+
+namespace abbott_2024_event.webapi
+{
+ ///
+ /// lineLogin 的摘要描述
+ ///
+ public class lineLogin : IHttpHandler
+ {
+ SqlConnection conn = new SqlConnection(globalClass.appsettings("DBConnectionString"));
+
+ public void ProcessRequest(HttpContext context)
+ {
+ result objRet = new result();
+ DataContractJsonSerializer json = new DataContractJsonSerializer(objRet.GetType());
+ context.Response.ContentType = "application/json;charset=utf-8";
+
+ string line_uid = (context.Request["line_uid"] == null) ? "" : context.Request["line_uid"].ToString();
+ string line_displayName = (context.Request["line_displayname"] == null) ? "" : context.Request["line_displayname"].ToString();
+
+ if (line_uid == "")
+ {
+ objRet.ret = "no";
+ objRet.err_code = "2001";
+ objRet.message = "line_uid或line_displayname為空字串!";
+ json.WriteObject(context.Response.OutputStream, objRet);
+ }
+
+ if (line_displayName == "")
+ {
+ objRet.ret = "no";
+ objRet.err_code = "2001";
+ objRet.message = "line_uid或line_displayname為空字串!";
+ json.WriteObject(context.Response.OutputStream, objRet);
+ }
+
+ lineUser lineUser = conn.QueryFirstOrDefault("select * from lineUser where line_uid = @line_uid", new { line_uid = line_uid });
+
+ if (lineUser == null)
+ {
+ lineUser.lineUser_uid = globalClass.CreateRandomCode(32);
+ lineUser.line_uid = line_uid;
+ lineUser.line_displayName = line_displayName;
+
+ conn.Insert(lineUser);
+
+ objRet.ret = "yes";
+ objRet.isFirst = "Y";
+
+ json.WriteObject(context.Response.OutputStream, objRet);
+ }
+
+ if (lineUser != null) {
+ if (lineUser.line_displayName != line_displayName) {
+ lineUser.line_displayName= line_displayName;
+ lineUser.lineUser_modifydate = DateTime.Now;
+ conn.Update(lineUser);
+ }
+
+ List babyDatas = conn.Query("select * from babyData where line_uid = @line_uid", new { line_uid = line_uid }).ToList();
+
+ foreach (babyData data in babyDatas)
+ {
+ baby baby = new baby();
+ baby.babyData_name = data.babyData_name;
+ baby.babyData_gender = data.babyData_sexual;
+ baby.babyData_birthday = data.babyData_birthday.ToString("yyyy/MM/dd");
+ objRet.babyList.Add(baby);
+ }
+ objRet.isFirst = "N";
+ objRet.ret = "yes";
+ json.WriteObject(context.Response.OutputStream, objRet);
+ }
+
+
+ }
+
+ public class result
+ {
+ public string ret = "no";
+ public string err_code = "0000";
+ public string message = "";
+ public string isFirst = "N";
+ public List babyList = new List();
+ }
+
+ public class baby
+ {
+ public string babyData_birthday { get; set; } = "";
+ public string babyData_name { get; set; } = "";
+ public string babyData_gender { get; set; } = "M";
+
+ }
+
+ public bool IsReusable
+ {
+ get
+ {
+ return false;
+ }
+ }
+ }
+}
\ No newline at end of file