467 lines
21 KiB
C#
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 "";
|
|
}
|
|
}
|
|
}
|
|
} |