chore: 首次簽入 Thinkyu ASP.NET 專案
- 加入 Visual Studio / ASP.NET .gitignore - 排除建置輸出、IDE 設定、NuGet packages、大型 MSI 安裝檔
This commit is contained in:
@@ -0,0 +1,219 @@
|
||||
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;
|
||||
|
||||
/// <summary>
|
||||
/// 簽核關卡人員檔
|
||||
/// </summary>
|
||||
[DataObject]
|
||||
public class BsgpDAC : Wellan.Data.WDAC
|
||||
{
|
||||
private string _select =
|
||||
@" SELECT BSPYN, BSFLW, BSLVL, BSENO, TRDAT, TRMOD, TRUSR,
|
||||
CASE WHEN SUBSTRING(BSENO, 1, 1) = 'Z'
|
||||
THEN (SELECT TOP 1 BPNME FROM BPAP WHERE BPENO=BSENO)
|
||||
ELSE (SELECT TOP 1 BPNME FROM BPSNView WHERE BPENO=BSENO) END AS BSNME,
|
||||
CASE WHEN SUBSTRING(BSENO, 1, 1) = 'Z'
|
||||
THEN (SELECT TOP 1 BPEML FROM BPAP WHERE BPENO=BSENO)
|
||||
ELSE (SELECT TOP 1 BPEML FROM BPSNView WHERE BPENO=BSENO) END AS BSEML
|
||||
FROM BSGP ";
|
||||
private string _insert =
|
||||
@"INSERT INTO dbo.BSGP
|
||||
(BSPYN, BSFLW, BSLVL, BSENO, TRDAT, TRMOD, TRUSR)
|
||||
VALUES
|
||||
(@BSPYN, @BSFLW, @BSLVL, @BSENO, GETDATE(), 'INSERT', @TRUSR)";
|
||||
private string _update =
|
||||
@"UPDATE BSGP SET
|
||||
BSPYN = @BSPYN,
|
||||
BSFLW = @BSFLW,
|
||||
BSLVL = @BSLVL,
|
||||
BSENO = @BSENO,
|
||||
TRDAT = GETDATE(),
|
||||
TRMOD = 'UPDATE',
|
||||
TRUSR = @TRUSR
|
||||
WHERE BSPYN = @OLD_BSPYN
|
||||
AND BSFLW = @OLD_BSFLW
|
||||
AND BSLVL = @OLD_BSLVL
|
||||
AND BSENO = @OLD_BSENO";
|
||||
private string _delete =
|
||||
@"DELETE FROM BSGP
|
||||
WHERE BSPYN = @OLD_BSPYN
|
||||
AND BSFLW = @OLD_BSFLW
|
||||
AND BSLVL = @OLD_BSLVL
|
||||
AND BSENO = @OLD_BSENO";
|
||||
|
||||
public BsgpDAC()
|
||||
{
|
||||
}
|
||||
|
||||
public BsgpDAC(string connectionConfig, string connectionConfigName)
|
||||
: this()
|
||||
{
|
||||
this._connectionConfig = connectionConfig;
|
||||
this._connectionConfigName = connectionConfigName;
|
||||
}
|
||||
|
||||
public BsgpDAC(WQuery query)
|
||||
{
|
||||
this._query = query;
|
||||
}
|
||||
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectAll()
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
cmd.CommandText = _select + " ORDER BY BSPYN, BSFLW, BSLVL, BSENO ";
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectOne(string BSPYN, string BSFLW, int BSLVL, string BSENO)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
cmd.CommandText = _select + " WHERE BSPYN = @BSPYN AND BSFLW = @BSFLW AND BSLVL = @BSLVL AND BSENO = @BSENO ";
|
||||
AddParam(cmd, "BSPYN", BSPYN);
|
||||
AddParam(cmd, "BSFLW", BSFLW);
|
||||
AddParam(cmd, "BSLVL", BSLVL);
|
||||
AddParam(cmd, "BSENO", BSENO);
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectByLevel(string BSPYN, string BSFLW, int BSLVL)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
cmd.CommandText = _select + " WHERE BSPYN = @BSPYN AND BSFLW = @BSFLW AND BSLVL = @BSLVL ORDER BY BSENO ";
|
||||
AddParam(cmd, "BSPYN", BSPYN);
|
||||
AddParam(cmd, "BSFLW", BSFLW);
|
||||
AddParam(cmd, "BSLVL", BSLVL);
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable SelectForDropdown(string BSPYN, string BSFLW, int BSLVL)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
cmd.CommandText = _select + " WHERE BSPYN = @BSPYN AND BSFLW = @BSFLW AND BSLVL = @BSLVL ORDER BY BSENO ";
|
||||
//@"SELECT NULL AS BSPYN, NULL AS BSFLW, NULL AS BSLVL, NULL AS BSENO, NULL AS TRDAT,
|
||||
// NULL AS TRMOD, NULL AS TRUSR, NULL AS BSNME
|
||||
// UNION ALL "
|
||||
// + _select + " WHERE BSPYN = @BSPYN AND BSFLW = @BSFLW AND BSLVL = @BSLVL ORDER BY BSENO ";
|
||||
AddParam(cmd, "BSPYN", BSPYN);
|
||||
AddParam(cmd, "BSFLW", BSFLW);
|
||||
AddParam(cmd, "BSLVL", BSLVL);
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
[DataObjectMethod(DataObjectMethodType.Insert)]
|
||||
public void InsertOne(string BSPYN, string BSFLW, int BSLVL, string BSENO, string TRUSR)
|
||||
{
|
||||
if (SelectOne(BSPYN, BSFLW, BSLVL, BSENO).Rows.Count > 0)
|
||||
return;
|
||||
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
cmd.CommandText = _insert;
|
||||
AddParam(cmd, "BSPYN", BSPYN);
|
||||
AddParam(cmd, "BSFLW", BSFLW);
|
||||
AddParam(cmd, "BSLVL", BSLVL);
|
||||
AddParam(cmd, "BSENO", BSENO);
|
||||
AddParam(cmd, "TRUSR", TRUSR);
|
||||
Query.ExecuteNonQuery(cmd);
|
||||
}
|
||||
|
||||
[DataObjectMethod(DataObjectMethodType.Update)]
|
||||
public void UpdateOne(string OLD_BSPYN, string OLD_BSFLW, int OLD_BSLVL, string OLD_BSENO,
|
||||
string BSPYN, string BSFLW, int BSLVL, string BSENO, string TRUSR)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
cmd.CommandText = _update;
|
||||
AddParam(cmd, "BSPYN", BSPYN);
|
||||
AddParam(cmd, "BSFLW", BSFLW);
|
||||
AddParam(cmd, "BSLVL", BSLVL);
|
||||
AddParam(cmd, "BSENO", BSENO);
|
||||
AddParam(cmd, "OLD_BSPYN", OLD_BSPYN);
|
||||
AddParam(cmd, "OLD_BSFLW", OLD_BSFLW);
|
||||
AddParam(cmd, "OLD_BSLVL", OLD_BSLVL);
|
||||
AddParam(cmd, "OLD_BSENO", OLD_BSENO);
|
||||
AddParam(cmd, "TRUSR", TRUSR);
|
||||
Query.ExecuteNonQuery(cmd);
|
||||
}
|
||||
|
||||
[DataObjectMethod(DataObjectMethodType.Delete)]
|
||||
public void DeleteOne(string OLD_BSPYN, string OLD_BSFLW, int OLD_BSLVL, string OLD_BSENO)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
cmd.CommandText = _delete;
|
||||
AddParam(cmd, "OLD_BSPYN", OLD_BSPYN);
|
||||
AddParam(cmd, "OLD_BSFLW", OLD_BSFLW);
|
||||
AddParam(cmd, "OLD_BSLVL", OLD_BSLVL);
|
||||
AddParam(cmd, "OLD_BSENO", OLD_BSENO);
|
||||
Query.ExecuteNonQuery(cmd);
|
||||
}
|
||||
|
||||
public bool 是否是主要簽核(string BSENO)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
cmd.CommandText =
|
||||
@"SELECT COUNT(1)
|
||||
FROM BSGP
|
||||
WHERE BSLVL IN (1, 3) AND BSENO=@BSENO";
|
||||
AddParam(cmd, "BSENO", BSENO);
|
||||
return GetInt32Value(Query.ExecuteScalar(cmd)) > 0;
|
||||
}
|
||||
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable 我督導的專案(string BSENO)
|
||||
{
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
cmd.CommandText =
|
||||
@"SELECT A.BSPYN, B.BPPYM
|
||||
FROM BSGP A
|
||||
INNER JOIN BPAA B ON A.BSPYN=B.BPPYN
|
||||
WHERE BSLVL=3 AND BSENO=@BSENO
|
||||
ORDER BY BSPYN";
|
||||
AddParam(cmd, "BSENO", BSENO);
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable 我可簽核的專案(int Year1, int Year2, string BSENO)
|
||||
{
|
||||
string yearWhere = "";
|
||||
if (Year1 > 0 && Year2 > 0)
|
||||
yearWhere = " AND B.BPYER>=@BPYER1 AND B.BPYER<=@BPYER2 ";
|
||||
if (Year1 > 0 && Year2 == 0)
|
||||
yearWhere = " AND B.BPYER=@BPYER1 ";
|
||||
if (Year1 == 0 && Year2 > 0)
|
||||
yearWhere = " AND B.BPYER=@BPYER2 ";
|
||||
|
||||
DbCommand cmd = Query.NewCommand();
|
||||
cmd.CommandText = String.Format(
|
||||
@"SELECT A.BSPYN, B.BPPYM
|
||||
FROM BSGP A
|
||||
INNER JOIN BPAA B ON A.BSPYN=B.BPPYN {0}
|
||||
WHERE BSLVL IN (1, 3) AND BSENO=@BSENO
|
||||
UNION
|
||||
SELECT A.BSPYN, B.BPPYM
|
||||
FROM BSGP A
|
||||
INNER JOIN BPAA B ON A.BSPYN=B.BPPYN
|
||||
WHERE BSLVL IN (1, 3) AND BSENO=@BSENO AND (BPPYN = '103TYB00001' OR BPPYN = '103JYB00001')
|
||||
ORDER BY BSPYN", yearWhere);
|
||||
AddParam(cmd, "BPYER1", Year1);
|
||||
AddParam(cmd, "BPYER2", Year2);
|
||||
AddParam(cmd, "BSENO", BSENO);
|
||||
return Query.Select(cmd);
|
||||
}
|
||||
|
||||
[DataObjectMethod(DataObjectMethodType.Select)]
|
||||
public DataTable 我可簽核的專案(int Year, string BSENO)
|
||||
{
|
||||
return 我可簽核的專案(Year, 0, BSENO);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user