Commit 5f22b997 by jianshuqin

优化:导入财务汇率

parent 3aed4064
......@@ -20,14 +20,14 @@ namespace Bailun.DC.Services.DataWareHouse
{
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString_DW))
{
if(cn.State== System.Data.ConnectionState.Closed)
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
var sql = $"select t1.website from flowing_sales t1 where t1.platform='{platform}' group by t1.website";
return cn.Query<string>(sql).Where(a=>!string.IsNullOrEmpty(a)).ToList();
return cn.Query<string>(sql).Where(a => !string.IsNullOrEmpty(a)).ToList();
}
}
......@@ -41,12 +41,12 @@ namespace Bailun.DC.Services.DataWareHouse
/// <param name="month">月份</param>
/// <param name="total">符合条件的记录数</param>
/// <returns></returns>
public List<Models.DataWareHouse.flowing_sales> List(int page, string platform, string website, string account,DateTime? start,DateTime? end,string orderno,string month,ref int total,int pagesize)
public List<Models.DataWareHouse.flowing_sales> List(int page, string platform, string website, string account, DateTime? start, DateTime? end, string orderno, string month, ref int total, int pagesize)
{
var sql = "select * from flowing_sales t1 where 1=1";
var sqlparam = new DynamicParameters();
if(!string.IsNullOrEmpty(platform))
if (!string.IsNullOrEmpty(platform))
{
sql += " and t1.platform=@platform";
sqlparam.Add("platform", platform);
......@@ -88,7 +88,7 @@ namespace Bailun.DC.Services.DataWareHouse
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString_DW))
{
if(cn.State== System.Data.ConnectionState.Closed)
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
......@@ -116,7 +116,7 @@ namespace Bailun.DC.Services.DataWareHouse
/// <param name="start"></param>
/// <param name="end"></param>
/// <returns></returns>
public Models.DataWareHouse.flowing_sales Get(string platform,string website,DateTime? start,DateTime? end,string month)
public Models.DataWareHouse.flowing_sales Get(string platform, string website, DateTime? start, DateTime? end, string month)
{
var sql = "select * from flowing_sales where 1=1";
var sqlParam = new DynamicParameters();
......@@ -132,11 +132,11 @@ namespace Bailun.DC.Services.DataWareHouse
sqlParam.Add("website", website);
}
if(start.HasValue)
if (start.HasValue)
{
sql += $" and datatime>='{start.Value.ToString("yyyy-MM-dd")}'";
}
if(end.HasValue)
if (end.HasValue)
{
sql += $" and datatime<'{end.Value.AddDays(1).ToString("yyyy-MM-dd")}'";
}
......@@ -154,7 +154,7 @@ namespace Bailun.DC.Services.DataWareHouse
cn.Open();
}
var obj = cn.QueryFirstOrDefault<Models.DataWareHouse.flowing_sales>(sql,sqlParam);
var obj = cn.QueryFirstOrDefault<Models.DataWareHouse.flowing_sales>(sql, sqlParam);
return obj;
}
......@@ -240,7 +240,7 @@ namespace Bailun.DC.Services.DataWareHouse
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString_DW))
{
if(cn.State== System.Data.ConnectionState.Closed)
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
......@@ -337,7 +337,7 @@ namespace Bailun.DC.Services.DataWareHouse
/// <param name="id"></param>
/// <param name="datatype"></param>
/// <returns></returns>
public string DelFlowingConfig(int id,int datatype)
public string DelFlowingConfig(int id, int datatype)
{
try
{
......@@ -399,7 +399,7 @@ namespace Bailun.DC.Services.DataWareHouse
{
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString_DW))
{
if(cn.State== System.Data.ConnectionState.Closed)
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
......@@ -419,11 +419,11 @@ namespace Bailun.DC.Services.DataWareHouse
/// <param name="hashcode"></param>
/// <param name="filekey"></param>
/// <returns></returns>
public string UpdateFileData(int id,string hashcode,string filekey)
public string UpdateFileData(int id, string hashcode, string filekey)
{
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString_DW))
{
if(cn.State== System.Data.ConnectionState.Closed)
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
......@@ -458,7 +458,7 @@ namespace Bailun.DC.Services.DataWareHouse
cn.Open();
}
var sql = "select * from order_fee_config where datatype="+datatype;
var sql = "select * from order_fee_config where datatype=" + datatype;
return cn.Query<Models.DataWareHouse.order_fee_config>(sql).ToList();
......@@ -476,7 +476,7 @@ namespace Bailun.DC.Services.DataWareHouse
/// <param name="username">用户名称</param>
/// <param name="count">受影响数据行数</param>
/// <returns></returns>
public string BatchDeleteFinanceAccountFlowing(int datatype,string platform,string website,string month,int uid,string username,ref int count)
public string BatchDeleteFinanceAccountFlowing(int datatype, string platform, string website, string month, int uid, string username, ref int count)
{
try
{
......@@ -525,7 +525,7 @@ namespace Bailun.DC.Services.DataWareHouse
{
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString_DW))
{
if(cn.State== System.Data.ConnectionState.Closed)
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
......@@ -543,39 +543,46 @@ namespace Bailun.DC.Services.DataWareHouse
/// <returns></returns>
public string SaveExchangeRate(List<exchange_rate_finance> list)
{
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString_DW))
for (int i = 1; i <= 2; i++)
{
if(cn.State== System.Data.ConnectionState.Closed)
string dc_ = i == 2 ? "dc_" : string.Empty;
using (var cn = new MySqlConnection(i == 1 ? Common.GlobalConfig.ConnectionString_DW : Common.GlobalConfig.ConnectionString))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
foreach(var item in list)
using (MySqlTransaction tran = cn.BeginTransaction())
{
var obj = cn.QueryFirstOrDefault<exchange_rate_finance>($"select * from exchange_rate_finance where month='{item.month}' and currency='{item.currency}'");
if(obj!=null)
foreach (var item in list)
{
if(item.exchange_rate!=obj.exchange_rate)
var obj = cn.QueryFirstOrDefault<exchange_rate_finance>($"select * from {dc_}exchange_rate_finance where month='{item.month}' and currency='{item.currency}'");
if (obj != null)
{
obj.exchange_rate = item.exchange_rate;
cn.Update(obj);
if (item.exchange_rate != obj.exchange_rate)
{
cn.Execute($"update {dc_}exchange_rate_finance set exchange_rate = @exchange_rate where id = @id", new { id = obj.id, exchange_rate = item.exchange_rate });
}
}
else
{
obj = cn.QueryFirstOrDefault<exchange_rate_finance>($"select * from exchange_rate_finance where currency='{item.currency}' order by id desc limit 1");
obj = cn.QueryFirstOrDefault<exchange_rate_finance>($"select * from {dc_}exchange_rate_finance where currency='{item.currency}' order by id desc limit 1");
item.code = obj?.code ?? "";
item.createtime = DateTime.Now;
item.likecondition = obj?.likecondition ?? "";
cn.Insert(item);
cn.Execute($"insert into {dc_}exchange_rate_finance (`month`,`currency`,`code`,`exchange_rate`,`createtime`,`likecondition`) values (@month,@currency,@code,@exchange_rate,@createtime,@likecondition)", item);
}
}
tran.Commit();
}
}
}
return "";
}
}
#endregion
}
......
......@@ -530,8 +530,10 @@ namespace Bailun.DC.Web.Areas.DataWareHouse.Controllers
{
return Json(new
{
result = false,
success = false,
msg = "请上传文件!"
msg = "请上传文件!",
message = "请上传文件!"
});
}
......@@ -583,7 +585,7 @@ namespace Bailun.DC.Web.Areas.DataWareHouse.Controllers
list.Add(new Models.DataWareHouse.exchange_rate_finance
{
month = _month,
month = DateTime.Parse(_month).ToString("yyyy-MM"),
currency = _currency,
exchange_rate = _exchangerate
});
......@@ -593,7 +595,9 @@ namespace Bailun.DC.Web.Areas.DataWareHouse.Controllers
return Json(new
{
success = string.IsNullOrEmpty(result),
msg = result
result = string.IsNullOrEmpty(result),
msg = result,
message = result
});
}
......@@ -601,7 +605,9 @@ namespace Bailun.DC.Web.Areas.DataWareHouse.Controllers
return Json(new
{
success = false,
msg = "找不到表格内容,请检查格式是否正确"
result = false,
msg = "找不到表格内容,请检查格式是否正确",
message = "找不到表格内容,请检查格式是否正确"
});
}
......
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