📄 cw_kjqj.cs
字号:
cn.Close();
return result;
}
catch(Exception e)
{
LogService.Write ("FindCW_KJQJ()");
LogService.Write (e.Message);
return null;
}
}
public string[] GetDQKJQJ(string JGDM)
{
string strsql=string.Format("select * from CW_KJQJ where JGDM='{0}' and DQQJBJ='1'",JGDM);
DataTable dt=this.CreateDataTableFromSql(strsql);
string[] DQKJQJ=new string[2];
if(dt.Rows.Count==1)
{
DQKJQJ[0]=dt.Rows[0]["KJQJBH"].ToString();
DQKJQJ[1]=dt.Rows[0]["KJND"].ToString();
}
else
{
DQKJQJ[0]="NULL";
DQKJQJ[1]="NULL";
}
return DQKJQJ;
}
public string[] GetQYKJQJ(string JGDM,string KJND)
{
string strsql=string.Format("select * from CW_KJQJ where JGDM='{0}' and ZTQYBJ='1' and KJND='{1}'",JGDM,KJND);
DataTable dt=this.CreateDataTableFromSql(strsql);
string[] QYKJQJ=new string[3];
if(dt.Rows.Count==1)
{
QYKJQJ[0]=dt.Rows[0]["KJQJBH"].ToString();
QYKJQJ[1]=dt.Rows[0]["KJND"].ToString();
QYKJQJ[2]=dt.Rows[0]["JZBJ"].ToString();
}
else
{
QYKJQJ[0]="NULL";
QYKJQJ[1]="NULL";
QYKJQJ[2]="NULL";
}
return QYKJQJ;
}
public DataTable CreateDataTableFromSql(string strSql)
{
SqlConnection cn = new SqlConnection (com.unicafe.common.Configuration.GetDBConnectionString());
SqlDataAdapter SqlAD;
DataTable dt = new DataTable();
try
{
SqlAD = new SqlDataAdapter(strSql,cn);
SqlAD.Fill(dt);
}
catch(SqlException e)
{
string str_Err = e.Message.ToString();
}
return dt;
}
/// <summary>
/// 获得最小的会计期间编号
/// </summary>
/// <param name="JGDM">机构代码</param>
/// <param name="KJND">会计年度</param>
/// <returns>最小的会计期间编号</returns>
public string GetMinKJQJBH(string JGDM,string KJND)
{
string sMinKJQJBH=string.Empty;
string sql=string.Format("select KJQJBH,KSRQ from CW_KJQJ where JGDM='{0}' and KJND='{1}'",JGDM,KJND);
DataTable dt=this.CreateDataTableFromSql(sql);
if(dt.Rows.Count>0)
{
sMinKJQJBH=dt.Rows[0]["KJQJBH"].ToString();
string sKSRQ=dt.Rows[0]["KSRQ"].ToString();
if(dt.Rows.Count>1)
{
foreach(DataRow row in dt.Rows)
{
DateTime t1=Convert.ToDateTime(row["KSRQ"]);
DateTime t2=Convert.ToDateTime(sKSRQ);
int i=DateTime.Compare(t1,t2);
if(i<0)
{
sKSRQ=row["KSRQ"].ToString();
sMinKJQJBH=row["KJQJBH"].ToString();
}
}
}
}
return sMinKJQJBH;
}
/// <summary>
/// 获得最大的会计期间编号
/// </summary>
/// <param name="JGDM">机构代码</param>
/// <param name="KJND">会计年度</param>
/// <returns>最大的会计期间编号</returns>
public string GetMaxKJQJBH(string JGDM,string KJND,ref string sJSRQ)
{
int sMaxKJQJBH=0;
string sql=string.Format("select KJQJBH,KSRQ,JSRQ from CW_KJQJ where JGDM='{0}' and KJND='{1}'",JGDM,KJND);
DataTable dt=this.CreateDataTableFromSql(sql);
if(dt.Rows.Count>0)
{
sMaxKJQJBH=int.Parse(dt.Rows[dt.Rows.Count-1]["KJQJBH"].ToString());
string sKSRQ=dt.Rows[dt.Rows.Count-1]["KSRQ"].ToString();
sJSRQ=dt.Rows[dt.Rows.Count-1]["JSRQ"].ToString();
if(dt.Rows.Count>1)
{
foreach(DataRow row in dt.Rows)
{
DateTime t1=Convert.ToDateTime(row["KSRQ"]);
DateTime t2=Convert.ToDateTime(sKSRQ);
int i=DateTime.Compare(t1,t2);
if(i>0)
{
sKSRQ=row["KSRQ"].ToString();
sJSRQ=row["JSRQ"].ToString();
sMaxKJQJBH=int.Parse(row["KJQJBH"].ToString());
}
}
}
}
else
{
sJSRQ=string.Empty;
}
sMaxKJQJBH++;
return sMaxKJQJBH.ToString();
}
/// <summary>
/// 获得最大的会计期间编号
/// </summary>
/// <param name="JGDM">机构代码</param>
/// <param name="KJND">会计年度</param>
/// <returns>最大的会计期间编号</returns>
public string GetMaxKJQJBH(string JGDM,string KJND)
{
int sMaxKJQJBH=0;
string sql=string.Format("select KJQJBH,KSRQ,JSRQ from CW_KJQJ where JGDM='{0}' and KJND='{1}'",JGDM,KJND);
DataTable dt=this.CreateDataTableFromSql(sql);
if(dt.Rows.Count>0)
{
sMaxKJQJBH=int.Parse(dt.Rows[dt.Rows.Count-1]["KJQJBH"].ToString());
string sKSRQ=dt.Rows[dt.Rows.Count-1]["KSRQ"].ToString();
if(dt.Rows.Count>1)
{
foreach(DataRow row in dt.Rows)
{
DateTime t1=Convert.ToDateTime(row["KSRQ"]);
DateTime t2=Convert.ToDateTime(sKSRQ);
int i=DateTime.Compare(t1,t2);
if(i>0)
{
sKSRQ=row["KSRQ"].ToString();
sMaxKJQJBH=int.Parse(row["KJQJBH"].ToString());
}
}
}
}
return sMaxKJQJBH.ToString();
}
/// <summary>
/// 获得上一年度最大的会计期间编号结束日期
/// </summary>
/// <param name="JGDM">机构代码</param>
/// <param name="KJND">会计年度</param>
/// <returns>最大的会计期间编号结束日期</returns>
// public bool bADDKJQJ1(string JGDM,string KJND,ref string sReturn)
// {
// string sql=string.Format("select * from CW_KJQJ where JGDM='{0}'",JGDM);
// DataTable dt=this.CreateDataTableFromSql(sql);
// //判断会计期间表有没有记录
// if(dt.Rows.Count>0)
// {
// string sKJQJBH=this.GetQYKJQJ(JGDM,KJND)[0];
// //判断该年度帐套是否启用
// if(sKJQJBH!="NULL")
// {
// //该会计期间已经启用不能增加
// sReturn="该年度帐套已经启用,将不能再增加会计期间。";
// return false;
// }
// else
// {
// //判断上一年度是否有记录
// int nPreKJND=int.Parse(KJND)-1;
// string sql2=string.Format("select * from CW_KJQJ where JGDM='{0}' and KJND='{1}'",JGDM,nPreKJND.ToString());
// DataTable dt2=this.CreateDataTableFromSql(sql2);
// if(dt2.Rows.Count>0)
// {
// //判断上一年度帐套是否启用
// string PreKJND=this.GetDQKJQJ(JGDM)[1];
// if(PreKJND==nPreKJND.ToString())
// {
// //上一年的会计期间已经启用可以添加
// this.GetMaxKJQJBH(JGDM,PreKJND,ref sReturn);
// sReturn=string.Empty;
// return true;
// }
// else
// {
// //上一年的会计期间没有启用不能添加
// sReturn="上一年度帐套没有启用,该年度会计期间将不能添加";
// return false;
// }
// }
// else
// {
// string sql3=string.Format("select distinct KJND from CW_KJQJ order by KJND DESC ");
// DataTable dtMinKJND=this.CreateDataTableFromSql(sql3);
// if(KJND==dtMinKJND.Rows[0]["KJND"].ToString())
// {
// //本年度为帐套初始的第一年,没有上年记录,可以添加
// sReturn=string.Empty;
// return true;
// }
// else
// {
// //上一年没有会计期间记录不能添加
// sReturn="不能跨年度添加会计期间";
// return false;
// }
// }
//
// }
// }
// else
// {
// //没有记录可以添加
// sReturn=string.Empty;
// return true;
// }
// }
//
/// <summary>
/// 判断是否可以增加会计期间记录
/// </summary>
/// <param name="JGDM">机构代码</param>
/// <param name="KJND">会计年度</param>
/// <param name="sReturn">返回提示</param>
/// <returns>返回增加提示</returns>
public string sADDKJQJ(string JGDM,string KJND,ref string sReturn)
{
string sql=string.Format("select * from CW_KJQJ where JGDM='{0}'",JGDM);
DataTable dt=this.CreateDataTableFromSql(sql);
//判断会计期间表有没有记录
if(dt.Rows.Count>0)
{
string sKJQJBH=this.GetQYKJQJ(JGDM,KJND)[0];
//判断该年度帐套是否启用
if(sKJQJBH!="NULL")
{
//该会计期间已经启用不能增加
sReturn="该年度帐套已经启用,将不能再增加会计期间。";
return "0";
}
else
{
//判断上一年度是否有记录
int nPreKJND=int.Parse(KJND)-1;
string sql2=string.Format("select * from CW_KJQJ where JGDM='{0}' and KJND='{1}'",JGDM,nPreKJND.ToString());
DataTable dt2=this.CreateDataTableFromSql(sql2);
if(dt2.Rows.Count>0)
{
//判断上一年度帐套是否启用
string PreKJND=this.GetQYKJQJ(JGDM,nPreKJND.ToString())[1];
if(PreKJND!="NULL")
{
//上一年的会计期间已经启用可以添加
this.GetMaxKJQJBH(JGDM,PreKJND,ref sReturn);
return "1";
}
else
{
//上一年的会计期间没有启用不能添加
sReturn="上一年度帐套没有启用,该年度会计期间将不能添加";
return "0";
}
}
else
{
string sql3=string.Format("select distinct KJND from CW_KJQJ where JGDM='{0}' order by KJND ",JGDM);
DataTable dtMinKJND=this.CreateDataTableFromSql(sql3);
if(KJND==dtMinKJND.Rows[0]["KJND"].ToString())
{
//本年度为帐套初始的第一年,没有上年记录,可以添加
sReturn=string.Empty;
return "1";
}
else
{
//上一年没有会计期间记录不能添加
sReturn="上一年度帐套没有会计期间记录,不能添加该年度会计期间";
return "0";
}
}
}
}
else
{
//没有记录可以添加
sReturn=string.Empty;
return "1";
}
}
/// <summary>
/// 判断是否可以启用帐套
/// </summary>
/// <param name="JGDM">机构代码</param>
/// <param name="KJND">会计年度</param>
/// <param name="sReturn">返回提示</param>
/// <returns>返回启用提示</returns>
public string sQY(string JGDM,string KJND,ref string sReturn)
{
//判断该年度会计期间是否有纪律
string sqlCount=string.Format("select * from CW_KJQJ where JGDM='{0}' and KJND = '{1}'",JGDM,KJND);
DataTable dtCount=this.CreateDataTableFromSql(sqlCount);
if(dtCount.Rows.Count>0)
{
//判断帐套是启用过
if(this.GetQYKJQJ(JGDM,KJND)[0]!="NULL")
{
//该年度帐套已经启用
sReturn="该年度帐套已经启用过了!";
return "0";
}
else//未启用
{
//判断该年度起初余额是否平衡
bool bFlag=true;
if(bFlag)//平衡
{
//判断上一年度是否有记录
int nPreKJND=int.Parse(KJND)-1;
string sql=string.Format("select distinct KJND from CW_KJQJ where JGDM='{0}' order by KJND ",JGDM);
DataTable dtMinKJND=this.CreateDataTableFromSql(sql);
if(dtMinKJND.Rows.Count>0)
{
if(KJND==dtMinKJND.Rows[0]["KJND"].ToString())
{
//本年度为帐套初始的第一年,要修改两个标记‘DQQJBJ’,‘ZTQYBJ’
sReturn="DQQJBJ,ZTQYBJ";
return "1";
}
else
{
//本年度不是帐套初始的第一年,只修改一个标记‘ZTQYBJ’
sReturn="ZTQYBJ";
return "1";
}
}
else
{
//本年度为帐套初始的第一年,要修改两个标记‘DQQJBJ’,‘ZTQYBJ’
sReturn="DQQJBJ,ZTQYBJ";
return "1";
}
}
else//不平衡
{
sReturn="该年度帐套帐套起初余额不平衡,不能启用!";
return "0";
}
}
}
else
{
sReturn="该年度帐套没有会计期间纪录,不能启用!";
return "0";
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -