Files
thinkyu/branches/1150807/Forms/課程企劃/PickupPlace.aspx.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

467 lines
21 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using WebLib;
namespace Education.Forms.課程企劃
{
public partial class PickupPlace : FormBase
{
private DAC_場地遴選 Dao場地遴選;
private int 課程ID;
private bool 可異動;
protected void Page_Load(object sender, EventArgs e)
{
FunctionName = "訓練課程企劃書 >> 場地遴選";
Title = FunctionName;
if (!IsPostBack)
hf課程ID.Value = Request["ID"];
課程ID = DAC.GetInt32(hf課程ID.Value);
Dao場地遴選 = new DAC_場地遴選(conn);
Form_View = fv場地;
Grid_View = gv場地;
if (IsPostBack)
{
Grid_View.DataBind();
lbPlaceA.Text = "(尚未選擇)";
lbPlaceB.Text = "(尚未選擇)";
lbPlaceC.Text = "(尚未選擇)";
if (hf場地A.Value != null && hf場地A.Value.Length > 0)
{
lbPlaceA.Text = String.Format("[{0:0000}] {1}", DAC.GetInt32(hf場地A.Value), Get場地名稱(hf場地A.Value));
}
if (hf場地B.Value != null && hf場地B.Value.Length > 0)
{
lbPlaceB.Text = String.Format("[{0:0000}] {1}", DAC.GetInt32(hf場地B.Value), Get場地名稱(hf場地B.Value));
}
if (hf場地C.Value != null && hf場地C.Value.Length > 0)
{
lbPlaceC.Text = String.Format("[{0:0000}] {1}", DAC.GetInt32(hf場地C.Value), Get場地名稱(hf場地C.Value));
}
}
else
{
UpdateUI();
}
btnPlaceA.OnClientClick = String.Format("selectPlace(\"{0}\", \"{1}\", \"{2}\"); return false;", hf場地A.ClientID, lbPlaceA.ClientID, txt場地名稱A.ClientID);
btnPlaceB.OnClientClick = String.Format("selectPlace(\"{0}\", \"{1}\", \"{2}\"); return false;", hf場地B.ClientID, lbPlaceB.ClientID, txt場地名稱B.ClientID);
btnPlaceC.OnClientClick = String.Format("selectPlace(\"{0}\", \"{1}\", \"{2}\"); return false;", hf場地C.ClientID, lbPlaceC.ClientID, txt場地名稱C.ClientID);
btnClearA.OnClientClick = String.Format("clearPlace(\"{0}\", \"{1}\", \"{2}\", \"{3}\", \"{4}\", \"{5}\", \"{6}\", \"{7}\", \"{8}\"); return false;",
hf場地A.ClientID, lbPlaceA.ClientID, 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("clearPlace(\"{0}\", \"{1}\", \"{2}\", \"{3}\", \"{4}\", \"{5}\", \"{6}\", \"{7}\", \"{8}\"); return false;",
hf場地B.ClientID, lbPlaceB.ClientID, 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("clearPlace(\"{0}\", \"{1}\", \"{2}\", \"{3}\", \"{4}\", \"{5}\", \"{6}\", \"{7}\", \"{8}\"); return false;",
hf場地C.ClientID, lbPlaceC.ClientID, txt場地名稱C.ClientID, txt安全舒適C.ClientID, txt空間大小C.ClientID, txt價格合理C.ClientID, txt交通便利C.ClientID, txt設備完善C.ClientID, lb合計C.ClientID);
UIControl();
(Master as PopupForm).RefreshOpener = true;
}
private void UIControl()
{
可異動 = Dao表單簽核主檔.表單可異動("課程企劃", 課程ID.ToString());
btnPlaceA.Visible = 可異動;
btnPlaceB.Visible = 可異動;
btnPlaceC.Visible = 可異動;
btnSave.Visible = 可異動;
//btnSaveA.Visible = 可異動;
//btnSaveB.Visible = 可異動;
//btnSaveC.Visible = 可異動;
btnClearA.Visible = 可異動;
btnClearB.Visible = 可異動;
btnClearC.Visible = 可異動;
txt場地名稱A.Enabled = 可異動;
txt場地名稱B.Enabled = 可異動;
txt場地名稱C.Enabled = 可異動;
//btnSaveComment.Visible = 可異動;
pnlPlace.Visible = 可異動;
}
protected void UpdateUI()
{
訓練課程企劃List v1 = Dao訓練課程企劃.SelectOne(課程ID);
if (v1.Count > 0)
{
lb課程企劃.Text = String.Format("[{0}] {1}", v1[0].顯示編號, v1[0].訓練名稱);
}
//送簽1.表單ID = hf課程ID.Value;
//送簽1.表單ID格式 = String.Format("[{0}] {1}", v1[0].顯示編號, v1[0].訓練名稱);
//送簽1.訓練課程企劃編號 = 課程ID;
//送簽1.編號2 = 0;
//送簽1.DataBind();
lbPlaceA.Text = "(尚未選擇)";
lbPlaceB.Text = "(尚未選擇)";
lbPlaceC.Text = "(尚未選擇)";
hf場地A.Value = "";
hf場地B.Value = "";
hf場地C.Value = "";
txt安全舒適A.Text = "";
txt空間大小A.Text = "";
txt價格合理A.Text = "";
txt交通便利A.Text = "";
txt設備完善A.Text = "";
txt場地名稱A.Text = "";
txt場地名稱A.Enabled = true;
lb合計A.Text = "";
txt安全舒適B.Text = "";
txt空間大小B.Text = "";
txt價格合理B.Text = "";
txt交通便利B.Text = "";
txt設備完善B.Text = "";
txt場地名稱B.Text = "";
txt場地名稱B.Enabled = true;
lb合計B.Text = "";
txt安全舒適C.Text = "";
txt空間大小C.Text = "";
txt價格合理C.Text = "";
txt交通便利C.Text = "";
txt設備完善C.Text = "";
txt場地名稱C.Text = "";
txt場地名稱C.Enabled = true;
lb合計C.Text = "";
txt總評.Text = "";
txt備註.Text = "";
場地遴選List 場地 = Dao場地遴選.SelectOne(課程ID);
if (場地.Count > 0)
{
if (場地[0].場地編號_A > 0)
{
var venueName = Get場地名稱(場地[0].場地編號_A);
lbPlaceA.Text = String.Format("[{0:0000}] {1}", 場地[0].場地編號_A, venueName);
hf場地A.Value = 場地[0].場地編號_A.ToString();
txt場地名稱A.Text = venueName;
txt場地名稱A.Enabled = false;
txt安全舒適A.Text = 場地[0].安全舒適_A.ToString();
txt空間大小A.Text = 場地[0].空間大小_A.ToString();
txt價格合理A.Text = 場地[0].價格合理_A.ToString();
txt交通便利A.Text = 場地[0].交通便利_A.ToString();
txt設備完善A.Text = 場地[0].設備完善_A.ToString();
lb合計A.Text = 場地[0].合計_A.ToString();
}
else if (!String.IsNullOrEmpty(場地[0].場地名稱_A))
{
txt場地名稱A.Text = 場地[0].場地名稱_A;
txt安全舒適A.Text = 場地[0].安全舒適_A.ToString();
txt空間大小A.Text = 場地[0].空間大小_A.ToString();
txt價格合理A.Text = 場地[0].價格合理_A.ToString();
txt交通便利A.Text = 場地[0].交通便利_A.ToString();
txt設備完善A.Text = 場地[0].設備完善_A.ToString();
lb合計A.Text = 場地[0].合計_A.ToString();
}
if (場地[0].場地編號_B > 0)
{
var venueName = Get場地名稱(場地[0].場地編號_B);
lbPlaceB.Text = String.Format("[{0:0000}] {1}", 場地[0].場地編號_B, venueName);
hf場地B.Value = 場地[0].場地編號_B.ToString();
txt場地名稱B.Text = venueName;
txt場地名稱B.Enabled = false;
txt安全舒適B.Text = 場地[0].安全舒適_B.ToString();
txt空間大小B.Text = 場地[0].空間大小_B.ToString();
txt價格合理B.Text = 場地[0].價格合理_B.ToString();
txt交通便利B.Text = 場地[0].交通便利_B.ToString();
txt設備完善B.Text = 場地[0].設備完善_B.ToString();
lb合計B.Text = 場地[0].合計_B.ToString();
}
else if (!String.IsNullOrEmpty(場地[0].場地名稱_B))
{
txt場地名稱B.Text = 場地[0].場地名稱_B;
txt安全舒適B.Text = 場地[0].安全舒適_B.ToString();
txt空間大小B.Text = 場地[0].空間大小_B.ToString();
txt價格合理B.Text = 場地[0].價格合理_B.ToString();
txt交通便利B.Text = 場地[0].交通便利_B.ToString();
txt設備完善B.Text = 場地[0].設備完善_B.ToString();
lb合計B.Text = 場地[0].合計_B.ToString();
}
if (場地[0].場地編號_C > 0)
{
var venueName = Get場地名稱(場地[0].場地編號_C);
lbPlaceC.Text = String.Format("[{0:0000}] {1}", 場地[0].場地編號_C, venueName);
hf場地C.Value = 場地[0].場地編號_C.ToString();
txt場地名稱C.Text = venueName;
txt場地名稱C.Enabled = false;
txt安全舒適C.Text = 場地[0].安全舒適_C.ToString();
txt空間大小C.Text = 場地[0].空間大小_C.ToString();
txt價格合理C.Text = 場地[0].價格合理_C.ToString();
txt交通便利C.Text = 場地[0].交通便利_C.ToString();
txt設備完善C.Text = 場地[0].設備完善_C.ToString();
lb合計C.Text = 場地[0].合計_C.ToString();
}
else if (!String.IsNullOrEmpty(場地[0].場地名稱_C))
{
txt場地名稱C.Text = 場地[0].場地名稱_C;
txt安全舒適C.Text = 場地[0].安全舒適_C.ToString();
txt空間大小C.Text = 場地[0].空間大小_C.ToString();
txt價格合理C.Text = 場地[0].價格合理_C.ToString();
txt交通便利C.Text = 場地[0].交通便利_C.ToString();
txt設備完善C.Text = 場地[0].設備完善_C.ToString();
lb合計C.Text = 場地[0].合計_C.ToString();
}
txt總評.Text = 場地[0].總評;
txt備註.Text = 場地[0].備註;
}
}
protected void btnPlaceSearch_Click(object sender, EventArgs e)
{
gv場地.DataBind();
if (gv場地.Rows.Count == 0)
lbMessage場地.Text = "請輸入適當的查詢條件重新查詢";
}
//protected void btnPlaceA_Click(object sender, EventArgs e)
//{
// hf場地A.Value = DAC.GetString(fv場地.SelectedValue);
// 場地List d = Dao場地.SelectOne(DAC.GetInt32(fv場地.SelectedValue));
// if (d.Count > 0)
// {
// lbPlaceA.Text = String.Format("[{0:0000}] {1}", d[0].編號, d[0].場地名稱);
// }
//}
//protected void btnPlaceB_Click(object sender, EventArgs e)
//{
// hf場地B.Value = DAC.GetString(fv場地.SelectedValue);
// 場地List d = Dao場地.SelectOne(DAC.GetInt32(fv場地.SelectedValue));
// if (d.Count > 0)
// {
// lbPlaceB.Text = String.Format("[{0:0000}] {1}", d[0].編號, d[0].場地名稱);
// }
//}
//protected void btnPlaceC_Click(object sender, EventArgs e)
//{
// hf場地C.Value = DAC.GetString(fv場地.SelectedValue);
// 場地List d = Dao場地.SelectOne(DAC.GetInt32(fv場地.SelectedValue));
// if (d.Count > 0)
// {
// lbPlaceC.Text = String.Format("[{0:0000}] {1}", d[0].編號, d[0].場地名稱);
// }
//}
//protected void btnClearA_Click(object sender, EventArgs e)
//{
// Dao場地遴選.ClearPlace(課程ID, "A");
// UpdateUI();
//}
//protected void btnClearB_Click(object sender, EventArgs e)
//{
// Dao場地遴選.ClearPlace(課程ID, "B");
// UpdateUI();
//}
//protected void btnClearC_Click(object sender, EventArgs e)
//{
// Dao場地遴選.ClearPlace(課程ID, "C");
// UpdateUI();
//}
//protected void btnSaveA_Click(object sender, EventArgs e)
//{
// Dao場地遴選.UpdatePlace(課程ID, "A",
// DAC.GetInt32(hf場地A.Value),
// DAC.GetInt32(txt安全舒適A.Text),
// DAC.GetInt32(txt空間大小A.Text),
// DAC.GetInt32(txt價格合理A.Text),
// DAC.GetInt32(txt交通便利A.Text),
// DAC.GetInt32(txt設備完善A.Text));
// UpdateUI();
//}
//protected void btnSaveB_Click(object sender, EventArgs e)
//{
// Dao場地遴選.UpdatePlace(課程ID, "B",
// DAC.GetInt32(hf場地B.Value),
// DAC.GetInt32(txt安全舒適B.Text),
// DAC.GetInt32(txt空間大小B.Text),
// DAC.GetInt32(txt價格合理B.Text),
// DAC.GetInt32(txt交通便利B.Text),
// DAC.GetInt32(txt設備完善B.Text));
// UpdateUI();
//}
//protected void btnSaveC_Click(object sender, EventArgs e)
//{
// Dao場地遴選.UpdatePlace(課程ID, "C",
// DAC.GetInt32(hf場地C.Value),
// DAC.GetInt32(txt安全舒適C.Text),
// DAC.GetInt32(txt空間大小C.Text),
// DAC.GetInt32(txt價格合理C.Text),
// DAC.GetInt32(txt交通便利C.Text),
// DAC.GetInt32(txt設備完善C.Text));
// UpdateUI();
//}
protected void btnSave_Click(object sender, EventArgs e)
{
場地遴選 item = Dao場地遴選.SelectOne(課程ID).FirstOrDefault();
if (item == null)
{
item = new 場地遴選()
{
課程企劃編號 = 課程ID,
場地編號_A = DAC.GetInt32(hf場地A.Value),
場地名稱_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 = DAC.GetInt32(hf場地B.Value),
場地名稱_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 = DAC.GetInt32(hf場地C.Value),
場地名稱_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 = DAC.GetInt32(hf場地A.Value);
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 = DAC.GetInt32(hf場地B.Value);
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 = DAC.GetInt32(hf場地C.Value);
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("儲存成功!");
}
protected void btnSaveComment_Click(object sender, EventArgs e)
{
Dao場地遴選.UpdateComment(課程ID, txt總評.Text, txt備註.Text);
}
protected void fv場地_DataBound(object sender, EventArgs e)
{
if (fv場地.CurrentMode == FormViewMode.ReadOnly)
{
int 編號 = DAC.GetInt32(fv場地.SelectedValue);
Image image1 = (fv場地.FindControl("Image1") as Image);
if (image1 != null)
{
string[] tmp = image1.ImageUrl.Split('?');
if (tmp.Length > 0 && !File.Exists(Server.MapPath(tmp[0])))
{
image1.ImageUrl = "~/picture/nopicture.jpg";
image1.Attributes.Remove("onclick");
image1.Style.Remove("cursor");
}
else
{
image1.Attributes.Add("onclick", GetOpenWindowJS("../Common/ShowLargePicture.aspx", "_picture", "pic", String.Format(Education.PublicVariable.場地照片路徑 + "{0:000000}_1.jpg", 編號)));
image1.Style.Add("cursor", "pointer");
}
}
Image image2 = (fv場地.FindControl("Image2") as Image);
if (image2 != null)
{
string[] tmp = image2.ImageUrl.Split('?');
if (tmp.Length > 0 && !File.Exists(Server.MapPath(tmp[0])))
{
image2.ImageUrl = "~/picture/nopicture.jpg";
image2.Attributes.Remove("onclick");
image2.Style.Remove("cursor");
}
else
{
image2.Attributes.Add("onclick", GetOpenWindowJS("../Common/ShowLargePicture.aspx", "_picture", "pic", String.Format(Education.PublicVariable.場地照片路徑 + "{0:000000}_2.jpg", 編號)));
image2.Style.Add("cursor", "pointer");
}
}
}
}
//protected void 送簽1_DataBinding(object sender, EventArgs e)
//{
// 訓練課程企劃List d = Dao訓練課程企劃.SelectOne(課程ID);
// if (d.Count == 0)
// 送簽1.可送簽 = false;
// else
// 送簽1.可送簽 = d[0].承辦.CompareTo(UserId) == 0;
//}
protected string GetFormControlId(string id)
{
if (可異動 && fv場地.PageIndex >= 0)
{
Control ctrl = fv場地.FindControl(id);
if (ctrl != null)
return fv場地.FindControl(id).ClientID;
else
return "";
}
else
{
return "";
}
}
}
}