chore: 首次簽入 Thinkyu ASP.NET 專案
- 加入 Visual Studio / ASP.NET .gitignore - 排除建置輸出、IDE 設定、NuGet packages、大型 MSI 安裝檔
This commit is contained in:
@@ -0,0 +1,343 @@
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Configuration;
|
||||
using System.Collections;
|
||||
using System.Web;
|
||||
using System.Web.Security;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
using System.Web.UI.WebControls.WebParts;
|
||||
using System.Web.UI.HtmlControls;
|
||||
using System.Data.Common;
|
||||
using Wellan.Data;
|
||||
using Wellan.Common;
|
||||
using System.Text;
|
||||
using System.IO;
|
||||
using System.Drawing;
|
||||
|
||||
public partial class forms_customer_fmBcus : Wellan.Web.UI.WUserControlBase
|
||||
{
|
||||
private string _BCNUM = "";
|
||||
private string _BCNAM = "";
|
||||
private string _OLD_BCNUM = "";
|
||||
private string select = "SELECT * ";
|
||||
private string from = " FROM BCUS ";
|
||||
private string where = " WHERE 1=1 ";
|
||||
private string order = " ORDER BY BCNUM";
|
||||
private string _bcusCls = "";
|
||||
private string _bcusZon = "";
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
_BCNUM = ViewState["BCNUM"] != null ? ViewState["BCNUM"].ToString() : "";
|
||||
_BCNAM = ViewState["BCNAM"] != null ? ViewState["BCNAM"].ToString() : "";
|
||||
|
||||
//if (IsPostBack)
|
||||
// gvBCUS.DataBind();
|
||||
}
|
||||
|
||||
protected override void OnInit(EventArgs e)
|
||||
{
|
||||
base.OnInit(e);
|
||||
dsBCUSForm.ConnectionString = ConnectionString;
|
||||
dsBCUSGrid.ConnectionString = ConnectionString;
|
||||
|
||||
GetGridViewRowColor(gvBCUS);
|
||||
|
||||
switch (MultiView1.ActiveViewIndex)
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
break;
|
||||
}
|
||||
case 1:
|
||||
{
|
||||
Search();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 查詢按鈕
|
||||
protected void btnSearch_Click(object sender, EventArgs e)
|
||||
{
|
||||
ViewState["BCNUM"] = txtBCNUM.Text;
|
||||
ViewState["BCNAM"] = txtBCNAM.Text;
|
||||
|
||||
_BCNUM = txtBCNUM.Text;
|
||||
_BCNAM = txtBCNAM.Text;
|
||||
|
||||
|
||||
if (_BCNUM.Length == 0 &&
|
||||
_BCNAM.Length == 0)
|
||||
{
|
||||
cvMessage.ErrorMessage = GetString("NOSRHCOND");
|
||||
cvMessage.IsValid = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
MultiView1.ActiveViewIndex = 1;
|
||||
|
||||
Search();
|
||||
|
||||
gvBCUS.PageIndex = 0;
|
||||
gvBCUS.SelectedIndex = 0;
|
||||
gvBCUS.DataBind();
|
||||
}
|
||||
}
|
||||
|
||||
// 取消查詢按鈕
|
||||
protected void btnCancel_Click(object sender, EventArgs e)
|
||||
{
|
||||
MultiView1.ActiveViewIndex = 1;
|
||||
}
|
||||
|
||||
// 查詢動作
|
||||
private new void Search()
|
||||
{
|
||||
StringBuilder sql = new StringBuilder();
|
||||
sql.Append(select);
|
||||
sql.Append(from);
|
||||
sql.Append(where);
|
||||
dsBCUSGrid.SelectParameters.Clear();
|
||||
AddSearch(sql, dsBCUSGrid, "BCNUM", _BCNUM, "", true);
|
||||
AddSearch(sql, dsBCUSGrid, "BCNAM", _BCNAM, "", true);
|
||||
sql.Append(order);
|
||||
dsBCUSGrid.SelectCommand = sql.ToString();
|
||||
}
|
||||
|
||||
private new void CalcFields(SqlDataSourceCommandEventArgs e)
|
||||
{
|
||||
}
|
||||
|
||||
// dataSource 新增存檔之前
|
||||
protected void dsBCUSForm_Inserting(object sender, SqlDataSourceCommandEventArgs e)
|
||||
{
|
||||
CalcFields(e);
|
||||
e.Command.Parameters["@BCNUM"].Value =
|
||||
WGuard1.WNextRen(DateTime.UtcNow.AddHours(8), "BCUS", "BCNUM", String.Format("\"{0}{1}\"<9999>", _bcusZon, _bcusCls), " LEN(BCNUM)=6 ");
|
||||
}
|
||||
|
||||
// dataSource 更正存檔之前
|
||||
protected void dsBCUSForm_Updating(object sender, SqlDataSourceCommandEventArgs e)
|
||||
{
|
||||
CalcFields(e);
|
||||
}
|
||||
|
||||
protected void gvBCUS_DataBound(object sender, EventArgs e)
|
||||
{
|
||||
GridView_DataBound(sender, e);
|
||||
if (gvBCUS.SelectedIndex == -1)
|
||||
gvBCUS.SelectedIndex = 0;
|
||||
|
||||
// 返回時,回到之前選擇的那一筆
|
||||
if (ParamList.ContainsKey("BCNUM"))
|
||||
{
|
||||
string bcnum = WDAC.GetStringValue(ParamList["BCNUM"]);
|
||||
|
||||
DataView dv = dsBCUSGrid.Select(new DataSourceSelectArguments()) as DataView;
|
||||
dv.RowFilter = String.Format("BCNUM='{0}'", bcnum);
|
||||
if (dv.Count > 0)
|
||||
{
|
||||
int rowIndex = dv.Table.Rows.IndexOf(dv[0].Row);
|
||||
gvBCUS.PageIndex = (rowIndex / gvBCUS.PageSize);
|
||||
gvBCUS.SelectedIndex = rowIndex - gvBCUS.PageIndex * gvBCUS.PageSize;
|
||||
}
|
||||
|
||||
ParamList.Remove("BCNUM");
|
||||
}
|
||||
|
||||
fvBCUS.DataBind();
|
||||
}
|
||||
|
||||
protected void gvBCUS_PageIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
Search();
|
||||
gvBCUS.SelectedIndex = 0;
|
||||
gvBCUS.DataBind();
|
||||
}
|
||||
|
||||
protected void dsBCUSGrid_Selected(object sender, SqlDataSourceStatusEventArgs e)
|
||||
{
|
||||
if (e.AffectedRows == 0)
|
||||
{
|
||||
if (MultiView1.ActiveViewIndex == 0)
|
||||
{
|
||||
cvMessage.ErrorMessage = GetString("NODATA");
|
||||
cvMessage.IsValid = false;
|
||||
}
|
||||
|
||||
MultiView1.ActiveViewIndex = 0;
|
||||
cvMessage.ErrorMessage = GetString("NODATA");
|
||||
cvMessage.IsValid = false;
|
||||
}
|
||||
}
|
||||
|
||||
protected void fvBCUS_ItemCommand(object sender, FormViewCommandEventArgs e)
|
||||
{
|
||||
switch (e.CommandName)
|
||||
{
|
||||
case "Search":
|
||||
MultiView1.ActiveViewIndex = 0;
|
||||
SetClientFocus(txtBCNUM);
|
||||
break;
|
||||
case "Cancel":
|
||||
Search();
|
||||
fvBCUS.ChangeMode(FormViewMode.ReadOnly);
|
||||
fvBCUS_ModeChanged(sender, e);
|
||||
break;
|
||||
case "BPRJ":
|
||||
fvBCUS.DataBind();
|
||||
if (fvBCUS.DataItem != null)
|
||||
{
|
||||
DataRowView rv = fvBCUS.DataItem as DataRowView;
|
||||
ParamList.Clear();
|
||||
ParamList.Add("BCNUM", rv["BCNUM"]);
|
||||
DoAfterCommand("BPRJ");
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
protected void fvBCUS_ItemDeleted(object sender, FormViewDeletedEventArgs e)
|
||||
{
|
||||
Search();
|
||||
gvBCUS.DataBind();
|
||||
fvBCUS.DataBind();
|
||||
}
|
||||
|
||||
protected void fvBCUS_ItemInserted(object sender, FormViewInsertedEventArgs e)
|
||||
{
|
||||
Search();
|
||||
}
|
||||
|
||||
protected void fvBCUS_ItemUpdated(object sender, FormViewUpdatedEventArgs e)
|
||||
{
|
||||
Search();
|
||||
}
|
||||
|
||||
protected void fvBCUS_ModeChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (fvBCUS.CurrentMode == FormViewMode.ReadOnly)
|
||||
{
|
||||
gvBCUS.Visible = true;
|
||||
gvBCUS.DataBind();
|
||||
if (gvBCUS.Rows.Count > 0 && gvBCUS.SelectedIndex == -1)
|
||||
{
|
||||
gvBCUS.SelectedIndex = 0;
|
||||
}
|
||||
|
||||
if (OldMode == FormViewMode.Insert)
|
||||
{
|
||||
gvBCUS.PageIndex = gvBCUS.PageCount - 1;
|
||||
gvBCUS.DataBind();
|
||||
gvBCUS.SelectedIndex = gvBCUS.Rows.Count - 1;
|
||||
}
|
||||
|
||||
fvBCUS.DataBind();
|
||||
}
|
||||
else
|
||||
{
|
||||
switch (fvBCUS.CurrentMode)
|
||||
{
|
||||
case FormViewMode.Edit:
|
||||
break;
|
||||
case FormViewMode.Insert:
|
||||
break;
|
||||
}
|
||||
|
||||
gvBCUS.Visible = false;
|
||||
}
|
||||
}
|
||||
|
||||
protected void fvBCUS_ModeChanging(object sender, FormViewModeEventArgs e)
|
||||
{
|
||||
OldMode = (sender as FormView).CurrentMode;
|
||||
}
|
||||
|
||||
protected void fvBCUS_DataBound(object sender, EventArgs e)
|
||||
{
|
||||
switch (fvBCUS.CurrentMode)
|
||||
{
|
||||
case FormViewMode.Insert:
|
||||
SetClientFocus(fvBCUS, "txtBCUS_BCNAM");
|
||||
break;
|
||||
case FormViewMode.Edit:
|
||||
SetClientFocus(fvBCUS, "txtBCUS_BCNAM");
|
||||
break;
|
||||
case FormViewMode.ReadOnly:
|
||||
if (fvBCUS.DataItem != null)
|
||||
ViewState["OLD_BCNUM"] = (fvBCUS.DataItem as DataRowView)["BCNUM"];
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
protected void rvBCNUM1_ServerValidate(object source, ServerValidateEventArgs args)
|
||||
{
|
||||
// 檢查客戶編號是否重複
|
||||
_OLD_BCNUM = ViewState["OLD_BCNUM"] != null ? ViewState["OLD_BCNUM"].ToString() : "";
|
||||
args.IsValid = true;
|
||||
|
||||
if (args.Value == _OLD_BCNUM)
|
||||
return;
|
||||
|
||||
DbCommand cmd = Query.NewCommand("SELECT COUNT(1) FROM BCUS WHERE BCNUM=@BCNUM");
|
||||
cmd.Parameters.Add(Query.NewParameter("BCNUM", args.Value));
|
||||
object o = Query.ExecuteScalar(cmd);
|
||||
args.IsValid = (o == null || Convert.ToInt32(o) == 0);
|
||||
}
|
||||
|
||||
protected void gvBCUS_RowDataBound(object sender, GridViewRowEventArgs e)
|
||||
{
|
||||
SetGridViewMouseBehavier(gvBCUS, e.Row);
|
||||
//GridView_RowDataBound_Shrink_ViewState(sender, e);
|
||||
}
|
||||
|
||||
protected void gvBCUS_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
foreach (GridViewRow row in gvBCUS.Rows)
|
||||
SetGridViewMouseBehavier(gvBCUS, row);
|
||||
}
|
||||
|
||||
protected void cvBCIDN_ServerValidate(object source, ServerValidateEventArgs args)
|
||||
{
|
||||
// 檢查統一編號是否正確
|
||||
args.IsValid = WGuard1.WCheckUbiNumber(args.Value) == 0;
|
||||
}
|
||||
|
||||
protected void cvBCMQT_ServerValidate(object source, ServerValidateEventArgs args)
|
||||
{
|
||||
// 檢查員工人數應為正數
|
||||
int i;
|
||||
args.IsValid = args.Value != "" && int.TryParse(args.Value, out i) && i > 0;
|
||||
}
|
||||
|
||||
protected void fvBCUS_ItemDeleting(object sender, FormViewDeleteEventArgs e)
|
||||
{
|
||||
// 刪除前檢查
|
||||
// 檢查是否有專案資料
|
||||
DbCommand cmd = Query.NewCommand("SELECT COUNT(1) FROM BPRJ WHERE BPNUM=@BPNUM");
|
||||
cmd.Parameters.Add(Query.NewParameter("BPNUM", e.Keys["BCNUM"]));
|
||||
object o = Query.ExecuteScalar(cmd);
|
||||
if (o != null && Convert.ToInt32(o) > 0)
|
||||
{
|
||||
cvMessage.IsValid = false;
|
||||
cvMessage.ErrorMessage = "此客戶有專案資料,不可刪除";
|
||||
e.Cancel = true;
|
||||
}
|
||||
}
|
||||
|
||||
protected void fvBCUS_ItemInserting(object sender, FormViewInsertEventArgs e)
|
||||
{
|
||||
_bcusCls = (fvBCUS.FindControl("ddlClass") as DropDownList).SelectedValue;
|
||||
_bcusZon = (fvBCUS.FindControl("ddlZone") as DropDownList).SelectedValue;
|
||||
}
|
||||
|
||||
// 查詢畫面的新增按鈕
|
||||
protected void btnInsert_Click(object sender, EventArgs e)
|
||||
{
|
||||
gvBCUS.Visible = false;
|
||||
fvBCUS.ChangeMode(FormViewMode.Insert);
|
||||
MultiView1.ActiveViewIndex = 1;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user