Commit d376f898 by guanzhenshan

管理成本改为从数据中心读取数据

parent a22337fb
using System;
using System.Collections.Generic;
using System.Text;
namespace Bailun.DC.Models
{
/// <summary>
/// 管理成本
/// </summary>
public class dc_base_finance_managecost
{
/// <summary>
///
/// </summary>
public int id { get; set; }
/// <summary>
/// 费用单号
/// </summary>
public string no { get; set; }
/// <summary>
/// 收款/付款单位
/// </summary>
public string receive_unit { get; set; }
/// <summary>
/// 付款理由
/// </summary>
public string reason { get; set; }
/// <summary>
/// 支付时间
/// </summary>
public DateTime? pay_time { get; set; }
/// <summary>
/// 费用类 -1耗材 1付款 2收款 3借支/借还
/// </summary>
public int manage_cost_type { get; set; }
/// <summary>
/// 部门
/// </summary>
public string department_name { get; set; }
/// <summary>
/// 公司主体value
/// </summary>
public int company_value { get; set; }
/// <summary>
/// 主体名称
/// </summary>
public string company_name { get; set; }
/// <summary>
/// 原管理成本表分类名
/// </summary>
public string fee_super_type { get; set; }
/// <summary>
/// 费用小类
/// </summary>
public string fee_sub_type { get; set; }
/// <summary>
/// 金额(原币)
/// </summary>
public decimal amount { get; set; }
/// <summary>
/// 币种
/// </summary>
public string currency { get; set; }
/// <summary>
/// 金额(人民币)
/// </summary>
public decimal amount_rmb { get; set; }
/// <summary>
///
/// </summary>
public DateTime gmt_create_time { get; set; }
/// <summary>
///
/// </summary>
public DateTime gmt_modify_time { get; set; }
}
}
......@@ -247,6 +247,43 @@ namespace Bailun.DC.Services
}
/// <summary>
/// 管理成本列表(从数据中心表获取数据)
/// </summary>
/// <param name="start">付款开始时间</param>
/// <param name="end">付款结束时间</param>
/// <returns></returns>
public List<Models.dc_base_finance_managecost> ListFinanceManageCost(DateTime start,DateTime end,string feesupertype,int? paycompanyid)
{
var sqlparam = new DynamicParameters();
var list = new List<Models.dc_base_finance_managecost>();
var sql = $"select * from dc_base_finance_managecost where pay_time>='{start.ToString("yyyy-MM-dd")}' and pay_time<'{end.AddDays(1).ToString("yyyy-MM-dd")}'";
if (!string.IsNullOrEmpty(feesupertype))
{
sql += " and fee_super_type=@type";
sqlparam.Add("type", feesupertype);
}
if (paycompanyid.HasValue && paycompanyid.Value > 0)
{
sql += " and company_value="+paycompanyid.Value;
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == ConnectionState.Closed)
{
cn.Open();
}
list = cn.Query<dc_base_finance_managecost>(sql,sqlparam,null,true,2*60).ToList();
return list.ToList();
}
}
#endregion
#region 平台余额
......
......@@ -391,7 +391,8 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
//利息支出
var listInterest = new Services.FinanceReportServices().ListInterestExpense(cwurl);
var list = new Services.FinanceReportServices().ListOtherCost(url);
//Edit by Allan at 20191217 for 更改数据源
var list = new Services.FinanceReportServices().ListFinanceManageCost(start,end,"",paycompanyid); //new Services.FinanceReportServices().ListOtherCost(url);
var listValue = new List<Tuple<string, List<decimal>>>();
var listCol = new List<string>();
var listColVal = new List<int>();
......@@ -400,12 +401,12 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
{
if (t == 2) //按付款主体
{
listCol = list.GroupBy(a => a.companyName).Select(p => p.Key).OrderBy(a=>a).ToList();
listCol = list.GroupBy(a => a.company_name).Select(p => p.Key).OrderBy(a=>a).ToList();
}
else //按部门
{
listCol = list.GroupBy(a => a.departmentName).Select(p => p.Key).ToList();
listCol = list.GroupBy(a => a.company_name).Select(p => p.Key).ToList();
}
for (var i=0;i< listCol.Count;i++)
......@@ -414,9 +415,9 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
{
if (t == 2) //按付款主体
{
if (item.companyName == listCol[i])
if (item.company_name == listCol[i])
{
var obj = listValue.Where(a => a.Item1 == item.feeSuperType).FirstOrDefault();
var obj = listValue.Where(a => a.Item1 == item.fee_super_type).FirstOrDefault();
if (obj == null)
{
......@@ -426,20 +427,20 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
listItems.Add(0.00M);
}
listItems[i] = item.amountRmb;
listValue.Add(new Tuple<string, List<decimal>>(item.feeSuperType, listItems));
listItems[i] = item.amount_rmb;
listValue.Add(new Tuple<string, List<decimal>>(item.fee_super_type, listItems));
}
else
{
obj.Item2[i] += item.amountRmb;
obj.Item2[i] += item.amount_rmb;
}
}
}
else
{
if (item.departmentName == listCol[i])
if (item.department_name == listCol[i])
{
var obj = listValue.Where(a => a.Item1 == item.feeSuperType).FirstOrDefault();
var obj = listValue.Where(a => a.Item1 == item.fee_super_type).FirstOrDefault();
if (obj == null)
{
......@@ -449,12 +450,12 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
listItems.Add(0.00M);
}
listItems[i] = item.amountRmb;
listValue.Add(new Tuple<string, List<decimal>>(item.feeSuperType, listItems));
listItems[i] = item.amount_rmb;
listValue.Add(new Tuple<string, List<decimal>>(item.fee_super_type, listItems));
}
else
{
obj.Item2[i] += item.amountRmb;
obj.Item2[i] += item.amount_rmb;
}
}
}
......@@ -706,7 +707,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
msg = list.Count>0?"":"成本接口返回了空记录。",
col = listCol,
list = listValue,
amount = Math.Round(list.Sum(a=>a.amountRmb)+ listInterest.Sum(a=>a.RepayInterestRMB), 2)
amount = Math.Round(list.Sum(a=>a.amount_rmb)+ listInterest.Sum(a=>a.RepayInterestRMB), 2)
});
}
......@@ -727,7 +728,7 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
url += "&feeSuperType=" + categoryname;
}
var list = new Services.FinanceReportServices().ListOtherCost(url);
var list = new Services.FinanceReportServices().ListFinanceManageCost(start, end, categoryname, paycompanyid);//new Services.FinanceReportServices().ListOtherCost(url);
var listValue = new List<Tuple<string, List<decimal>>>();
var listCol = heads.Split("|").ToList();
......@@ -740,9 +741,9 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
{
if (t == 2) //按付款主体
{
if (item.companyName == listCol[i])
if (item.company_name == listCol[i])
{
var obj = listValue.Where(a => a.Item1 == item.feeSubType).FirstOrDefault();
var obj = listValue.Where(a => a.Item1 == item.fee_sub_type).FirstOrDefault();
if (obj == null)
{
......@@ -752,20 +753,20 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
listItems.Add(0.00M);
}
listItems[i] = item.amountRmb;
listValue.Add(new Tuple<string, List<decimal>>(item.feeSubType, listItems));
listItems[i] = item.amount_rmb;
listValue.Add(new Tuple<string, List<decimal>>(item.fee_sub_type, listItems));
}
else
{
obj.Item2[i] += item.amountRmb;
obj.Item2[i] += item.amount_rmb;
}
}
}
else
{
if (item.departmentName == listCol[i])
if (item.department_name == listCol[i])
{
var obj = listValue.Where(a => a.Item1 == item.feeSubType).FirstOrDefault();
var obj = listValue.Where(a => a.Item1 == item.fee_sub_type).FirstOrDefault();
if (obj == null)
{
......@@ -775,12 +776,12 @@ namespace Bailun.DC.Web.Areas.Reports.Controllers
listItems.Add(0.00M);
}
listItems[i] = item.amountRmb;
listValue.Add(new Tuple<string, List<decimal>>(item.feeSubType, listItems));
listItems[i] = item.amount_rmb;
listValue.Add(new Tuple<string, List<decimal>>(item.fee_sub_type, listItems));
}
else
{
obj.Item2[i] += item.amountRmb;
obj.Item2[i] += item.amount_rmb;
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment