chore: 首次簽入 Thinkyu ASP.NET 專案

- 加入 Visual Studio / ASP.NET .gitignore
- 排除建置輸出、IDE 設定、NuGet packages、大型 MSI 安裝檔
This commit is contained in:
2026-09-10 09:42:37 +08:00
commit 577060bc78
2496 changed files with 501389 additions and 0 deletions
@@ -0,0 +1,286 @@
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Linq;
using WebLib;
namespace Education.Forms.
{
public partial class PickupMaterial : FormBase
{
private DAC_訓練課程企劃 Dao課程企劃;
private DAC_訓練課程內容 Dao課程內容;
private DAC_教材遴選 Dao教材遴選;
private int ID;
private int ;
protected bool ;
protected void Page_Load(object sender, EventArgs e)
{
FunctionName = "訓練課程企劃書 >> 訓練課程內容 >> 教材遴選";
Title = FunctionName;
if (!IsPostBack)
{
hf課程企劃ID.Value = Request["id"];
hf課程序號.Value = Request["class"];
}
ID = DAC.GetInt32(hf課程企劃ID.Value);
= DAC.GetInt32(hf課程序號.Value);
= Dao表單簽核主檔.("課程企劃", String.Format("{0}", ID));
Dao課程企劃 = new DAC_訓練課程企劃(conn);
Dao課程內容 = new DAC_訓練課程內容(conn);
Dao教材遴選 = new DAC_教材遴選(conn);
btnClearA.OnClientClick = String.Format("clearMaterial(\"{0}\", \"{1}\", \"{2}\", \"{3}\", \"{4}\", \"{5}\", \"{6}\"); return false;",
txt教材名稱A.ClientID, txt符合訓練目標A.ClientID, txt架構規劃完整性A.ClientID, txt符合課程時數A.ClientID, txt引起學習興趣A.ClientID, txt未來工作參考運用A.ClientID, lb合計A.ClientID);
btnClearB.OnClientClick = String.Format("clearMaterial(\"{0}\", \"{1}\", \"{2}\", \"{3}\", \"{4}\", \"{5}\", \"{6}\"); return false;",
txt教材名稱B.ClientID, txt符合訓練目標B.ClientID, txt架構規劃完整性B.ClientID, txt符合課程時數B.ClientID, txt引起學習興趣B.ClientID, txt未來工作參考運用B.ClientID, lb合計B.ClientID);
btnClearC.OnClientClick = String.Format("clearMaterial(\"{0}\", \"{1}\", \"{2}\", \"{3}\", \"{4}\", \"{5}\", \"{6}\"); return false;",
txt教材名稱C.ClientID, txt符合訓練目標C.ClientID, txt架構規劃完整性C.ClientID, txt符合課程時數C.ClientID, txt引起學習興趣C.ClientID, txt未來工作參考運用C.ClientID, lb合計C.ClientID);
if (!IsPostBack)
{
UpdateUI();
}
UIControl();
(Master as PopupForm).RefreshOpener = true;
}
private void UIControl()
{
btnSave.Visible = ;
btnClearA.Visible = ;
btnClearB.Visible = ;
btnClearC.Visible = ;
txt教材名稱A.Enabled = ;
txt教材名稱B.Enabled = ;
txt教材名稱C.Enabled = ;
txt符合訓練目標A.Enabled = ;
txt符合訓練目標B.Enabled = ;
txt符合訓練目標C.Enabled = ;
txt架構規劃完整性A.Enabled = ;
txt架構規劃完整性B.Enabled = ;
txt架構規劃完整性C.Enabled = ;
txt符合課程時數A.Enabled = ;
txt符合課程時數B.Enabled = ;
txt符合課程時數C.Enabled = ;
txt引起學習興趣A.Enabled = ;
txt引起學習興趣B.Enabled = ;
txt引起學習興趣C.Enabled = ;
txt未來工作參考運用A.Enabled = ;
txt未來工作參考運用B.Enabled = ;
txt未來工作參考運用C.Enabled = ;
txt總評.Enabled = ;
txt備註.Enabled = ;
}
private void UpdateUI()
{
List v1 = Dao課程企劃.SelectOne(ID);
List v2 = Dao課程內容.SelectOne(ID, );
List v3 = Dao教材遴選.SelectOne(ID, );
if (v1.Count > 0)
{
lb課程企劃.Text = String.Format("[{0}] {1}", v1[0]., v1[0].);
}
if (v2.Count > 0)
{
lb課程內容.Text = String.Format("[{0}] {1}", v2[0]., v2[0].);
}
txt教材名稱A.Text = "";
txt符合訓練目標A.Text = "";
txt架構規劃完整性A.Text = "";
txt符合課程時數A.Text = "";
txt引起學習興趣A.Text = "";
txt未來工作參考運用A.Text = "";
lb合計A.Text = "";
txt教材名稱B.Text = "";
txt符合訓練目標B.Text = "";
txt架構規劃完整性B.Text = "";
txt符合課程時數B.Text = "";
txt引起學習興趣B.Text = "";
txt未來工作參考運用B.Text = "";
lb合計B.Text = "";
txt教材名稱C.Text = "";
txt符合訓練目標C.Text = "";
txt架構規劃完整性C.Text = "";
txt符合課程時數C.Text = "";
txt引起學習興趣C.Text = "";
txt未來工作參考運用C.Text = "";
lb合計C.Text = "";
txt總評.Text = "";
txt備註.Text = "";
if (v3.Count > 0)
{
if (!String.IsNullOrEmpty(v3[0]._A))
{
txt教材名稱A.Text = v3[0]._A;
txt符合訓練目標A.Text = v3[0]._A.ToString();
txt架構規劃完整性A.Text = v3[0]._A.ToString();
txt符合課程時數A.Text = v3[0]._A.ToString();
txt引起學習興趣A.Text = v3[0]._A.ToString();
txt未來工作參考運用A.Text = v3[0]._A.ToString();
lb合計A.Text = (v3[0]._A + v3[0]._A + v3[0]._A + v3[0]._A + v3[0]._A).ToString();
}
if (!String.IsNullOrEmpty(v3[0]._B))
{
txt教材名稱B.Text = v3[0]._B;
txt符合訓練目標B.Text = v3[0]._B.ToString();
txt架構規劃完整性B.Text = v3[0]._B.ToString();
txt符合課程時數B.Text = v3[0]._B.ToString();
txt引起學習興趣B.Text = v3[0]._B.ToString();
txt未來工作參考運用B.Text = v3[0]._B.ToString();
lb合計B.Text = (v3[0]._B + v3[0]._B + v3[0]._B + v3[0]._B + v3[0]._B).ToString();
}
if (!String.IsNullOrEmpty(v3[0]._C))
{
txt教材名稱C.Text = v3[0]._C;
txt符合訓練目標C.Text = v3[0]._C.ToString();
txt架構規劃完整性C.Text = v3[0]._C.ToString();
txt符合課程時數C.Text = v3[0]._C.ToString();
txt引起學習興趣C.Text = v3[0]._C.ToString();
txt未來工作參考運用C.Text = v3[0]._C.ToString();
lb合計C.Text = (v3[0]._C + v3[0]._C + v3[0]._C + v3[0]._C + v3[0]._C).ToString();
}
txt總評.Text = v3[0].;
txt備註.Text = v3[0].;
}
}
private bool Validate分數()
{
string[] = { txt教材名稱A.Text.Trim(), txt教材名稱B.Text.Trim(), txt教材名稱C.Text.Trim() };
string[][] = {
new[] { txt符合訓練目標A.Text, txt架構規劃完整性A.Text, txt符合課程時數A.Text, txt引起學習興趣A.Text, txt未來工作參考運用A.Text },
new[] { txt符合訓練目標B.Text, txt架構規劃完整性B.Text, txt符合課程時數B.Text, txt引起學習興趣B.Text, txt未來工作參考運用B.Text },
new[] { txt符合訓練目標C.Text, txt架構規劃完整性C.Text, txt符合課程時數C.Text, txt引起學習興趣C.Text, txt未來工作參考運用C.Text }
};
string[] = { "一", "二", "三" };
for (int i = 0; i < 3; i++)
{
if (String.IsNullOrEmpty([i]))
continue;
foreach (string in [i])
{
int = DAC.GetInt32();
if ( < 0 || > 20)
{
ClientShowMessage(String.Format("請完整填寫教材{0}的評分(0~20)。", [i]));
return false;
}
}
}
return true;
}
protected void btnSave_Click(object sender, EventArgs e)
{
if (String.IsNullOrEmpty(txt教材名稱A.Text.Trim())
&& String.IsNullOrEmpty(txt教材名稱B.Text.Trim())
&& String.IsNullOrEmpty(txt教材名稱C.Text.Trim()))
{
ClientShowMessage("請至少輸入一項教材名稱。");
return;
}
if (!Validate分數())
return;
Item item = Dao教材遴選.SelectOne(ID, ).FirstOrDefault();
if (item == null)
{
item = new Item()
{
= ID,
= ,
_A = txt教材名稱A.Text,
_A = DAC.GetInt32(txt符合訓練目標A.Text),
_A = DAC.GetInt32(txt架構規劃完整性A.Text),
_A = DAC.GetInt32(txt符合課程時數A.Text),
_A = DAC.GetInt32(txt引起學習興趣A.Text),
_A = DAC.GetInt32(txt未來工作參考運用A.Text),
_B = txt教材名稱B.Text,
_B = DAC.GetInt32(txt符合訓練目標B.Text),
_B = DAC.GetInt32(txt架構規劃完整性B.Text),
_B = DAC.GetInt32(txt符合課程時數B.Text),
_B = DAC.GetInt32(txt引起學習興趣B.Text),
_B = DAC.GetInt32(txt未來工作參考運用B.Text),
_C = txt教材名稱C.Text,
_C = DAC.GetInt32(txt符合訓練目標C.Text),
_C = DAC.GetInt32(txt架構規劃完整性C.Text),
_C = DAC.GetInt32(txt符合課程時數C.Text),
_C = DAC.GetInt32(txt引起學習興趣C.Text),
_C = DAC.GetInt32(txt未來工作參考運用C.Text),
= txt總評.Text,
= txt備註.Text
};
Dao教材遴選.InsertOne(item);
}
else
{
item._A = txt教材名稱A.Text;
item._A = DAC.GetInt32(txt符合訓練目標A.Text);
item._A = DAC.GetInt32(txt架構規劃完整性A.Text);
item._A = DAC.GetInt32(txt符合課程時數A.Text);
item._A = DAC.GetInt32(txt引起學習興趣A.Text);
item._A = DAC.GetInt32(txt未來工作參考運用A.Text);
item._B = txt教材名稱B.Text;
item._B = DAC.GetInt32(txt符合訓練目標B.Text);
item._B = DAC.GetInt32(txt架構規劃完整性B.Text);
item._B = DAC.GetInt32(txt符合課程時數B.Text);
item._B = DAC.GetInt32(txt引起學習興趣B.Text);
item._B = DAC.GetInt32(txt未來工作參考運用B.Text);
item._C = txt教材名稱C.Text;
item._C = DAC.GetInt32(txt符合訓練目標C.Text);
item._C = DAC.GetInt32(txt架構規劃完整性C.Text);
item._C = DAC.GetInt32(txt符合課程時數C.Text);
item._C = DAC.GetInt32(txt引起學習興趣C.Text);
item._C = DAC.GetInt32(txt未來工作參考運用C.Text);
item. = txt總評.Text;
item. = txt備註.Text;
Dao教材遴選.UpdateOne(item);
}
UpdateUI();
ClientShowMessage("儲存成功!");
}
}
}