chore: 首次簽入 Thinkyu ASP.NET 專案
- 加入 Visual Studio / ASP.NET .gitignore - 排除建置輸出、IDE 設定、NuGet packages、大型 MSI 安裝檔
This commit is contained in:
@@ -0,0 +1,182 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.Services;
|
||||
using System.Web.Script.Services;
|
||||
using WebLib;
|
||||
|
||||
namespace 報到系統
|
||||
{
|
||||
[WebService(Namespace = "http://tempuri.org/")]
|
||||
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
|
||||
[System.ComponentModel.ToolboxItem(false)]
|
||||
[ScriptService]
|
||||
public class RoleManageService : System.Web.Services.WebService
|
||||
{
|
||||
[WebMethod(EnableSession = true)]
|
||||
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
|
||||
public BaseResponse SearchEmployees(string keyword)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (string.IsNullOrEmpty(keyword))
|
||||
{
|
||||
return new BaseResponse
|
||||
{
|
||||
Success = true,
|
||||
Message = "請輸入搜尋關鍵字",
|
||||
Data = new NameValueList()
|
||||
};
|
||||
}
|
||||
|
||||
DAC_BPSN dac = new DAC_BPSN();
|
||||
var result = dac.Select(keyword);
|
||||
return new BaseResponse
|
||||
{
|
||||
Success = true,
|
||||
Message = "搜尋成功",
|
||||
Data = result ?? new NameValueList(),
|
||||
TotalCount = result != null ? result.Count : 0
|
||||
};
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return new BaseResponse
|
||||
{
|
||||
Success = false,
|
||||
Message = "搜尋員工失敗:" + ex.Message,
|
||||
Data = new NameValueList()
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
[WebMethod(EnableSession = true)]
|
||||
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
|
||||
public BaseResponse GetGroupMembers(string groupID)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (string.IsNullOrEmpty(groupID))
|
||||
{
|
||||
return new BaseResponse
|
||||
{
|
||||
Success = true,
|
||||
Message = "請選擇群組",
|
||||
Data = new NameValueList()
|
||||
};
|
||||
}
|
||||
|
||||
DAC_BWEH dac = new DAC_BWEH();
|
||||
var result = dac.SelectByGroupId(groupID);
|
||||
return new BaseResponse
|
||||
{
|
||||
Success = true,
|
||||
Message = "取得成功",
|
||||
Data = result ?? new NameValueList(),
|
||||
TotalCount = result != null ? result.Count : 0
|
||||
};
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return new BaseResponse
|
||||
{
|
||||
Success = false,
|
||||
Message = "取得群組成員失敗:" + ex.Message,
|
||||
Data = new NameValueList()
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
[WebMethod(EnableSession = true)]
|
||||
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
|
||||
public BaseResponse AddMemberToGroup(string groupID, string[] employeeIDs)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (string.IsNullOrEmpty(groupID) || employeeIDs == null || employeeIDs.Length == 0)
|
||||
{
|
||||
return new BaseResponse
|
||||
{
|
||||
Success = false,
|
||||
Message = "參數不正確"
|
||||
};
|
||||
}
|
||||
|
||||
DAC_BWEH dac = new DAC_BWEH();
|
||||
int successCount = 0;
|
||||
int totalCount = employeeIDs.Length;
|
||||
|
||||
foreach (string employeeID in employeeIDs)
|
||||
{
|
||||
if (dac.AddMemberToGroup(groupID, employeeID))
|
||||
{
|
||||
successCount++;
|
||||
}
|
||||
}
|
||||
|
||||
return new BaseResponse
|
||||
{
|
||||
Success = successCount > 0,
|
||||
Message = successCount == totalCount
|
||||
? $"成功加入 {successCount} 位成員"
|
||||
: $"成功加入 {successCount} 位成員,失敗 {totalCount - successCount} 位",
|
||||
TotalCount = successCount
|
||||
};
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return new BaseResponse
|
||||
{
|
||||
Success = false,
|
||||
Message = "加入群組失敗:" + ex.Message
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
[WebMethod(EnableSession = true)]
|
||||
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
|
||||
public BaseResponse RemoveMemberFromGroup(string groupID, string[] employeeIDs)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (string.IsNullOrEmpty(groupID) || employeeIDs == null || employeeIDs.Length == 0)
|
||||
{
|
||||
return new BaseResponse
|
||||
{
|
||||
Success = false,
|
||||
Message = "參數不正確"
|
||||
};
|
||||
}
|
||||
|
||||
DAC_BWEH dac = new DAC_BWEH();
|
||||
int successCount = 0;
|
||||
int totalCount = employeeIDs.Length;
|
||||
|
||||
foreach (string employeeID in employeeIDs)
|
||||
{
|
||||
if (dac.RemoveMemberFromGroup(groupID, employeeID))
|
||||
{
|
||||
successCount++;
|
||||
}
|
||||
}
|
||||
|
||||
return new BaseResponse
|
||||
{
|
||||
Success = successCount > 0,
|
||||
Message = successCount == totalCount
|
||||
? $"成功移除 {successCount} 位成員"
|
||||
: $"成功移除 {successCount} 位成員,失敗 {totalCount - successCount} 位",
|
||||
TotalCount = successCount
|
||||
};
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return new BaseResponse
|
||||
{
|
||||
Success = false,
|
||||
Message = "移除群組失敗:" + ex.Message
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user