数据层应用举例
using System;
using System.Data;
using System.Data.SqlClient;
using Temco.DataAccess;
namespace Temco.MyDataAccess
{
public class ProjectLogDA : DataObjectBase
{
public ProjectLogDA()
{
this.DSTransaction = null;
}
public ProjectLogDA(IDbTransaction transaction)
{
this.DSTransaction = transaction;
}
/// <summary>
/// 维护简单select语句
/// 李号彩创建于2006-6-6
/// </summary>
/// <returns></returns>
protected override string GetSelectStatement()
{
return "select * from ProjectLog";
}
/// <summary>
/// 主键
/// 李号彩创建于2006-6-6
/// </summary>
/// <returns></returns>
protected override string GetIDColumnName()
{
return "PM_RowID";
}
/// <summary>
/// 根据主键标识或者标识串删除记录
/// 李号彩创建于2006-6-6
/// </summary>
/// <param name="pstr_state"></param>
/// <returns></returns>
public int Del(string pstr_state)
{
int i;
string strSql = "delete from ProjectLog where PM_RowID in (" + pstr_state + ")";
return i = Execute(strSql);
}
/// <summary>
/// 根据工作流标识删除相应记录
/// 李号彩创建于2006-6-6
/// </summary>
/// <param name="pstrJobID"></param>
/// <returns></returns>
public int DelByJobID(string pstrJobID)
{
int i;
string strSql = "delete from ProjectLog where tJobID in (" + pstrJobID + ")";
return i = Execute(strSql);
}
/// <summary>
/// 根据工作流标识取得对应的维护记录
/// 李号彩创建于2006-6-6
/// </summary>
/// <param name="plngJobID"></param>
/// <returns></returns>
public DataTable GetByJobID(long plngJobID)
{
string str_sql = GetSelectStatement() + " where tJobID=" + plngJobID.ToString();
return ListBySql(str_sql);
}
/// <summary>
/// 查询带有外关键字关联主要字段名称的select语句
/// 日志名称:tRequirName,编制人名称:tEmpName,电子文档名称:tDocName
/// 李号彩创建于2006-6-6
/// </summary>
/// <returns></returns>
private string GetSelectJoinStatement()
{
string strSql = "";
strSql = "select a.*,b.tEmpName,c.tProjectCode,c.tProjectName from ProjectLog a inner join Employee b on a.EmpID=b.pm_rowID left outer join Project c on a.PMCode=c.PMCode";
return strSql;
}
/// <summary>
/// 根据记录主键取得带有外表字段的记录
/// 李号彩创建于2006-6-6
/// </summary>
/// <param name="pstrPKCode"></param>
/// <returns></returns>
public DataTable GetJoinByPKID(string pstrPKID)
{
string str_sql = GetSelectJoinStatement() + " where a.PM_RowID='" + pstrPKID.ToString() + "'";
return ListBySql(str_sql);
}
/// <summary>
/// 根据申请人标识取得带有外表字段的属于该申请人申请的日志记录
/// 李号彩创建于2006-6-6
/// </summary>
/// <param name="plngEmpID"></param>
/// <returns></returns>
public DataTable GetJoinByEmpID(long plngEmpID)
{
string str_sql = GetSelectJoinStatement() + " where a.EmpID=" + plngEmpID.ToString();
return ListBySql(str_sql);
}
/// <summary>
/// 根据项目编码取得带有外表字段的属于该项目的日志记录
/// 李号彩创建于2006-6-6
/// </summary>
/// <param name="pstrPMCode"></param>
/// <returns></returns>
public DataTable GetJoinByPMCode(string pstrPMCode)
{
string str_sql = GetSelectJoinStatement() + " where a.PMCode='" + pstrPMCode.ToString() + "'";
return ListBySql(str_sql);
}
/// <summary>
/// 取得带有外表字段全部日志记录
/// 李号彩创建于2006-6-6
/// </summary>
/// <returns></returns>
public DataTable GetJoin()
{
string str_sql = GetSelectJoinStatement();
return ListBySql(str_sql);
}
}
}
浙公网安备 33010602011771号