139 lines
4.5 KiB
C#
139 lines
4.5 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Web;
|
|
using System.Data;
|
|
using System.Data.Common;
|
|
using System.ComponentModel;
|
|
using WebLib;
|
|
|
|
namespace Education
|
|
{
|
|
[DataObject]
|
|
public class DAC_BCLS : DAC
|
|
{
|
|
public DAC_BCLS()
|
|
{ }
|
|
|
|
public DAC_BCLS(DbConnection conn)
|
|
: base(conn)
|
|
{ }
|
|
|
|
[DataObjectMethod(DataObjectMethodType.Select)]
|
|
public NameValueList Get類別資料By大類ForList(string 大類)
|
|
{
|
|
NameValueList result = new NameValueList();
|
|
|
|
DbCommand cmd = NewCommand();
|
|
cmd.CommandText = @"SELECT BSCLS, BSSCR FROM BCLS WHERE BSPAR=@BSPAR AND (BLOCK='' OR BLOCK IS NULL)";
|
|
AddParam(cmd, "BSPAR", 大類);
|
|
|
|
bool wantClose;
|
|
IDataReader reader = ExecuteReader(cmd, out wantClose);
|
|
try
|
|
{
|
|
result.Fill(reader, 1, 0);
|
|
cmd.Cancel();
|
|
reader.Close();
|
|
}
|
|
finally
|
|
{
|
|
cmd.Dispose();
|
|
reader.Dispose();
|
|
CloseConnection(wantClose);
|
|
}
|
|
|
|
return result;
|
|
}
|
|
|
|
[DataObjectMethod(DataObjectMethodType.Select)]
|
|
public NameValueList Get類別資料By大類ForDropDown(string 大類)
|
|
{
|
|
NameValueList result = new NameValueList();
|
|
result.Add("(請選擇)", DBNull.Value);
|
|
|
|
DbCommand cmd = NewCommand();
|
|
cmd.CommandText = @"SELECT BSCLS, BSSCR FROM BCLS WHERE BSPAR=@BSPAR AND (BLOCK='' OR BLOCK IS NULL)";
|
|
AddParam(cmd, "BSPAR", 大類);
|
|
|
|
bool wantClose;
|
|
IDataReader reader = ExecuteReader(cmd, out wantClose);
|
|
try
|
|
{
|
|
result.Fill(reader, 1, 0, false);
|
|
cmd.Cancel();
|
|
reader.Close();
|
|
}
|
|
finally
|
|
{
|
|
cmd.Dispose();
|
|
reader.Dispose();
|
|
CloseConnection(wantClose);
|
|
}
|
|
|
|
return result;
|
|
}
|
|
|
|
public string Get類別名稱(object 大類, object 類別編號)
|
|
{
|
|
if (大類 == null)
|
|
大類 = DBNull.Value;
|
|
if (類別編號 == null)
|
|
類別編號 = DBNull.Value;
|
|
|
|
DbCommand cmd = NewCommand();
|
|
cmd.CommandText = @"SELECT BSSCR FROM BCLS WHERE BSPAR=@BSPAR AND BSCLS=@BSCLS";
|
|
AddParam(cmd, "BSPAR", 大類);
|
|
AddParam(cmd, "BSCLS", 類別編號);
|
|
string result;
|
|
ExecuteScalar(cmd, out result);
|
|
return result;
|
|
}
|
|
|
|
public void UpdateOne(object 大類, object 類別編號, object 類別值)
|
|
{
|
|
if (大類 == null)
|
|
大類 = DBNull.Value;
|
|
if (類別編號 == null)
|
|
類別編號 = DBNull.Value;
|
|
if (類別值 == null)
|
|
類別值 = DBNull.Value;
|
|
|
|
DbCommand cmd = NewCommand();
|
|
cmd.CommandText = @"SELECT COUNT(1) FROM BCLS WHERE BSPAR=@BSPAR AND BSCLS=@BSCLS";
|
|
AddParam(cmd, "BSPAR", 大類);
|
|
AddParam(cmd, "BSCLS", 類別編號);
|
|
int count;
|
|
ExecuteScalar(cmd, out count);
|
|
|
|
if (count == 0)
|
|
{
|
|
cmd.CommandText =
|
|
@"INSERT INTO BCLS (BSPAR, BSCLS, BSSCR, BLOCK, TRDAT, TRMOD, TRUSR, BSRMK, DB_APPNO)
|
|
VALUES (@BSPAR, @BSCLS, @BSSCR, '', GETDATE(), 'INSERT', @TRUSR, '', 1)";
|
|
AddParam(cmd, "BSPAR", 大類);
|
|
AddParam(cmd, "BSCLS", 類別編號);
|
|
AddParam(cmd, "BSSCR", 類別值);
|
|
AddParam(cmd, "TRUSR", CurrentUserId);
|
|
ExecuteNonQuery(cmd);
|
|
}
|
|
else
|
|
{
|
|
cmd.CommandText =
|
|
@"UPDATE BCLS
|
|
SET BSSCR = @BSSCR ,
|
|
TRDAT = GETDATE() ,
|
|
TRMOD = 'UPDATE' ,
|
|
TRUSR = @TRUSR ,
|
|
DB_APPNO = DB_APPNO + 1
|
|
WHERE BSPAR = @BSPAR
|
|
AND BSCLS = @BSCLS";
|
|
|
|
AddParam(cmd, "BSPAR", 大類);
|
|
AddParam(cmd, "BSCLS", 類別編號);
|
|
AddParam(cmd, "BSSCR", 類別值);
|
|
AddParam(cmd, "TRUSR", CurrentUserId);
|
|
ExecuteNonQuery(cmd);
|
|
}
|
|
}
|
|
}
|
|
} |