using System; using System.Data; using System.Configuration; using System.Data.Common; using System.Collections; using System.Collections.Generic; using Wellan.Data; using Wellan.Common; using System.Transactions; using System.ComponentModel; /// /// BPSE 片語資料表資料處理類別 /// [DataObject] public class BpseDAC : Wellan.Data.WDAC { public BpseDAC() { } public BpseDAC(string connectionConfig, string connectionConfigName) : this() { this._connectionConfig = connectionConfig; this._connectionConfigName = connectionConfigName; } public BpseDAC(WQuery query) { this._query = query; } [DataObjectMethod(DataObjectMethodType.Select)] public DataTable SelectAll() { DbCommand cmd = Query.NewCommand(); cmd.CommandText = @"SELECT BPTYP, BPCNT FROM BPSE ORDER BY BPTYP, BPCNT"; return Query.Select(cmd); } [DataObjectMethod(DataObjectMethodType.Select)] public DataTable SelectOne(string BPTYP, string BPCNT) { DbCommand cmd = Query.NewCommand(); cmd.CommandText = @"SELECT BPTYP, BPCNT FROM BPSE WHERE BPTYP=@BPTYP AND BPCNT=@BPCNT"; Query.AddParam(cmd, "BPTYP", BPTYP); Query.AddParam(cmd, "BPCNT", BPCNT); return Query.Select(cmd); } [DataObjectMethod(DataObjectMethodType.Select)] public DataTable Select片語類別() { DbCommand cmd = Query.NewCommand(); cmd.CommandText = @"SELECT DISTINCT BPTYP FROM BPSE ORDER BY BPTYP"; return Query.Select(cmd); } [DataObjectMethod(DataObjectMethodType.Select)] public DataTable Select片語By類別(string BPTYP) { DbCommand cmd = Query.NewCommand(); cmd.CommandText = @"SELECT BPCNT FROM BPSE WHERE BPTYP=@BPTYP AND BPENB=1 ORDER BY BPORD, BPCNT"; Query.AddParam(cmd, "BPTYP", BPTYP); return Query.Select(cmd); } [DataObjectMethod(DataObjectMethodType.Insert)] public void InsertOne(string BPTYP, string BPCNT, string UserId) { if (SelectOne(BPTYP, BPCNT).Rows.Count == 0) { DbCommand cmdInsert = Query.NewCommand(); cmdInsert.CommandText = @"INSERT INTO BPSE (BPTYP, BPCNT, TRDAT, TRMOD, TRUSR) VALUES (@BPTYP, @BPCNT, GETDATE(), 'INSERT', @TRUSR)"; Query.AddParam(cmdInsert, "BPTYP", BPTYP); Query.AddParam(cmdInsert, "BPCNT", BPCNT); Query.AddParam(cmdInsert, "TRUSR", UserId); Query.ExecuteNonQuery(cmdInsert); } } [DataObjectMethod(DataObjectMethodType.Update)] public void UpdateOne(string OLD_BPTYP, string OLD_BPCNT, string BPTYP, string BPCNT, string UserId) { DbCommand cmdUpdate = Query.NewCommand(); cmdUpdate.CommandText = @"UPDATE BPSE SET BPTYP = @BPTYP, BPCNT = @BPCNT, TRDAT = GETDATE(), TRMOD = 'MODIFY', TRUSR = @TRUSR WHERE BPTYP=@OLD_BPTYP AND BPCNT=@OLD_BPCNT"; Query.AddParam(cmdUpdate, "BPTYP", BPTYP); Query.AddParam(cmdUpdate, "BPCNT", BPCNT); Query.AddParam(cmdUpdate, "TRUSR", UserId); Query.AddParam(cmdUpdate, "OLD_BPTYP", OLD_BPTYP); Query.AddParam(cmdUpdate, "OLD_BPCNT", OLD_BPCNT); Query.ExecuteNonQuery(cmdUpdate); } [DataObjectMethod(DataObjectMethodType.Delete)] public void DeleteOne(string OLD_BPTYP, string OLD_BPCNT) { DbCommand cmdDelete = Query.NewCommand(); cmdDelete.CommandText = @"DELETE FROM BPSE WHERE BPTYP=@OLD_BPTYP AND BPCNT=@OLD_BPCNT"; Query.AddParam(cmdDelete, "OLD_BPTYP", OLD_BPTYP); Query.AddParam(cmdDelete, "OLD_BPCNT", OLD_BPCNT); Query.ExecuteNonQuery(cmdDelete); } }