📄 cw_publics.cs
字号:
using System;
using System.Data.SqlClient;
using com.unicafe.common;
using System.Web.UI.WebControls;
using com.ascs.plp.publics;
using com.unicafe.ui;
namespace Com.Ascs.Plp.Cw.Publics
{
/// <summary>
/// Com.Ascs.Plp.Cw.Publics 的摘要说明。
/// </summary>
public class CwInfo
{
public string JGDM; //机构代码
public string CurrentKJND; //会计年度
public string CurrentKJQJ; //会计期间
/// **************************************************************************
/// BEIGIN
/// <summary>
/// 财务信息对象构造函数
/// </summary>
/// **************************************************************************
public CwInfo()
{
}
/// **************************************************************************
/// END
/// **************************************************************************
/// **************************************************************************
/// BEIGIN
/// <summary>
/// 根据机构代码和时间执行财务信息对象构造函数
/// </summary>
/// <param name="sJGDM">机构代码</param>
/// <param name="TIME">时间</param>
/// **************************************************************************
public CwInfo(string sJGDM, DateTime TIME)
{
//定义SqlConnection对象、SqlCommand对象和SqlDataReader对象
SqlConnection Connection = new SqlConnection (com.unicafe.common.Configuration.GetDBConnectionString());
string sql = "Select KJND, KJQJBH From CW_KJQJ Where JGDM = '" + sJGDM + "' And KSRQ =(Select Max(KSRQ) from CW_KJQJ Where KSRQ <= @DQRQ And JSRQ >= @DQRQ And JGDM=@JGDM)";
SqlCommand cmd = Connection.CreateCommand();
cmd.Parameters.Add("@DQRQ", TIME.ToString("yyyy-MM-dd hh:mm:ss"));
cmd.Parameters.Add("@JGDM", sJGDM);
cmd.CommandText = sql;
SqlDataReader dr;
//打开数据库连接
Connection.Open();
//给当前会计年度和会计期间赋值
dr = cmd.ExecuteReader();
while (dr.Read())
{
JGDM = sJGDM;
CurrentKJND = dr[0].ToString();
CurrentKJQJ = dr[1].ToString();
}
//关闭数据库连接
Connection.Close();
}
/// **************************************************************************
/// END
/// **************************************************************************
/// **************************************************************************
/// BEIGIN
/// <summary>
/// 财务信息对象构造函数,同调用CwInfo(sJGDM, DateTime.Now)
/// </summary>
/// <param name="JGDM">机构代码</param>
/// **************************************************************************
public CwInfo(string sJGDM)
{
//定义SqlConnection对象、SqlCommand对象和SqlDataReader对象
SqlConnection Connection = new SqlConnection (com.unicafe.common.Configuration.GetDBConnectionString());
string sql = "Select KJND, KJQJBH From CW_KJQJ Where JGDM=@JGDM And KSRQ=(Select Max(KSRQ) from CW_KJQJ Where KSRQ <= @DQRQ And JSRQ >= @DQRQ And JGDM=@JGDM)";
SqlCommand cmd = Connection.CreateCommand();
cmd.Parameters.Add("@DQRQ", DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"));
cmd.Parameters.Add("@JGDM", sJGDM);
cmd.CommandText = sql;
SqlDataReader dr;
//打开数据库连接
Connection.Open();
//给当前会计年度和会计期间赋值
dr = cmd.ExecuteReader();
while (dr.Read())
{
JGDM = sJGDM;
CurrentKJND = dr[0].ToString();
CurrentKJQJ = dr[1].ToString();
}
//关闭数据库连接
Connection.Close();
}
/// **************************************************************************
/// END
/// **************************************************************************
/// **************************************************************************
/// BEIGIN
/// <summary>
/// 财务信息对象构造函数,同调用CwInfo(thePage.CurrentJGXX.JGDM, DateTime.Now)
/// </summary>
/// <param name="thePage">调用此方法的页面对象,调用前需要执行它的VerifyPage()方法,否则无法取得当前登录人所在机构的机构代码</param>
/// **************************************************************************
public CwInfo(com.unicafe.ui.UnicafePage thePage)
{
string sJGDM = thePage.CurrentJGXX.JGDM;
//定义SqlConnection对象、SqlCommand对象和SqlDataReader对象
SqlConnection Connection = new SqlConnection (com.unicafe.common.Configuration.GetDBConnectionString());
string sql = "Select KJND, KJQJBH From CW_KJQJ Where JGDM = '" + sJGDM + "' And KSRQ =(Select Max(KSRQ) from CW_KJQJ Where KSRQ <= @DQRQ And JSRQ >= @DQRQ And JGDM=@JGDM)";
SqlCommand cmd = Connection.CreateCommand();
cmd.Parameters.Add("@DQRQ", DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"));
cmd.Parameters.Add("@JGDM", sJGDM);
cmd.CommandText = sql;
SqlDataReader dr;
//打开数据库连接
Connection.Open();
//给当前会计年度和会计期间赋值
dr = cmd.ExecuteReader();
while (dr.Read())
{
JGDM = sJGDM;
CurrentKJND = dr[0].ToString();
CurrentKJQJ = dr[1].ToString();
}
//关闭数据库连接
Connection.Close();
}
/// **************************************************************************
/// END
/// **************************************************************************
/// **************************************************************************
/// BEIGIN
/// <summary>
/// 检查是否能够取得当前时间所在的会计年度和会计期间
/// </summary>
/// <returns>成功取得会计期间返回true,失败返回false</returns>
/// **************************************************************************
public bool KJQJ_Verify()
{
if (CurrentKJQJ != "")
{
return true;
}
else
{
return false;
}
}
/// **************************************************************************
/// END
/// **************************************************************************
/// *****************************************************************************
/// BEIGIN
/// <summary>
/// 查询当前会计期间的上一个会计期间
/// </summary>
/// <param name="JGDM"></param>
/// <returns></returns>
/// *****************************************************************************
public CwInfo GetPreviousKJQJ(string JGDM)
{
string sql = "SELECT JGDM, KJND, KJQJBH FROM CW_KJQJ WHERE JGDM=@JGDM And KSRQ = (SELECT MAX(KSRQ) FROM CW_KJQJ WHERE JGDM=@JGDM AND KSRQ < (SELECT KSRQ FROM CW_KJQJ WHERE DQQJBJ = 1 AND JGDM=@JGDM))";
return GetKJQJ(JGDM, sql);
}
/// *****************************************************************************
/// END
/// *****************************************************************************
/// *****************************************************************************
/// BEIGIN
/// <summary>
/// 查询当前会计期间
/// </summary>
/// <param name="JGDM"></param>
/// <returns></returns>
/// *****************************************************************************
public CwInfo GetThisKJQJ(string JGDM)
{
string sql = "Select JGDM, KJND, KJQJBH From CW_KJQJ Where JGDM=@JGDM And DQQJBJ='1'";
return GetKJQJ(JGDM, sql);
}
/// *****************************************************************************
/// END
/// *****************************************************************************
/// *****************************************************************************
/// BEIGIN
/// <summary>
/// 查询当前会计期间的下一个会计期间
/// </summary>
/// <param name="JGDM"></param>
/// <returns></returns>
/// *****************************************************************************
public CwInfo GetNextKJQJ(string JGDM)
{
string sql = "";
sql += "declare @KSRQ datetime;\n";
sql += "declare @KJND char(4);\n";
sql += "Select @KSRQ = (Select Min(KSRQ) From CW_KJQJ Where JGDM=@JGDM And KSRQ > (Select KSRQ From CW_KJQJ Where JGDM=@JGDM And DQQJBJ='1'));\n";
sql += "Select @KJND = (Select KJND From CW_KJQJ Where KSRQ=@KSRQ And JGDM=@JGDM);\n";
sql += "Select JGDM, KJND, KJQJBH From CW_KJQJ Where KSRQ=@KSRQ And JGDM=@JGDM And Exists (Select * From CW_KJQJ Where ZTQYBJ='1' And JGDM=@JGDM And KJND=@KJND);";
//string sql = "SELECT JGDM, KJND, KJQJBH FROM CW_KJQJ WHERE JGDM=@JGDM And Exists (Select * From CW_KJQJ Where ZTQYBJ='1' And KJND=@KJND) And KSRQ = (SELECT MIN(KSRQ) FROM CW_KJQJ WHERE JGDM=@JGDM AND KSRQ > (SELECT KSRQ FROM CW_KJQJ WHERE DQQJBJ = 1 AND JGDM=@JGDM))";
return GetKJQJ(JGDM, sql);
}
/// *****************************************************************************
/// END
/// *****************************************************************************
/// *****************************************************************************
/// BEIGIN
/// <summary>
/// 查询某年度的第一个会计期间
/// </summary>
/// <param name="JGDM">机构代码</param>
/// <param name="KJND">会计年度</param>
/// <returns>该机构的该会计年度中的第一个会计期间</returns>
/// *****************************************************************************
public CwInfo GetFirstKJQJ(string JGDM, string KJND)
{
string sql = "SELECT JGDM, KJND, KJQJBH FROM CW_KJQJ WHERE JGDM=@JGDM And Exists (Select * From CW_KJQJ Where ZTQYBJ='1' And KJND=@KJND And JGDM=@JGDM) And KSRQ = (SELECT MIN(KSRQ) FROM CW_KJQJ WHERE JGDM=@JGDM AND KJND=@KJND))";
return GetKJQJ(JGDM, KJND, sql);
}
/// *****************************************************************************
/// END
/// *****************************************************************************
/// *****************************************************************************
/// BEIGIN
/// <summary>
/// 查询某年度的最后一个会计期间
/// </summary>
/// <param name="JGDM">机构代码</param>
/// <param name="KJND">会计年度</param>
/// <returns>该机构的该会计年度中的最后一个会计期间</returns>
/// *****************************************************************************
public CwInfo GetLastKJQJ(string JGDM, string KJND)
{
string sql = "SELECT JGDM, KJND, KJQJBH FROM CW_KJQJ WHERE JGDM=@JGDM And Exists (Select * From CW_KJQJ Where ZTQYBJ='1' And KJND=@KJND And JGDM=@JGDM) And KSRQ = (SELECT MAX(KSRQ) FROM CW_KJQJ WHERE JGDM=@JGDM AND KJND=@KJND))";
return GetKJQJ(JGDM, KJND, sql);
}
/// *****************************************************************************
/// END
/// *****************************************************************************
/// *****************************************************************************
/// BEIGIN
/// <summary>
/// 查询会计期间
/// </summary>
/// <param name="JGDM"></param>
/// <param name="sql"></param>
/// <returns></returns>
/// *****************************************************************************
public CwInfo GetKJQJ(string JGDM, string sql)
{
try
{
CwInfo result = null;
SqlConnection cn = new SqlConnection (com.unicafe.common.Configuration.GetDBConnectionString());
cn.Open();
SqlCommand cmd = new SqlCommand(sql,cn);
cmd.Parameters.Add ("@JGDM",JGDM);
SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
result = new CwInfo();
if (dr["JGDM"] != null)
if (!System.DBNull.Equals(dr["JGDM"], System.DBNull.Value))
result.JGDM = (string)dr["JGDM"];
if (dr["KJND"] != null)
if (!System.DBNull.Equals(dr["KJND"], System.DBNull.Value))
result.CurrentKJND = (string)dr["KJND"];
if (dr["KJQJBH"] != null)
if (!System.DBNull.Equals(dr["KJQJBH"], System.DBNull.Value))
result.CurrentKJQJ = (string)dr["KJQJBH"];
}
dr.Close();
cn.Close();
return result;
}
catch(Exception e)
{
LogService.Write ("GetKJQJ(string JGDM, string sql)");
LogService.Write (e.Message);
return null;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -