Files
thinkyu/branches/1150807/Import/非講師匯入.cs
T
sryang 577060bc78 chore: 首次簽入 Thinkyu ASP.NET 專案
- 加入 Visual Studio / ASP.NET .gitignore
- 排除建置輸出、IDE 設定、NuGet packages、大型 MSI 安裝檔
2026-09-10 09:42:37 +08:00

88 lines
3.3 KiB
C#

using System;
using System.Linq;
namespace Education
{
public class 非講師匯入 : ImportBase
{
public 非講師匯入()
{
columns.Add(new ImportColumn("編號", 10));
columns.Add(new ImportColumn("姓名", 10));
columns.Add(new ImportColumn("身分證字號", 16));
columns.Add(new ImportColumn("藝名網名", 10));
columns.Add(new ImportColumn("聯絡電話", 16));
columns.Add(new ImportColumn("電子郵件", 25));
columns.Add(new ImportColumn("戶籍地址_郵編", 10));
columns.Add(new ImportColumn("戶籍地址_縣市", 10));
columns.Add(new ImportColumn("戶籍地址_鄉鎮市區", 10));
columns.Add(new ImportColumn("戶籍地址_街道地址", 30));
columns.Add(new ImportColumn("居住地址_郵編", 10));
columns.Add(new ImportColumn("居住地址_縣市", 10));
columns.Add(new ImportColumn("居住地址_鄉鎮市區", 10));
columns.Add(new ImportColumn("居住地址_街道地址", 30));
columns.Add(new ImportColumn("職務內容", 100));
columns.Add(new ImportColumn("合作滿意度", 100));
columns.Add(new ImportColumn("窗口", 100));
columns.Add(new ImportColumn("是否接受邀約", 10, fieldName: "接受邀約", transformFunction: BoolTransform));
columns.Add(new ImportColumn("聯繫狀況與報價", 100));
columns.Add(new ImportColumn("備註", 100));
}
public override T SelectExisting<T>(T item)
{
var row = item as 非講師Item;
if (row == null)
return default(T);
var dac = new DAC_非講師(connection);
非講師Item existing = null;
if (!String.IsNullOrEmpty(row.編號))
{
existing = dac.SelectOne(row.編號).FirstOrDefault();
}
else
{
existing = dac.Existing(row.姓名, row.身分證字號);
}
if (existing != null && existing is T tExisting)
return tExisting;
return default(T);
}
public override void InsertOne<T>(T item)
{
var row = item as 非講師Item;
if (row == null)
return;
var dac = new DAC_非講師(connection);
dac.InsertOne(row);
}
public override void UpdateOne<T>(T newItem, T existingItem)
{
var newRow = newItem as 非講師Item;
var existingRow = existingItem as 非講師Item;
if (newRow == null || existingRow == null)
return;
var dac = new DAC_非講師(connection);
newRow.編號 = existingRow.編號;
newRow.DB_APPNO = existingRow.DB_APPNO;
dac.UpdateOne(newRow);
}
public override string ImportRowErrorMessage<T>(T item, string errorMessage)
{
var row = item as 非講師Item;
if (row != null)
{
return $"姓名:{row.姓名},身分證字號:{row.身分證字號},錯誤原因:{errorMessage}";
}
else
{
return base.ImportRowErrorMessage(item, errorMessage);
}
}
}
}