" from dc_daily_logistics_supplier_transaction t1 ";
sql+=$" where t1.day>='{start.ToString("yyyy-MM-dd")}' and t1.day<='{end.ToString("yyyy-MM-dd")}' ";
varsqlcount=$"select count(0) from (select suppliername from dc_daily_logistics_supplier_transaction t1 where t1.day>='{start.ToString("yyyy-MM-dd")}' and t1.day<='{end.ToString("yyyy-MM-dd")}'";
//var sqlcount = $"select count(0) from (select suppliername from dc_daily_logistics_supplier_transaction t1 where t1.day>='{start.ToString("yyyy-MM-dd")}' and t1.day<='{end.ToString("yyyy-MM-dd")}'";
if(!string.IsNullOrEmpty(suppliername))
{
sql+=" and t1.suppliername=@suppliername";
sqlparam.Add("suppliername",suppliername);
sqlcount+=" and t1.suppliername=@suppliername";
//sqlcount += " and t1.suppliername=@suppliername";
}
sql+=" group by t1.suppliername ";
sqlcount+=" group by t1.suppliername) t0 ";
//sqlcount += " group by t1.suppliername) t0 ";
if(!string.IsNullOrEmpty(request.sort))
//if (!string.IsNullOrEmpty(request.sort))
//{
// sql += " order by t1."+request.sort+" "+request.order;
//}
//var sql_start_end = $"left join dc_daily_logistics_supplier_transaction t1 on t1.suppliername=t0.suppliername and t1.day='{start.ToString("yyyy-MM-dd")}'";
if(string.IsNullOrEmpty(suppliername))
{
sql+=" order by t1."+request.sort+" "+request.order;
sql+=$@"union all
select t1.suppliername,t1.amount_happen,t1.amount_pay,t1.amount_receipt,t1.amount_other,t1.amount_end from dc_daily_logistics_supplier_transaction t1 where t1.id in (
select max(t0.id) from dc_daily_logistics_supplier_transaction t0 where t0.day<'{start.ToString("yyyy-MM-dd")}'
and t0.suppliername in (select t1.suppliername from (
select suppliername from dc_daily_logistics_supplier_transaction group by suppliername) t1
left join (select suppliername from dc_daily_logistics_supplier_transaction where day>='{start.ToString("yyyy-MM-dd")}' and day<='{end.ToString("yyyy-MM-dd")}' group by suppliername) t2 on t1.suppliername=t2.suppliername
where t2.suppliername is null)
group by t0.suppliername)";
}
//var sql_start_end = $"left join dc_daily_logistics_supplier_transaction t1 on t1.suppliername=t0.suppliername and t1.day='{start.ToString("yyyy-MM-dd")}'";
sql=$@"select * from dc_daily_logistics_supplier_transaction where id = (
select max(t0.id) from dc_daily_logistics_supplier_transaction t0 where t0.day<'{day.ToString("yyyy-MM-dd")}' and t0.suppliername='{name}' group by t0.suppliername)";