using WIDESEA_Core;
|
using WIDESEA_Core.BaseRepository;
|
using WIDESEA_Core.BaseServices;
|
using WIDESEA_IBasicService;
|
using WIDESEA_Model.Models;
|
|
namespace WIDESEA_StockService
|
{
|
/// <summary>
|
/// MES设备配置服务实现类
|
/// </summary>
|
public class MESDeviceConfigService : ServiceBase<Dt_MESDeviceConfig, IRepository<Dt_MESDeviceConfig>>, IMESDeviceConfigService
|
{
|
/// <summary>
|
/// 获取MES设备配置仓储接口
|
/// </summary>
|
public IRepository<Dt_MESDeviceConfig> Repository => BaseDal;
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
/// <param name="baseDal">基础数据访问对象</param>
|
public MESDeviceConfigService(IRepository<Dt_MESDeviceConfig> baseDal) : base(baseDal)
|
{
|
}
|
|
/// <summary>
|
/// 根据设备名称获取MES设备配置(精确匹配)
|
/// </summary>
|
/// <param name="deviceName">设备名称</param>
|
/// <returns>MES设备配置,如果未找到则返回null</returns>
|
public Dt_MESDeviceConfig? GetByDeviceName(string deviceName)
|
{
|
if (string.IsNullOrWhiteSpace(deviceName))
|
{
|
return null;
|
}
|
|
return BaseDal.QueryFirst(x => x.DeviceName == deviceName);
|
}
|
|
/// <summary>
|
/// 根据设备名称和仓库编码获取MES设备配置
|
/// 匹配条件:DeviceName精确匹配且(WarehouseCode为空或等于指定的仓库编码)
|
/// </summary>
|
/// <param name="deviceName">设备名称</param>
|
/// <param name="warehouseCode">仓库编码</param>
|
/// <returns>MES设备配置,如果未找到则返回null</returns>
|
public Dt_MESDeviceConfig? GetByDeviceNameAndWarehouse(string deviceName, string warehouseCode)
|
{
|
if (string.IsNullOrWhiteSpace(deviceName))
|
{
|
return null;
|
}
|
|
return BaseDal.QueryFirst(x =>
|
x.DeviceName == deviceName &&
|
(string.IsNullOrEmpty(x.WarehouseCode) || x.WarehouseCode == warehouseCode));
|
}
|
}
|
}
|