110,533
社区成员
发帖
与我相关
我的任务
分享
public List<DataContract.ClinicInCharge.Records_Moneys> Querydgvlist(string months)//
{
DataContract.ClinicInCharge.RecordMoney_Add Add = new DataContract.ClinicInCharge.RecordMoney_Add();
List<DataContract.ClinicInCharge.RecordMoney_Add> Adds = new List<DataContract.ClinicInCharge.RecordMoney_Add>();
string sql = string.Empty, err = string.Empty;
DataTable dt = new DataTable();
sql = string.Format(@"
SELECT a.months, b.dept_code ,b.dept_name ,
c.user_code , isnull(c.user_name,username) as user_name,a.moneys,e.tax
,a.userid,a.deptid,a.id,a.RecordUser,a.RecordTime,a.iscw,a.isExtra
FROM Records_Moneys a
inner join public_dept_list b on a.deptid=b.deptid
left outer join public_user_list c on c.userid=a.userid
left join RecordMoney_tax e on a.userid=e.userid
where a.months='{0}'
order by a.months
", months);
dt = SqlHelper.QueryFromDatabase(ThisConn.sCono, sql, out err);
List<DataContract.ClinicInCharge.public_dataselect> itemNameselects =
ThisHQ.Base.Base.取基础数据列表s(DataContract.Enums.DataSelect.奖金分类.ToString());
DataTable dtCover = DataConverter.FillDataTable(itemNameselects.ToList());
if (dtCover.Rows.Count > 0)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
for (int j = 0; j < dt.Rows.Count; j++)
{
Add.MoneyID = DataConverter.ToInt(dt.Rows[i]["id"]);
Add.itemName = dtCover.Rows[i]["colvalue"].ToString();
dt.Columns.Add(Add.itemName, Type.GetType("System.String"));
DataTable dt1 = QueryMoneys(Add);
if (dt1.Rows.Count != 0)
{
Add.Moneys = DataConverter.ToDecimal(dt1.Rows[0]["Moneys"]);
}
else
{
Add.Moneys = 0;
}
dt.Rows[i][Add.itemName] = Add.Moneys;
}
}
}
if (err.Length > 0)
{
throw new Exception(err);
}
return DataConverter.DataTableToIList<DataContract.ClinicInCharge.Records_Moneys>(dt).ToList();
}
for (int i = 0; i < dtCover.Rows.Count; i++)
{
Add.itemName = dtCover.Rows[i]["colvalue"].ToString();
dt.Columns.Add(Add.itemName, Type.GetType("System.String"));
for (int j = 0; j < dt.Rows.Count; j++)
{
Add.MoneyID = DataConverter.ToInt(dt.Rows[j]["id"]);
DataTable dt1 = QueryMoneys(Add);
if (dt1.Rows.Count != 0)
{
Add.Moneys = DataConverter.ToDecimal(dt1.Rows[0]["Moneys"]);
}
else
{
Add.Moneys = 0;
}
dt.Rows[j][Add.itemName] = Add.Moneys;
}
for (int i = 0; i < dtCover.Rows.Count; i++)
{
Add.itemName = dtCover.Rows[i]["colvalue"].ToString();
dt.Columns.Add(Add.itemName, Type.GetType("System.String"));
}
for (int j = 0; j < dt.Rows.Count; j++)
{
Add.MoneyID = DataConverter.ToInt(dt.Rows[j]["id"]);
DataTable dt1 = QueryMoneys(Add);
if (dt1.Rows.Count != 0)
{
Add.Moneys = DataConverter.ToDecimal(dt1.Rows[0]["Moneys"]);
}
else
{
Add.Moneys = 0;
}
dt.Rows[j][Add.itemName] = Add.Moneys;
}
这样子写只会存入最后一列的数值。。