129 lines
5.9 KiB
C#
129 lines
5.9 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_BPAA: DAC
|
|
{
|
|
/// <summary>
|
|
/// 取得指定年度專案計畫代號與名稱,不含總公司
|
|
/// </summary>
|
|
/// <param name="year">指定年度</param>
|
|
/// <returns></returns>
|
|
public DataTable GetBpaa(int year)
|
|
{
|
|
DbCommand cmd = NewCommand();
|
|
cmd.CommandText =
|
|
@"SELECT BPPYN, ISNULL('【' + (SELECT TOP 1 BSSCR FROM BCLS WHERE BSPAR='BCUSZON' AND BSCLS=SUBSTRING(BPPYN,LEN(BPPYN)-5,1)) + '】', '') + BPPYM BPPYM
|
|
FROM BPAA WHERE (BPYER=@BPYER) AND (BPCSD IS NULL) AND (BPPYN <> '000000001') AND (BPPYN <> '103JYB00001') AND (BPPYN <> '103TYB00001')
|
|
ORDER BY BPPYN";
|
|
AddParam(cmd, "BPYER", year - PublicVariable.CY11);
|
|
return Select(cmd);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 取得所有年度專案計畫代號與名稱,含總公司
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataTable GetBpaaWithTY()
|
|
{
|
|
DbCommand cmd = NewCommand();
|
|
cmd.CommandText =
|
|
@"SELECT '000000001' BPPYN, '【非專案人員】' BPPYM
|
|
UNION
|
|
SELECT BPPYN, ISNULL('【' + (SELECT TOP 1 BSSCR FROM BCLS WHERE BSPAR='BCUSZON' AND BSCLS=SUBSTRING(BPPYN,LEN(BPPYN)-5,1)) + '】', '') + BPPYM BPPYM
|
|
FROM BPAA WHERE (BPCSD IS NULL) AND (BPPYN <> '000000001') AND (BPPYN <> '103JYB00001') AND (BPPYN <> '103TYB00001') AND (BPPYN <> '102JYB00001') AND (BPPYN <> '102TYB00001')
|
|
UNION
|
|
SELECT BPPYN, ISNULL('【' + (SELECT TOP 1 BSSCR FROM BCLS WHERE BSPAR='BCUSZON' AND BSCLS=SUBSTRING(BPPYN,LEN(BPPYN)-5,1)) + '】', '') + BPPYM BPPYM
|
|
FROM BPAA WHERE (BPCSD IS NULL) AND (BPPYN = '103JYB00001' OR BPPYN = '103TYB00001')
|
|
ORDER BY BPPYN";
|
|
return Select(cmd);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 取得所有年度專案計畫代號與名稱,含總公司,並加上一個空項目
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public DataTable GetBpaaWithTYPlusNone()
|
|
{
|
|
DbCommand cmd = NewCommand();
|
|
cmd.CommandText =
|
|
@"SELECT '' BPPYN, '【全部】' BPPYM
|
|
UNION
|
|
SELECT '000000001' BPPYN, '【非專案人員】' BPPYM
|
|
UNION
|
|
SELECT BPPYN, ISNULL('【' + (SELECT TOP 1 BSSCR FROM BCLS WHERE BSPAR='BCUSZON' AND BSCLS=SUBSTRING(BPPYN,LEN(BPPYN)-5,1)) + '】', '') + BPPYM BPPYM
|
|
FROM BPAA WHERE (BPCSD IS NULL) AND (BPPYN <> '000000001') AND (BPPYN <> '103JYB00001') AND (BPPYN <> '103TYB00001') AND (BPPYN <> '103JYB00001') AND (BPPYN <> '103TYB00001')
|
|
UNION
|
|
SELECT BPPYN, ISNULL('【' + (SELECT TOP 1 BSSCR FROM BCLS WHERE BSPAR='BCUSZON' AND BSCLS=SUBSTRING(BPPYN,LEN(BPPYN)-5,1)) + '】', '') + BPPYM BPPYM
|
|
FROM BPAA WHERE (BPCSD IS NULL) AND (BPPYN = '103JYB00001' OR BPPYN = '103TYB00001')
|
|
ORDER BY BPPYN";
|
|
return Select(cmd);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 取得指定年度專案計畫代號與名稱,含總公司
|
|
/// </summary>
|
|
/// <param name="year">指定年度</param>
|
|
/// <param name="companyID">公司別</param>
|
|
/// <returns></returns>
|
|
public DataTable GetBpaaWithTY(int year, string companyID)
|
|
{
|
|
DbCommand cmd = NewCommand();
|
|
cmd.CommandText =
|
|
@"SELECT '000000001' AS BPPYN, '【非專案人員】' AS BPPYM
|
|
UNION
|
|
SELECT BPPYN, BPPYM FROM
|
|
(
|
|
SELECT BPPYN,
|
|
ISNULL('【' + (SELECT TOP 1 BSSCR FROM BCLS WHERE BSPAR='BCUSZON' AND BSCLS=SUBSTRING(BPPYN,LEN(BPPYN)-5,1)) + '】', '') + BPPYM AS BPPYM,
|
|
(SELECT TOP 1 BPCPY FROM BPRJ WHERE BPRJ.BPPNM=BPAA.BPPNM) AS BPCPY
|
|
FROM BPAA WHERE (BPYER=@BPYER) AND (BPPYN <> '000000001') AND (BPPYN <> '103JYB00001') AND (BPPYN <> '103TYB00001') AND (BPPYN <> '102JYB00001') AND (BPPYN <> '102TYB00001')
|
|
UNION
|
|
SELECT BPPYN,
|
|
ISNULL('【' + (SELECT TOP 1 BSSCR FROM BCLS WHERE BSPAR='BCUSZON' AND BSCLS=SUBSTRING(BPPYN,LEN(BPPYN)-5,1)) + '】', '') + BPPYM AS BPPYM,
|
|
(SELECT TOP 1 BPCPY FROM BPRJ WHERE BPRJ.BPPNM=BPAA.BPPNM) AS BPCPY
|
|
FROM BPAA WHERE (BPPYN = '103JYB00001') OR (BPPYN = '103TYB00001')
|
|
) AS TMP1 WHERE BPCPY=@BPCPY
|
|
ORDER BY BPPYN";
|
|
|
|
// @"SELECT '000000001' BPPYN, '【非專案人員】' BPPYM
|
|
// UNION
|
|
// SELECT BPPYN, '【' + (SELECT TOP 1 BSSCR FROM BCLS WHERE BSPAR='BCUSZON' AND BSCLS=SUBSTRING(BPPYN,LEN(BPPYN)-5,1)) + '】' + BPPYM BPPYM
|
|
// FROM BPAA WHERE (BPYER=@BPYER) AND (BPPYN <> '000000001')
|
|
// ORDER BY BPPYN";
|
|
AddParam(cmd, "BPYER", year);
|
|
AddParam(cmd, "BPCPY", companyID);
|
|
return Select(cmd);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 取得指定年度專案計畫代號與名稱,含總公司,並加上一個空項目
|
|
/// </summary>
|
|
/// <param name="year">指定年度</param>
|
|
/// <returns></returns>
|
|
public DataTable GetBpaaWithTYPlusNone(int year)
|
|
{
|
|
DbCommand cmd = NewCommand();
|
|
cmd.CommandText =
|
|
@"SELECT '' BPPYN, '【全部】' BPPYM
|
|
UNION
|
|
SELECT '000000001' BPPYN, '【非專案人員】' BPPYM
|
|
UNION
|
|
SELECT BPPYN, ISNULL('【' + (SELECT TOP 1 BSSCR FROM BCLS WHERE BSPAR='BCUSZON' AND BSCLS=SUBSTRING(BPPYN,LEN(BPPYN)-5,1)) + '】', '') + BPPYM BPPYM
|
|
FROM BPAA WHERE (BPYER=@BPYER) AND (BPPYN <> '000000001') AND (BPPYN <> '103JYB00001') AND (BPPYN <> '103TYB00001') AND (BPPYN <> '102JYB00001') AND (BPPYN <> '102TYB00001')
|
|
UNION
|
|
SELECT BPPYN, ISNULL('【' + (SELECT TOP 1 BSSCR FROM BCLS WHERE BSPAR='BCUSZON' AND BSCLS=SUBSTRING(BPPYN,LEN(BPPYN)-5,1)) + '】', '') + BPPYM BPPYM
|
|
FROM BPAA WHERE (BPPYN = '103JYB00001' OR BPPYN = '103TYB00001')
|
|
ORDER BY BPPYN";
|
|
AddParam(cmd, "BPYER", year - PublicVariable.CY11);
|
|
return Select(cmd);
|
|
}
|
|
}
|
|
} |