namespace SHJX.Service.Control.Service { public class SampleService : ISampleService { private readonly IDataManager _dataManager; private readonly ReadConfigUtil _readConfig; public SampleService(IDataManager dataManager, ReadConfigUtil readConfig) { _dataManager = dataManager; _readConfig = readConfig; } public SampleDetail GetSampleDetailByName(string name) { return _dataManager.Query().Where(it => it.NodeName.Equals(name)).First(); } public List GetSampleDetailByPosition(string position) { return _dataManager.Query().Where(it => it.AreaPosition.Equals(position) && it.TaskStatus.In(DetailState.New, DetailState.Doing, DetailState.Finish)).ToList(); } public SamplePosition GetSamplePosition(string type) { return _readConfig.SamplePositions.FirstOrDefault(item => item.Name.Equals(type)); } public bool UpdateSampleDetail(SampleDetail sampleDetail) { return _dataManager.Update(sampleDetail) > 0; } public List GetSampleTaskByWaveKey(string key, string position) { return _dataManager.Query().Where(it => it.WaveKey.Equals(key) && it.TaskType.Equals(TaskTypeName.SAMPLE_ZH)).With(t1 => t1.Source, t2 => t2.NodeName, _dataManager.Query().Where(it => it.AreaPosition.Equals(position)), WithPattern.In).ToList(); } public bool UpdateResult(EquipmentTask task) { return _dataManager.Update(task) > 0; } } }