69 lines
2.2 KiB
C#
69 lines
2.2 KiB
C#
using BaseOUDAL;
|
|
using NPOI.SS.UserModel;
|
|
using YLErp.DBModels.Consts;
|
|
using YLErp.Model;
|
|
using YLErp.Office.ExcelModule;
|
|
|
|
namespace YLErp.Modules.SystemModule
|
|
{
|
|
public class DividendrateRecordService : YLBaseService
|
|
{
|
|
public DividendrateRecordService(OptUserInfo optUser) : base(optUser)
|
|
{
|
|
|
|
}
|
|
|
|
public void ChangeDividendrate(dividendrate_record record)
|
|
{
|
|
using (var trans = BeginTransaction())
|
|
{
|
|
record.OptId = UserId;
|
|
record.OptName = UserName;
|
|
record.OptDate = DateTime.Now;
|
|
DbContext.dividendrate_record.Add(record);
|
|
DbContext.SaveChanges();
|
|
trans.Commit();
|
|
}
|
|
}
|
|
|
|
|
|
public SearchListResult<dividendrate_record> GetDividendrateChangeSearch(DividendrateChangereq req)
|
|
{
|
|
var query = DbContext.dividendrate_record.Where(x => 1 == 1);
|
|
if (req.Ids == null || req.Ids.Count == 0)
|
|
{
|
|
if (req.ValueDateStart != default)
|
|
{
|
|
query = query.Where(a => req.ValueDateStart <= a.ValueDate);
|
|
}
|
|
|
|
if (req.ValueDateEnd != default)
|
|
{
|
|
var endDay = req.ValueDateEnd.AddDays(1);
|
|
query = query.Where(a => endDay > a.ValueDate);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
query = query.Where(a => req.Ids.Contains(a.id));
|
|
}
|
|
if (string.IsNullOrEmpty(req.sidx))
|
|
{
|
|
req.sidx = "ValueDate,id";
|
|
req.sord = "desc";
|
|
}
|
|
var retListResult = query.ToSearchList(req);
|
|
|
|
return retListResult;
|
|
}
|
|
|
|
public byte[] ExportClientCashChange(DividendrateChangereq req)
|
|
{
|
|
var searchListResult = GetDividendrateChangeSearch(req);
|
|
var templateFile = OtcAppContext.MapPath("~/App_Docs/导出模板/变更记录模板_设置模型参数.xlsx");
|
|
return ExcelGenerator.UseTemplateGenerator(templateFile).AddVariable(new { list = searchListResult.rows }).GenerateBytes();
|
|
}
|
|
|
|
}
|
|
}
|