using DataEntity.Device;
using DataEntity.Page;
using DataRWDAL.Base;
using HxEnum;
using SqlSugar;
using System;
using System.Collections.Generic;
using XCommon.SqlSugar;
namespace DataRWDAL.Device
{
///
/// 方法参数数据操作类
///
public class DeviceConfigMethodParametersDB : BaseDB
{
///
/// 获取方法参数分页数据
///
///
///
///
public static Tuple, int> GetPageData(Pagination pagination, DeviceConfigMethodParametersModel condition)
{
using (var db = GetInstance())
{
var whereExpression = LinqExtensions.True();
whereExpression = whereExpression.And(it => it.DeviceconfigMethodId.Equals(condition.DeviceconfigMethodId));
if (!string.IsNullOrEmpty(condition.ParameterName))
{
whereExpression = whereExpression.And(it => it.ParameterName.Contains(condition.ParameterName));
}
// u => u.Sort
return GetPage(pagination, whereExpression, u => u.Sort, OrderByType.Asc);
}
}
///
/// 根据方法参数Id,获取参数信息
///
///
///
public static DeviceConfigMethodParametersModel GetInfodById(string methodParameterId)
{
using (var db = GetInstance())
{
return db.Queryable().Single(it => it.Id.Equals(methodParameterId));
}
}
///
/// 获取设备方法参数信息
///
///
///
///
///
///
public static List GetInfo(string deviceconfigId, string deviceconfigMethodId, int type, string parameterName)
{
using (var db = GetInstance())
{
return db.Queryable().Where(it => it.DeviceconfigId.Equals(deviceconfigId) &&
it.DeviceconfigMethodId.Equals(deviceconfigMethodId) && it.Type == type && it.ParameterName.Equals(parameterName)).
OrderBy(t => t.CreateTime, OrderByType.Asc).ToList();
}
}
///
/// 获取设备方法参数列表
///
///
///
public static List GetInfoByDeviceconfigMethodId(string deviceconfigMethodId)
{
using (var db = GetInstance())
{
return db.Queryable().Where(it => it.DeviceconfigMethodId.Equals(deviceconfigMethodId)).
OrderBy(t => t.CreateTime, OrderByType.Asc).ToList();
}
}
public static List GetInfoByDeviceconfigMethodId(string deviceconfigMethodId, ParameterTypeEnum parameterType)
{
using (var db = GetInstance())
{
return db.Queryable().Where(it => it.DeviceconfigMethodId.Equals(deviceconfigMethodId) &&
it.Type == EnumManagement.GetEnumValue(parameterType)).OrderBy(t => t.CreateTime, OrderByType.Asc).ToList();
}
}
///
/// 登录设备信息
///
///
///
public static int Add(DeviceConfigMethodParametersModel model)
{
using (var db = GetInstance())
{
return db.Insertable(model).ExecuteCommand();
}
}
///
/// 更新设备信息
///
///
///
public static int Update(DeviceConfigMethodParametersModel model)
{
using (var db = GetInstance())
{
return db.Updateable(model).ExecuteCommand();
}
}
///
/// 删除设备方法参数
///
///
///
public static int DelById(DeviceConfigMethodParametersModel model)
{
using (var db = GetInstance())
{
return db.Deleteable(model).ExecuteCommand();
}
}
///
/// 获取设备方法参数列表
///
///
public static List GetDeviceConfigMethodParametersList()
{
using (var db = GetInstance())
{
return db.Queryable().OrderBy(it => it.Id, OrderByType.Asc).ToList();
}
}
}
}