using Attribute;
using Model;
using Model.Base;
using Repository;
using Service;
using Microsoft.AspNetCore.Mvc;
using Vo.Admin;
namespace Services
{
///
/// 好哒终端商户绑定记录Service业务层处理
///
[AppService(ServiceType = typeof(IHdBindRecordService), ServiceLifetime = LifeTime.Transient)]
public class HdBindRecordService : BaseService, IHdBindRecordService
{
///
/// 好哒终端商户绑定记录-列表
///
/// 参数请求体
/// 分页参数
/// 列表
public PagedInfo getHdBindRecordList([FromQuery] PagerInfo page, [FromQuery] HdBindRecord param)
{
//拼装查询条件
var predicate = Expressionable.Create();
predicate = predicate.AndIF(!string.IsNullOrEmpty(param.snNo), m => m.snNo.Contains(param.snNo));
predicate = predicate.AndIF(!string.IsNullOrEmpty(param.mchtNo), m => m.mchtNo.Contains(param.mchtNo));
predicate = predicate.AndIF(!string.IsNullOrEmpty(param.deviceType), m => m.deviceType.Contains(param.deviceType));
predicate = predicate.AndIF(!string.IsNullOrEmpty(param.bindTime), m => m.bindTime.Contains(param.bindTime));
var response = Queryable()
.Where(predicate.ToExpression())
.SplitTable(DateTime.Now.AddMonths(-3), DateTime.Now)
.OrderByDescending(m => m.id)
.ToPage(page);
return response;
}
///
/// 好哒终端商户绑定记录-详情
///
/// ID
/// 详情
public HdBindRecord getHdBindRecordQuery(long id)
{
//拼装查询条件
var predicate = Expressionable.Create();
predicate = predicate.AndIF(id > 0, m => m.id == id);
var response = Queryable()
.Where(predicate.ToExpression())
.SplitTable(DateTime.Now.AddMonths(-3), DateTime.Now)
.First();
return response;
}
///
/// 好哒终端商户绑定记录-添加
///
/// 参数请求体
/// 添加
public long addHdBindRecord([FromBody] HdBindRecord param)
{
return Insertable(param).SplitTable().ExecuteReturnSnowflakeId();
}
///
/// 好哒终端商户绑定记录-修改
///
/// 参数请求体
/// 修改
public long updateHdBindRecord([FromBody] HdBindRecord param)
{
return Context.Updateable(param).SplitTable().ExecuteCommand();
}
///
/// 好哒终端商户绑定记录-删除
///
/// ID
/// 删除
public long deleteHdBindRecord(int id)
{
return Context.Deleteable(id).SplitTable().ExecuteCommand();
}
}
}