证件统计

This commit is contained in:
wyw 2026-04-23 14:53:09 +08:00
parent ee1b286bfa
commit ddabeb763a

View File

@ -229,7 +229,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI
} }
else else
{ {
dic.Add("@dtMax", dtSecrch.AddYears(1).AddSeconds(-1)); dic.Add("@dtMax", dtSecrch.AddMonths(1).AddSeconds(-1));
} }
} }
else else
@ -551,7 +551,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI
/// </summary> /// </summary>
/// <param name="filter"></param> /// <param name="filter"></param>
[HttpPost, Route("SubCertificateType")] [HttpPost, Route("SubCertificateType")]
public JsonActionResult<List<CertificateType>> SubCertificateType([FromBody] KeywordFilter filter) public JsonActionResult<List<List<string>>> SubCertificateType([FromBody] KeywordFilter filter)
{ {
return SafeExecute(() => return SafeExecute(() =>
{ {
@ -576,6 +576,7 @@ namespace APT.SC.WebApi.Controllers.Api.BI
DataSet ds = DBHelper.ExecProcedure(strConn, "proc_HomeSESubCertificateType", dic, HttpContext.Request.Path); DataSet ds = DBHelper.ExecProcedure(strConn, "proc_HomeSESubCertificateType", dic, HttpContext.Request.Path);
DataTable tb = ds.Tables[0]; DataTable tb = ds.Tables[0];
DataTable tbC = ds.Tables[1];
int Count = 0; int Count = 0;
int RCount = tb.Rows.Count; int RCount = tb.Rows.Count;
CertificateType mode = null; CertificateType mode = null;
@ -595,10 +596,39 @@ namespace APT.SC.WebApi.Controllers.Api.BI
mode.TCOUNT = Count; mode.TCOUNT = Count;
result.Add(mode); result.Add(mode);
} }
return result;
}); List<string> listCerName = result.Select(e => e.NAME).Distinct().ToList();
List<string> listCN = new List<string>();
foreach (DataRow item in tbC.Rows)
{
listCN.Add(item["NAME"].ToString());
} }
List<List<string>> listResult = new List<List<string>>();
List<string> listT = new List<string>();
listT.Add("公司");
listT.AddRange(listCerName);
listT.Add("小计");
listResult.Add(listT);
List<string> listD = null;
int PerSum = 0;
foreach (var item in listCN)
{
listD = new List<string>();
PerSum = 0;
listD.Add(item);
foreach (var itemCerName in listCerName)
{
mode = result.FirstOrDefault(e => e.NAME == itemCerName && e.CNAME == item);
PerSum += (mode == null ? 0 : mode.TCOUNT);
listD.Add(mode == null ? "0" : mode.TCOUNT.ToString());
}
listD.Add(PerSum.ToString());
listResult.Add(listD);
}
return listResult;
});
}
} }
/// <summary> /// <summary>