Files
zszq-trs/YLErpDAL/Modules/ClientModule/ServicerePresentativeConfigService.cs
T
2024-05-09 14:06:26 +08:00

128 lines
4.4 KiB
C#

using BaseOUDAL;
using YLErp.Models;
namespace YLErp.Modules.ClientModule
{
/// <summary>
/// 服务商配置服务
/// </summary>
public class ServicerePresentativeConfigService : ClientBaseService
{
public ServicerePresentativeConfigService(OptUserInfo userInfo) : base(userInfo)
{
}
/// <summary>
/// 查询servicerepresentativeconfig
/// </summary>
public SearchListResult<ServiceconfigView> SearchList(ServiceRepresentativeConfigReq req)
{
var query = from source in DbContext.servicerepresentativeconfig
//join service in DbContext.client on source.ServiceId equals service.id
select new ServiceconfigView
{
id = source.id,
PremiumRateVariation = source.PremiumRateVariation,
ServiceId = source.ServiceId,
//ServiceName = service.Name,
Alias = source.Alias,
DefaultTradeInstruction = source.DefaultTradeInstruction,
//ContractVersion = source.ContractVersion,
StockBuyContractVersion = source.StockBuyContractVersion,
StockSellContractVersion = source.StockSellContractVersion,
FutureBuyContractVersion = source.FutureBuyContractVersion,
FutureSellContractVersion = source.FutureSellContractVersion,
DefaultPremiumRate = source.DefaultPremiumRate,
SellerRightDeliveryDayType = source.SellerRightDeliveryDayType,
ContractNoLength = source.ContractNoLength,
ContractSubNoStyle = source.ContractSubNoStyle,
ExerciseRule = source.ExerciseRule,
ValidState = source.ValidState
};
if (req.ServiceId != null)
{
query = query.Where(d => d.ServiceId == req.ServiceId);
}
if (string.IsNullOrEmpty(req.sidx))
{
req.sidx = "id";
req.sord = "desc";
}
var retListResult = query.ToSearchList(req);
foreach (var item in retListResult.rows)
{
item.ServiceName = DataCacheProvider.GetClientDataSource().GetData(item.ServiceId)?.Name;
}
return retListResult;
}
/// <summary>
/// 渠道服务商数据
/// </summary>
public static ServiceRepresentativeConfig GetData(int serviceId)
{
using (var db = DbContextFactory.GetClientDbContext(null))
{
return db.servicerepresentativeconfig.AsNoTracking().FirstOrDefault(x => x.ServiceId == serviceId);
}
}
/// <summary>
/// 渠道服务商数据
/// </summary>
public static IEnumerable<ServiceRepresentativeConfig> GetDatas(IEnumerable<int> serviceIds)
{
using (var db = DbContextFactory.GetClientDbContext(null))
{
return db.servicerepresentativeconfig.AsNoTracking().Where(x => serviceIds.Contains(x.ServiceId)).ToArray();
}
}
}
/// <summary>
/// 服务商配置查询请求
/// </summary>
public class ServiceRepresentativeConfigReq : BaseSearchReq
{
/// <summary>
/// 服务商的Id
/// </summary>
public int? ServiceId { get; set; }
/// <summary>
/// 加成费率
/// </summary>
public double? PremiumRateVariation { get; set; }
/// <summary>
/// 操作人_OptId
/// </summary>
public int? OptId { get; set; }
/// <summary>
/// 操作人_OptName
/// </summary>
public string OptName { get; set; }
/// <summary>
/// 操作时间_OptDate
/// </summary>
public DateTime? OptDate { get; set; }
/// <summary>
/// 服务商别名
/// </summary>
public string Alias { get; set; }
/// <summary>
/// 卖方权利金交割日类型
/// </summary>
public int? SellerRightDeliveryDayType { get; set; }
}
}