|
|
@@ -84,7 +84,7 @@ namespace molilian.api.Controllers
|
|
|
string filter = string.Empty;
|
|
|
if (!string.IsNullOrEmpty(name))
|
|
|
{
|
|
|
- filter += $" AND accountId IN (SELECT ID FROM tk_pool WHERE company=@name)";
|
|
|
+ filter += $" AND accountId IN (SELECT ID FROM jd_pool WHERE company=@name)";
|
|
|
}
|
|
|
DateTime stime = DateTime.MinValue, etime = DateTime.MinValue;
|
|
|
if (report_date.Count == 2)
|
|
|
@@ -118,6 +118,104 @@ namespace molilian.api.Controllers
|
|
|
return new APIResult(new { data = result });
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ [HttpPost]
|
|
|
+ public ActionResult estimate_comm_total([FromBody] JsonElement form)
|
|
|
+ {
|
|
|
+ int page = form.Read("current", 1);
|
|
|
+ int size = form.Read("pageSize", 10);
|
|
|
+ bool getTotal = form.Read("getTotal", true);
|
|
|
+ string sort = form.Read<string>("sort");
|
|
|
+ string order = form.Read<string>("order");
|
|
|
+
|
|
|
+ var report_date = form.PathReadArray<string>("query_date[]");
|
|
|
+
|
|
|
+ string filter = string.Empty;
|
|
|
+ DateTime stime = DateTime.MinValue, etime = DateTime.MinValue;
|
|
|
+ if (report_date.Count == 2)
|
|
|
+ {
|
|
|
+ if (DateTime.TryParse(report_date[0], out stime) && DateTime.TryParse(report_date[1], out etime))
|
|
|
+ {
|
|
|
+ etime = etime.AddDays(1).AddSeconds(-1);
|
|
|
+ filter += $" AND report_date BETWEEN @stime AND @etime";
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ filter = filter.StringTrimStart(" AND ");
|
|
|
+
|
|
|
+ //排序
|
|
|
+ string orderBy = "report_date DESC";
|
|
|
+ if (!string.IsNullOrEmpty(order))
|
|
|
+ {
|
|
|
+ order = "descending".Equals(order) ? "DESC" : "ASC";
|
|
|
+ orderBy = sort switch
|
|
|
+ {
|
|
|
+ _ => $"{sort} {order}",
|
|
|
+ };
|
|
|
+ }
|
|
|
+ var result = new DBContext.Table("v_jd_estimate_comm")
|
|
|
+ .Where(filter, new { stime, etime })
|
|
|
+ .Page(size, page)
|
|
|
+ .Order(orderBy)
|
|
|
+ .PageList<JdEstimateCommDTO>(getTotal);
|
|
|
+
|
|
|
+ return new APIResult(new { data = result });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ [HttpPost]
|
|
|
+ public ActionResult estimate_comm([FromBody] JsonElement form)
|
|
|
+ {
|
|
|
+ int page = form.Read("current", 1);
|
|
|
+ int size = form.Read("pageSize", 10);
|
|
|
+ bool getTotal = form.Read("getTotal", true);
|
|
|
+ string sort = form.Read<string>("sort");
|
|
|
+ string order = form.Read<string>("order");
|
|
|
+ string name = form.Read<string>("keyword");
|
|
|
+
|
|
|
+ var report_date = form.PathReadArray<string>("query_date[]");
|
|
|
+
|
|
|
+ string filter = string.Empty;
|
|
|
+ if (!string.IsNullOrEmpty(name))
|
|
|
+ {
|
|
|
+ filter += $" AND accountId IN (SELECT ID FROM jd_pool WHERE company=@name)";
|
|
|
+ }
|
|
|
+ DateTime stime = DateTime.MinValue, etime = DateTime.MinValue;
|
|
|
+ if (report_date.Count == 2)
|
|
|
+ {
|
|
|
+ if (DateTime.TryParse(report_date[0], out stime) && DateTime.TryParse(report_date[1], out etime))
|
|
|
+ {
|
|
|
+ etime = etime.AddDays(1).AddSeconds(-1);
|
|
|
+ filter += $" AND report_date BETWEEN @stime AND @etime";
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ filter = filter.StringTrimStart(" AND ");
|
|
|
+
|
|
|
+ //排序
|
|
|
+ string orderBy = "report_date DESC";
|
|
|
+ if (!string.IsNullOrEmpty(order))
|
|
|
+ {
|
|
|
+ order = "descending".Equals(order) ? "DESC" : "ASC";
|
|
|
+ orderBy = sort switch
|
|
|
+ {
|
|
|
+ _ => $"{sort} {order}",
|
|
|
+ };
|
|
|
+ }
|
|
|
+
|
|
|
+ var result = new DBContext.Table("jd_estimate_comm")
|
|
|
+ .Where(filter, new { name, stime, etime })
|
|
|
+ .Page(size, page)
|
|
|
+ .Order(orderBy)
|
|
|
+ .PageList<JdEstimateCommDTO>(getTotal);
|
|
|
+
|
|
|
+ return new APIResult(new { data = result });
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
/// <summary>
|
|
|
/// 账号列表
|
|
|
/// </summary>
|