从山证v2.3.0拷贝
This commit is contained in:
@@ -0,0 +1,278 @@
|
||||
using BaseOUDAL;
|
||||
using YLErp.Commons;
|
||||
using YLErp.Configuration.Enums;
|
||||
|
||||
namespace YLErp.Modules.ClientModule
|
||||
{
|
||||
public class TradeMarketReportConfigureService : YLBaseService
|
||||
{
|
||||
public TradeMarketReportConfigureService(OptUserInfo userInfo) : base(userInfo)
|
||||
{
|
||||
}
|
||||
|
||||
public void SaveTradeMarketReportConfigure(TradeMarketReportConfigure tradeMarketReportConfigure)
|
||||
{
|
||||
var dbTradeMarketReportConfigure = new TradeMarketReportConfigure();
|
||||
|
||||
if (tradeMarketReportConfigure.ClientName == "全部")
|
||||
{
|
||||
dbTradeMarketReportConfigure = DbContext.tradeMarketReport_Configure.Where(o => o.ClientId == 0 || o.ClientId == null).FirstOrDefault();
|
||||
if(dbTradeMarketReportConfigure == null)
|
||||
{
|
||||
dbTradeMarketReportConfigure = new TradeMarketReportConfigure();
|
||||
DbContext.tradeMarketReport_Configure.Add(dbTradeMarketReportConfigure);
|
||||
}
|
||||
dbTradeMarketReportConfigure.TemplateId = tradeMarketReportConfigure.TemplateId;
|
||||
dbTradeMarketReportConfigure.Remarks = tradeMarketReportConfigure.Remarks;
|
||||
dbTradeMarketReportConfigure.OptId = UserId;
|
||||
dbTradeMarketReportConfigure.OptName = UserName;
|
||||
dbTradeMarketReportConfigure.OptDate = DateTime.Now;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (tradeMarketReportConfigure.id != 0)
|
||||
{
|
||||
dbTradeMarketReportConfigure = DbContext.tradeMarketReport_Configure.Find(tradeMarketReportConfigure.id);
|
||||
if (dbTradeMarketReportConfigure == null)
|
||||
{
|
||||
throw new ServiceException("未找到该记录");
|
||||
}
|
||||
dbTradeMarketReportConfigure.ClientId = tradeMarketReportConfigure.ClientId;
|
||||
dbTradeMarketReportConfigure.TemplateId = tradeMarketReportConfigure.TemplateId;
|
||||
dbTradeMarketReportConfigure.Remarks = tradeMarketReportConfigure.Remarks;
|
||||
dbTradeMarketReportConfigure.OptId = UserId;
|
||||
dbTradeMarketReportConfigure.OptName = UserName;
|
||||
dbTradeMarketReportConfigure.OptDate = DateTime.Now;
|
||||
}
|
||||
else
|
||||
{
|
||||
dbTradeMarketReportConfigure = DbContext.tradeMarketReport_Configure.Where(o => o.ClientId == tradeMarketReportConfigure.ClientId).FirstOrDefault();
|
||||
if (dbTradeMarketReportConfigure != null)
|
||||
{
|
||||
dbTradeMarketReportConfigure.ClientId = tradeMarketReportConfigure.ClientId;
|
||||
dbTradeMarketReportConfigure.TemplateId = tradeMarketReportConfigure.TemplateId;
|
||||
dbTradeMarketReportConfigure.Remarks = tradeMarketReportConfigure.Remarks;
|
||||
dbTradeMarketReportConfigure.OptId = UserId;
|
||||
dbTradeMarketReportConfigure.OptName = UserName;
|
||||
dbTradeMarketReportConfigure.OptDate = DateTime.Now;
|
||||
}
|
||||
else
|
||||
{
|
||||
dbTradeMarketReportConfigure = new TradeMarketReportConfigure();
|
||||
dbTradeMarketReportConfigure.ClientId = tradeMarketReportConfigure.ClientId;
|
||||
dbTradeMarketReportConfigure.TemplateId = tradeMarketReportConfigure.TemplateId;
|
||||
dbTradeMarketReportConfigure.Remarks = tradeMarketReportConfigure.Remarks;
|
||||
dbTradeMarketReportConfigure.OptId = UserId;
|
||||
dbTradeMarketReportConfigure.OptName = UserName;
|
||||
dbTradeMarketReportConfigure.OptDate = DateTime.Now;
|
||||
DbContext.tradeMarketReport_Configure.Add(dbTradeMarketReportConfigure);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
DbContext.SaveChanges();
|
||||
}
|
||||
public void AddTradeMarketReportConfigure(TradeMarketReportConfigureAddReq configureAddReq)
|
||||
{
|
||||
if (configureAddReq.ClientId.Length > 0)
|
||||
{
|
||||
List<TradeMarketReportConfigure> configureList = new List<TradeMarketReportConfigure>();
|
||||
for (int i = 0; i < configureAddReq.ClientId.Length; i++)
|
||||
{
|
||||
TradeMarketReportConfigure dbTradeMarketReportConfigure = new TradeMarketReportConfigure();
|
||||
dbTradeMarketReportConfigure.ClientId = configureAddReq.ClientId[i];
|
||||
dbTradeMarketReportConfigure.TemplateId = configureAddReq.TemplateId;
|
||||
dbTradeMarketReportConfigure.Remarks = configureAddReq.Remarks;
|
||||
dbTradeMarketReportConfigure.OptId = UserId;
|
||||
dbTradeMarketReportConfigure.OptName = UserName;
|
||||
dbTradeMarketReportConfigure.OptDate = DateTime.Now;
|
||||
configureList.Add(dbTradeMarketReportConfigure);
|
||||
}
|
||||
DbContext.tradeMarketReport_Configure.AddRange(configureList);
|
||||
}
|
||||
|
||||
}
|
||||
public bool IsShowMarginByTradeMarketReportConfigure(int clientId)
|
||||
{
|
||||
bool IsShowMargin = false;
|
||||
var tradeMarketReportConfigureModel= DbContext.tradeMarketReport_Configure.Where(o => o.ClientId == clientId).FirstOrDefault();
|
||||
if (tradeMarketReportConfigureModel != null)
|
||||
{
|
||||
switch (tradeMarketReportConfigureModel.TemplateId)
|
||||
{
|
||||
case TemplateType.HasMarginColumn:
|
||||
IsShowMargin = true;
|
||||
break;
|
||||
case TemplateType.NotHasMarginColumn:
|
||||
IsShowMargin = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
tradeMarketReportConfigureModel = DbContext.tradeMarketReport_Configure.Where(o => o.ClientId == null).FirstOrDefault();
|
||||
if (tradeMarketReportConfigureModel!=null)
|
||||
{
|
||||
switch (tradeMarketReportConfigureModel.TemplateId)
|
||||
{
|
||||
case TemplateType.HasMarginColumn:
|
||||
IsShowMargin = true;
|
||||
break;
|
||||
case TemplateType.NotHasMarginColumn:
|
||||
IsShowMargin = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new Exception("结算报告配置,找不到默认全部配置,请在报告中配置全部及模板!");
|
||||
}
|
||||
}
|
||||
return IsShowMargin;
|
||||
}
|
||||
public HandleResult ImportTradeMarketReportConfigure(Stream stream)
|
||||
{
|
||||
var rows = new ExcelHelper().ExcelToDataTable(stream, null, true);
|
||||
var clientNumber = string.Empty;
|
||||
TradeMarketReportConfigure record;
|
||||
var records = new List<TradeMarketReportConfigure>();
|
||||
|
||||
var rowNum = 0;
|
||||
|
||||
for (var i = 0; i < rows.Rows.Count; i++)
|
||||
{
|
||||
rowNum = i + 1;
|
||||
record = new TradeMarketReportConfigure();
|
||||
for (var j = 0; j < rows.Columns.Count; j++)
|
||||
{
|
||||
switch (rows.Columns[j].ColumnName)
|
||||
{
|
||||
|
||||
case "客户名称":
|
||||
record.ClientName = rows.Rows[i][j].ToString();
|
||||
break;
|
||||
case "模板":
|
||||
if (string.IsNullOrWhiteSpace(rows.Rows[i][j].ToString()))
|
||||
{
|
||||
return "第" + rowNum + "行模板不能为空,导入失败";
|
||||
}
|
||||
else if (rows.Rows[i][j].ToString() == "含持仓预付金列")
|
||||
{
|
||||
record.TemplateId = TemplateType.HasMarginColumn;
|
||||
}
|
||||
else if (rows.Rows[i][j].ToString() == "不含持仓预付金列")
|
||||
{
|
||||
record.TemplateId = TemplateType.NotHasMarginColumn;
|
||||
}
|
||||
else
|
||||
{
|
||||
return "第" + rowNum + "行其他收支格式不对,导入失败";
|
||||
}
|
||||
break;
|
||||
case "备注":
|
||||
if (string.IsNullOrWhiteSpace(rows.Rows[i][j].ToString()))
|
||||
{
|
||||
record.Remarks = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
record.Remarks = rows.Rows[i][j].ToString();
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (string.IsNullOrWhiteSpace(record.ClientName))
|
||||
{
|
||||
return "第" + rowNum + "行客户不能为空,导入失败";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (record.ClientName != "全部")
|
||||
{
|
||||
var rModle = records.Find(l => l.ClientName.Equals(record.ClientName));
|
||||
if (rModle != null)
|
||||
{
|
||||
return "第" + rowNum + "行在适用客户重复,导入失败";
|
||||
}
|
||||
var client = ClientDataQueryService.GetClient(record.ClientName);
|
||||
if (client == null)
|
||||
{
|
||||
return "第" + rowNum + "行客户不存在,导入失败";
|
||||
}
|
||||
else
|
||||
{
|
||||
record.ClientId = client.id;
|
||||
}
|
||||
}
|
||||
}
|
||||
records.Add(record);
|
||||
}
|
||||
if (records.Count() > 0)
|
||||
{
|
||||
foreach (var item in records)
|
||||
{
|
||||
SaveTradeMarketReportConfigure(item);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return "未在文件中找到记录";
|
||||
}
|
||||
|
||||
return HandleResult.Success;
|
||||
|
||||
}
|
||||
public void DeleteTradeMarketReportConfigure(int id)
|
||||
{
|
||||
var model = DbContext.tradeMarketReport_Configure.FirstOrDefault(l => l.id == id);
|
||||
if (model == null) throw new ServiceException("找不到该条数据");
|
||||
else
|
||||
{
|
||||
DbContext.tradeMarketReport_Configure.Remove(model);
|
||||
}
|
||||
DbContext.SaveChanges();
|
||||
}
|
||||
public SearchListResult<TradeMarketReportConfigure> SearchList(TradeMarketReportConfigureReq req)
|
||||
{
|
||||
var query = from source in DbContext.tradeMarketReport_Configure select source;
|
||||
if (req.ClientId != null)
|
||||
{
|
||||
query = query.Where(d => d.ClientId == req.ClientId);
|
||||
}
|
||||
if (string.IsNullOrEmpty(req.sidx))
|
||||
{
|
||||
req.sidx = "ClientId";
|
||||
req.sord = "asc";
|
||||
}
|
||||
|
||||
if(req.sidx == "TemplateName")
|
||||
{
|
||||
req.sidx = "TemplateId";
|
||||
}
|
||||
|
||||
if(req.sidx == "ClientName")
|
||||
{
|
||||
req.sidx = "ClientId";
|
||||
}
|
||||
|
||||
return query.ToSearchList(req); ;
|
||||
}
|
||||
|
||||
public class TradeMarketReportConfigureReq : BaseSearchReq
|
||||
{
|
||||
public int? ClientId { get; set; }
|
||||
}
|
||||
public class TradeMarketReportConfigureAddReq : BaseSearchReq
|
||||
{
|
||||
|
||||
public int[] ClientId { get; set; }
|
||||
|
||||
public TemplateType TemplateId { get; set; }
|
||||
public string Remarks { get; set; }
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user